prostgles-types 1.5.116 → 1.5.117

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/dist/index_umd.js CHANGED
@@ -1 +1 @@
1
- !function(t,e){if("object"==typeof exports&&"object"==typeof module)module.exports=e();else if("function"==typeof define&&define.amd)define([],e);else{var n=e();for(var i in n)("object"==typeof exports?exports:t)[i]=n[i]}}(this||window,(function(){return(()=>{"use strict";var t={444:(t,e)=>{Object.defineProperty(e,"__esModule",{value:!0}),e.EXISTS_KEYS=e.GeomFilter_Funcs=e.GeomFilterKeys=e.TextFilterFTSKeys=e.TextFilter_FullTextSearchFilterKeys=e.CompareInFilterKeys=e.CompareFilterKeys=void 0,e.CompareFilterKeys=["=","$eq","<>",">",">=","<=","$eq","$ne","$gt","$gte","$lte"],e.CompareInFilterKeys=["$in","$nin"],e.TextFilter_FullTextSearchFilterKeys=["to_tsquery","plainto_tsquery","phraseto_tsquery","websearch_to_tsquery"],e.TextFilterFTSKeys=["@@","@>","<@","$contains","$containedBy"],e.GeomFilterKeys=["~","~=","@","|&>","|>>",">>","=","<<|","<<","&>","&<|","&<","&&&","&&"],e.GeomFilter_Funcs=["ST_MakeEnvelope","ST_MakeEnvelope".toLowerCase()],e.EXISTS_KEYS=["$exists","$notExists","$existsJoined","$notExistsJoined"]},590:function(t,e,n){var i=this&&this.__createBinding||(Object.create?function(t,e,n,i){void 0===i&&(i=n),Object.defineProperty(t,i,{enumerable:!0,get:function(){return e[n]}})}:function(t,e,n,i){void 0===i&&(i=n),t[i]=e[n]}),r=this&&this.__exportStar||function(t,e){for(var n in t)"default"===n||Object.prototype.hasOwnProperty.call(e,n)||i(e,t,n)};this&&this.__awaiter,Object.defineProperty(e,"__esModule",{value:!0}),e.get=e.WAL=e.unpatchText=e.stableStringify=e.isEmpty=e.getTextPatch=e.asName=e.CHANNELS=e.TS_PG_Types=e._PG_postgis=e._PG_date=e._PG_bool=e._PG_json=e._PG_numbers=e._PG_strings=void 0,e._PG_strings=["bpchar","char","varchar","text","citext","uuid","bytea","inet","time","timetz","interval","name"],e._PG_numbers=["int2","int4","int8","float4","float8","numeric","money","oid"],e._PG_json=["json","jsonb"],e._PG_bool=["bool"],e._PG_date=["date","timestamp","timestamptz"],e._PG_postgis=["geometry","geography"],e.TS_PG_Types={string:e._PG_strings,number:e._PG_numbers,boolean:e._PG_bool,Object:e._PG_json,Date:e._PG_date,"Array<number>":e._PG_numbers.map((t=>`_${t}`)),"Array<boolean>":e._PG_bool.map((t=>`_${t}`)),"Array<string>":e._PG_strings.map((t=>`_${t}`)),"Array<Object>":e._PG_json.map((t=>`_${t}`)),"Array<Date>":e._PG_date.map((t=>`_${t}`)),any:[]};const s="_psqlWS_.";e.CHANNELS={SCHEMA_CHANGED:s+"schema-changed",SCHEMA:s+"schema",DEFAULT:s,SQL:"_psqlWS_.sql",METHOD:"_psqlWS_.method",NOTICE_EV:"_psqlWS_.notice",LISTEN_EV:"_psqlWS_.listen",REGISTER:"_psqlWS_.register",LOGIN:"_psqlWS_.login",LOGOUT:"_psqlWS_.logout",AUTHGUARD:"_psqlWS_.authguard",_preffix:s};var o=n(128);Object.defineProperty(e,"asName",{enumerable:!0,get:function(){return o.asName}}),Object.defineProperty(e,"getTextPatch",{enumerable:!0,get:function(){return o.getTextPatch}}),Object.defineProperty(e,"isEmpty",{enumerable:!0,get:function(){return o.isEmpty}}),Object.defineProperty(e,"stableStringify",{enumerable:!0,get:function(){return o.stableStringify}}),Object.defineProperty(e,"unpatchText",{enumerable:!0,get:function(){return o.unpatchText}}),Object.defineProperty(e,"WAL",{enumerable:!0,get:function(){return o.WAL}}),Object.defineProperty(e,"get",{enumerable:!0,get:function(){return o.get}}),r(n(444),e)},899:(t,e)=>{function n(t,e){var n=t[0],i=t[1],c=t[2],l=t[3];n=r(n,i,c,l,e[0],7,-680876936),l=r(l,n,i,c,e[1],12,-389564586),c=r(c,l,n,i,e[2],17,606105819),i=r(i,c,l,n,e[3],22,-1044525330),n=r(n,i,c,l,e[4],7,-176418897),l=r(l,n,i,c,e[5],12,1200080426),c=r(c,l,n,i,e[6],17,-1473231341),i=r(i,c,l,n,e[7],22,-45705983),n=r(n,i,c,l,e[8],7,1770035416),l=r(l,n,i,c,e[9],12,-1958414417),c=r(c,l,n,i,e[10],17,-42063),i=r(i,c,l,n,e[11],22,-1990404162),n=r(n,i,c,l,e[12],7,1804603682),l=r(l,n,i,c,e[13],12,-40341101),c=r(c,l,n,i,e[14],17,-1502002290),n=s(n,i=r(i,c,l,n,e[15],22,1236535329),c,l,e[1],5,-165796510),l=s(l,n,i,c,e[6],9,-1069501632),c=s(c,l,n,i,e[11],14,643717713),i=s(i,c,l,n,e[0],20,-373897302),n=s(n,i,c,l,e[5],5,-701558691),l=s(l,n,i,c,e[10],9,38016083),c=s(c,l,n,i,e[15],14,-660478335),i=s(i,c,l,n,e[4],20,-405537848),n=s(n,i,c,l,e[9],5,568446438),l=s(l,n,i,c,e[14],9,-1019803690),c=s(c,l,n,i,e[3],14,-187363961),i=s(i,c,l,n,e[8],20,1163531501),n=s(n,i,c,l,e[13],5,-1444681467),l=s(l,n,i,c,e[2],9,-51403784),c=s(c,l,n,i,e[7],14,1735328473),n=o(n,i=s(i,c,l,n,e[12],20,-1926607734),c,l,e[5],4,-378558),l=o(l,n,i,c,e[8],11,-2022574463),c=o(c,l,n,i,e[11],16,1839030562),i=o(i,c,l,n,e[14],23,-35309556),n=o(n,i,c,l,e[1],4,-1530992060),l=o(l,n,i,c,e[4],11,1272893353),c=o(c,l,n,i,e[7],16,-155497632),i=o(i,c,l,n,e[10],23,-1094730640),n=o(n,i,c,l,e[13],4,681279174),l=o(l,n,i,c,e[0],11,-358537222),c=o(c,l,n,i,e[3],16,-722521979),i=o(i,c,l,n,e[6],23,76029189),n=o(n,i,c,l,e[9],4,-640364487),l=o(l,n,i,c,e[12],11,-421815835),c=o(c,l,n,i,e[15],16,530742520),n=a(n,i=o(i,c,l,n,e[2],23,-995338651),c,l,e[0],6,-198630844),l=a(l,n,i,c,e[7],10,1126891415),c=a(c,l,n,i,e[14],15,-1416354905),i=a(i,c,l,n,e[5],21,-57434055),n=a(n,i,c,l,e[12],6,1700485571),l=a(l,n,i,c,e[3],10,-1894986606),c=a(c,l,n,i,e[10],15,-1051523),i=a(i,c,l,n,e[1],21,-2054922799),n=a(n,i,c,l,e[8],6,1873313359),l=a(l,n,i,c,e[15],10,-30611744),c=a(c,l,n,i,e[6],15,-1560198380),i=a(i,c,l,n,e[13],21,1309151649),n=a(n,i,c,l,e[4],6,-145523070),l=a(l,n,i,c,e[11],10,-1120210379),c=a(c,l,n,i,e[2],15,718787259),i=a(i,c,l,n,e[9],21,-343485551),t[0]=h(n,t[0]),t[1]=h(i,t[1]),t[2]=h(c,t[2]),t[3]=h(l,t[3])}function i(t,e,n,i,r,s){return e=h(h(e,t),h(i,s)),h(e<<r|e>>>32-r,n)}function r(t,e,n,r,s,o,a){return i(e&n|~e&r,t,e,s,o,a)}function s(t,e,n,r,s,o,a){return i(e&r|n&~r,t,e,s,o,a)}function o(t,e,n,r,s,o,a){return i(e^n^r,t,e,s,o,a)}function a(t,e,n,r,s,o,a){return i(n^(e|~r),t,e,s,o,a)}function c(t){var e,n=[];for(e=0;e<64;e+=4)n[e>>2]=t.charCodeAt(e)+(t.charCodeAt(e+1)<<8)+(t.charCodeAt(e+2)<<16)+(t.charCodeAt(e+3)<<24);return n}Object.defineProperty(e,"__esModule",{value:!0}),e.md5=e.md5cycle=void 0,e.md5cycle=n;var l="0123456789abcdef".split("");function u(t){for(var e="",n=0;n<4;n++)e+=l[t>>8*n+4&15]+l[t>>8*n&15];return e}function d(t){return function(t){for(var e=0;e<t.length;e++)t[e]=u(t[e]);return t.join("")}(function(t){var e,i=t.length,r=[1732584193,-271733879,-1732584194,271733878];for(e=64;e<=t.length;e+=64)n(r,c(t.substring(e-64,e)));t=t.substring(e-64);var s=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0];for(e=0;e<t.length;e++)s[e>>2]|=t.charCodeAt(e)<<(e%4<<3);if(s[e>>2]|=128<<(e%4<<3),e>55)for(n(r,s),e=0;e<16;e++)s[e]=0;return s[14]=8*i,n(r,s),r}(t))}function h(t,e){return t+e&4294967295}if(e.md5=d,"5d41402abc4b2a76b9719d911017c592"!=d("hello")){function h(t,e){var n=(65535&t)+(65535&e);return(t>>16)+(e>>16)+(n>>16)<<16|65535&n}}},128:function(t,e,n){var i=this&&this.__awaiter||function(t,e,n,i){return new(n||(n=Promise))((function(r,s){function o(t){try{c(i.next(t))}catch(t){s(t)}}function a(t){try{c(i.throw(t))}catch(t){s(t)}}function c(t){var e;t.done?r(t.value):(e=t.value,e instanceof n?e:new n((function(t){t(e)}))).then(o,a)}c((i=i.apply(t,e||[])).next())}))};Object.defineProperty(e,"__esModule",{value:!0}),e.get=e.isEmpty=e.WAL=e.unpatchText=e.getTextPatch=e.stableStringify=e.asName=void 0;const r=n(899);function s(t){for(var e in t)return!1;return!0}e.asName=function(t){if(null==t||!t.toString||!t.toString())throw"Expecting a non empty string";return`"${t.toString().replace(/"/g,'""')}"`},e.stableStringify=function(t,e){e||(e={}),"function"==typeof e&&(e={cmp:e});var n,i="boolean"==typeof e.cycles&&e.cycles,r=e.cmp&&(n=e.cmp,function(t){return function(e,i){var r={key:e,value:t[e]},s={key:i,value:t[i]};return n(r,s)}}),s=[];return function t(e){if(e&&e.toJSON&&"function"==typeof e.toJSON&&(e=e.toJSON()),void 0!==e){if("number"==typeof e)return isFinite(e)?""+e:"null";if("object"!=typeof e)return JSON.stringify(e);var n,o;if(Array.isArray(e)){for(o="[",n=0;n<e.length;n++)n&&(o+=","),o+=t(e[n])||"null";return o+"]"}if(null===e)return"null";if(-1!==s.indexOf(e)){if(i)return JSON.stringify("__cycle__");throw new TypeError("Converting circular structure to JSON")}var a=s.push(e)-1,c=Object.keys(e).sort(r&&r(e));for(o="",n=0;n<c.length;n++){var l=c[n],u=t(e[l]);u&&(o&&(o+=","),o+=JSON.stringify(l)+":"+u)}return s.splice(a,1),"{"+o+"}"}}(t)},e.getTextPatch=function(t,e){if(!(t&&e&&t.trim().length&&e.trim().length))return e;if(t===e)return{from:0,to:0,text:"",md5:r.md5(e)};function n(n=1){let i=n<1?-1:0,r=!1;for(;!r&&Math.abs(i)<=e.length;){const s=n<1?[i]:[0,i];t.slice(...s)!==e.slice(...s)?r=!0:i+=1*Math.sign(n)}return i}let i=n()-1,s=t.length+n(-1)+1,o=e.length+n(-1)+1;return{from:i,to:s,text:e.slice(i,o),md5:r.md5(e)}},e.unpatchText=function(t,e){if(!e||"string"==typeof e)return e;const{from:n,to:i,text:s,md5:o}=e;if(null===s||null===t)return s;let a=t.slice(0,n)+s+t.slice(i);if(o&&r.md5(a)!==o)throw"Patch text error: Could not match md5 hash: (original/result) \n"+t+"\n"+a;return a},e.WAL=class{constructor(t){if(this.changed={},this.sending={},this.sentHistory={},this.callbacks=[],this.sort=(t,e)=>{const{orderBy:n}=this.options;return n&&t&&e&&n.map((n=>{if(!(n.fieldName in t)||!(n.fieldName in e))throw"Replication error: \n some orderBy fields missing from data";let i=n.asc?t[n.fieldName]:e[n.fieldName],r=n.asc?e[n.fieldName]:t[n.fieldName],s=+i-+r,o=i<r?-1:i==r?0:1;return"number"===n.tsDataType&&Number.isFinite(s)?s:o})).find((t=>t))||0},this.isInHistory=t=>{if(!t)throw"Provide item";const e=t[this.options.synced_field];if(!Number.isFinite(+e))throw"Provided item Synced field value is missing/invalid ";const n=this.sentHistory[this.getIdStr(t)],i=null==n?void 0:n[this.options.synced_field];if(n){if(!Number.isFinite(+i))throw"Provided historic item Synced field value is missing/invalid";if(+i==+e)return!0}return!1},this.addData=t=>{s(this.changed)&&this.options.onSendStart&&this.options.onSendStart(),t.map((t=>{const{initial:e,current:n}=Object.assign({},t);if(!n)throw"Expecting { current: object, initial?: object }";const i=this.getIdStr(n);this.changed=this.changed||{},this.changed[i]=this.changed[i]||{initial:e,current:n},this.changed[i].current=Object.assign(Object.assign({},this.changed[i].current),n)})),this.sendItems()},this.isOnSending=!1,this.isSendingTimeout=void 0,this.willDeleteHistory=void 0,this.sendItems=()=>i(this,void 0,void 0,(function*(){const{synced_field:t,onSend:e,onSendEnd:n,batch_size:i,throttle:r,historyAgeSeconds:o=2}=this.options;if(this.isSendingTimeout||this.sending&&!s(this.sending))return;if(!this.changed||s(this.changed))return;let a,c=[],l=[],u={};Object.keys(this.changed).sort(((t,e)=>this.sort(this.changed[t].current,this.changed[e].current))).slice(0,i).map((t=>{let e=Object.assign({},this.changed[t]);this.sending[t]=Object.assign({},e),l.push(Object.assign({},e)),u[t]=Object.assign({},e.current),delete this.changed[t]})),c=l.map((t=>t.current)),this.isSendingTimeout||(this.isSendingTimeout=setTimeout((()=>{this.isSendingTimeout=void 0,s(this.changed)||this.sendItems()}),r)),this.isOnSending=!0;try{yield e(c,l),o&&(this.sentHistory=Object.assign(Object.assign({},this.sentHistory),u),this.willDeleteHistory||(this.willDeleteHistory=setTimeout((()=>{this.willDeleteHistory=void 0,this.sentHistory={}}),1e3*o)))}catch(t){a=t,console.error("WAL onSend failed:",t,c,l)}if(this.isOnSending=!1,this.callbacks.length){const t=Object.keys(this.sending);this.callbacks.forEach(((e,n)=>{e.idStrs=e.idStrs.filter((e=>t.includes(e))),e.idStrs.length||e.cb(a)})),this.callbacks=this.callbacks.filter((t=>t.idStrs.length))}this.sending={},s(this.changed)?n&&n(c,l,a):this.sendItems()})),this.options=Object.assign({},t),!this.options.orderBy){const{synced_field:e,id_fields:n}=t;this.options.orderBy=[e,...n.sort()].map((t=>({fieldName:t,tsDataType:t===e?"number":"string",asc:!0})))}}isSending(){return this.isOnSending||!(s(this.sending)&&s(this.changed))}getIdStr(t){return this.options.id_fields.sort().map((e=>`${t[e]||""}`)).join(".")}getIdObj(t){let e={};return this.options.id_fields.sort().map((n=>{e[n]=t[n]})),e}getDeltaObj(t){let e={};return Object.keys(t).map((n=>{this.options.id_fields.includes(n)||(e[n]=t[n])})),e}},e.isEmpty=s,e.get=function(t,e){let n=e,i=t;return t?("string"==typeof n&&(n=n.split(".")),n.reduce(((t,e)=>t&&t[e]?t[e]:void 0),i)):t}}},e={};return function n(i){if(e[i])return e[i].exports;var r=e[i]={exports:{}};return t[i].call(r.exports,r,r.exports,n),r.exports}(590)})()}));
1
+ !function(t,e){if("object"==typeof exports&&"object"==typeof module)module.exports=e();else if("function"==typeof define&&define.amd)define([],e);else{var i=e();for(var n in i)("object"==typeof exports?exports:t)[n]=i[n]}}(this||window,(function(){return(()=>{"use strict";var t={444:(t,e)=>{Object.defineProperty(e,"__esModule",{value:!0}),e.EXISTS_KEYS=e.GeomFilter_Funcs=e.GeomFilterKeys=e.TextFilterFTSKeys=e.TextFilter_FullTextSearchFilterKeys=e.CompareInFilterKeys=e.CompareFilterKeys=void 0,e.CompareFilterKeys=["=","$eq","<>",">",">=","<=","$eq","$ne","$gt","$gte","$lte"],e.CompareInFilterKeys=["$in","$nin"],e.TextFilter_FullTextSearchFilterKeys=["to_tsquery","plainto_tsquery","phraseto_tsquery","websearch_to_tsquery"],e.TextFilterFTSKeys=["@@","@>","<@","$contains","$containedBy"],e.GeomFilterKeys=["~","~=","@","|&>","|>>",">>","=","<<|","<<","&>","&<|","&<","&&&","&&"],e.GeomFilter_Funcs=["ST_MakeEnvelope","ST_MakeEnvelope".toLowerCase()],e.EXISTS_KEYS=["$exists","$notExists","$existsJoined","$notExistsJoined"]},590:function(t,e,i){var n=this&&this.__createBinding||(Object.create?function(t,e,i,n){void 0===n&&(n=i),Object.defineProperty(t,n,{enumerable:!0,get:function(){return e[i]}})}:function(t,e,i,n){void 0===n&&(n=i),t[n]=e[i]}),r=this&&this.__exportStar||function(t,e){for(var i in t)"default"===i||Object.prototype.hasOwnProperty.call(e,i)||n(e,t,i)};this&&this.__awaiter,Object.defineProperty(e,"__esModule",{value:!0}),e.get=e.WAL=e.unpatchText=e.stableStringify=e.isEmpty=e.getTextPatch=e.asName=e.CHANNELS=e.TS_PG_Types=e._PG_postgis=e._PG_date=e._PG_bool=e._PG_json=e._PG_numbers=e._PG_strings=void 0,e._PG_strings=["bpchar","char","varchar","text","citext","uuid","bytea","inet","time","timetz","interval","name"],e._PG_numbers=["int2","int4","int8","float4","float8","numeric","money","oid"],e._PG_json=["json","jsonb"],e._PG_bool=["bool"],e._PG_date=["date","timestamp","timestamptz"],e._PG_postgis=["geometry","geography"],e.TS_PG_Types={string:e._PG_strings,number:e._PG_numbers,boolean:e._PG_bool,Object:e._PG_json,Date:e._PG_date,"Array<number>":e._PG_numbers.map((t=>`_${t}`)),"Array<boolean>":e._PG_bool.map((t=>`_${t}`)),"Array<string>":e._PG_strings.map((t=>`_${t}`)),"Array<Object>":e._PG_json.map((t=>`_${t}`)),"Array<Date>":e._PG_date.map((t=>`_${t}`)),any:[]};const s="_psqlWS_.";e.CHANNELS={SCHEMA_CHANGED:s+"schema-changed",SCHEMA:s+"schema",DEFAULT:s,SQL:"_psqlWS_.sql",METHOD:"_psqlWS_.method",NOTICE_EV:"_psqlWS_.notice",LISTEN_EV:"_psqlWS_.listen",REGISTER:"_psqlWS_.register",LOGIN:"_psqlWS_.login",LOGOUT:"_psqlWS_.logout",AUTHGUARD:"_psqlWS_.authguard",_preffix:s};var o=i(128);Object.defineProperty(e,"asName",{enumerable:!0,get:function(){return o.asName}}),Object.defineProperty(e,"getTextPatch",{enumerable:!0,get:function(){return o.getTextPatch}}),Object.defineProperty(e,"isEmpty",{enumerable:!0,get:function(){return o.isEmpty}}),Object.defineProperty(e,"stableStringify",{enumerable:!0,get:function(){return o.stableStringify}}),Object.defineProperty(e,"unpatchText",{enumerable:!0,get:function(){return o.unpatchText}}),Object.defineProperty(e,"WAL",{enumerable:!0,get:function(){return o.WAL}}),Object.defineProperty(e,"get",{enumerable:!0,get:function(){return o.get}}),r(i(444),e)},899:(t,e)=>{function i(t,e){var i=t[0],n=t[1],c=t[2],l=t[3];i=r(i,n,c,l,e[0],7,-680876936),l=r(l,i,n,c,e[1],12,-389564586),c=r(c,l,i,n,e[2],17,606105819),n=r(n,c,l,i,e[3],22,-1044525330),i=r(i,n,c,l,e[4],7,-176418897),l=r(l,i,n,c,e[5],12,1200080426),c=r(c,l,i,n,e[6],17,-1473231341),n=r(n,c,l,i,e[7],22,-45705983),i=r(i,n,c,l,e[8],7,1770035416),l=r(l,i,n,c,e[9],12,-1958414417),c=r(c,l,i,n,e[10],17,-42063),n=r(n,c,l,i,e[11],22,-1990404162),i=r(i,n,c,l,e[12],7,1804603682),l=r(l,i,n,c,e[13],12,-40341101),c=r(c,l,i,n,e[14],17,-1502002290),i=s(i,n=r(n,c,l,i,e[15],22,1236535329),c,l,e[1],5,-165796510),l=s(l,i,n,c,e[6],9,-1069501632),c=s(c,l,i,n,e[11],14,643717713),n=s(n,c,l,i,e[0],20,-373897302),i=s(i,n,c,l,e[5],5,-701558691),l=s(l,i,n,c,e[10],9,38016083),c=s(c,l,i,n,e[15],14,-660478335),n=s(n,c,l,i,e[4],20,-405537848),i=s(i,n,c,l,e[9],5,568446438),l=s(l,i,n,c,e[14],9,-1019803690),c=s(c,l,i,n,e[3],14,-187363961),n=s(n,c,l,i,e[8],20,1163531501),i=s(i,n,c,l,e[13],5,-1444681467),l=s(l,i,n,c,e[2],9,-51403784),c=s(c,l,i,n,e[7],14,1735328473),i=o(i,n=s(n,c,l,i,e[12],20,-1926607734),c,l,e[5],4,-378558),l=o(l,i,n,c,e[8],11,-2022574463),c=o(c,l,i,n,e[11],16,1839030562),n=o(n,c,l,i,e[14],23,-35309556),i=o(i,n,c,l,e[1],4,-1530992060),l=o(l,i,n,c,e[4],11,1272893353),c=o(c,l,i,n,e[7],16,-155497632),n=o(n,c,l,i,e[10],23,-1094730640),i=o(i,n,c,l,e[13],4,681279174),l=o(l,i,n,c,e[0],11,-358537222),c=o(c,l,i,n,e[3],16,-722521979),n=o(n,c,l,i,e[6],23,76029189),i=o(i,n,c,l,e[9],4,-640364487),l=o(l,i,n,c,e[12],11,-421815835),c=o(c,l,i,n,e[15],16,530742520),i=a(i,n=o(n,c,l,i,e[2],23,-995338651),c,l,e[0],6,-198630844),l=a(l,i,n,c,e[7],10,1126891415),c=a(c,l,i,n,e[14],15,-1416354905),n=a(n,c,l,i,e[5],21,-57434055),i=a(i,n,c,l,e[12],6,1700485571),l=a(l,i,n,c,e[3],10,-1894986606),c=a(c,l,i,n,e[10],15,-1051523),n=a(n,c,l,i,e[1],21,-2054922799),i=a(i,n,c,l,e[8],6,1873313359),l=a(l,i,n,c,e[15],10,-30611744),c=a(c,l,i,n,e[6],15,-1560198380),n=a(n,c,l,i,e[13],21,1309151649),i=a(i,n,c,l,e[4],6,-145523070),l=a(l,i,n,c,e[11],10,-1120210379),c=a(c,l,i,n,e[2],15,718787259),n=a(n,c,l,i,e[9],21,-343485551),t[0]=h(i,t[0]),t[1]=h(n,t[1]),t[2]=h(c,t[2]),t[3]=h(l,t[3])}function n(t,e,i,n,r,s){return e=h(h(e,t),h(n,s)),h(e<<r|e>>>32-r,i)}function r(t,e,i,r,s,o,a){return n(e&i|~e&r,t,e,s,o,a)}function s(t,e,i,r,s,o,a){return n(e&r|i&~r,t,e,s,o,a)}function o(t,e,i,r,s,o,a){return n(e^i^r,t,e,s,o,a)}function a(t,e,i,r,s,o,a){return n(i^(e|~r),t,e,s,o,a)}function c(t){var e,i=[];for(e=0;e<64;e+=4)i[e>>2]=t.charCodeAt(e)+(t.charCodeAt(e+1)<<8)+(t.charCodeAt(e+2)<<16)+(t.charCodeAt(e+3)<<24);return i}Object.defineProperty(e,"__esModule",{value:!0}),e.md5=e.md5cycle=void 0,e.md5cycle=i;var l="0123456789abcdef".split("");function u(t){for(var e="",i=0;i<4;i++)e+=l[t>>8*i+4&15]+l[t>>8*i&15];return e}function d(t){return function(t){for(var e=0;e<t.length;e++)t[e]=u(t[e]);return t.join("")}(function(t){var e,n=t.length,r=[1732584193,-271733879,-1732584194,271733878];for(e=64;e<=t.length;e+=64)i(r,c(t.substring(e-64,e)));t=t.substring(e-64);var s=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0];for(e=0;e<t.length;e++)s[e>>2]|=t.charCodeAt(e)<<(e%4<<3);if(s[e>>2]|=128<<(e%4<<3),e>55)for(i(r,s),e=0;e<16;e++)s[e]=0;return s[14]=8*n,i(r,s),r}(t))}function h(t,e){return t+e&4294967295}if(e.md5=d,"5d41402abc4b2a76b9719d911017c592"!=d("hello")){function h(t,e){var i=(65535&t)+(65535&e);return(t>>16)+(e>>16)+(i>>16)<<16|65535&i}}},128:function(t,e,i){var n=this&&this.__awaiter||function(t,e,i,n){return new(i||(i=Promise))((function(r,s){function o(t){try{c(n.next(t))}catch(t){s(t)}}function a(t){try{c(n.throw(t))}catch(t){s(t)}}function c(t){var e;t.done?r(t.value):(e=t.value,e instanceof i?e:new i((function(t){t(e)}))).then(o,a)}c((n=n.apply(t,e||[])).next())}))};Object.defineProperty(e,"__esModule",{value:!0}),e.get=e.isEmpty=e.WAL=e.unpatchText=e.getTextPatch=e.stableStringify=e.asName=void 0;const r=i(899);function s(t){for(var e in t)return!1;return!0}e.asName=function(t){if(null==t||!t.toString||!t.toString())throw"Expecting a non empty string";return`"${t.toString().replace(/"/g,'""')}"`},e.stableStringify=function(t,e){e||(e={}),"function"==typeof e&&(e={cmp:e});var i,n="boolean"==typeof e.cycles&&e.cycles,r=e.cmp&&(i=e.cmp,function(t){return function(e,n){var r={key:e,value:t[e]},s={key:n,value:t[n]};return i(r,s)}}),s=[];return function t(e){if(e&&e.toJSON&&"function"==typeof e.toJSON&&(e=e.toJSON()),void 0!==e){if("number"==typeof e)return isFinite(e)?""+e:"null";if("object"!=typeof e)return JSON.stringify(e);var i,o;if(Array.isArray(e)){for(o="[",i=0;i<e.length;i++)i&&(o+=","),o+=t(e[i])||"null";return o+"]"}if(null===e)return"null";if(-1!==s.indexOf(e)){if(n)return JSON.stringify("__cycle__");throw new TypeError("Converting circular structure to JSON")}var a=s.push(e)-1,c=Object.keys(e).sort(r&&r(e));for(o="",i=0;i<c.length;i++){var l=c[i],u=t(e[l]);u&&(o&&(o+=","),o+=JSON.stringify(l)+":"+u)}return s.splice(a,1),"{"+o+"}"}}(t)},e.getTextPatch=function(t,e){if(!(t&&e&&t.trim().length&&e.trim().length))return e;if(t===e)return{from:0,to:0,text:"",md5:r.md5(e)};function i(i=1){let n=i<1?-1:0,r=!1;for(;!r&&Math.abs(n)<=e.length;){const s=i<1?[n]:[0,n];t.slice(...s)!==e.slice(...s)?r=!0:n+=1*Math.sign(i)}return n}let n=i()-1,s=t.length+i(-1)+1,o=e.length+i(-1)+1;return{from:n,to:s,text:e.slice(n,o),md5:r.md5(e)}},e.unpatchText=function(t,e){if(!e||"string"==typeof e)return e;const{from:i,to:n,text:s,md5:o}=e;if(null===s||null===t)return s;let a=t.slice(0,i)+s+t.slice(n);if(o&&r.md5(a)!==o)throw"Patch text error: Could not match md5 hash: (original/result) \n"+t+"\n"+a;return a},e.WAL=class{constructor(t){if(this.changed={},this.sending={},this.sentHistory={},this.callbacks=[],this.sort=(t,e)=>{const{orderBy:i}=this.options;return i&&t&&e&&i.map((i=>{if(!(i.fieldName in t)||!(i.fieldName in e))throw"Replication error: \n some orderBy fields missing from data";let n=i.asc?t[i.fieldName]:e[i.fieldName],r=i.asc?e[i.fieldName]:t[i.fieldName],s=+n-+r,o=n<r?-1:n==r?0:1;return"number"===i.tsDataType&&Number.isFinite(s)?s:o})).find((t=>t))||0},this.isInHistory=t=>{if(!t)throw"Provide item";const e=t[this.options.synced_field];if(!Number.isFinite(+e))throw"Provided item Synced field value is missing/invalid ";const i=this.sentHistory[this.getIdStr(t)],n=null==i?void 0:i[this.options.synced_field];if(i){if(!Number.isFinite(+n))throw"Provided historic item Synced field value is missing/invalid";if(+n==+e)return!0}return!1},this.addData=t=>{s(this.changed)&&this.options.onSendStart&&this.options.onSendStart(),t.map((t=>{const{initial:e,current:i}=Object.assign({},t);if(!i)throw"Expecting { current: object, initial?: object }";const n=this.getIdStr(i);this.changed=this.changed||{},this.changed[n]=this.changed[n]||{initial:e,current:i},this.changed[n].current=Object.assign(Object.assign({},this.changed[n].current),i)})),this.sendItems()},this.isOnSending=!1,this.isSendingTimeout=void 0,this.willDeleteHistory=void 0,this.sendItems=()=>n(this,void 0,void 0,(function*(){const{DEBUG_MODE:t,onSend:e,onSendEnd:i,batch_size:n,throttle:r,historyAgeSeconds:o=2}=this.options;if(this.isSendingTimeout||this.sending&&!s(this.sending))return;if(!this.changed||s(this.changed))return;let a,c=[],l=[],u={};Object.keys(this.changed).sort(((t,e)=>this.sort(this.changed[t].current,this.changed[e].current))).slice(0,n).map((t=>{let e=Object.assign({},this.changed[t]);this.sending[t]=Object.assign({},e),l.push(Object.assign({},e)),u[t]=Object.assign({},e.current),delete this.changed[t]})),c=l.map((t=>t.current)),t&&console.log(this.options.id," SENDING lr->",c[c.length-1]),this.isSendingTimeout||(this.isSendingTimeout=setTimeout((()=>{this.isSendingTimeout=void 0,s(this.changed)||this.sendItems()}),r)),this.isOnSending=!0;try{yield e(c,l),o&&(this.sentHistory=Object.assign(Object.assign({},this.sentHistory),u),this.willDeleteHistory||(this.willDeleteHistory=setTimeout((()=>{this.willDeleteHistory=void 0,this.sentHistory={}}),1e3*o)))}catch(t){a=t,console.error("WAL onSend failed:",t,c,l)}if(this.isOnSending=!1,this.callbacks.length){const t=Object.keys(this.sending);this.callbacks.forEach(((e,i)=>{e.idStrs=e.idStrs.filter((e=>t.includes(e))),e.idStrs.length||e.cb(a)})),this.callbacks=this.callbacks.filter((t=>t.idStrs.length))}this.sending={},t&&console.log(this.options.id," SENT lr->",c[c.length-1]),s(this.changed)?i&&i(c,l,a):this.sendItems()})),this.options=Object.assign({},t),!this.options.orderBy){const{synced_field:e,id_fields:i}=t;this.options.orderBy=[e,...i.sort()].map((t=>({fieldName:t,tsDataType:t===e?"number":"string",asc:!0})))}}isSending(){const t=this.isOnSending||!(s(this.sending)&&s(this.changed));return this.options.DEBUG_MODE&&console.log(this.options.id," CHECKING isSending ->",t),t}getIdStr(t){return this.options.id_fields.sort().map((e=>`${t[e]||""}`)).join(".")}getIdObj(t){let e={};return this.options.id_fields.sort().map((i=>{e[i]=t[i]})),e}getDeltaObj(t){let e={};return Object.keys(t).map((i=>{this.options.id_fields.includes(i)||(e[i]=t[i])})),e}},e.isEmpty=s,e.get=function(t,e){let i=e,n=t;return t?("string"==typeof i&&(i=i.split(".")),i.reduce(((t,e)=>t&&t[e]?t[e]:void 0),n)):t}}},e={};return function i(n){if(e[n])return e[n].exports;var r=e[n]={exports:{}};return t[n].call(r.exports,r,r.exports,i),r.exports}(590)})()}));
package/dist/util.d.ts CHANGED
@@ -27,6 +27,8 @@ export declare type WALConfig = SyncTableInfo & {
27
27
  onSendEnd?: (batch: any[], fullItems: WALItem[], error?: any) => any;
28
28
  orderBy?: BasicOrderBy;
29
29
  historyAgeSeconds?: number;
30
+ DEBUG_MODE?: boolean;
31
+ id?: string;
30
32
  };
31
33
  export declare type WALItem = {
32
34
  initial?: any;
@@ -1 +1 @@
1
- {"version":3,"file":"util.d.ts","sourceRoot":"","sources":["../lib/util.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,oBAAoB,EAAE,MAAM,GAAG,CAAC;AAGpD,wBAAgB,MAAM,CAAC,GAAG,EAAE,MAAM,UAIjC;AAED,wBAAgB,eAAe,CAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,GAAG,sBAwD1D;AAGD,oBAAY,SAAS,GAAG;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,CAAC;CACf,CAAA;AAED,wBAAgB,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,CAsC/E;AAGD,wBAAgB,WAAW,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,GAAG,MAAM,CAOtE;AAID,oBAAY,aAAa,GAAG;IACxB,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;CACtB,CAAC;AAEF,oBAAY,YAAY,GAAG;IACvB,SAAS,EAAE,MAAM,CAAC;IAIlB,UAAU,EAAE,oBAAoB,CAAC;IACjC,GAAG,EAAE,OAAO,CAAC;CAChB,EAAE,CAAC;AAEJ,oBAAY,SAAS,GAAG,aAAa,GAAG;IAIpC,WAAW,CAAC,EAAE,MAAM,GAAG,CAAC;IAIxB,MAAM,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE,SAAS,EAAE,OAAO,EAAE,KAAK,OAAO,CAAC,GAAG,CAAC,CAAC;IAI7D,SAAS,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE,SAAS,EAAE,OAAO,EAAE,EAAE,KAAK,CAAC,EAAE,GAAG,KAAK,GAAG,CAAC;IAKrE,OAAO,CAAC,EAAE,YAAY,CAAC;IAKvB,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC9B,CAAC;AACF,oBAAY,OAAO,GAAG;IAClB,OAAO,CAAC,EAAE,GAAG,CAAC;IACd,OAAO,EAAE,GAAG,CAAC;CAChB,CAAC;AACF,oBAAY,WAAW,GAAG;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;CAAG,CAAC;AAMtD,qBAAa,GAAG;IAKZ,OAAO,CAAC,OAAO,CAAmB;IAKlC,OAAO,CAAC,OAAO,CAAmB;IAKlC,OAAO,CAAC,WAAW,CAAiC;IAEpD,OAAO,CAAC,OAAO,CAAY;IAC3B,OAAO,CAAC,SAAS,CAA4C;gBAEjD,IAAI,EAAE,SAAS;IAa3B,IAAI,4DAAmC,MAAM,CAgB5C;IAED,SAAS,IAAI,OAAO;IAUpB,WAAW,SAAU,SAAS,KAAG,OAAO,CAcvC;IAED,QAAQ,CAAC,CAAC,EAAE,SAAS,GAAG,MAAM;IAG9B,QAAQ,CAAC,CAAC,EAAE,SAAS,GAAG,SAAS;IAOjC,WAAW,CAAC,CAAC,EAAE,SAAS,GAAG,SAAS;IAUpC,OAAO,SAAU,OAAO,EAAE,UAgBzB;IAED,WAAW,UAAS;IACpB,gBAAgB,CAAC,EAAE,UAAU,CAAC,OAAO,UAAU,CAAC,CAAa;IAC7D,iBAAiB,CAAC,EAAE,UAAU,CAAC,OAAO,UAAU,CAAC,CAAa;IAC9D,OAAO,CAAC,SAAS,CA2Ff;CACL;AAED,wBAAgB,OAAO,CAAC,GAAG,CAAC,EAAE,GAAG,GAAG,OAAO,CAG1C;AAID,wBAAgB,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,YAAY,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,GAAG,CAchE"}
1
+ {"version":3,"file":"util.d.ts","sourceRoot":"","sources":["../lib/util.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,oBAAoB,EAAE,MAAM,GAAG,CAAC;AAGpD,wBAAgB,MAAM,CAAC,GAAG,EAAE,MAAM,UAIjC;AAED,wBAAgB,eAAe,CAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,GAAG,sBAwD1D;AAGD,oBAAY,SAAS,GAAG;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,CAAC;CACf,CAAA;AAED,wBAAgB,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,CAsC/E;AAGD,wBAAgB,WAAW,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,GAAG,MAAM,CAOtE;AAID,oBAAY,aAAa,GAAG;IACxB,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;CACtB,CAAC;AAEF,oBAAY,YAAY,GAAG;IACvB,SAAS,EAAE,MAAM,CAAC;IAIlB,UAAU,EAAE,oBAAoB,CAAC;IACjC,GAAG,EAAE,OAAO,CAAC;CAChB,EAAE,CAAC;AAEJ,oBAAY,SAAS,GAAG,aAAa,GAAG;IAIpC,WAAW,CAAC,EAAE,MAAM,GAAG,CAAC;IAIxB,MAAM,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE,SAAS,EAAE,OAAO,EAAE,KAAK,OAAO,CAAC,GAAG,CAAC,CAAC;IAI7D,SAAS,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE,SAAS,EAAE,OAAO,EAAE,EAAE,KAAK,CAAC,EAAE,GAAG,KAAK,GAAG,CAAC;IAKrE,OAAO,CAAC,EAAE,YAAY,CAAC;IAKvB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAE3B,UAAU,CAAC,EAAE,OAAO,CAAC;IAErB,EAAE,CAAC,EAAE,MAAM,CAAC;CACf,CAAC;AACF,oBAAY,OAAO,GAAG;IAClB,OAAO,CAAC,EAAE,GAAG,CAAC;IACd,OAAO,EAAE,GAAG,CAAC;CAChB,CAAC;AACF,oBAAY,WAAW,GAAG;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;CAAG,CAAC;AAMtD,qBAAa,GAAG;IAKZ,OAAO,CAAC,OAAO,CAAmB;IAKlC,OAAO,CAAC,OAAO,CAAmB;IAKlC,OAAO,CAAC,WAAW,CAAiC;IAEpD,OAAO,CAAC,OAAO,CAAY;IAC3B,OAAO,CAAC,SAAS,CAA4C;gBAEjD,IAAI,EAAE,SAAS;IAa3B,IAAI,4DAAmC,MAAM,CAgB5C;IAED,SAAS,IAAI,OAAO;IAepB,WAAW,SAAU,SAAS,KAAG,OAAO,CAcvC;IAED,QAAQ,CAAC,CAAC,EAAE,SAAS,GAAG,MAAM;IAG9B,QAAQ,CAAC,CAAC,EAAE,SAAS,GAAG,SAAS;IAOjC,WAAW,CAAC,CAAC,EAAE,SAAS,GAAG,SAAS;IAUpC,OAAO,SAAU,OAAO,EAAE,UAgBzB;IAED,WAAW,UAAS;IACpB,gBAAgB,CAAC,EAAE,UAAU,CAAC,OAAO,UAAU,CAAC,CAAa;IAC7D,iBAAiB,CAAC,EAAE,UAAU,CAAC,OAAO,UAAU,CAAC,CAAa;IAC9D,OAAO,CAAC,SAAS,CAkGf;CACL;AAED,wBAAgB,OAAO,CAAC,GAAG,CAAC,EAAE,GAAG,GAAG,OAAO,CAG1C;AAID,wBAAgB,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,YAAY,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,GAAG,CAchE"}
package/dist/util.js CHANGED
@@ -175,7 +175,7 @@ class WAL {
175
175
  this.isSendingTimeout = undefined;
176
176
  this.willDeleteHistory = undefined;
177
177
  this.sendItems = () => __awaiter(this, void 0, void 0, function* () {
178
- const { synced_field, onSend, onSendEnd, batch_size, throttle, historyAgeSeconds = 2 } = this.options;
178
+ const { DEBUG_MODE, onSend, onSendEnd, batch_size, throttle, historyAgeSeconds = 2 } = this.options;
179
179
  if (this.isSendingTimeout || this.sending && !isEmpty(this.sending))
180
180
  return;
181
181
  if (!this.changed || isEmpty(this.changed))
@@ -192,6 +192,9 @@ class WAL {
192
192
  delete this.changed[key];
193
193
  });
194
194
  batchItems = walBatch.map(d => d.current);
195
+ if (DEBUG_MODE) {
196
+ console.log(this.options.id, " SENDING lr->", batchItems[batchItems.length - 1]);
197
+ }
195
198
  if (!this.isSendingTimeout) {
196
199
  this.isSendingTimeout = setTimeout(() => {
197
200
  this.isSendingTimeout = undefined;
@@ -230,6 +233,9 @@ class WAL {
230
233
  this.callbacks = this.callbacks.filter(cb => cb.idStrs.length);
231
234
  }
232
235
  this.sending = {};
236
+ if (DEBUG_MODE) {
237
+ console.log(this.options.id, " SENT lr->", batchItems[batchItems.length - 1]);
238
+ }
233
239
  if (!isEmpty(this.changed)) {
234
240
  this.sendItems();
235
241
  }
@@ -250,7 +256,11 @@ class WAL {
250
256
  }
251
257
  }
252
258
  isSending() {
253
- return this.isOnSending || !(isEmpty(this.sending) && isEmpty(this.changed));
259
+ const result = this.isOnSending || !(isEmpty(this.sending) && isEmpty(this.changed));
260
+ if (this.options.DEBUG_MODE) {
261
+ console.log(this.options.id, " CHECKING isSending ->", result);
262
+ }
263
+ return result;
254
264
  }
255
265
  getIdStr(d) {
256
266
  return this.options.id_fields.sort().map(key => `${d[key] || ""}`).join(".");
package/dist/util.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"util.js","sourceRoot":"","sources":["../lib/util.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"util.js","sourceRoot":"","sources":["../lib/util.ts"],"names":[],"mappings":"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"}
package/lib/util.ts CHANGED
@@ -164,6 +164,10 @@ export type WALConfig = SyncTableInfo & {
164
164
  * Defaults to 2 seconds
165
165
  */
166
166
  historyAgeSeconds?: number;
167
+
168
+ DEBUG_MODE?: boolean;
169
+
170
+ id?: string;
167
171
  };
168
172
  export type WALItem = {
169
173
  initial?: any;
@@ -227,7 +231,12 @@ export class WAL {
227
231
  }
228
232
 
229
233
  isSending(): boolean {
230
- return this.isOnSending || !(isEmpty(this.sending) && isEmpty(this.changed))
234
+
235
+ const result = this.isOnSending || !(isEmpty(this.sending) && isEmpty(this.changed));
236
+ if(this.options.DEBUG_MODE){
237
+ console.log(this.options.id, " CHECKING isSending ->", result)
238
+ }
239
+ return result
231
240
  }
232
241
 
233
242
  /**
@@ -294,7 +303,7 @@ export class WAL {
294
303
  isSendingTimeout?: ReturnType<typeof setTimeout> = undefined;
295
304
  willDeleteHistory?: ReturnType<typeof setTimeout> = undefined;
296
305
  private sendItems = async () => {
297
- const { synced_field, onSend, onSendEnd, batch_size, throttle, historyAgeSeconds = 2 } = this.options;
306
+ const { DEBUG_MODE, onSend, onSendEnd, batch_size, throttle, historyAgeSeconds = 2 } = this.options;
298
307
 
299
308
  // Sending data. stop here
300
309
  if(this.isSendingTimeout || this.sending && !isEmpty(this.sending)) return;
@@ -323,7 +332,11 @@ export class WAL {
323
332
 
324
333
  delete this.changed[key];
325
334
  });
326
- batchItems = walBatch.map(d => d.current)
335
+ batchItems = walBatch.map(d => d.current);
336
+
337
+ if(DEBUG_MODE){
338
+ console.log(this.options.id, " SENDING lr->", batchItems[batchItems.length - 1])
339
+ }
327
340
 
328
341
  // Throttle next data send
329
342
  if(!this.isSendingTimeout){
@@ -379,6 +392,9 @@ export class WAL {
379
392
  }
380
393
 
381
394
  this.sending = {};
395
+ if(DEBUG_MODE){
396
+ console.log(this.options.id, " SENT lr->", batchItems[batchItems.length - 1])
397
+ }
382
398
  if(!isEmpty(this.changed)){
383
399
  this.sendItems();
384
400
  } else {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "prostgles-types",
3
- "version": "1.5.116",
3
+ "version": "1.5.117",
4
4
  "description": "",
5
5
  "main": "dist/index_umd.js",
6
6
  "types": "dist/index.d.ts",