@hotmeshio/hotmesh 0.3.11 → 0.3.12
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.
- package/README.md +6 -8
- package/build/modules/key.js +1 -1
- package/build/modules/utils.js +1 -1
- package/build/package.json +4 -4
- package/build/services/activities/activity.js +1 -1
- package/build/services/activities/await.js +1 -1
- package/build/services/activities/cycle.js +1 -1
- package/build/services/activities/hook.js +1 -1
- package/build/services/activities/index.js +1 -1
- package/build/services/activities/interrupt.js +1 -1
- package/build/services/activities/signal.js +1 -1
- package/build/services/activities/trigger.js +1 -1
- package/build/services/activities/worker.js +1 -1
- package/build/services/collator/index.js +1 -1
- package/build/services/compiler/deployer.js +1 -1
- package/build/services/compiler/index.js +1 -1
- package/build/services/compiler/validator.js +1 -1
- package/build/services/engine/index.js +1 -1
- package/build/services/exporter/index.js +1 -1
- package/build/services/mapper/index.js +1 -1
- package/build/services/meshdata/index.d.ts +4 -3
- package/build/services/meshdata/index.js +3 -2
- package/build/services/meshflow/client.d.ts +1 -0
- package/build/services/meshflow/client.js +18 -6
- package/build/services/meshflow/connection.d.ts +2 -2
- package/build/services/meshflow/connection.js +1 -1
- package/build/services/meshflow/exporter.js +1 -1
- package/build/services/meshflow/worker.d.ts +2 -1
- package/build/services/meshflow/worker.js +27 -16
- package/build/services/meshos/index.d.ts +2 -1
- package/build/services/meshos/index.js +7 -4
- package/build/services/pipe/functions/array.js +1 -1
- package/build/services/pipe/functions/bitwise.js +1 -1
- package/build/services/pipe/functions/conditional.js +1 -1
- package/build/services/pipe/functions/cron.js +1 -1
- package/build/services/pipe/functions/date.js +1 -1
- package/build/services/pipe/functions/index.js +1 -1
- package/build/services/pipe/functions/json.js +1 -1
- package/build/services/pipe/functions/logical.js +1 -1
- package/build/services/pipe/functions/math.js +1 -1
- package/build/services/pipe/functions/number.js +1 -1
- package/build/services/pipe/functions/object.js +1 -1
- package/build/services/pipe/functions/string.js +1 -1
- package/build/services/pipe/functions/symbol.js +1 -1
- package/build/services/pipe/functions/unary.js +1 -1
- package/build/services/pipe/index.js +1 -1
- package/build/services/quorum/index.js +1 -1
- package/build/services/reporter/index.js +1 -1
- package/build/services/router/index.js +1 -1
- package/build/services/search/factory.d.ts +2 -2
- package/build/services/search/factory.js +8 -4
- package/build/services/search/providers/postgres/postgres.d.ts +21 -0
- package/build/services/search/providers/postgres/postgres.js +1 -0
- package/build/services/search/providers/redis/ioredis.js +1 -1
- package/build/services/search/providers/redis/redis.js +1 -1
- package/build/services/serializer/index.js +1 -1
- package/build/services/store/providers/postgres/kvsql.d.ts +2 -1
- package/build/services/store/providers/postgres/kvsql.js +1 -1
- package/build/services/store/providers/postgres/postgres.d.ts +1 -1
- package/build/services/store/providers/postgres/postgres.js +1 -1
- package/build/services/store/providers/redis/_base.js +1 -1
- package/build/services/store/providers/redis/ioredis.js +1 -1
- package/build/services/store/providers/redis/redis.js +1 -1
- package/build/services/store/providers/store-initializable.js +1 -1
- package/build/services/stream/providers/nats/nats.js +1 -1
- package/build/services/stream/providers/postgres/postgres.js +1 -1
- package/build/services/stream/providers/redis/ioredis.js +1 -1
- package/build/services/stream/providers/redis/redis.js +1 -1
- package/build/services/stream/providers/stream-initializable.js +1 -1
- package/build/services/sub/providers/redis/ioredis.js +1 -1
- package/build/services/sub/providers/redis/redis.js +1 -1
- package/build/services/task/index.js +1 -1
- package/build/services/telemetry/index.js +1 -1
- package/build/services/worker/index.js +1 -1
- package/build/types/manifest.d.ts +12 -3
- package/build/types/meshflow.d.ts +2 -2
- package/build/types/postgres.d.ts +1 -0
- package/build/types/provider.d.ts +7 -0
- package/package.json +4 -4
- package/types/manifest.ts +12 -3
- package/types/meshflow.ts +2 -2
- package/types/postgres.ts +2 -0
- package/types/provider.ts +7 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
'use strict';(function(_0x50db43,_0x44baaa){const _0x11b4d0=_0x5854,_0x11dcbf=_0x50db43();while(!![]){try{const _0x2337fc=parseInt(_0x11b4d0(0x1c2))/0x1+-parseInt(_0x11b4d0(0x1c6))/0x2*(parseInt(_0x11b4d0(0x1c8))/0x3)+parseInt(_0x11b4d0(0x1cc))/0x4*(-parseInt(_0x11b4d0(0x1ca))/0x5)+parseInt(_0x11b4d0(0x1c3))/0x6*(parseInt(_0x11b4d0(0x1cb))/0x7)+-parseInt(_0x11b4d0(0x1c7))/0x8+-parseInt(_0x11b4d0(0x1c4))/0x9*(-parseInt(_0x11b4d0(0x1c9))/0xa)+parseInt(_0x11b4d0(0x1cd))/0xb*(-parseInt(_0x11b4d0(0x1c5))/0xc);if(_0x2337fc===_0x44baaa)break;else _0x11dcbf['push'](_0x11dcbf['shift']());}catch(_0x1e0c38){_0x11dcbf['push'](_0x11dcbf['shift']());}}}(_0x404c,0x522c1));var __importDefault=this&&this['__importDefault']||function(_0x211b88){return _0x211b88&&_0x211b88['__esModule']?_0x211b88:{'default':_0x211b88};};function _0x404c(){const _0x49458f=['572598CTJQqX','75792mTpHzY','4113ZWjSOS','333852LsdhPD','10NcQHED','3138416EbuQvA','25170hEmfae','6130cWnNDW','5qapyRC','217iUnLEQ','669884tPjTmj','121KsqAav'];_0x404c=function(){return _0x49458f;};return _0x404c();}Object['defineProperty'](exports,'__esModule',{'value':!![]}),exports['KVSQL']=void 0x0;const pg_format_1=__importDefault(require('pg-format')),key_1=require('../../../../modules/key');function formatSqlCommand(_0x3227ff,_0x115103){const _0xd46308=[],_0x3ceb53=_0x3227ff['replace'](/\$(\d+)/g,(_0x4d3438,_0x1be6f3)=>{const _0x206b36=parseInt(_0x1be6f3,0xa)-0x1,_0x2775fc=_0x115103[_0x206b36];if(_0x2775fc===null||_0x2775fc===undefined)return'NULL';let _0x341b6a;if(typeof _0x2775fc==='number')_0x341b6a='%s';else{if(typeof _0x2775fc==='string')_0x341b6a='%L';else typeof _0x2775fc==='boolean'?_0x341b6a='%L':_0x341b6a='%L';}return _0xd46308['push'](_0x2775fc),_0x341b6a;});return(0x0,pg_format_1['default'])(_0x3ceb53,..._0xd46308);}class Multi{constructor(_0x4446f0){this['kvsql']=_0x4446f0,this['commands']=[];}['addCommand'](_0x52569a,_0x36047f,_0x546205,_0x10a74e){return this['commands']['push']({'sql':_0x52569a,'params':_0x36047f,'returnType':_0x546205,'transform':_0x10a74e}),this;}['set'](_0x39b987,_0x48a1e0,_0x14ec40){const {sql:_0x5f5480,params:_0x274988}=this['kvsql']['_set'](_0x39b987,_0x48a1e0,_0x14ec40);return this['addCommand'](_0x5f5480,_0x274988,'boolean');}['setnx'](_0x4e768e,_0x270cfc){const {sql:_0x5f3c4d,params:_0x4c0b5b}=this['kvsql']['_set'](_0x4e768e,_0x270cfc,{'nx':!![]});return this['addCommand'](_0x5f3c4d,_0x4c0b5b,'boolean');}['setnxex'](_0x2b3ac9,_0x59114e,_0x545676){const {sql:_0x4afef3,params:_0x26b49f}=this['kvsql']['_set'](_0x2b3ac9,_0x59114e,{'nx':!![],'ex':_0x545676});return this['addCommand'](_0x4afef3,_0x26b49f,'boolean');}['get'](_0x53db3c){const {sql:_0x2378cc,params:_0x1818c8}=this['kvsql']['_get'](_0x53db3c);return this['addCommand'](_0x2378cc,_0x1818c8,'string');}['del'](_0x53e484){const {sql:_0x3cafe5,params:_0x5095a3}=this['kvsql']['_del'](_0x53e484);return this['addCommand'](_0x3cafe5,_0x5095a3,'number');}['expire'](_0x2712fd,_0x30cb74){const {sql:_0x1687bb,params:_0x22af3e}=this['kvsql']['_expire'](_0x2712fd,_0x30cb74);return this['addCommand'](_0x1687bb,_0x22af3e,'boolean');}['hset'](_0x468483,_0x3ec93b,_0x54d3ed){const {sql:_0xc5b92,params:_0xb3a23f}=this['kvsql']['_hset'](_0x468483,_0x3ec93b,_0x54d3ed);return this['addCommand'](_0xc5b92,_0xb3a23f,'number');}['hget'](_0x343435,_0x5bd2ea){const {sql:_0x49c97e,params:_0x476cf3}=this['kvsql']['_hget'](_0x343435,_0x5bd2ea);return this['addCommand'](_0x49c97e,_0x476cf3,'string');}['hdel'](_0x31e63b,_0x292afc){const {sql:_0x512b7a,params:_0x5e0d19}=this['kvsql']['_hdel'](_0x31e63b,_0x292afc);return this['addCommand'](_0x512b7a,_0x5e0d19,'number');}['hmget'](_0x10e4d9,_0x1a7527){const {sql:_0x489e64,params:_0x88472d}=this['kvsql']['_hmget'](_0x10e4d9,_0x1a7527),_0x4bd60d=_0x219ef5=>{const _0x3bdbe2=new Map(_0x219ef5['map'](_0x2047a6=>[_0x2047a6['field'],_0x2047a6['value']]));return _0x1a7527['map'](_0x5ad47b=>_0x3bdbe2['get'](_0x5ad47b)||null);};return this['addCommand'](_0x489e64,_0x88472d,'array',_0x4bd60d);}['hgetall'](_0x3a894f){const {sql:_0x45248a,params:_0x318899}=this['kvsql']['_hgetall'](_0x3a894f),_0x42611a=_0x4772aa=>{const _0x4bbfa8={};for(const _0x391e32 of _0x4772aa){_0x4bbfa8[_0x391e32['field']]=_0x391e32['value'];}return _0x4bbfa8;};return this['addCommand'](_0x45248a,_0x318899,'object',_0x42611a);}['hincrbyfloat'](_0x4bdad5,_0x5bed53,_0x4d77bf){const {sql:_0x1fb063,params:_0x158174}=this['kvsql']['_hincrbyfloat'](_0x4bdad5,_0x5bed53,_0x4d77bf);return this['addCommand'](_0x1fb063,_0x158174,'number',_0x2fa740=>parseFloat(_0x2fa740[0x0]['value']));}['hscan'](_0x15cf91,_0x3f20e3,_0x1ae646=0xa){const {sql:_0x51ad41,params:_0x1e45ed}=this['kvsql']['_hscan'](_0x15cf91,_0x3f20e3,_0x1ae646),_0x10c787=_0x50e553=>{const _0x3828c6={};for(const _0x348983 of _0x50e553){_0x3828c6[_0x348983['field']]=_0x348983['value'];}const _0x5eb0b0=_0x3f20e3+_0x50e553['length'];return{'cursor':_0x5eb0b0['toString'](),'items':_0x3828c6};};return this['addCommand'](_0x51ad41,_0x1e45ed,'object',_0x10c787);}['lrange'](_0xd6b55a,_0x489edc,_0x478a1e){const {sql:_0x416071,params:_0x445011}=this['kvsql']['_lrange'](_0xd6b55a,_0x489edc,_0x478a1e);return this['addCommand'](_0x416071,_0x445011,'array',_0x1534ee=>_0x1534ee['map'](_0x125085=>_0x125085['value']));}['rpush'](_0x3de951,_0x4a38c1){const {sql:_0x2f1bc6,params:_0x250903}=this['kvsql']['_rpush'](_0x3de951,_0x4a38c1);return this['addCommand'](_0x2f1bc6,_0x250903,'number',_0x35c553=>_0x35c553[0x0]?.['count']||0x0);}['lpush'](_0x196503,_0x167289){const {sql:_0x9e1948,params:_0x520590}=this['kvsql']['_lpush'](_0x196503,_0x167289);return this['addCommand'](_0x9e1948,_0x520590,'number',_0xa3f4a0=>_0xa3f4a0[0x0]?.['count']||0x0);}['lpop'](_0x275f5d){const {sql:_0x9cb523,params:_0x54b27c}=this['kvsql']['_lpop'](_0x275f5d);return this['addCommand'](_0x9cb523,_0x54b27c,'string');}['lmove'](_0x399c95,_0x350e8c,_0x316bee,_0x28ad4e){const {sql:_0xae28f9,params:_0x1bd459}=this['kvsql']['_lmove'](_0x399c95,_0x350e8c,_0x316bee,_0x28ad4e);return this['addCommand'](_0xae28f9,_0x1bd459,'string');}['zadd'](_0x4db57a,_0x400c87,_0x395deb,_0x4addae){const {sql:_0x3037a5,params:_0x32920b}=this['kvsql']['_zadd'](_0x4db57a,_0x400c87,_0x395deb,_0x4addae);return this['addCommand'](_0x3037a5,_0x32920b,'number',_0x40a3ae=>_0x40a3ae[0x0]?.['count']||0x0);}['zrange'](_0x2dab66,_0x2a1c47,_0x10bec9){const {sql:_0x5be41e,params:_0x4e6239}=this['kvsql']['_zrange'](_0x2dab66,_0x2a1c47,_0x10bec9);return this['addCommand'](_0x5be41e,_0x4e6239,'array',_0x3ad716=>_0x3ad716['map'](_0xb97b99=>_0xb97b99['member']));}['zrangebyscore'](_0x541a58,_0x156ef9,_0x30d01f){const {sql:_0x92407d,params:_0x3afe01}=this['kvsql']['_zrangebyscore'](_0x541a58,_0x156ef9,_0x30d01f);return this['addCommand'](_0x92407d,_0x3afe01,'array',_0x4bffe4=>_0x4bffe4['map'](_0x28459f=>_0x28459f['member']));}['zrangebyscore_withscores'](_0x44fed9,_0x40b06c,_0x177253){const {sql:_0x1cad42,params:_0x464da0}=this['kvsql']['_zrangebyscore_withscores'](_0x44fed9,_0x40b06c,_0x177253);return this['addCommand'](_0x1cad42,_0x464da0,'array',_0x2a52fb=>_0x2a52fb['map'](_0x5b8b3c=>({'member':_0x5b8b3c['member'],'score':_0x5b8b3c['score']})));}['zrem'](_0x28c29,_0x51ac49){const {sql:_0x3a9f43,params:_0x3502ca}=this['kvsql']['_zrem'](_0x28c29,_0x51ac49);return this['addCommand'](_0x3a9f43,_0x3502ca,'number',_0x42e472=>_0x42e472[0x0]?.['count']||0x0);}['zrank'](_0x161853,_0x437260){const {sql:_0x3a24ae,params:_0x30fc60}=this['kvsql']['_zrank'](_0x161853,_0x437260);return this['addCommand'](_0x3a24ae,_0x30fc60,'number',_0x2ccc0b=>_0x2ccc0b[0x0]?.['rank']!==undefined?parseInt(_0x2ccc0b[0x0]['rank'],0xa)-0x1:null);}['scan'](_0x425190,_0x2e0217=0xa){const {sql:_0x17cdec,params:_0x4ab808}=this['kvsql']['_scan'](_0x425190,_0x2e0217),_0x54cd8f=_0x51afdd=>{const _0x323fb9=_0x51afdd['map'](_0x1485b7=>_0x1485b7['key']),_0x2484d7=_0x425190+_0x51afdd['length'];return{'cursor':_0x2484d7,'keys':_0x323fb9};};return this['addCommand'](_0x17cdec,_0x4ab808,'object',_0x54cd8f);}['rename'](_0x32b8f6,_0x45efde){const {sql:_0x48e57e,params:_0x524318}=this['kvsql']['_rename'](_0x32b8f6,_0x45efde);return this['addCommand'](_0x48e57e,_0x524318,'void');}async['exec'](){const _0x4c09f6=this['kvsql']['pgClient'];try{await _0x4c09f6['query']('BEGIN');const _0x17bcd3=[],_0x4b7520=[];for(const _0x23f7ae of this['commands']){const _0x5b77d3=formatSqlCommand(_0x23f7ae['sql'],_0x23f7ae['params']);_0x17bcd3['push'](_0x5b77d3);}const _0x5648f0=_0x17bcd3['join'](';\x0a'),_0x52e8ac=await _0x4c09f6['query'](_0x5648f0),_0x5cfadc=Array['isArray'](_0x52e8ac)?_0x52e8ac:[_0x52e8ac];let _0x4290a5=0x0;for(const _0x166d9e of this['commands']){const _0x2008f1=_0x5cfadc[_0x4290a5++],_0x1040e9=_0x2008f1?.['rows']||[];let _0x213a85;if(_0x166d9e['transform'])_0x213a85=_0x166d9e['transform'](_0x1040e9);else switch(_0x166d9e['returnType']){case'string':_0x213a85=_0x1040e9[0x0]?.['value']||null;break;case'number':_0x213a85=_0x1040e9[0x0]?.['count']||0x0;break;case'boolean':_0x213a85=_0x1040e9[0x0]?.['success']??_0x1040e9['length']>0x0;break;case'array':_0x213a85=_0x1040e9['map'](_0x2f81df=>_0x2f81df['value']);break;case'object':_0x213a85=_0x1040e9[0x0]||{};break;default:_0x213a85=_0x1040e9;}_0x4b7520['push'](_0x213a85);}return await _0x4c09f6['query']('COMMIT'),_0x4b7520;}catch(_0x585d2d){await _0x4c09f6['query']('ROLLBACK');throw _0x585d2d;}}}function _0x5854(_0xf7d82,_0x5beec1){const _0x404c34=_0x404c();return _0x5854=function(_0x5854e8,_0xd91c4a){_0x5854e8=_0x5854e8-0x1c2;let _0x16e423=_0x404c34[_0x5854e8];return _0x16e423;},_0x5854(_0xf7d82,_0x5beec1);}class KVSQL{constructor(_0x18903c,_0x1a7d99,_0x5f23b8){this['pgClient']=_0x18903c,this['namespace']=_0x1a7d99,this['appId']=_0x5f23b8;}['getMulti'](){return new Multi(this);}['transact'](){return new Multi(this);}['exec'](..._0x3d1879){return Promise['resolve']([]);}['mintKey'](_0x128a28,_0x564bcd){return'';}['tableForKey'](_0x463b9a,_0x4743d8){if(_0x463b9a===key_1['HMNS'])return'hotmesh_connections';const [_0x2a9e58,_0x17dc91,_0x201b36,..._0x498e1a]=_0x463b9a['split'](':');if(_0x17dc91==='a')return'hotmesh_applications';const _0x105ff3=_0x498e1a?.['length']?_0x498e1a['join'](':'):'',_0x2974bd=key_1['KeyService']['resolveEntityType'](_0x201b36,_0x105ff3);if(this['safeName'](this['appId'])!==this['safeName'](_0x17dc91))throw new Error('App\x20ID\x20mismatch:\x20'+this['appId']+'\x20!==\x20'+_0x17dc91);if(_0x2974bd==='stats'){if(_0x4743d8==='sorted_set')return'hotmesh_'+this['safeName'](_0x17dc91)+'_stats_ordered';else{if(_0x4743d8==='list')return'hotmesh_'+this['safeName'](_0x17dc91)+'_stats_indexed';else{if(_0x4743d8==='hash')return'hotmesh_'+this['safeName'](_0x17dc91)+'_stats_counted';else throw new Error('Unknown\x20stats\x20type\x20['+_0x4743d8+']\x20for\x20key\x20['+_0x463b9a+']');}}}if(_0x2974bd==='unknown_entity')throw new Error('Unknown\x20entity\x20type\x20abbreviation:\x20'+_0x201b36);else return _0x2974bd==='applications'?'hotmesh_applications':'hotmesh_'+this['safeName'](_0x17dc91)+'_'+_0x2974bd;}['reconstituteKey'](_0x25f4e9,_0x527fd3){const _0x40d03f=key_1['KeyService']['resolveAbbreviation'](_0x25f4e9);return key_1['KeyService']['reconstituteKey']({'namespace':this['namespace'],'app':this['appId'],'entity':_0x40d03f,'id':_0x527fd3});}['safeName'](_0x4e13f7,_0x42101b=''){if(!_0x4e13f7)return'connections';let _0x3627a2=_0x4e13f7['trim']()['toLowerCase']();return _0x3627a2=_0x3627a2['replace'](/[^a-z0-9]+/g,'_'),_0x42101b&&(_0x3627a2=_0x42101b+'_'+_0x3627a2),_0x3627a2['length']>0x3f&&(_0x3627a2=_0x3627a2['slice'](0x0,0x3f)),_0x3627a2=_0x3627a2['replace'](/_+$/g,''),!_0x3627a2&&(_0x3627a2='connections'),_0x3627a2;}async['get'](_0x432674,_0x4af794){const {sql:_0x14d7d7,params:_0x12570b}=this['_get'](_0x432674);if(_0x4af794)return _0x4af794['addCommand'](_0x14d7d7,_0x12570b,'string'),Promise['resolve'](null);else{const _0x394152=await this['pgClient']['query'](_0x14d7d7,_0x12570b);return _0x394152['rows'][0x0]?.['value']||null;}}['_get'](_0xf05868){const _0x37cfc2=this['tableForKey'](_0xf05868),_0x297611='\x0a\x20\x20\x20\x20\x20\x20SELECT\x20value\x20FROM\x20'+_0x37cfc2+'\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',_0x3fff3d=[_0xf05868];return{'sql':_0x297611,'params':_0x3fff3d};}async['setnx'](_0x211c2d,_0x3fc7c4,_0x1b7caf){const {sql:_0x385138,params:_0x2ec8b3}=this['_set'](_0x211c2d,_0x3fc7c4,{'nx':!![]});if(_0x1b7caf)return _0x1b7caf['addCommand'](_0x385138,_0x2ec8b3,'boolean'),Promise['resolve'](!![]);else{const _0x15fb5b=await this['pgClient']['query'](_0x385138,_0x2ec8b3);return _0x15fb5b['rowCount']>0x0;}}async['setnxex'](_0x292edf,_0x260877,_0x3986f6,_0x552213){const {sql:_0x3816ac,params:_0x516b97}=this['_set'](_0x292edf,_0x260877,{'nx':!![],'ex':_0x3986f6});if(_0x552213)return _0x552213['addCommand'](_0x3816ac,_0x516b97,'boolean'),Promise['resolve'](!![]);else{const _0x4ab3ea=await this['pgClient']['query'](_0x3816ac,_0x516b97);return _0x4ab3ea['rowCount']>0x0;}}async['set'](_0x75a84,_0x157ca7,_0x29a45c,_0x3a29ba){const {sql:_0x1f3b4f,params:_0x1db708}=this['_set'](_0x75a84,_0x157ca7,_0x29a45c);if(_0x3a29ba)return _0x3a29ba['addCommand'](_0x1f3b4f,_0x1db708,'boolean'),Promise['resolve'](!![]);else{const _0x3bc5cd=await this['pgClient']['query'](_0x1f3b4f,_0x1db708);return _0x3bc5cd['rowCount']>0x0;}}['_set'](_0x112cd2,_0x4e1479,_0x584c94){const _0xebd6e2=this['tableForKey'](_0x112cd2);let _0x56cac6='';const _0x576c7f=[_0x112cd2,_0x4e1479];let _0x5317a7='';return _0x584c94?.['ex']&&(_0x5317a7=',\x20expiry\x20=\x20NOW()\x20+\x20INTERVAL\x20\x27'+_0x584c94['ex']+'\x20seconds\x27'),_0x584c94?.['nx']?_0x56cac6='\x0a\x20\x20\x20\x20\x20\x20\x20\x20INSERT\x20INTO\x20'+_0xebd6e2+'\x20(key,\x20value'+(_0x5317a7?',\x20expiry':'')+')\x0a\x20\x20\x20\x20\x20\x20\x20\x20VALUES\x20($1,\x20$2'+(_0x5317a7?',\x20NOW()\x20+\x20INTERVAL\x20\x27'+_0x584c94['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':_0x56cac6='\x0a\x20\x20\x20\x20\x20\x20\x20\x20INSERT\x20INTO\x20'+_0xebd6e2+'\x20(key,\x20value'+(_0x5317a7?',\x20expiry':'')+')\x0a\x20\x20\x20\x20\x20\x20\x20\x20VALUES\x20($1,\x20$2'+(_0x5317a7?',\x20NOW()\x20+\x20INTERVAL\x20\x27'+_0x584c94['ex']+'\x20seconds\x27':'')+')\x0a\x20\x20\x20\x20\x20\x20\x20\x20ON\x20CONFLICT\x20(key)\x20DO\x20UPDATE\x20SET\x20value\x20=\x20EXCLUDED.value'+_0x5317a7+'\x0a\x20\x20\x20\x20\x20\x20\x20\x20RETURNING\x20true\x20as\x20success\x0a\x20\x20\x20\x20\x20\x20',{'sql':_0x56cac6,'params':_0x576c7f};}async['del'](_0x318278,_0x1d0511){const {sql:_0xf07064,params:_0xca211e}=this['_del'](_0x318278);if(_0x1d0511)return _0x1d0511['addCommand'](_0xf07064,_0xca211e,'number'),Promise['resolve'](0x0);else{const _0x15405f=await this['pgClient']['query'](_0xf07064,_0xca211e);return Number(_0x15405f['rows'][0x0]?.['count']||0x0);}}['_del'](_0x38d23d){const _0xefbbf2=this['tableForKey'](_0x38d23d),_0x426a53='\x0a\x20\x20\x20\x20\x20\x20WITH\x20deleted\x20AS\x20(\x0a\x20\x20\x20\x20\x20\x20\x20\x20DELETE\x20FROM\x20'+_0xefbbf2+'\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',_0x28b3bd=[_0x38d23d];return{'sql':_0x426a53,'params':_0x28b3bd};}async['expire'](_0x1a5c0f,_0x2cde7c,_0x2413dd){const {sql:_0x31f08b,params:_0x1eafbc}=this['_expire'](_0x1a5c0f,_0x2cde7c);if(_0x2413dd)return _0x2413dd['addCommand'](_0x31f08b,_0x1eafbc,'boolean'),Promise['resolve'](!![]);else{const _0x5a6bf4=await this['pgClient']['query'](_0x31f08b,_0x1eafbc);return _0x5a6bf4['rowCount']>0x0;}}['_expire'](_0x50ea38,_0x2c4e4f){const _0xbd8c55=this['tableForKey'](_0x50ea38),_0x1c7d89=new Date(Date['now']()+_0x2c4e4f*0x3e8),_0x5df277='\x0a\x20\x20\x20\x20\x20\x20UPDATE\x20'+_0xbd8c55+'\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',_0x4353b5=[_0x50ea38,_0x1c7d89];return{'sql':_0x5df277,'params':_0x4353b5};}async['hsetnx'](_0x1d1ac4,_0x3486ef,_0x5e9935,_0x351942){const {sql:_0x32a4f3,params:_0x574eab}=this['_hset'](_0x1d1ac4,{[_0x3486ef]:_0x5e9935},{'nx':!![]});if(_0x351942)return _0x351942['addCommand'](_0x32a4f3,_0x574eab,'number'),Promise['resolve'](0x0);else{const _0x2fd95f=await this['pgClient']['query'](_0x32a4f3,_0x574eab);return _0x2fd95f['rowCount'];}}async['hset'](_0xea176,_0x1714f1,_0x43d0ff,_0x5ad1c3){const {sql:_0x3c4d05,params:_0x4bafbe}=this['_hset'](_0xea176,_0x1714f1,_0x43d0ff);if(_0x5ad1c3)return _0x5ad1c3['addCommand'](_0x3c4d05,_0x4bafbe,'number'),Promise['resolve'](0x0);else{const _0x473616=await this['pgClient']['query'](_0x3c4d05,_0x4bafbe);return _0x473616['rowCount'];}}['_hset'](_0x5aad6b,_0x58ebe0,_0x5d259b){let _0x725849='';const _0x51ff86=[_0x5aad6b],_0x4454c8=this['tableForKey'](_0x5aad6b,'hash'),_0x470698=Object['entries'](_0x58ebe0);_0x470698['forEach'](([_0x22c82f,_0x5aa31e],_0x6f023a)=>{_0x51ff86['push'](_0x22c82f,_0x5aa31e);});const _0x339357=_0x470698['map']((_0x40d57c,_0x269ddf)=>'($1,\x20$'+(0x2+_0x269ddf*0x2)+',\x20$'+(0x3+_0x269ddf*0x2)+')')['join'](',\x20');return _0x5d259b?.['nx']?_0x725849='\x0a\x20\x20\x20\x20\x20\x20\x20\x20INSERT\x20INTO\x20'+_0x4454c8+'\x20(key,\x20field,\x20value)\x0a\x20\x20\x20\x20\x20\x20\x20\x20VALUES\x20'+_0x339357+'\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':_0x725849='\x0a\x20\x20\x20\x20\x20\x20\x20\x20INSERT\x20INTO\x20'+_0x4454c8+'\x20(key,\x20field,\x20value)\x0a\x20\x20\x20\x20\x20\x20\x20\x20VALUES\x20'+_0x339357+'\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':_0x725849,'params':_0x51ff86};}async['hget'](_0x177fce,_0x39b81a,_0x2fa0c5){const {sql:_0x476f29,params:_0x110efb}=this['_hget'](_0x177fce,_0x39b81a);if(_0x2fa0c5)return _0x2fa0c5['addCommand'](_0x476f29,_0x110efb,'string'),Promise['resolve'](null);else{const _0x3d173e=await this['pgClient']['query'](_0x476f29,_0x110efb);return _0x3d173e['rows'][0x0]?.['value']||null;}}['_hget'](_0xccbecf,_0xffbef2){const _0x515905=this['tableForKey'](_0xccbecf,'hash'),_0x4fa4b2='\x0a\x20\x20\x20\x20\x20\x20SELECT\x20value\x20FROM\x20'+_0x515905+'\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',_0x136e44=[_0xccbecf,_0xffbef2];return{'sql':_0x4fa4b2,'params':_0x136e44};}async['hdel'](_0x1c27ef,_0x1e9c02,_0x37699f){!Array['isArray'](_0x1e9c02)&&(_0x1e9c02=[_0x1e9c02]);const {sql:_0x6239c,params:_0x2a9601}=this['_hdel'](_0x1c27ef,_0x1e9c02);if(_0x37699f)return _0x37699f['addCommand'](_0x6239c,_0x2a9601,'number'),Promise['resolve'](0x0);else{const _0xcbece4=await this['pgClient']['query'](_0x6239c,_0x2a9601);return Number(_0xcbece4['rows'][0x0]?.['count']||0x0);}}['_hdel'](_0x2c94c5,_0x45ce85){const _0x4ad086=this['tableForKey'](_0x2c94c5,'hash'),_0x1a9c0c=_0x45ce85['map']((_0xec7d8d,_0x8821c9)=>'$'+(_0x8821c9+0x2))['join'](',\x20'),_0x165119='\x0a\x20\x20\x20\x20\x20\x20WITH\x20deleted\x20AS\x20(\x0a\x20\x20\x20\x20\x20\x20\x20\x20DELETE\x20FROM\x20'+_0x4ad086+'\x0a\x20\x20\x20\x20\x20\x20\x20\x20WHERE\x20key\x20=\x20$1\x20AND\x20field\x20IN\x20('+_0x1a9c0c+')\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',_0x308b8e=[_0x2c94c5,..._0x45ce85];return{'sql':_0x165119,'params':_0x308b8e};}async['hmget'](_0x5a2bae,_0x2ea2f0,_0x239e0b){const {sql:_0x234191,params:_0x280ba9}=this['_hmget'](_0x5a2bae,_0x2ea2f0);if(_0x239e0b)return _0x239e0b['addCommand'](_0x234191,_0x280ba9,'array',_0x1c2389=>{const _0x195761=new Map(_0x1c2389['map'](_0x5318ad=>[_0x5318ad['field'],_0x5318ad['value']]));return _0x2ea2f0['map'](_0x1a2741=>_0x195761['get'](_0x1a2741)||null);}),Promise['resolve']([]);else{const _0x2f0f2e=await this['pgClient']['query'](_0x234191,_0x280ba9),_0x23aef6=new Map(_0x2f0f2e['rows']['map'](_0x5cf2b9=>[_0x5cf2b9['field'],_0x5cf2b9['value']]));return _0x2ea2f0['map'](_0x43bb4c=>_0x23aef6['get'](_0x43bb4c)||null);}}['_hmget'](_0x3ae438,_0x5bfae5){const _0x53f96a=this['tableForKey'](_0x3ae438,'hash'),_0x1b5780='\x0a\x20\x20\x20\x20\x20\x20SELECT\x20field,\x20value\x20FROM\x20'+_0x53f96a+'\x0a\x20\x20\x20\x20\x20\x20WHERE\x20key\x20=\x20$1\x20AND\x20field\x20=\x20ANY($2::text[])\x0a\x20\x20\x20\x20',_0x340ab9=[_0x3ae438,_0x5bfae5];return{'sql':_0x1b5780,'params':_0x340ab9};}async['hgetall'](_0x138528,_0x3f3335){const {sql:_0x4ce2ff,params:_0x51cbe6}=this['_hgetall'](_0x138528);if(_0x3f3335)return _0x3f3335['addCommand'](_0x4ce2ff,_0x51cbe6,'object',_0x3a583d=>{const _0x4de807={};for(const _0x1eaf38 of _0x3a583d){_0x4de807[_0x1eaf38['field']]=_0x1eaf38['value'];}return _0x4de807;}),Promise['resolve']({});else{const _0x45ab90=await this['pgClient']['query'](_0x4ce2ff,_0x51cbe6),_0x4fe579={};for(const _0x2e0af9 of _0x45ab90['rows']){_0x4fe579[_0x2e0af9['field']]=_0x2e0af9['value'];}return _0x4fe579;}}['_hgetall'](_0xdc3dd){const _0xfd8944=this['tableForKey'](_0xdc3dd,'hash'),_0x2f3bb4='\x0a\x20\x20\x20\x20\x20\x20SELECT\x20field,\x20value\x20FROM\x20'+_0xfd8944+'\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',_0x195705=[_0xdc3dd];return{'sql':_0x2f3bb4,'params':_0x195705};}async['hincrbyfloat'](_0x4d7a57,_0x4b2d92,_0x51fb70,_0x3d4a9b){const {sql:_0x10c09d,params:_0x42643e}=this['_hincrbyfloat'](_0x4d7a57,_0x4b2d92,_0x51fb70);if(_0x3d4a9b)return _0x3d4a9b['addCommand'](_0x10c09d,_0x42643e,'number',_0x2f06c9=>parseFloat(_0x2f06c9[0x0]['value'])),Promise['resolve'](0x0);else{const _0x133b6c=await this['pgClient']['query'](_0x10c09d,_0x42643e);return parseFloat(_0x133b6c['rows'][0x0]['value']);}}['_hincrbyfloat'](_0x236532,_0x3b0bea,_0x300dde){const _0x4d2c9e=this['tableForKey'](_0x236532,'hash'),_0x4211bb='\x0a\x20\x20\x20\x20\x20\x20INSERT\x20INTO\x20'+_0x4d2c9e+'\x20(key,\x20field,\x20value)\x0a\x20\x20\x20\x20\x20\x20VALUES\x20($1,\x20$2,\x20($3)::text)\x0a\x20\x20\x20\x20\x20\x20ON\x20CONFLICT\x20(key,\x20field)\x20DO\x20UPDATE\x20SET\x20value\x20=\x20('+_0x4d2c9e+'.value::double\x20precision\x20+\x20$3::double\x20precision)::text\x0a\x20\x20\x20\x20\x20\x20RETURNING\x20value\x0a\x20\x20\x20\x20',_0x10fe6a=[_0x236532,_0x3b0bea,_0x300dde];return{'sql':_0x4211bb,'params':_0x10fe6a};}async['hscan'](_0x5d718a,_0x5e5abf,_0x208d98=0xa,_0x575259,_0x5881f9){const {sql:_0x3a16b3,params:_0x308fea}=this['_hscan'](_0x5d718a,_0x5e5abf,_0x208d98,_0x575259);if(_0x5881f9)return _0x5881f9['addCommand'](_0x3a16b3,_0x308fea,'object',_0x49a71a=>{const _0x1925c6={};for(const _0x478aa5 of _0x49a71a){_0x1925c6[_0x478aa5['field']]=_0x478aa5['value'];}const _0xe50347=_0x49a71a['length']<_0x208d98?0x0:Number(_0x5e5abf)+_0x49a71a['length'];return{'cursor':_0xe50347['toString'](),'items':_0x1925c6};}),Promise['resolve']({'cursor':'0','items':{}});else{const _0x4a9d42=await this['pgClient']['query'](_0x3a16b3,_0x308fea),_0x1b6599={};for(const _0x529cc8 of _0x4a9d42['rows']){_0x1b6599[_0x529cc8['field']]=_0x529cc8['value'];}const _0x20a842=_0x4a9d42['rowCount']<_0x208d98?0x0:Number(_0x5e5abf)+_0x4a9d42['rowCount'];return{'cursor':_0x20a842['toString'](),'items':_0x1b6599};}}['_hscan'](_0x3f1d10,_0x110b11,_0x2bf1ec,_0x26941b){const _0x4cecd9=this['tableForKey'](_0x3f1d10,'hash'),_0x104854=[_0x3f1d10];let _0x52c072='\x0a\x20\x20\x20\x20\x20\x20SELECT\x20field,\x20value\x20FROM\x20'+_0x4cecd9+'\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',_0x52b6bc=0x2;if(_0x26941b){const _0x56ac5d=_0x26941b['replace'](/\*/g,'%');_0x52c072+='\x20AND\x20field\x20LIKE\x20$'+_0x52b6bc,_0x104854['push'](_0x56ac5d),_0x52b6bc++;}return _0x52c072+='\x0a\x20\x20\x20\x20\x20\x20ORDER\x20BY\x20field\x0a\x20\x20\x20\x20\x20\x20OFFSET\x20$'+_0x52b6bc+'\x20LIMIT\x20$'+(_0x52b6bc+0x1)+'\x0a\x20\x20\x20\x20',_0x104854['push'](_0x110b11['toString']()),_0x104854['push'](_0x2bf1ec['toString']()),{'sql':_0x52c072,'params':_0x104854};}async['lrange'](_0x3d4f72,_0x48ed1d,_0x729f35,_0x4b67da){const {sql:_0x1d0bd6,params:_0x47d5ab}=this['_lrange'](_0x3d4f72,_0x48ed1d,_0x729f35);if(_0x4b67da)return _0x4b67da['addCommand'](_0x1d0bd6,_0x47d5ab,'array',_0x2ca420=>_0x2ca420['map'](_0x24878b=>_0x24878b['value'])),Promise['resolve']([]);else{const _0x2f8386=await this['pgClient']['query'](_0x1d0bd6,_0x47d5ab);return _0x2f8386['rows']['map'](_0x307700=>_0x307700['value']);}}['_lrange'](_0x34c97f,_0x410b01,_0x4f33cf){const _0x5a9daa=this['tableForKey'](_0x34c97f,'list'),_0x5d8e3b='\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'+_0x5a9daa+'\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',_0x3d410a=[_0x34c97f,_0x410b01,_0x4f33cf];return{'sql':_0x5d8e3b,'params':_0x3d410a};}async['rpush'](_0x45e1a1,_0x5c6335,_0x34dae5){const {sql:_0x80b3fa,params:_0x501bb8}=this['_rpush'](_0x45e1a1,_0x5c6335);if(_0x34dae5)return _0x34dae5['addCommand'](_0x80b3fa,_0x501bb8,'number',_0x4f6512=>_0x4f6512[0x0]?.['count']||0x0),Promise['resolve'](0x0);else{const _0x286cf6=await this['pgClient']['query'](_0x80b3fa,_0x501bb8);return Number(_0x286cf6['rows'][0x0]?.['count']||0x0);}}['_rpush'](_0x474ae6,_0x36fecf){const _0x5390ba=this['tableForKey'](_0x474ae6,'list'),_0x267e7d=Array['isArray'](_0x36fecf)?_0x36fecf:[_0x36fecf],_0x5d7759=_0x267e7d['map']((_0x572172,_0x18fab5)=>'($1,\x20(SELECT\x20COALESCE(MAX(\x22index\x22),\x200)\x20+\x20'+(_0x18fab5+0x1)+'\x20FROM\x20'+_0x5390ba+'\x20WHERE\x20key\x20=\x20$1),\x20$'+(_0x18fab5+0x2)+')')['join'](',\x20'),_0x1efef6='\x0a\x20\x20\x20\x20\x20\x20WITH\x20inserted\x20AS\x20(\x0a\x20\x20\x20\x20\x20\x20\x20\x20INSERT\x20INTO\x20'+_0x5390ba+'\x20(key,\x20\x22index\x22,\x20value)\x0a\x20\x20\x20\x20\x20\x20\x20\x20VALUES\x20'+_0x5d7759+'\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',_0x2c0fe1=[_0x474ae6,..._0x267e7d];return{'sql':_0x1efef6,'params':_0x2c0fe1};}async['lpush'](_0x48db31,_0x465237,_0x35584c){const {sql:_0x20b8fc,params:_0x2ecb3f}=this['_lpush'](_0x48db31,_0x465237);if(_0x35584c)return _0x35584c['addCommand'](_0x20b8fc,_0x2ecb3f,'number',_0x17507a=>_0x17507a[0x0]?.['count']||0x0),Promise['resolve'](0x0);else{const _0x456810=await this['pgClient']['query'](_0x20b8fc,_0x2ecb3f);return Number(_0x456810['rows'][0x0]?.['count']||0x0);}}['_lpush'](_0x5ba0ff,_0x3a874f){const _0x30005d=this['tableForKey'](_0x5ba0ff,'list'),_0x3a0b7e=Array['isArray'](_0x3a874f)?_0x3a874f:[_0x3a874f],_0xbe00ef=_0x3a0b7e['map']((_0x38e3b8,_0x13da63)=>'($1,\x20(SELECT\x20COALESCE(MIN(\x22index\x22),\x200)\x20-\x20'+(_0x13da63+0x1)+'\x20FROM\x20'+_0x30005d+'\x20WHERE\x20key\x20=\x20$1),\x20$'+(_0x13da63+0x2)+')')['join'](',\x20'),_0x9e54ae='\x0a\x20\x20\x20\x20\x20\x20WITH\x20inserted\x20AS\x20(\x0a\x20\x20\x20\x20\x20\x20\x20\x20INSERT\x20INTO\x20'+_0x30005d+'\x20(key,\x20\x22index\x22,\x20value)\x0a\x20\x20\x20\x20\x20\x20\x20\x20VALUES\x20'+_0xbe00ef+'\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',_0x4dc423=[_0x5ba0ff,..._0x3a0b7e];return{'sql':_0x9e54ae,'params':_0x4dc423};}async['lpop'](_0xcab99a,_0x2f7306){const {sql:_0x4f9cb7,params:_0x255c5e}=this['_lpop'](_0xcab99a);if(_0x2f7306)return _0x2f7306['addCommand'](_0x4f9cb7,_0x255c5e,'string'),Promise['resolve'](null);else{const _0x1819e5=await this['pgClient']['query'](_0x4f9cb7,_0x255c5e);return _0x1819e5['rows'][0x0]?.['value']||null;}}['_lpop'](_0x476236){const _0xee5f19=this['tableForKey'](_0x476236,'list'),_0xca0130='\x0a\x20\x20\x20\x20\x20\x20DELETE\x20FROM\x20'+_0xee5f19+'\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'+_0xee5f19+'\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',_0x11fc65=[_0x476236];return{'sql':_0xca0130,'params':_0x11fc65};}async['lmove'](_0x1cc107,_0x487dc9,_0x41ea08,_0x320a17,_0x464816){const {sql:_0x22c783,params:_0x3f0375}=this['_lmove'](_0x1cc107,_0x487dc9,_0x41ea08,_0x320a17);if(_0x464816)return _0x464816['addCommand'](_0x22c783,_0x3f0375,'string'),Promise['resolve'](null);else{const _0x19d94f=this['pgClient'];try{await _0x19d94f['query']('BEGIN');const _0x4296aa=await _0x19d94f['query'](_0x22c783,_0x3f0375);return await _0x19d94f['query']('COMMIT'),_0x4296aa['rows'][0x0]?.['value']||null;}catch(_0x5d8058){await _0x19d94f['query']('ROLLBACK');throw _0x5d8058;}}}['_lmove'](_0x1c7cd9,_0x5ce648,_0x388cd3,_0x4367ec){const _0x5dc785=this['tableForKey'](_0x1c7cd9,'list'),_0x3d2e09=_0x388cd3==='LEFT'?'ASC':'DESC',_0x452dbe=_0x4367ec==='LEFT'?'(SELECT\x20COALESCE(MIN(\x22index\x22),\x200)\x20-\x201\x20FROM\x20'+_0x5dc785+'\x20WHERE\x20key\x20=\x20$2)':'(SELECT\x20COALESCE(MAX(\x22index\x22),\x200)\x20+\x201\x20FROM\x20'+_0x5dc785+'\x20WHERE\x20key\x20=\x20$2)',_0x1b6da7='\x0a\x20\x20\x20\x20\x20\x20WITH\x20moved\x20AS\x20(\x0a\x20\x20\x20\x20\x20\x20\x20\x20DELETE\x20FROM\x20'+_0x5dc785+'\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'+_0x5dc785+'\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'+_0x3d2e09+'\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'+_0x5dc785+'\x20(key,\x20\x22index\x22,\x20value)\x0a\x20\x20\x20\x20\x20\x20\x20\x20SELECT\x20$2,\x20'+_0x452dbe+',\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',_0xabc8e4=[_0x1c7cd9,_0x5ce648];return{'sql':_0x1b6da7,'params':_0xabc8e4};}async['zadd'](_0x1906e8,_0xe2bfc2,_0x4f432e,_0x3b8e26,_0x31f0ae){const {sql:_0x19225c,params:_0x2280f3}=this['_zadd'](_0x1906e8,_0xe2bfc2,_0x4f432e,_0x3b8e26);if(_0x31f0ae)return _0x31f0ae['addCommand'](_0x19225c,_0x2280f3,'number',_0x1d62e3=>_0x1d62e3[0x0]?.['count']||0x0),Promise['resolve'](0x0);else{const _0x1ecaf8=await this['pgClient']['query'](_0x19225c,_0x2280f3);return Number(_0x1ecaf8['rows'][0x0]?.['count']||0x0);}}['_zadd'](_0xa158f2,_0x59281b,_0x4c02ca,_0x151146){const _0x28c1b3=this['tableForKey'](_0xa158f2,'sorted_set');let _0x30ec58='';const _0x4cefb6=[_0xa158f2,_0x4c02ca,_0x59281b];return _0x151146?.['nx']?_0x30ec58='\x0a\x20\x20\x20\x20\x20\x20\x20\x20INSERT\x20INTO\x20'+_0x28c1b3+'\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':_0x30ec58='\x0a\x20\x20\x20\x20\x20\x20\x20\x20INSERT\x20INTO\x20'+_0x28c1b3+'\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':_0x30ec58,'params':_0x4cefb6};}async['zrange'](_0x30eda1,_0x2bc95a,_0x1d8282,_0x13f796,_0x401bd7){const {sql:_0x4bffc1,params:_0x3cfa31}=this['_zrange'](_0x30eda1,_0x2bc95a,_0x1d8282,_0x13f796);if(_0x401bd7)return _0x401bd7['addCommand'](_0x4bffc1,_0x3cfa31,'array',_0x42e37a=>{return _0x13f796==='WITHSCORES'?_0x42e37a['flatMap'](_0x2e1f53=>[_0x2e1f53['member'],_0x2e1f53['score']['toString']()]):_0x42e37a['map'](_0x1973f2=>_0x1973f2['member']);}),Promise['resolve']([]);else{const _0x55001c=await this['pgClient']['query'](_0x4bffc1,_0x3cfa31);return _0x13f796==='WITHSCORES'?_0x55001c['rows']['flatMap'](_0x11d28f=>[_0x11d28f['member'],_0x11d28f['score']['toString']()]):_0x55001c['rows']['map'](_0x4a0360=>_0x4a0360['member']);}}['_zrange'](_0x3016de,_0x5d45c5,_0x4a97d6,_0x2d1f2d){const _0x22bad4=this['tableForKey'](_0x3016de,'sorted_set'),_0x224e88=_0x2d1f2d==='WITHSCORES'?'member,\x20score':'member',_0x19b690='\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'+_0x22bad4+'\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'+_0x224e88+',\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'+_0x22bad4+'\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'+_0x224e88+'\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',_0x18015a=[_0x3016de,_0x5d45c5,_0x4a97d6];return{'sql':_0x19b690,'params':_0x18015a};}async['zscore'](_0x539464,_0x42cb28,_0x2f0a68){const {sql:_0xd48cb,params:_0x3cd7d5}=this['_zscore'](_0x539464,_0x42cb28);if(_0x2f0a68)return _0x2f0a68['addCommand'](_0xd48cb,_0x3cd7d5,'single',_0x3caf58=>{return _0x3caf58?parseFloat(_0x3caf58['score']):null;}),Promise['resolve'](null);else{const _0x46246f=await this['pgClient']['query'](_0xd48cb,_0x3cd7d5);return _0x46246f['rows']['length']?parseFloat(_0x46246f['rows'][0x0]['score']):null;}}['_zscore'](_0x8227b8,_0x5a3c31){const _0x4ae2b0=this['tableForKey'](_0x8227b8,'sorted_set'),_0x2c871a='\x0a\x20\x20\x20\x20\x20\x20SELECT\x20score\x0a\x20\x20\x20\x20\x20\x20FROM\x20'+_0x4ae2b0+'\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',_0x581fc8=[_0x8227b8,_0x5a3c31];return{'sql':_0x2c871a,'params':_0x581fc8};}async['zrangebyscore'](_0x633d01,_0x5d2703,_0x5e27cc,_0x315996){const {sql:_0x10a596,params:_0x4da9b6}=this['_zrangebyscore'](_0x633d01,_0x5d2703,_0x5e27cc);if(_0x315996)return _0x315996['addCommand'](_0x10a596,_0x4da9b6,'array',_0x169468=>_0x169468['map'](_0x44dd0a=>_0x44dd0a['member'])),Promise['resolve']([]);else{const _0x332367=await this['pgClient']['query'](_0x10a596,_0x4da9b6);return _0x332367['rows']['map'](_0x59bf7d=>_0x59bf7d['member']);}}['_zrangebyscore'](_0x1e5038,_0x18754b,_0x5ed304){const _0x3f2285=this['tableForKey'](_0x1e5038,'sorted_set'),_0x1a3416='\x0a\x20\x20\x20\x20\x20\x20SELECT\x20member\x20FROM\x20'+_0x3f2285+'\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',_0x3a275e=[_0x1e5038,_0x18754b,_0x5ed304];return{'sql':_0x1a3416,'params':_0x3a275e};}async['zrangebyscore_withscores'](_0x3336f2,_0x5b584a,_0x1031cf,_0x4ab1f0){const {sql:_0x25c28f,params:_0x465fb7}=this['_zrangebyscore_withscores'](_0x3336f2,_0x5b584a,_0x1031cf);if(_0x4ab1f0)return _0x4ab1f0['addCommand'](_0x25c28f,_0x465fb7,'array',_0x2a1e03=>_0x2a1e03['map'](_0x44cd54=>({'member':_0x44cd54['member'],'score':_0x44cd54['score']}))),Promise['resolve']([]);else{const _0x305c48=await this['pgClient']['query'](_0x25c28f,_0x465fb7);return _0x305c48['rows']['map'](_0x278c7c=>({'member':_0x278c7c['member'],'score':_0x278c7c['score']}));}}['_zrangebyscore_withscores'](_0x3e68ad,_0x53dafb,_0x21bd2b){const _0x2c054b=this['tableForKey'](_0x3e68ad,'sorted_set'),_0x4de5c7='\x0a\x20\x20\x20\x20\x20\x20SELECT\x20member,\x20score\x20FROM\x20'+_0x2c054b+'\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',_0xd0b7a0=[_0x3e68ad,_0x53dafb,_0x21bd2b];return{'sql':_0x4de5c7,'params':_0xd0b7a0};}async['zrem'](_0x5bb092,_0x51510,_0x311c43){const {sql:_0x2bdd2b,params:_0x1f4346}=this['_zrem'](_0x5bb092,_0x51510);if(_0x311c43)return _0x311c43['addCommand'](_0x2bdd2b,_0x1f4346,'number',_0x3f655d=>_0x3f655d[0x0]?.['count']||0x0),Promise['resolve'](0x0);else{const _0x1b1d68=await this['pgClient']['query'](_0x2bdd2b,_0x1f4346);return Number(_0x1b1d68['rows'][0x0]?.['count']||0x0);}}['_zrem'](_0x27fec7,_0x8ea6fb){const _0x42b60c=this['tableForKey'](_0x27fec7,'sorted_set'),_0x53ead2='\x0a\x20\x20\x20\x20\x20\x20WITH\x20deleted\x20AS\x20(\x0a\x20\x20\x20\x20\x20\x20\x20\x20DELETE\x20FROM\x20'+_0x42b60c+'\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',_0xec80eb=[_0x27fec7,_0x8ea6fb];return{'sql':_0x53ead2,'params':_0xec80eb};}async['zrank'](_0x393a58,_0x132a09,_0x4463fb){const {sql:_0x31cbcd,params:_0x1f15bc}=this['_zrank'](_0x393a58,_0x132a09);if(_0x4463fb)return _0x4463fb['addCommand'](_0x31cbcd,_0x1f15bc,'number',_0x46258e=>_0x46258e[0x0]?.['rank']!==undefined?parseInt(_0x46258e[0x0]['rank'],0xa)-0x1:null),Promise['resolve'](null);else{const _0x520d29=await this['pgClient']['query'](_0x31cbcd,_0x1f15bc);return _0x520d29['rows'][0x0]?.['rank']?parseInt(_0x520d29['rows'][0x0]['rank'],0xa)>0x0?parseInt(_0x520d29['rows'][0x0]['rank'],0xa)-0x1:null:null;}}['_zrank'](_0x543da4,_0x4dbb10){const _0x4cad65=this['tableForKey'](_0x543da4,'sorted_set'),_0x153f59='\x0a\x20\x20\x20\x20\x20\x20WITH\x20member_score\x20AS\x20(\x0a\x20\x20\x20\x20\x20\x20\x20\x20SELECT\x20score\x20FROM\x20'+_0x4cad65+'\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'+_0x4cad65+'\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',_0x48c637=[_0x543da4,_0x4dbb10];return{'sql':_0x153f59,'params':_0x48c637};}async['scan'](_0x4012c6,_0x5e439f=0xa,_0x42e8cc,_0x2458a8){const {sql:_0xff464f,params:_0x305dfe}=this['_scan'](_0x4012c6,_0x5e439f,_0x42e8cc);if(_0x2458a8)return _0x2458a8['addCommand'](_0xff464f,_0x305dfe,'object',_0x4d541b=>{const _0x1c4fb3=_0x4d541b['map'](_0x49241d=>_0x49241d['key']),_0x358f44=_0x4012c6+_0x4d541b['length'];return{'cursor':_0x358f44,'keys':_0x1c4fb3};}),Promise['resolve']({'cursor':0x0,'keys':[]});else{const _0x45ae52=await this['pgClient']['query'](_0xff464f,_0x305dfe),_0x3da3c4=_0x45ae52['rows']['map'](_0x2bac57=>_0x2bac57['key']),_0x365dc8=_0x4012c6+_0x45ae52['rowCount'];return{'cursor':_0x365dc8,'keys':_0x3da3c4};}}['_scan'](_0x27fcfd,_0x2ef95f,_0x52716a){const _0x6ac279=this['tableForKey']('_:'+this['appId']+':j:_');let _0x21e279='\x0a\x20\x20\x20\x20\x20\x20SELECT\x20key\x20FROM\x20'+_0x6ac279+'\x0a\x20\x20\x20\x20\x20\x20WHERE\x20(expiry\x20IS\x20NULL\x20OR\x20expiry\x20>\x20NOW())\x0a\x20\x20\x20\x20';const _0x4c9496=[];return _0x52716a&&(_0x21e279+='\x20AND\x20key\x20LIKE\x20$1',_0x4c9496['push'](_0x52716a['replace'](/\*/g,'%'))),_0x21e279+='\x0a\x20\x20\x20\x20\x20\x20ORDER\x20BY\x20key\x0a\x20\x20\x20\x20\x20\x20OFFSET\x20$'+(_0x4c9496['length']+0x1)+'\x20LIMIT\x20$'+(_0x4c9496['length']+0x2)+'\x0a\x20\x20\x20\x20',_0x4c9496['push'](_0x27fcfd['toString']()),_0x4c9496['push'](_0x2ef95f['toString']()),{'sql':_0x21e279,'params':_0x4c9496};}async['rename'](_0x50c7ff,_0x4a157c,_0x28e8fb){const {sql:_0x330ace,params:_0x787c22}=this['_rename'](_0x50c7ff,_0x4a157c);if(_0x28e8fb)return _0x28e8fb['addCommand'](_0x330ace,_0x787c22,'void'),Promise['resolve']();else{const _0x57664d=this['pgClient'];try{await _0x57664d['query']('BEGIN'),await _0x57664d['query'](_0x330ace,_0x787c22),await _0x57664d['query']('COMMIT');}catch(_0x469e5a){await _0x57664d['query']('ROLLBACK');throw _0x469e5a;}}}['_rename'](_0x8e95fe,_0x1e7080){const _0x179fa3=this['tableForKey'](_0x8e95fe,'list'),_0x5db4c9='\x0a\x20\x20\x20\x20\x20\x20UPDATE\x20'+_0x179fa3+'\x20SET\x20key\x20=\x20$2\x20WHERE\x20key\x20=\x20$1;\x0a\x20\x20\x20\x20',_0x1161f4=[_0x8e95fe,_0x1e7080];return{'sql':_0x5db4c9,'params':_0x1161f4};}async['exists'](_0xfa9756){const {sql:_0x547af2,params:_0x3a309a}=this['_exists'](_0xfa9756),_0x11aadf=await this['pgClient']['query'](_0x547af2,_0x3a309a);return _0x11aadf['rows']['length']?_0x11aadf['rows'][0x0]['table_name']:0x0;}['_exists'](_0xd2aa4c){const _0x31109f=this['tableForKey'](_0xd2aa4c),_0x503163='\x0a\x20\x20\x20\x20\x20\x20SELECT\x20FROM\x20'+_0x31109f+'\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',_0x4bfed4=[_0xd2aa4c];return{'sql':_0x503163,'params':_0x4bfed4};}}exports['KVSQL']=KVSQL;
|
|
1
|
+
'use strict';(function(_0x529a7e,_0x51a20f){const _0x1c669d=_0x390d,_0x17008f=_0x529a7e();while(!![]){try{const _0x1ffa5c=-parseInt(_0x1c669d(0x11c))/0x1+parseInt(_0x1c669d(0x125))/0x2*(-parseInt(_0x1c669d(0x122))/0x3)+parseInt(_0x1c669d(0x11f))/0x4+parseInt(_0x1c669d(0x120))/0x5+-parseInt(_0x1c669d(0x123))/0x6+-parseInt(_0x1c669d(0x11e))/0x7*(parseInt(_0x1c669d(0x121))/0x8)+-parseInt(_0x1c669d(0x124))/0x9*(-parseInt(_0x1c669d(0x11d))/0xa);if(_0x1ffa5c===_0x51a20f)break;else _0x17008f['push'](_0x17008f['shift']());}catch(_0x1b1b84){_0x17008f['push'](_0x17008f['shift']());}}}(_0x49af,0x4db6c));var __importDefault=this&&this['__importDefault']||function(_0xeb721f){return _0xeb721f&&_0xeb721f['__esModule']?_0xeb721f:{'default':_0xeb721f};};Object['defineProperty'](exports,'__esModule',{'value':!![]}),exports['KVSQL']=void 0x0;function _0x49af(){const _0x2df005=['1603mgzOVm','2238128NswbhZ','465915HfKSHi','15608XdmsRI','3FhrAer','2294982EwOANC','2337759ZAeroW','1241182vrbjhe','183287TYRNFN','50RvQhYx'];_0x49af=function(){return _0x2df005;};return _0x49af();}const pg_format_1=__importDefault(require('pg-format')),key_1=require('../../../../modules/key');function formatSqlCommand(_0x8c7116,_0x2306df){const _0x11b0c9=[],_0x4cf525=_0x8c7116['replace'](/\$(\d+)/g,(_0x2c6150,_0x2ae96b)=>{const _0x183797=parseInt(_0x2ae96b,0xa)-0x1,_0x2e3cc4=_0x2306df[_0x183797];if(_0x2e3cc4===null||_0x2e3cc4===undefined)return'NULL';let _0x5267f6;if(typeof _0x2e3cc4==='number')_0x5267f6='%s';else{if(typeof _0x2e3cc4==='string')_0x5267f6='%L';else typeof _0x2e3cc4==='boolean'?_0x5267f6='%L':_0x5267f6='%L';}return _0x11b0c9['push'](_0x2e3cc4),_0x5267f6;});return(0x0,pg_format_1['default'])(_0x4cf525,..._0x11b0c9);}class Multi{constructor(_0x1bbbfa){this['kvsql']=_0x1bbbfa,this['commands']=[];}['addCommand'](_0xc82fe4,_0xa0f58e,_0x17a7df,_0x5a76ea){return this['commands']['push']({'sql':_0xc82fe4,'params':_0xa0f58e,'returnType':_0x17a7df,'transform':_0x5a76ea}),this;}['set'](_0x2b924e,_0xc31091,_0x1723fd){const {sql:_0x3612eb,params:_0x1b329f}=this['kvsql']['_set'](_0x2b924e,_0xc31091,_0x1723fd);return this['addCommand'](_0x3612eb,_0x1b329f,'boolean');}['setnx'](_0x2a8a56,_0x2c8bc6){const {sql:_0x28d539,params:_0x37fa3f}=this['kvsql']['_set'](_0x2a8a56,_0x2c8bc6,{'nx':!![]});return this['addCommand'](_0x28d539,_0x37fa3f,'boolean');}['setnxex'](_0x258894,_0x5be3c2,_0x1b7694){const {sql:_0x51ddda,params:_0x4b9932}=this['kvsql']['_set'](_0x258894,_0x5be3c2,{'nx':!![],'ex':_0x1b7694});return this['addCommand'](_0x51ddda,_0x4b9932,'boolean');}['get'](_0xcc21db){const {sql:_0x8a0808,params:_0x2c0ba2}=this['kvsql']['_get'](_0xcc21db);return this['addCommand'](_0x8a0808,_0x2c0ba2,'string');}['del'](_0x55c28c){const {sql:_0x44b554,params:_0x338a2f}=this['kvsql']['_del'](_0x55c28c);return this['addCommand'](_0x44b554,_0x338a2f,'number');}['expire'](_0x13b767,_0x49c251){const {sql:_0x2bf425,params:_0x525688}=this['kvsql']['_expire'](_0x13b767,_0x49c251);return this['addCommand'](_0x2bf425,_0x525688,'boolean');}['hset'](_0x42fe3a,_0x3db090,_0x4e8654){const {sql:_0x2a27c4,params:_0x3e60d0}=this['kvsql']['_hset'](_0x42fe3a,_0x3db090,_0x4e8654);return this['addCommand'](_0x2a27c4,_0x3e60d0,'number');}['hget'](_0x41c9b9,_0x5dc926){const {sql:_0x146f17,params:_0x347719}=this['kvsql']['_hget'](_0x41c9b9,_0x5dc926);return this['addCommand'](_0x146f17,_0x347719,'string');}['hdel'](_0xac8696,_0x3cdf4c){const {sql:_0x135257,params:_0x9d3c41}=this['kvsql']['_hdel'](_0xac8696,_0x3cdf4c);return this['addCommand'](_0x135257,_0x9d3c41,'number');}['hmget'](_0x5b6ceb,_0x2fffdf){const {sql:_0x24fed8,params:_0x3eec08}=this['kvsql']['_hmget'](_0x5b6ceb,_0x2fffdf),_0x1c440a=_0x120a4c=>{const _0x307109=new Map(_0x120a4c['map'](_0x550af7=>[_0x550af7['field'],_0x550af7['value']]));return _0x2fffdf['map'](_0x16489f=>_0x307109['get'](_0x16489f)||null);};return this['addCommand'](_0x24fed8,_0x3eec08,'array',_0x1c440a);}['hgetall'](_0x544f16){const {sql:_0x10d17d,params:_0x4283e5}=this['kvsql']['_hgetall'](_0x544f16),_0x3d9ab1=_0x364990=>{const _0x2ab993={};for(const _0x3f038d of _0x364990){_0x2ab993[_0x3f038d['field']]=_0x3f038d['value'];}return _0x2ab993;};return this['addCommand'](_0x10d17d,_0x4283e5,'object',_0x3d9ab1);}['hincrbyfloat'](_0x2ba2d4,_0x4ac39d,_0x2c450f){const {sql:_0x4efc9f,params:_0x1395ef}=this['kvsql']['_hincrbyfloat'](_0x2ba2d4,_0x4ac39d,_0x2c450f);return this['addCommand'](_0x4efc9f,_0x1395ef,'number',_0x461b46=>parseFloat(_0x461b46[0x0]['value']));}['hscan'](_0x44bbcf,_0x1c80df,_0x633f8e=0xa){const {sql:_0x56ecad,params:_0x50b8e9}=this['kvsql']['_hscan'](_0x44bbcf,_0x1c80df,_0x633f8e),_0x5e3382=_0x1c1431=>{const _0x44864c={};for(const _0x1f835d of _0x1c1431){_0x44864c[_0x1f835d['field']]=_0x1f835d['value'];}const _0x45616d=_0x1c80df+_0x1c1431['length'];return{'cursor':_0x45616d['toString'](),'items':_0x44864c};};return this['addCommand'](_0x56ecad,_0x50b8e9,'object',_0x5e3382);}['lrange'](_0x2c5191,_0xef9b90,_0x7409cc){const {sql:_0x1d0cde,params:_0x26da46}=this['kvsql']['_lrange'](_0x2c5191,_0xef9b90,_0x7409cc);return this['addCommand'](_0x1d0cde,_0x26da46,'array',_0xf80976=>_0xf80976['map'](_0x53a555=>_0x53a555['value']));}['rpush'](_0x47be10,_0x27f868){const {sql:_0x2b3a84,params:_0x285daa}=this['kvsql']['_rpush'](_0x47be10,_0x27f868);return this['addCommand'](_0x2b3a84,_0x285daa,'number',_0x5a7939=>_0x5a7939[0x0]?.['count']||0x0);}['lpush'](_0x37e0b4,_0x5c90f4){const {sql:_0x524be7,params:_0x1d7c62}=this['kvsql']['_lpush'](_0x37e0b4,_0x5c90f4);return this['addCommand'](_0x524be7,_0x1d7c62,'number',_0x15edc0=>_0x15edc0[0x0]?.['count']||0x0);}['lpop'](_0x4f6a68){const {sql:_0x2f0f67,params:_0x13ea63}=this['kvsql']['_lpop'](_0x4f6a68);return this['addCommand'](_0x2f0f67,_0x13ea63,'string');}['lmove'](_0x1a2227,_0x3989c1,_0x50c9af,_0x1a2190){const {sql:_0x32e86c,params:_0x1e36f3}=this['kvsql']['_lmove'](_0x1a2227,_0x3989c1,_0x50c9af,_0x1a2190);return this['addCommand'](_0x32e86c,_0x1e36f3,'string');}['zadd'](_0x212e93,_0x70b08b,_0x34303e,_0x29db1a){const {sql:_0x3d5340,params:_0x2d1a21}=this['kvsql']['_zadd'](_0x212e93,_0x70b08b,_0x34303e,_0x29db1a);return this['addCommand'](_0x3d5340,_0x2d1a21,'number',_0x1d10c6=>_0x1d10c6[0x0]?.['count']||0x0);}['zrange'](_0x16c17c,_0x13ab78,_0x3f6d4b){const {sql:_0x2f6590,params:_0x5515b9}=this['kvsql']['_zrange'](_0x16c17c,_0x13ab78,_0x3f6d4b);return this['addCommand'](_0x2f6590,_0x5515b9,'array',_0x15f905=>_0x15f905['map'](_0x5bcf5d=>_0x5bcf5d['member']));}['zrangebyscore'](_0x524597,_0x574e3d,_0x2d6b6d){const {sql:_0x506e6b,params:_0x4a5340}=this['kvsql']['_zrangebyscore'](_0x524597,_0x574e3d,_0x2d6b6d);return this['addCommand'](_0x506e6b,_0x4a5340,'array',_0x5319c9=>_0x5319c9['map'](_0x1911bf=>_0x1911bf['member']));}['zrangebyscore_withscores'](_0x8afa5a,_0x280946,_0x40c50c){const {sql:_0x362f3d,params:_0x365000}=this['kvsql']['_zrangebyscore_withscores'](_0x8afa5a,_0x280946,_0x40c50c);return this['addCommand'](_0x362f3d,_0x365000,'array',_0x396464=>_0x396464['map'](_0x2a5318=>({'member':_0x2a5318['member'],'score':_0x2a5318['score']})));}['zrem'](_0x3cc403,_0x4ec9a0){const {sql:_0x540f35,params:_0x182446}=this['kvsql']['_zrem'](_0x3cc403,_0x4ec9a0);return this['addCommand'](_0x540f35,_0x182446,'number',_0x2260b3=>_0x2260b3[0x0]?.['count']||0x0);}['zrank'](_0x42e1b0,_0x16ae53){const {sql:_0x59bfa0,params:_0x56d29e}=this['kvsql']['_zrank'](_0x42e1b0,_0x16ae53);return this['addCommand'](_0x59bfa0,_0x56d29e,'number',_0x46a1e9=>_0x46a1e9[0x0]?.['rank']!==undefined?parseInt(_0x46a1e9[0x0]['rank'],0xa)-0x1:null);}['scan'](_0x11a3c6,_0x2f5a98=0xa){const {sql:_0x12653d,params:_0x5c0d27}=this['kvsql']['_scan'](_0x11a3c6,_0x2f5a98),_0x2ae3f3=_0x1183c2=>{const _0x1a7da4=_0x1183c2['map'](_0xcd7c5d=>_0xcd7c5d['key']),_0x299bc0=_0x11a3c6+_0x1183c2['length'];return{'cursor':_0x299bc0,'keys':_0x1a7da4};};return this['addCommand'](_0x12653d,_0x5c0d27,'object',_0x2ae3f3);}['rename'](_0x3ad8c5,_0x38738a){const {sql:_0x4ae95a,params:_0x5a3315}=this['kvsql']['_rename'](_0x3ad8c5,_0x38738a);return this['addCommand'](_0x4ae95a,_0x5a3315,'void');}async['exec'](){const _0x61ed20=this['kvsql']['pgClient'];try{await _0x61ed20['query']('BEGIN');const _0x4c0d53=[],_0x1b1733=[];for(const _0x540f29 of this['commands']){const _0x46c193=formatSqlCommand(_0x540f29['sql'],_0x540f29['params']);_0x4c0d53['push'](_0x46c193);}const _0x4456a3=_0x4c0d53['join'](';\x0a'),_0x3645c8=await _0x61ed20['query'](_0x4456a3),_0x472a7c=Array['isArray'](_0x3645c8)?_0x3645c8:[_0x3645c8];let _0x4f403b=0x0;for(const _0x573609 of this['commands']){const _0x17c28a=_0x472a7c[_0x4f403b++],_0x37c1e7=_0x17c28a?.['rows']||[];let _0x305e5c;if(_0x573609['transform'])_0x305e5c=_0x573609['transform'](_0x37c1e7);else switch(_0x573609['returnType']){case'string':_0x305e5c=_0x37c1e7[0x0]?.['value']||null;break;case'number':_0x305e5c=_0x37c1e7[0x0]?.['count']||0x0;break;case'boolean':_0x305e5c=_0x37c1e7[0x0]?.['success']??_0x37c1e7['length']>0x0;break;case'array':_0x305e5c=_0x37c1e7['map'](_0x493a30=>_0x493a30['value']);break;case'object':_0x305e5c=_0x37c1e7[0x0]||{};break;default:_0x305e5c=_0x37c1e7;}_0x1b1733['push'](_0x305e5c);}return await _0x61ed20['query']('COMMIT'),_0x1b1733;}catch(_0x50725d){await _0x61ed20['query']('ROLLBACK');throw _0x50725d;}}}class KVSQL{constructor(_0x4ac633,_0x586fe0,_0xe16981){this['pgClient']=_0x4ac633,this['namespace']=_0x586fe0,this['appId']=_0xe16981;}['getMulti'](){return new Multi(this);}['transact'](){return new Multi(this);}['exec'](..._0x4211da){return Promise['resolve']([]);}['mintKey'](_0x336d4f,_0x511b3e){return'';}['tableForKey'](_0x3d914e,_0x25091e){if(_0x3d914e===key_1['HMNS'])return'hotmesh_connections';const [_0x31666c,_0xa5387e,_0x495e37,..._0x1eca11]=_0x3d914e['split'](':');if(_0xa5387e==='a')return'hotmesh_applications';const _0x324dcb=_0x1eca11?.['length']?_0x1eca11['join'](':'):'',_0x2eb944=key_1['KeyService']['resolveEntityType'](_0x495e37,_0x324dcb);if(this['safeName'](this['appId'])!==this['safeName'](_0xa5387e))throw new Error('App\x20ID\x20mismatch:\x20'+this['appId']+'\x20!==\x20'+_0xa5387e);if(_0x2eb944==='stats'){if(_0x25091e==='sorted_set')return'hotmesh_'+this['safeName'](_0xa5387e)+'_stats_ordered';else{if(_0x25091e==='list')return'hotmesh_'+this['safeName'](_0xa5387e)+'_stats_indexed';else{if(_0x25091e==='hash')return'hotmesh_'+this['safeName'](_0xa5387e)+'_stats_counted';else throw new Error('Unknown\x20stats\x20type\x20['+_0x25091e+']\x20for\x20key\x20['+_0x3d914e+']');}}}if(_0x2eb944==='unknown_entity')throw new Error('Unknown\x20entity\x20type\x20abbreviation:\x20'+_0x495e37);else return _0x2eb944==='applications'?'hotmesh_applications':'hotmesh_'+this['safeName'](_0xa5387e)+'_'+_0x2eb944;}['reconstituteKey'](_0x14f538,_0x359f26){const _0x45f676=key_1['KeyService']['resolveAbbreviation'](_0x14f538);return key_1['KeyService']['reconstituteKey']({'namespace':this['namespace'],'app':this['appId'],'entity':_0x45f676,'id':_0x359f26});}['safeName'](_0x224262,_0x1b394d=''){if(!_0x224262)return'connections';let _0x2da3ec=_0x224262['trim']()['toLowerCase']();return _0x2da3ec=_0x2da3ec['replace'](/[^a-z0-9]+/g,'_'),_0x1b394d&&(_0x2da3ec=_0x1b394d+'_'+_0x2da3ec),_0x2da3ec['length']>0x3f&&(_0x2da3ec=_0x2da3ec['slice'](0x0,0x3f)),_0x2da3ec=_0x2da3ec['replace'](/_+$/g,''),!_0x2da3ec&&(_0x2da3ec='connections'),_0x2da3ec;}async['get'](_0x2fd31a,_0x4fb72e){const {sql:_0xecbd6b,params:_0x44dbc4}=this['_get'](_0x2fd31a);if(_0x4fb72e)return _0x4fb72e['addCommand'](_0xecbd6b,_0x44dbc4,'string'),Promise['resolve'](null);else{const _0x45a533=await this['pgClient']['query'](_0xecbd6b,_0x44dbc4);return _0x45a533['rows'][0x0]?.['value']||null;}}['_get'](_0x47df76){const _0x177ae1=this['tableForKey'](_0x47df76),_0x535f0d='\x0a\x20\x20\x20\x20\x20\x20SELECT\x20value\x20FROM\x20'+_0x177ae1+'\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',_0x70f4b0=[_0x47df76];return{'sql':_0x535f0d,'params':_0x70f4b0};}async['setnx'](_0x35a99c,_0x422e6d,_0x5708a0){const {sql:_0x44e0c6,params:_0x193711}=this['_set'](_0x35a99c,_0x422e6d,{'nx':!![]});if(_0x5708a0)return _0x5708a0['addCommand'](_0x44e0c6,_0x193711,'boolean'),Promise['resolve'](!![]);else{const _0xefac43=await this['pgClient']['query'](_0x44e0c6,_0x193711);return _0xefac43['rowCount']>0x0;}}async['setnxex'](_0x20102c,_0x3f7ed5,_0x181251,_0x4ed072){const {sql:_0x2e1fa2,params:_0x5afc99}=this['_set'](_0x20102c,_0x3f7ed5,{'nx':!![],'ex':_0x181251});if(_0x4ed072)return _0x4ed072['addCommand'](_0x2e1fa2,_0x5afc99,'boolean'),Promise['resolve'](!![]);else{const _0x34a21d=await this['pgClient']['query'](_0x2e1fa2,_0x5afc99);return _0x34a21d['rowCount']>0x0;}}async['set'](_0x5e9fc3,_0x4480db,_0x5d66bb,_0x34a240){const {sql:_0x2d575a,params:_0x5f336f}=this['_set'](_0x5e9fc3,_0x4480db,_0x5d66bb);if(_0x34a240)return _0x34a240['addCommand'](_0x2d575a,_0x5f336f,'boolean'),Promise['resolve'](!![]);else{const _0x4feb7c=await this['pgClient']['query'](_0x2d575a,_0x5f336f);return _0x4feb7c['rowCount']>0x0;}}['_set'](_0x4e4f18,_0x489574,_0x393a7c){const _0xefb964=this['tableForKey'](_0x4e4f18);let _0x101bb1='';const _0x480866=[_0x4e4f18,_0x489574];let _0x48a8aa='';return _0x393a7c?.['ex']&&(_0x48a8aa=',\x20expiry\x20=\x20NOW()\x20+\x20INTERVAL\x20\x27'+_0x393a7c['ex']+'\x20seconds\x27'),_0x393a7c?.['nx']?_0x101bb1='\x0a\x20\x20\x20\x20\x20\x20\x20\x20INSERT\x20INTO\x20'+_0xefb964+'\x20(key,\x20value'+(_0x48a8aa?',\x20expiry':'')+')\x0a\x20\x20\x20\x20\x20\x20\x20\x20VALUES\x20($1,\x20$2'+(_0x48a8aa?',\x20NOW()\x20+\x20INTERVAL\x20\x27'+_0x393a7c['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':_0x101bb1='\x0a\x20\x20\x20\x20\x20\x20\x20\x20INSERT\x20INTO\x20'+_0xefb964+'\x20(key,\x20value'+(_0x48a8aa?',\x20expiry':'')+')\x0a\x20\x20\x20\x20\x20\x20\x20\x20VALUES\x20($1,\x20$2'+(_0x48a8aa?',\x20NOW()\x20+\x20INTERVAL\x20\x27'+_0x393a7c['ex']+'\x20seconds\x27':'')+')\x0a\x20\x20\x20\x20\x20\x20\x20\x20ON\x20CONFLICT\x20(key)\x20DO\x20UPDATE\x20SET\x20value\x20=\x20EXCLUDED.value'+_0x48a8aa+'\x0a\x20\x20\x20\x20\x20\x20\x20\x20RETURNING\x20true\x20as\x20success\x0a\x20\x20\x20\x20\x20\x20',{'sql':_0x101bb1,'params':_0x480866};}async['del'](_0x3e361c,_0x3f6dcd){const {sql:_0x5ba91b,params:_0x413335}=this['_del'](_0x3e361c);if(_0x3f6dcd)return _0x3f6dcd['addCommand'](_0x5ba91b,_0x413335,'number'),Promise['resolve'](0x0);else{const _0x4e0a2e=await this['pgClient']['query'](_0x5ba91b,_0x413335);return Number(_0x4e0a2e['rows'][0x0]?.['count']||0x0);}}['_del'](_0x42e5d9){const _0x414a30=this['tableForKey'](_0x42e5d9),_0x31152c='\x0a\x20\x20\x20\x20\x20\x20WITH\x20deleted\x20AS\x20(\x0a\x20\x20\x20\x20\x20\x20\x20\x20DELETE\x20FROM\x20'+_0x414a30+'\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',_0x5c071a=[_0x42e5d9];return{'sql':_0x31152c,'params':_0x5c071a};}async['expire'](_0x5715af,_0x32c3ff,_0x118409){const {sql:_0x1fd938,params:_0x381546}=this['_expire'](_0x5715af,_0x32c3ff);if(_0x118409)return _0x118409['addCommand'](_0x1fd938,_0x381546,'boolean'),Promise['resolve'](!![]);else{const _0x12369a=await this['pgClient']['query'](_0x1fd938,_0x381546);return _0x12369a['rowCount']>0x0;}}['_expire'](_0x439655,_0x15f21c){const _0x273eb5=this['tableForKey'](_0x439655),_0xe2de3b=new Date(Date['now']()+_0x15f21c*0x3e8),_0x49c747='\x0a\x20\x20\x20\x20\x20\x20UPDATE\x20'+_0x273eb5+'\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',_0x348fa0=[_0x439655,_0xe2de3b];return{'sql':_0x49c747,'params':_0x348fa0};}async['hsetnx'](_0xea14fe,_0x403c6a,_0x53d1a0,_0x271974){const {sql:_0x4a71a8,params:_0x21b730}=this['_hset'](_0xea14fe,{[_0x403c6a]:_0x53d1a0},{'nx':!![]});if(_0x271974)return _0x271974['addCommand'](_0x4a71a8,_0x21b730,'number'),Promise['resolve'](0x0);else{const _0x4be5e9=await this['pgClient']['query'](_0x4a71a8,_0x21b730);return _0x4be5e9['rowCount'];}}async['hset'](_0x2d9a0b,_0x3561e9,_0x435aa4,_0xf54505){const {sql:_0x1aff61,params:_0x1bce58}=this['_hset'](_0x2d9a0b,_0x3561e9,_0x435aa4);if(_0xf54505)return _0xf54505['addCommand'](_0x1aff61,_0x1bce58,'number'),Promise['resolve'](0x0);else{const _0x3f52fb=await this['pgClient']['query'](_0x1aff61,_0x1bce58);return _0x3f52fb['rowCount'];}}['deriveType'](_0x351438){if(_0x351438===':')return'status';else{if(_0x351438['startsWith']('_'))return'udata';else{if(_0x351438['startsWith']('-'))return _0x351438['includes'](',')?'hmark':'jmark';else{if(_0x351438['length']===0x3)return'jdata';else return _0x351438['includes'](',')?'adata':'other';}}}}['_hset'](_0x582cdc,_0xb90b,_0x561d31){let _0x4aa574='';const _0x46a6ef=[_0x582cdc],_0x3f2dc6=this['tableForKey'](_0x582cdc,'hash'),_0x5ef9b0=_0x3f2dc6['endsWith']('_jobs'),_0x143c8a=Object['entries'](_0xb90b);_0x143c8a['forEach'](([_0x12a94a,_0x5b5064],_0x2420c2)=>{_0x46a6ef['push'](_0x12a94a,_0x5b5064),_0x5ef9b0&&_0x46a6ef['push'](this['deriveType'](_0x12a94a));});const _0x1c1c92=_0x143c8a['map']((_0x5b45e4,_0x57a01e)=>_0x5ef9b0?'($1,\x20$'+(0x2+_0x57a01e*0x3)+',\x20$'+(0x3+_0x57a01e*0x3)+',\x20$'+(0x4+_0x57a01e*0x3)+')':'($1,\x20$'+(0x2+_0x57a01e*0x2)+',\x20$'+(0x3+_0x57a01e*0x2)+')')['join'](',\x20');return _0x561d31?.['nx']?_0x4aa574='\x0a\x20\x20\x20\x20\x20\x20\x20\x20INSERT\x20INTO\x20'+_0x3f2dc6+'\x20(key,\x20field,\x20value'+(_0x5ef9b0?',\x20type':'')+')\x0a\x20\x20\x20\x20\x20\x20\x20\x20VALUES\x20'+_0x1c1c92+'\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':_0x4aa574='\x0a\x20\x20\x20\x20\x20\x20\x20\x20INSERT\x20INTO\x20'+_0x3f2dc6+'\x20(key,\x20field,\x20value'+(_0x5ef9b0?',\x20type':'')+')\x0a\x20\x20\x20\x20\x20\x20\x20\x20VALUES\x20'+_0x1c1c92+'\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':_0x4aa574,'params':_0x46a6ef};}async['hget'](_0x5ceb55,_0x3fa9e2,_0x59875d){const {sql:_0x1cc77b,params:_0x188998}=this['_hget'](_0x5ceb55,_0x3fa9e2);if(_0x59875d)return _0x59875d['addCommand'](_0x1cc77b,_0x188998,'string'),Promise['resolve'](null);else{const _0x584f53=await this['pgClient']['query'](_0x1cc77b,_0x188998);return _0x584f53['rows'][0x0]?.['value']||null;}}['_hget'](_0x5a02ad,_0x468567){const _0x51a955=this['tableForKey'](_0x5a02ad,'hash'),_0x42a51e='\x0a\x20\x20\x20\x20\x20\x20SELECT\x20value\x20FROM\x20'+_0x51a955+'\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',_0x26e5a1=[_0x5a02ad,_0x468567];return{'sql':_0x42a51e,'params':_0x26e5a1};}async['hdel'](_0x2e0618,_0x4f0302,_0x2d8c0f){!Array['isArray'](_0x4f0302)&&(_0x4f0302=[_0x4f0302]);const {sql:_0x1e6aea,params:_0x4eb6aa}=this['_hdel'](_0x2e0618,_0x4f0302);if(_0x2d8c0f)return _0x2d8c0f['addCommand'](_0x1e6aea,_0x4eb6aa,'number'),Promise['resolve'](0x0);else{const _0x131e0a=await this['pgClient']['query'](_0x1e6aea,_0x4eb6aa);return Number(_0x131e0a['rows'][0x0]?.['count']||0x0);}}['_hdel'](_0x44f1ba,_0x46a543){const _0x5c9740=this['tableForKey'](_0x44f1ba,'hash'),_0x3b9fa4=_0x46a543['map']((_0x2a26f1,_0x29290f)=>'$'+(_0x29290f+0x2))['join'](',\x20'),_0x3ad959='\x0a\x20\x20\x20\x20\x20\x20WITH\x20deleted\x20AS\x20(\x0a\x20\x20\x20\x20\x20\x20\x20\x20DELETE\x20FROM\x20'+_0x5c9740+'\x0a\x20\x20\x20\x20\x20\x20\x20\x20WHERE\x20key\x20=\x20$1\x20AND\x20field\x20IN\x20('+_0x3b9fa4+')\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',_0x4c10c7=[_0x44f1ba,..._0x46a543];return{'sql':_0x3ad959,'params':_0x4c10c7};}async['hmget'](_0x4bcfd0,_0x413ea7,_0xcaa768){const {sql:_0x127279,params:_0x33e292}=this['_hmget'](_0x4bcfd0,_0x413ea7);if(_0xcaa768)return _0xcaa768['addCommand'](_0x127279,_0x33e292,'array',_0x77e2eb=>{const _0x501cb9=new Map(_0x77e2eb['map'](_0x1ae835=>[_0x1ae835['field'],_0x1ae835['value']]));return _0x413ea7['map'](_0x3b66eb=>_0x501cb9['get'](_0x3b66eb)||null);}),Promise['resolve']([]);else{const _0x82f418=await this['pgClient']['query'](_0x127279,_0x33e292),_0x1c6d77=new Map(_0x82f418['rows']['map'](_0x25e683=>[_0x25e683['field'],_0x25e683['value']]));return _0x413ea7['map'](_0x568eed=>_0x1c6d77['get'](_0x568eed)||null);}}['_hmget'](_0x56aad7,_0x4dab4e){const _0x1c7b10=this['tableForKey'](_0x56aad7,'hash'),_0x3de67d='\x0a\x20\x20\x20\x20\x20\x20SELECT\x20field,\x20value\x20FROM\x20'+_0x1c7b10+'\x0a\x20\x20\x20\x20\x20\x20WHERE\x20key\x20=\x20$1\x20AND\x20field\x20=\x20ANY($2::text[])\x0a\x20\x20\x20\x20',_0xed52c5=[_0x56aad7,_0x4dab4e];return{'sql':_0x3de67d,'params':_0xed52c5};}async['hgetall'](_0x220100,_0x4cd8cc){const {sql:_0x5bb241,params:_0xcd3e0a}=this['_hgetall'](_0x220100);if(_0x4cd8cc)return _0x4cd8cc['addCommand'](_0x5bb241,_0xcd3e0a,'object',_0x12b38d=>{const _0x511233={};for(const _0x459094 of _0x12b38d){_0x511233[_0x459094['field']]=_0x459094['value'];}return _0x511233;}),Promise['resolve']({});else{const _0x333c31=await this['pgClient']['query'](_0x5bb241,_0xcd3e0a),_0x3beeb2={};for(const _0x29b5ef of _0x333c31['rows']){_0x3beeb2[_0x29b5ef['field']]=_0x29b5ef['value'];}return _0x3beeb2;}}['_hgetall'](_0x3ff94b){const _0x3ba779=this['tableForKey'](_0x3ff94b,'hash'),_0x4151cc='\x0a\x20\x20\x20\x20\x20\x20SELECT\x20field,\x20value\x20FROM\x20'+_0x3ba779+'\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',_0xaf2c68=[_0x3ff94b];return{'sql':_0x4151cc,'params':_0xaf2c68};}async['hincrbyfloat'](_0x81cabe,_0xb4a597,_0x408f95,_0x43103d){const {sql:_0x1697c4,params:_0x4898ef}=this['_hincrbyfloat'](_0x81cabe,_0xb4a597,_0x408f95);if(_0x43103d)return _0x43103d['addCommand'](_0x1697c4,_0x4898ef,'number',_0x70c60=>parseFloat(_0x70c60[0x0]['value'])),Promise['resolve'](0x0);else{const _0xd0ed9e=await this['pgClient']['query'](_0x1697c4,_0x4898ef);return parseFloat(_0xd0ed9e['rows'][0x0]['value']);}}['_hincrbyfloat'](_0x4fbf42,_0x219b2a,_0x36c172){const _0x165be6=this['tableForKey'](_0x4fbf42,'hash'),_0x205da8=_0x165be6['endsWith']('_jobs');let _0x160d62;const _0x35dde4=[_0x4fbf42,_0x219b2a,_0x36c172];if(_0x205da8){const _0x39a370=this['deriveType'](_0x219b2a);_0x35dde4['push'](_0x39a370),_0x160d62='\x0a\x20\x20\x20\x20\x20\x20\x20\x20INSERT\x20INTO\x20'+_0x165be6+'\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('+_0x165be6+'.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 _0x160d62='\x0a\x20\x20\x20\x20\x20\x20\x20\x20INSERT\x20INTO\x20'+_0x165be6+'\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('+_0x165be6+'.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':_0x160d62,'params':_0x35dde4};}async['hscan'](_0x145b21,_0x141346,_0x1bf01c=0xa,_0x24c8aa,_0x446470){const {sql:_0x1755f5,params:_0xf0a3d7}=this['_hscan'](_0x145b21,_0x141346,_0x1bf01c,_0x24c8aa);if(_0x446470)return _0x446470['addCommand'](_0x1755f5,_0xf0a3d7,'object',_0x1efb6e=>{const _0x42958c={};for(const _0x2a18ae of _0x1efb6e){_0x42958c[_0x2a18ae['field']]=_0x2a18ae['value'];}const _0x3b4dcd=_0x1efb6e['length']<_0x1bf01c?0x0:Number(_0x141346)+_0x1efb6e['length'];return{'cursor':_0x3b4dcd['toString'](),'items':_0x42958c};}),Promise['resolve']({'cursor':'0','items':{}});else{const _0x469477=await this['pgClient']['query'](_0x1755f5,_0xf0a3d7),_0x33066b={};for(const _0x533f8a of _0x469477['rows']){_0x33066b[_0x533f8a['field']]=_0x533f8a['value'];}const _0x22397f=_0x469477['rowCount']<_0x1bf01c?0x0:Number(_0x141346)+_0x469477['rowCount'];return{'cursor':_0x22397f['toString'](),'items':_0x33066b};}}['_hscan'](_0x3a33f5,_0x1a936b,_0x268cf3,_0x341110){const _0x32e4e6=this['tableForKey'](_0x3a33f5,'hash'),_0x2b8d0f=[_0x3a33f5];let _0x3d9299='\x0a\x20\x20\x20\x20\x20\x20SELECT\x20field,\x20value\x20FROM\x20'+_0x32e4e6+'\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',_0x37e191=0x2;if(_0x341110){const _0xa87c30=_0x341110['replace'](/\*/g,'%');_0x3d9299+='\x20AND\x20field\x20LIKE\x20$'+_0x37e191,_0x2b8d0f['push'](_0xa87c30),_0x37e191++;}return _0x3d9299+='\x0a\x20\x20\x20\x20\x20\x20ORDER\x20BY\x20field\x0a\x20\x20\x20\x20\x20\x20OFFSET\x20$'+_0x37e191+'\x20LIMIT\x20$'+(_0x37e191+0x1)+'\x0a\x20\x20\x20\x20',_0x2b8d0f['push'](_0x1a936b['toString']()),_0x2b8d0f['push'](_0x268cf3['toString']()),{'sql':_0x3d9299,'params':_0x2b8d0f};}async['lrange'](_0x5e7c2f,_0xf51e32,_0x37eb5e,_0x5258e3){const {sql:_0x14233a,params:_0x159445}=this['_lrange'](_0x5e7c2f,_0xf51e32,_0x37eb5e);if(_0x5258e3)return _0x5258e3['addCommand'](_0x14233a,_0x159445,'array',_0x40c5f2=>_0x40c5f2['map'](_0x743b09=>_0x743b09['value'])),Promise['resolve']([]);else{const _0x571ddf=await this['pgClient']['query'](_0x14233a,_0x159445);return _0x571ddf['rows']['map'](_0x38796a=>_0x38796a['value']);}}['_lrange'](_0x43029b,_0x461ff8,_0xa4f8d7){const _0x2f9c4c=this['tableForKey'](_0x43029b,'list'),_0x12e1f7='\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'+_0x2f9c4c+'\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',_0x4f7207=[_0x43029b,_0x461ff8,_0xa4f8d7];return{'sql':_0x12e1f7,'params':_0x4f7207};}async['rpush'](_0x636ca0,_0x3b4ce2,_0x15adf2){const {sql:_0x14dfc6,params:_0x2d80fa}=this['_rpush'](_0x636ca0,_0x3b4ce2);if(_0x15adf2)return _0x15adf2['addCommand'](_0x14dfc6,_0x2d80fa,'number',_0x1586bc=>_0x1586bc[0x0]?.['count']||0x0),Promise['resolve'](0x0);else{const _0xce922e=await this['pgClient']['query'](_0x14dfc6,_0x2d80fa);return Number(_0xce922e['rows'][0x0]?.['count']||0x0);}}['_rpush'](_0x55182f,_0x26ef14){const _0x2373a6=this['tableForKey'](_0x55182f,'list'),_0x2c6a7e=Array['isArray'](_0x26ef14)?_0x26ef14:[_0x26ef14],_0x589059=_0x2c6a7e['map']((_0x228b6f,_0xcf17ac)=>'($1,\x20(SELECT\x20COALESCE(MAX(\x22index\x22),\x200)\x20+\x20'+(_0xcf17ac+0x1)+'\x20FROM\x20'+_0x2373a6+'\x20WHERE\x20key\x20=\x20$1),\x20$'+(_0xcf17ac+0x2)+')')['join'](',\x20'),_0x2913d5='\x0a\x20\x20\x20\x20\x20\x20WITH\x20inserted\x20AS\x20(\x0a\x20\x20\x20\x20\x20\x20\x20\x20INSERT\x20INTO\x20'+_0x2373a6+'\x20(key,\x20\x22index\x22,\x20value)\x0a\x20\x20\x20\x20\x20\x20\x20\x20VALUES\x20'+_0x589059+'\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',_0x297da8=[_0x55182f,..._0x2c6a7e];return{'sql':_0x2913d5,'params':_0x297da8};}async['lpush'](_0x404e10,_0x5e52b9,_0x3d310e){const {sql:_0x17ed48,params:_0x4e9c47}=this['_lpush'](_0x404e10,_0x5e52b9);if(_0x3d310e)return _0x3d310e['addCommand'](_0x17ed48,_0x4e9c47,'number',_0x5e026c=>_0x5e026c[0x0]?.['count']||0x0),Promise['resolve'](0x0);else{const _0x171d67=await this['pgClient']['query'](_0x17ed48,_0x4e9c47);return Number(_0x171d67['rows'][0x0]?.['count']||0x0);}}['_lpush'](_0x1e624c,_0xf14925){const _0x190bd5=this['tableForKey'](_0x1e624c,'list'),_0x46a9d2=Array['isArray'](_0xf14925)?_0xf14925:[_0xf14925],_0x5477f6=_0x46a9d2['map']((_0x1ebe51,_0x4d63c1)=>'($1,\x20(SELECT\x20COALESCE(MIN(\x22index\x22),\x200)\x20-\x20'+(_0x4d63c1+0x1)+'\x20FROM\x20'+_0x190bd5+'\x20WHERE\x20key\x20=\x20$1),\x20$'+(_0x4d63c1+0x2)+')')['join'](',\x20'),_0x48614c='\x0a\x20\x20\x20\x20\x20\x20WITH\x20inserted\x20AS\x20(\x0a\x20\x20\x20\x20\x20\x20\x20\x20INSERT\x20INTO\x20'+_0x190bd5+'\x20(key,\x20\x22index\x22,\x20value)\x0a\x20\x20\x20\x20\x20\x20\x20\x20VALUES\x20'+_0x5477f6+'\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',_0x140bc4=[_0x1e624c,..._0x46a9d2];return{'sql':_0x48614c,'params':_0x140bc4};}async['lpop'](_0x3ce4ad,_0x1aa499){const {sql:_0x304152,params:_0x240472}=this['_lpop'](_0x3ce4ad);if(_0x1aa499)return _0x1aa499['addCommand'](_0x304152,_0x240472,'string'),Promise['resolve'](null);else{const _0x4275d7=await this['pgClient']['query'](_0x304152,_0x240472);return _0x4275d7['rows'][0x0]?.['value']||null;}}['_lpop'](_0x931184){const _0x266adb=this['tableForKey'](_0x931184,'list'),_0x2b2fdf='\x0a\x20\x20\x20\x20\x20\x20DELETE\x20FROM\x20'+_0x266adb+'\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'+_0x266adb+'\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',_0x31d8d4=[_0x931184];return{'sql':_0x2b2fdf,'params':_0x31d8d4};}async['lmove'](_0x28370f,_0x11d15c,_0x474e99,_0x576bf1,_0x45b724){const {sql:_0x533117,params:_0x238e3a}=this['_lmove'](_0x28370f,_0x11d15c,_0x474e99,_0x576bf1);if(_0x45b724)return _0x45b724['addCommand'](_0x533117,_0x238e3a,'string'),Promise['resolve'](null);else{const _0x4409c6=this['pgClient'];try{await _0x4409c6['query']('BEGIN');const _0x2681ec=await _0x4409c6['query'](_0x533117,_0x238e3a);return await _0x4409c6['query']('COMMIT'),_0x2681ec['rows'][0x0]?.['value']||null;}catch(_0x36dcdb){await _0x4409c6['query']('ROLLBACK');throw _0x36dcdb;}}}['_lmove'](_0x113b9c,_0x3005ea,_0x25150c,_0x1d2ed1){const _0x5d0f74=this['tableForKey'](_0x113b9c,'list'),_0x3050be=_0x25150c==='LEFT'?'ASC':'DESC',_0x5b79f2=_0x1d2ed1==='LEFT'?'(SELECT\x20COALESCE(MIN(\x22index\x22),\x200)\x20-\x201\x20FROM\x20'+_0x5d0f74+'\x20WHERE\x20key\x20=\x20$2)':'(SELECT\x20COALESCE(MAX(\x22index\x22),\x200)\x20+\x201\x20FROM\x20'+_0x5d0f74+'\x20WHERE\x20key\x20=\x20$2)',_0x4d0364='\x0a\x20\x20\x20\x20\x20\x20WITH\x20moved\x20AS\x20(\x0a\x20\x20\x20\x20\x20\x20\x20\x20DELETE\x20FROM\x20'+_0x5d0f74+'\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'+_0x5d0f74+'\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'+_0x3050be+'\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'+_0x5d0f74+'\x20(key,\x20\x22index\x22,\x20value)\x0a\x20\x20\x20\x20\x20\x20\x20\x20SELECT\x20$2,\x20'+_0x5b79f2+',\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',_0x9cb869=[_0x113b9c,_0x3005ea];return{'sql':_0x4d0364,'params':_0x9cb869};}async['zadd'](_0x510034,_0x460b25,_0x2d8e15,_0x3117e0,_0xdc710c){const {sql:_0x4612f0,params:_0x23ac61}=this['_zadd'](_0x510034,_0x460b25,_0x2d8e15,_0x3117e0);if(_0xdc710c)return _0xdc710c['addCommand'](_0x4612f0,_0x23ac61,'number',_0x32c7c5=>_0x32c7c5[0x0]?.['count']||0x0),Promise['resolve'](0x0);else{const _0xb6ea1=await this['pgClient']['query'](_0x4612f0,_0x23ac61);return Number(_0xb6ea1['rows'][0x0]?.['count']||0x0);}}['_zadd'](_0x29342d,_0x1edf20,_0x5f3507,_0x5c4796){const _0xcf00b8=this['tableForKey'](_0x29342d,'sorted_set');let _0x3b2739='';const _0x4c8468=[_0x29342d,_0x5f3507,_0x1edf20];return _0x5c4796?.['nx']?_0x3b2739='\x0a\x20\x20\x20\x20\x20\x20\x20\x20INSERT\x20INTO\x20'+_0xcf00b8+'\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':_0x3b2739='\x0a\x20\x20\x20\x20\x20\x20\x20\x20INSERT\x20INTO\x20'+_0xcf00b8+'\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':_0x3b2739,'params':_0x4c8468};}async['zrange'](_0x5463a5,_0x2238eb,_0x10fcfe,_0x560375,_0x10c071){const {sql:_0x3dfe05,params:_0x5557f6}=this['_zrange'](_0x5463a5,_0x2238eb,_0x10fcfe,_0x560375);if(_0x10c071)return _0x10c071['addCommand'](_0x3dfe05,_0x5557f6,'array',_0x262907=>{return _0x560375==='WITHSCORES'?_0x262907['flatMap'](_0x21d1d2=>[_0x21d1d2['member'],_0x21d1d2['score']['toString']()]):_0x262907['map'](_0xe33099=>_0xe33099['member']);}),Promise['resolve']([]);else{const _0x546a55=await this['pgClient']['query'](_0x3dfe05,_0x5557f6);return _0x560375==='WITHSCORES'?_0x546a55['rows']['flatMap'](_0x113940=>[_0x113940['member'],_0x113940['score']['toString']()]):_0x546a55['rows']['map'](_0x4a3649=>_0x4a3649['member']);}}['_zrange'](_0x50a718,_0x13b106,_0x478b50,_0x3f1c83){const _0x43b84e=this['tableForKey'](_0x50a718,'sorted_set'),_0x5ed69d=_0x3f1c83==='WITHSCORES'?'member,\x20score':'member',_0x2ade69='\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'+_0x43b84e+'\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'+_0x5ed69d+',\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'+_0x43b84e+'\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'+_0x5ed69d+'\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',_0x5b53e3=[_0x50a718,_0x13b106,_0x478b50];return{'sql':_0x2ade69,'params':_0x5b53e3};}async['zscore'](_0x4a47d0,_0x775d09,_0x4e6d51){const {sql:_0x20c41f,params:_0x1fc888}=this['_zscore'](_0x4a47d0,_0x775d09);if(_0x4e6d51)return _0x4e6d51['addCommand'](_0x20c41f,_0x1fc888,'single',_0x147536=>{return _0x147536?parseFloat(_0x147536['score']):null;}),Promise['resolve'](null);else{const _0x18c167=await this['pgClient']['query'](_0x20c41f,_0x1fc888);return _0x18c167['rows']['length']?parseFloat(_0x18c167['rows'][0x0]['score']):null;}}['_zscore'](_0xc5871d,_0x3e84d0){const _0x241577=this['tableForKey'](_0xc5871d,'sorted_set'),_0x3eeb46='\x0a\x20\x20\x20\x20\x20\x20SELECT\x20score\x0a\x20\x20\x20\x20\x20\x20FROM\x20'+_0x241577+'\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',_0x49450c=[_0xc5871d,_0x3e84d0];return{'sql':_0x3eeb46,'params':_0x49450c};}async['zrangebyscore'](_0x27d694,_0x2987d6,_0x4603a6,_0x7f5b12){const {sql:_0x2f4d99,params:_0x503822}=this['_zrangebyscore'](_0x27d694,_0x2987d6,_0x4603a6);if(_0x7f5b12)return _0x7f5b12['addCommand'](_0x2f4d99,_0x503822,'array',_0x377037=>_0x377037['map'](_0x51fceb=>_0x51fceb['member'])),Promise['resolve']([]);else{const _0xb1c6c6=await this['pgClient']['query'](_0x2f4d99,_0x503822);return _0xb1c6c6['rows']['map'](_0x59dabb=>_0x59dabb['member']);}}['_zrangebyscore'](_0x2e387b,_0x42b3ee,_0x1f1690){const _0x55f8f2=this['tableForKey'](_0x2e387b,'sorted_set'),_0x268db9='\x0a\x20\x20\x20\x20\x20\x20SELECT\x20member\x20FROM\x20'+_0x55f8f2+'\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',_0x3b778e=[_0x2e387b,_0x42b3ee,_0x1f1690];return{'sql':_0x268db9,'params':_0x3b778e};}async['zrangebyscore_withscores'](_0xaa96c5,_0x1a037e,_0x22d4d3,_0x19873f){const {sql:_0x562ee1,params:_0x28e648}=this['_zrangebyscore_withscores'](_0xaa96c5,_0x1a037e,_0x22d4d3);if(_0x19873f)return _0x19873f['addCommand'](_0x562ee1,_0x28e648,'array',_0x1fb27f=>_0x1fb27f['map'](_0x286a2a=>({'member':_0x286a2a['member'],'score':_0x286a2a['score']}))),Promise['resolve']([]);else{const _0x266907=await this['pgClient']['query'](_0x562ee1,_0x28e648);return _0x266907['rows']['map'](_0x46149f=>({'member':_0x46149f['member'],'score':_0x46149f['score']}));}}['_zrangebyscore_withscores'](_0x5239fc,_0x3418c2,_0x4287b9){const _0x4dc318=this['tableForKey'](_0x5239fc,'sorted_set'),_0x5b0746='\x0a\x20\x20\x20\x20\x20\x20SELECT\x20member,\x20score\x20FROM\x20'+_0x4dc318+'\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',_0x1e290d=[_0x5239fc,_0x3418c2,_0x4287b9];return{'sql':_0x5b0746,'params':_0x1e290d};}async['zrem'](_0x480042,_0x5b29ea,_0x4edcdb){const {sql:_0x12dd06,params:_0x5e8836}=this['_zrem'](_0x480042,_0x5b29ea);if(_0x4edcdb)return _0x4edcdb['addCommand'](_0x12dd06,_0x5e8836,'number',_0x1817b7=>_0x1817b7[0x0]?.['count']||0x0),Promise['resolve'](0x0);else{const _0x30a808=await this['pgClient']['query'](_0x12dd06,_0x5e8836);return Number(_0x30a808['rows'][0x0]?.['count']||0x0);}}['_zrem'](_0x3e74b8,_0x472c12){const _0x19a0f0=this['tableForKey'](_0x3e74b8,'sorted_set'),_0x24eafe='\x0a\x20\x20\x20\x20\x20\x20WITH\x20deleted\x20AS\x20(\x0a\x20\x20\x20\x20\x20\x20\x20\x20DELETE\x20FROM\x20'+_0x19a0f0+'\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',_0x843d19=[_0x3e74b8,_0x472c12];return{'sql':_0x24eafe,'params':_0x843d19};}async['zrank'](_0x1c867a,_0x5c995e,_0x3f5f22){const {sql:_0x57822f,params:_0x749120}=this['_zrank'](_0x1c867a,_0x5c995e);if(_0x3f5f22)return _0x3f5f22['addCommand'](_0x57822f,_0x749120,'number',_0xbad61f=>_0xbad61f[0x0]?.['rank']!==undefined?parseInt(_0xbad61f[0x0]['rank'],0xa)-0x1:null),Promise['resolve'](null);else{const _0x12c8d2=await this['pgClient']['query'](_0x57822f,_0x749120);return _0x12c8d2['rows'][0x0]?.['rank']?parseInt(_0x12c8d2['rows'][0x0]['rank'],0xa)>0x0?parseInt(_0x12c8d2['rows'][0x0]['rank'],0xa)-0x1:null:null;}}['_zrank'](_0x280b31,_0x4861a7){const _0x50cdc2=this['tableForKey'](_0x280b31,'sorted_set'),_0x25c6e7='\x0a\x20\x20\x20\x20\x20\x20WITH\x20member_score\x20AS\x20(\x0a\x20\x20\x20\x20\x20\x20\x20\x20SELECT\x20score\x20FROM\x20'+_0x50cdc2+'\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'+_0x50cdc2+'\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',_0x12cbce=[_0x280b31,_0x4861a7];return{'sql':_0x25c6e7,'params':_0x12cbce};}async['scan'](_0x554896,_0x5c745f=0xa,_0xf08be7,_0x111a96){const {sql:_0x17c4aa,params:_0x1006a3}=this['_scan'](_0x554896,_0x5c745f,_0xf08be7);if(_0x111a96)return _0x111a96['addCommand'](_0x17c4aa,_0x1006a3,'object',_0xd5630e=>{const _0x43fba9=_0xd5630e['map'](_0x1712b3=>_0x1712b3['key']),_0x514a72=_0x554896+_0xd5630e['length'];return{'cursor':_0x514a72,'keys':_0x43fba9};}),Promise['resolve']({'cursor':0x0,'keys':[]});else{const _0x38a5ac=await this['pgClient']['query'](_0x17c4aa,_0x1006a3),_0x3d9ed8=_0x38a5ac['rows']['map'](_0x166c70=>_0x166c70['key']),_0xd349e4=_0x554896+_0x38a5ac['rowCount'];return{'cursor':_0xd349e4,'keys':_0x3d9ed8};}}['_scan'](_0x67cbd2,_0x29e6b2,_0x534b12){const _0x2a1491=this['tableForKey']('_:'+this['appId']+':j:_');let _0x48c51f='\x0a\x20\x20\x20\x20\x20\x20SELECT\x20key\x20FROM\x20'+_0x2a1491+'\x0a\x20\x20\x20\x20\x20\x20WHERE\x20(expiry\x20IS\x20NULL\x20OR\x20expiry\x20>\x20NOW())\x0a\x20\x20\x20\x20';const _0x1287e8=[];return _0x534b12&&(_0x48c51f+='\x20AND\x20key\x20LIKE\x20$1',_0x1287e8['push'](_0x534b12['replace'](/\*/g,'%'))),_0x48c51f+='\x0a\x20\x20\x20\x20\x20\x20ORDER\x20BY\x20key\x0a\x20\x20\x20\x20\x20\x20OFFSET\x20$'+(_0x1287e8['length']+0x1)+'\x20LIMIT\x20$'+(_0x1287e8['length']+0x2)+'\x0a\x20\x20\x20\x20',_0x1287e8['push'](_0x67cbd2['toString']()),_0x1287e8['push'](_0x29e6b2['toString']()),{'sql':_0x48c51f,'params':_0x1287e8};}async['rename'](_0x22a1cd,_0x258d51,_0x5cefef){const {sql:_0x2d76e7,params:_0x4fe819}=this['_rename'](_0x22a1cd,_0x258d51);if(_0x5cefef)return _0x5cefef['addCommand'](_0x2d76e7,_0x4fe819,'void'),Promise['resolve']();else{const _0x1631e3=this['pgClient'];try{await _0x1631e3['query']('BEGIN'),await _0x1631e3['query'](_0x2d76e7,_0x4fe819),await _0x1631e3['query']('COMMIT');}catch(_0x3192cc){await _0x1631e3['query']('ROLLBACK');throw _0x3192cc;}}}['_rename'](_0x3fc320,_0x49acc5){const _0x2c896c=this['tableForKey'](_0x3fc320,'list'),_0x2bf191='\x0a\x20\x20\x20\x20\x20\x20UPDATE\x20'+_0x2c896c+'\x20SET\x20key\x20=\x20$2\x20WHERE\x20key\x20=\x20$1;\x0a\x20\x20\x20\x20',_0xaa3eec=[_0x3fc320,_0x49acc5];return{'sql':_0x2bf191,'params':_0xaa3eec};}async['exists'](_0x18b277){const {sql:_0x198bce,params:_0x3f24ac}=this['_exists'](_0x18b277),_0x57045d=await this['pgClient']['query'](_0x198bce,_0x3f24ac);return _0x57045d['rows']['length']?_0x57045d['rows'][0x0]['table_name']:0x0;}['_exists'](_0x453396){const _0x527643=this['tableForKey'](_0x453396),_0x160ff7='\x0a\x20\x20\x20\x20\x20\x20SELECT\x20FROM\x20'+_0x527643+'\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',_0x2fcf61=[_0x453396];return{'sql':_0x160ff7,'params':_0x2fcf61};}}function _0x390d(_0x5375b0,_0x41ecca){const _0x49af02=_0x49af();return _0x390d=function(_0x390d38,_0x8f7c15){_0x390d38=_0x390d38-0x11c;let _0x44022d=_0x49af02[_0x390d38];return _0x44022d;},_0x390d(_0x5375b0,_0x41ecca);}exports['KVSQL']=KVSQL;
|
|
@@ -99,7 +99,7 @@ declare class PostgresStoreService extends StoreService<ProviderClient, Provider
|
|
|
99
99
|
interrupt(topic: string, jobId: string, options?: JobInterruptOptions): Promise<void>;
|
|
100
100
|
scrub(jobId: string): Promise<void>;
|
|
101
101
|
findJobs(queryString?: string, limit?: number, batchSize?: number, cursor?: string): Promise<[string, string[]]>;
|
|
102
|
-
findJobFields(jobId: string, fieldMatchPattern?: string, limit?: number, batchSize?: number, cursor?: string): Promise<[string,
|
|
102
|
+
findJobFields(jobId: string, fieldMatchPattern?: string, limit?: number, batchSize?: number, cursor?: string): Promise<[string, Record<string, string>]>;
|
|
103
103
|
setThrottleRate(options: ThrottleOptions): Promise<void>;
|
|
104
104
|
getThrottleRates(): Promise<StringStringType>;
|
|
105
105
|
getThrottleRate(topic: string): Promise<number>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
'use strict';(function(_0x23ae0d,_0xc0cf46){const _0x42782=_0x1a74,_0x599df6=_0x23ae0d();while(!![]){try{const _0x11f379=-parseInt(_0x42782(0x1f9))/0x1*(parseInt(_0x42782(0x1f2))/0x2)+parseInt(_0x42782(0x1f5))/0x3+-parseInt(_0x42782(0x1f4))/0x4+parseInt(_0x42782(0x1fb))/0x5*(-parseInt(_0x42782(0x1f7))/0x6)+-parseInt(_0x42782(0x1f6))/0x7*(parseInt(_0x42782(0x1f8))/0x8)+-parseInt(_0x42782(0x1fa))/0x9+-parseInt(_0x42782(0x1f3))/0xa*(-parseInt(_0x42782(0x1f1))/0xb);if(_0x11f379===_0xc0cf46)break;else _0x599df6['push'](_0x599df6['shift']());}catch(_0xaf9229){_0x599df6['push'](_0x599df6['shift']());}}}(_0x328e,0x685db));function _0x1a74(_0x959dea,_0x31f279){const _0x328ef6=_0x328e();return _0x1a74=function(_0x1a745b,_0x1d77f7){_0x1a745b=_0x1a745b-0x1f1;let _0x2ca883=_0x328ef6[_0x1a745b];return _0x2ca883;},_0x1a74(_0x959dea,_0x31f279);}function _0x328e(){const _0x47f22d=['28674030XbLegh','2187772oxVaeJ','57498UfELDi','112VfVbmZ','6lXuvWW','256792oKwoRa','606413TjLBXV','5521581XlKGUg','893185jKaXLz','11KyxREH','2AlJNsI'];_0x328e=function(){return _0x47f22d;};return _0x328e();}var __createBinding=this&&this['__createBinding']||(Object['create']?function(_0x3db18c,_0x32967b,_0x1caf9a,_0x5a9f87){if(_0x5a9f87===undefined)_0x5a9f87=_0x1caf9a;var _0x4c3bca=Object['getOwnPropertyDescriptor'](_0x32967b,_0x1caf9a);(!_0x4c3bca||('get'in _0x4c3bca?!_0x32967b['__esModule']:_0x4c3bca['writable']||_0x4c3bca['configurable']))&&(_0x4c3bca={'enumerable':!![],'get':function(){return _0x32967b[_0x1caf9a];}}),Object['defineProperty'](_0x3db18c,_0x5a9f87,_0x4c3bca);}:function(_0x3b54af,_0x328601,_0x243b4e,_0x4afd7f){if(_0x4afd7f===undefined)_0x4afd7f=_0x243b4e;_0x3b54af[_0x4afd7f]=_0x328601[_0x243b4e];}),__setModuleDefault=this&&this['__setModuleDefault']||(Object['create']?function(_0x1042a6,_0x2dcba0){Object['defineProperty'](_0x1042a6,'default',{'enumerable':!![],'value':_0x2dcba0});}:function(_0x50fc27,_0x2a76b6){_0x50fc27['default']=_0x2a76b6;}),__importStar=this&&this['__importStar']||function(_0x582639){if(_0x582639&&_0x582639['__esModule'])return _0x582639;var _0x32913c={};if(_0x582639!=null){for(var _0x422298 in _0x582639)if(_0x422298!=='default'&&Object['prototype']['hasOwnProperty']['call'](_0x582639,_0x422298))__createBinding(_0x32913c,_0x582639,_0x422298);}return __setModuleDefault(_0x32913c,_0x582639),_0x32913c;};Object['defineProperty'](exports,'__esModule',{'value':!![]}),exports['PostgresStoreService']=void 0x0;const errors_1=require('../../../../modules/errors'),key_1=require('../../../../modules/key'),serializer_1=require('../../../serializer'),utils_1=require('../../../../modules/utils'),enums_1=require('../../../../modules/enums'),cache_1=require('../../cache'),__1=require('../..'),kvsql_1=require('./kvsql');class PostgresStoreService extends __1['StoreService']{['transact'](){return this['storeClient']['transact']();}constructor(_0x3bea59){super(_0x3bea59),this['pgClient']=_0x3bea59,this['storeClient']=new kvsql_1['KVSQL'](_0x3bea59,this['namespace'],this['appId']);}async['init'](_0x11bd53=key_1['HMNS'],_0x1c8c6d,_0xac8927){this['storeClient']['namespace']=this['namespace']=_0x11bd53,this['storeClient']['appId']=this['appId']=_0x1c8c6d,this['logger']=_0xac8927,await this['deploy'](_0x1c8c6d);const _0x32b628=await this['getSettings'](!![]);return this['cache']=new cache_1['Cache'](_0x1c8c6d,_0x32b628),this['serializer']=new serializer_1['SerializerService'](),await this['getApp'](_0x1c8c6d),this['cache']['getApps']();}async['deploy'](_0x1d39da){const _0x2a7151=this['pgClient'];try{const _0x1d3d21=this['getAdvisoryLockId'](_0x1d39da),_0x4db177=await _0x2a7151['query']('SELECT\x20pg_try_advisory_lock($1)\x20AS\x20locked',[_0x1d3d21]);if(_0x4db177['rows'][0x0]['locked']){await _0x2a7151['query']('BEGIN');const _0x364b9c=await this['checkIfTablesExist'](_0x2a7151,_0x1d39da);!_0x364b9c&&await this['createTables'](_0x2a7151,_0x1d39da),await _0x2a7151['query']('COMMIT'),await _0x2a7151['query']('SELECT\x20pg_advisory_unlock($1)',[_0x1d3d21]);}else await this['waitForTablesCreation'](_0x2a7151,_0x1d3d21,_0x1d39da);}catch(_0x475469){this['logger']['error']('Error\x20deploying\x20tables',{'error':_0x475469});throw _0x475469;}}['getAdvisoryLockId'](_0x2be04d){return this['hashStringToInt'](_0x2be04d);}['hashStringToInt'](_0x17e5af){let _0x71884b=0x0;for(let _0x5b9a15=0x0;_0x5b9a15<_0x17e5af['length'];_0x5b9a15++){_0x71884b=(_0x71884b<<0x5)-_0x71884b+_0x17e5af['charCodeAt'](_0x5b9a15),_0x71884b|=0x0;}return Math['abs'](_0x71884b);}async['waitForTablesCreation'](_0x4f055d,_0x351574,_0x17a55e){let _0x3513dc=0x0;const _0x2c0e44=0x14;while(_0x3513dc<_0x2c0e44){await(0x0,utils_1['sleepFor'])(0x96);const _0x383417=await _0x4f055d['query']('SELECT\x20NOT\x20EXISTS\x20(SELECT\x201\x20FROM\x20pg_locks\x20WHERE\x20locktype\x20=\x20\x27advisory\x27\x20AND\x20objid\x20=\x20$1::bigint)\x20AS\x20unlocked',[_0x351574]);if(_0x383417['rows'][0x0]['unlocked']){const _0x15a2a4=await this['checkIfTablesExist'](_0x4f055d,_0x17a55e);if(_0x15a2a4)return;}_0x3513dc++;}throw new Error('Timeout\x20waiting\x20for\x20table\x20creation');}async['checkIfTablesExist'](_0x621d79,_0xbb8040){const _0x465631=this['getTableNames'](_0xbb8040),_0x52ba60=_0x465631['map'](_0x248825=>_0x621d79['query']('SELECT\x20to_regclass(\x27public.'+_0x248825+'\x27)\x20AS\x20table')),_0x53ba63=await Promise['all'](_0x52ba60);return _0x53ba63['every'](_0x255289=>_0x255289['rows'][0x0]['table']!==null);}async['createTables'](_0x476b26,_0x4f1a1e){await _0x476b26['query']('BEGIN');const _0x24c59=this['getTableDefinitions'](this['storeClient']['safeName'](_0x4f1a1e));for(const _0x563b56 of _0x24c59){switch(_0x563b56['type']){case'string':await _0x476b26['query']('\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20CREATE\x20TABLE\x20IF\x20NOT\x20EXISTS\x20'+_0x563b56['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 _0x476b26['query']('\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20CREATE\x20TABLE\x20IF\x20NOT\x20EXISTS\x20'+_0x563b56['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'list':await _0x476b26['query']('\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20CREATE\x20TABLE\x20IF\x20NOT\x20EXISTS\x20'+_0x563b56['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 _0x476b26['query']('\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20CREATE\x20INDEX\x20IF\x20NOT\x20EXISTS\x20idx_'+_0x563b56['name']+'_key_expiry\x20ON\x20'+_0x563b56['name']+'\x20(key,\x20expiry);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20');break;case'sorted_set':await _0x476b26['query']('\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20CREATE\x20TABLE\x20IF\x20NOT\x20EXISTS\x20'+_0x563b56['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 _0x476b26['query']('\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20CREATE\x20INDEX\x20IF\x20NOT\x20EXISTS\x20idx_'+_0x563b56['name']+'_key_score_member\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20ON\x20'+_0x563b56['name']+'\x20(key,\x20score,\x20member);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20');break;default:this['logger']['warn']('Unknown\x20table\x20type\x20for\x20'+_0x563b56['name']);break;}}await _0x476b26['query']('COMMIT');}['getTableNames'](_0x4dccd0){const _0x5f36cb=[];_0x5f36cb['push']('hotmesh_applications','hotmesh_connections');const _0xbfea88=['throttles','roles','task_priorities','task_schedules','task_lists','events','jobs','stats_counted','stats_indexed','stats_ordered','versions','signal_patterns','signal_registry','symbols'];return _0xbfea88['forEach'](_0x1ecf7d=>{_0x5f36cb['push']('hotmesh_'+this['storeClient']['safeName'](_0x4dccd0)+'_'+_0x1ecf7d);}),_0x5f36cb;}['getTableDefinitions'](_0x3d88eb){const _0x42e8c6=[{'name':'hotmesh_applications','type':'hash'},{'name':'hotmesh_connections','type':'hash'},{'name':'hotmesh_'+_0x3d88eb+'_throttles','type':'hash'},{'name':'hotmesh_'+_0x3d88eb+'_roles','type':'string'},{'name':'hotmesh_'+_0x3d88eb+'_task_schedules','type':'sorted_set'},{'name':'hotmesh_'+_0x3d88eb+'_task_priorities','type':'sorted_set'},{'name':'hotmesh_'+_0x3d88eb+'_task_lists','type':'list'},{'name':'hotmesh_'+_0x3d88eb+'_events','type':'hash'},{'name':'hotmesh_'+_0x3d88eb+'_jobs','type':'hash'},{'name':'hotmesh_'+_0x3d88eb+'_stats_counted','type':'hash'},{'name':'hotmesh_'+_0x3d88eb+'_stats_ordered','type':'sorted_set'},{'name':'hotmesh_'+_0x3d88eb+'_stats_indexed','type':'list'},{'name':'hotmesh_'+_0x3d88eb+'_versions','type':'hash'},{'name':'hotmesh_'+_0x3d88eb+'_signal_patterns','type':'hash'},{'name':'hotmesh_'+_0x3d88eb+'_symbols','type':'hash'},{'name':'hotmesh_'+_0x3d88eb+'_signal_registry','type':'string'}];return _0x42e8c6;}['isSuccessful'](_0x3d43fd){return _0x3d43fd>0x0||_0x3d43fd==='OK'||_0x3d43fd===!![];}async['delistSignalKey'](_0x301d25,_0xb2a841){await this['kvsql']()['del'](_0x301d25+':'+_0xb2a841);}async['zAdd'](_0x5ea24a,_0x431d17,_0x1bf30e,_0x3ce08d){return await this['kvsql'](_0x3ce08d)['zadd'](_0x5ea24a,Number(_0x431d17),_0x1bf30e['toString']());}async['zRangeByScore'](_0x1f7d3a,_0x26e02f,_0x41e251){const _0x93623d=await this['kvsql']()['zrangebyscore'](_0x1f7d3a,Number(_0x26e02f),Number(_0x41e251));if(_0x93623d?.['length']>0x0)return _0x93623d[0x0];return null;}['mintKey'](_0xe6b214,_0x1c233d){if(!this['namespace'])throw new Error('namespace\x20not\x20set');return key_1['KeyService']['mintKey'](this['namespace'],_0xe6b214,_0x1c233d);}['kvsql'](_0x2e12b4){return _0x2e12b4||this['storeClient'];}['invalidateCache'](){this['cache']['invalidate']();}async['reserveScoutRole'](_0xede838,_0xf45100=enums_1['HMSH_SCOUT_INTERVAL_SECONDS']){const _0x3dc17f=this['mintKey'](key_1['KeyType']['WORK_ITEMS'],{'appId':this['appId'],'scoutType':_0xede838}),_0x1d0739=await this['kvsql']()['set'](_0x3dc17f,_0xede838+':'+(0x0,utils_1['formatISODate'])(new Date()),{'nx':!![],'ex':_0xf45100-0x1});return this['isSuccessful'](_0x1d0739);}async['releaseScoutRole'](_0x4e1769){const _0x45d0e4=this['mintKey'](key_1['KeyType']['WORK_ITEMS'],{'appId':this['appId'],'scoutType':_0x4e1769}),_0x8a5750=await this['kvsql']()['del'](_0x45d0e4);return this['isSuccessful'](_0x8a5750);}async['getSettings'](_0x1af088=![]){let _0x123020=this['cache']?.['getSettings']();if(_0x123020)return _0x123020;else{if(_0x1af088){const _0xa40afb=await Promise['resolve']()['then'](()=>__importStar(require('../../../../package.json'))),_0x2ecf3f=_0xa40afb['version']||'0.0.0';return _0x123020={'namespace':key_1['HMNS'],'version':_0x2ecf3f},await this['setSettings'](_0x123020),_0x123020;}}throw new Error('settings\x20not\x20found');}async['setSettings'](_0x3373bd){const _0x722b8b={},_0x5977e9=this['mintKey'](key_1['KeyType']['HOTMESH'],_0x722b8b);return await this['kvsql']()['hset'](_0x5977e9,_0x3373bd);}async['reserveSymbolRange'](_0xf2fa07,_0x3ec57f,_0x2bf099,_0xd80d47=0x1){const _0x5df317=this['mintKey'](key_1['KeyType']['SYMKEYS'],{'appId':this['appId']}),_0x563936=this['mintKey'](key_1['KeyType']['SYMKEYS'],{'activityId':_0xf2fa07,'appId':this['appId']}),_0x3fec0f=await this['kvsql']()['hsetnx'](_0x5df317,_0xf2fa07,'?:?');if(_0x3fec0f){const _0xb4284f=await this['kvsql']()['hincrbyfloat'](_0x5df317,':cursor',_0x3ec57f),_0x2183e3=_0xb4284f-_0x3ec57f,_0x50fbd3=_0x2183e3+':'+(_0xb4284f-0x1);await this['kvsql']()['hset'](_0x5df317,{[_0xf2fa07]:_0x50fbd3});const _0x425b14=this['seedSymbols'](_0xf2fa07,_0x2bf099,_0x2183e3);return await this['kvsql']()['hset'](_0x563936,_0x425b14),[_0x2183e3+serializer_1['MDATA_SYMBOLS']['SLOTS'],_0xb4284f-0x1,{}];}else{const _0x392414=await this['kvsql']()['hget'](_0x5df317,_0xf2fa07),[_0x477ffb]=_0x392414['split'](':');if(_0x477ffb==='?'){await(0x0,utils_1['sleepFor'])(_0xd80d47*0x3e8);if(_0xd80d47<0x5)return this['reserveSymbolRange'](_0xf2fa07,_0x3ec57f,_0x2bf099,_0xd80d47+0x1);else throw new Error('Symbol\x20range\x20reservation\x20failed\x20due\x20to\x20deployment\x20contention');}else{const _0x3b6b92=parseInt(_0x477ffb,0xa),_0x4b9a47=await this['kvsql']()['hgetall'](_0x563936),_0x4770a1=Object['keys'](_0x4b9a47)['length'],_0x2104a3=_0x3b6b92+serializer_1['MDATA_SYMBOLS']['SLOTS']+_0x4770a1,_0x1831ba=Number(_0x3b6b92+_0x3ec57f-0x1);return[_0x2104a3,_0x1831ba,_0x4b9a47];}}}async['getAllSymbols'](){const _0x3f7115=this['mintKey'](key_1['KeyType']['SYMKEYS'],{'appId':this['appId']}),_0x273e21=await this['kvsql']()['hgetall'](_0x3f7115),_0x1ee404=Object['keys'](_0x273e21)['sort']();delete _0x1ee404[':cursor'];const _0x5617d2=this['kvsql'](this['transact']());for(const _0x45335 of _0x1ee404){const _0x288d9a=this['mintKey'](key_1['KeyType']['SYMKEYS'],{'activityId':_0x45335,'appId':this['appId']});_0x5617d2['hgetall'](_0x288d9a);}const _0x23f1d0=await _0x5617d2['exec'](),_0x279fba={};return _0x23f1d0['forEach']((_0x20f299,_0x40aa2e)=>{if(_0x20f299){let _0x579e18;Array['isArray'](_0x20f299)&&_0x20f299['length']===0x2?_0x579e18=_0x20f299[0x1]:_0x579e18=_0x20f299;for(const [_0xb8fa86,_0x3232ab]of Object['entries'](_0x579e18)){_0x279fba[_0x3232ab]=_0xb8fa86['startsWith'](_0x1ee404[_0x40aa2e])?_0xb8fa86:_0x1ee404[_0x40aa2e]+'/'+_0xb8fa86;}}}),_0x279fba;}async['getSymbols'](_0x270854){let _0x38cc64=this['cache']['getSymbols'](this['appId'],_0x270854);if(_0x38cc64)return _0x38cc64;else{const _0x304312={'activityId':_0x270854,'appId':this['appId']},_0x178769=this['mintKey'](key_1['KeyType']['SYMKEYS'],_0x304312);return _0x38cc64=await this['kvsql']()['hgetall'](_0x178769),this['cache']['setSymbols'](this['appId'],_0x270854,_0x38cc64),_0x38cc64;}}async['addSymbols'](_0x3bae28,_0x59eb6e){if(!_0x59eb6e||!Object['keys'](_0x59eb6e)['length'])return![];const _0x2a7fa3={'activityId':_0x3bae28,'appId':this['appId']},_0x54640c=this['mintKey'](key_1['KeyType']['SYMKEYS'],_0x2a7fa3),_0xa562c0=await this['kvsql']()['hset'](_0x54640c,_0x59eb6e);return this['cache']['deleteSymbols'](this['appId'],_0x3bae28),_0xa562c0>0x0;}['seedSymbols'](_0x57b5df,_0x520691,_0x288000){if(_0x520691==='JOB')return this['seedJobSymbols'](_0x288000);return this['seedActivitySymbols'](_0x288000,_0x57b5df);}['seedJobSymbols'](_0xd90bf7){const _0x237a5d={};return serializer_1['MDATA_SYMBOLS']['JOB']['KEYS']['forEach'](_0xddf995=>{_0x237a5d['metadata/'+_0xddf995]=(0x0,utils_1['getSymKey'])(_0xd90bf7),_0xd90bf7++;}),_0x237a5d;}['seedActivitySymbols'](_0x976e62,_0x34b716){const _0x48012e={};return serializer_1['MDATA_SYMBOLS']['ACTIVITY']['KEYS']['forEach'](_0x3f4cdd=>{_0x48012e[_0x34b716+'/output/metadata/'+_0x3f4cdd]=(0x0,utils_1['getSymKey'])(_0x976e62),_0x976e62++;}),_0x48012e;}async['getSymbolValues'](){let _0x3e033c=this['cache']['getSymbolValues'](this['appId']);if(_0x3e033c)return _0x3e033c;else{const _0x4adab8=this['mintKey'](key_1['KeyType']['SYMVALS'],{'appId':this['appId']});return _0x3e033c=await this['kvsql']()['hgetall'](_0x4adab8),this['cache']['setSymbolValues'](this['appId'],_0x3e033c),_0x3e033c;}}async['addSymbolValues'](_0x21231f){if(!_0x21231f||!Object['keys'](_0x21231f)['length'])return![];const _0x3eea41=this['mintKey'](key_1['KeyType']['SYMVALS'],{'appId':this['appId']}),_0x186cc2=await this['kvsql']()['hset'](_0x3eea41,_0x21231f);return this['cache']['deleteSymbolValues'](this['appId']),this['isSuccessful'](_0x186cc2);}async['getSymbolKeys'](_0x49e3cc){const _0x33a6fd=[];for(const _0x12cf3d of _0x49e3cc){_0x33a6fd['push'](this['getSymbols'](_0x12cf3d));}const _0x493653=await Promise['all'](_0x33a6fd),_0x1768cf={};for(const _0x13a498 of _0x49e3cc){_0x1768cf[_0x13a498]=_0x493653['shift']();}return _0x1768cf;}async['getApp'](_0x46a7cb,_0x3ee7e4=![]){let _0x434ac9=this['cache']['getApp'](_0x46a7cb);if(_0x3ee7e4||!(_0x434ac9&&Object['keys'](_0x434ac9)['length']>0x0)){const _0x530f5e={'appId':_0x46a7cb},_0x37d510=this['mintKey'](key_1['KeyType']['APP'],_0x530f5e),_0x218c3a=await this['kvsql']()['hgetall'](_0x37d510);if(!_0x218c3a)return null;_0x434ac9={};for(const _0x582bd1 in _0x218c3a){try{_0x582bd1==='active'?_0x434ac9[_0x582bd1]=_0x218c3a[_0x582bd1]==='true':_0x434ac9[_0x582bd1]=_0x218c3a[_0x582bd1];}catch(_0x62eaed){_0x434ac9[_0x582bd1]=_0x218c3a[_0x582bd1];}}this['cache']['setApp'](_0x46a7cb,_0x434ac9);}return _0x434ac9;}async['setApp'](_0x2e29e3,_0x24589c){const _0x40e295={'appId':_0x2e29e3},_0x55c49c=this['mintKey'](key_1['KeyType']['APP'],_0x40e295),_0x446709='versions/'+_0x24589c,_0x4a6c46={'id':_0x2e29e3,'version':_0x24589c,[_0x446709]:'deployed:'+(0x0,utils_1['formatISODate'])(new Date())};return await this['kvsql']()['hset'](_0x55c49c,_0x4a6c46),this['cache']['setApp'](_0x2e29e3,_0x4a6c46),_0x4a6c46;}async['activateAppVersion'](_0x538ff8,_0x357c9e){const _0x360ecd={'appId':_0x538ff8},_0x4ef846=this['mintKey'](key_1['KeyType']['APP'],_0x360ecd),_0x4e6f19='versions/'+_0x357c9e,_0x2fb5e4=await this['getApp'](_0x538ff8,!![]);if(_0x2fb5e4&&_0x2fb5e4[_0x4e6f19]){const _0x3c41c1={'id':_0x538ff8,'version':_0x357c9e['toString'](),[_0x4e6f19]:'activated:'+(0x0,utils_1['formatISODate'])(new Date()),'active':!![]};return Object['entries'](_0x3c41c1)['forEach'](([_0x28f15e,_0x4219cf])=>{_0x3c41c1[_0x28f15e]=_0x4219cf['toString']();}),await this['kvsql']()['hset'](_0x4ef846,_0x3c41c1),!![];}throw new Error('Version\x20'+_0x357c9e+'\x20does\x20not\x20exist\x20for\x20app\x20'+_0x538ff8);}async['registerAppVersion'](_0x358c65,_0x5ea955){const _0x380ad1={'appId':_0x358c65},_0x3f6ff3=this['mintKey'](key_1['KeyType']['APP'],_0x380ad1),_0x17dcec={'id':_0x358c65,'version':_0x5ea955['toString'](),['versions/'+_0x5ea955]:(0x0,utils_1['formatISODate'])(new Date())};return await this['kvsql']()['hset'](_0x3f6ff3,_0x17dcec);}async['setStats'](_0x27b5f4,_0x4ea352,_0x1cd9dd,_0x213101,_0x15bd87,_0x31b723){const _0x1aac09={'appId':_0x15bd87['id'],'jobId':_0x4ea352,'jobKey':_0x27b5f4,'dateTime':_0x1cd9dd},_0x1b3f8c=_0x31b723||this['transact']();if(_0x213101['general']['length']){const _0x2a0422=this['mintKey'](key_1['KeyType']['JOB_STATS_GENERAL'],_0x1aac09);for(const {target:_0x5c71f3,value:_0xcf6533}of _0x213101['general']){this['kvsql'](_0x1b3f8c)['hincrbyfloat'](_0x2a0422,_0x5c71f3,_0xcf6533);}}for(const {target:_0x299ce3,value:_0x20a5e5}of _0x213101['index']){const _0x336a90={..._0x1aac09,'facet':_0x299ce3},_0x11f11f=this['mintKey'](key_1['KeyType']['JOB_STATS_INDEX'],_0x336a90);this['kvsql'](_0x1b3f8c)['rpush'](_0x11f11f,_0x20a5e5['toString']());}for(const {target:_0x437610,value:_0x2df0c9}of _0x213101['median']){const _0x3fb870={..._0x1aac09,'facet':_0x437610},_0xdf7f74=this['mintKey'](key_1['KeyType']['JOB_STATS_MEDIAN'],_0x3fb870);await this['kvsql'](_0x1b3f8c)['zadd'](_0xdf7f74,Number(_0x2df0c9),_0x437610);}if(!_0x31b723)return await _0x1b3f8c['exec']();}['hGetAllResult'](_0x288614){return _0x288614;}async['getJobStats'](_0x466043){const _0x3979a1=this['kvsql'](this['transact']());for(const _0x191962 of _0x466043){_0x3979a1['hgetall'](_0x191962);}const _0x5342bd=await _0x3979a1['exec'](),_0x8350c={};for(const [_0x4fef1a,_0x2f85d9]of _0x5342bd['entries']()){const _0x296aa9=_0x466043[_0x4fef1a],_0x55a6ed=_0x2f85d9;if(_0x55a6ed&&Object['keys'](_0x55a6ed)['length']>0x0){const _0x598a9f={..._0x55a6ed};for(const [_0x3a301b,_0x51fed9]of Object['entries'](_0x598a9f)){_0x598a9f[_0x3a301b]=Number(_0x51fed9);}_0x8350c[_0x296aa9]=_0x598a9f;}else _0x8350c[_0x296aa9]={};}return _0x8350c;}async['getJobIds'](_0x465ec7,_0x58cecc){const _0x36d089=this['kvsql'](this['transact']());for(const _0x4fd2f6 of _0x465ec7){_0x36d089['lrange'](_0x4fd2f6,_0x58cecc[0x0],_0x58cecc[0x1]);}const _0x19779c=await _0x36d089['exec'](),_0xd64739={};for(const [_0x4c17cf,_0x4aa6a8]of _0x19779c['entries']()){const _0x499cdc=_0x465ec7[_0x4c17cf],_0x3576c7=_0x4aa6a8[0x1]||_0x4aa6a8;_0x3576c7&&_0x3576c7['length']>0x0?_0xd64739[_0x499cdc]=_0x3576c7:_0xd64739[_0x499cdc]=[];}return _0xd64739;}async['setStatus'](_0x3cf61a,_0x13a991,_0x3fc66b,_0x3229d4){const _0x2829a6=this['mintKey'](key_1['KeyType']['JOB_STATE'],{'appId':_0x3fc66b,'jobId':_0x13a991});return await this['kvsql'](_0x3229d4)['hincrbyfloat'](_0x2829a6,':',_0x3cf61a);}async['getStatus'](_0x464632,_0x4e48d7){const _0x1f3d5e=this['mintKey'](key_1['KeyType']['JOB_STATE'],{'appId':_0x4e48d7,'jobId':_0x464632}),_0x204e62=await this['kvsql']()['hget'](_0x1f3d5e,':');if(_0x204e62===null)throw new Error('Job\x20'+_0x464632+'\x20not\x20found');return Number(_0x204e62);}async['setState']({..._0x56e5a7},_0x4fe0e6,_0x1f5e09,_0x28ade8,_0x3cc540,_0xed5597){delete _0x56e5a7['metadata/js'];const _0x59908d=this['mintKey'](key_1['KeyType']['JOB_STATE'],{'appId':this['appId'],'jobId':_0x1f5e09}),_0x5726c1=await this['getSymbolKeys'](_0x28ade8),_0x584e43=await this['getSymbolValues']();this['serializer']['resetSymbols'](_0x5726c1,_0x584e43,_0x3cc540);const _0x58108f=this['serializer']['package'](_0x56e5a7,_0x28ade8);return _0x4fe0e6!==null?_0x58108f[':']=_0x4fe0e6['toString']():delete _0x58108f[':'],await this['kvsql'](_0xed5597)['hset'](_0x59908d,_0x58108f),_0x1f5e09;}async['getQueryState'](_0x53c1f3,_0x43f1ca){const _0x522d6d=this['mintKey'](key_1['KeyType']['JOB_STATE'],{'appId':this['appId'],'jobId':_0x53c1f3}),_0x46b414=_0x43f1ca['map'](_0x5cba28=>{if(_0x5cba28['startsWith']('\x22'))return _0x5cba28['slice'](0x1,-0x1);return'_'+_0x5cba28;}),_0x1c7334=await this['kvsql']()['hmget'](_0x522d6d,_0x46b414),_0x1a9fb5={};return _0x43f1ca['forEach']((_0x33a9a8,_0x35c85d)=>{_0x33a9a8['startsWith']('\x22')&&(_0x33a9a8=_0x33a9a8['slice'](0x1,-0x1)),_0x1a9fb5[_0x33a9a8]=_0x1c7334[_0x35c85d];}),_0x1a9fb5;}async['getState'](_0x583db2,_0x1a2807,_0x69eb8a){const _0x26bdaa=this['mintKey'](key_1['KeyType']['JOB_STATE'],{'appId':this['appId'],'jobId':_0x583db2}),_0xd82f35=Object['keys'](_0x1a2807),_0x1e2d08=await this['getSymbolKeys'](_0xd82f35);this['serializer']['resetSymbols'](_0x1e2d08,{},_0x69eb8a);const _0x17b707=this['serializer']['abbreviate'](_0x1a2807,_0xd82f35,[':']),_0xe9def5=await this['kvsql']()['hmget'](_0x26bdaa,_0x17b707),_0x46ba4e={};let _0x352390=![];_0x17b707['forEach']((_0xfe3f3b,_0x2f302b)=>{_0xe9def5[_0x2f302b]&&(_0x352390=!![]),_0x46ba4e[_0xfe3f3b]=_0xe9def5[_0x2f302b];});if(_0x352390){const _0x344a45=await this['getSymbolValues']();this['serializer']['resetSymbols'](_0x1e2d08,_0x344a45,_0x69eb8a);const _0x3b6a30=this['serializer']['unpackage'](_0x46ba4e,_0xd82f35);let _0x498752=0x0;return _0x3b6a30[':']&&(_0x498752=Number(_0x3b6a30[':']),_0x3b6a30['metadata/js']=_0x498752,delete _0x3b6a30[':']),[_0x3b6a30,_0x498752];}else throw new errors_1['GetStateError'](_0x583db2);}async['getRaw'](_0x4c5cb1){const _0x168535=this['mintKey'](key_1['KeyType']['JOB_STATE'],{'appId':this['appId'],'jobId':_0x4c5cb1}),_0x31b9fa=await this['kvsql']()['hgetall'](_0x168535);if(!_0x31b9fa)throw new errors_1['GetStateError'](_0x4c5cb1);return _0x31b9fa;}async['collate'](_0x1a359f,_0x138db7,_0x3ad707,_0xfe01a8,_0x3c0d0e){const _0xdc11f7=this['mintKey'](key_1['KeyType']['JOB_STATE'],{'appId':this['appId'],'jobId':_0x1a359f}),_0x585276=_0x138db7+'/output/metadata/as',_0x1a2d90=[_0x138db7],_0x473d01=await this['getSymbolKeys'](_0x1a2d90),_0x165717=await this['getSymbolValues']();this['serializer']['resetSymbols'](_0x473d01,_0x165717,_0xfe01a8);const _0x1f08bc={[_0x585276]:_0x3ad707['toString']()},_0x362ce0=this['serializer']['package'](_0x1f08bc,_0x1a2d90),_0x456eba=Object['keys'](_0x362ce0)[0x0];return await this['kvsql'](_0x3c0d0e)['hincrbyfloat'](_0xdc11f7,_0x456eba,_0x3ad707);}async['collateSynthetic'](_0x2e3a35,_0x14d0c3,_0x3abf86,_0x2e710d){const _0x575dc1=this['mintKey'](key_1['KeyType']['JOB_STATE'],{'appId':this['appId'],'jobId':_0x2e3a35});return await this['kvsql'](_0x2e710d)['hincrbyfloat'](_0x575dc1,_0x14d0c3,_0x3abf86);}async['setStateNX'](_0x27ff49,_0x26a7d5,_0x1397fb){const _0x54955e=this['mintKey'](key_1['KeyType']['JOB_STATE'],{'appId':_0x26a7d5,'jobId':_0x27ff49}),_0x5bde6e=await this['kvsql']()['hsetnx'](_0x54955e,':',_0x1397fb?.['toString']()??'1');return this['isSuccessful'](_0x5bde6e);}async['getSchema'](_0x1b5d25,_0xfa4f18){const _0x4943c6=this['cache']['getSchema'](_0xfa4f18['id'],_0xfa4f18['version'],_0x1b5d25);if(_0x4943c6)return _0x4943c6;else{const _0x410c9b=await this['getSchemas'](_0xfa4f18);return _0x410c9b[_0x1b5d25];}}async['getSchemas'](_0x530f57){let _0x4b9f6f=this['cache']['getSchemas'](_0x530f57['id'],_0x530f57['version']);if(_0x4b9f6f&&Object['keys'](_0x4b9f6f)['length']>0x0)return _0x4b9f6f;else{const _0x2f12b9={'appId':_0x530f57['id'],'appVersion':_0x530f57['version']},_0x114851=this['mintKey'](key_1['KeyType']['SCHEMAS'],_0x2f12b9);_0x4b9f6f={};const _0x165d47=await this['kvsql']()['hgetall'](_0x114851);return Object['entries'](_0x165d47)['forEach'](([_0x310f9f,_0x3addc8])=>{_0x4b9f6f[_0x310f9f]=JSON['parse'](_0x3addc8);}),this['cache']['setSchemas'](_0x530f57['id'],_0x530f57['version'],_0x4b9f6f),_0x4b9f6f;}}async['setSchemas'](_0x57e275,_0x33a666){const _0x55e3e7={'appId':_0x33a666['id'],'appVersion':_0x33a666['version']},_0x5a1f92=this['mintKey'](key_1['KeyType']['SCHEMAS'],_0x55e3e7),_0x586c40={..._0x57e275};Object['entries'](_0x586c40)['forEach'](([_0x200bb0,_0x362e29])=>{_0x586c40[_0x200bb0]=JSON['stringify'](_0x362e29);});const _0xa739bb=await this['kvsql']()['hset'](_0x5a1f92,_0x586c40);return this['cache']['setSchemas'](_0x33a666['id'],_0x33a666['version'],_0x57e275),_0xa739bb;}async['setSubscriptions'](_0x198883,_0x438aa9){const _0x522755={'appId':_0x438aa9['id'],'appVersion':_0x438aa9['version']},_0x35c2f8=this['mintKey'](key_1['KeyType']['SUBSCRIPTIONS'],_0x522755),_0x41891e={..._0x198883};Object['entries'](_0x41891e)['forEach'](([_0x3af861,_0x158ec2])=>{_0x41891e[_0x3af861]=JSON['stringify'](_0x158ec2);});const _0x432639=await this['kvsql']()['hset'](_0x35c2f8,_0x41891e);return this['cache']['setSubscriptions'](_0x438aa9['id'],_0x438aa9['version'],_0x198883),this['isSuccessful'](_0x432639);}async['getSubscriptions'](_0x1b5f3a){let _0x2d8fd3=this['cache']['getSubscriptions'](_0x1b5f3a['id'],_0x1b5f3a['version']);if(_0x2d8fd3&&Object['keys'](_0x2d8fd3)['length']>0x0)return _0x2d8fd3;else{const _0x26f0da={'appId':_0x1b5f3a['id'],'appVersion':_0x1b5f3a['version']},_0x42de4a=this['mintKey'](key_1['KeyType']['SUBSCRIPTIONS'],_0x26f0da);return _0x2d8fd3=await this['kvsql']()['hgetall'](_0x42de4a)||{},Object['entries'](_0x2d8fd3)['forEach'](([_0x4ece07,_0xa8b6f3])=>{_0x2d8fd3[_0x4ece07]=JSON['parse'](_0xa8b6f3);}),this['cache']['setSubscriptions'](_0x1b5f3a['id'],_0x1b5f3a['version'],_0x2d8fd3),_0x2d8fd3;}}async['getSubscription'](_0x51dac2,_0x460f98){const _0x33a5fe=await this['getSubscriptions'](_0x460f98);return _0x33a5fe[_0x51dac2];}async['setTransitions'](_0x44c548,_0x5b6662){const _0x26f4e5={'appId':_0x5b6662['id'],'appVersion':_0x5b6662['version']},_0x5c898f=this['mintKey'](key_1['KeyType']['SUBSCRIPTION_PATTERNS'],_0x26f4e5),_0x33d649={..._0x44c548};Object['entries'](_0x33d649)['forEach'](([_0x2aef4b,_0x91072a])=>{_0x33d649[_0x2aef4b]=JSON['stringify'](_0x91072a);});if(Object['keys'](_0x33d649)['length']!==0x0){const _0x3737c7=await this['kvsql']()['hset'](_0x5c898f,_0x33d649);return this['cache']['setTransitions'](_0x5b6662['id'],_0x5b6662['version'],_0x44c548),_0x3737c7;}}async['getTransitions'](_0x1d24a1){let _0xe50f51=this['cache']['getTransitions'](_0x1d24a1['id'],_0x1d24a1['version']);if(_0xe50f51&&Object['keys'](_0xe50f51)['length']>0x0)return _0xe50f51;else{const _0xf65774={'appId':_0x1d24a1['id'],'appVersion':_0x1d24a1['version']},_0x5b994d=this['mintKey'](key_1['KeyType']['SUBSCRIPTION_PATTERNS'],_0xf65774);_0xe50f51={};const _0x90f318=await this['kvsql']()['hgetall'](_0x5b994d);return Object['entries'](_0x90f318)['forEach'](([_0x9f055c,_0x4991c2])=>{_0xe50f51[_0x9f055c]=JSON['parse'](_0x4991c2);}),this['cache']['setTransitions'](_0x1d24a1['id'],_0x1d24a1['version'],_0xe50f51),_0xe50f51;}}async['setHookRules'](_0x4903e3){const _0x52c500=this['mintKey'](key_1['KeyType']['HOOKS'],{'appId':this['appId']}),_0x407f38={};Object['entries'](_0x4903e3)['forEach'](([_0x424c2a,_0x1742d6])=>{_0x407f38[_0x424c2a['toString']()]=JSON['stringify'](_0x1742d6);});if(Object['keys'](_0x407f38)['length']!==0x0){const _0x4581a8=await this['kvsql']()['hset'](_0x52c500,_0x407f38);return this['cache']['setHookRules'](this['appId'],_0x4903e3),_0x4581a8;}}async['getHookRules'](){let _0x205c1b=this['cache']['getHookRules'](this['appId']);if(_0x205c1b&&Object['keys'](_0x205c1b)['length']>0x0)return _0x205c1b;else{const _0x5d864a=this['mintKey'](key_1['KeyType']['HOOKS'],{'appId':this['appId']}),_0x12723d=await this['kvsql']()['hgetall'](_0x5d864a);return _0x205c1b={},Object['entries'](_0x12723d)['forEach'](([_0x2c95ef,_0x39bc5f])=>{_0x205c1b[_0x2c95ef]=JSON['parse'](_0x39bc5f);}),this['cache']['setHookRules'](this['appId'],_0x205c1b),_0x205c1b;}}async['setHookSignal'](_0x15bdf5,_0x5bf3f8){const _0xcfa246=this['mintKey'](key_1['KeyType']['SIGNALS'],{'appId':this['appId']}),{topic:_0x26e9f0,resolved:_0x214e94,jobId:_0x1e6dde}=_0x15bdf5,_0x3fc7e5=_0x26e9f0+':'+_0x214e94;await this['kvsql'](_0x5bf3f8)['setnxex'](_0xcfa246+':'+_0x3fc7e5,_0x1e6dde,Math['max'](_0x15bdf5['expire'],enums_1['HMSH_SIGNAL_EXPIRE']));}async['getHookSignal'](_0x40565e,_0x53780f){const _0xeeb2a1=this['mintKey'](key_1['KeyType']['SIGNALS'],{'appId':this['appId']}),_0xf8bc35=await this['kvsql']()['get'](_0xeeb2a1+':'+_0x40565e+':'+_0x53780f);return _0xf8bc35?_0xf8bc35['toString']():undefined;}async['deleteHookSignal'](_0x5071e5,_0x23dc95){const _0x350f87=this['mintKey'](key_1['KeyType']['SIGNALS'],{'appId':this['appId']}),_0x21f9f4=await this['kvsql']()['del'](_0x350f87+':'+_0x5071e5+':'+_0x23dc95);return _0x21f9f4?Number(_0x21f9f4):undefined;}async['addTaskQueues'](_0x3697a9){const _0x49a2d1=this['kvsql'](this['transact']()),_0x2c1bb8=this['mintKey'](key_1['KeyType']['WORK_ITEMS'],{'appId':this['appId']});for(const _0x2f9c0b of _0x3697a9){_0x49a2d1['zadd'](_0x2c1bb8,Date['now'](),_0x2f9c0b,{'nx':!![]});}await _0x49a2d1['exec']();}async['getActiveTaskQueue'](){let _0x47fcab=this['cache']['getActiveTaskQueue'](this['appId'])||null;if(!_0x47fcab){const _0x435f0f=this['mintKey'](key_1['KeyType']['WORK_ITEMS'],{'appId':this['appId']}),_0x3fdd79=await this['kvsql']()['zrange'](_0x435f0f,0x0,0x0);_0x47fcab=_0x3fdd79['length']>0x0?_0x3fdd79[0x0]:null,_0x47fcab&&this['cache']['setWorkItem'](this['appId'],_0x47fcab);}return _0x47fcab;}async['deleteProcessedTaskQueue'](_0x4e7216,_0x3d2e31,_0x10848f,_0x4f76a4=![]){const _0x26048b=this['mintKey'](key_1['KeyType']['WORK_ITEMS'],{'appId':this['appId']}),_0x29801e=await this['kvsql']()['zrem'](_0x26048b,_0x4e7216);_0x29801e&&(_0x4f76a4?(this['kvsql']()['expire'](_0x10848f,0x0),this['kvsql']()['expire'](_0x3d2e31['split'](':')['slice'](0x0,0x5)['join'](':'),0x0)):await this['kvsql']()['rename'](_0x10848f,_0x3d2e31)),this['cache']['removeWorkItem'](this['appId']);}async['processTaskQueue'](_0x439a1c,_0x353623){return await this['kvsql']()['lmove'](_0x439a1c,_0x353623,'LEFT','RIGHT');}async['expireJob'](_0x2cd984,_0x17aba8,_0xf2c38d){if(!isNaN(_0x17aba8)&&_0x17aba8>0x0){const _0x150c07=this['mintKey'](key_1['KeyType']['JOB_STATE'],{'appId':this['appId'],'jobId':_0x2cd984});await this['kvsql'](_0xf2c38d)['expire'](_0x150c07,_0x17aba8);}}async['getDependencies'](_0x544688){const _0xd55fc={'appId':this['appId'],'jobId':_0x544688},_0x3cc229=this['mintKey'](key_1['KeyType']['JOB_DEPENDENTS'],_0xd55fc);return this['kvsql']()['lrange'](_0x3cc229,0x0,-0x1);}async['registerTimeHook'](_0x4d3644,_0x5af287,_0x11a8f5,_0x1ef589,_0x55aa27,_0x5594de,_0x4889bc){const _0x1ae01e=this['mintKey'](key_1['KeyType']['TIME_RANGE'],{'appId':this['appId'],'timeValue':_0x55aa27}),_0x59ef07=[_0x1ef589,_0x11a8f5,_0x5af287,_0x5594de,_0x4d3644]['join'](key_1['VALSEP']),_0x1216eb=await this['kvsql'](_0x4889bc)['rpush'](_0x1ae01e,_0x59ef07);if(_0x4889bc||_0x1216eb===0x1){const _0x4aa1aa=this['mintKey'](key_1['KeyType']['TIME_RANGE'],{'appId':this['appId']});await this['zAdd'](_0x4aa1aa,_0x55aa27['toString'](),_0x1ae01e,_0x4889bc);}}async['getNextTask'](_0x857525){const _0x5c5ac5=this['mintKey'](key_1['KeyType']['TIME_RANGE'],{'appId':this['appId']});_0x857525=_0x857525||await this['zRangeByScore'](_0x5c5ac5,0x0,Date['now']());if(_0x857525){let [_0x4758a2,_0x5bdb8a]=this['resolveTaskKeyContext'](_0x857525);const _0x354499=await this['kvsql']()['lpop'](_0x5bdb8a);if(_0x354499){let [_0x3c4804,_0x251f25,_0x157ffb,_0x250b10,..._0x4fa71d]=_0x354499['split'](key_1['VALSEP']);const _0x13904b=_0x4fa71d['join'](key_1['VALSEP']);if(_0x3c4804==='delist')_0x4758a2='delist';else{if(_0x3c4804==='child')_0x4758a2='child';else _0x3c4804==='expire-child'&&(_0x3c4804='expire');}return[_0x857525,_0x13904b,_0x157ffb,_0x251f25,_0x4758a2];}return await this['kvsql']()['zrem'](_0x5c5ac5,_0x857525),!![];}return![];}['resolveTaskKeyContext'](_0x204958){if(_0x204958['startsWith'](key_1['TYPSEP']+'INTERRUPT'))return['interrupt',_0x204958['split'](key_1['TYPSEP'])[0x2]];else return _0x204958['startsWith'](key_1['TYPSEP']+'EXPIRE')?['expire',_0x204958['split'](key_1['TYPSEP'])[0x2]]:['sleep',_0x204958];}async['interrupt'](_0x1fcf20,_0x5df3f9,_0x1cad7d={}){try{const _0x419398=await this['getStatus'](_0x5df3f9,this['appId']);if(_0x419398<=0x0)throw new Error('Job\x20'+_0x5df3f9+'\x20already\x20completed');const _0x4db9a5=-0x3b9aca00,_0x2e544b=this['mintKey'](key_1['KeyType']['JOB_STATE'],{'appId':this['appId'],'jobId':_0x5df3f9}),_0x1d108f=await this['kvsql']()['hincrbyfloat'](_0x2e544b,':',_0x4db9a5);if(_0x1d108f<=_0x4db9a5)throw new Error('Job\x20'+_0x5df3f9+'\x20already\x20completed');if(_0x1cad7d['throw']!==![]){const _0x2f2ee5='metadata/err',_0x14f30f=['$'+_0x1fcf20],_0xe908f=await this['getSymbolKeys'](_0x14f30f),_0x4febd2=await this['getSymbolValues']();this['serializer']['resetSymbols'](_0xe908f,_0x4febd2,{});const _0x2037cb=JSON['stringify']({'code':_0x1cad7d['code']??enums_1['HMSH_CODE_INTERRUPT'],'message':_0x1cad7d['reason']??'job\x20['+_0x5df3f9+']\x20interrupted','stack':_0x1cad7d['stack']??'','job_id':_0x5df3f9}),_0x4b7014={[_0x2f2ee5]:_0x4db9a5['toString']()},_0xd64df4=this['serializer']['package'](_0x4b7014,_0x14f30f),_0x108d74=Object['keys'](_0xd64df4)[0x0];await this['kvsql']()['hset'](_0x2e544b,{[_0x108d74]:_0x2037cb});}}catch(_0x4406e8){if(!_0x1cad7d['suppress'])throw _0x4406e8;else this['logger']['debug']('suppressed-interrupt',{'message':_0x4406e8['message']});}}async['scrub'](_0x27da13){const _0x45fa0e=this['mintKey'](key_1['KeyType']['JOB_STATE'],{'appId':this['appId'],'jobId':_0x27da13});await this['kvsql']()['del'](_0x45fa0e);}async['findJobs'](_0x798745='*',_0x1df8a3=0x3e8,_0x4e76b2=0x3e8,_0x20f654='0'){const _0x32d360=this['mintKey'](key_1['KeyType']['JOB_STATE'],{'appId':this['appId'],'jobId':_0x798745}),{cursor:_0x59f335,keys:_0x25832f}=await this['kvsql']()['scan'](Number(_0x20f654),_0x1df8a3,_0x32d360);return[_0x59f335['toPrecision'](),_0x25832f];}async['findJobFields'](_0x34074e,_0x3b5953='*',_0x385b9f=0x3e8,_0x31512e=0x3e8,_0xc67af8='0'){const _0xc8c48b={},_0x477910=this['mintKey'](key_1['KeyType']['JOB_STATE'],{'appId':this['appId'],'jobId':_0x34074e});let _0x13bf9b=0x0;do{const {cursor:_0x74cdfc,items:_0x417b4a}=await this['kvsql']()['hscan'](_0x477910,_0xc67af8,_0x31512e,_0x3b5953==='*'?undefined:_0x3b5953);_0xc67af8=_0x74cdfc;for(const _0x1e6887 in _0x417b4a){_0x13bf9b++,_0xc8c48b[_0x1e6887]=_0x417b4a[_0x1e6887];}if(_0xc67af8==='0'||_0x13bf9b>=_0x385b9f)break;}while(!![]);return[_0xc67af8,_0xc8c48b];}async['setThrottleRate'](_0x2c62e5){const _0x32f40a=this['mintKey'](key_1['KeyType']['THROTTLE_RATE'],{'appId':this['appId']});if(_0x2c62e5['guid'])return;const _0x154208=_0x2c62e5['throttle']['toString']();if(_0x2c62e5['topic'])await this['kvsql']()['hset'](_0x32f40a,{[_0x2c62e5['topic']]:_0x154208});else{const _0x266c4c=this['transact']();_0x266c4c['del'](_0x32f40a),_0x266c4c['hset'](_0x32f40a,{':':_0x154208}),await _0x266c4c['exec']();}}async['getThrottleRates'](){const _0x3eb2d3=this['mintKey'](key_1['KeyType']['THROTTLE_RATE'],{'appId':this['appId']}),_0x4ea05c=await this['kvsql']()['hgetall'](_0x3eb2d3);return _0x4ea05c??{};}async['getThrottleRate'](_0x4c279c){const _0xbaf9cb=(_0x52b9cc,_0x5cca0e)=>{const _0x31e002=_0x5cca0e in _0x52b9cc?Number(_0x52b9cc[_0x5cca0e]):0x0;if(isNaN(_0x31e002))return 0x0;if(_0x31e002==-0x1)return enums_1['MAX_DELAY'];return Math['max'](Math['min'](_0x31e002,enums_1['MAX_DELAY']),0x0);},_0x5c4382=await this['getThrottleRates'](),_0x3786d0=_0xbaf9cb(_0x5c4382,':');if(_0x4c279c===':'||!(_0x4c279c in _0x5c4382))return _0x3786d0;return _0xbaf9cb(_0x5c4382,_0x4c279c);}}exports['PostgresStoreService']=PostgresStoreService;
|
|
1
|
+
'use strict';(function(_0x928fe3,_0x4a6e52){const _0x260f5d=_0x5cd3,_0x465488=_0x928fe3();while(!![]){try{const _0x57b086=parseInt(_0x260f5d(0xae))/0x1*(-parseInt(_0x260f5d(0xaf))/0x2)+-parseInt(_0x260f5d(0xac))/0x3+-parseInt(_0x260f5d(0xa6))/0x4*(parseInt(_0x260f5d(0xa9))/0x5)+parseInt(_0x260f5d(0xa7))/0x6+parseInt(_0x260f5d(0xab))/0x7*(-parseInt(_0x260f5d(0xad))/0x8)+parseInt(_0x260f5d(0xaa))/0x9*(parseInt(_0x260f5d(0xa8))/0xa)+parseInt(_0x260f5d(0xb0))/0xb;if(_0x57b086===_0x4a6e52)break;else _0x465488['push'](_0x465488['shift']());}catch(_0x775959){_0x465488['push'](_0x465488['shift']());}}}(_0x113e,0xb6022));function _0x113e(){const _0xcffb7f=['1329488TaLYmn','5793276nnzGFg','370GORhGO','15EsXUyW','292473wosdyT','7009471ZSuXol','3578886GsTJGf','8KXBqRJ','1WYHanG','2852838cJduKM','35149631OmvfXb'];_0x113e=function(){return _0xcffb7f;};return _0x113e();}var __createBinding=this&&this['__createBinding']||(Object['create']?function(_0x231c8f,_0x22bdbd,_0x16a549,_0x3542d6){if(_0x3542d6===undefined)_0x3542d6=_0x16a549;var _0x13e8c0=Object['getOwnPropertyDescriptor'](_0x22bdbd,_0x16a549);(!_0x13e8c0||('get'in _0x13e8c0?!_0x22bdbd['__esModule']:_0x13e8c0['writable']||_0x13e8c0['configurable']))&&(_0x13e8c0={'enumerable':!![],'get':function(){return _0x22bdbd[_0x16a549];}}),Object['defineProperty'](_0x231c8f,_0x3542d6,_0x13e8c0);}:function(_0x31380c,_0x34a4fa,_0x5f4837,_0x5b4ec5){if(_0x5b4ec5===undefined)_0x5b4ec5=_0x5f4837;_0x31380c[_0x5b4ec5]=_0x34a4fa[_0x5f4837];}),__setModuleDefault=this&&this['__setModuleDefault']||(Object['create']?function(_0x1e6eb4,_0x4076b6){Object['defineProperty'](_0x1e6eb4,'default',{'enumerable':!![],'value':_0x4076b6});}:function(_0x3b6cc9,_0x218344){_0x3b6cc9['default']=_0x218344;}),__importStar=this&&this['__importStar']||function(_0x2bfdc4){if(_0x2bfdc4&&_0x2bfdc4['__esModule'])return _0x2bfdc4;var _0x5ecba3={};if(_0x2bfdc4!=null){for(var _0x3319c1 in _0x2bfdc4)if(_0x3319c1!=='default'&&Object['prototype']['hasOwnProperty']['call'](_0x2bfdc4,_0x3319c1))__createBinding(_0x5ecba3,_0x2bfdc4,_0x3319c1);}return __setModuleDefault(_0x5ecba3,_0x2bfdc4),_0x5ecba3;};Object['defineProperty'](exports,'__esModule',{'value':!![]}),exports['PostgresStoreService']=void 0x0;const errors_1=require('../../../../modules/errors'),key_1=require('../../../../modules/key'),serializer_1=require('../../../serializer'),utils_1=require('../../../../modules/utils'),enums_1=require('../../../../modules/enums'),cache_1=require('../../cache'),__1=require('../..'),kvsql_1=require('./kvsql');class PostgresStoreService extends __1['StoreService']{['transact'](){return this['storeClient']['transact']();}constructor(_0x2bb3b4){super(_0x2bb3b4),this['pgClient']=_0x2bb3b4,this['storeClient']=new kvsql_1['KVSQL'](_0x2bb3b4,this['namespace'],this['appId']);}async['init'](_0x4b5992=key_1['HMNS'],_0x430f90,_0x32ec86){this['storeClient']['namespace']=this['namespace']=_0x4b5992,this['storeClient']['appId']=this['appId']=_0x430f90,this['logger']=_0x32ec86,await this['deploy'](_0x430f90);const _0x14e42f=await this['getSettings'](!![]);return this['cache']=new cache_1['Cache'](_0x430f90,_0x14e42f),this['serializer']=new serializer_1['SerializerService'](),await this['getApp'](_0x430f90),this['cache']['getApps']();}async['deploy'](_0x121bd9){const _0xb13775=this['pgClient'];try{const _0x4126c2=this['getAdvisoryLockId'](_0x121bd9),_0xa9dd26=await _0xb13775['query']('SELECT\x20pg_try_advisory_lock($1)\x20AS\x20locked',[_0x4126c2]);if(_0xa9dd26['rows'][0x0]['locked']){await _0xb13775['query']('BEGIN');const _0x43ebc3=await this['checkIfTablesExist'](_0xb13775,_0x121bd9);!_0x43ebc3&&await this['createTables'](_0xb13775,_0x121bd9),await _0xb13775['query']('COMMIT'),await _0xb13775['query']('SELECT\x20pg_advisory_unlock($1)',[_0x4126c2]);}else await this['waitForTablesCreation'](_0xb13775,_0x4126c2,_0x121bd9);}catch(_0x3297b3){this['logger']['error']('Error\x20deploying\x20tables',{'error':_0x3297b3});throw _0x3297b3;}}['getAdvisoryLockId'](_0x5ac700){return this['hashStringToInt'](_0x5ac700);}['hashStringToInt'](_0x1d7361){let _0x308e7f=0x0;for(let _0x505413=0x0;_0x505413<_0x1d7361['length'];_0x505413++){_0x308e7f=(_0x308e7f<<0x5)-_0x308e7f+_0x1d7361['charCodeAt'](_0x505413),_0x308e7f|=0x0;}return Math['abs'](_0x308e7f);}async['waitForTablesCreation'](_0x611ab1,_0x47e0e0,_0xf45b56){let _0x3fe44a=0x0;const _0x485113=0x14;while(_0x3fe44a<_0x485113){await(0x0,utils_1['sleepFor'])(0x96);const _0xe6304c=await _0x611ab1['query']('SELECT\x20NOT\x20EXISTS\x20(SELECT\x201\x20FROM\x20pg_locks\x20WHERE\x20locktype\x20=\x20\x27advisory\x27\x20AND\x20objid\x20=\x20$1::bigint)\x20AS\x20unlocked',[_0x47e0e0]);if(_0xe6304c['rows'][0x0]['unlocked']){const _0x1449b5=await this['checkIfTablesExist'](_0x611ab1,_0xf45b56);if(_0x1449b5)return;}_0x3fe44a++;}throw new Error('Timeout\x20waiting\x20for\x20table\x20creation');}async['checkIfTablesExist'](_0x6eb341,_0x3bd6c8){const _0x2edd13=this['getTableNames'](_0x3bd6c8),_0x38abb8=_0x2edd13['map'](_0x29dc8a=>_0x6eb341['query']('SELECT\x20to_regclass(\x27public.'+_0x29dc8a+'\x27)\x20AS\x20table')),_0x54dc80=await Promise['all'](_0x38abb8);return _0x54dc80['every'](_0x4ad46d=>_0x4ad46d['rows'][0x0]['table']!==null);}async['createTables'](_0x1d7ec4,_0x20f3bb){await _0x1d7ec4['query']('BEGIN');const _0x45f780=this['getTableDefinitions'](this['storeClient']['safeName'](_0x20f3bb));for(const _0x291426 of _0x45f780){switch(_0x291426['type']){case'string':await _0x1d7ec4['query']('\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20CREATE\x20TABLE\x20IF\x20NOT\x20EXISTS\x20'+_0x291426['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 _0x1d7ec4['query']('\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20CREATE\x20TABLE\x20IF\x20NOT\x20EXISTS\x20'+_0x291426['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 _0x1d7ec4['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 _0x1d7ec4['query']('\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20CREATE\x20TABLE\x20IF\x20NOT\x20EXISTS\x20'+_0x291426['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\x20type\x20type_enum,\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)\x20PARTITION\x20BY\x20HASH\x20(key);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20');for(let _0x37192f=0x0;_0x37192f<0x8;_0x37192f++){await _0x1d7ec4['query']('\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20CREATE\x20TABLE\x20IF\x20NOT\x20EXISTS\x20'+_0x291426['name']+'_part_'+_0x37192f+'\x20PARTITION\x20OF\x20'+_0x291426['name']+'\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20FOR\x20VALUES\x20WITH\x20(modulus\x208,\x20remainder\x20'+_0x37192f+');\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20');}await _0x1d7ec4['query']('\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20CREATE\x20INDEX\x20IF\x20NOT\x20EXISTS\x20idx_'+_0x291426['name']+'_key_type\x20\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20ON\x20'+_0x291426['name']+'\x20(key,\x20type);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'),await _0x1d7ec4['query']('\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20CREATE\x20INDEX\x20IF\x20NOT\x20EXISTS\x20idx_'+_0x291426['name']+'_type\x20\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20ON\x20'+_0x291426['name']+'\x20(type);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'),await _0x1d7ec4['query']('\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20CREATE\x20INDEX\x20IF\x20NOT\x20EXISTS\x20idx_'+_0x291426['name']+'_key_x_type_jmark\x20\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20ON\x20'+_0x291426['name']+'\x20(key,\x20type)\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20WHERE\x20key\x20=\x20\x27x\x27\x20AND\x20type\x20=\x20\x27jmark\x27;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20');break;case'list':await _0x1d7ec4['query']('\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20CREATE\x20TABLE\x20IF\x20NOT\x20EXISTS\x20'+_0x291426['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 _0x1d7ec4['query']('\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20CREATE\x20INDEX\x20IF\x20NOT\x20EXISTS\x20idx_'+_0x291426['name']+'_key_expiry\x20\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20ON\x20'+_0x291426['name']+'\x20(key,\x20expiry);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20');break;case'sorted_set':await _0x1d7ec4['query']('\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20CREATE\x20TABLE\x20IF\x20NOT\x20EXISTS\x20'+_0x291426['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 _0x1d7ec4['query']('\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20CREATE\x20INDEX\x20IF\x20NOT\x20EXISTS\x20idx_'+_0x291426['name']+'_key_score_member\x20\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20ON\x20'+_0x291426['name']+'\x20(key,\x20score,\x20member);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20');break;default:this['logger']['warn']('Unknown\x20table\x20type\x20for\x20'+_0x291426['name']);break;}}await _0x1d7ec4['query']('COMMIT');}['getTableNames'](_0x513b90){const _0x3fb325=[];_0x3fb325['push']('hotmesh_applications','hotmesh_connections');const _0x53954f=['throttles','roles','task_priorities','task_schedules','task_lists','events','jobs','stats_counted','stats_indexed','stats_ordered','versions','signal_patterns','signal_registry','symbols'];return _0x53954f['forEach'](_0x120b36=>{_0x3fb325['push']('hotmesh_'+this['storeClient']['safeName'](_0x513b90)+'_'+_0x120b36);}),_0x3fb325;}['getTableDefinitions'](_0x4db915){const _0x5c803e=[{'name':'hotmesh_applications','type':'hash'},{'name':'hotmesh_connections','type':'hash'},{'name':'hotmesh_'+_0x4db915+'_throttles','type':'hash'},{'name':'hotmesh_'+_0x4db915+'_roles','type':'string'},{'name':'hotmesh_'+_0x4db915+'_task_schedules','type':'sorted_set'},{'name':'hotmesh_'+_0x4db915+'_task_priorities','type':'sorted_set'},{'name':'hotmesh_'+_0x4db915+'_task_lists','type':'list'},{'name':'hotmesh_'+_0x4db915+'_events','type':'hash'},{'name':'hotmesh_'+_0x4db915+'_jobs','type':'jobhash'},{'name':'hotmesh_'+_0x4db915+'_stats_counted','type':'hash'},{'name':'hotmesh_'+_0x4db915+'_stats_ordered','type':'sorted_set'},{'name':'hotmesh_'+_0x4db915+'_stats_indexed','type':'list'},{'name':'hotmesh_'+_0x4db915+'_versions','type':'hash'},{'name':'hotmesh_'+_0x4db915+'_signal_patterns','type':'hash'},{'name':'hotmesh_'+_0x4db915+'_symbols','type':'hash'},{'name':'hotmesh_'+_0x4db915+'_signal_registry','type':'string'}];return _0x5c803e;}['isSuccessful'](_0x29dfc2){return _0x29dfc2>0x0||_0x29dfc2==='OK'||_0x29dfc2===!![];}async['delistSignalKey'](_0x3517a5,_0x2b2151){await this['kvsql']()['del'](_0x3517a5+':'+_0x2b2151);}async['zAdd'](_0x33e302,_0x5525aa,_0x30598a,_0x32e271){return await this['kvsql'](_0x32e271)['zadd'](_0x33e302,Number(_0x5525aa),_0x30598a['toString']());}async['zRangeByScore'](_0x4d8258,_0x2e309a,_0x2e7895){const _0xafe389=await this['kvsql']()['zrangebyscore'](_0x4d8258,Number(_0x2e309a),Number(_0x2e7895));if(_0xafe389?.['length']>0x0)return _0xafe389[0x0];return null;}['mintKey'](_0x27cc27,_0x3ebf1f){if(!this['namespace'])throw new Error('namespace\x20not\x20set');return key_1['KeyService']['mintKey'](this['namespace'],_0x27cc27,_0x3ebf1f);}['kvsql'](_0x4a063e){return _0x4a063e||this['storeClient'];}['invalidateCache'](){this['cache']['invalidate']();}async['reserveScoutRole'](_0x21a5ca,_0x461178=enums_1['HMSH_SCOUT_INTERVAL_SECONDS']){const _0x16d1d9=this['mintKey'](key_1['KeyType']['WORK_ITEMS'],{'appId':this['appId'],'scoutType':_0x21a5ca}),_0x5d1904=await this['kvsql']()['set'](_0x16d1d9,_0x21a5ca+':'+(0x0,utils_1['formatISODate'])(new Date()),{'nx':!![],'ex':_0x461178-0x1});return this['isSuccessful'](_0x5d1904);}async['releaseScoutRole'](_0x4a66b0){const _0x5b8b79=this['mintKey'](key_1['KeyType']['WORK_ITEMS'],{'appId':this['appId'],'scoutType':_0x4a66b0}),_0x1d0823=await this['kvsql']()['del'](_0x5b8b79);return this['isSuccessful'](_0x1d0823);}async['getSettings'](_0x2e8cb4=![]){let _0x30ce82=this['cache']?.['getSettings']();if(_0x30ce82)return _0x30ce82;else{if(_0x2e8cb4){const _0x46fd01=await Promise['resolve']()['then'](()=>__importStar(require('../../../../package.json'))),_0x4eadb7=_0x46fd01['version']||'0.0.0';return _0x30ce82={'namespace':key_1['HMNS'],'version':_0x4eadb7},await this['setSettings'](_0x30ce82),_0x30ce82;}}throw new Error('settings\x20not\x20found');}async['setSettings'](_0x327ef7){const _0x4dbddd={},_0x2c72ff=this['mintKey'](key_1['KeyType']['HOTMESH'],_0x4dbddd);return await this['kvsql']()['hset'](_0x2c72ff,_0x327ef7);}async['reserveSymbolRange'](_0x4258d3,_0x49ea55,_0x59f776,_0x4317cd=0x1){const _0x543068=this['mintKey'](key_1['KeyType']['SYMKEYS'],{'appId':this['appId']}),_0x47c534=this['mintKey'](key_1['KeyType']['SYMKEYS'],{'activityId':_0x4258d3,'appId':this['appId']}),_0xa43ef1=await this['kvsql']()['hsetnx'](_0x543068,_0x4258d3,'?:?');if(_0xa43ef1){const _0x9cada5=await this['kvsql']()['hincrbyfloat'](_0x543068,':cursor',_0x49ea55),_0x413425=_0x9cada5-_0x49ea55,_0x4dc28a=_0x413425+':'+(_0x9cada5-0x1);await this['kvsql']()['hset'](_0x543068,{[_0x4258d3]:_0x4dc28a});const _0x300446=this['seedSymbols'](_0x4258d3,_0x59f776,_0x413425);return await this['kvsql']()['hset'](_0x47c534,_0x300446),[_0x413425+serializer_1['MDATA_SYMBOLS']['SLOTS'],_0x9cada5-0x1,{}];}else{const _0x5ed08d=await this['kvsql']()['hget'](_0x543068,_0x4258d3),[_0x3f031b]=_0x5ed08d['split'](':');if(_0x3f031b==='?'){await(0x0,utils_1['sleepFor'])(_0x4317cd*0x3e8);if(_0x4317cd<0x5)return this['reserveSymbolRange'](_0x4258d3,_0x49ea55,_0x59f776,_0x4317cd+0x1);else throw new Error('Symbol\x20range\x20reservation\x20failed\x20due\x20to\x20deployment\x20contention');}else{const _0x5e5197=parseInt(_0x3f031b,0xa),_0x39c48e=await this['kvsql']()['hgetall'](_0x47c534),_0x2d428b=Object['keys'](_0x39c48e)['length'],_0x460b09=_0x5e5197+serializer_1['MDATA_SYMBOLS']['SLOTS']+_0x2d428b,_0x2bd4e4=Number(_0x5e5197+_0x49ea55-0x1);return[_0x460b09,_0x2bd4e4,_0x39c48e];}}}async['getAllSymbols'](){const _0x12a0f2=this['mintKey'](key_1['KeyType']['SYMKEYS'],{'appId':this['appId']}),_0x3c16ea=await this['kvsql']()['hgetall'](_0x12a0f2),_0x20b248=Object['keys'](_0x3c16ea)['sort']();delete _0x20b248[':cursor'];const _0xfd911a=this['kvsql'](this['transact']());for(const _0x9f114c of _0x20b248){const _0x2ab8be=this['mintKey'](key_1['KeyType']['SYMKEYS'],{'activityId':_0x9f114c,'appId':this['appId']});_0xfd911a['hgetall'](_0x2ab8be);}const _0x3f6083=await _0xfd911a['exec'](),_0x51f590={};return _0x3f6083['forEach']((_0x47b343,_0x883d62)=>{if(_0x47b343){let _0x3aaf9e;Array['isArray'](_0x47b343)&&_0x47b343['length']===0x2?_0x3aaf9e=_0x47b343[0x1]:_0x3aaf9e=_0x47b343;for(const [_0x524c12,_0xa1cf88]of Object['entries'](_0x3aaf9e)){_0x51f590[_0xa1cf88]=_0x524c12['startsWith'](_0x20b248[_0x883d62])?_0x524c12:_0x20b248[_0x883d62]+'/'+_0x524c12;}}}),_0x51f590;}async['getSymbols'](_0x33aa68){let _0xcedfc6=this['cache']['getSymbols'](this['appId'],_0x33aa68);if(_0xcedfc6)return _0xcedfc6;else{const _0x2f5654={'activityId':_0x33aa68,'appId':this['appId']},_0x33fd87=this['mintKey'](key_1['KeyType']['SYMKEYS'],_0x2f5654);return _0xcedfc6=await this['kvsql']()['hgetall'](_0x33fd87),this['cache']['setSymbols'](this['appId'],_0x33aa68,_0xcedfc6),_0xcedfc6;}}async['addSymbols'](_0x5ca4a0,_0x51e49a){if(!_0x51e49a||!Object['keys'](_0x51e49a)['length'])return![];const _0x3e6c73={'activityId':_0x5ca4a0,'appId':this['appId']},_0x52f28d=this['mintKey'](key_1['KeyType']['SYMKEYS'],_0x3e6c73),_0x2d4609=await this['kvsql']()['hset'](_0x52f28d,_0x51e49a);return this['cache']['deleteSymbols'](this['appId'],_0x5ca4a0),_0x2d4609>0x0;}['seedSymbols'](_0x3d956a,_0xc60472,_0x11d905){if(_0xc60472==='JOB')return this['seedJobSymbols'](_0x11d905);return this['seedActivitySymbols'](_0x11d905,_0x3d956a);}['seedJobSymbols'](_0x1fccb8){const _0x2e7aef={};return serializer_1['MDATA_SYMBOLS']['JOB']['KEYS']['forEach'](_0x5e7cbd=>{_0x2e7aef['metadata/'+_0x5e7cbd]=(0x0,utils_1['getSymKey'])(_0x1fccb8),_0x1fccb8++;}),_0x2e7aef;}['seedActivitySymbols'](_0x173975,_0x3ae44e){const _0x309a64={};return serializer_1['MDATA_SYMBOLS']['ACTIVITY']['KEYS']['forEach'](_0x59a3ce=>{_0x309a64[_0x3ae44e+'/output/metadata/'+_0x59a3ce]=(0x0,utils_1['getSymKey'])(_0x173975),_0x173975++;}),_0x309a64;}async['getSymbolValues'](){let _0x211fbe=this['cache']['getSymbolValues'](this['appId']);if(_0x211fbe)return _0x211fbe;else{const _0x22d34a=this['mintKey'](key_1['KeyType']['SYMVALS'],{'appId':this['appId']});return _0x211fbe=await this['kvsql']()['hgetall'](_0x22d34a),this['cache']['setSymbolValues'](this['appId'],_0x211fbe),_0x211fbe;}}async['addSymbolValues'](_0x1e1c35){if(!_0x1e1c35||!Object['keys'](_0x1e1c35)['length'])return![];const _0x370e8b=this['mintKey'](key_1['KeyType']['SYMVALS'],{'appId':this['appId']}),_0x2453b5=await this['kvsql']()['hset'](_0x370e8b,_0x1e1c35);return this['cache']['deleteSymbolValues'](this['appId']),this['isSuccessful'](_0x2453b5);}async['getSymbolKeys'](_0x285408){const _0x15bb13=[];for(const _0x2ccefe of _0x285408){_0x15bb13['push'](this['getSymbols'](_0x2ccefe));}const _0x40e9fe=await Promise['all'](_0x15bb13),_0x5422f2={};for(const _0xf8d2f1 of _0x285408){_0x5422f2[_0xf8d2f1]=_0x40e9fe['shift']();}return _0x5422f2;}async['getApp'](_0x28687d,_0x5cc7d6=![]){let _0xb3cf68=this['cache']['getApp'](_0x28687d);if(_0x5cc7d6||!(_0xb3cf68&&Object['keys'](_0xb3cf68)['length']>0x0)){const _0x3a5c54={'appId':_0x28687d},_0x123476=this['mintKey'](key_1['KeyType']['APP'],_0x3a5c54),_0x23f133=await this['kvsql']()['hgetall'](_0x123476);if(!_0x23f133)return null;_0xb3cf68={};for(const _0x433548 in _0x23f133){try{_0x433548==='active'?_0xb3cf68[_0x433548]=_0x23f133[_0x433548]==='true':_0xb3cf68[_0x433548]=_0x23f133[_0x433548];}catch(_0x586efc){_0xb3cf68[_0x433548]=_0x23f133[_0x433548];}}this['cache']['setApp'](_0x28687d,_0xb3cf68);}return _0xb3cf68;}async['setApp'](_0x24416c,_0x78bcf8){const _0x47d5c3={'appId':_0x24416c},_0x4eb6c6=this['mintKey'](key_1['KeyType']['APP'],_0x47d5c3),_0x126d0f='versions/'+_0x78bcf8,_0x3206fe={'id':_0x24416c,'version':_0x78bcf8,[_0x126d0f]:'deployed:'+(0x0,utils_1['formatISODate'])(new Date())};return await this['kvsql']()['hset'](_0x4eb6c6,_0x3206fe),this['cache']['setApp'](_0x24416c,_0x3206fe),_0x3206fe;}async['activateAppVersion'](_0x3bcc7c,_0xb9ad92){const _0x4193e3={'appId':_0x3bcc7c},_0x20375d=this['mintKey'](key_1['KeyType']['APP'],_0x4193e3),_0x107e7d='versions/'+_0xb9ad92,_0x168e9e=await this['getApp'](_0x3bcc7c,!![]);if(_0x168e9e&&_0x168e9e[_0x107e7d]){const _0x43b4a6={'id':_0x3bcc7c,'version':_0xb9ad92['toString'](),[_0x107e7d]:'activated:'+(0x0,utils_1['formatISODate'])(new Date()),'active':!![]};return Object['entries'](_0x43b4a6)['forEach'](([_0x1a250b,_0x2af5e2])=>{_0x43b4a6[_0x1a250b]=_0x2af5e2['toString']();}),await this['kvsql']()['hset'](_0x20375d,_0x43b4a6),!![];}throw new Error('Version\x20'+_0xb9ad92+'\x20does\x20not\x20exist\x20for\x20app\x20'+_0x3bcc7c);}async['registerAppVersion'](_0x27a725,_0x285524){const _0x170c55={'appId':_0x27a725},_0x206b84=this['mintKey'](key_1['KeyType']['APP'],_0x170c55),_0xb160e={'id':_0x27a725,'version':_0x285524['toString'](),['versions/'+_0x285524]:(0x0,utils_1['formatISODate'])(new Date())};return await this['kvsql']()['hset'](_0x206b84,_0xb160e);}async['setStats'](_0x24f1c3,_0x419c85,_0x27e6ec,_0x160eb8,_0x314b28,_0x10fe2a){const _0x3aa6fe={'appId':_0x314b28['id'],'jobId':_0x419c85,'jobKey':_0x24f1c3,'dateTime':_0x27e6ec},_0x2d3cd1=_0x10fe2a||this['transact']();if(_0x160eb8['general']['length']){const _0x2befb1=this['mintKey'](key_1['KeyType']['JOB_STATS_GENERAL'],_0x3aa6fe);for(const {target:_0x32f325,value:_0x588eb8}of _0x160eb8['general']){this['kvsql'](_0x2d3cd1)['hincrbyfloat'](_0x2befb1,_0x32f325,_0x588eb8);}}for(const {target:_0x44a206,value:_0x517df8}of _0x160eb8['index']){const _0x5d5cdb={..._0x3aa6fe,'facet':_0x44a206},_0x55ec6e=this['mintKey'](key_1['KeyType']['JOB_STATS_INDEX'],_0x5d5cdb);this['kvsql'](_0x2d3cd1)['rpush'](_0x55ec6e,_0x517df8['toString']());}for(const {target:_0x93105c,value:_0x3376e5}of _0x160eb8['median']){const _0x4775c7={..._0x3aa6fe,'facet':_0x93105c},_0x164f27=this['mintKey'](key_1['KeyType']['JOB_STATS_MEDIAN'],_0x4775c7);await this['kvsql'](_0x2d3cd1)['zadd'](_0x164f27,Number(_0x3376e5),_0x93105c);}if(!_0x10fe2a)return await _0x2d3cd1['exec']();}['hGetAllResult'](_0x44d58e){return _0x44d58e;}async['getJobStats'](_0x48c904){const _0x16bf75=this['kvsql'](this['transact']());for(const _0x428234 of _0x48c904){_0x16bf75['hgetall'](_0x428234);}const _0x206128=await _0x16bf75['exec'](),_0x4cbcf6={};for(const [_0xa0cef5,_0x552808]of _0x206128['entries']()){const _0x43846a=_0x48c904[_0xa0cef5],_0xcd931a=_0x552808;if(_0xcd931a&&Object['keys'](_0xcd931a)['length']>0x0){const _0x121ecb={..._0xcd931a};for(const [_0x334b6e,_0xb9874e]of Object['entries'](_0x121ecb)){_0x121ecb[_0x334b6e]=Number(_0xb9874e);}_0x4cbcf6[_0x43846a]=_0x121ecb;}else _0x4cbcf6[_0x43846a]={};}return _0x4cbcf6;}async['getJobIds'](_0x2562e5,_0x161b47){const _0x15a7e5=this['kvsql'](this['transact']());for(const _0x44bd80 of _0x2562e5){_0x15a7e5['lrange'](_0x44bd80,_0x161b47[0x0],_0x161b47[0x1]);}const _0x5ecb8e=await _0x15a7e5['exec'](),_0x13e8e8={};for(const [_0x5ac3d6,_0x145558]of _0x5ecb8e['entries']()){const _0x42691b=_0x2562e5[_0x5ac3d6],_0x1569ad=_0x145558[0x1]||_0x145558;_0x1569ad&&_0x1569ad['length']>0x0?_0x13e8e8[_0x42691b]=_0x1569ad:_0x13e8e8[_0x42691b]=[];}return _0x13e8e8;}async['setStatus'](_0x420b90,_0xfb262b,_0x31028,_0x53fc4e){const _0x316f0a=this['mintKey'](key_1['KeyType']['JOB_STATE'],{'appId':_0x31028,'jobId':_0xfb262b});return await this['kvsql'](_0x53fc4e)['hincrbyfloat'](_0x316f0a,':',_0x420b90);}async['getStatus'](_0x461cb2,_0x5c107d){const _0x1e40e4=this['mintKey'](key_1['KeyType']['JOB_STATE'],{'appId':_0x5c107d,'jobId':_0x461cb2}),_0xbd50da=await this['kvsql']()['hget'](_0x1e40e4,':');if(_0xbd50da===null)throw new Error('Job\x20'+_0x461cb2+'\x20not\x20found');return Number(_0xbd50da);}async['setState']({..._0x5443af},_0x451f78,_0x2ccfb7,_0x3f924f,_0x3a5b1f,_0x480c9d){delete _0x5443af['metadata/js'];const _0x197a86=this['mintKey'](key_1['KeyType']['JOB_STATE'],{'appId':this['appId'],'jobId':_0x2ccfb7}),_0x34c288=await this['getSymbolKeys'](_0x3f924f),_0x4de51b=await this['getSymbolValues']();this['serializer']['resetSymbols'](_0x34c288,_0x4de51b,_0x3a5b1f);const _0x2d0502=this['serializer']['package'](_0x5443af,_0x3f924f);return _0x451f78!==null?_0x2d0502[':']=_0x451f78['toString']():delete _0x2d0502[':'],await this['kvsql'](_0x480c9d)['hset'](_0x197a86,_0x2d0502),_0x2ccfb7;}async['getQueryState'](_0x21560f,_0x1648c8){const _0x5b9df8=this['mintKey'](key_1['KeyType']['JOB_STATE'],{'appId':this['appId'],'jobId':_0x21560f}),_0x24c461=_0x1648c8['map'](_0x5a7ee3=>{if(_0x5a7ee3['startsWith']('\x22'))return _0x5a7ee3['slice'](0x1,-0x1);return'_'+_0x5a7ee3;}),_0x3ae67c=await this['kvsql']()['hmget'](_0x5b9df8,_0x24c461),_0x2fcbcb={};return _0x1648c8['forEach']((_0x125cc9,_0x2c7284)=>{_0x125cc9['startsWith']('\x22')&&(_0x125cc9=_0x125cc9['slice'](0x1,-0x1)),_0x2fcbcb[_0x125cc9]=_0x3ae67c[_0x2c7284];}),_0x2fcbcb;}async['getState'](_0x377e80,_0x4d6759,_0x2838a0){const _0x2e7239=this['mintKey'](key_1['KeyType']['JOB_STATE'],{'appId':this['appId'],'jobId':_0x377e80}),_0x44b4ae=Object['keys'](_0x4d6759),_0x237c24=await this['getSymbolKeys'](_0x44b4ae);this['serializer']['resetSymbols'](_0x237c24,{},_0x2838a0);const _0x5af4bc=this['serializer']['abbreviate'](_0x4d6759,_0x44b4ae,[':']),_0x1b835b=await this['kvsql']()['hmget'](_0x2e7239,_0x5af4bc),_0x1af1db={};let _0x4163ff=![];_0x5af4bc['forEach']((_0x5e8529,_0x3ebdf1)=>{_0x1b835b[_0x3ebdf1]&&(_0x4163ff=!![]),_0x1af1db[_0x5e8529]=_0x1b835b[_0x3ebdf1];});if(_0x4163ff){const _0xfa2391=await this['getSymbolValues']();this['serializer']['resetSymbols'](_0x237c24,_0xfa2391,_0x2838a0);const _0x493f44=this['serializer']['unpackage'](_0x1af1db,_0x44b4ae);let _0xf10200=0x0;return _0x493f44[':']&&(_0xf10200=Number(_0x493f44[':']),_0x493f44['metadata/js']=_0xf10200,delete _0x493f44[':']),[_0x493f44,_0xf10200];}else throw new errors_1['GetStateError'](_0x377e80);}async['getRaw'](_0x225267){const _0x38a038=this['mintKey'](key_1['KeyType']['JOB_STATE'],{'appId':this['appId'],'jobId':_0x225267}),_0x3f7151=await this['kvsql']()['hgetall'](_0x38a038);if(!_0x3f7151)throw new errors_1['GetStateError'](_0x225267);return _0x3f7151;}async['collate'](_0x5a9941,_0x32aee1,_0x5d55b2,_0x6201e6,_0x11fe03){const _0x20c84f=this['mintKey'](key_1['KeyType']['JOB_STATE'],{'appId':this['appId'],'jobId':_0x5a9941}),_0x5d3856=_0x32aee1+'/output/metadata/as',_0x5ec9c0=[_0x32aee1],_0x2b0f59=await this['getSymbolKeys'](_0x5ec9c0),_0x44b816=await this['getSymbolValues']();this['serializer']['resetSymbols'](_0x2b0f59,_0x44b816,_0x6201e6);const _0xca24ee={[_0x5d3856]:_0x5d55b2['toString']()},_0x4354a5=this['serializer']['package'](_0xca24ee,_0x5ec9c0),_0x5e3fe1=Object['keys'](_0x4354a5)[0x0];return await this['kvsql'](_0x11fe03)['hincrbyfloat'](_0x20c84f,_0x5e3fe1,_0x5d55b2);}async['collateSynthetic'](_0x2d3d41,_0x3e639a,_0x42e939,_0x4ac3f8){const _0xb24e5c=this['mintKey'](key_1['KeyType']['JOB_STATE'],{'appId':this['appId'],'jobId':_0x2d3d41});return await this['kvsql'](_0x4ac3f8)['hincrbyfloat'](_0xb24e5c,_0x3e639a,_0x42e939);}async['setStateNX'](_0x14bfca,_0x1f6a2f,_0x24f78e){const _0x2d7815=this['mintKey'](key_1['KeyType']['JOB_STATE'],{'appId':_0x1f6a2f,'jobId':_0x14bfca}),_0x4c5655=await this['kvsql']()['hsetnx'](_0x2d7815,':',_0x24f78e?.['toString']()??'1');return this['isSuccessful'](_0x4c5655);}async['getSchema'](_0x549cde,_0xdb6481){const _0x576a79=this['cache']['getSchema'](_0xdb6481['id'],_0xdb6481['version'],_0x549cde);if(_0x576a79)return _0x576a79;else{const _0x42be5a=await this['getSchemas'](_0xdb6481);return _0x42be5a[_0x549cde];}}async['getSchemas'](_0x35a8c4){let _0x48e018=this['cache']['getSchemas'](_0x35a8c4['id'],_0x35a8c4['version']);if(_0x48e018&&Object['keys'](_0x48e018)['length']>0x0)return _0x48e018;else{const _0x46889={'appId':_0x35a8c4['id'],'appVersion':_0x35a8c4['version']},_0x33f840=this['mintKey'](key_1['KeyType']['SCHEMAS'],_0x46889);_0x48e018={};const _0xd45e3=await this['kvsql']()['hgetall'](_0x33f840);return Object['entries'](_0xd45e3)['forEach'](([_0x4aba6c,_0x414d6e])=>{_0x48e018[_0x4aba6c]=JSON['parse'](_0x414d6e);}),this['cache']['setSchemas'](_0x35a8c4['id'],_0x35a8c4['version'],_0x48e018),_0x48e018;}}async['setSchemas'](_0x194384,_0x56b353){const _0xcb3b7a={'appId':_0x56b353['id'],'appVersion':_0x56b353['version']},_0x2a3fef=this['mintKey'](key_1['KeyType']['SCHEMAS'],_0xcb3b7a),_0x218d4d={..._0x194384};Object['entries'](_0x218d4d)['forEach'](([_0x9f4b64,_0x453645])=>{_0x218d4d[_0x9f4b64]=JSON['stringify'](_0x453645);});const _0x26f833=await this['kvsql']()['hset'](_0x2a3fef,_0x218d4d);return this['cache']['setSchemas'](_0x56b353['id'],_0x56b353['version'],_0x194384),_0x26f833;}async['setSubscriptions'](_0x7b60ca,_0xdd4b50){const _0xe0b3b9={'appId':_0xdd4b50['id'],'appVersion':_0xdd4b50['version']},_0x5bc574=this['mintKey'](key_1['KeyType']['SUBSCRIPTIONS'],_0xe0b3b9),_0x4ab895={..._0x7b60ca};Object['entries'](_0x4ab895)['forEach'](([_0x29d490,_0x1d1351])=>{_0x4ab895[_0x29d490]=JSON['stringify'](_0x1d1351);});const _0x17d170=await this['kvsql']()['hset'](_0x5bc574,_0x4ab895);return this['cache']['setSubscriptions'](_0xdd4b50['id'],_0xdd4b50['version'],_0x7b60ca),this['isSuccessful'](_0x17d170);}async['getSubscriptions'](_0x29f53e){let _0x87c418=this['cache']['getSubscriptions'](_0x29f53e['id'],_0x29f53e['version']);if(_0x87c418&&Object['keys'](_0x87c418)['length']>0x0)return _0x87c418;else{const _0x34a5b9={'appId':_0x29f53e['id'],'appVersion':_0x29f53e['version']},_0x21b198=this['mintKey'](key_1['KeyType']['SUBSCRIPTIONS'],_0x34a5b9);return _0x87c418=await this['kvsql']()['hgetall'](_0x21b198)||{},Object['entries'](_0x87c418)['forEach'](([_0x234b6e,_0x3df3aa])=>{_0x87c418[_0x234b6e]=JSON['parse'](_0x3df3aa);}),this['cache']['setSubscriptions'](_0x29f53e['id'],_0x29f53e['version'],_0x87c418),_0x87c418;}}async['getSubscription'](_0x34341f,_0x2c8ccd){const _0x795386=await this['getSubscriptions'](_0x2c8ccd);return _0x795386[_0x34341f];}async['setTransitions'](_0x19cbaa,_0x2cc336){const _0x5ed706={'appId':_0x2cc336['id'],'appVersion':_0x2cc336['version']},_0x893d2f=this['mintKey'](key_1['KeyType']['SUBSCRIPTION_PATTERNS'],_0x5ed706),_0x4ed047={..._0x19cbaa};Object['entries'](_0x4ed047)['forEach'](([_0x14f48b,_0x5a1139])=>{_0x4ed047[_0x14f48b]=JSON['stringify'](_0x5a1139);});if(Object['keys'](_0x4ed047)['length']!==0x0){const _0x233e88=await this['kvsql']()['hset'](_0x893d2f,_0x4ed047);return this['cache']['setTransitions'](_0x2cc336['id'],_0x2cc336['version'],_0x19cbaa),_0x233e88;}}async['getTransitions'](_0x7bcf19){let _0x18f6c6=this['cache']['getTransitions'](_0x7bcf19['id'],_0x7bcf19['version']);if(_0x18f6c6&&Object['keys'](_0x18f6c6)['length']>0x0)return _0x18f6c6;else{const _0x46522b={'appId':_0x7bcf19['id'],'appVersion':_0x7bcf19['version']},_0x1189e4=this['mintKey'](key_1['KeyType']['SUBSCRIPTION_PATTERNS'],_0x46522b);_0x18f6c6={};const _0x4b610d=await this['kvsql']()['hgetall'](_0x1189e4);return Object['entries'](_0x4b610d)['forEach'](([_0x17bf24,_0xe971bb])=>{_0x18f6c6[_0x17bf24]=JSON['parse'](_0xe971bb);}),this['cache']['setTransitions'](_0x7bcf19['id'],_0x7bcf19['version'],_0x18f6c6),_0x18f6c6;}}async['setHookRules'](_0x1f8c5b){const _0x48fb03=this['mintKey'](key_1['KeyType']['HOOKS'],{'appId':this['appId']}),_0x100113={};Object['entries'](_0x1f8c5b)['forEach'](([_0x3afd1a,_0x23a3d7])=>{_0x100113[_0x3afd1a['toString']()]=JSON['stringify'](_0x23a3d7);});if(Object['keys'](_0x100113)['length']!==0x0){const _0x3a9840=await this['kvsql']()['hset'](_0x48fb03,_0x100113);return this['cache']['setHookRules'](this['appId'],_0x1f8c5b),_0x3a9840;}}async['getHookRules'](){let _0x298035=this['cache']['getHookRules'](this['appId']);if(_0x298035&&Object['keys'](_0x298035)['length']>0x0)return _0x298035;else{const _0x3d10e1=this['mintKey'](key_1['KeyType']['HOOKS'],{'appId':this['appId']}),_0x548a59=await this['kvsql']()['hgetall'](_0x3d10e1);return _0x298035={},Object['entries'](_0x548a59)['forEach'](([_0xef1ba6,_0x1a52c9])=>{_0x298035[_0xef1ba6]=JSON['parse'](_0x1a52c9);}),this['cache']['setHookRules'](this['appId'],_0x298035),_0x298035;}}async['setHookSignal'](_0x964c7f,_0x226ff7){const _0x5d9c04=this['mintKey'](key_1['KeyType']['SIGNALS'],{'appId':this['appId']}),{topic:_0x4b30db,resolved:_0x356320,jobId:_0x1a8b41}=_0x964c7f,_0x52c54a=_0x4b30db+':'+_0x356320;await this['kvsql'](_0x226ff7)['setnxex'](_0x5d9c04+':'+_0x52c54a,_0x1a8b41,Math['max'](_0x964c7f['expire'],enums_1['HMSH_SIGNAL_EXPIRE']));}async['getHookSignal'](_0x2d4b36,_0x1df191){const _0x1db706=this['mintKey'](key_1['KeyType']['SIGNALS'],{'appId':this['appId']}),_0x5434c0=await this['kvsql']()['get'](_0x1db706+':'+_0x2d4b36+':'+_0x1df191);return _0x5434c0?_0x5434c0['toString']():undefined;}async['deleteHookSignal'](_0xdfaf4f,_0x89d431){const _0x28bc3a=this['mintKey'](key_1['KeyType']['SIGNALS'],{'appId':this['appId']}),_0x2281fd=await this['kvsql']()['del'](_0x28bc3a+':'+_0xdfaf4f+':'+_0x89d431);return _0x2281fd?Number(_0x2281fd):undefined;}async['addTaskQueues'](_0x30cbbb){const _0x185cb7=this['kvsql'](this['transact']()),_0x458a2a=this['mintKey'](key_1['KeyType']['WORK_ITEMS'],{'appId':this['appId']});for(const _0xa8edc1 of _0x30cbbb){_0x185cb7['zadd'](_0x458a2a,Date['now'](),_0xa8edc1,{'nx':!![]});}await _0x185cb7['exec']();}async['getActiveTaskQueue'](){let _0x3008e4=this['cache']['getActiveTaskQueue'](this['appId'])||null;if(!_0x3008e4){const _0x3747ac=this['mintKey'](key_1['KeyType']['WORK_ITEMS'],{'appId':this['appId']}),_0x4458af=await this['kvsql']()['zrange'](_0x3747ac,0x0,0x0);_0x3008e4=_0x4458af['length']>0x0?_0x4458af[0x0]:null,_0x3008e4&&this['cache']['setWorkItem'](this['appId'],_0x3008e4);}return _0x3008e4;}async['deleteProcessedTaskQueue'](_0x2a6d36,_0x58944d,_0x2e90a0,_0x6bd9bc=![]){const _0x5e11cc=this['mintKey'](key_1['KeyType']['WORK_ITEMS'],{'appId':this['appId']}),_0xfefbb5=await this['kvsql']()['zrem'](_0x5e11cc,_0x2a6d36);_0xfefbb5&&(_0x6bd9bc?(this['kvsql']()['expire'](_0x2e90a0,0x0),this['kvsql']()['expire'](_0x58944d['split'](':')['slice'](0x0,0x5)['join'](':'),0x0)):await this['kvsql']()['rename'](_0x2e90a0,_0x58944d)),this['cache']['removeWorkItem'](this['appId']);}async['processTaskQueue'](_0x4ba992,_0x239bf6){return await this['kvsql']()['lmove'](_0x4ba992,_0x239bf6,'LEFT','RIGHT');}async['expireJob'](_0x19f127,_0x4239ec,_0x4ae038){if(!isNaN(_0x4239ec)&&_0x4239ec>0x0){const _0x23cde2=this['mintKey'](key_1['KeyType']['JOB_STATE'],{'appId':this['appId'],'jobId':_0x19f127});await this['kvsql'](_0x4ae038)['expire'](_0x23cde2,_0x4239ec);}}async['getDependencies'](_0x4c2fe4){const _0xbe3294={'appId':this['appId'],'jobId':_0x4c2fe4},_0x44b430=this['mintKey'](key_1['KeyType']['JOB_DEPENDENTS'],_0xbe3294);return this['kvsql']()['lrange'](_0x44b430,0x0,-0x1);}async['registerTimeHook'](_0x5a0f6f,_0x49503f,_0x1dd3b2,_0x27b440,_0x4a0788,_0x5f5a19,_0x16ccea){const _0x96dcdf=this['mintKey'](key_1['KeyType']['TIME_RANGE'],{'appId':this['appId'],'timeValue':_0x4a0788}),_0x27753e=[_0x27b440,_0x1dd3b2,_0x49503f,_0x5f5a19,_0x5a0f6f]['join'](key_1['VALSEP']),_0x3f7a8b=await this['kvsql'](_0x16ccea)['rpush'](_0x96dcdf,_0x27753e);if(_0x16ccea||_0x3f7a8b===0x1){const _0xdb29a=this['mintKey'](key_1['KeyType']['TIME_RANGE'],{'appId':this['appId']});await this['zAdd'](_0xdb29a,_0x4a0788['toString'](),_0x96dcdf,_0x16ccea);}}async['getNextTask'](_0x347429){const _0x28fb49=this['mintKey'](key_1['KeyType']['TIME_RANGE'],{'appId':this['appId']});_0x347429=_0x347429||await this['zRangeByScore'](_0x28fb49,0x0,Date['now']());if(_0x347429){let [_0x430d24,_0xb0c32e]=this['resolveTaskKeyContext'](_0x347429);const _0x3d3520=await this['kvsql']()['lpop'](_0xb0c32e);if(_0x3d3520){let [_0x4ef974,_0x12e63e,_0x5339fc,_0x19df7c,..._0x3261e7]=_0x3d3520['split'](key_1['VALSEP']);const _0x27950e=_0x3261e7['join'](key_1['VALSEP']);if(_0x4ef974==='delist')_0x430d24='delist';else{if(_0x4ef974==='child')_0x430d24='child';else _0x4ef974==='expire-child'&&(_0x4ef974='expire');}return[_0x347429,_0x27950e,_0x5339fc,_0x12e63e,_0x430d24];}return await this['kvsql']()['zrem'](_0x28fb49,_0x347429),!![];}return![];}['resolveTaskKeyContext'](_0x575a5d){if(_0x575a5d['startsWith'](key_1['TYPSEP']+'INTERRUPT'))return['interrupt',_0x575a5d['split'](key_1['TYPSEP'])[0x2]];else return _0x575a5d['startsWith'](key_1['TYPSEP']+'EXPIRE')?['expire',_0x575a5d['split'](key_1['TYPSEP'])[0x2]]:['sleep',_0x575a5d];}async['interrupt'](_0x910489,_0x4b0d79,_0x3c993a={}){try{const _0x1796c3=await this['getStatus'](_0x4b0d79,this['appId']);if(_0x1796c3<=0x0)throw new Error('Job\x20'+_0x4b0d79+'\x20already\x20completed');const _0x1fd665=-0x3b9aca00,_0x2cc87b=this['mintKey'](key_1['KeyType']['JOB_STATE'],{'appId':this['appId'],'jobId':_0x4b0d79}),_0x54581c=await this['kvsql']()['hincrbyfloat'](_0x2cc87b,':',_0x1fd665);if(_0x54581c<=_0x1fd665)throw new Error('Job\x20'+_0x4b0d79+'\x20already\x20completed');if(_0x3c993a['throw']!==![]){const _0xc51dba='metadata/err',_0x52e1b6=['$'+_0x910489],_0x592af6=await this['getSymbolKeys'](_0x52e1b6),_0x40de7a=await this['getSymbolValues']();this['serializer']['resetSymbols'](_0x592af6,_0x40de7a,{});const _0x17b7fb=JSON['stringify']({'code':_0x3c993a['code']??enums_1['HMSH_CODE_INTERRUPT'],'message':_0x3c993a['reason']??'job\x20['+_0x4b0d79+']\x20interrupted','stack':_0x3c993a['stack']??'','job_id':_0x4b0d79}),_0x6487bb={[_0xc51dba]:_0x1fd665['toString']()},_0x180bec=this['serializer']['package'](_0x6487bb,_0x52e1b6),_0x1cbbc6=Object['keys'](_0x180bec)[0x0];await this['kvsql']()['hset'](_0x2cc87b,{[_0x1cbbc6]:_0x17b7fb});}}catch(_0x5c0cc1){if(!_0x3c993a['suppress'])throw _0x5c0cc1;else this['logger']['debug']('suppressed-interrupt',{'message':_0x5c0cc1['message']});}}async['scrub'](_0x5016b7){const _0x5c5258=this['mintKey'](key_1['KeyType']['JOB_STATE'],{'appId':this['appId'],'jobId':_0x5016b7});await this['kvsql']()['del'](_0x5c5258);}async['findJobs'](_0x1d9f43='*',_0x2872f2=0x3e8,_0x5dfed7=0x3e8,_0x428ded='0'){const _0x43bf00=this['mintKey'](key_1['KeyType']['JOB_STATE'],{'appId':this['appId'],'jobId':_0x1d9f43}),{cursor:_0xc62b80,keys:_0x5172a0}=await this['kvsql']()['scan'](Number(_0x428ded),_0x2872f2,_0x43bf00);return[_0xc62b80['toPrecision'](),_0x5172a0];}async['findJobFields'](_0x4d485d,_0x264b75='*',_0x2edc25=0x3e8,_0x393c3f=0x3e8,_0x2e15b3='0'){const _0x1c6178={},_0x4ebbb6=this['mintKey'](key_1['KeyType']['JOB_STATE'],{'appId':this['appId'],'jobId':_0x4d485d});let _0x1bce41,_0x3586e4;if(_0x264b75['includes'](',')){const _0x13ae3a=/\d[^-]+-/gi,_0x3e9cd1=_0x264b75['match'](_0x13ae3a);_0x3586e4=','+(_0x3e9cd1?.[0x0]??''),_0x1bce41='hmark';}else _0x1bce41='jmark';const _0x5b30c7=parseInt(_0x2e15b3,0xa)||0x0,_0x5db60e=this['kvsql']()['tableForKey'](_0x4ebbb6,'hash'),_0x2bae66=[_0x4ebbb6,_0x1bce41,_0x2edc25,_0x5b30c7],_0xce20a='\x0a\x20\x20\x20\x20\x20\x20SELECT\x20field,\x20value\x0a\x20\x20\x20\x20\x20\x20FROM\x20'+_0x5db60e+'\x0a\x20\x20\x20\x20\x20\x20WHERE\x20key\x20=\x20$1\x20AND\x20type\x20=\x20$2\x0a\x20\x20\x20\x20\x20\x20LIMIT\x20$3\x20OFFSET\x20$4\x0a\x20\x20\x20\x20',_0x44f867=await this['pgClient']['query'](_0xce20a,_0x2bae66);if(_0x1bce41==='hmark')for(const _0x195185 of _0x44f867['rows']){_0x195185['field']['includes'](_0x3586e4)&&(_0x1c6178[_0x195185['field']]=_0x195185['value']);}else for(const _0x361f5f of _0x44f867['rows']){_0x1c6178[_0x361f5f['field']]=_0x361f5f['value'];}const _0x1071c6=_0x44f867['rows']['length']<_0x2edc25?'0':String(_0x5b30c7+_0x44f867['rows']['length']);return[_0x1071c6,_0x1c6178];}async['setThrottleRate'](_0x4ac89a){const _0x3c0de3=this['mintKey'](key_1['KeyType']['THROTTLE_RATE'],{'appId':this['appId']});if(_0x4ac89a['guid'])return;const _0x26c47c=_0x4ac89a['throttle']['toString']();if(_0x4ac89a['topic'])await this['kvsql']()['hset'](_0x3c0de3,{[_0x4ac89a['topic']]:_0x26c47c});else{const _0x26db92=this['transact']();_0x26db92['del'](_0x3c0de3),_0x26db92['hset'](_0x3c0de3,{':':_0x26c47c}),await _0x26db92['exec']();}}async['getThrottleRates'](){const _0xa2de03=this['mintKey'](key_1['KeyType']['THROTTLE_RATE'],{'appId':this['appId']}),_0x3eb581=await this['kvsql']()['hgetall'](_0xa2de03);return _0x3eb581??{};}async['getThrottleRate'](_0x43482f){const _0x3aa135=(_0x52ad84,_0x4b9ef5)=>{const _0xd3c438=_0x4b9ef5 in _0x52ad84?Number(_0x52ad84[_0x4b9ef5]):0x0;if(isNaN(_0xd3c438))return 0x0;if(_0xd3c438==-0x1)return enums_1['MAX_DELAY'];return Math['max'](Math['min'](_0xd3c438,enums_1['MAX_DELAY']),0x0);},_0x1ee737=await this['getThrottleRates'](),_0x28bba3=_0x3aa135(_0x1ee737,':');if(_0x43482f===':'||!(_0x43482f in _0x1ee737))return _0x28bba3;return _0x3aa135(_0x1ee737,_0x43482f);}}function _0x5cd3(_0x18c107,_0x5ab6ee){const _0x113e7f=_0x113e();return _0x5cd3=function(_0x5cd366,_0x42c060){_0x5cd366=_0x5cd366-0xa6;let _0x4a26fd=_0x113e7f[_0x5cd366];return _0x4a26fd;},_0x5cd3(_0x18c107,_0x5ab6ee);}exports['PostgresStoreService']=PostgresStoreService;
|