@hotmeshio/hotmesh 0.3.14 → 0.3.16

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (91) hide show
  1. package/README.md +64 -52
  2. package/build/modules/key.js +1 -1
  3. package/build/modules/utils.js +1 -1
  4. package/build/package.json +22 -21
  5. package/build/services/activities/activity.js +1 -1
  6. package/build/services/activities/await.js +1 -1
  7. package/build/services/activities/cycle.js +1 -1
  8. package/build/services/activities/hook.js +1 -1
  9. package/build/services/activities/index.js +1 -1
  10. package/build/services/activities/interrupt.js +1 -1
  11. package/build/services/activities/signal.js +1 -1
  12. package/build/services/activities/trigger.js +1 -1
  13. package/build/services/activities/worker.js +1 -1
  14. package/build/services/collator/index.js +1 -1
  15. package/build/services/compiler/deployer.js +1 -1
  16. package/build/services/compiler/index.js +1 -1
  17. package/build/services/compiler/validator.js +1 -1
  18. package/build/services/connector/factory.js +2 -2
  19. package/build/services/connector/providers/nats.js +3 -1
  20. package/build/services/engine/index.js +1 -1
  21. package/build/services/exporter/index.js +1 -1
  22. package/build/services/hotmesh/index.js +2 -0
  23. package/build/services/mapper/index.js +1 -1
  24. package/build/services/meshcall/index.d.ts +5 -4
  25. package/build/services/meshcall/index.js +23 -9
  26. package/build/services/meshdata/index.js +3 -2
  27. package/build/services/meshflow/client.js +1 -1
  28. package/build/services/meshflow/connection.js +6 -4
  29. package/build/services/meshflow/exporter.js +1 -1
  30. package/build/services/meshflow/worker.js +1 -1
  31. package/build/services/pipe/functions/array.js +1 -1
  32. package/build/services/pipe/functions/bitwise.js +1 -1
  33. package/build/services/pipe/functions/conditional.js +1 -1
  34. package/build/services/pipe/functions/cron.js +1 -1
  35. package/build/services/pipe/functions/date.js +1 -1
  36. package/build/services/pipe/functions/index.js +1 -1
  37. package/build/services/pipe/functions/json.js +1 -1
  38. package/build/services/pipe/functions/logical.js +1 -1
  39. package/build/services/pipe/functions/math.js +1 -1
  40. package/build/services/pipe/functions/number.js +1 -1
  41. package/build/services/pipe/functions/object.js +1 -1
  42. package/build/services/pipe/functions/string.js +1 -1
  43. package/build/services/pipe/functions/symbol.js +1 -1
  44. package/build/services/pipe/functions/unary.js +1 -1
  45. package/build/services/pipe/index.js +1 -1
  46. package/build/services/quorum/index.js +1 -1
  47. package/build/services/reporter/index.js +1 -1
  48. package/build/services/router/index.js +1 -1
  49. package/build/services/search/factory.d.ts +1 -1
  50. package/build/services/search/providers/postgres/postgres.d.ts +1 -1
  51. package/build/services/search/providers/postgres/postgres.js +1 -1
  52. package/build/services/search/providers/redis/ioredis.js +1 -1
  53. package/build/services/search/providers/redis/redis.js +1 -1
  54. package/build/services/serializer/index.js +1 -1
  55. package/build/services/store/providers/postgres/kvsql.d.ts +68 -63
  56. package/build/services/store/providers/postgres/kvsql.js +1 -1
  57. package/build/services/store/providers/postgres/kvtables.d.ts +15 -0
  58. package/build/services/store/providers/postgres/kvtables.js +1 -0
  59. package/build/services/store/providers/postgres/kvtransaction.d.ts +36 -0
  60. package/build/services/store/providers/postgres/kvtransaction.js +1 -0
  61. package/build/services/store/providers/postgres/kvtypes/hash.d.ts +55 -0
  62. package/build/services/store/providers/postgres/kvtypes/hash.js +1 -0
  63. package/build/services/store/providers/postgres/kvtypes/list.d.ts +33 -0
  64. package/build/services/store/providers/postgres/kvtypes/list.js +1 -0
  65. package/build/services/store/providers/postgres/kvtypes/string.d.ts +20 -0
  66. package/build/services/store/providers/postgres/kvtypes/string.js +1 -0
  67. package/build/services/store/providers/postgres/kvtypes/zset.d.ts +41 -0
  68. package/build/services/store/providers/postgres/kvtypes/zset.js +1 -0
  69. package/build/services/store/providers/postgres/postgres.d.ts +3 -12
  70. package/build/services/store/providers/postgres/postgres.js +1 -1
  71. package/build/services/store/providers/redis/_base.js +1 -1
  72. package/build/services/store/providers/redis/ioredis.js +1 -1
  73. package/build/services/store/providers/redis/redis.js +1 -1
  74. package/build/services/store/providers/store-initializable.js +1 -1
  75. package/build/services/stream/providers/nats/nats.js +1 -1
  76. package/build/services/stream/providers/postgres/postgres.js +1 -1
  77. package/build/services/stream/providers/redis/ioredis.js +1 -1
  78. package/build/services/stream/providers/redis/redis.js +1 -1
  79. package/build/services/stream/providers/stream-initializable.js +1 -1
  80. package/build/services/sub/providers/redis/ioredis.js +1 -1
  81. package/build/services/sub/providers/redis/redis.js +1 -1
  82. package/build/services/task/index.js +1 -1
  83. package/build/services/telemetry/index.js +1 -1
  84. package/build/services/worker/index.js +1 -1
  85. package/build/types/meshcall.d.ts +6 -6
  86. package/package.json +22 -21
  87. package/types/index.ts +3 -3
  88. package/types/manifest.ts +1 -1
  89. package/types/meshcall.ts +6 -6
  90. package/types/postgres.ts +8 -1
  91. package/types/provider.ts +7 -11
@@ -1 +1 @@
1
- 'use strict';(function(_0x1e40cb,_0xf27d67){const _0x273f0f=_0x5870,_0x50a35c=_0x1e40cb();while(!![]){try{const _0x3f6f7b=parseInt(_0x273f0f(0x1c5))/0x1*(parseInt(_0x273f0f(0x1c6))/0x2)+-parseInt(_0x273f0f(0x1c3))/0x3+parseInt(_0x273f0f(0x1c1))/0x4*(-parseInt(_0x273f0f(0x1c2))/0x5)+-parseInt(_0x273f0f(0x1c4))/0x6*(parseInt(_0x273f0f(0x1bf))/0x7)+-parseInt(_0x273f0f(0x1c8))/0x8+-parseInt(_0x273f0f(0x1c0))/0x9+parseInt(_0x273f0f(0x1c7))/0xa;if(_0x3f6f7b===_0xf27d67)break;else _0x50a35c['push'](_0x50a35c['shift']());}catch(_0x10c675){_0x50a35c['push'](_0x50a35c['shift']());}}}(_0x253f,0x7d81a));function _0x253f(){const _0x14ca30=['1088640uOObaT','7COgnDc','6757812ePUyIZ','252RCiwKa','44105sOTVRD','910527PuOPAw','1363158fDFqmT','463qnFzNT','2774yzhgLD','18452660eAeSCy'];_0x253f=function(){return _0x14ca30;};return _0x253f();}function _0x5870(_0x57ec84,_0x1f56ea){const _0x253f28=_0x253f();return _0x5870=function(_0x587048,_0x58fadd){_0x587048=_0x587048-0x1bf;let _0xb8c98d=_0x253f28[_0x587048];return _0xb8c98d;},_0x5870(_0x57ec84,_0x1f56ea);}var __importDefault=this&&this['__importDefault']||function(_0xb52bbf){return _0xb52bbf&&_0xb52bbf['__esModule']?_0xb52bbf:{'default':_0xb52bbf};};Object['defineProperty'](exports,'__esModule',{'value':!![]}),exports['KVSQL']=void 0x0;const pg_format_1=__importDefault(require('pg-format')),key_1=require('../../../../modules/key');function formatSqlCommand(_0x4703fd,_0x19dd7a){const _0x7880f4=[],_0x260049=_0x4703fd['replace'](/\$(\d+)/g,(_0x38edeb,_0x1b07f4)=>{const _0x3b6808=parseInt(_0x1b07f4,0xa)-0x1,_0x531e51=_0x19dd7a[_0x3b6808];if(_0x531e51===null||_0x531e51===undefined)return'NULL';let _0x1ec100;if(typeof _0x531e51==='number')_0x1ec100='%s';else{if(typeof _0x531e51==='string')_0x1ec100='%L';else typeof _0x531e51==='boolean'?_0x1ec100='%L':_0x1ec100='%L';}return _0x7880f4['push'](_0x531e51),_0x1ec100;});return(0x0,pg_format_1['default'])(_0x260049,..._0x7880f4);}class Multi{constructor(_0x51666f){this['kvsql']=_0x51666f,this['commands']=[];}['addCommand'](_0x49cd3d,_0x951c95,_0x2c3dfd,_0x2460a9){return this['commands']['push']({'sql':_0x49cd3d,'params':_0x951c95,'returnType':_0x2c3dfd,'transform':_0x2460a9}),this;}['set'](_0x15cb7b,_0x4896b8,_0x38fadd){const {sql:_0x1cff5c,params:_0x47523}=this['kvsql']['_set'](_0x15cb7b,_0x4896b8,_0x38fadd);return this['addCommand'](_0x1cff5c,_0x47523,'boolean');}['setnx'](_0x1710c2,_0x59c566){const {sql:_0x1852eb,params:_0x49dc41}=this['kvsql']['_set'](_0x1710c2,_0x59c566,{'nx':!![]});return this['addCommand'](_0x1852eb,_0x49dc41,'boolean');}['setnxex'](_0x3f6f1d,_0x43ff25,_0x4e5945){const {sql:_0x10ac4e,params:_0x5f5013}=this['kvsql']['_set'](_0x3f6f1d,_0x43ff25,{'nx':!![],'ex':_0x4e5945});return this['addCommand'](_0x10ac4e,_0x5f5013,'boolean');}['get'](_0x2af2cb){const {sql:_0x5d9586,params:_0x584b97}=this['kvsql']['_get'](_0x2af2cb);return this['addCommand'](_0x5d9586,_0x584b97,'string');}['del'](_0x34e49c){const {sql:_0x1b5ae1,params:_0x4dad37}=this['kvsql']['_del'](_0x34e49c);return this['addCommand'](_0x1b5ae1,_0x4dad37,'number');}['expire'](_0x38d9de,_0x2f4638){const {sql:_0x5218f2,params:_0x2d8ecb}=this['kvsql']['_expire'](_0x38d9de,_0x2f4638);return this['addCommand'](_0x5218f2,_0x2d8ecb,'boolean');}['hset'](_0x3608da,_0x3d8cad,_0x2ffb95){const {sql:_0x2effce,params:_0x1141c8}=this['kvsql']['_hset'](_0x3608da,_0x3d8cad,_0x2ffb95);return this['addCommand'](_0x2effce,_0x1141c8,'number');}['hget'](_0x2bc5a6,_0x4c0d87){const {sql:_0xc49c7c,params:_0x1e78f7}=this['kvsql']['_hget'](_0x2bc5a6,_0x4c0d87);return this['addCommand'](_0xc49c7c,_0x1e78f7,'string');}['hdel'](_0x56ceb1,_0x4e6cd2){const {sql:_0x57aec5,params:_0x4af6a9}=this['kvsql']['_hdel'](_0x56ceb1,_0x4e6cd2);return this['addCommand'](_0x57aec5,_0x4af6a9,'number');}['hmget'](_0x562588,_0x33cbb8){const {sql:_0x375155,params:_0x4703b0}=this['kvsql']['_hmget'](_0x562588,_0x33cbb8),_0x115a57=_0x42ebfd=>{const _0x1366e5=new Map(_0x42ebfd['map'](_0xe8b67e=>[_0xe8b67e['field'],_0xe8b67e['value']]));return _0x33cbb8['map'](_0x237f0e=>_0x1366e5['get'](_0x237f0e)||null);};return this['addCommand'](_0x375155,_0x4703b0,'array',_0x115a57);}['hgetall'](_0x414a57){const {sql:_0x1db364,params:_0x3efab4}=this['kvsql']['_hgetall'](_0x414a57),_0x1cd7fa=_0xc88255=>{const _0x3f4427={};for(const _0x307d32 of _0xc88255){_0x3f4427[_0x307d32['field']]=_0x307d32['value'];}return _0x3f4427;};return this['addCommand'](_0x1db364,_0x3efab4,'object',_0x1cd7fa);}['hincrbyfloat'](_0x484ed2,_0x166c5c,_0x2669ee){const {sql:_0x17657c,params:_0x4d5652}=this['kvsql']['_hincrbyfloat'](_0x484ed2,_0x166c5c,_0x2669ee);return this['addCommand'](_0x17657c,_0x4d5652,'number',_0x53e35e=>parseFloat(_0x53e35e[0x0]['value']));}['hscan'](_0xe5047c,_0x41ed1c,_0x5f3e1a=0xa){const {sql:_0x42e7ac,params:_0x565c24}=this['kvsql']['_hscan'](_0xe5047c,_0x41ed1c,_0x5f3e1a),_0x4741f8=_0x1d5655=>{const _0x46a7d0={};for(const _0x202576 of _0x1d5655){_0x46a7d0[_0x202576['field']]=_0x202576['value'];}const _0x1676e1=_0x41ed1c+_0x1d5655['length'];return{'cursor':_0x1676e1['toString'](),'items':_0x46a7d0};};return this['addCommand'](_0x42e7ac,_0x565c24,'object',_0x4741f8);}['lrange'](_0x2f1513,_0x53dc6a,_0x112a71){const {sql:_0x50fe3a,params:_0x458316}=this['kvsql']['_lrange'](_0x2f1513,_0x53dc6a,_0x112a71);return this['addCommand'](_0x50fe3a,_0x458316,'array',_0x12bfb2=>_0x12bfb2['map'](_0xb88502=>_0xb88502['value']));}['rpush'](_0x288566,_0x495888){const {sql:_0x3c60ac,params:_0x210c3f}=this['kvsql']['_rpush'](_0x288566,_0x495888);return this['addCommand'](_0x3c60ac,_0x210c3f,'number',_0x51a676=>_0x51a676[0x0]?.['count']||0x0);}['lpush'](_0x281af6,_0x219ccf){const {sql:_0x53e8b6,params:_0x2e1835}=this['kvsql']['_lpush'](_0x281af6,_0x219ccf);return this['addCommand'](_0x53e8b6,_0x2e1835,'number',_0x1f395b=>_0x1f395b[0x0]?.['count']||0x0);}['lpop'](_0x282733){const {sql:_0x6473b4,params:_0x20b49b}=this['kvsql']['_lpop'](_0x282733);return this['addCommand'](_0x6473b4,_0x20b49b,'string');}['lmove'](_0x3175d7,_0x54d59f,_0x419aca,_0x2e0b52){const {sql:_0x1ede88,params:_0x560e53}=this['kvsql']['_lmove'](_0x3175d7,_0x54d59f,_0x419aca,_0x2e0b52);return this['addCommand'](_0x1ede88,_0x560e53,'string');}['zadd'](_0x3518e1,_0x486bab,_0x49b39d,_0x270d40){const {sql:_0x517046,params:_0x93648e}=this['kvsql']['_zadd'](_0x3518e1,_0x486bab,_0x49b39d,_0x270d40);return this['addCommand'](_0x517046,_0x93648e,'number',_0x3f58db=>_0x3f58db[0x0]?.['count']||0x0);}['zrange'](_0x51177f,_0x458f6b,_0x18ea45){const {sql:_0x5657ed,params:_0x324134}=this['kvsql']['_zrange'](_0x51177f,_0x458f6b,_0x18ea45);return this['addCommand'](_0x5657ed,_0x324134,'array',_0x6baa5d=>_0x6baa5d['map'](_0x1c5201=>_0x1c5201['member']));}['zrangebyscore'](_0x25c36c,_0xec88a6,_0x4a5a10){const {sql:_0x432e86,params:_0x1c6eae}=this['kvsql']['_zrangebyscore'](_0x25c36c,_0xec88a6,_0x4a5a10);return this['addCommand'](_0x432e86,_0x1c6eae,'array',_0x537cc6=>_0x537cc6['map'](_0x11eb72=>_0x11eb72['member']));}['zrangebyscore_withscores'](_0x21b110,_0x5f4e08,_0x2bc3ea){const {sql:_0x1c12c7,params:_0x449e50}=this['kvsql']['_zrangebyscore_withscores'](_0x21b110,_0x5f4e08,_0x2bc3ea);return this['addCommand'](_0x1c12c7,_0x449e50,'array',_0x413f6f=>_0x413f6f['map'](_0xfa4ead=>({'member':_0xfa4ead['member'],'score':_0xfa4ead['score']})));}['zrem'](_0x17383b,_0xc2d7f1){const {sql:_0x3d4484,params:_0x3c8482}=this['kvsql']['_zrem'](_0x17383b,_0xc2d7f1);return this['addCommand'](_0x3d4484,_0x3c8482,'number',_0x3d2ea7=>_0x3d2ea7[0x0]?.['count']||0x0);}['zrank'](_0x3ce322,_0x361110){const {sql:_0x5d215e,params:_0x2ca67b}=this['kvsql']['_zrank'](_0x3ce322,_0x361110);return this['addCommand'](_0x5d215e,_0x2ca67b,'number',_0x194192=>_0x194192[0x0]?.['rank']!==undefined?parseInt(_0x194192[0x0]['rank'],0xa)-0x1:null);}['scan'](_0x48ec31,_0x5b9f02=0xa){const {sql:_0xeaa782,params:_0x44c6aa}=this['kvsql']['_scan'](_0x48ec31,_0x5b9f02),_0x5c1a36=_0x310124=>{const _0x360407=_0x310124['map'](_0x529ba0=>_0x529ba0['key']),_0x5970c1=_0x48ec31+_0x310124['length'];return{'cursor':_0x5970c1,'keys':_0x360407};};return this['addCommand'](_0xeaa782,_0x44c6aa,'object',_0x5c1a36);}['rename'](_0x49b17c,_0x3e99f3){const {sql:_0x16a956,params:_0xe497b3}=this['kvsql']['_rename'](_0x49b17c,_0x3e99f3);return this['addCommand'](_0x16a956,_0xe497b3,'void');}async['exec'](){const _0x197fad=this['kvsql']['pgClient'];try{await _0x197fad['query']('BEGIN');const _0x583e45=[],_0x27a77a=[];for(const _0x51237f of this['commands']){const _0x46555e=formatSqlCommand(_0x51237f['sql'],_0x51237f['params']);_0x583e45['push'](_0x46555e);}const _0xb23312=_0x583e45['join'](';\x0a'),_0x5ce4a6=await _0x197fad['query'](_0xb23312),_0x399955=Array['isArray'](_0x5ce4a6)?_0x5ce4a6:[_0x5ce4a6];let _0x2dfa36=0x0;for(const _0x5b9cbc of this['commands']){const _0x193606=_0x399955[_0x2dfa36++],_0x4b22d9=_0x193606?.['rows']||[];let _0x2275b6;if(_0x5b9cbc['transform'])_0x2275b6=_0x5b9cbc['transform'](_0x4b22d9);else switch(_0x5b9cbc['returnType']){case'string':_0x2275b6=_0x4b22d9[0x0]?.['value']||null;break;case'number':_0x2275b6=_0x4b22d9[0x0]?.['count']||0x0;break;case'boolean':_0x2275b6=_0x4b22d9[0x0]?.['success']??_0x4b22d9['length']>0x0;break;case'array':_0x2275b6=_0x4b22d9['map'](_0x2ea049=>_0x2ea049['value']);break;case'object':_0x2275b6=_0x4b22d9[0x0]||{};break;default:_0x2275b6=_0x4b22d9;}_0x27a77a['push'](_0x2275b6);}return await _0x197fad['query']('COMMIT'),_0x27a77a;}catch(_0x4ea7b0){await _0x197fad['query']('ROLLBACK');throw _0x4ea7b0;}}}class KVSQL{constructor(_0x3308c3,_0x1c9851,_0x3fba3d){this['pgClient']=_0x3308c3,this['namespace']=_0x1c9851,this['appId']=_0x3fba3d;}['getMulti'](){return new Multi(this);}['transact'](){return new Multi(this);}['exec'](..._0x3273d8){return Promise['resolve']([]);}['mintKey'](_0x49fdf5,_0xcd028e){return'';}['tableForKey'](_0x5ee65b,_0xe855e5){if(_0x5ee65b===key_1['HMNS'])return'hotmesh_connections';const [_0x1addaf,_0x5a82b7,_0x4b97d0,..._0x5703de]=_0x5ee65b['split'](':');if(_0x5a82b7==='a')return'hotmesh_applications';const _0x1cd714=_0x5703de?.['length']?_0x5703de['join'](':'):'',_0x4e5d26=key_1['KeyService']['resolveEntityType'](_0x4b97d0,_0x1cd714);if(this['safeName'](this['appId'])!==this['safeName'](_0x5a82b7))throw new Error('App\x20ID\x20mismatch:\x20'+this['appId']+'\x20!==\x20'+_0x5a82b7);if(_0x4e5d26==='stats'){if(_0xe855e5==='sorted_set')return'hotmesh_'+this['safeName'](_0x5a82b7)+'_stats_ordered';else{if(_0xe855e5==='list')return'hotmesh_'+this['safeName'](_0x5a82b7)+'_stats_indexed';else{if(_0xe855e5==='hash')return'hotmesh_'+this['safeName'](_0x5a82b7)+'_stats_counted';else throw new Error('Unknown\x20stats\x20type\x20['+_0xe855e5+']\x20for\x20key\x20['+_0x5ee65b+']');}}}if(_0x4e5d26==='unknown_entity')throw new Error('Unknown\x20entity\x20type\x20abbreviation:\x20'+_0x4b97d0);else return _0x4e5d26==='applications'?'hotmesh_applications':'hotmesh_'+this['safeName'](_0x5a82b7)+'_'+_0x4e5d26;}['reconstituteKey'](_0x5bf5b8,_0xe744e7){const _0x5e464a=key_1['KeyService']['resolveAbbreviation'](_0x5bf5b8);return key_1['KeyService']['reconstituteKey']({'namespace':this['namespace'],'app':this['appId'],'entity':_0x5e464a,'id':_0xe744e7});}['safeName'](_0x2c8224,_0x502442=''){if(!_0x2c8224)return'connections';let _0x5edb54=_0x2c8224['trim']()['toLowerCase']();return _0x5edb54=_0x5edb54['replace'](/[^a-z0-9]+/g,'_'),_0x502442&&(_0x5edb54=_0x502442+'_'+_0x5edb54),_0x5edb54['length']>0x3f&&(_0x5edb54=_0x5edb54['slice'](0x0,0x3f)),_0x5edb54=_0x5edb54['replace'](/_+$/g,''),!_0x5edb54&&(_0x5edb54='connections'),_0x5edb54;}async['get'](_0x53be73,_0x393ecf){const {sql:_0x1b781c,params:_0x2ab262}=this['_get'](_0x53be73);if(_0x393ecf)return _0x393ecf['addCommand'](_0x1b781c,_0x2ab262,'string'),Promise['resolve'](null);else{const _0x1d77f9=await this['pgClient']['query'](_0x1b781c,_0x2ab262);return _0x1d77f9['rows'][0x0]?.['value']||null;}}['_get'](_0x117501){const _0x419423=this['tableForKey'](_0x117501),_0x3d269a='\x0a\x20\x20\x20\x20\x20\x20SELECT\x20value\x20FROM\x20'+_0x419423+'\x0a\x20\x20\x20\x20\x20\x20WHERE\x20key\x20=\x20$1\x20AND\x20(expiry\x20IS\x20NULL\x20OR\x20expiry\x20>\x20NOW())\x0a\x20\x20\x20\x20\x20\x20LIMIT\x201\x0a\x20\x20\x20\x20',_0x13dd93=[_0x117501];return{'sql':_0x3d269a,'params':_0x13dd93};}async['setnx'](_0x1a0e64,_0x143c39,_0x8b57f){const {sql:_0x3d1064,params:_0x5dcdfd}=this['_set'](_0x1a0e64,_0x143c39,{'nx':!![]});if(_0x8b57f)return _0x8b57f['addCommand'](_0x3d1064,_0x5dcdfd,'boolean'),Promise['resolve'](!![]);else{const _0x5d20a8=await this['pgClient']['query'](_0x3d1064,_0x5dcdfd);return _0x5d20a8['rowCount']>0x0;}}async['setnxex'](_0x1fcfbf,_0x2e45b9,_0x4bcb1f,_0x2b688){const {sql:_0x45c0bd,params:_0x3a2db3}=this['_set'](_0x1fcfbf,_0x2e45b9,{'nx':!![],'ex':_0x4bcb1f});if(_0x2b688)return _0x2b688['addCommand'](_0x45c0bd,_0x3a2db3,'boolean'),Promise['resolve'](!![]);else{const _0xfc5b40=await this['pgClient']['query'](_0x45c0bd,_0x3a2db3);return _0xfc5b40['rowCount']>0x0;}}async['set'](_0x332503,_0x2f4c41,_0x2219f0,_0x49eee1){const {sql:_0x3f7c6f,params:_0x250338}=this['_set'](_0x332503,_0x2f4c41,_0x2219f0);if(_0x49eee1)return _0x49eee1['addCommand'](_0x3f7c6f,_0x250338,'boolean'),Promise['resolve'](!![]);else{const _0x24d143=await this['pgClient']['query'](_0x3f7c6f,_0x250338);return _0x24d143['rowCount']>0x0;}}['_set'](_0x302597,_0x3a345b,_0x1ad38c){const _0x294c80=this['tableForKey'](_0x302597);let _0x37519f='';const _0x3e93cb=[_0x302597,_0x3a345b];let _0x3eba2b='';return _0x1ad38c?.['ex']&&(_0x3eba2b=',\x20expiry\x20=\x20NOW()\x20+\x20INTERVAL\x20\x27'+_0x1ad38c['ex']+'\x20seconds\x27'),_0x1ad38c?.['nx']?_0x37519f='\x0a\x20\x20\x20\x20\x20\x20\x20\x20INSERT\x20INTO\x20'+_0x294c80+'\x20(key,\x20value'+(_0x3eba2b?',\x20expiry':'')+')\x0a\x20\x20\x20\x20\x20\x20\x20\x20VALUES\x20($1,\x20$2'+(_0x3eba2b?',\x20NOW()\x20+\x20INTERVAL\x20\x27'+_0x1ad38c['ex']+'\x20seconds\x27':'')+')\x0a\x20\x20\x20\x20\x20\x20\x20\x20ON\x20CONFLICT\x20DO\x20NOTHING\x0a\x20\x20\x20\x20\x20\x20\x20\x20RETURNING\x20true\x20as\x20success\x0a\x20\x20\x20\x20\x20\x20':_0x37519f='\x0a\x20\x20\x20\x20\x20\x20\x20\x20INSERT\x20INTO\x20'+_0x294c80+'\x20(key,\x20value'+(_0x3eba2b?',\x20expiry':'')+')\x0a\x20\x20\x20\x20\x20\x20\x20\x20VALUES\x20($1,\x20$2'+(_0x3eba2b?',\x20NOW()\x20+\x20INTERVAL\x20\x27'+_0x1ad38c['ex']+'\x20seconds\x27':'')+')\x0a\x20\x20\x20\x20\x20\x20\x20\x20ON\x20CONFLICT\x20(key)\x20DO\x20UPDATE\x20SET\x20value\x20=\x20EXCLUDED.value'+_0x3eba2b+'\x0a\x20\x20\x20\x20\x20\x20\x20\x20RETURNING\x20true\x20as\x20success\x0a\x20\x20\x20\x20\x20\x20',{'sql':_0x37519f,'params':_0x3e93cb};}async['del'](_0x361091,_0x4b9536){const {sql:_0x1b1e71,params:_0x5be1e1}=this['_del'](_0x361091);if(_0x4b9536)return _0x4b9536['addCommand'](_0x1b1e71,_0x5be1e1,'number'),Promise['resolve'](0x0);else{const _0x268333=await this['pgClient']['query'](_0x1b1e71,_0x5be1e1);return Number(_0x268333['rows'][0x0]?.['count']||0x0);}}['_del'](_0x175858){const _0x566a59=this['tableForKey'](_0x175858),_0x53ff3d='\x0a\x20\x20\x20\x20\x20\x20WITH\x20deleted\x20AS\x20(\x0a\x20\x20\x20\x20\x20\x20\x20\x20DELETE\x20FROM\x20'+_0x566a59+'\x20WHERE\x20key\x20=\x20$1\x0a\x20\x20\x20\x20\x20\x20\x20\x20RETURNING\x201\x0a\x20\x20\x20\x20\x20\x20)\x0a\x20\x20\x20\x20\x20\x20SELECT\x20COUNT(*)\x20as\x20count\x20FROM\x20deleted\x0a\x20\x20\x20\x20',_0x868228=[_0x175858];return{'sql':_0x53ff3d,'params':_0x868228};}async['expire'](_0x4bcfef,_0x309111,_0xf18633){const {sql:_0x5d0c52,params:_0x597f49}=this['_expire'](_0x4bcfef,_0x309111);if(_0xf18633)return _0xf18633['addCommand'](_0x5d0c52,_0x597f49,'boolean'),Promise['resolve'](!![]);else{const _0x90f713=await this['pgClient']['query'](_0x5d0c52,_0x597f49);return _0x90f713['rowCount']>0x0;}}['_expire'](_0x55f811,_0x59c7d1){const _0x192829=this['tableForKey'](_0x55f811),_0x11699a=new Date(Date['now']()+_0x59c7d1*0x3e8),_0x1a5f36='\x0a\x20\x20\x20\x20\x20\x20UPDATE\x20'+_0x192829+'\x0a\x20\x20\x20\x20\x20\x20SET\x20expiry\x20=\x20$2\x0a\x20\x20\x20\x20\x20\x20WHERE\x20key\x20=\x20$1\x0a\x20\x20\x20\x20\x20\x20RETURNING\x20true\x20as\x20success\x0a\x20\x20\x20\x20',_0x1cfc96=[_0x55f811,_0x11699a];return{'sql':_0x1a5f36,'params':_0x1cfc96};}async['hsetnx'](_0x373b8e,_0x344d4b,_0x113324,_0x1c5ee2){const {sql:_0x4cca83,params:_0x866164}=this['_hset'](_0x373b8e,{[_0x344d4b]:_0x113324},{'nx':!![]});if(_0x1c5ee2)return _0x1c5ee2['addCommand'](_0x4cca83,_0x866164,'number'),Promise['resolve'](0x0);else{const _0x2e5202=await this['pgClient']['query'](_0x4cca83,_0x866164);return _0x2e5202['rowCount'];}}async['hset'](_0x319006,_0x1d679e,_0x56baa5,_0x5082dd){const {sql:_0xe5da9d,params:_0x35f839}=this['_hset'](_0x319006,_0x1d679e,_0x56baa5);if(_0x5082dd)return _0x5082dd['addCommand'](_0xe5da9d,_0x35f839,'number'),Promise['resolve'](0x0);else{const _0x525b4b=await this['pgClient']['query'](_0xe5da9d,_0x35f839);return _0x525b4b['rowCount'];}}['deriveType'](_0x1a5991){if(_0x1a5991===':')return'status';else{if(_0x1a5991['startsWith']('_'))return'udata';else{if(_0x1a5991['startsWith']('-'))return _0x1a5991['includes'](',')?'hmark':'jmark';else{if(_0x1a5991['length']===0x3)return'jdata';else return _0x1a5991['includes'](',')?'adata':'other';}}}}['_hset'](_0x31a33b,_0x2851b3,_0x19fdc8){let _0x238c86='';const _0x2094d4=[_0x31a33b],_0x8f0d5=this['tableForKey'](_0x31a33b,'hash'),_0x9177c6=_0x8f0d5['endsWith']('_jobs'),_0x4a7472=Object['entries'](_0x2851b3);_0x4a7472['forEach'](([_0x128191,_0x2cadcb],_0x514104)=>{_0x2094d4['push'](_0x128191,_0x2cadcb),_0x9177c6&&_0x2094d4['push'](this['deriveType'](_0x128191));});const _0x5a97c1=_0x4a7472['map']((_0x124c6c,_0x2ce8af)=>_0x9177c6?'($1,\x20$'+(0x2+_0x2ce8af*0x3)+',\x20$'+(0x3+_0x2ce8af*0x3)+',\x20$'+(0x4+_0x2ce8af*0x3)+')':'($1,\x20$'+(0x2+_0x2ce8af*0x2)+',\x20$'+(0x3+_0x2ce8af*0x2)+')')['join'](',\x20');return _0x19fdc8?.['nx']?_0x238c86='\x0a\x20\x20\x20\x20\x20\x20\x20\x20INSERT\x20INTO\x20'+_0x8f0d5+'\x20(key,\x20field,\x20value'+(_0x9177c6?',\x20type':'')+')\x0a\x20\x20\x20\x20\x20\x20\x20\x20VALUES\x20'+_0x5a97c1+'\x0a\x20\x20\x20\x20\x20\x20\x20\x20ON\x20CONFLICT\x20DO\x20NOTHING\x0a\x20\x20\x20\x20\x20\x20\x20\x20RETURNING\x201\x20as\x20count\x0a\x20\x20\x20\x20\x20\x20':_0x238c86='\x0a\x20\x20\x20\x20\x20\x20\x20\x20INSERT\x20INTO\x20'+_0x8f0d5+'\x20(key,\x20field,\x20value'+(_0x9177c6?',\x20type':'')+')\x0a\x20\x20\x20\x20\x20\x20\x20\x20VALUES\x20'+_0x5a97c1+'\x0a\x20\x20\x20\x20\x20\x20\x20\x20ON\x20CONFLICT\x20(key,\x20field)\x20DO\x20UPDATE\x20SET\x20value\x20=\x20EXCLUDED.value\x0a\x20\x20\x20\x20\x20\x20\x20\x20RETURNING\x201\x20as\x20count\x0a\x20\x20\x20\x20\x20\x20',{'sql':_0x238c86,'params':_0x2094d4};}async['hget'](_0x5bbbbf,_0x3a9525,_0x3561f2){const {sql:_0x2245bd,params:_0x220142}=this['_hget'](_0x5bbbbf,_0x3a9525);if(_0x3561f2)return _0x3561f2['addCommand'](_0x2245bd,_0x220142,'string'),Promise['resolve'](null);else{const _0x1deea2=await this['pgClient']['query'](_0x2245bd,_0x220142);return _0x1deea2['rows'][0x0]?.['value']||null;}}['_hget'](_0x44b409,_0x3a15ef){const _0x49f86f=this['tableForKey'](_0x44b409,'hash'),_0x4585c9='\x0a\x20\x20\x20\x20\x20\x20SELECT\x20value\x20FROM\x20'+_0x49f86f+'\x0a\x20\x20\x20\x20\x20\x20WHERE\x20key\x20=\x20$1\x20AND\x20field\x20=\x20$2\x20AND\x20(expiry\x20IS\x20NULL\x20OR\x20expiry\x20>\x20NOW())\x0a\x20\x20\x20\x20\x20\x20LIMIT\x201\x0a\x20\x20\x20\x20',_0x5c6633=[_0x44b409,_0x3a15ef];return{'sql':_0x4585c9,'params':_0x5c6633};}async['hdel'](_0x388267,_0x5dfd24,_0x37b0e1){!Array['isArray'](_0x5dfd24)&&(_0x5dfd24=[_0x5dfd24]);const {sql:_0x526ca1,params:_0x50ccf6}=this['_hdel'](_0x388267,_0x5dfd24);if(_0x37b0e1)return _0x37b0e1['addCommand'](_0x526ca1,_0x50ccf6,'number'),Promise['resolve'](0x0);else{const _0x37d8a1=await this['pgClient']['query'](_0x526ca1,_0x50ccf6);return Number(_0x37d8a1['rows'][0x0]?.['count']||0x0);}}['_hdel'](_0x2fb143,_0x4593d3){const _0x31ac97=this['tableForKey'](_0x2fb143,'hash'),_0x3a685b=_0x4593d3['map']((_0x1a7558,_0x313266)=>'$'+(_0x313266+0x2))['join'](',\x20'),_0x137c0c='\x0a\x20\x20\x20\x20\x20\x20WITH\x20deleted\x20AS\x20(\x0a\x20\x20\x20\x20\x20\x20\x20\x20DELETE\x20FROM\x20'+_0x31ac97+'\x0a\x20\x20\x20\x20\x20\x20\x20\x20WHERE\x20key\x20=\x20$1\x20AND\x20field\x20IN\x20('+_0x3a685b+')\x0a\x20\x20\x20\x20\x20\x20\x20\x20RETURNING\x201\x0a\x20\x20\x20\x20\x20\x20)\x0a\x20\x20\x20\x20\x20\x20SELECT\x20COUNT(*)\x20as\x20count\x20FROM\x20deleted\x0a\x20\x20\x20\x20',_0x47d106=[_0x2fb143,..._0x4593d3];return{'sql':_0x137c0c,'params':_0x47d106};}async['hmget'](_0x42b09a,_0x3bc814,_0x1efebb){const {sql:_0x18108f,params:_0x4ddab0}=this['_hmget'](_0x42b09a,_0x3bc814);if(_0x1efebb)return _0x1efebb['addCommand'](_0x18108f,_0x4ddab0,'array',_0x15b371=>{const _0x830bab=new Map(_0x15b371['map'](_0x5c9b1d=>[_0x5c9b1d['field'],_0x5c9b1d['value']]));return _0x3bc814['map'](_0x60cb66=>_0x830bab['get'](_0x60cb66)||null);}),Promise['resolve']([]);else{const _0x46d32=await this['pgClient']['query'](_0x18108f,_0x4ddab0),_0x4b14c1=new Map(_0x46d32['rows']['map'](_0x4c890b=>[_0x4c890b['field'],_0x4c890b['value']]));return _0x3bc814['map'](_0xc780f9=>_0x4b14c1['get'](_0xc780f9)||null);}}['_hmget'](_0x3bfe45,_0x4ef750){const _0x2fdf7a=this['tableForKey'](_0x3bfe45,'hash'),_0x2232a9='\x0a\x20\x20\x20\x20\x20\x20SELECT\x20field,\x20value\x20FROM\x20'+_0x2fdf7a+'\x0a\x20\x20\x20\x20\x20\x20WHERE\x20key\x20=\x20$1\x20AND\x20field\x20=\x20ANY($2::text[])\x0a\x20\x20\x20\x20',_0x21a4ab=[_0x3bfe45,_0x4ef750];return{'sql':_0x2232a9,'params':_0x21a4ab};}async['hgetall'](_0x3cbff8,_0x3e674d){const {sql:_0x558951,params:_0x2fe4cd}=this['_hgetall'](_0x3cbff8);if(_0x3e674d)return _0x3e674d['addCommand'](_0x558951,_0x2fe4cd,'object',_0x56dcda=>{const _0x3cc041={};for(const _0x119436 of _0x56dcda){_0x3cc041[_0x119436['field']]=_0x119436['value'];}return _0x3cc041;}),Promise['resolve']({});else{const _0x5c337c=await this['pgClient']['query'](_0x558951,_0x2fe4cd),_0x1ab2e6={};for(const _0x19002e of _0x5c337c['rows']){_0x1ab2e6[_0x19002e['field']]=_0x19002e['value'];}return _0x1ab2e6;}}['_hgetall'](_0x778183){const _0x8631fe=this['tableForKey'](_0x778183,'hash'),_0xd46382='\x0a\x20\x20\x20\x20\x20\x20SELECT\x20field,\x20value\x20FROM\x20'+_0x8631fe+'\x0a\x20\x20\x20\x20\x20\x20WHERE\x20key\x20=\x20$1\x20AND\x20(expiry\x20IS\x20NULL\x20OR\x20expiry\x20>\x20NOW())\x0a\x20\x20\x20\x20',_0x5d5a85=[_0x778183];return{'sql':_0xd46382,'params':_0x5d5a85};}async['hincrbyfloat'](_0x4a9b74,_0x3e25c1,_0x3d6246,_0x295bf0){const {sql:_0x502a16,params:_0x5613b8}=this['_hincrbyfloat'](_0x4a9b74,_0x3e25c1,_0x3d6246);if(_0x295bf0)return _0x295bf0['addCommand'](_0x502a16,_0x5613b8,'number',_0x2b0b0e=>parseFloat(_0x2b0b0e[0x0]['value'])),Promise['resolve'](0x0);else{const _0x19e7c1=await this['pgClient']['query'](_0x502a16,_0x5613b8);return parseFloat(_0x19e7c1['rows'][0x0]['value']);}}['_hincrbyfloat'](_0x8554aa,_0xb6f436,_0x1766eb){const _0x29293c=this['tableForKey'](_0x8554aa,'hash'),_0x2e6203=_0x29293c['endsWith']('_jobs');let _0x58aaa4;const _0x28af59=[_0x8554aa,_0xb6f436,_0x1766eb];if(_0x2e6203){const _0x36ac50=this['deriveType'](_0xb6f436);_0x28af59['push'](_0x36ac50),_0x58aaa4='\x0a\x20\x20\x20\x20\x20\x20\x20\x20INSERT\x20INTO\x20'+_0x29293c+'\x20(key,\x20field,\x20value,\x20type)\x0a\x20\x20\x20\x20\x20\x20\x20\x20VALUES\x20($1,\x20$2,\x20($3)::text,\x20$4)\x0a\x20\x20\x20\x20\x20\x20\x20\x20ON\x20CONFLICT\x20(key,\x20field)\x20DO\x20UPDATE\x20SET\x20value\x20=\x20('+_0x29293c+'.value::double\x20precision\x20+\x20$3::double\x20precision)::text\x0a\x20\x20\x20\x20\x20\x20\x20\x20RETURNING\x20value\x0a\x20\x20\x20\x20\x20\x20';}else _0x58aaa4='\x0a\x20\x20\x20\x20\x20\x20\x20\x20INSERT\x20INTO\x20'+_0x29293c+'\x20(key,\x20field,\x20value)\x0a\x20\x20\x20\x20\x20\x20\x20\x20VALUES\x20($1,\x20$2,\x20($3)::text)\x0a\x20\x20\x20\x20\x20\x20\x20\x20ON\x20CONFLICT\x20(key,\x20field)\x20DO\x20UPDATE\x20SET\x20value\x20=\x20('+_0x29293c+'.value::double\x20precision\x20+\x20$3::double\x20precision)::text\x0a\x20\x20\x20\x20\x20\x20\x20\x20RETURNING\x20value\x0a\x20\x20\x20\x20\x20\x20';return{'sql':_0x58aaa4,'params':_0x28af59};}async['hscan'](_0x17b907,_0x4b66dc,_0x3799de=0xa,_0x2f3c67,_0x5b0b59){const {sql:_0x1dbf65,params:_0x54a3bf}=this['_hscan'](_0x17b907,_0x4b66dc,_0x3799de,_0x2f3c67);if(_0x5b0b59)return _0x5b0b59['addCommand'](_0x1dbf65,_0x54a3bf,'object',_0x54045f=>{const _0x3804e0={};for(const _0x38be6d of _0x54045f){_0x3804e0[_0x38be6d['field']]=_0x38be6d['value'];}const _0x41395a=_0x54045f['length']<_0x3799de?0x0:Number(_0x4b66dc)+_0x54045f['length'];return{'cursor':_0x41395a['toString'](),'items':_0x3804e0};}),Promise['resolve']({'cursor':'0','items':{}});else{const _0x1173ff=await this['pgClient']['query'](_0x1dbf65,_0x54a3bf),_0x3d6d61={};for(const _0x9f9f88 of _0x1173ff['rows']){_0x3d6d61[_0x9f9f88['field']]=_0x9f9f88['value'];}const _0x2329a7=_0x1173ff['rowCount']<_0x3799de?0x0:Number(_0x4b66dc)+_0x1173ff['rowCount'];return{'cursor':_0x2329a7['toString'](),'items':_0x3d6d61};}}['_hscan'](_0x59e909,_0x4dc232,_0x27571a,_0x4d27ca){const _0x9af288=this['tableForKey'](_0x59e909,'hash'),_0x162205=[_0x59e909];let _0x51378b='\x0a\x20\x20\x20\x20\x20\x20SELECT\x20field,\x20value\x20FROM\x20'+_0x9af288+'\x0a\x20\x20\x20\x20\x20\x20WHERE\x20key\x20=\x20$1\x20AND\x20(expiry\x20IS\x20NULL\x20OR\x20expiry\x20>\x20NOW())\x0a\x20\x20\x20\x20',_0x448789=0x2;if(_0x4d27ca){const _0x5bc77f=_0x4d27ca['replace'](/\*/g,'%');_0x51378b+='\x20AND\x20field\x20LIKE\x20$'+_0x448789,_0x162205['push'](_0x5bc77f),_0x448789++;}return _0x51378b+='\x0a\x20\x20\x20\x20\x20\x20ORDER\x20BY\x20field\x0a\x20\x20\x20\x20\x20\x20OFFSET\x20$'+_0x448789+'\x20LIMIT\x20$'+(_0x448789+0x1)+'\x0a\x20\x20\x20\x20',_0x162205['push'](_0x4dc232['toString']()),_0x162205['push'](_0x27571a['toString']()),{'sql':_0x51378b,'params':_0x162205};}async['lrange'](_0x3544bd,_0x36d55d,_0x41b7c4,_0x5ea4ac){const {sql:_0x5c59b0,params:_0x52d63e}=this['_lrange'](_0x3544bd,_0x36d55d,_0x41b7c4);if(_0x5ea4ac)return _0x5ea4ac['addCommand'](_0x5c59b0,_0x52d63e,'array',_0x1e991f=>_0x1e991f['map'](_0x4e1483=>_0x4e1483['value'])),Promise['resolve']([]);else{const _0x4417f2=await this['pgClient']['query'](_0x5c59b0,_0x52d63e);return _0x4417f2['rows']['map'](_0x3770a4=>_0x3770a4['value']);}}['_lrange'](_0x2aa7ab,_0x2e01ee,_0x4e2e0c){const _0x1d009f=this['tableForKey'](_0x2aa7ab,'list'),_0x5c7a62='\x0a\x20\x20\x20\x20\x20\x20WITH\x20numbered\x20AS\x20(\x0a\x20\x20\x20\x20\x20\x20\x20\x20SELECT\x20value,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20ROW_NUMBER()\x20OVER\x20(ORDER\x20BY\x20\x22index\x22\x20ASC)\x20-\x201\x20AS\x20rn,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20COUNT(*)\x20OVER()\x20-\x201\x20AS\x20max_index\x0a\x20\x20\x20\x20\x20\x20\x20\x20FROM\x20'+_0x1d009f+'\x0a\x20\x20\x20\x20\x20\x20\x20\x20WHERE\x20key\x20=\x20$1\x20AND\x20(expiry\x20IS\x20NULL\x20OR\x20expiry\x20>\x20NOW())\x0a\x20\x20\x20\x20\x20\x20),\x0a\x20\x20\x20\x20\x20\x20indices\x20AS\x20(\x0a\x20\x20\x20\x20\x20\x20\x20\x20SELECT\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20LEAST(GREATEST(CASE\x20WHEN\x20$2\x20>=\x200\x20THEN\x20$2\x20ELSE\x20max_index\x20+\x20$2\x20+\x201\x20END,\x200),\x20max_index)\x20AS\x20adjusted_start,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20LEAST(GREATEST(CASE\x20WHEN\x20$3\x20>=\x200\x20THEN\x20$3\x20ELSE\x20max_index\x20+\x20$3\x20+\x201\x20END,\x200),\x20max_index)\x20AS\x20adjusted_end\x0a\x20\x20\x20\x20\x20\x20\x20\x20FROM\x20(SELECT\x20max_index\x20FROM\x20numbered\x20LIMIT\x201)\x20AS\x20mi\x0a\x20\x20\x20\x20\x20\x20)\x0a\x20\x20\x20\x20\x20\x20SELECT\x20value\x0a\x20\x20\x20\x20\x20\x20FROM\x20numbered,\x20indices\x0a\x20\x20\x20\x20\x20\x20WHERE\x20rn\x20BETWEEN\x20indices.adjusted_start\x20AND\x20indices.adjusted_end\x0a\x20\x20\x20\x20\x20\x20ORDER\x20BY\x20rn\x20ASC\x0a\x20\x20\x20\x20',_0x37d59b=[_0x2aa7ab,_0x2e01ee,_0x4e2e0c];return{'sql':_0x5c7a62,'params':_0x37d59b};}async['rpush'](_0x1f5af7,_0x189d77,_0x6886e6){const {sql:_0x3f5a3b,params:_0x38475a}=this['_rpush'](_0x1f5af7,_0x189d77);if(_0x6886e6)return _0x6886e6['addCommand'](_0x3f5a3b,_0x38475a,'number',_0x23c0fe=>_0x23c0fe[0x0]?.['count']||0x0),Promise['resolve'](0x0);else{const _0x502e47=await this['pgClient']['query'](_0x3f5a3b,_0x38475a);return Number(_0x502e47['rows'][0x0]?.['count']||0x0);}}['_rpush'](_0xc79df3,_0x5b2fe9){const _0x4c7f31=this['tableForKey'](_0xc79df3,'list'),_0x4fb5ff=Array['isArray'](_0x5b2fe9)?_0x5b2fe9:[_0x5b2fe9],_0x273afd=_0x4fb5ff['map']((_0x2b2c75,_0x54dcbb)=>'($1,\x20(SELECT\x20COALESCE(MAX(\x22index\x22),\x200)\x20+\x20'+(_0x54dcbb+0x1)+'\x20FROM\x20'+_0x4c7f31+'\x20WHERE\x20key\x20=\x20$1),\x20$'+(_0x54dcbb+0x2)+')')['join'](',\x20'),_0x3a6587='\x0a\x20\x20\x20\x20\x20\x20WITH\x20inserted\x20AS\x20(\x0a\x20\x20\x20\x20\x20\x20\x20\x20INSERT\x20INTO\x20'+_0x4c7f31+'\x20(key,\x20\x22index\x22,\x20value)\x0a\x20\x20\x20\x20\x20\x20\x20\x20VALUES\x20'+_0x273afd+'\x0a\x20\x20\x20\x20\x20\x20\x20\x20RETURNING\x201\x0a\x20\x20\x20\x20\x20\x20)\x0a\x20\x20\x20\x20\x20\x20SELECT\x20COUNT(*)\x20as\x20count\x20FROM\x20inserted\x0a\x20\x20\x20\x20',_0x37e80b=[_0xc79df3,..._0x4fb5ff];return{'sql':_0x3a6587,'params':_0x37e80b};}async['lpush'](_0x14176b,_0x395520,_0x1c2bab){const {sql:_0x23df14,params:_0x5e4c09}=this['_lpush'](_0x14176b,_0x395520);if(_0x1c2bab)return _0x1c2bab['addCommand'](_0x23df14,_0x5e4c09,'number',_0xcb50be=>_0xcb50be[0x0]?.['count']||0x0),Promise['resolve'](0x0);else{const _0x2080f6=await this['pgClient']['query'](_0x23df14,_0x5e4c09);return Number(_0x2080f6['rows'][0x0]?.['count']||0x0);}}['_lpush'](_0x2f883a,_0x5cd5ef){const _0x4ee10d=this['tableForKey'](_0x2f883a,'list'),_0x8655d0=Array['isArray'](_0x5cd5ef)?_0x5cd5ef:[_0x5cd5ef],_0x48b4df=_0x8655d0['map']((_0x3bef15,_0x42c4b5)=>'($1,\x20(SELECT\x20COALESCE(MIN(\x22index\x22),\x200)\x20-\x20'+(_0x42c4b5+0x1)+'\x20FROM\x20'+_0x4ee10d+'\x20WHERE\x20key\x20=\x20$1),\x20$'+(_0x42c4b5+0x2)+')')['join'](',\x20'),_0x9a2261='\x0a\x20\x20\x20\x20\x20\x20WITH\x20inserted\x20AS\x20(\x0a\x20\x20\x20\x20\x20\x20\x20\x20INSERT\x20INTO\x20'+_0x4ee10d+'\x20(key,\x20\x22index\x22,\x20value)\x0a\x20\x20\x20\x20\x20\x20\x20\x20VALUES\x20'+_0x48b4df+'\x0a\x20\x20\x20\x20\x20\x20\x20\x20RETURNING\x201\x0a\x20\x20\x20\x20\x20\x20)\x0a\x20\x20\x20\x20\x20\x20SELECT\x20COUNT(*)\x20as\x20count\x20FROM\x20inserted\x0a\x20\x20\x20\x20',_0x1205e9=[_0x2f883a,..._0x8655d0];return{'sql':_0x9a2261,'params':_0x1205e9};}async['lpop'](_0x5e6018,_0x4cdb4d){const {sql:_0x4ec8d8,params:_0x41a1d6}=this['_lpop'](_0x5e6018);if(_0x4cdb4d)return _0x4cdb4d['addCommand'](_0x4ec8d8,_0x41a1d6,'string'),Promise['resolve'](null);else{const _0x59236d=await this['pgClient']['query'](_0x4ec8d8,_0x41a1d6);return _0x59236d['rows'][0x0]?.['value']||null;}}['_lpop'](_0x3a6a5b){const _0x1fc2e7=this['tableForKey'](_0x3a6a5b,'list'),_0xe18e50='\x0a\x20\x20\x20\x20\x20\x20DELETE\x20FROM\x20'+_0x1fc2e7+'\x0a\x20\x20\x20\x20\x20\x20WHERE\x20key\x20=\x20$1\x20AND\x20\x22index\x22\x20=\x20(\x0a\x20\x20\x20\x20\x20\x20\x20\x20SELECT\x20MIN(\x22index\x22)\x20FROM\x20'+_0x1fc2e7+'\x20WHERE\x20key\x20=\x20$1\x20AND\x20(expiry\x20IS\x20NULL\x20OR\x20expiry\x20>\x20NOW())\x0a\x20\x20\x20\x20\x20\x20)\x0a\x20\x20\x20\x20\x20\x20RETURNING\x20value\x0a\x20\x20\x20\x20',_0xe4b934=[_0x3a6a5b];return{'sql':_0xe18e50,'params':_0xe4b934};}async['lmove'](_0x1ff49f,_0x21803c,_0x4f7e04,_0x2a4efa,_0x35145f){const {sql:_0x2f6707,params:_0x97db92}=this['_lmove'](_0x1ff49f,_0x21803c,_0x4f7e04,_0x2a4efa);if(_0x35145f)return _0x35145f['addCommand'](_0x2f6707,_0x97db92,'string'),Promise['resolve'](null);else{const _0x1033e1=this['pgClient'];try{await _0x1033e1['query']('BEGIN');const _0xeeb6e=await _0x1033e1['query'](_0x2f6707,_0x97db92);return await _0x1033e1['query']('COMMIT'),_0xeeb6e['rows'][0x0]?.['value']||null;}catch(_0x57cfae){await _0x1033e1['query']('ROLLBACK');throw _0x57cfae;}}}['_lmove'](_0x28fdcf,_0x299144,_0x1b3912,_0x1d2e64){const _0x5f157c=this['tableForKey'](_0x28fdcf,'list'),_0x433894=_0x1b3912==='LEFT'?'ASC':'DESC',_0x25f3de=_0x1d2e64==='LEFT'?'(SELECT\x20COALESCE(MIN(\x22index\x22),\x200)\x20-\x201\x20FROM\x20'+_0x5f157c+'\x20WHERE\x20key\x20=\x20$2)':'(SELECT\x20COALESCE(MAX(\x22index\x22),\x200)\x20+\x201\x20FROM\x20'+_0x5f157c+'\x20WHERE\x20key\x20=\x20$2)',_0x4240de='\x0a\x20\x20\x20\x20\x20\x20WITH\x20moved\x20AS\x20(\x0a\x20\x20\x20\x20\x20\x20\x20\x20DELETE\x20FROM\x20'+_0x5f157c+'\x0a\x20\x20\x20\x20\x20\x20\x20\x20WHERE\x20ctid\x20IN\x20(\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20SELECT\x20ctid\x20FROM\x20'+_0x5f157c+'\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20WHERE\x20key\x20=\x20$1\x20AND\x20(expiry\x20IS\x20NULL\x20OR\x20expiry\x20>\x20NOW())\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20ORDER\x20BY\x20\x22index\x22\x20'+_0x433894+'\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20LIMIT\x201\x0a\x20\x20\x20\x20\x20\x20\x20\x20)\x0a\x20\x20\x20\x20\x20\x20\x20\x20RETURNING\x20value\x0a\x20\x20\x20\x20\x20\x20),\x0a\x20\x20\x20\x20\x20\x20inserted\x20AS\x20(\x0a\x20\x20\x20\x20\x20\x20\x20\x20INSERT\x20INTO\x20'+_0x5f157c+'\x20(key,\x20\x22index\x22,\x20value)\x0a\x20\x20\x20\x20\x20\x20\x20\x20SELECT\x20$2,\x20'+_0x25f3de+',\x20value\x20FROM\x20moved\x0a\x20\x20\x20\x20\x20\x20\x20\x20RETURNING\x20value\x0a\x20\x20\x20\x20\x20\x20)\x0a\x20\x20\x20\x20\x20\x20SELECT\x20value\x20FROM\x20inserted\x0a\x20\x20\x20\x20',_0x347a14=[_0x28fdcf,_0x299144];return{'sql':_0x4240de,'params':_0x347a14};}async['zadd'](_0x90a67,_0x2b579b,_0x52bec9,_0x3e70c4,_0xd99b3d){const {sql:_0x5d2b3a,params:_0x4af08b}=this['_zadd'](_0x90a67,_0x2b579b,_0x52bec9,_0x3e70c4);if(_0xd99b3d)return _0xd99b3d['addCommand'](_0x5d2b3a,_0x4af08b,'number',_0x1798bd=>_0x1798bd[0x0]?.['count']||0x0),Promise['resolve'](0x0);else{const _0x22da03=await this['pgClient']['query'](_0x5d2b3a,_0x4af08b);return Number(_0x22da03['rows'][0x0]?.['count']||0x0);}}['_zadd'](_0x57beb9,_0x52b634,_0x266972,_0x212b43){const _0x9cbe10=this['tableForKey'](_0x57beb9,'sorted_set');let _0x226784='';const _0x214e82=[_0x57beb9,_0x266972,_0x52b634];return _0x212b43?.['nx']?_0x226784='\x0a\x20\x20\x20\x20\x20\x20\x20\x20INSERT\x20INTO\x20'+_0x9cbe10+'\x20(key,\x20member,\x20score)\x0a\x20\x20\x20\x20\x20\x20\x20\x20VALUES\x20($1,\x20$2,\x20$3)\x0a\x20\x20\x20\x20\x20\x20\x20\x20ON\x20CONFLICT\x20DO\x20NOTHING\x0a\x20\x20\x20\x20\x20\x20\x20\x20RETURNING\x201\x20as\x20count\x0a\x20\x20\x20\x20\x20\x20':_0x226784='\x0a\x20\x20\x20\x20\x20\x20\x20\x20INSERT\x20INTO\x20'+_0x9cbe10+'\x20(key,\x20member,\x20score)\x0a\x20\x20\x20\x20\x20\x20\x20\x20VALUES\x20($1,\x20$2,\x20$3)\x0a\x20\x20\x20\x20\x20\x20\x20\x20ON\x20CONFLICT\x20(key,\x20member)\x20DO\x20UPDATE\x20SET\x20score\x20=\x20$3\x0a\x20\x20\x20\x20\x20\x20\x20\x20RETURNING\x201\x20as\x20count\x0a\x20\x20\x20\x20\x20\x20',{'sql':_0x226784,'params':_0x214e82};}async['zrange'](_0x428fbe,_0x5b6c3d,_0x20c518,_0x1a2ff2,_0x4cb771){const {sql:_0xedc57e,params:_0x26f374}=this['_zrange'](_0x428fbe,_0x5b6c3d,_0x20c518,_0x1a2ff2);if(_0x4cb771)return _0x4cb771['addCommand'](_0xedc57e,_0x26f374,'array',_0x375607=>{return _0x1a2ff2==='WITHSCORES'?_0x375607['flatMap'](_0x6a19ab=>[_0x6a19ab['member'],_0x6a19ab['score']['toString']()]):_0x375607['map'](_0x2f71fb=>_0x2f71fb['member']);}),Promise['resolve']([]);else{const _0x53e819=await this['pgClient']['query'](_0xedc57e,_0x26f374);return _0x1a2ff2==='WITHSCORES'?_0x53e819['rows']['flatMap'](_0x3198ff=>[_0x3198ff['member'],_0x3198ff['score']['toString']()]):_0x53e819['rows']['map'](_0x219b3c=>_0x219b3c['member']);}}['_zrange'](_0x1cfb4b,_0x3a9b1e,_0x571adf,_0x366645){const _0x5c8f32=this['tableForKey'](_0x1cfb4b,'sorted_set'),_0x3230ed=_0x366645==='WITHSCORES'?'member,\x20score':'member',_0x48c041='\x0a\x20\x20\x20\x20\x20\x20WITH\x20total_entries\x20AS\x20(\x0a\x20\x20\x20\x20\x20\x20\x20\x20SELECT\x20COUNT(*)\x20-\x201\x20AS\x20max_index\x20FROM\x20'+_0x5c8f32+'\x0a\x20\x20\x20\x20\x20\x20\x20\x20WHERE\x20key\x20=\x20$1\x20AND\x20(expiry\x20IS\x20NULL\x20OR\x20expiry\x20>\x20NOW())\x0a\x20\x20\x20\x20\x20\x20),\x20ordered_entries\x20AS\x20(\x0a\x20\x20\x20\x20\x20\x20\x20\x20SELECT\x20'+_0x3230ed+',\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20ROW_NUMBER()\x20OVER\x20(ORDER\x20BY\x20score\x20ASC,\x20member\x20ASC)\x20-\x201\x20AS\x20rn,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20(SELECT\x20max_index\x20FROM\x20total_entries)\x20AS\x20max_index\x0a\x20\x20\x20\x20\x20\x20\x20\x20FROM\x20'+_0x5c8f32+'\x0a\x20\x20\x20\x20\x20\x20\x20\x20WHERE\x20key\x20=\x20$1\x20AND\x20(expiry\x20IS\x20NULL\x20OR\x20expiry\x20>\x20NOW())\x0a\x20\x20\x20\x20\x20\x20),\x20indices\x20AS\x20(\x0a\x20\x20\x20\x20\x20\x20\x20\x20SELECT\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20CASE\x20WHEN\x20$2\x20>=\x200\x20THEN\x20$2\x20ELSE\x20max_index\x20+\x20$2\x20+\x201\x20END\x20AS\x20adjusted_start,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20CASE\x20WHEN\x20$3\x20>=\x200\x20THEN\x20$3\x20ELSE\x20max_index\x20+\x20$3\x20+\x201\x20END\x20AS\x20adjusted_stop\x0a\x20\x20\x20\x20\x20\x20\x20\x20FROM\x20total_entries\x0a\x20\x20\x20\x20\x20\x20)\x0a\x20\x20\x20\x20\x20\x20SELECT\x20'+_0x3230ed+'\x0a\x20\x20\x20\x20\x20\x20FROM\x20ordered_entries,\x20indices\x0a\x20\x20\x20\x20\x20\x20WHERE\x20rn\x20BETWEEN\x20LEAST(GREATEST(adjusted_start,\x200),\x20max_index)\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20AND\x20LEAST(GREATEST(adjusted_stop,\x200),\x20max_index)\x0a\x20\x20\x20\x20\x20\x20ORDER\x20BY\x20rn\x20ASC;\x0a\x20\x20\x20\x20',_0x4b0e1c=[_0x1cfb4b,_0x3a9b1e,_0x571adf];return{'sql':_0x48c041,'params':_0x4b0e1c};}async['zscore'](_0x3c7d2a,_0x32269e,_0xedcfcd){const {sql:_0x3b2193,params:_0x482ef8}=this['_zscore'](_0x3c7d2a,_0x32269e);if(_0xedcfcd)return _0xedcfcd['addCommand'](_0x3b2193,_0x482ef8,'single',_0x3a5fab=>{return _0x3a5fab?parseFloat(_0x3a5fab['score']):null;}),Promise['resolve'](null);else{const _0x3ad000=await this['pgClient']['query'](_0x3b2193,_0x482ef8);return _0x3ad000['rows']['length']?parseFloat(_0x3ad000['rows'][0x0]['score']):null;}}['_zscore'](_0x2f0c2c,_0x36c44c){const _0x5cde90=this['tableForKey'](_0x2f0c2c,'sorted_set'),_0x952d6c='\x0a\x20\x20\x20\x20\x20\x20SELECT\x20score\x0a\x20\x20\x20\x20\x20\x20FROM\x20'+_0x5cde90+'\x0a\x20\x20\x20\x20\x20\x20WHERE\x20key\x20=\x20$1\x20AND\x20member\x20=\x20$2\x0a\x20\x20\x20\x20\x20\x20\x20\x20AND\x20(expiry\x20IS\x20NULL\x20OR\x20expiry\x20>\x20NOW())\x0a\x20\x20\x20\x20\x20\x20LIMIT\x201\x0a\x20\x20\x20\x20',_0x8a5e99=[_0x2f0c2c,_0x36c44c];return{'sql':_0x952d6c,'params':_0x8a5e99};}async['zrangebyscore'](_0x50d314,_0x24a090,_0x15bb40,_0x217ce9){const {sql:_0x52d485,params:_0x7de765}=this['_zrangebyscore'](_0x50d314,_0x24a090,_0x15bb40);if(_0x217ce9)return _0x217ce9['addCommand'](_0x52d485,_0x7de765,'array',_0x28106f=>_0x28106f['map'](_0x121c71=>_0x121c71['member'])),Promise['resolve']([]);else{const _0x51c293=await this['pgClient']['query'](_0x52d485,_0x7de765);return _0x51c293['rows']['map'](_0x349d0c=>_0x349d0c['member']);}}['_zrangebyscore'](_0x4cad11,_0x57dda3,_0x16928e){const _0x363878=this['tableForKey'](_0x4cad11,'sorted_set'),_0x34bb01='\x0a\x20\x20\x20\x20\x20\x20SELECT\x20member\x20FROM\x20'+_0x363878+'\x0a\x20\x20\x20\x20\x20\x20WHERE\x20key\x20=\x20$1\x20AND\x20score\x20BETWEEN\x20$2\x20AND\x20$3\x20AND\x20(expiry\x20IS\x20NULL\x20OR\x20expiry\x20>\x20NOW())\x0a\x20\x20\x20\x20\x20\x20ORDER\x20BY\x20score\x20ASC,\x20member\x20ASC\x0a\x20\x20\x20\x20',_0x40039b=[_0x4cad11,_0x57dda3,_0x16928e];return{'sql':_0x34bb01,'params':_0x40039b};}async['zrangebyscore_withscores'](_0x263a6b,_0xb330ff,_0x35c65e,_0x1b1815){const {sql:_0x6b753c,params:_0x54e1af}=this['_zrangebyscore_withscores'](_0x263a6b,_0xb330ff,_0x35c65e);if(_0x1b1815)return _0x1b1815['addCommand'](_0x6b753c,_0x54e1af,'array',_0x58360c=>_0x58360c['map'](_0x1f5f76=>({'member':_0x1f5f76['member'],'score':_0x1f5f76['score']}))),Promise['resolve']([]);else{const _0x5ce665=await this['pgClient']['query'](_0x6b753c,_0x54e1af);return _0x5ce665['rows']['map'](_0x3e8e1e=>({'member':_0x3e8e1e['member'],'score':_0x3e8e1e['score']}));}}['_zrangebyscore_withscores'](_0x833328,_0x4fa823,_0x3c823f){const _0x21b0d8=this['tableForKey'](_0x833328,'sorted_set'),_0x154df4='\x0a\x20\x20\x20\x20\x20\x20SELECT\x20member,\x20score\x20FROM\x20'+_0x21b0d8+'\x0a\x20\x20\x20\x20\x20\x20WHERE\x20key\x20=\x20$1\x20AND\x20score\x20BETWEEN\x20$2\x20AND\x20$3\x20AND\x20(expiry\x20IS\x20NULL\x20OR\x20expiry\x20>\x20NOW())\x0a\x20\x20\x20\x20\x20\x20ORDER\x20BY\x20score\x20ASC,\x20member\x20ASC\x0a\x20\x20\x20\x20',_0x2e35ad=[_0x833328,_0x4fa823,_0x3c823f];return{'sql':_0x154df4,'params':_0x2e35ad};}async['zrem'](_0x31e29f,_0xac0195,_0x46b8bd){const {sql:_0x427418,params:_0x2836f2}=this['_zrem'](_0x31e29f,_0xac0195);if(_0x46b8bd)return _0x46b8bd['addCommand'](_0x427418,_0x2836f2,'number',_0x40a1d8=>_0x40a1d8[0x0]?.['count']||0x0),Promise['resolve'](0x0);else{const _0x297d71=await this['pgClient']['query'](_0x427418,_0x2836f2);return Number(_0x297d71['rows'][0x0]?.['count']||0x0);}}['_zrem'](_0xda5bc9,_0x514b2c){const _0x3e146a=this['tableForKey'](_0xda5bc9,'sorted_set'),_0x14e4ac='\x0a\x20\x20\x20\x20\x20\x20WITH\x20deleted\x20AS\x20(\x0a\x20\x20\x20\x20\x20\x20\x20\x20DELETE\x20FROM\x20'+_0x3e146a+'\x0a\x20\x20\x20\x20\x20\x20\x20\x20WHERE\x20key\x20=\x20$1\x20AND\x20member\x20=\x20$2\x0a\x20\x20\x20\x20\x20\x20\x20\x20RETURNING\x201\x0a\x20\x20\x20\x20\x20\x20)\x0a\x20\x20\x20\x20\x20\x20SELECT\x20COUNT(*)\x20as\x20count\x20FROM\x20deleted\x0a\x20\x20\x20\x20',_0x7b835d=[_0xda5bc9,_0x514b2c];return{'sql':_0x14e4ac,'params':_0x7b835d};}async['zrank'](_0xfb38a,_0x98cfb9,_0x5caf86){const {sql:_0x485fb9,params:_0x454bbe}=this['_zrank'](_0xfb38a,_0x98cfb9);if(_0x5caf86)return _0x5caf86['addCommand'](_0x485fb9,_0x454bbe,'number',_0x487a16=>_0x487a16[0x0]?.['rank']!==undefined?parseInt(_0x487a16[0x0]['rank'],0xa)-0x1:null),Promise['resolve'](null);else{const _0x3f5e77=await this['pgClient']['query'](_0x485fb9,_0x454bbe);return _0x3f5e77['rows'][0x0]?.['rank']?parseInt(_0x3f5e77['rows'][0x0]['rank'],0xa)>0x0?parseInt(_0x3f5e77['rows'][0x0]['rank'],0xa)-0x1:null:null;}}['_zrank'](_0x166e75,_0x1a30aa){const _0x2f094e=this['tableForKey'](_0x166e75,'sorted_set'),_0x17152a='\x0a\x20\x20\x20\x20\x20\x20WITH\x20member_score\x20AS\x20(\x0a\x20\x20\x20\x20\x20\x20\x20\x20SELECT\x20score\x20FROM\x20'+_0x2f094e+'\x0a\x20\x20\x20\x20\x20\x20\x20\x20WHERE\x20key\x20=\x20$1\x20AND\x20member\x20=\x20$2\x20AND\x20(expiry\x20IS\x20NULL\x20OR\x20expiry\x20>\x20NOW())\x0a\x20\x20\x20\x20\x20\x20)\x0a\x20\x20\x20\x20\x20\x20SELECT\x20COUNT(*)\x20AS\x20rank\x20FROM\x20'+_0x2f094e+'\x20ms,\x20member_score\x0a\x20\x20\x20\x20\x20\x20WHERE\x20ms.key\x20=\x20$1\x20AND\x20(expiry\x20IS\x20NULL\x20OR\x20expiry\x20>\x20NOW())\x0a\x20\x20\x20\x20\x20\x20AND\x20(ms.score\x20<\x20member_score.score\x20OR\x20(ms.score\x20=\x20member_score.score\x20AND\x20ms.member\x20<\x20$2))\x0a\x20\x20\x20\x20',_0x3aad39=[_0x166e75,_0x1a30aa];return{'sql':_0x17152a,'params':_0x3aad39};}async['scan'](_0x4c6529,_0xa3f861=0xa,_0x1bd837,_0x1c9978){const {sql:_0x1fced0,params:_0x2b7825}=this['_scan'](_0x4c6529,_0xa3f861,_0x1bd837);if(_0x1c9978)return _0x1c9978['addCommand'](_0x1fced0,_0x2b7825,'object',_0x9aac23=>{const _0x304c36=_0x9aac23['map'](_0x228675=>_0x228675['key']),_0x17a401=_0x4c6529+_0x9aac23['length'];return{'cursor':_0x17a401,'keys':_0x304c36};}),Promise['resolve']({'cursor':0x0,'keys':[]});else{const _0x3944f7=await this['pgClient']['query'](_0x1fced0,_0x2b7825),_0x8996d6=_0x3944f7['rows']['map'](_0x522d8c=>_0x522d8c['key']),_0x33d473=_0x4c6529+_0x3944f7['rowCount'];return{'cursor':_0x33d473,'keys':_0x8996d6};}}['_scan'](_0x54ed6e,_0x3ed29b,_0x36c2db){const _0x2e824e=this['tableForKey']('_:'+this['appId']+':j:_');let _0x26ddb3='\x0a\x20\x20\x20\x20\x20\x20SELECT\x20key\x20FROM\x20'+_0x2e824e+'\x0a\x20\x20\x20\x20\x20\x20WHERE\x20(expiry\x20IS\x20NULL\x20OR\x20expiry\x20>\x20NOW())\x0a\x20\x20\x20\x20';const _0x40e1be=[];return _0x36c2db&&(_0x26ddb3+='\x20AND\x20key\x20LIKE\x20$1',_0x40e1be['push'](_0x36c2db['replace'](/\*/g,'%'))),_0x26ddb3+='\x0a\x20\x20\x20\x20\x20\x20ORDER\x20BY\x20key\x0a\x20\x20\x20\x20\x20\x20OFFSET\x20$'+(_0x40e1be['length']+0x1)+'\x20LIMIT\x20$'+(_0x40e1be['length']+0x2)+'\x0a\x20\x20\x20\x20',_0x40e1be['push'](_0x54ed6e['toString']()),_0x40e1be['push'](_0x3ed29b['toString']()),{'sql':_0x26ddb3,'params':_0x40e1be};}async['rename'](_0x22ee8b,_0x2cdeed,_0x56e823){const {sql:_0x3726f5,params:_0x39f549}=this['_rename'](_0x22ee8b,_0x2cdeed);if(_0x56e823)return _0x56e823['addCommand'](_0x3726f5,_0x39f549,'void'),Promise['resolve']();else{const _0x15e641=this['pgClient'];try{await _0x15e641['query']('BEGIN'),await _0x15e641['query'](_0x3726f5,_0x39f549),await _0x15e641['query']('COMMIT');}catch(_0x32b883){await _0x15e641['query']('ROLLBACK');throw _0x32b883;}}}['_rename'](_0x263647,_0x3e5233){const _0x4baaf9=this['tableForKey'](_0x263647,'list'),_0x33292e='\x0a\x20\x20\x20\x20\x20\x20UPDATE\x20'+_0x4baaf9+'\x20SET\x20key\x20=\x20$2\x20WHERE\x20key\x20=\x20$1;\x0a\x20\x20\x20\x20',_0x2a61c1=[_0x263647,_0x3e5233];return{'sql':_0x33292e,'params':_0x2a61c1};}async['exists'](_0x3c34ae){const {sql:_0x4bcfd5,params:_0x18ab65}=this['_exists'](_0x3c34ae),_0x4e4956=await this['pgClient']['query'](_0x4bcfd5,_0x18ab65);return _0x4e4956['rows']['length']?_0x4e4956['rows'][0x0]['table_name']:0x0;}['_exists'](_0x3b5e50){const _0x8a1e99=this['tableForKey'](_0x3b5e50),_0x2e7ef1='\x0a\x20\x20\x20\x20\x20\x20SELECT\x20FROM\x20'+_0x8a1e99+'\x0a\x20\x20\x20\x20\x20\x20WHERE\x20key\x20=\x20$1\x0a\x20\x20\x20\x20\x20\x20\x20\x20AND\x20(expiry\x20IS\x20NULL\x20OR\x20expiry\x20>\x20NOW())\x0a\x20\x20\x20\x20\x20\x20LIMIT\x201;\x0a\x20\x20\x20\x20',_0x22f422=[_0x3b5e50];return{'sql':_0x2e7ef1,'params':_0x22f422};}}exports['KVSQL']=KVSQL;
1
+ 'use strict';(function(_0x3d5116,_0x4a2c37){const _0x1af9bd=_0x488c,_0x1850b0=_0x3d5116();while(!![]){try{const _0x190429=parseInt(_0x1af9bd(0x150))/0x1+-parseInt(_0x1af9bd(0x14a))/0x2*(-parseInt(_0x1af9bd(0x14b))/0x3)+-parseInt(_0x1af9bd(0x148))/0x4*(parseInt(_0x1af9bd(0x149))/0x5)+parseInt(_0x1af9bd(0x14c))/0x6+-parseInt(_0x1af9bd(0x151))/0x7+-parseInt(_0x1af9bd(0x14f))/0x8+-parseInt(_0x1af9bd(0x14e))/0x9*(-parseInt(_0x1af9bd(0x14d))/0xa);if(_0x190429===_0x4a2c37)break;else _0x1850b0['push'](_0x1850b0['shift']());}catch(_0xdeaf4e){_0x1850b0['push'](_0x1850b0['shift']());}}}(_0x266e,0xbcb00));Object['defineProperty'](exports,'__esModule',{'value':!![]}),exports['KVSQL']=void 0x0;const key_1=require('../../../../modules/key'),kvtransaction_1=require('./kvtransaction'),string_1=require('./kvtypes/string'),hash_1=require('./kvtypes/hash'),list_1=require('./kvtypes/list'),zset_1=require('./kvtypes/zset');class KVSQL{constructor(_0x431aa8,_0x238a29,_0x4c0e6c){this['set']=(..._0x3e28f9)=>this['string']['set'](..._0x3e28f9),this['_set']=(..._0xd82f8b)=>this['string']['_set'](..._0xd82f8b),this['get']=(..._0x283cc2)=>this['string']['get'](..._0x283cc2),this['_get']=(..._0x2bee06)=>this['string']['_get'](..._0x2bee06),this['del']=(..._0x2dd95d)=>this['string']['del'](..._0x2dd95d),this['_del']=(..._0x112852)=>this['string']['_del'](..._0x112852),this['setnx']=(..._0x1f5d3c)=>this['string']['setnx'](..._0x1f5d3c),this['setnxex']=(..._0x4c02d2)=>this['string']['setnxex'](..._0x4c02d2),this['hset']=(..._0x1efbb4)=>this['hash']['hset'](..._0x1efbb4),this['_hset']=(..._0x1014ba)=>this['hash']['_hset'](..._0x1014ba),this['hsetnx']=(..._0x10a8ef)=>this['hash']['hsetnx'](..._0x10a8ef),this['hget']=(..._0x1a57c7)=>this['hash']['hget'](..._0x1a57c7),this['_hget']=(..._0x542056)=>this['hash']['_hget'](..._0x542056),this['hdel']=(..._0x57106a)=>this['hash']['hdel'](..._0x57106a),this['_hdel']=(..._0x21fc4f)=>this['hash']['_hdel'](..._0x21fc4f),this['hmget']=(..._0x35dcc0)=>this['hash']['hmget'](..._0x35dcc0),this['_hmget']=(..._0x1fc2f6)=>this['hash']['_hmget'](..._0x1fc2f6),this['hgetall']=(..._0x1b7ecd)=>this['hash']['hgetall'](..._0x1b7ecd),this['hincrbyfloat']=(..._0x4b0a3d)=>this['hash']['hincrbyfloat'](..._0x4b0a3d),this['_hincrbyfloat']=(..._0x414ef0)=>this['hash']['_hincrbyfloat'](..._0x414ef0),this['hscan']=(..._0x551d11)=>this['hash']['hscan'](..._0x551d11),this['_hscan']=(..._0x1eac14)=>this['hash']['_hscan'](..._0x1eac14),this['expire']=(..._0x213661)=>this['hash']['expire'](..._0x213661),this['_expire']=(..._0x334542)=>this['hash']['_expire'](..._0x334542),this['scan']=(..._0x10a1ee)=>this['hash']['scan'](..._0x10a1ee),this['_scan']=(..._0x222ccc)=>this['hash']['_scan'](..._0x222ccc),this['lrange']=(..._0x454422)=>this['list']['lrange'](..._0x454422),this['_lrange']=(..._0x1a9702)=>this['list']['_lrange'](..._0x1a9702),this['rpush']=(..._0x3e5831)=>this['list']['rpush'](..._0x3e5831),this['_rpush']=(..._0x1cd95e)=>this['list']['_rpush'](..._0x1cd95e),this['lpush']=(..._0x11a0f6)=>this['list']['lpush'](..._0x11a0f6),this['_lpush']=(..._0x1f1c0d)=>this['list']['_lpush'](..._0x1f1c0d),this['lpop']=(..._0x3e68d0)=>this['list']['lpop'](..._0x3e68d0),this['_lpop']=(..._0x386401)=>this['list']['_lpop'](..._0x386401),this['lmove']=(..._0x2300c5)=>this['list']['lmove'](..._0x2300c5),this['_lmove']=(..._0x14215d)=>this['list']['_lmove'](..._0x14215d),this['rename']=(..._0x5cfdbb)=>this['list']['rename'](..._0x5cfdbb),this['_rename']=(..._0x40a23d)=>this['list']['_rename'](..._0x40a23d),this['zadd']=(..._0x3ad958)=>this['zset']['zadd'](..._0x3ad958),this['_zadd']=(..._0x1a08c4)=>this['zset']['_zadd'](..._0x1a08c4),this['zrange']=(..._0x271fed)=>this['zset']['zrange'](..._0x271fed),this['_zrange']=(..._0x542d96)=>this['zset']['_zrange'](..._0x542d96),this['zrangebyscore']=(..._0x66eeb)=>this['zset']['zrangebyscore'](..._0x66eeb),this['_zrangebyscore']=(..._0x2affa8)=>this['zset']['_zrangebyscore'](..._0x2affa8),this['zrangebyscore_withscores']=(..._0x4095eb)=>this['zset']['zrangebyscore_withscores'](..._0x4095eb),this['_zrangebyscore_withscores']=(..._0x2fd186)=>this['zset']['_zrangebyscore_withscores'](..._0x2fd186),this['zrem']=(..._0x14c658)=>this['zset']['zrem'](..._0x14c658),this['_zrem']=(..._0x26d89f)=>this['zset']['_zrem'](..._0x26d89f),this['zrank']=(..._0x46fc4f)=>this['zset']['zrank'](..._0x46fc4f),this['_zrank']=(..._0x1773c9)=>this['zset']['_zrank'](..._0x1773c9),this['zscore']=(..._0x239ab7)=>this['zset']['zscore'](..._0x239ab7),this['_zscore']=(..._0x45c019)=>this['zset']['_zscore'](..._0x45c019),this['pgClient']=_0x431aa8,this['namespace']=_0x238a29,this['appId']=_0x4c0e6c,this['hash']=(0x0,hash_1['hashModule'])(this),this['list']=(0x0,list_1['listModule'])(this),this['zset']=(0x0,zset_1['zsetModule'])(this),this['string']=(0x0,string_1['stringModule'])(this);}['isStatusOnly'](_0x4c845a){return _0x4c845a['length']===0x1&&_0x4c845a[0x0]===':';}['appendExpiryClause'](_0x83507f,_0x241a72){return'\x0a\x20\x20\x20\x20\x20\x20'+_0x83507f+'\x0a\x20\x20\x20\x20\x20\x20AND\x20('+_0x241a72+'.expiry\x20IS\x20NULL\x20OR\x20'+_0x241a72+'.expiry\x20>\x20NOW())\x0a\x20\x20\x20\x20';}['appendJobExpiryClause'](_0x5223fd,_0x15ed1a){return'\x0a\x20\x20\x20\x20\x20\x20'+_0x5223fd+'\x0a\x20\x20\x20\x20\x20\x20AND\x20('+_0x15ed1a+'.expired_at\x20IS\x20NULL\x20OR\x20'+_0x15ed1a+'.expired_at\x20>\x20NOW())\x0a\x20\x20\x20\x20';}['getMulti'](){return new kvtransaction_1['KVTransaction'](this);}['transact'](){return new kvtransaction_1['KVTransaction'](this);}['exec'](..._0x2f53bb){return Promise['resolve']([]);}['mintKey'](_0x30a4ff,_0x63c553){return'';}['tableForKey'](_0x293cbd,_0x2e2c36){if(_0x293cbd===key_1['HMNS'])return'hotmesh_connections';const [_0x304bfa,_0x5ea52a,_0x360a04,..._0x49f626]=_0x293cbd['split'](':');if(_0x5ea52a==='a')return'hotmesh_applications';const _0x51dde9=_0x49f626?.['length']?_0x49f626['join'](':'):'',_0x3d254e=key_1['KeyService']['resolveEntityType'](_0x360a04,_0x51dde9);if(this['safeName'](this['appId'])!==this['safeName'](_0x5ea52a))throw new Error('App\x20ID\x20mismatch:\x20'+this['appId']+'\x20!==\x20'+_0x5ea52a);if(_0x3d254e==='stats'){if(_0x2e2c36==='sorted_set')return'hotmesh_'+this['safeName'](_0x5ea52a)+'_stats_ordered';else{if(_0x2e2c36==='list')return'hotmesh_'+this['safeName'](_0x5ea52a)+'_stats_indexed';else{if(_0x2e2c36==='hash')return'hotmesh_'+this['safeName'](_0x5ea52a)+'_stats_counted';else throw new Error('Unknown\x20stats\x20type\x20['+_0x2e2c36+']\x20for\x20key\x20['+_0x293cbd+']');}}}if(_0x3d254e==='unknown_entity')throw new Error('Unknown\x20entity\x20type\x20abbreviation:\x20'+_0x360a04);else return _0x3d254e==='applications'?'hotmesh_applications':'hotmesh_'+this['safeName'](_0x5ea52a)+'_'+_0x3d254e;}['safeName'](_0x22a60e,_0x5b43c7=''){if(!_0x22a60e)return'connections';let _0x1f7a7b=_0x22a60e['trim']()['toLowerCase']();return _0x1f7a7b=_0x1f7a7b['replace'](/[^a-z0-9]+/g,'_'),_0x5b43c7&&(_0x1f7a7b=_0x5b43c7+'_'+_0x1f7a7b),_0x1f7a7b['length']>0x3f&&(_0x1f7a7b=_0x1f7a7b['slice'](0x0,0x3f)),_0x1f7a7b=_0x1f7a7b['replace'](/_+$/g,''),!_0x1f7a7b&&(_0x1f7a7b='connections'),_0x1f7a7b;}async['exists'](_0x4f67f7){const {sql:_0x5ed401,params:_0x2c2ec6}=this['_exists'](_0x4f67f7),_0x4bb624=await this['pgClient']['query'](_0x5ed401,_0x2c2ec6);return _0x4bb624['rows']['length']?_0x4bb624['rows'][0x0]['table_name']:0x0;}['_exists'](_0x2c6e6d){const _0x33f24c=this['tableForKey'](_0x2c6e6d),_0x31e052=_0x33f24c['endsWith']('_jobs');let _0x3df4e6;_0x31e052?_0x3df4e6='\x0a\x20\x20\x20\x20\x20\x20\x20\x20SELECT\x20FROM\x20'+_0x33f24c+'\x0a\x20\x20\x20\x20\x20\x20\x20\x20WHERE\x20id\x20=\x20$1\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20AND\x20(expired_at\x20IS\x20NULL\x20OR\x20expired_at\x20>\x20NOW())\x0a\x20\x20\x20\x20\x20\x20\x20\x20LIMIT\x201;\x0a\x20\x20\x20\x20\x20\x20':_0x3df4e6='\x0a\x20\x20\x20\x20\x20\x20\x20\x20SELECT\x20FROM\x20'+_0x33f24c+'\x0a\x20\x20\x20\x20\x20\x20\x20\x20WHERE\x20key\x20=\x20$1\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20AND\x20(expiry\x20IS\x20NULL\x20OR\x20expiry\x20>\x20NOW())\x0a\x20\x20\x20\x20\x20\x20\x20\x20LIMIT\x201;\x0a\x20\x20\x20\x20\x20\x20';const _0x374937=[_0x2c6e6d];return{'sql':_0x3df4e6,'params':_0x374937};}}exports['KVSQL']=KVSQL;function _0x488c(_0x3ad066,_0xd5f39a){const _0x266e6d=_0x266e();return _0x488c=function(_0x488ca3,_0x364fd3){_0x488ca3=_0x488ca3-0x148;let _0x38e19b=_0x266e6d[_0x488ca3];return _0x38e19b;},_0x488c(_0x3ad066,_0xd5f39a);}function _0x266e(){const _0x1cb6ed=['208484QOfIbI','115AVFmoO','2SRxNtN','4019781wKSTtR','3347298XutIHP','90dpAXsz','910719XpHewx','6960920kLhLoe','635249TrXcTt','4214112jJLZoe'];_0x266e=function(){return _0x1cb6ed;};return _0x266e();}
@@ -0,0 +1,15 @@
1
+ import { PostgresClientType } from '../../../../types/postgres';
2
+ import type { PostgresStoreService } from './postgres';
3
+ export declare const KVTables: (context: PostgresStoreService) => {
4
+ deploy(appName: string): Promise<void>;
5
+ getAdvisoryLockId(appName: string): number;
6
+ hashStringToInt(str: string): number;
7
+ waitForTablesCreation(client: PostgresClientType, lockId: number, appName: string): Promise<void>;
8
+ checkIfTablesExist(client: PostgresClientType, appName: string): Promise<boolean>;
9
+ createTables(client: PostgresClientType, appName: string): Promise<void>;
10
+ getTableNames(appName: string): string[];
11
+ getTableDefinitions(appName: string): Array<{
12
+ name: string;
13
+ type: string;
14
+ }>;
15
+ };
@@ -0,0 +1 @@
1
+ 'use strict';function _0x447b(_0x4f6d09,_0x56123c){const _0x4477d9=_0x4477();return _0x447b=function(_0x447b88,_0x230eca){_0x447b88=_0x447b88-0x7a;let _0x2220ae=_0x4477d9[_0x447b88];return _0x2220ae;},_0x447b(_0x4f6d09,_0x56123c);}(function(_0x12637c,_0x4624c9){const _0x290787=_0x447b,_0xea1133=_0x12637c();while(!![]){try{const _0x2e7ecb=parseInt(_0x290787(0x81))/0x1*(-parseInt(_0x290787(0x7f))/0x2)+parseInt(_0x290787(0x82))/0x3+-parseInt(_0x290787(0x7b))/0x4+parseInt(_0x290787(0x85))/0x5*(-parseInt(_0x290787(0x7a))/0x6)+-parseInt(_0x290787(0x7d))/0x7*(-parseInt(_0x290787(0x83))/0x8)+-parseInt(_0x290787(0x7c))/0x9*(parseInt(_0x290787(0x84))/0xa)+parseInt(_0x290787(0x7e))/0xb*(parseInt(_0x290787(0x80))/0xc);if(_0x2e7ecb===_0x4624c9)break;else _0xea1133['push'](_0xea1133['shift']());}catch(_0x2ab403){_0xea1133['push'](_0xea1133['shift']());}}}(_0x4477,0x25047));function _0x4477(){const _0x55417b=['110JgAHSD','866jFGsQo','612516wYTlEj','469THlynV','813291tLkKJs','48OGFFFj','20AHYZuJ','5ZKPEVM','812982SocfuJ','1069544dYuKYa','807723wHhgpd','181475WCbmDK'];_0x4477=function(){return _0x55417b;};return _0x4477();}Object['defineProperty'](exports,'__esModule',{'value':!![]}),exports['KVTables']=void 0x0;const utils_1=require('../../../../modules/utils'),KVTables=_0x2770e4=>({async 'deploy'(_0xa3d094){const _0xe927c1=_0x2770e4['pgClient'];try{const _0x4f38d6=this['getAdvisoryLockId'](_0xa3d094),_0xeac438=await _0xe927c1['query']('SELECT\x20pg_try_advisory_lock($1)\x20AS\x20locked',[_0x4f38d6]);if(_0xeac438['rows'][0x0]['locked']){await _0xe927c1['query']('BEGIN');const _0x16ecbf=await this['checkIfTablesExist'](_0xe927c1,_0xa3d094);!_0x16ecbf&&await this['createTables'](_0xe927c1,_0xa3d094),await _0xe927c1['query']('COMMIT'),await _0xe927c1['query']('SELECT\x20pg_advisory_unlock($1)',[_0x4f38d6]);}else await this['waitForTablesCreation'](_0xe927c1,_0x4f38d6,_0xa3d094);}catch(_0x21138f){_0x2770e4['logger']['error']('Error\x20deploying\x20tables',{'error':_0x21138f});throw _0x21138f;}},'getAdvisoryLockId'(_0x1a871e){return this['hashStringToInt'](_0x1a871e);},'hashStringToInt'(_0x4c12eb){let _0x2a1e8a=0x0;for(let _0x45e776=0x0;_0x45e776<_0x4c12eb['length'];_0x45e776++){_0x2a1e8a=(_0x2a1e8a<<0x5)-_0x2a1e8a+_0x4c12eb['charCodeAt'](_0x45e776),_0x2a1e8a|=0x0;}return Math['abs'](_0x2a1e8a);},async 'waitForTablesCreation'(_0x235497,_0x584d06,_0x15fe52){let _0x3cb49b=0x0;const _0xdea72a=0x14;while(_0x3cb49b<_0xdea72a){await(0x0,utils_1['sleepFor'])(0x96);const _0x48ea31=await _0x235497['query']('SELECT\x20NOT\x20EXISTS\x20(SELECT\x201\x20FROM\x20pg_locks\x20WHERE\x20locktype\x20=\x20\x27advisory\x27\x20AND\x20objid\x20=\x20$1::bigint)\x20AS\x20unlocked',[_0x584d06]);if(_0x48ea31['rows'][0x0]['unlocked']){const _0x5b591d=await this['checkIfTablesExist'](_0x235497,_0x15fe52);if(_0x5b591d)return;}_0x3cb49b++;}throw new Error('Timeout\x20waiting\x20for\x20table\x20creation');},async 'checkIfTablesExist'(_0x3910e4,_0x3ca749){const _0xaf0a59=this['getTableNames'](_0x3ca749),_0x1d5596=_0xaf0a59['map'](_0x391106=>_0x3910e4['query']('SELECT\x20to_regclass(\x27public.'+_0x391106+'\x27)\x20AS\x20table')),_0x42df85=await Promise['all'](_0x1d5596);return _0x42df85['every'](_0x2e7a4e=>_0x2e7a4e['rows'][0x0]['table']!==null);},async 'createTables'(_0x133696,_0x50c5fd){await _0x133696['query']('BEGIN');const _0x3773f1=this['getTableDefinitions'](_0x2770e4['storeClient']['safeName'](_0x50c5fd));for(const _0x34aff2 of _0x3773f1){switch(_0x34aff2['type']){case'string':await _0x133696['query']('\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20CREATE\x20TABLE\x20IF\x20NOT\x20EXISTS\x20'+_0x34aff2['name']+'\x20(\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20key\x20TEXT\x20PRIMARY\x20KEY,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20value\x20TEXT,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20expiry\x20TIMESTAMP\x20WITH\x20TIME\x20ZONE\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20');break;case'hash':await _0x133696['query']('\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20CREATE\x20TABLE\x20IF\x20NOT\x20EXISTS\x20'+_0x34aff2['name']+'\x20(\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20key\x20TEXT\x20NOT\x20NULL,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20field\x20TEXT\x20NOT\x20NULL,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20value\x20TEXT,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20expiry\x20TIMESTAMP\x20WITH\x20TIME\x20ZONE,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20PRIMARY\x20KEY\x20(key,\x20field)\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20');break;case'jobhash':await _0x133696['query']('\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20DO\x20$$\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20BEGIN\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20IF\x20NOT\x20EXISTS\x20(SELECT\x201\x20FROM\x20pg_type\x20WHERE\x20typname\x20=\x20\x27type_enum\x27)\x20THEN\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20CREATE\x20TYPE\x20type_enum\x20AS\x20ENUM\x20(\x27jmark\x27,\x20\x27hmark\x27,\x20\x27status\x27,\x20\x27jdata\x27,\x20\x27adata\x27,\x20\x27udata\x27,\x20\x27other\x27);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20END\x20IF;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20END$$;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'),await _0x133696['query']('\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20CREATE\x20TABLE\x20IF\x20NOT\x20EXISTS\x20'+_0x34aff2['name']+'\x20(\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20id\x20UUID\x20DEFAULT\x20gen_random_uuid(),\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20key\x20TEXT\x20NOT\x20NULL,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20entity\x20TEXT,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20status\x20INTEGER\x20NOT\x20NULL,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20created_at\x20TIMESTAMP\x20WITH\x20TIME\x20ZONE\x20DEFAULT\x20NOW(),\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20updated_at\x20TIMESTAMP\x20WITH\x20TIME\x20ZONE\x20DEFAULT\x20NOW(),\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20expired_at\x20TIMESTAMP\x20WITH\x20TIME\x20ZONE,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20is_live\x20BOOLEAN\x20DEFAULT\x20TRUE,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20PRIMARY\x20KEY\x20(id)\x20\x20--\x20Primary\x20key\x20on\x20id\x20which\x20is\x20also\x20our\x20partitioning\x20key\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20)\x20PARTITION\x20BY\x20HASH\x20(id);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'),await _0x133696['query']('\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20DO\x20$$\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20BEGIN\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20FOR\x20i\x20IN\x200..7\x20LOOP\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20EXECUTE\x20format(\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x27CREATE\x20TABLE\x20IF\x20NOT\x20EXISTS\x20'+_0x34aff2['name']+'_part_%s\x20PARTITION\x20OF\x20'+_0x34aff2['name']+'\x20\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20FOR\x20VALUES\x20WITH\x20(modulus\x208,\x20remainder\x20%s)\x27,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20i,\x20i\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20END\x20LOOP;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20END$$;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'),await _0x133696['query']('\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20CREATE\x20INDEX\x20IF\x20NOT\x20EXISTS\x20idx_'+_0x34aff2['name']+'_key_expired_at\x20\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20ON\x20'+_0x34aff2['name']+'\x20(key,\x20expired_at)\x20INCLUDE\x20(is_live);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'),await _0x133696['query']('\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20CREATE\x20INDEX\x20IF\x20NOT\x20EXISTS\x20idx_'+_0x34aff2['name']+'_entity_status\x20\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20ON\x20'+_0x34aff2['name']+'\x20(entity,\x20status);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'),await _0x133696['query']('\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20CREATE\x20INDEX\x20IF\x20NOT\x20EXISTS\x20idx_'+_0x34aff2['name']+'_expired_at\x20\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20ON\x20'+_0x34aff2['name']+'\x20(expired_at);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'),await _0x133696['query']('\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20CREATE\x20OR\x20REPLACE\x20FUNCTION\x20update_is_live()\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20RETURNS\x20TRIGGER\x20AS\x20$$\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20BEGIN\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20NEW.is_live\x20:=\x20NEW.expired_at\x20IS\x20NULL\x20OR\x20NEW.expired_at\x20>\x20NOW();\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20RETURN\x20NEW;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20END;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20$$\x20LANGUAGE\x20plpgsql;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'),await _0x133696['query']('\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20CREATE\x20TRIGGER\x20trg_update_is_live\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20BEFORE\x20INSERT\x20OR\x20UPDATE\x20ON\x20'+_0x34aff2['name']+'\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20FOR\x20EACH\x20ROW\x20EXECUTE\x20PROCEDURE\x20update_is_live();\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'),await _0x133696['query']('\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20CREATE\x20OR\x20REPLACE\x20FUNCTION\x20enforce_live_job_uniqueness()\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20RETURNS\x20TRIGGER\x20AS\x20$$\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20BEGIN\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20IF\x20(NEW.expired_at\x20IS\x20NULL\x20OR\x20NEW.expired_at\x20>\x20NOW())\x20THEN\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20PERFORM\x20pg_advisory_xact_lock(hashtextextended(NEW.key,\x200));\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20IF\x20EXISTS\x20(\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20SELECT\x201\x20FROM\x20'+_0x34aff2['name']+'\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20WHERE\x20key\x20=\x20NEW.key\x20\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20AND\x20(expired_at\x20IS\x20NULL\x20OR\x20expired_at\x20>\x20NOW())\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20AND\x20id\x20<>\x20NEW.id\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20)\x20THEN\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20RAISE\x20EXCEPTION\x20\x27A\x20live\x20job\x20with\x20key\x20%\x20already\x20exists.\x27,\x20NEW.key;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20END\x20IF;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20END\x20IF;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20RETURN\x20NEW;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20END;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20$$\x20LANGUAGE\x20plpgsql;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'),await _0x133696['query']('\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20CREATE\x20TRIGGER\x20trg_enforce_live_job_uniqueness\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20BEFORE\x20INSERT\x20OR\x20UPDATE\x20ON\x20'+_0x34aff2['name']+'\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20FOR\x20EACH\x20ROW\x20EXECUTE\x20PROCEDURE\x20enforce_live_job_uniqueness();\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'),await _0x133696['query']('\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20CREATE\x20TABLE\x20IF\x20NOT\x20EXISTS\x20'+_0x34aff2['name']+'_attributes\x20(\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20job_id\x20UUID\x20NOT\x20NULL,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20field\x20TEXT\x20NOT\x20NULL,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20value\x20TEXT,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20type\x20type_enum\x20NOT\x20NULL,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20PRIMARY\x20KEY\x20(job_id,\x20field),\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20FOREIGN\x20KEY\x20(job_id)\x20REFERENCES\x20'+_0x34aff2['name']+'\x20(id)\x20ON\x20DELETE\x20CASCADE\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20)\x20PARTITION\x20BY\x20HASH\x20(job_id);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'),await _0x133696['query']('\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20DO\x20$$\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20BEGIN\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20FOR\x20i\x20IN\x200..7\x20LOOP\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20EXECUTE\x20format(\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x27CREATE\x20TABLE\x20IF\x20NOT\x20EXISTS\x20'+_0x34aff2['name']+'_attributes_part_%s\x20PARTITION\x20OF\x20'+_0x34aff2['name']+'_attributes\x20\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20FOR\x20VALUES\x20WITH\x20(modulus\x208,\x20remainder\x20%s)\x27,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20i,\x20i\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20END\x20LOOP;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20END$$;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'),await _0x133696['query']('\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20CREATE\x20INDEX\x20IF\x20NOT\x20EXISTS\x20idx_'+_0x34aff2['name']+'_attributes_type_field\x20\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20ON\x20'+_0x34aff2['name']+'_attributes\x20(type,\x20field);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'),await _0x133696['query']('\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20CREATE\x20INDEX\x20IF\x20NOT\x20EXISTS\x20idx_'+_0x34aff2['name']+'_attributes_field\x20\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20ON\x20'+_0x34aff2['name']+'_attributes\x20(field);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20');break;case'list':await _0x133696['query']('\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20CREATE\x20TABLE\x20IF\x20NOT\x20EXISTS\x20'+_0x34aff2['name']+'\x20(\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20key\x20TEXT\x20NOT\x20NULL,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20index\x20BIGINT\x20NOT\x20NULL,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20value\x20TEXT,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20expiry\x20TIMESTAMP\x20WITH\x20TIME\x20ZONE,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20PRIMARY\x20KEY\x20(key,\x20index)\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'),await _0x133696['query']('\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20CREATE\x20INDEX\x20IF\x20NOT\x20EXISTS\x20idx_'+_0x34aff2['name']+'_key_expiry\x20\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20ON\x20'+_0x34aff2['name']+'\x20(key,\x20expiry);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20');break;case'sorted_set':await _0x133696['query']('\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20CREATE\x20TABLE\x20IF\x20NOT\x20EXISTS\x20'+_0x34aff2['name']+'\x20(\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20key\x20TEXT\x20NOT\x20NULL,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20member\x20TEXT\x20NOT\x20NULL,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20score\x20DOUBLE\x20PRECISION\x20NOT\x20NULL,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20expiry\x20TIMESTAMP\x20WITH\x20TIME\x20ZONE,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20PRIMARY\x20KEY\x20(key,\x20member)\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'),await _0x133696['query']('\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20CREATE\x20INDEX\x20IF\x20NOT\x20EXISTS\x20idx_'+_0x34aff2['name']+'_key_score_member\x20\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20ON\x20'+_0x34aff2['name']+'\x20(key,\x20score,\x20member);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20');break;default:_0x2770e4['logger']['warn']('Unknown\x20table\x20type\x20for\x20'+_0x34aff2['name']);break;}}await _0x133696['query']('COMMIT');},'getTableNames'(_0x212bf1){const _0x17fad7=[];_0x17fad7['push']('hotmesh_applications','hotmesh_connections');const _0x1e0ba4=['throttles','roles','task_priorities','task_schedules','task_lists','events','jobs','stats_counted','stats_indexed','stats_ordered','versions','signal_patterns','signal_registry','symbols'];return _0x1e0ba4['forEach'](_0x5d4590=>{_0x17fad7['push']('hotmesh_'+_0x2770e4['storeClient']['safeName'](_0x212bf1)+'_'+_0x5d4590);}),_0x17fad7;},'getTableDefinitions'(_0x26a4ed){const _0x5bf95a=[{'name':'hotmesh_applications','type':'hash'},{'name':'hotmesh_connections','type':'hash'},{'name':'hotmesh_'+_0x26a4ed+'_throttles','type':'hash'},{'name':'hotmesh_'+_0x26a4ed+'_roles','type':'string'},{'name':'hotmesh_'+_0x26a4ed+'_task_schedules','type':'sorted_set'},{'name':'hotmesh_'+_0x26a4ed+'_task_priorities','type':'sorted_set'},{'name':'hotmesh_'+_0x26a4ed+'_task_lists','type':'list'},{'name':'hotmesh_'+_0x26a4ed+'_events','type':'hash'},{'name':'hotmesh_'+_0x26a4ed+'_jobs','type':'jobhash'},{'name':'hotmesh_'+_0x26a4ed+'_stats_counted','type':'hash'},{'name':'hotmesh_'+_0x26a4ed+'_stats_ordered','type':'sorted_set'},{'name':'hotmesh_'+_0x26a4ed+'_stats_indexed','type':'list'},{'name':'hotmesh_'+_0x26a4ed+'_versions','type':'hash'},{'name':'hotmesh_'+_0x26a4ed+'_signal_patterns','type':'hash'},{'name':'hotmesh_'+_0x26a4ed+'_symbols','type':'hash'},{'name':'hotmesh_'+_0x26a4ed+'_signal_registry','type':'string'}];return _0x5bf95a;}});exports['KVTables']=KVTables;
@@ -0,0 +1,36 @@
1
+ import { HSetOptions, KVSQLProviderTransaction, SetOptions, ZAddOptions } from '../../../../types/provider';
2
+ import type { KVSQL } from './kvsql';
3
+ export declare class KVTransaction implements KVSQLProviderTransaction {
4
+ private kvsql;
5
+ [key: string]: any;
6
+ private commands;
7
+ constructor(kvsql: KVSQL);
8
+ addCommand(sql: string, params: any[], returnType: string, transform?: (rows: any[]) => any): this;
9
+ set(key: string, value: string, options?: SetOptions): this;
10
+ setnx(key: string, value: string): this;
11
+ setnxex(key: string, value: string, expireSeconds: number): this;
12
+ get(key: string): this;
13
+ del(key: string): this;
14
+ expire(key: string, seconds: number): this;
15
+ hset(key: string, fields: Record<string, string>, options?: HSetOptions): this;
16
+ hget(key: string, field: string): this;
17
+ hdel(key: string, fields: string[]): this;
18
+ hmget(key: string, fields: string[]): this;
19
+ hgetall(key: string): this;
20
+ hincrbyfloat(key: string, field: string, increment: number): this;
21
+ hscan(key: string, cursor: string, count?: number): this;
22
+ lrange(key: string, start: number, end: number): this;
23
+ rpush(key: string, value: string | string[]): this;
24
+ lpush(key: string, value: string | string[]): this;
25
+ lpop(key: string): this;
26
+ lmove(source: string, destination: string, srcPosition: 'LEFT' | 'RIGHT', destPosition: 'LEFT' | 'RIGHT'): this;
27
+ zadd(key: string, score: number, member: string, options?: ZAddOptions): this;
28
+ zrange(key: string, start: number, stop: number): this;
29
+ zrangebyscore(key: string, min: number, max: number): this;
30
+ zrangebyscore_withscores(key: string, min: number, max: number): this;
31
+ zrem(key: string, member: string): this;
32
+ zrank(key: string, member: string): this;
33
+ scan(cursor: number, count?: number): this;
34
+ rename(oldKey: string, newKey: string): this;
35
+ exec(): Promise<any[]>;
36
+ }
@@ -0,0 +1 @@
1
+ 'use strict';(function(_0x5e457e,_0x42fef4){const _0x31cd30=_0x13d4,_0x2e04e8=_0x5e457e();while(!![]){try{const _0x96fcd7=-parseInt(_0x31cd30(0xc8))/0x1*(-parseInt(_0x31cd30(0xcd))/0x2)+parseInt(_0x31cd30(0xc6))/0x3*(parseInt(_0x31cd30(0xcc))/0x4)+parseInt(_0x31cd30(0xc5))/0x5*(parseInt(_0x31cd30(0xcb))/0x6)+parseInt(_0x31cd30(0xc7))/0x7*(-parseInt(_0x31cd30(0xc9))/0x8)+parseInt(_0x31cd30(0xc4))/0x9+parseInt(_0x31cd30(0xc2))/0xa*(-parseInt(_0x31cd30(0xce))/0xb)+-parseInt(_0x31cd30(0xca))/0xc*(-parseInt(_0x31cd30(0xc3))/0xd);if(_0x96fcd7===_0x42fef4)break;else _0x2e04e8['push'](_0x2e04e8['shift']());}catch(_0x1baf3d){_0x2e04e8['push'](_0x2e04e8['shift']());}}}(_0x9dac,0xa2ca0));function _0x9dac(){const _0x159fbd=['538044KuEaww','22ezpOzz','5266190wPmRMx','8092513xhCJFb','9744174oFKpKa','955jwediC','32913aamAxW','3010126btIebt','1xHSqYG','24RXaVEQ','12AKMrKo','11862CtyOTo','240ufQPuO'];_0x9dac=function(){return _0x159fbd;};return _0x9dac();}var __importDefault=this&&this['__importDefault']||function(_0x5799fe){return _0x5799fe&&_0x5799fe['__esModule']?_0x5799fe:{'default':_0x5799fe};};Object['defineProperty'](exports,'__esModule',{'value':!![]}),exports['KVTransaction']=void 0x0;function _0x13d4(_0x5f0193,_0x3a80bc){const _0x9dac08=_0x9dac();return _0x13d4=function(_0x13d4fa,_0x53d1f7){_0x13d4fa=_0x13d4fa-0xc2;let _0x3f645c=_0x9dac08[_0x13d4fa];return _0x3f645c;},_0x13d4(_0x5f0193,_0x3a80bc);}const pg_format_1=__importDefault(require('pg-format'));function formatSqlCommand(_0x5b5f64,_0x5479d6){const _0x5e1a3a=[],_0x311760=_0x5b5f64['replace'](/\$(\d+)/g,(_0x325674,_0x29113c)=>{const _0x3d9101=parseInt(_0x29113c,0xa)-0x1,_0x29f218=_0x5479d6[_0x3d9101];if(_0x29f218===null||_0x29f218===undefined)return'NULL';let _0x13ba69;if(typeof _0x29f218==='number')_0x13ba69='%s';else{if(typeof _0x29f218==='string')_0x13ba69='%L';else typeof _0x29f218==='boolean'?_0x13ba69='%L':_0x13ba69='%L';}return _0x5e1a3a['push'](_0x29f218),_0x13ba69;});return(0x0,pg_format_1['default'])(_0x311760,..._0x5e1a3a);}class KVTransaction{constructor(_0x285be7){this['kvsql']=_0x285be7,this['commands']=[];}['addCommand'](_0x3f1ace,_0x251cc6,_0x21df42,_0x2885a0){return this['commands']['push']({'sql':_0x3f1ace,'params':_0x251cc6,'returnType':_0x21df42,'transform':_0x2885a0}),this;}['set'](_0x38433e,_0x1e3f5f,_0x5a9637){const {sql:_0x179f02,params:_0x3a46d1}=this['kvsql']['_set'](_0x38433e,_0x1e3f5f,_0x5a9637);return this['addCommand'](_0x179f02,_0x3a46d1,'boolean');}['setnx'](_0x367e94,_0x234c4f){const {sql:_0x4aa48c,params:_0x3112a7}=this['kvsql']['_set'](_0x367e94,_0x234c4f,{'nx':!![]});return this['addCommand'](_0x4aa48c,_0x3112a7,'boolean');}['setnxex'](_0x41a821,_0x54ea34,_0xe622c9){const {sql:_0x4e6fb2,params:_0xe636d}=this['kvsql']['_set'](_0x41a821,_0x54ea34,{'nx':!![],'ex':_0xe622c9});return this['addCommand'](_0x4e6fb2,_0xe636d,'boolean');}['get'](_0x1c6fa8){const {sql:_0x48212e,params:_0x5b62b6}=this['kvsql']['_get'](_0x1c6fa8);return this['addCommand'](_0x48212e,_0x5b62b6,'string');}['del'](_0x2345cd){const {sql:_0xdd87c0,params:_0x3dfd6e}=this['kvsql']['_del'](_0x2345cd);return this['addCommand'](_0xdd87c0,_0x3dfd6e,'number');}['expire'](_0x5b66c1,_0x4452b6){const {sql:_0x1b00e8,params:_0x115f0c}=this['kvsql']['_expire'](_0x5b66c1,_0x4452b6);return this['addCommand'](_0x1b00e8,_0x115f0c,'boolean');}['hset'](_0x37c1f6,_0xfd2173,_0x52e414){const {sql:_0x354fc8,params:_0x369669}=this['kvsql']['_hset'](_0x37c1f6,_0xfd2173,_0x52e414);return this['addCommand'](_0x354fc8,_0x369669,'number');}['hget'](_0x590e78,_0x5eb035){const {sql:_0x311a49,params:_0x48ddb8}=this['kvsql']['_hget'](_0x590e78,_0x5eb035);return this['addCommand'](_0x311a49,_0x48ddb8,'string');}['hdel'](_0x4973a6,_0x2c7f5f){const {sql:_0xd40376,params:_0x43658f}=this['kvsql']['_hdel'](_0x4973a6,_0x2c7f5f);return this['addCommand'](_0xd40376,_0x43658f,'number');}['hmget'](_0x525e3e,_0x2ecd24){const {sql:_0x3091a9,params:_0x2b6c0b}=this['kvsql']['_hmget'](_0x525e3e,_0x2ecd24),_0x1fb4a8=_0x4f1d65=>{const _0x4eb55d=new Map(_0x4f1d65['map'](_0x2dcc9e=>[_0x2dcc9e['field'],_0x2dcc9e['value']]));return _0x2ecd24['map'](_0x234f02=>_0x4eb55d['get'](_0x234f02)||null);};return this['addCommand'](_0x3091a9,_0x2b6c0b,'array',_0x1fb4a8);}['hgetall'](_0x27925f){this['kvsql']['hgetall'](_0x27925f,this);const _0x556d99=_0x18edb9=>{const _0x12a072={};for(const _0x5afb7d of _0x18edb9){_0x12a072[_0x5afb7d['field']]=_0x5afb7d['value'];}return _0x12a072;};return this;}['hincrbyfloat'](_0x16626,_0x376a15,_0x4097d9){const {sql:_0x540aa2,params:_0x12f45d}=this['kvsql']['_hincrbyfloat'](_0x16626,_0x376a15,_0x4097d9);return this['addCommand'](_0x540aa2,_0x12f45d,'number',_0xd73bc9=>{try{return parseFloat(_0xd73bc9[0x0]['value']);}catch(_0x379806){console['error']('hincrbyfloat\x20error',_0x379806,_0x540aa2,_0x12f45d,_0xd73bc9);}});}['hscan'](_0x34240b,_0x303318,_0x12bbee=0xa){const {sql:_0x3fa6b2,params:_0x1661f5}=this['kvsql']['_hscan'](_0x34240b,_0x303318,_0x12bbee),_0x1d25af=_0x147259=>{const _0x2260a8={};for(const _0x52d1c6 of _0x147259){_0x2260a8[_0x52d1c6['field']]=_0x52d1c6['value'];}const _0x32115b=_0x303318+_0x147259['length'];return{'cursor':_0x32115b['toString'](),'items':_0x2260a8};};return this['addCommand'](_0x3fa6b2,_0x1661f5,'object',_0x1d25af);}['lrange'](_0x470569,_0x3cbd14,_0x3b5f7d){const {sql:_0x2bedb8,params:_0x8e775f}=this['kvsql']['_lrange'](_0x470569,_0x3cbd14,_0x3b5f7d);return this['addCommand'](_0x2bedb8,_0x8e775f,'array',_0x58083f=>_0x58083f['map'](_0x4f65b3=>_0x4f65b3['value']));}['rpush'](_0x189014,_0x5d6b6b){const {sql:_0x3e27d2,params:_0x43270f}=this['kvsql']['_rpush'](_0x189014,_0x5d6b6b);return this['addCommand'](_0x3e27d2,_0x43270f,'number',_0x23d687=>_0x23d687[0x0]?.['count']||0x0);}['lpush'](_0x2f2f3a,_0x2b558a){const {sql:_0x57f05b,params:_0x386eca}=this['kvsql']['_lpush'](_0x2f2f3a,_0x2b558a);return this['addCommand'](_0x57f05b,_0x386eca,'number',_0x26cf04=>_0x26cf04[0x0]?.['count']||0x0);}['lpop'](_0x369996){const {sql:_0x22c85e,params:_0x25697b}=this['kvsql']['_lpop'](_0x369996);return this['addCommand'](_0x22c85e,_0x25697b,'string');}['lmove'](_0x57941c,_0x165065,_0x52b4dd,_0x4cb6f0){const {sql:_0x232fc1,params:_0x3af466}=this['kvsql']['_lmove'](_0x57941c,_0x165065,_0x52b4dd,_0x4cb6f0);return this['addCommand'](_0x232fc1,_0x3af466,'string');}['zadd'](_0x4c03c3,_0x14a55b,_0x181c28,_0x4b7175){const {sql:_0x2ca71e,params:_0x537428}=this['kvsql']['_zadd'](_0x4c03c3,_0x14a55b,_0x181c28,_0x4b7175);return this['addCommand'](_0x2ca71e,_0x537428,'number',_0x43ae1e=>_0x43ae1e[0x0]?.['count']||0x0);}['zrange'](_0x14b721,_0x2345e8,_0x5eeb71){const {sql:_0x6104d5,params:_0x750dce}=this['kvsql']['_zrange'](_0x14b721,_0x2345e8,_0x5eeb71);return this['addCommand'](_0x6104d5,_0x750dce,'array',_0x499fd8=>_0x499fd8['map'](_0x5ce9a6=>_0x5ce9a6['member']));}['zrangebyscore'](_0x41c43a,_0x3953f0,_0x51519f){const {sql:_0x3f2495,params:_0x3634c9}=this['kvsql']['_zrangebyscore'](_0x41c43a,_0x3953f0,_0x51519f);return this['addCommand'](_0x3f2495,_0x3634c9,'array',_0x45ad0f=>_0x45ad0f['map'](_0x5a0d3a=>_0x5a0d3a['member']));}['zrangebyscore_withscores'](_0x222ed0,_0x4a59fe,_0x1b53ba){const {sql:_0x4c310b,params:_0x34bd21}=this['kvsql']['_zrangebyscore_withscores'](_0x222ed0,_0x4a59fe,_0x1b53ba);return this['addCommand'](_0x4c310b,_0x34bd21,'array',_0x23f8b1=>_0x23f8b1['map'](_0x37673a=>({'member':_0x37673a['member'],'score':_0x37673a['score']})));}['zrem'](_0x594d72,_0xc809d7){const {sql:_0x33caf5,params:_0x2fdfe8}=this['kvsql']['_zrem'](_0x594d72,_0xc809d7);return this['addCommand'](_0x33caf5,_0x2fdfe8,'number',_0x5f4208=>_0x5f4208[0x0]?.['count']||0x0);}['zrank'](_0x2ee15e,_0x1d2fb5){const {sql:_0x5ace86,params:_0x35f6a9}=this['kvsql']['_zrank'](_0x2ee15e,_0x1d2fb5);return this['addCommand'](_0x5ace86,_0x35f6a9,'number',_0x371de1=>_0x371de1[0x0]?.['rank']!==undefined?parseInt(_0x371de1[0x0]['rank'],0xa)-0x1:null);}['scan'](_0xbb222,_0x1ef28b=0xa){const {sql:_0xa46a6,params:_0x21f6e2}=this['kvsql']['_scan'](_0xbb222,_0x1ef28b),_0x26f1ce=_0x33bc54=>{const _0x1c020f=_0x33bc54['map'](_0x446aab=>_0x446aab['key']),_0x3afdbf=_0xbb222+_0x33bc54['length'];return{'cursor':_0x3afdbf,'keys':_0x1c020f};};return this['addCommand'](_0xa46a6,_0x21f6e2,'object',_0x26f1ce);}['rename'](_0x58d236,_0x4afe21){const {sql:_0x516ce9,params:_0x283d87}=this['kvsql']['_rename'](_0x58d236,_0x4afe21);return this['addCommand'](_0x516ce9,_0x283d87,'void');}async['exec'](){const _0x412905=this['kvsql']['pgClient'];try{const _0x50f185=[],_0x280e75=['BEGIN'];for(const _0x4cc988 of this['commands']){const _0xf5213b=formatSqlCommand(_0x4cc988['sql'],_0x4cc988['params']);_0x280e75['push'](_0xf5213b);}_0x280e75['push']('COMMIT;');const _0x5bc42e=_0x280e75['join'](';\x0a'),_0x3a8f05=await _0x412905['query'](_0x5bc42e),_0xb8ef54=Array['isArray'](_0x3a8f05)?_0x3a8f05:[_0x3a8f05];_0xb8ef54['shift'](),_0xb8ef54['pop']();let _0x1d5877=0x0;for(const _0x22f811 of this['commands']){const _0x1ff7ad=_0xb8ef54[_0x1d5877++],_0x48de5b=_0x1ff7ad?.['rows']||[];let _0xfec765;if(_0x22f811['transform'])_0xfec765=_0x22f811['transform'](_0x48de5b);else switch(_0x22f811['returnType']){case'string':_0xfec765=_0x48de5b[0x0]?.['value']||null;break;case'number':_0xfec765=_0x48de5b[0x0]?.['count']||0x0;break;case'boolean':_0xfec765=_0x48de5b[0x0]?.['success']??_0x48de5b['length']>0x0;break;case'array':_0xfec765=_0x48de5b['map'](_0x3aa8f9=>_0x3aa8f9['value']);break;case'object':_0xfec765=_0x48de5b[0x0]||{};break;default:_0xfec765=_0x48de5b;}_0x50f185['push'](_0xfec765);}return _0x50f185;}catch(_0x23a428){await _0x412905['query']('ROLLBACK');throw _0x23a428;}}}exports['KVTransaction']=KVTransaction;
@@ -0,0 +1,55 @@
1
+ import { PostgresJobEnumType } from '../../../../../types/postgres';
2
+ import { HScanResult, HSetOptions, ProviderTransaction } from '../../../../../types/provider';
3
+ import type { KVSQL } from '../kvsql';
4
+ export declare const hashModule: (context: KVSQL) => {
5
+ hsetnx(key: string, field: string, value: string, multi?: ProviderTransaction): Promise<number>;
6
+ hset(key: string, fields: Record<string, string>, options?: HSetOptions, multi?: ProviderTransaction): Promise<number>;
7
+ _deriveType(fieldName: string): PostgresJobEnumType;
8
+ _hset(key: string, fields: Record<string, string>, options?: HSetOptions): {
9
+ sql: string;
10
+ params: any[];
11
+ };
12
+ hget(key: string, field: string, multi?: ProviderTransaction): Promise<string | null>;
13
+ _hget(key: string, field: string): {
14
+ sql: string;
15
+ params: any[];
16
+ };
17
+ hdel(key: string, fields: string[], multi?: unknown): Promise<number>;
18
+ _hdel(key: string, fields: string[]): {
19
+ sql: string;
20
+ params: any[];
21
+ };
22
+ hmget(key: string, fields: string[], multi?: ProviderTransaction): Promise<(string | null)[]>;
23
+ _hmget(key: string, fields: string[]): {
24
+ sql: string;
25
+ params: any[];
26
+ };
27
+ hgetall(key: string, multi?: ProviderTransaction): Promise<Record<string, string>>;
28
+ _hgetall(key: string): {
29
+ sql: string;
30
+ params: any[];
31
+ };
32
+ hincrbyfloat(key: string, field: string, increment: number, multi?: ProviderTransaction): Promise<number>;
33
+ _hincrbyfloat(key: string, field: string, increment: number): {
34
+ sql: string;
35
+ params: any[];
36
+ };
37
+ hscan(key: string, cursor: string, count?: number, pattern?: string, multi?: ProviderTransaction): Promise<HScanResult>;
38
+ _hscan(key: string, cursor: string, count: number, pattern?: string): {
39
+ sql: string;
40
+ params: any[];
41
+ };
42
+ expire(key: string, seconds: number, multi?: ProviderTransaction): Promise<boolean>;
43
+ _expire(key: string, seconds: number): {
44
+ sql: string;
45
+ params: any[];
46
+ };
47
+ scan(cursor: number, count?: number, pattern?: string, multi?: ProviderTransaction): Promise<{
48
+ cursor: number;
49
+ keys: string[];
50
+ }>;
51
+ _scan(cursor: number, count: number, pattern?: string): {
52
+ sql: string;
53
+ params: any[];
54
+ };
55
+ };
@@ -0,0 +1 @@
1
+ 'use strict';(function(_0x303c08,_0x588df1){const _0x3c9c14=_0x1cfe,_0x40ae7d=_0x303c08();while(!![]){try{const _0x46c2b4=parseInt(_0x3c9c14(0x151))/0x1+-parseInt(_0x3c9c14(0x158))/0x2+parseInt(_0x3c9c14(0x159))/0x3*(-parseInt(_0x3c9c14(0x152))/0x4)+-parseInt(_0x3c9c14(0x155))/0x5+-parseInt(_0x3c9c14(0x153))/0x6+-parseInt(_0x3c9c14(0x154))/0x7+parseInt(_0x3c9c14(0x157))/0x8*(parseInt(_0x3c9c14(0x156))/0x9);if(_0x46c2b4===_0x588df1)break;else _0x40ae7d['push'](_0x40ae7d['shift']());}catch(_0x2808bd){_0x40ae7d['push'](_0x40ae7d['shift']());}}}(_0x5535,0xdef0a));Object['defineProperty'](exports,'__esModule',{'value':!![]}),exports['hashModule']=void 0x0;function _0x1cfe(_0x11a59a,_0x137d58){const _0x553518=_0x5535();return _0x1cfe=function(_0x1cfeb7,_0x2db2c7){_0x1cfeb7=_0x1cfeb7-0x151;let _0x5ae8ea=_0x553518[_0x1cfeb7];return _0x5ae8ea;},_0x1cfe(_0x11a59a,_0x137d58);}const hashModule=_0x1b134d=>({async 'hsetnx'(_0x2f6eca,_0x344327,_0x50dee1,_0x13593f){const {sql:_0x4d85fa,params:_0x5f3bba}=this['_hset'](_0x2f6eca,{[_0x344327]:_0x50dee1},{'nx':!![]});if(_0x13593f)return _0x13593f['addCommand'](_0x4d85fa,_0x5f3bba,'number'),Promise['resolve'](0x0);else try{const _0x5229ca=await _0x1b134d['pgClient']['query'](_0x4d85fa,_0x5f3bba);return _0x5229ca['rowCount'];}catch(_0x3d1a16){return console['error']('hsetnx\x20error',_0x3d1a16,_0x4d85fa,_0x5f3bba),0x0;}},async 'hset'(_0x373b75,_0x1fee2d,_0x38175e,_0x127f70){const {sql:_0x52db73,params:_0x13fa69}=this['_hset'](_0x373b75,_0x1fee2d,_0x38175e);if(_0x127f70)return _0x127f70['addCommand'](_0x52db73,_0x13fa69,'number'),Promise['resolve'](0x0);else try{const _0x493a34=await _0x1b134d['pgClient']['query'](_0x52db73,_0x13fa69);return _0x493a34['rowCount'];}catch(_0x2dbe44){return console['error']('hset\x20error',_0x2dbe44,_0x52db73,_0x13fa69),0x0;}},'_deriveType'(_0x8a482a){if(_0x8a482a===':')return'status';else{if(_0x8a482a['startsWith']('_'))return'udata';else{if(_0x8a482a['startsWith']('-'))return _0x8a482a['includes'](',')?'hmark':'jmark';else{if(_0x8a482a['length']===0x3)return'jdata';else return _0x8a482a['includes'](',')?'adata':'other';}}}},'_hset'(_0x3ddd61,_0x14290d,_0x15390d){const _0x191b79=_0x1b134d['tableForKey'](_0x3ddd61,'hash'),_0x150f7c=_0x191b79['endsWith']('_jobs'),_0x57afb8=Object['entries'](_0x14290d),_0x2daf91=_0x57afb8['length']===0x1&&_0x57afb8[0x0][0x0]===':';let _0x466e17=_0x191b79;_0x150f7c&&(_0x2daf91?_0x466e17=_0x191b79:_0x466e17=_0x191b79+'_attributes');const _0x55c585=[];let _0xee4f00='';if(_0x150f7c&&_0x2daf91)_0x15390d?.['nx']?(_0xee4f00='\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20INSERT\x20INTO\x20'+_0x466e17+'\x20(id,\x20key,\x20status)\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20SELECT\x20gen_random_uuid(),\x20$1,\x20$2\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20WHERE\x20NOT\x20EXISTS\x20(\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20SELECT\x201\x20FROM\x20'+_0x466e17+'\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20WHERE\x20key\x20=\x20$1\x20AND\x20is_live\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20)\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20RETURNING\x201\x20as\x20count\x0a\x20\x20\x20\x20\x20\x20\x20\x20',_0x55c585['push'](_0x3ddd61,_0x14290d[':'])):(_0xee4f00='\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20INSERT\x20INTO\x20'+_0x466e17+'\x20(id,\x20key,\x20status)\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20VALUES\x20(gen_random_uuid(),\x20$1,\x20$2)\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20ON\x20CONFLICT\x20(key)\x20WHERE\x20is_live\x20DO\x20UPDATE\x20SET\x20status\x20=\x20EXCLUDED.status\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20RETURNING\x201\x20as\x20count\x0a\x20\x20\x20\x20\x20\x20\x20\x20',_0x55c585['push'](_0x3ddd61,_0x14290d[':']));else{if(_0x150f7c){const _0x52eafd=_0x15390d?.['nx']?'ON\x20CONFLICT\x20DO\x20NOTHING':'ON\x20CONFLICT\x20(job_id,\x20field)\x20DO\x20UPDATE\x20SET\x20value\x20=\x20EXCLUDED.value',_0x18ca8f=_0x57afb8['map'](([_0x27bdad,_0x529ca4],_0x460aa5)=>{const _0x5ba952=_0x460aa5*0x3+0x2;return _0x55c585['push'](_0x27bdad,_0x529ca4,this['_deriveType'](_0x27bdad)),'($'+_0x5ba952+',\x20$'+(_0x5ba952+0x1)+',\x20$'+(_0x5ba952+0x2)+'::type_enum)';})['join'](',\x20');_0xee4f00='\x0a\x20\x20\x20\x20\x20\x20\x20\x20INSERT\x20INTO\x20'+_0x466e17+'\x20(job_id,\x20field,\x20value,\x20type)\x0a\x20\x20\x20\x20\x20\x20\x20\x20SELECT\x20\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20job.id,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20vals.field,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20vals.value,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20vals.type\x0a\x20\x20\x20\x20\x20\x20\x20\x20FROM\x20(\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20SELECT\x20id\x20FROM\x20'+_0x191b79+'\x20WHERE\x20key\x20=\x20$1\x20AND\x20is_live\x0a\x20\x20\x20\x20\x20\x20\x20\x20)\x20AS\x20job\x0a\x20\x20\x20\x20\x20\x20\x20\x20CROSS\x20JOIN\x20(\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20VALUES\x20'+_0x18ca8f+'\x0a\x20\x20\x20\x20\x20\x20\x20\x20)\x20AS\x20vals(field,\x20value,\x20type)\x0a\x20\x20\x20\x20\x20\x20\x20\x20'+_0x52eafd+'\x0a\x20\x20\x20\x20\x20\x20\x20\x20RETURNING\x201\x20as\x20count\x0a\x20\x20\x20\x20\x20\x20',_0x55c585['unshift'](_0x3ddd61);}else{const _0x414c78=_0x15390d?.['nx']?'ON\x20CONFLICT\x20DO\x20NOTHING':'ON\x20CONFLICT\x20(key,\x20field)\x20DO\x20UPDATE\x20SET\x20value\x20=\x20EXCLUDED.value',_0x3f869e=_0x57afb8['map'](([_0x23fae1,_0x427c2e],_0x3f80fb)=>{return _0x55c585['push'](_0x23fae1,_0x427c2e),'($1,\x20$'+(_0x3f80fb*0x2+0x2)+',\x20$'+(_0x3f80fb*0x2+0x3)+')';})['join'](',\x20');_0xee4f00='\x0a\x20\x20\x20\x20\x20\x20\x20\x20INSERT\x20INTO\x20'+_0x466e17+'\x20(key,\x20field,\x20value)\x0a\x20\x20\x20\x20\x20\x20\x20\x20VALUES\x20'+_0x3f869e+'\x0a\x20\x20\x20\x20\x20\x20\x20\x20'+_0x414c78+'\x0a\x20\x20\x20\x20\x20\x20\x20\x20RETURNING\x201\x20as\x20count\x0a\x20\x20\x20\x20\x20\x20',_0x55c585['unshift'](_0x3ddd61);}}return{'sql':_0xee4f00,'params':_0x55c585};},async 'hget'(_0x361d9e,_0x39f85f,_0x3d3d95){const {sql:_0x2ba867,params:_0x2f5cb6}=this['_hget'](_0x361d9e,_0x39f85f);if(_0x3d3d95)return _0x3d3d95['addCommand'](_0x2ba867,_0x2f5cb6,'string',_0x37e21c=>{return _0x37e21c[0x0]?.['value']||null;}),Promise['resolve'](null);else{const _0x28111c=await _0x1b134d['pgClient']['query'](_0x2ba867,_0x2f5cb6);return _0x28111c['rows'][0x0]?.['value']||null;}},'_hget'(_0x47923d,_0x293a10){const _0x124fa3=_0x1b134d['tableForKey'](_0x47923d,'hash'),_0x4179a5=_0x124fa3['endsWith']('_jobs'),_0x14ac7c=_0x293a10===':';if(_0x4179a5&&_0x14ac7c){const _0x46d987='\x0a\x20\x20\x20\x20\x20\x20\x20\x20SELECT\x20status::text\x20AS\x20value\x0a\x20\x20\x20\x20\x20\x20\x20\x20FROM\x20'+_0x124fa3+'\x0a\x20\x20\x20\x20\x20\x20\x20\x20WHERE\x20key\x20=\x20$1\x20AND\x20is_live\x0a\x20\x20\x20\x20\x20\x20';return{'sql':_0x46d987,'params':[_0x47923d]};}else{if(_0x4179a5){const _0x346767='\x0a\x20\x20\x20\x20\x20\x20\x20\x20SELECT\x20value\x0a\x20\x20\x20\x20\x20\x20\x20\x20FROM\x20'+_0x124fa3+'_attributes\x0a\x20\x20\x20\x20\x20\x20\x20\x20WHERE\x20job_id\x20=\x20(\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20SELECT\x20id\x20FROM\x20'+_0x124fa3+'\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20WHERE\x20key\x20=\x20$1\x20AND\x20is_live\x0a\x20\x20\x20\x20\x20\x20\x20\x20)\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20AND\x20field\x20=\x20$2\x0a\x20\x20\x20\x20\x20\x20';return{'sql':_0x346767,'params':[_0x47923d,_0x293a10]};}else{const _0x63a14c='\x0a\x20\x20\x20\x20\x20\x20\x20\x20SELECT\x20value\x0a\x20\x20\x20\x20\x20\x20\x20\x20FROM\x20'+_0x124fa3+'\x0a\x20\x20\x20\x20\x20\x20\x20\x20WHERE\x20key\x20=\x20$1\x20AND\x20field\x20=\x20$2\x0a\x20\x20\x20\x20\x20\x20',_0x4ab7e1=_0x1b134d['appendExpiryClause'](_0x63a14c,_0x124fa3);return{'sql':_0x4ab7e1,'params':[_0x47923d,_0x293a10]};}}},async 'hdel'(_0x334c78,_0x416aad,_0x4c03df){!Array['isArray'](_0x416aad)&&(_0x416aad=[_0x416aad]);const {sql:_0x100180,params:_0x444060}=this['_hdel'](_0x334c78,_0x416aad);if(_0x4c03df)return _0x4c03df['addCommand'](_0x100180,_0x444060,'number'),Promise['resolve'](0x0);else{const _0x2f6f63=await _0x1b134d['pgClient']['query'](_0x100180,_0x444060);return Number(_0x2f6f63['rows'][0x0]?.['count']||0x0);}},'_hdel'(_0xc82a1,_0x49b9dc){const _0x59f6f2=_0x1b134d['tableForKey'](_0xc82a1,'hash'),_0x391b20=_0x59f6f2['endsWith']('_jobs'),_0x2a89a4=_0x391b20?_0x59f6f2+'_attributes':_0x59f6f2,_0x51606b=_0x49b9dc['map']((_0x3a7d9f,_0x5683db)=>'$'+(_0x5683db+0x2))['join'](',\x20'),_0x24ad12=[_0xc82a1,..._0x49b9dc];if(_0x391b20){const _0x5cc5cd='\x0a\x20\x20\x20\x20\x20\x20\x20\x20WITH\x20valid_job\x20AS\x20(\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20SELECT\x20id\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20FROM\x20'+_0x59f6f2+'\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20WHERE\x20key\x20=\x20$1\x20AND\x20is_live\x0a\x20\x20\x20\x20\x20\x20\x20\x20),\x0a\x20\x20\x20\x20\x20\x20\x20\x20deleted\x20AS\x20(\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20DELETE\x20FROM\x20'+_0x2a89a4+'\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20WHERE\x20job_id\x20IN\x20(SELECT\x20id\x20FROM\x20valid_job)\x20AND\x20field\x20IN\x20('+_0x51606b+')\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20RETURNING\x201\x0a\x20\x20\x20\x20\x20\x20\x20\x20)\x0a\x20\x20\x20\x20\x20\x20\x20\x20SELECT\x20COUNT(*)\x20as\x20count\x20FROM\x20deleted\x0a\x20\x20\x20\x20\x20\x20';return{'sql':_0x5cc5cd,'params':_0x24ad12};}else{const _0x50228e='\x0a\x20\x20\x20\x20\x20\x20\x20\x20WITH\x20deleted\x20AS\x20(\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20DELETE\x20FROM\x20'+_0x2a89a4+'\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20WHERE\x20key\x20=\x20$1\x20AND\x20field\x20IN\x20('+_0x51606b+')\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20RETURNING\x201\x0a\x20\x20\x20\x20\x20\x20\x20\x20)\x0a\x20\x20\x20\x20\x20\x20\x20\x20SELECT\x20COUNT(*)\x20as\x20count\x20FROM\x20deleted\x0a\x20\x20\x20\x20\x20\x20';return{'sql':_0x50228e,'params':_0x24ad12};}},async 'hmget'(_0x49ced3,_0x2120b9,_0x3c0006){const {sql:_0x50701e,params:_0x1a368f}=this['_hmget'](_0x49ced3,_0x2120b9),_0x29d074=_0x4d3d9b=>{let _0x5d7868=null;const _0x22faa7=new Map();for(const _0x7ac229 of _0x4d3d9b){if(_0x7ac229['field']==='status')_0x5d7868=_0x7ac229['value'],_0x22faa7['set'](':',_0x7ac229['value']);else _0x7ac229['field']!==':'&&_0x22faa7['set'](_0x7ac229['field'],_0x7ac229['value']);}return _0x5d7868!==null&&_0x22faa7['set'](':',_0x5d7868),_0x2120b9['map'](_0x11ead8=>_0x22faa7['get'](_0x11ead8)||null);};if(_0x3c0006)return _0x3c0006['addCommand'](_0x50701e,_0x1a368f,'array',_0x3e8174=>{return _0x29d074(_0x3e8174);}),Promise['resolve']([]);else try{const _0xf766d5=await _0x1b134d['pgClient']['query'](_0x50701e,_0x1a368f);return _0x29d074(_0xf766d5['rows']);}catch(_0x55fda7){console['error']('hmget\x20error',_0x55fda7,_0x50701e,_0x1a368f);throw _0x55fda7;}},'_hmget'(_0x4b91d5,_0x1cf905){const _0x1209b5=_0x1b134d['tableForKey'](_0x4b91d5,'hash'),_0x50b661=_0x1209b5['endsWith']('_jobs');if(_0x50b661){const _0x4ae09d='\x0a\x20\x20\x20\x20\x20\x20\x20\x20WITH\x20valid_job\x20AS\x20(\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20SELECT\x20id,\x20status\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20FROM\x20'+_0x1209b5+'\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20WHERE\x20key\x20=\x20$1\x20\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20AND\x20(expired_at\x20IS\x20NULL\x20OR\x20expired_at\x20>\x20NOW())\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20LIMIT\x201\x0a\x20\x20\x20\x20\x20\x20\x20\x20),\x0a\x20\x20\x20\x20\x20\x20\x20\x20job_fields\x20AS\x20(\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20--\x20Always\x20include\x20the\x20status\x20field\x20directly\x20from\x20jobs\x20table\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20SELECT\x20\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x27status\x27\x20AS\x20field,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20status::text\x20AS\x20value\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20FROM\x20valid_job\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20UNION\x20ALL\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20--\x20Get\x20attribute\x20fields\x20with\x20proper\x20type\x20handling\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20SELECT\x20\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20a.field,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20a.value\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20FROM\x20'+_0x1209b5+'_attributes\x20a\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20JOIN\x20valid_job\x20j\x20ON\x20j.id\x20=\x20a.job_id\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20WHERE\x20a.field\x20=\x20ANY($2::text[])\x0a\x20\x20\x20\x20\x20\x20\x20\x20)\x0a\x20\x20\x20\x20\x20\x20\x20\x20SELECT\x20field,\x20value\x0a\x20\x20\x20\x20\x20\x20\x20\x20FROM\x20job_fields\x0a\x20\x20\x20\x20\x20\x20\x20\x20ORDER\x20BY\x20field\x0a\x20\x20\x20\x20\x20\x20';return{'sql':_0x4ae09d,'params':[_0x4b91d5,_0x1cf905]};}else{const _0x286020='\x0a\x20\x20\x20\x20\x20\x20\x20\x20SELECT\x20field,\x20value\x0a\x20\x20\x20\x20\x20\x20\x20\x20FROM\x20'+_0x1209b5+'\x0a\x20\x20\x20\x20\x20\x20\x20\x20WHERE\x20key\x20=\x20$1\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20AND\x20field\x20=\x20ANY($2::text[])\x0a\x20\x20\x20\x20\x20\x20',_0x3bd98f=_0x1b134d['appendExpiryClause'](_0x286020,_0x1209b5);return{'sql':_0x3bd98f,'params':[_0x4b91d5,_0x1cf905]};}},async 'hgetall'(_0x44009b,_0x29a631){const {sql:_0x1a2e7b,params:_0xc4b943}=this['_hgetall'](_0x44009b),_0x1c84ea=_0x5b5574=>{const _0x28be43={};for(const _0x2d9e7a of _0x5b5574){if(_0x2d9e7a['field']===':')continue;const _0x52f464=_0x2d9e7a['field']==='status'?':':_0x2d9e7a['field'];_0x28be43[_0x52f464]=_0x2d9e7a['value'];}return _0x28be43;};if(_0x29a631)return _0x29a631['addCommand'](_0x1a2e7b,_0xc4b943,'object',_0x536cf9=>{return _0x1c84ea(_0x536cf9);}),Promise['resolve']({});else try{const _0x2dbd49=await _0x1b134d['pgClient']['query'](_0x1a2e7b,_0xc4b943);return _0x1c84ea(_0x2dbd49['rows']);}catch(_0x348e58){console['error']('hgetall\x20error',_0x348e58,_0x1a2e7b,_0xc4b943);throw _0x348e58;}},'_hgetall'(_0x3b87fa){const _0x461181=_0x1b134d['tableForKey'](_0x3b87fa,'hash'),_0x645f83=_0x461181['endsWith']('_jobs');if(_0x645f83){const _0x5d1652='\x0a\x20\x20\x20\x20\x20\x20\x20\x20WITH\x20valid_job\x20AS\x20(\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20SELECT\x20id\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20FROM\x20'+_0x461181+'\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20WHERE\x20key\x20=\x20$1\x20AND\x20is_live\x0a\x20\x20\x20\x20\x20\x20\x20\x20),\x0a\x20\x20\x20\x20\x20\x20\x20\x20job_data\x20AS\x20(\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20SELECT\x20\x27status\x27\x20AS\x20field,\x20status::text\x20AS\x20value\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20FROM\x20'+_0x461181+'\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20WHERE\x20key\x20=\x20$1\x20AND\x20is_live\x0a\x20\x20\x20\x20\x20\x20\x20\x20),\x0a\x20\x20\x20\x20\x20\x20\x20\x20attribute_data\x20AS\x20(\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20SELECT\x20field,\x20value\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20FROM\x20'+_0x461181+'_attributes\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20WHERE\x20job_id\x20IN\x20(SELECT\x20id\x20FROM\x20valid_job)\x0a\x20\x20\x20\x20\x20\x20\x20\x20)\x0a\x20\x20\x20\x20\x20\x20\x20\x20SELECT\x20*\x20FROM\x20job_data\x0a\x20\x20\x20\x20\x20\x20\x20\x20UNION\x20ALL\x0a\x20\x20\x20\x20\x20\x20\x20\x20SELECT\x20*\x20FROM\x20attribute_data;\x0a\x20\x20\x20\x20\x20\x20';return{'sql':_0x5d1652,'params':[_0x3b87fa]};}else{const _0x9b5369=_0x1b134d['appendExpiryClause']('\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20SELECT\x20field,\x20value\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20FROM\x20'+_0x461181+'\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20WHERE\x20key\x20=\x20$1\x0a\x20\x20\x20\x20\x20\x20\x20\x20',_0x461181);return{'sql':_0x9b5369,'params':[_0x3b87fa]};}},async 'hincrbyfloat'(_0x516172,_0x22a386,_0x1ca376,_0x4d4232){const {sql:_0x5dca9e,params:_0x3ba2b9}=this['_hincrbyfloat'](_0x516172,_0x22a386,_0x1ca376);if(_0x4d4232)return _0x4d4232['addCommand'](_0x5dca9e,_0x3ba2b9,'number',_0x48e2fa=>{return parseFloat(_0x48e2fa[0x0]['value']);}),Promise['resolve'](0x0);else{const _0x368f3d=await _0x1b134d['pgClient']['query'](_0x5dca9e,_0x3ba2b9);return parseFloat(_0x368f3d['rows'][0x0]['value']);}},'_hincrbyfloat'(_0x5c2fce,_0x23c7d4,_0x3330d9){const _0x218057=_0x1b134d['tableForKey'](_0x5c2fce,'hash'),_0x28ded5=_0x218057['endsWith']('_jobs'),_0x5ac382=_0x23c7d4===':';if(_0x28ded5&&_0x5ac382){const _0x23a1b6='\x0a\x20\x20\x20\x20\x20\x20\x20\x20UPDATE\x20'+_0x218057+'\x0a\x20\x20\x20\x20\x20\x20\x20\x20SET\x20status\x20=\x20status\x20+\x20$2\x0a\x20\x20\x20\x20\x20\x20\x20\x20WHERE\x20key\x20=\x20$1\x20AND\x20is_live\x0a\x20\x20\x20\x20\x20\x20\x20\x20RETURNING\x20status::text\x20AS\x20value\x0a\x20\x20\x20\x20\x20\x20';return{'sql':_0x23a1b6,'params':[_0x5c2fce,_0x3330d9]};}else{if(_0x28ded5){const _0x15e8f0='\x0a\x20\x20\x20\x20\x20\x20\x20\x20WITH\x20valid_job\x20AS\x20(\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20SELECT\x20id\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20FROM\x20'+_0x218057+'\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20WHERE\x20key\x20=\x20$1\x20AND\x20is_live\x0a\x20\x20\x20\x20\x20\x20\x20\x20)\x0a\x20\x20\x20\x20\x20\x20\x20\x20INSERT\x20INTO\x20'+_0x218057+'_attributes\x20(job_id,\x20field,\x20value,\x20type)\x0a\x20\x20\x20\x20\x20\x20\x20\x20SELECT\x20id,\x20$2,\x20($3::double\x20precision)::text,\x20$4\x0a\x20\x20\x20\x20\x20\x20\x20\x20FROM\x20valid_job\x0a\x20\x20\x20\x20\x20\x20\x20\x20ON\x20CONFLICT\x20(job_id,\x20field)\x20DO\x20UPDATE\x0a\x20\x20\x20\x20\x20\x20\x20\x20SET\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20value\x20=\x20((COALESCE('+_0x218057+'_attributes.value,\x20\x270\x27)::double\x20precision)\x20+\x20$3::double\x20precision)::text,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20type\x20=\x20EXCLUDED.type\x0a\x20\x20\x20\x20\x20\x20\x20\x20RETURNING\x20value;\x0a\x20\x20\x20\x20\x20\x20';return{'sql':_0x15e8f0,'params':[_0x5c2fce,_0x23c7d4,_0x3330d9,this['_deriveType'](_0x23c7d4)]};}else{const _0x1168ee='\x0a\x20\x20\x20\x20\x20\x20\x20\x20INSERT\x20INTO\x20'+_0x218057+'\x20(key,\x20field,\x20value)\x0a\x20\x20\x20\x20\x20\x20\x20\x20VALUES\x20($1,\x20$2,\x20($3)::text)\x0a\x20\x20\x20\x20\x20\x20\x20\x20ON\x20CONFLICT\x20(key,\x20field)\x20DO\x20UPDATE\x0a\x20\x20\x20\x20\x20\x20\x20\x20SET\x20value\x20=\x20((COALESCE('+_0x218057+'.value,\x20\x270\x27)::double\x20precision\x20+\x20$3::double\x20precision)::text)\x0a\x20\x20\x20\x20\x20\x20\x20\x20RETURNING\x20value\x0a\x20\x20\x20\x20\x20\x20';return{'sql':_0x1168ee,'params':[_0x5c2fce,_0x23c7d4,_0x3330d9]};}}},async 'hscan'(_0x366792,_0x18fad3,_0x5b4e80=0xa,_0x3e9bd3,_0x53ee7a){const {sql:_0x4aaa9d,params:_0x1e82d9}=this['_hscan'](_0x366792,_0x18fad3,_0x5b4e80,_0x3e9bd3);if(_0x53ee7a)return _0x53ee7a['addCommand'](_0x4aaa9d,_0x1e82d9,'object',_0x1a33da=>{const _0x1c3619={};for(const _0x423636 of _0x1a33da){_0x1c3619[_0x423636['field']]=_0x423636['value'];}const _0x3211eb=_0x1a33da['length']<_0x5b4e80?0x0:Number(_0x18fad3)+_0x1a33da['length'];return{'cursor':_0x3211eb['toString'](),'items':_0x1c3619};}),Promise['resolve']({'cursor':'0','items':{}});else{const _0x597750=await _0x1b134d['pgClient']['query'](_0x4aaa9d,_0x1e82d9),_0x548067={};for(const _0x54f0f8 of _0x597750['rows']){_0x548067[_0x54f0f8['field']]=_0x54f0f8['value'];}const _0x19ea50=_0x597750['rowCount']<_0x5b4e80?0x0:Number(_0x18fad3)+_0x597750['rowCount'];return{'cursor':_0x19ea50['toString'](),'items':_0x548067};}},'_hscan'(_0x3e2335,_0x13e90d,_0x58f785,_0x3d3659){const _0x155bfa=_0x1b134d['tableForKey'](_0x3e2335,'hash'),_0x17a147=[_0x3e2335];let _0x452c56='\x0a\x20\x20\x20\x20\x20\x20SELECT\x20field,\x20value\x20FROM\x20'+_0x155bfa+'\x0a\x20\x20\x20\x20\x20\x20WHERE\x20key\x20=\x20$1\x20AND\x20(expiry\x20IS\x20NULL\x20OR\x20expiry\x20>\x20NOW())\x0a\x20\x20\x20\x20',_0x1f2497=0x2;if(_0x3d3659){const _0x15bf54=_0x3d3659['replace'](/\*/g,'%');_0x452c56+='\x20AND\x20field\x20LIKE\x20$'+_0x1f2497,_0x17a147['push'](_0x15bf54),_0x1f2497++;}return _0x452c56+='\x0a\x20\x20\x20\x20\x20\x20ORDER\x20BY\x20field\x0a\x20\x20\x20\x20\x20\x20OFFSET\x20$'+_0x1f2497+'\x20LIMIT\x20$'+(_0x1f2497+0x1)+'\x0a\x20\x20\x20\x20',_0x17a147['push'](_0x13e90d['toString']()),_0x17a147['push'](_0x58f785['toString']()),{'sql':_0x452c56,'params':_0x17a147};},async 'expire'(_0x5e22e8,_0x512c21,_0xa98db5){const {sql:_0x38ac2e,params:_0x390256}=this['_expire'](_0x5e22e8,_0x512c21);if(_0xa98db5)return _0xa98db5['addCommand'](_0x38ac2e,_0x390256,'boolean'),Promise['resolve'](!![]);else{const _0xb39bcf=await _0x1b134d['pgClient']['query'](_0x38ac2e,_0x390256);return _0xb39bcf['rowCount']>0x0;}},'_expire'(_0x4462ad,_0x1ba237){const _0x164893=_0x1b134d['tableForKey'](_0x4462ad),_0x260fe6=new Date(Date['now']()+_0x1ba237*0x3e8),_0x1232ba='\x0a\x20\x20\x20\x20\x20\x20UPDATE\x20'+_0x164893+'\x0a\x20\x20\x20\x20\x20\x20SET\x20expired_at\x20=\x20$2\x0a\x20\x20\x20\x20\x20\x20WHERE\x20key\x20=\x20$1\x20AND\x20is_live\x0a\x20\x20\x20\x20\x20\x20RETURNING\x20true\x20as\x20success\x0a\x20\x20\x20\x20',_0x42b265=[_0x4462ad,_0x260fe6];return{'sql':_0x1232ba,'params':_0x42b265};},async 'scan'(_0x5cd7e6,_0x46f34a=0xa,_0x4f1679,_0x1acd4c){const {sql:_0x202a4d,params:_0x47ab41}=this['_scan'](_0x5cd7e6,_0x46f34a,_0x4f1679);if(_0x1acd4c)return _0x1acd4c['addCommand'](_0x202a4d,_0x47ab41,'object',_0x45d027=>{const _0x474d43=_0x45d027['map'](_0x4c08c1=>_0x4c08c1['key']),_0x12cac9=_0x5cd7e6+_0x45d027['length'];return{'cursor':_0x12cac9,'keys':_0x474d43};}),Promise['resolve']({'cursor':0x0,'keys':[]});else{const _0x1424c2=await _0x1b134d['pgClient']['query'](_0x202a4d,_0x47ab41),_0x4ec653=_0x1424c2['rows']['map'](_0x1c49ae=>_0x1c49ae['id']),_0x2a2f85=_0x5cd7e6+_0x1424c2['rowCount'];return{'cursor':_0x2a2f85,'keys':_0x4ec653};}},'_scan'(_0x238323,_0x2009db,_0x297087){const _0x339405=_0x1b134d['tableForKey']('_:'+_0x1b134d['appId']+':j:_');let _0x20a0e0='\x0a\x20\x20\x20\x20\x20\x20SELECT\x20key\x20FROM\x20'+_0x339405+'\x0a\x20\x20\x20\x20\x20\x20WHERE\x20(expired_at\x20IS\x20NULL\x20OR\x20expired_at\x20>\x20NOW())\x0a\x20\x20\x20\x20';const _0x2a1b7c=[];return _0x297087&&(_0x20a0e0+='\x20AND\x20key\x20LIKE\x20$1',_0x2a1b7c['push'](_0x297087['replace'](/\*/g,'%'))),_0x20a0e0+='\x0a\x20\x20\x20\x20\x20\x20ORDER\x20BY\x20key\x0a\x20\x20\x20\x20\x20\x20OFFSET\x20$'+(_0x2a1b7c['length']+0x1)+'\x20LIMIT\x20$'+(_0x2a1b7c['length']+0x2)+'\x0a\x20\x20\x20\x20',_0x2a1b7c['push'](_0x238323['toString']()),_0x2a1b7c['push'](_0x2009db['toString']()),{'sql':_0x20a0e0,'params':_0x2a1b7c};}});function _0x5535(){const _0x561796=['1665965FGWpNN','574569yGOcmv','296fMRFaQ','515628xntQzr','1937184cVJQEZ','1103384EPeJmY','8ZDqiir','1153608TEsvgR','3343256slhosQ'];_0x5535=function(){return _0x561796;};return _0x5535();}exports['hashModule']=hashModule;
@@ -0,0 +1,33 @@
1
+ import { ProviderTransaction } from '../../../../../types/provider';
2
+ export declare const listModule: (context: any) => {
3
+ lrange(key: string, start: number, end: number, multi?: ProviderTransaction): Promise<string[]>;
4
+ _lrange(key: string, start: number, end: number): {
5
+ sql: string;
6
+ params: any[];
7
+ };
8
+ rpush(key: string, value: string | string[], multi?: ProviderTransaction): Promise<number>;
9
+ _rpush(key: string, value: string | string[]): {
10
+ sql: string;
11
+ params: any[];
12
+ };
13
+ lpush(key: string, value: string | string[], multi?: ProviderTransaction): Promise<number>;
14
+ _lpush(key: string, value: string | string[]): {
15
+ sql: string;
16
+ params: any[];
17
+ };
18
+ lpop(key: string, multi?: ProviderTransaction): Promise<string | null>;
19
+ _lpop(key: string): {
20
+ sql: string;
21
+ params: any[];
22
+ };
23
+ lmove(source: string, destination: string, srcPosition: 'LEFT' | 'RIGHT', destPosition: 'LEFT' | 'RIGHT', multi?: ProviderTransaction): Promise<string | null>;
24
+ _lmove(source: string, destination: string, srcPosition: 'LEFT' | 'RIGHT', destPosition: 'LEFT' | 'RIGHT'): {
25
+ sql: string;
26
+ params: any[];
27
+ };
28
+ rename(oldKey: string, newKey: string, multi?: ProviderTransaction): Promise<void>;
29
+ _rename(oldKey: string, newKey: string): {
30
+ sql: string;
31
+ params: any[];
32
+ };
33
+ };
@@ -0,0 +1 @@
1
+ 'use strict';function _0x34ff(_0x2571f2,_0x1c6d92){const _0x1cc540=_0x1cc5();return _0x34ff=function(_0x34ff34,_0x201124){_0x34ff34=_0x34ff34-0x145;let _0x3fc771=_0x1cc540[_0x34ff34];return _0x3fc771;},_0x34ff(_0x2571f2,_0x1c6d92);}(function(_0x333af0,_0x593adf){const _0x1c0ea9=_0x34ff,_0x590690=_0x333af0();while(!![]){try{const _0x2df9a3=parseInt(_0x1c0ea9(0x14e))/0x1+parseInt(_0x1c0ea9(0x145))/0x2*(parseInt(_0x1c0ea9(0x14a))/0x3)+-parseInt(_0x1c0ea9(0x149))/0x4*(-parseInt(_0x1c0ea9(0x14d))/0x5)+-parseInt(_0x1c0ea9(0x146))/0x6+-parseInt(_0x1c0ea9(0x148))/0x7*(parseInt(_0x1c0ea9(0x147))/0x8)+parseInt(_0x1c0ea9(0x14c))/0x9+-parseInt(_0x1c0ea9(0x14b))/0xa*(parseInt(_0x1c0ea9(0x14f))/0xb);if(_0x2df9a3===_0x593adf)break;else _0x590690['push'](_0x590690['shift']());}catch(_0x37be93){_0x590690['push'](_0x590690['shift']());}}}(_0x1cc5,0x7fcb6));function _0x1cc5(){const _0x24e4d9=['150940epGtmq','8945586rYRegf','40VMLsvN','464204fQpawI','968skrwlR','18cjeYUq','5260566fRuUbv','256tntVuh','106043RnrloW','427540UTBViF','300003MeTmyj'];_0x1cc5=function(){return _0x24e4d9;};return _0x1cc5();}Object['defineProperty'](exports,'__esModule',{'value':!![]}),exports['listModule']=void 0x0;const listModule=_0x567ea7=>({async 'lrange'(_0x48304a,_0x2f8c62,_0x29baa1,_0x11a59b){const {sql:_0x4ba9a0,params:_0x5e5aac}=this['_lrange'](_0x48304a,_0x2f8c62,_0x29baa1);if(_0x11a59b)return _0x11a59b['addCommand'](_0x4ba9a0,_0x5e5aac,'array',_0x52eaf4=>_0x52eaf4['map'](_0x56c363=>_0x56c363['value'])),Promise['resolve']([]);else{const _0x556e99=await _0x567ea7['pgClient']['query'](_0x4ba9a0,_0x5e5aac);return _0x556e99['rows']['map'](_0x50639f=>_0x50639f['value']);}},'_lrange'(_0x57aac6,_0x4717a5,_0x1bef5d){const _0x1a3ef9=_0x567ea7['tableForKey'](_0x57aac6,'list'),_0x2fb74e='\x0a\x20\x20\x20\x20\x20\x20WITH\x20numbered\x20AS\x20(\x0a\x20\x20\x20\x20\x20\x20\x20\x20SELECT\x20value,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20ROW_NUMBER()\x20OVER\x20(ORDER\x20BY\x20\x22index\x22\x20ASC)\x20-\x201\x20AS\x20rn,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20COUNT(*)\x20OVER()\x20-\x201\x20AS\x20max_index\x0a\x20\x20\x20\x20\x20\x20\x20\x20FROM\x20'+_0x1a3ef9+'\x0a\x20\x20\x20\x20\x20\x20\x20\x20WHERE\x20key\x20=\x20$1\x20AND\x20(expiry\x20IS\x20NULL\x20OR\x20expiry\x20>\x20NOW())\x0a\x20\x20\x20\x20\x20\x20),\x0a\x20\x20\x20\x20\x20\x20indices\x20AS\x20(\x0a\x20\x20\x20\x20\x20\x20\x20\x20SELECT\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20LEAST(GREATEST(CASE\x20WHEN\x20$2\x20>=\x200\x20THEN\x20$2\x20ELSE\x20max_index\x20+\x20$2\x20+\x201\x20END,\x200),\x20max_index)\x20AS\x20adjusted_start,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20LEAST(GREATEST(CASE\x20WHEN\x20$3\x20>=\x200\x20THEN\x20$3\x20ELSE\x20max_index\x20+\x20$3\x20+\x201\x20END,\x200),\x20max_index)\x20AS\x20adjusted_end\x0a\x20\x20\x20\x20\x20\x20\x20\x20FROM\x20(SELECT\x20max_index\x20FROM\x20numbered\x20LIMIT\x201)\x20AS\x20mi\x0a\x20\x20\x20\x20\x20\x20)\x0a\x20\x20\x20\x20\x20\x20SELECT\x20value\x0a\x20\x20\x20\x20\x20\x20FROM\x20numbered,\x20indices\x0a\x20\x20\x20\x20\x20\x20WHERE\x20rn\x20BETWEEN\x20indices.adjusted_start\x20AND\x20indices.adjusted_end\x0a\x20\x20\x20\x20\x20\x20ORDER\x20BY\x20rn\x20ASC\x0a\x20\x20\x20\x20',_0x34cba4=[_0x57aac6,_0x4717a5,_0x1bef5d];return{'sql':_0x2fb74e,'params':_0x34cba4};},async 'rpush'(_0x2cf656,_0x5d9bb2,_0x158415){const {sql:_0x5060cd,params:_0x38463d}=this['_rpush'](_0x2cf656,_0x5d9bb2);if(_0x158415)return _0x158415['addCommand'](_0x5060cd,_0x38463d,'number',_0x4b2551=>_0x4b2551[0x0]?.['count']||0x0),Promise['resolve'](0x0);else{const _0x3c2966=await _0x567ea7['pgClient']['query'](_0x5060cd,_0x38463d);return Number(_0x3c2966['rows'][0x0]?.['count']||0x0);}},'_rpush'(_0x20a23a,_0x182fea){const _0x481ea8=_0x567ea7['tableForKey'](_0x20a23a,'list'),_0x4270ad=Array['isArray'](_0x182fea)?_0x182fea:[_0x182fea],_0x120b63=_0x4270ad['map']((_0x2a6833,_0x214acb)=>'($1,\x20(SELECT\x20COALESCE(MAX(\x22index\x22),\x200)\x20+\x20'+(_0x214acb+0x1)+'\x20FROM\x20'+_0x481ea8+'\x20WHERE\x20key\x20=\x20$1),\x20$'+(_0x214acb+0x2)+')')['join'](',\x20'),_0xf61909='\x0a\x20\x20\x20\x20\x20\x20WITH\x20inserted\x20AS\x20(\x0a\x20\x20\x20\x20\x20\x20\x20\x20INSERT\x20INTO\x20'+_0x481ea8+'\x20(key,\x20\x22index\x22,\x20value)\x0a\x20\x20\x20\x20\x20\x20\x20\x20VALUES\x20'+_0x120b63+'\x0a\x20\x20\x20\x20\x20\x20\x20\x20RETURNING\x201\x0a\x20\x20\x20\x20\x20\x20)\x0a\x20\x20\x20\x20\x20\x20SELECT\x20COUNT(*)\x20as\x20count\x20FROM\x20inserted\x0a\x20\x20\x20\x20',_0x1df0d9=[_0x20a23a,..._0x4270ad];return{'sql':_0xf61909,'params':_0x1df0d9};},async 'lpush'(_0x350e5d,_0x5daef1,_0x32a0a8){const {sql:_0x473550,params:_0xeea6c3}=this['_lpush'](_0x350e5d,_0x5daef1);if(_0x32a0a8)return _0x32a0a8['addCommand'](_0x473550,_0xeea6c3,'number',_0x9d3ecc=>_0x9d3ecc[0x0]?.['count']||0x0),Promise['resolve'](0x0);else{const _0x382868=await _0x567ea7['pgClient']['query'](_0x473550,_0xeea6c3);return Number(_0x382868['rows'][0x0]?.['count']||0x0);}},'_lpush'(_0x34152b,_0x432bd2){const _0x44b536=_0x567ea7['tableForKey'](_0x34152b,'list'),_0x318d43=Array['isArray'](_0x432bd2)?_0x432bd2:[_0x432bd2],_0x37b9c4=_0x318d43['map']((_0x486472,_0x111c9d)=>'($1,\x20(SELECT\x20COALESCE(MIN(\x22index\x22),\x200)\x20-\x20'+(_0x111c9d+0x1)+'\x20FROM\x20'+_0x44b536+'\x20WHERE\x20key\x20=\x20$1),\x20$'+(_0x111c9d+0x2)+')')['join'](',\x20'),_0xa28986='\x0a\x20\x20\x20\x20\x20\x20WITH\x20inserted\x20AS\x20(\x0a\x20\x20\x20\x20\x20\x20\x20\x20INSERT\x20INTO\x20'+_0x44b536+'\x20(key,\x20\x22index\x22,\x20value)\x0a\x20\x20\x20\x20\x20\x20\x20\x20VALUES\x20'+_0x37b9c4+'\x0a\x20\x20\x20\x20\x20\x20\x20\x20RETURNING\x201\x0a\x20\x20\x20\x20\x20\x20)\x0a\x20\x20\x20\x20\x20\x20SELECT\x20COUNT(*)\x20as\x20count\x20FROM\x20inserted\x0a\x20\x20\x20\x20',_0x4c0f20=[_0x34152b,..._0x318d43];return{'sql':_0xa28986,'params':_0x4c0f20};},async 'lpop'(_0x45b442,_0xb65698){const {sql:_0x28e3a9,params:_0x3a8cdb}=this['_lpop'](_0x45b442);if(_0xb65698)return _0xb65698['addCommand'](_0x28e3a9,_0x3a8cdb,'string'),Promise['resolve'](null);else{const _0x4410a5=await _0x567ea7['pgClient']['query'](_0x28e3a9,_0x3a8cdb);return _0x4410a5['rows'][0x0]?.['value']||null;}},'_lpop'(_0x406c7e){const _0x490da8=_0x567ea7['tableForKey'](_0x406c7e,'list'),_0x7998ad='\x0a\x20\x20\x20\x20\x20\x20DELETE\x20FROM\x20'+_0x490da8+'\x0a\x20\x20\x20\x20\x20\x20WHERE\x20key\x20=\x20$1\x20AND\x20\x22index\x22\x20=\x20(\x0a\x20\x20\x20\x20\x20\x20\x20\x20SELECT\x20MIN(\x22index\x22)\x20FROM\x20'+_0x490da8+'\x20WHERE\x20key\x20=\x20$1\x20AND\x20(expiry\x20IS\x20NULL\x20OR\x20expiry\x20>\x20NOW())\x0a\x20\x20\x20\x20\x20\x20)\x0a\x20\x20\x20\x20\x20\x20RETURNING\x20value\x0a\x20\x20\x20\x20',_0x5aa0e9=[_0x406c7e];return{'sql':_0x7998ad,'params':_0x5aa0e9};},async 'lmove'(_0x2afb1d,_0x3eeda3,_0x2e6d61,_0x3616dd,_0x53f8cc){const {sql:_0x476d86,params:_0x49c26e}=this['_lmove'](_0x2afb1d,_0x3eeda3,_0x2e6d61,_0x3616dd);if(_0x53f8cc)return _0x53f8cc['addCommand'](_0x476d86,_0x49c26e,'string'),Promise['resolve'](null);else{const _0x4de4a2=_0x567ea7['pgClient'];try{await _0x4de4a2['query']('BEGIN');const _0x380743=await _0x4de4a2['query'](_0x476d86,_0x49c26e);return await _0x4de4a2['query']('COMMIT'),_0x380743['rows'][0x0]?.['value']||null;}catch(_0x4a8138){await _0x4de4a2['query']('ROLLBACK');throw _0x4a8138;}}},'_lmove'(_0x43c39a,_0x5e144f,_0x57f38e,_0x3965be){const _0x25f823=_0x567ea7['tableForKey'](_0x43c39a,'list'),_0x3ebfb1=_0x57f38e==='LEFT'?'ASC':'DESC',_0x4e4b73=_0x3965be==='LEFT'?'(SELECT\x20COALESCE(MIN(\x22index\x22),\x200)\x20-\x201\x20FROM\x20'+_0x25f823+'\x20WHERE\x20key\x20=\x20$2)':'(SELECT\x20COALESCE(MAX(\x22index\x22),\x200)\x20+\x201\x20FROM\x20'+_0x25f823+'\x20WHERE\x20key\x20=\x20$2)',_0x4c5f41='\x0a\x20\x20\x20\x20\x20\x20WITH\x20moved\x20AS\x20(\x0a\x20\x20\x20\x20\x20\x20\x20\x20DELETE\x20FROM\x20'+_0x25f823+'\x0a\x20\x20\x20\x20\x20\x20\x20\x20WHERE\x20ctid\x20IN\x20(\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20SELECT\x20ctid\x20FROM\x20'+_0x25f823+'\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20WHERE\x20key\x20=\x20$1\x20AND\x20(expiry\x20IS\x20NULL\x20OR\x20expiry\x20>\x20NOW())\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20ORDER\x20BY\x20\x22index\x22\x20'+_0x3ebfb1+'\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20LIMIT\x201\x0a\x20\x20\x20\x20\x20\x20\x20\x20)\x0a\x20\x20\x20\x20\x20\x20\x20\x20RETURNING\x20value\x0a\x20\x20\x20\x20\x20\x20),\x0a\x20\x20\x20\x20\x20\x20inserted\x20AS\x20(\x0a\x20\x20\x20\x20\x20\x20\x20\x20INSERT\x20INTO\x20'+_0x25f823+'\x20(key,\x20\x22index\x22,\x20value)\x0a\x20\x20\x20\x20\x20\x20\x20\x20SELECT\x20$2,\x20'+_0x4e4b73+',\x20value\x20FROM\x20moved\x0a\x20\x20\x20\x20\x20\x20\x20\x20RETURNING\x20value\x0a\x20\x20\x20\x20\x20\x20)\x0a\x20\x20\x20\x20\x20\x20SELECT\x20value\x20FROM\x20inserted\x0a\x20\x20\x20\x20',_0x373a62=[_0x43c39a,_0x5e144f];return{'sql':_0x4c5f41,'params':_0x373a62};},async 'rename'(_0x1c9fc2,_0x1640d7,_0x255593){const {sql:_0x5a2c07,params:_0x2e426f}=this['_rename'](_0x1c9fc2,_0x1640d7);if(_0x255593)return _0x255593['addCommand'](_0x5a2c07,_0x2e426f,'void'),Promise['resolve']();else{const _0x3f7fdf=_0x567ea7['pgClient'];try{await _0x3f7fdf['query']('BEGIN'),await _0x3f7fdf['query'](_0x5a2c07,_0x2e426f),await _0x3f7fdf['query']('COMMIT');}catch(_0x1e4215){await _0x3f7fdf['query']('ROLLBACK');throw _0x1e4215;}}},'_rename'(_0x5b75f6,_0x36cfcf){const _0x2fb671=_0x567ea7['tableForKey'](_0x5b75f6,'list'),_0x14344b='\x0a\x20\x20\x20\x20\x20\x20UPDATE\x20'+_0x2fb671+'\x20SET\x20key\x20=\x20$2\x20WHERE\x20key\x20=\x20$1;\x0a\x20\x20\x20\x20',_0xed1e45=[_0x5b75f6,_0x36cfcf];return{'sql':_0x14344b,'params':_0xed1e45};}});exports['listModule']=listModule;
@@ -0,0 +1,20 @@
1
+ import { ProviderTransaction, SetOptions } from '../../../../../types/provider';
2
+ export declare const stringModule: (context: any) => {
3
+ get(key: string, multi?: ProviderTransaction): Promise<string | null>;
4
+ _get(key: string): {
5
+ sql: string;
6
+ params: any[];
7
+ };
8
+ setnx(key: string, value: string, multi?: ProviderTransaction): Promise<boolean>;
9
+ setnxex(key: string, value: string, delay: number, multi?: ProviderTransaction): Promise<boolean>;
10
+ set(key: string, value: string, options?: SetOptions, multi?: ProviderTransaction): Promise<boolean>;
11
+ _set(key: string, value: string, options?: SetOptions): {
12
+ sql: string;
13
+ params: any[];
14
+ };
15
+ del(key: string, multi?: ProviderTransaction): Promise<number>;
16
+ _del(key: string): {
17
+ sql: string;
18
+ params: any[];
19
+ };
20
+ };
@@ -0,0 +1 @@
1
+ 'use strict';(function(_0x2c5597,_0x2d709c){const _0x111263=_0x414d,_0x52e270=_0x2c5597();while(!![]){try{const _0x5b5ebe=-parseInt(_0x111263(0x1a0))/0x1+parseInt(_0x111263(0x19e))/0x2*(parseInt(_0x111263(0x1a2))/0x3)+-parseInt(_0x111263(0x19d))/0x4*(-parseInt(_0x111263(0x1a5))/0x5)+-parseInt(_0x111263(0x1a4))/0x6+parseInt(_0x111263(0x19c))/0x7+parseInt(_0x111263(0x1a1))/0x8*(parseInt(_0x111263(0x1a3))/0x9)+parseInt(_0x111263(0x19f))/0xa*(-parseInt(_0x111263(0x1a6))/0xb);if(_0x5b5ebe===_0x2d709c)break;else _0x52e270['push'](_0x52e270['shift']());}catch(_0x314f6b){_0x52e270['push'](_0x52e270['shift']());}}}(_0x4cc3,0x21233));function _0x4cc3(){const _0x44d93b=['189590vKQccT','128853RwiUbs','776PeRtmt','12EohTjB','9153KgFTzn','1363722SrjoNu','2590VDQXQy','11lVRGQW','506975QVOsXq','1304XMBbUF','85444FAACFQ'];_0x4cc3=function(){return _0x44d93b;};return _0x4cc3();}function _0x414d(_0x2cf380,_0x41bb05){const _0x4cc3e9=_0x4cc3();return _0x414d=function(_0x414dff,_0x41fe14){_0x414dff=_0x414dff-0x19c;let _0x3cfd0f=_0x4cc3e9[_0x414dff];return _0x3cfd0f;},_0x414d(_0x2cf380,_0x41bb05);}Object['defineProperty'](exports,'__esModule',{'value':!![]}),exports['stringModule']=void 0x0;const stringModule=_0x10edf2=>({async 'get'(_0x411a2e,_0x31120e){const {sql:_0xb20f05,params:_0x222ecb}=this['_get'](_0x411a2e);if(_0x31120e)return _0x31120e['addCommand'](_0xb20f05,_0x222ecb,'string'),Promise['resolve'](null);else{const _0x67eacb=await _0x10edf2['pgClient']['query'](_0xb20f05,_0x222ecb);return _0x67eacb['rows'][0x0]?.['value']||null;}},'_get'(_0xfd6933){const _0x4b2b27=_0x10edf2['tableForKey'](_0xfd6933),_0xbbcdc0='\x0a\x20\x20\x20\x20\x20\x20SELECT\x20value\x20FROM\x20'+_0x4b2b27+'\x0a\x20\x20\x20\x20\x20\x20WHERE\x20key\x20=\x20$1\x20AND\x20(expiry\x20IS\x20NULL\x20OR\x20expiry\x20>\x20NOW())\x0a\x20\x20\x20\x20\x20\x20LIMIT\x201\x0a\x20\x20\x20\x20',_0x26304e=[_0xfd6933];return{'sql':_0xbbcdc0,'params':_0x26304e};},async 'setnx'(_0x26779e,_0x64662e,_0x5c8586){const {sql:_0x2a8a92,params:_0x1f6c3d}=this['_set'](_0x26779e,_0x64662e,{'nx':!![]});if(_0x5c8586)return _0x5c8586['addCommand'](_0x2a8a92,_0x1f6c3d,'boolean'),Promise['resolve'](!![]);else{const _0x1de1f1=await _0x10edf2['pgClient']['query'](_0x2a8a92,_0x1f6c3d);return _0x1de1f1['rowCount']>0x0;}},async 'setnxex'(_0x660c88,_0x1deff8,_0x57bab1,_0x564035){const {sql:_0x31d9dd,params:_0x49bb1d}=this['_set'](_0x660c88,_0x1deff8,{'nx':!![],'ex':_0x57bab1});if(_0x564035)return _0x564035['addCommand'](_0x31d9dd,_0x49bb1d,'boolean'),Promise['resolve'](!![]);else{const _0x29979f=await _0x10edf2['pgClient']['query'](_0x31d9dd,_0x49bb1d);return _0x29979f['rowCount']>0x0;}},async 'set'(_0x6868aa,_0x4d5061,_0x3bed8a,_0xa798ec){const {sql:_0x2e96f8,params:_0x3ba62e}=this['_set'](_0x6868aa,_0x4d5061,_0x3bed8a);if(_0xa798ec)return _0xa798ec['addCommand'](_0x2e96f8,_0x3ba62e,'boolean'),Promise['resolve'](!![]);else{const _0x407912=await _0x10edf2['pgClient']['query'](_0x2e96f8,_0x3ba62e);return _0x407912['rowCount']>0x0;}},'_set'(_0x186732,_0x48af52,_0x493ff3){const _0x52c7de=_0x10edf2['tableForKey'](_0x186732);let _0x56ea93='';const _0x5075ee=[_0x186732,_0x48af52];let _0x337a7e='';return _0x493ff3?.['ex']&&(_0x337a7e=',\x20expiry\x20=\x20NOW()\x20+\x20INTERVAL\x20\x27'+_0x493ff3['ex']+'\x20seconds\x27'),_0x493ff3?.['nx']?_0x56ea93='\x0a\x20\x20\x20\x20\x20\x20\x20\x20INSERT\x20INTO\x20'+_0x52c7de+'\x20(key,\x20value'+(_0x337a7e?',\x20expiry':'')+')\x0a\x20\x20\x20\x20\x20\x20\x20\x20VALUES\x20($1,\x20$2'+(_0x337a7e?',\x20NOW()\x20+\x20INTERVAL\x20\x27'+_0x493ff3['ex']+'\x20seconds\x27':'')+')\x0a\x20\x20\x20\x20\x20\x20\x20\x20ON\x20CONFLICT\x20DO\x20NOTHING\x0a\x20\x20\x20\x20\x20\x20\x20\x20RETURNING\x20true\x20as\x20success\x0a\x20\x20\x20\x20\x20\x20':_0x56ea93='\x0a\x20\x20\x20\x20\x20\x20\x20\x20INSERT\x20INTO\x20'+_0x52c7de+'\x20(key,\x20value'+(_0x337a7e?',\x20expiry':'')+')\x0a\x20\x20\x20\x20\x20\x20\x20\x20VALUES\x20($1,\x20$2'+(_0x337a7e?',\x20NOW()\x20+\x20INTERVAL\x20\x27'+_0x493ff3['ex']+'\x20seconds\x27':'')+')\x0a\x20\x20\x20\x20\x20\x20\x20\x20ON\x20CONFLICT\x20(key)\x20DO\x20UPDATE\x20SET\x20value\x20=\x20EXCLUDED.value'+_0x337a7e+'\x0a\x20\x20\x20\x20\x20\x20\x20\x20RETURNING\x20true\x20as\x20success\x0a\x20\x20\x20\x20\x20\x20',{'sql':_0x56ea93,'params':_0x5075ee};},async 'del'(_0x27fdbc,_0x1051d1){const {sql:_0x4ed59b,params:_0x2ea964}=this['_del'](_0x27fdbc);if(_0x1051d1)return _0x1051d1['addCommand'](_0x4ed59b,_0x2ea964,'number'),Promise['resolve'](0x0);else{const _0x1aa35b=await _0x10edf2['pgClient']['query'](_0x4ed59b,_0x2ea964);return Number(_0x1aa35b['rows'][0x0]?.['count']||0x0);}},'_del'(_0x443226){const _0x185bf6=_0x10edf2['tableForKey'](_0x443226),_0x5de2e4='\x0a\x20\x20\x20\x20\x20\x20WITH\x20deleted\x20AS\x20(\x0a\x20\x20\x20\x20\x20\x20\x20\x20DELETE\x20FROM\x20'+_0x185bf6+'\x20WHERE\x20key\x20=\x20$1\x0a\x20\x20\x20\x20\x20\x20\x20\x20RETURNING\x201\x0a\x20\x20\x20\x20\x20\x20)\x0a\x20\x20\x20\x20\x20\x20SELECT\x20COUNT(*)\x20as\x20count\x20FROM\x20deleted\x0a\x20\x20\x20\x20',_0x5c794f=[_0x443226];return{'sql':_0x5de2e4,'params':_0x5c794f};}});exports['stringModule']=stringModule;
@@ -0,0 +1,41 @@
1
+ import { ProviderTransaction, ZAddOptions } from '../../../../../types/provider';
2
+ export declare const zsetModule: (context: any) => {
3
+ zadd(key: string, score: number, member: string, options?: ZAddOptions, multi?: ProviderTransaction): Promise<number>;
4
+ _zadd(key: string, score: number, member: string, options?: ZAddOptions): {
5
+ sql: string;
6
+ params: any[];
7
+ };
8
+ zrange(key: string, start: number, stop: number, facet?: 'WITHSCORES', multi?: ProviderTransaction): Promise<string[]>;
9
+ _zrange(key: string, start: number, stop: number, facet?: 'WITHSCORES'): {
10
+ sql: string;
11
+ params: any[];
12
+ };
13
+ zscore(key: string, member: string, multi?: ProviderTransaction): Promise<number | null>;
14
+ _zscore(key: string, member: string): {
15
+ sql: string;
16
+ params: any[];
17
+ };
18
+ zrangebyscore(key: string, min: number, max: number, multi?: ProviderTransaction): Promise<string[]>;
19
+ _zrangebyscore(key: string, min: number, max: number): {
20
+ sql: string;
21
+ params: any[];
22
+ };
23
+ zrangebyscore_withscores(key: string, min: number, max: number, multi?: ProviderTransaction): Promise<{
24
+ member: string;
25
+ score: number;
26
+ }[]>;
27
+ _zrangebyscore_withscores(key: string, min: number, max: number): {
28
+ sql: string;
29
+ params: any[];
30
+ };
31
+ zrem(key: string, member: string, multi?: ProviderTransaction): Promise<number>;
32
+ _zrem(key: string, member: string): {
33
+ sql: string;
34
+ params: any[];
35
+ };
36
+ zrank(key: string, member: string, multi?: ProviderTransaction): Promise<number | null>;
37
+ _zrank(key: string, member: string): {
38
+ sql: string;
39
+ params: any[];
40
+ };
41
+ };
@@ -0,0 +1 @@
1
+ 'use strict';(function(_0x7c7f9e,_0x5781a1){const _0x40fc24=_0x3784,_0x5805c3=_0x7c7f9e();while(!![]){try{const _0x1492d2=-parseInt(_0x40fc24(0xfd))/0x1+parseInt(_0x40fc24(0x101))/0x2*(parseInt(_0x40fc24(0xfa))/0x3)+parseInt(_0x40fc24(0xf8))/0x4*(-parseInt(_0x40fc24(0xfe))/0x5)+-parseInt(_0x40fc24(0xfc))/0x6*(-parseInt(_0x40fc24(0xf9))/0x7)+parseInt(_0x40fc24(0x102))/0x8*(-parseInt(_0x40fc24(0xfb))/0x9)+parseInt(_0x40fc24(0xff))/0xa+parseInt(_0x40fc24(0xf7))/0xb*(-parseInt(_0x40fc24(0x100))/0xc);if(_0x1492d2===_0x5781a1)break;else _0x5805c3['push'](_0x5805c3['shift']());}catch(_0xa6709d){_0x5805c3['push'](_0x5805c3['shift']());}}}(_0x5ade,0xeaf82));Object['defineProperty'](exports,'__esModule',{'value':!![]}),exports['zsetModule']=void 0x0;const zsetModule=_0x4898d5=>({async 'zadd'(_0xdfd017,_0x28cd81,_0x30e3c3,_0x1f944e,_0x50a188){const {sql:_0x132309,params:_0x1d3d48}=this['_zadd'](_0xdfd017,_0x28cd81,_0x30e3c3,_0x1f944e);if(_0x50a188)return _0x50a188['addCommand'](_0x132309,_0x1d3d48,'number',_0x4a187f=>_0x4a187f[0x0]?.['count']||0x0),Promise['resolve'](0x0);else{const _0x2ffc18=await _0x4898d5['pgClient']['query'](_0x132309,_0x1d3d48);return Number(_0x2ffc18['rows'][0x0]?.['count']||0x0);}},'_zadd'(_0x14de70,_0x157338,_0x4c5940,_0x182eb5){const _0x56ae18=_0x4898d5['tableForKey'](_0x14de70,'sorted_set');let _0xe8d978='';const _0x1fe37e=[_0x14de70,_0x4c5940,_0x157338];return _0x182eb5?.['nx']?_0xe8d978='\x0a\x20\x20\x20\x20\x20\x20\x20\x20INSERT\x20INTO\x20'+_0x56ae18+'\x20(key,\x20member,\x20score)\x0a\x20\x20\x20\x20\x20\x20\x20\x20VALUES\x20($1,\x20$2,\x20$3)\x0a\x20\x20\x20\x20\x20\x20\x20\x20ON\x20CONFLICT\x20DO\x20NOTHING\x0a\x20\x20\x20\x20\x20\x20\x20\x20RETURNING\x201\x20as\x20count\x0a\x20\x20\x20\x20\x20\x20':_0xe8d978='\x0a\x20\x20\x20\x20\x20\x20\x20\x20INSERT\x20INTO\x20'+_0x56ae18+'\x20(key,\x20member,\x20score)\x0a\x20\x20\x20\x20\x20\x20\x20\x20VALUES\x20($1,\x20$2,\x20$3)\x0a\x20\x20\x20\x20\x20\x20\x20\x20ON\x20CONFLICT\x20(key,\x20member)\x20DO\x20UPDATE\x20SET\x20score\x20=\x20$3\x0a\x20\x20\x20\x20\x20\x20\x20\x20RETURNING\x201\x20as\x20count\x0a\x20\x20\x20\x20\x20\x20',{'sql':_0xe8d978,'params':_0x1fe37e};},async 'zrange'(_0x97ec90,_0xfbb812,_0x4ab371,_0x2d5195,_0x1ec3e9){const {sql:_0x4fc956,params:_0x46e9b9}=this['_zrange'](_0x97ec90,_0xfbb812,_0x4ab371,_0x2d5195);if(_0x1ec3e9)return _0x1ec3e9['addCommand'](_0x4fc956,_0x46e9b9,'array',_0x4566fa=>{return _0x2d5195==='WITHSCORES'?_0x4566fa['flatMap'](_0x35af53=>[_0x35af53['member'],_0x35af53['score']['toString']()]):_0x4566fa['map'](_0x45ec05=>_0x45ec05['member']);}),Promise['resolve']([]);else{const _0x1519e4=await _0x4898d5['pgClient']['query'](_0x4fc956,_0x46e9b9);return _0x2d5195==='WITHSCORES'?_0x1519e4['rows']['flatMap'](_0x50dbcd=>[_0x50dbcd['member'],_0x50dbcd['score']['toString']()]):_0x1519e4['rows']['map'](_0x23d8ce=>_0x23d8ce['member']);}},'_zrange'(_0x5bcf96,_0x520d79,_0x190a56,_0x34d896){const _0x4d0bee=_0x4898d5['tableForKey'](_0x5bcf96,'sorted_set'),_0x217b7d=_0x34d896==='WITHSCORES'?'member,\x20score':'member',_0x5deb28='\x0a\x20\x20\x20\x20\x20\x20WITH\x20total_entries\x20AS\x20(\x0a\x20\x20\x20\x20\x20\x20\x20\x20SELECT\x20COUNT(*)\x20-\x201\x20AS\x20max_index\x20FROM\x20'+_0x4d0bee+'\x0a\x20\x20\x20\x20\x20\x20\x20\x20WHERE\x20key\x20=\x20$1\x20AND\x20(expiry\x20IS\x20NULL\x20OR\x20expiry\x20>\x20NOW())\x0a\x20\x20\x20\x20\x20\x20),\x20ordered_entries\x20AS\x20(\x0a\x20\x20\x20\x20\x20\x20\x20\x20SELECT\x20'+_0x217b7d+',\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20ROW_NUMBER()\x20OVER\x20(ORDER\x20BY\x20score\x20ASC,\x20member\x20ASC)\x20-\x201\x20AS\x20rn,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20(SELECT\x20max_index\x20FROM\x20total_entries)\x20AS\x20max_index\x0a\x20\x20\x20\x20\x20\x20\x20\x20FROM\x20'+_0x4d0bee+'\x0a\x20\x20\x20\x20\x20\x20\x20\x20WHERE\x20key\x20=\x20$1\x20AND\x20(expiry\x20IS\x20NULL\x20OR\x20expiry\x20>\x20NOW())\x0a\x20\x20\x20\x20\x20\x20),\x20indices\x20AS\x20(\x0a\x20\x20\x20\x20\x20\x20\x20\x20SELECT\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20CASE\x20WHEN\x20$2\x20>=\x200\x20THEN\x20$2\x20ELSE\x20max_index\x20+\x20$2\x20+\x201\x20END\x20AS\x20adjusted_start,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20CASE\x20WHEN\x20$3\x20>=\x200\x20THEN\x20$3\x20ELSE\x20max_index\x20+\x20$3\x20+\x201\x20END\x20AS\x20adjusted_stop\x0a\x20\x20\x20\x20\x20\x20\x20\x20FROM\x20total_entries\x0a\x20\x20\x20\x20\x20\x20)\x0a\x20\x20\x20\x20\x20\x20SELECT\x20'+_0x217b7d+'\x0a\x20\x20\x20\x20\x20\x20FROM\x20ordered_entries,\x20indices\x0a\x20\x20\x20\x20\x20\x20WHERE\x20rn\x20BETWEEN\x20LEAST(GREATEST(adjusted_start,\x200),\x20max_index)\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20AND\x20LEAST(GREATEST(adjusted_stop,\x200),\x20max_index)\x0a\x20\x20\x20\x20\x20\x20ORDER\x20BY\x20rn\x20ASC;\x0a\x20\x20\x20\x20',_0x325176=[_0x5bcf96,_0x520d79,_0x190a56];return{'sql':_0x5deb28,'params':_0x325176};},async 'zscore'(_0x305da6,_0x4c3a4f,_0x430ed0){const {sql:_0x353446,params:_0x4f0d47}=this['_zscore'](_0x305da6,_0x4c3a4f);if(_0x430ed0)return _0x430ed0['addCommand'](_0x353446,_0x4f0d47,'single',_0x2c14f2=>{return _0x2c14f2?parseFloat(_0x2c14f2['score']):null;}),Promise['resolve'](null);else{const _0xd91d9d=await _0x4898d5['pgClient']['query'](_0x353446,_0x4f0d47);return _0xd91d9d['rows']['length']?parseFloat(_0xd91d9d['rows'][0x0]['score']):null;}},'_zscore'(_0x38028b,_0x205e5d){const _0x13f900=_0x4898d5['tableForKey'](_0x38028b,'sorted_set'),_0x31f243='\x0a\x20\x20\x20\x20\x20\x20SELECT\x20score\x0a\x20\x20\x20\x20\x20\x20FROM\x20'+_0x13f900+'\x0a\x20\x20\x20\x20\x20\x20WHERE\x20key\x20=\x20$1\x20AND\x20member\x20=\x20$2\x0a\x20\x20\x20\x20\x20\x20\x20\x20AND\x20(expiry\x20IS\x20NULL\x20OR\x20expiry\x20>\x20NOW())\x0a\x20\x20\x20\x20\x20\x20LIMIT\x201\x0a\x20\x20\x20\x20',_0x4847a5=[_0x38028b,_0x205e5d];return{'sql':_0x31f243,'params':_0x4847a5};},async 'zrangebyscore'(_0x56b1bc,_0x33b502,_0x51cb8a,_0x319928){const {sql:_0x1c3b67,params:_0x2022a4}=this['_zrangebyscore'](_0x56b1bc,_0x33b502,_0x51cb8a);if(_0x319928)return _0x319928['addCommand'](_0x1c3b67,_0x2022a4,'array',_0x468672=>_0x468672['map'](_0x40cf3f=>_0x40cf3f['member'])),Promise['resolve']([]);else{const _0x131739=await _0x4898d5['pgClient']['query'](_0x1c3b67,_0x2022a4);return _0x131739['rows']['map'](_0x4f1c45=>_0x4f1c45['member']);}},'_zrangebyscore'(_0x347a1d,_0x3beb71,_0x54c99b){const _0x272bae=_0x4898d5['tableForKey'](_0x347a1d,'sorted_set'),_0xdd5e98='\x0a\x20\x20\x20\x20\x20\x20SELECT\x20member\x20FROM\x20'+_0x272bae+'\x0a\x20\x20\x20\x20\x20\x20WHERE\x20key\x20=\x20$1\x20AND\x20score\x20BETWEEN\x20$2\x20AND\x20$3\x20AND\x20(expiry\x20IS\x20NULL\x20OR\x20expiry\x20>\x20NOW())\x0a\x20\x20\x20\x20\x20\x20ORDER\x20BY\x20score\x20ASC,\x20member\x20ASC\x0a\x20\x20\x20\x20',_0x6699fc=[_0x347a1d,_0x3beb71,_0x54c99b];return{'sql':_0xdd5e98,'params':_0x6699fc};},async 'zrangebyscore_withscores'(_0x352d77,_0x1b1591,_0x33ccc6,_0x505a48){const {sql:_0x19757e,params:_0x52e0bd}=this['_zrangebyscore_withscores'](_0x352d77,_0x1b1591,_0x33ccc6);if(_0x505a48)return _0x505a48['addCommand'](_0x19757e,_0x52e0bd,'array',_0x1a4b7e=>_0x1a4b7e['map'](_0x1b85b3=>({'member':_0x1b85b3['member'],'score':_0x1b85b3['score']}))),Promise['resolve']([]);else{const _0x780de3=await _0x4898d5['pgClient']['query'](_0x19757e,_0x52e0bd);return _0x780de3['rows']['map'](_0x4790ed=>({'member':_0x4790ed['member'],'score':_0x4790ed['score']}));}},'_zrangebyscore_withscores'(_0x58328e,_0x16954e,_0x1bbee0){const _0xe6eff8=_0x4898d5['tableForKey'](_0x58328e,'sorted_set'),_0x44665d='\x0a\x20\x20\x20\x20\x20\x20SELECT\x20member,\x20score\x20FROM\x20'+_0xe6eff8+'\x0a\x20\x20\x20\x20\x20\x20WHERE\x20key\x20=\x20$1\x20AND\x20score\x20BETWEEN\x20$2\x20AND\x20$3\x20AND\x20(expiry\x20IS\x20NULL\x20OR\x20expiry\x20>\x20NOW())\x0a\x20\x20\x20\x20\x20\x20ORDER\x20BY\x20score\x20ASC,\x20member\x20ASC\x0a\x20\x20\x20\x20',_0x163952=[_0x58328e,_0x16954e,_0x1bbee0];return{'sql':_0x44665d,'params':_0x163952};},async 'zrem'(_0x116181,_0x474717,_0x19cd3e){const {sql:_0x456c82,params:_0x249173}=this['_zrem'](_0x116181,_0x474717);if(_0x19cd3e)return _0x19cd3e['addCommand'](_0x456c82,_0x249173,'number',_0x84ad94=>_0x84ad94[0x0]?.['count']||0x0),Promise['resolve'](0x0);else{const _0x5b35e0=await _0x4898d5['pgClient']['query'](_0x456c82,_0x249173);return Number(_0x5b35e0['rows'][0x0]?.['count']||0x0);}},'_zrem'(_0x366342,_0x5e63b4){const _0x65614e=_0x4898d5['tableForKey'](_0x366342,'sorted_set'),_0x3d8419='\x0a\x20\x20\x20\x20\x20\x20WITH\x20deleted\x20AS\x20(\x0a\x20\x20\x20\x20\x20\x20\x20\x20DELETE\x20FROM\x20'+_0x65614e+'\x0a\x20\x20\x20\x20\x20\x20\x20\x20WHERE\x20key\x20=\x20$1\x20AND\x20member\x20=\x20$2\x0a\x20\x20\x20\x20\x20\x20\x20\x20RETURNING\x201\x0a\x20\x20\x20\x20\x20\x20)\x0a\x20\x20\x20\x20\x20\x20SELECT\x20COUNT(*)\x20as\x20count\x20FROM\x20deleted\x0a\x20\x20\x20\x20',_0x36da60=[_0x366342,_0x5e63b4];return{'sql':_0x3d8419,'params':_0x36da60};},async 'zrank'(_0x4c5085,_0x4495,_0x523614){const {sql:_0x289899,params:_0x5bdfab}=this['_zrank'](_0x4c5085,_0x4495);if(_0x523614)return _0x523614['addCommand'](_0x289899,_0x5bdfab,'number',_0xcb3380=>_0xcb3380[0x0]?.['rank']!==undefined?parseInt(_0xcb3380[0x0]['rank'],0xa)-0x1:null),Promise['resolve'](null);else{const _0x974bc3=await _0x4898d5['pgClient']['query'](_0x289899,_0x5bdfab);return _0x974bc3['rows'][0x0]?.['rank']?parseInt(_0x974bc3['rows'][0x0]['rank'],0xa)>0x0?parseInt(_0x974bc3['rows'][0x0]['rank'],0xa)-0x1:null:null;}},'_zrank'(_0x96c6e,_0x27a3d3){const _0x30bf4e=_0x4898d5['tableForKey'](_0x96c6e,'sorted_set'),_0x5628cd='\x0a\x20\x20\x20\x20\x20\x20WITH\x20member_score\x20AS\x20(\x0a\x20\x20\x20\x20\x20\x20\x20\x20SELECT\x20score\x20FROM\x20'+_0x30bf4e+'\x0a\x20\x20\x20\x20\x20\x20\x20\x20WHERE\x20key\x20=\x20$1\x20AND\x20member\x20=\x20$2\x20AND\x20(expiry\x20IS\x20NULL\x20OR\x20expiry\x20>\x20NOW())\x0a\x20\x20\x20\x20\x20\x20)\x0a\x20\x20\x20\x20\x20\x20SELECT\x20COUNT(*)\x20AS\x20rank\x20FROM\x20'+_0x30bf4e+'\x20ms,\x20member_score\x0a\x20\x20\x20\x20\x20\x20WHERE\x20ms.key\x20=\x20$1\x20AND\x20(expiry\x20IS\x20NULL\x20OR\x20expiry\x20>\x20NOW())\x0a\x20\x20\x20\x20\x20\x20AND\x20(ms.score\x20<\x20member_score.score\x20OR\x20(ms.score\x20=\x20member_score.score\x20AND\x20ms.member\x20<\x20$2))\x0a\x20\x20\x20\x20',_0x111e3e=[_0x96c6e,_0x27a3d3];return{'sql':_0x5628cd,'params':_0x111e3e};}});function _0x3784(_0x12c2ce,_0x515f3e){const _0x5ade42=_0x5ade();return _0x3784=function(_0x37842d,_0x3a011f){_0x37842d=_0x37842d-0xf7;let _0x3905e6=_0x5ade42[_0x37842d];return _0x3905e6;},_0x3784(_0x12c2ce,_0x515f3e);}function _0x5ade(){const _0x1e8612=['501rmkzDT','396GFMqho','397104PRXnbP','934814KuXFwO','5Ohaxfo','15518580RJxxTD','36QybtpM','20518DQHkSB','137168tdqKvv','2489047vOKUAr','6092096flFXFE','168VkwIpi'];_0x5ade=function(){return _0x1e8612;};return _0x5ade();}exports['zsetModule']=zsetModule;