prostgles-server 4.2.190 → 4.2.192
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/Auth/AuthHandler.d.ts +1 -1
- package/dist/Auth/AuthHandler.d.ts.map +1 -1
- package/dist/Auth/AuthHandler.js +4 -2
- package/dist/Auth/AuthHandler.js.map +1 -1
- package/dist/Auth/AuthTypes.d.ts +1 -1
- package/dist/Auth/AuthTypes.d.ts.map +1 -1
- package/dist/DboBuilder/TableHandler/TableHandler.d.ts +1 -1
- package/dist/DboBuilder/TableHandler/TableHandler.js +3 -3
- package/dist/DboBuilder/TableHandler/TableHandler.js.map +1 -1
- package/dist/Prostgles.d.ts.map +1 -1
- package/dist/Prostgles.js +4 -5
- package/dist/Prostgles.js.map +1 -1
- package/dist/PubSubManager/PubSubManager.d.ts +3 -2
- package/dist/PubSubManager/PubSubManager.d.ts.map +1 -1
- package/dist/PubSubManager/PubSubManager.js.map +1 -1
- package/dist/PubSubManager/addSync.d.ts +3 -1
- package/dist/PubSubManager/addSync.d.ts.map +1 -1
- package/dist/PubSubManager/addSync.js +13 -14
- package/dist/PubSubManager/addSync.js.map +1 -1
- package/dist/PublishParser/publishTypesAndUtils.d.ts +0 -2
- package/dist/PublishParser/publishTypesAndUtils.d.ts.map +1 -1
- package/dist/PublishParser/publishTypesAndUtils.js +1 -1
- package/dist/PublishParser/publishTypesAndUtils.js.map +1 -1
- package/dist/SyncReplication.js +44 -30
- package/dist/SyncReplication.js.map +1 -1
- package/lib/Auth/AuthHandler.ts +6 -2
- package/lib/Auth/AuthTypes.ts +1 -0
- package/lib/DboBuilder/TableHandler/TableHandler.ts +3 -3
- package/lib/Prostgles.ts +14 -6
- package/lib/PubSubManager/PubSubManager.ts +0 -1
- package/lib/PubSubManager/addSync.ts +17 -16
- package/lib/PublishParser/publishTypesAndUtils.ts +2 -2
- package/lib/SyncReplication.ts +42 -42
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"publishTypesAndUtils.d.ts","sourceRoot":"","sources":["../../lib/PublishParser/publishTypesAndUtils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,EAAgB,MAAM,iBAAiB,CAAC;AACxF,OAAO,KAAK,EAAE,aAAa,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAC3E,OAAO,EACL,gBAAgB,EAChB,MAAM,EACN,WAAW,EACX,YAAY,EACZ,eAAe,EAChB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAE,EAAE,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAEnD,MAAM,MAAM,cAAc,CAAC,CAAC,GAAG,IAAI,EAAE,KAAK,SAAS,WAAW,GAAG,WAAW,IAAI,CAC9E,MAAM,EAAE,aAAa,CAAC,CAAC,EAAE,KAAK,CAAC,KAC5B;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;CAAE,GAAG,OAAO,CAAC;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;CAAE,GAAG,IAAI,CAAC,CAAC;AAE3E,MAAM,MAAM,SAAS,CAAC,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;AAE1C,KAAK,OAAO,GAAG;IACb,MAAM,CAAC,EAAE,GAAG,CAAC;IACb,OAAO,CAAC,EAAE,GAAG,CAAC;CACf,CAAC;AAEF,MAAM,MAAM,QAAQ,GAAG,OAAO,GAAG;IAC/B,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,WAAW,CAAC;CAC1B,CAAC;AACF,MAAM,MAAM,eAAe,GAAG,OAAO,GACnC,QAAQ,GAAG;IACT,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,WAAW,CAAC;CAC1B,CAAC;AAEJ,eAAO,MAAM,eAAe
|
|
1
|
+
{"version":3,"file":"publishTypesAndUtils.d.ts","sourceRoot":"","sources":["../../lib/PublishParser/publishTypesAndUtils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,EAAgB,MAAM,iBAAiB,CAAC;AACxF,OAAO,KAAK,EAAE,aAAa,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAC3E,OAAO,EACL,gBAAgB,EAChB,MAAM,EACN,WAAW,EACX,YAAY,EACZ,eAAe,EAChB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAE,EAAE,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAEnD,MAAM,MAAM,cAAc,CAAC,CAAC,GAAG,IAAI,EAAE,KAAK,SAAS,WAAW,GAAG,WAAW,IAAI,CAC9E,MAAM,EAAE,aAAa,CAAC,CAAC,EAAE,KAAK,CAAC,KAC5B;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;CAAE,GAAG,OAAO,CAAC;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;CAAE,GAAG,IAAI,CAAC,CAAC;AAE3E,MAAM,MAAM,SAAS,CAAC,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;AAE1C,KAAK,OAAO,GAAG;IACb,MAAM,CAAC,EAAE,GAAG,CAAC;IACb,OAAO,CAAC,EAAE,GAAG,CAAC;CACf,CAAC;AAEF,MAAM,MAAM,QAAQ,GAAG,OAAO,GAAG;IAC/B,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,WAAW,CAAC;CAC1B,CAAC;AACF,MAAM,MAAM,eAAe,GAAG,OAAO,GACnC,QAAQ,GAAG;IACT,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,WAAW,CAAC;CAC1B,CAAC;AAEJ,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAkHlB,CAAC;AAEX,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC5D,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAClE,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAEhD,MAAM,MAAM,iBAAiB,GAAG;IAC9B,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;IACxB,SAAS,EAAE,WAAW,CAAC;CACxB,CAAC;AACF,MAAM,MAAM,iBAAiB,GAAG;IAC9B,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,YAAY,CAAC;CACtB,CAAC;AACF,MAAM,MAAM,iBAAiB,GAAG;IAC9B,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,WAAW,CAAC;CACxB,CAAC;AACF,MAAM,MAAM,oBAAoB,CAAC,CAAC,SAAS,SAAS,EAAE,CAAC,SAAS,QAAQ,GAAG,IAAI,GAAG,IAAI,IAAI;IACxF,MAAM,EAAE,UAAU,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IACzB,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC;IACjB,SAAS,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC;CAC3B,CAAC;AACF,MAAM,MAAM,SAAS,CAAC,CAAC,SAAS,SAAS,EAAE,CAAC,SAAS,QAAQ,GAAG,IAAI,GAAG,IAAI,IAAI;IAC7E,MAAM,EAAE,UAAU,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IACzB,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC;CAClB,CAAC;AACF,MAAM,MAAM,sBAAsB,CAAC,CAAC,SAAS,SAAS,IAAI;IACxD,IAAI,EAAE,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC;CACtB,CAAC;AACF,MAAM,MAAM,iBAAiB,CAAC,CAAC,SAAS,SAAS,GAAG,SAAS,IACzD,oBAAoB,CAAC,CAAC,CAAC,GACvB,sBAAsB,CAAC,CAAC,CAAC,CAAC;AAE9B,MAAM,MAAM,eAAe,CAAC,CAAC,GAAG,SAAS,EAAE,GAAG,GAAG,eAAe,IAAI;IAClE,GAAG,EAAE,CAAC,CAAC;IACP,GAAG,EAAE,GAAG,CAAC;IACT,WAAW,EAAE,WAAW,CAAC;CAC1B,CAAC;AACF,MAAM,MAAM,qBAAqB,CAAC,CAAC,GAAG,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC,GAAG,MAAM,EAAE,GAAG,GAAG,eAAe,IAAI;IAC7F,MAAM,EAAE,CAAC,CAAC;IACV,MAAM,EAAE,CAAC,CAAC;IACV,GAAG,EAAE,GAAG,CAAC;IACT,WAAW,EAAE,WAAW,CAAC;CAC1B,CAAC;AACF,MAAM,MAAM,WAAW,CAAC,CAAC,SAAS,SAAS,GAAG,SAAS,EAAE,CAAC,GAAG,IAAI,IAAI,CACnE,IAAI,EAAE,eAAe,CAAC,CAAC,EAAE,aAAa,CAAC,CAAC,CAAC,CAAC,KACvC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;AACpB,MAAM,MAAM,eAAe,CAAC,CAAC,SAAS,SAAS,GAAG,SAAS,EAAE,CAAC,GAAG,IAAI,IAAI,CACvE,IAAI,EAAE,eAAe,CAAC,CAAC,EAAE,aAAa,CAAC,CAAC,CAAC,CAAC,KACvC,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;AAC1B,MAAM,MAAM,oBAAoB,GAAG,CAAC,IAAI,EAAE,eAAe,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;AACnF,MAAM,MAAM,gBAAgB,GAAG,CAAC,IAAI,EAAE,eAAe,KAAK,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC;AACzF,MAAM,MAAM,iBAAiB,CAAC,CAAC,SAAS,SAAS,GAAG,SAAS,EAAE,CAAC,SAAS,QAAQ,GAAG,IAAI,GAAG,IAAI,IAAI,CACjG,IAAI,EAAE,qBAAqB,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,UAAU,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,aAAa,CAAC,CAAC,CAAC,CAAC,KACxE,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC;AACtC,MAAM,MAAM,sBAAsB,GAAG,CACnC,IAAI,EAAE,qBAAqB,KACxB,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC;AAEpC,MAAM,MAAM,UAAU,CAAC,IAAI,SAAS,SAAS,GAAG,SAAS,EAAE,CAAC,SAAS,QAAQ,GAAG,IAAI,GAAG,IAAI,IAAI;IAC7F;;;OAGG;IACH,MAAM,EAAE,WAAW,CAAC,IAAI,CAAC,CAAC;IAE1B;;;OAGG;IACH,aAAa,CAAC,EAAE,WAAW,CAAC,IAAI,CAAC,CAAC;IAElC;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAEzB;;OAEG;IACH,YAAY,CAAC,EAAE,UAAU,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;IAEnC;;SAEK;IACL,YAAY,CAAC,EAAE,WAAW,CAAC,IAAI,CAAC,CAAC;IAEjC;;OAEG;IACH,QAAQ,CAAC,CAAC,IAAI,EAAE,iBAAiB,GAAG,iBAAiB,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAC;CACpF,CAAC;AAEF,MAAM,MAAM,sBAAsB,CAChC,IAAI,SAAS,SAAS,GAAG,SAAS,EAClC,CAAC,SAAS,QAAQ,GAAG,IAAI,GAAG,IAAI,IAC9B;IACF;;;OAGG;IACH,WAAW,CAAC,EAAE,UAAU,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC;IAElD;;;OAGG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;CAC5B,CAAC;AAEF,MAAM,MAAM,UAAU,CACpB,IAAI,SAAS,SAAS,GAAG,SAAS,EAClC,CAAC,SAAS,QAAQ,GAAG,IAAI,GAAG,IAAI,IAC9B,sBAAsB,CAAC,IAAI,EAAE,CAAC,CAAC,GAAG;IACpC;;OAEG;IACH,MAAM,EAAE,UAAU,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,CAAC;IAEnC;;OAEG;IACH,eAAe,CAAC,EAAE,UAAU,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,CAAC;IAE7C;;OAEG;IACH,WAAW,CAAC,EAAE,CAAC,SAAS,QAAQ,GAAG,WAAW,CAAC,IAAI,EAAE,CAAC,CAAC,GAAG,gBAAgB,CAAC;IAE3E;;OAEG;IACH,QAAQ,CAAC,EAAE,CAAC,SAAS,QAAQ,GAAG,WAAW,CAAC,IAAI,EAAE,CAAC,CAAC,GAAG,gBAAgB,CAAC;IAExE;;;OAGG;IACH,YAAY,CAAC,EAAE,CAAC,SAAS,QAAQ,GAAG,eAAe,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,GAAG,oBAAoB,CAAC;IAE9F;;;OAGG;IACH,oBAAoB,CAAC,EAAE;QACrB,KAAK,EAAE,MAAM,CAAC;QACd,MAAM,EAAE,MAAM,CAAC;KAChB,EAAE,CAAC;CACL,CAAC;AAEF,MAAM,MAAM,UAAU,CACpB,IAAI,SAAS,SAAS,GAAG,SAAS,EAClC,CAAC,SAAS,QAAQ,GAAG,IAAI,GAAG,IAAI,IAC9B,sBAAsB,CAAC,IAAI,EAAE,CAAC,CAAC,GAAG;IACpC;;OAEG;IACH,MAAM,EAAE,UAAU,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,CAAC;IAEnC;;;;;;OAMG;IACH,aAAa,CAAC,EAAE;QACd,MAAM,EAAE,UAAU,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;QAC5B,MAAM,EAAE,UAAU,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,CAAC;KACpC,EAAE,CAAC;IAEJ;;;OAGG;IACH,YAAY,CAAC,EAAE,UAAU,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC;IAEnD;;OAEG;IACH,YAAY,CAAC,EAAE,UAAU,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,CAAC;IAE1C;;OAEG;IACH,eAAe,CAAC,EAAE,UAAU,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,CAAC;IAE7C;;OAEG;IACH,QAAQ,CAAC,EAAE,CAAC,SAAS,QAAQ,GAAG,iBAAiB,CAAC,IAAI,EAAE,CAAC,CAAC,GAAG,sBAAsB,CAAC;IAEpF;;;OAGG;IACH,YAAY,CAAC,EAAE,CAAC,SAAS,QAAQ,GAAG,eAAe,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,GAAG,oBAAoB,CAAC;CAC/F,CAAC;AAEF,MAAM,MAAM,UAAU,CAAC,IAAI,SAAS,SAAS,GAAG,SAAS,EAAE,CAAC,SAAS,QAAQ,GAAG,IAAI,GAAG,IAAI,IAAI;IAC7F;;OAEG;IACH,YAAY,CAAC,EAAE,UAAU,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC;IAEnD;;OAEG;IACH,YAAY,EAAE,WAAW,CAAC,IAAI,CAAC,CAAC;IAEhC;;OAEG;IACH,eAAe,CAAC,EAAE,UAAU,CAAC,IAAI,CAAC,CAAC,cAAc,CAAC,CAAC;IAEnD;;OAEG;IACH,QAAQ,CAAC,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC;CAC5C,CAAC;AACF,MAAM,MAAM,QAAQ,CAAC,IAAI,SAAS,SAAS,GAAG,SAAS,IAAI;IACzD;;OAEG;IACH,SAAS,EAAE,CAAC,MAAM,IAAI,CAAC,EAAE,CAAC;IAE1B;;OAEG;IACH,YAAY,EAAE,MAAM,IAAI,CAAC;IAEzB;;OAEG;IAGH;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB;;OAEG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB,CAAC;AACF,MAAM,MAAM,aAAa,GAAG;IAC1B,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,MAAM,MAAM,QAAQ,CAAC,CAAC,SAAS,SAAS,GAAG,SAAS,IAAI,gBAAgB,GAAG;IACzE;;OAEG;IACH,MAAM,CAAC,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC;CACxB,CAAC;AACF,MAAM,MAAM,SAAS,CACnB,OAAO,SAAS,SAAS,GAAG,SAAS,EACrC,CAAC,SAAS,QAAQ,GAAG,IAAI,GAAG,IAAI,IAC9B,QAAQ,CAAC,OAAO,CAAC,GAAG;IACtB,MAAM,CAAC,EAAE,UAAU,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;IAChC,MAAM,CAAC,EAAE,UAAU,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;IAChC,MAAM,CAAC,EAAE,UAAU,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;IAChC,IAAI,CAAC,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAC;IACzB,SAAS,CAAC,EAAE,aAAa,CAAC;CAC3B,CAAC;AACF,MAAM,MAAM,eAAe,CAAC,GAAG,SAAS,SAAS,GAAG,SAAS,EAAE,CAAC,SAAS,QAAQ,GAAG,IAAI,GAAG,IAAI,IAAI;IACjG,MAAM,CAAC,EAAE,UAAU,CAAC,GAAG,EAAE,CAAC,CAAC,GAAG,mBAAmB,CAAC;IAClD,UAAU,CAAC,EAAE,mBAAmB,CAAC;IACjC,OAAO,CAAC,EAAE,mBAAmB,CAAC;CAC/B,CAAC;AACF,MAAM,MAAM,gBAAgB,CAC1B,GAAG,SAAS,SAAS,GAAG,SAAS,EACjC,CAAC,SAAS,QAAQ,GAAG,IAAI,GAAG,IAAI,IAC9B,eAAe,CAAC,GAAG,EAAE,CAAC,CAAC,GAAG;IAC5B,MAAM,CAAC,EAAE,UAAU,CAAC,GAAG,EAAE,CAAC,CAAC,GAAG,mBAAmB,CAAC;IAClD,MAAM,CAAC,EAAE,UAAU,CAAC,GAAG,EAAE,CAAC,CAAC,GAAG,mBAAmB,CAAC;IAClD,MAAM,CAAC,EAAE,UAAU,CAAC,GAAG,EAAE,CAAC,CAAC,GAAG,mBAAmB,CAAC;IAClD,IAAI,CAAC,EAAE,QAAQ,CAAC,GAAG,CAAC,CAAC;IACrB,SAAS,CAAC,EAAE,aAAa,GAAG,mBAAmB,CAAC;CACjD,CAAC;AAEF,MAAM,MAAM,kBAAkB,GAAG;IAC/B,MAAM,CAAC,EAAE,UAAU,CAAC;IACpB,UAAU,CAAC,EAAE,IAAI,CAAC;IAClB,OAAO,CAAC,EAAE,IAAI,CAAC;IAEf,MAAM,CAAC,EAAE,UAAU,CAAC;IACpB,MAAM,CAAC,EAAE,UAAU,CAAC;IACpB,MAAM,CAAC,EAAE,UAAU,CAAC;IACpB,IAAI,CAAC,EAAE,QAAQ,CAAC;IAChB,SAAS,CAAC,EAAE,aAAa,CAAC;IAC1B,YAAY,CAAC,EAAE,aAAa,CAAC;CAC9B,CAAC;AACF,MAAM,MAAM,WAAW,GAAG;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,eAAe,CAAC;IACtB,OAAO,EAAE,iBAAiB,EAAE,CAAC;CAC9B,CAAC;AACF,MAAM,MAAM,aAAa,CAAC,CAAC,GAAG,IAAI,EAAE,KAAK,SAAS,WAAW,GAAG,WAAW,IAAI;IAC7E,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,aAAa,CAAC,CAAC,CAAC,CAAC;IACtB,EAAE,EAAE,EAAE,CAAC;IACP,IAAI,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;IACrB,MAAM,EAAE,YAAY,CAAC;IACrB,MAAM,EAAE,WAAW,EAAE,CAAC;CACvB,CAAC;AACF,MAAM,MAAM,aAAa,GAAG;IAAE,GAAG,CAAC,EAAE,eAAe,CAAC;IAAC,MAAM,CAAC,EAAE,GAAG,CAAA;CAAE,CAAC;AACpE,MAAM,MAAM,mBAAmB,GAAG,OAAO,GAAG,GAAG,GAAG,IAAI,CAAC;AACvD,MAAM,MAAM,aAAa,GAAG;IAC1B,CAAC,UAAU,EAAE,MAAM,GAAG,gBAAgB,GAAG,eAAe,GAAG,mBAAmB,CAAC;CAChF,CAAC;AACF,MAAM,MAAM,mBAAmB,GAAG;IAChC,CAAC,UAAU,EAAE,MAAM,GAAG,kBAAkB,CAAC;CAC1C,CAAC;AAEF,KAAK,uBAAuB,GAAG,OAAO,CAAC,mBAAmB,EAAE,OAAO,CAAC,CAAC;AACrE,MAAM,MAAM,eAAe,CAAC,MAAM,GAAG,IAAI,IAAI,uBAAuB,GAAG,iBAAiB,CAAC,MAAM,CAAC,CAAC;AACjG,MAAM,MAAM,OAAO,CAAC,MAAM,GAAG,IAAI,EAAE,KAAK,SAAS,WAAW,GAAG,WAAW,IACtE,eAAe,CAAC,MAAM,CAAC,GACvB,CAAC,CAAC,MAAM,EAAE,aAAa,CAAC,MAAM,EAAE,KAAK,CAAC,KAAK,SAAS,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"publishTypesAndUtils.js","sourceRoot":"","sources":["../../lib/PublishParser/publishTypesAndUtils.ts"],"names":[],"mappings":";;;AAAA,qDAAwF;AAgC3E,QAAA,eAAe,GAAG;IAC7B;QACE,IAAI,EAAE,YAAY;QAClB,OAAO,EAAE,QAAQ;QACjB,OAAO,EAAE,8BAAY,CAAC,UAAU;QAChC,SAAS,EAAE,IAAI;QACf,cAAc,EAAE,EAAE;QAClB,UAAU,EAAE,KAAK;QACjB,IAAI,EAAE,qCAAqC;KAC5C;IACD;QACE,IAAI,EAAE,SAAS;QACf,OAAO,EAAE,QAAQ;QACjB,OAAO,EAAE,8BAAY,CAAC,OAAO;QAC7B,SAAS,EAAE,IAAI;QACf,cAAc,EAAE,EAAE;QAClB,UAAU,EAAE,KAAK;QACjB,IAAI,EAAE,qCAAqC;KAC5C;IACD;QACE,IAAI,EAAE,QAAQ;QACd,OAAO,EAAE,QAAQ;QACjB,OAAO,EAAE,8BAAY,CAAC,MAAM;QAC5B,SAAS,EAAc,EAAE,MAAM,EAAE,GAAG,EAAE;QACtC,UAAU,EAAE,IAAI;QAChB,cAAc,EAAE;YACd,WAAW,EAAE,CAAC;YACd,MAAM,EAAE,CAAC;YACT,UAAU,EAAE,CAAC;YACb,YAAY,EAAE,CAAC;YACf,WAAW,EAAE,CAAC;YACd,eAAe,EAAE,CAAC;YAClB,QAAQ,EAAE,CAAC;YACX,oBAAoB,EAAE,CAAC;SACc;QACvC,IAAI,EAAE,6DAA6D;KACpE;IACD;QACE,IAAI,EAAE,QAAQ;QACd,OAAO,EAAE,QAAQ;QACjB,OAAO,EAAE,8BAAY,CAAC,MAAM;QAC5B,SAAS,EAAc;YACrB,MAAM,EAAE,GAAG;YACX,YAAY,EAAE,GAAG;YACjB,eAAe,EAAE,GAAG;SACrB;QACD,UAAU,EAAE,IAAI;QAChB,cAAc,EAAE;YACd,WAAW,EAAE,CAAC;YACd,aAAa,EAAE,CAAC;YAChB,MAAM,EAAE,CAAC;YACT,YAAY,EAAE,CAAC;YACf,UAAU,EAAE,CAAC;YACb,YAAY,EAAE,CAAC;YACf,YAAY,EAAE,CAAC;YACf,eAAe,EAAE,CAAC;YAClB,QAAQ,EAAE,CAAC;SAC0B;QACvC,IAAI,EAAE,6DAA6D;KACpE;IACD;QACE,IAAI,EAAE,QAAQ;QACd,OAAO,EAAE,QAAQ;QACjB,OAAO,EAAE,8BAAY,CAAC,MAAM;QAC5B,SAAS,EAAc,EAAE,MAAM,EAAE,GAAG,EAAE,YAAY,EAAE,GAAG,EAAE;QACzD,UAAU,EAAE,KAAK;QACjB,cAAc,EAAE;YACd,MAAM,EAAE,CAAC;YACT,YAAY,EAAE,CAAC;YACf,YAAY,EAAE,CAAC;YACf,QAAQ,EAAE,CAAC;YACX,aAAa,EAAE,CAAC;YAChB,QAAQ,EAAE,CAAC;SAC0B;QACvC,IAAI,EAAE,iEAAiE;KACxE;IACD;QACE,IAAI,EAAE,QAAQ;QACd,OAAO,EAAE,QAAQ;QACjB,OAAO,EAAE,8BAAY,CAAC,MAAM;QAC5B,SAAS,EAAc,EAAE,YAAY,EAAE,GAAG,EAAE;QAC5C,UAAU,EAAE,IAAI;QAChB,cAAc,EAAE;YACd,eAAe,EAAE,CAAC;YAClB,QAAQ,EAAE,CAAC;YACX,YAAY,EAAE,CAAC;YACf,YAAY,EAAE,CAAC;SACsB;QACvC,IAAI,EAAE,kIAAkI;KACzI;IACD;QACE,IAAI,EAAE,MAAM;QACZ,OAAO,EAAE,QAAQ;QACjB,OAAO,EAAE,8BAAY,CAAC,IAAI;QAC1B,SAAS,EAAE,IAAI;QACf,UAAU,EAAE,IAAI;QAChB,cAAc,EAAE;YACd,
|
|
1
|
+
{"version":3,"file":"publishTypesAndUtils.js","sourceRoot":"","sources":["../../lib/PublishParser/publishTypesAndUtils.ts"],"names":[],"mappings":"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"}
|
package/dist/SyncReplication.js
CHANGED
|
@@ -23,7 +23,7 @@ async function syncData(sync, clientData, source) {
|
|
|
23
23
|
duration: -1,
|
|
24
24
|
socketId: sync.socket_id,
|
|
25
25
|
});
|
|
26
|
-
const { socket_id, channel_name, table_name, filter, table_rules,
|
|
26
|
+
const { socket_id, channel_name, table_name, filter, table_rules, params, synced_field, id_fields = [], batch_size, wal, throttle = 0, } = sync;
|
|
27
27
|
const socket = this.sockets[socket_id];
|
|
28
28
|
if (!socket) {
|
|
29
29
|
return;
|
|
@@ -123,23 +123,28 @@ async function syncData(sync, clientData, source) {
|
|
|
123
123
|
}
|
|
124
124
|
}, deleteData = async (deleted) => {
|
|
125
125
|
// console.log("deleteData deleteData deleteData " + deleted.length);
|
|
126
|
-
if (allow_delete) {
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
}
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
126
|
+
// if (allow_delete) {
|
|
127
|
+
// return Promise.all(
|
|
128
|
+
// deleted.map(async (d) => {
|
|
129
|
+
// const id_filter = pickKeys(d, id_fields);
|
|
130
|
+
// try {
|
|
131
|
+
// await (this.dbo[table_name] as TableHandler).delete(
|
|
132
|
+
// id_filter,
|
|
133
|
+
// undefined,
|
|
134
|
+
// undefined,
|
|
135
|
+
// table_rules
|
|
136
|
+
// );
|
|
137
|
+
// return 1;
|
|
138
|
+
// } catch (e) {
|
|
139
|
+
// console.error(e);
|
|
140
|
+
// }
|
|
141
|
+
// return 0;
|
|
142
|
+
// })
|
|
143
|
+
// );
|
|
144
|
+
// } else {
|
|
145
|
+
// console.warn("client tried to delete data without permission (allow_delete is false)");
|
|
146
|
+
// }
|
|
147
|
+
// return false;
|
|
143
148
|
},
|
|
144
149
|
/**
|
|
145
150
|
* Upserts the given client data where synced_field is higher than on server
|
|
@@ -324,7 +329,8 @@ async function syncData(sync, clientData, source) {
|
|
|
324
329
|
syncBatch = async (from_synced) => {
|
|
325
330
|
let offset = 0, canContinue = true;
|
|
326
331
|
const limit = batch_size, min_synced = from_synced || 0, max_synced = from_synced;
|
|
327
|
-
let inserted = 0, updated = 0, pushed = 0,
|
|
332
|
+
let inserted = 0, updated = 0, pushed = 0, total = 0;
|
|
333
|
+
const deleted = 0;
|
|
328
334
|
// console.log("syncBatch", from_synced)
|
|
329
335
|
while (canContinue) {
|
|
330
336
|
const clientData = await getClientData(min_synced, offset);
|
|
@@ -342,17 +348,25 @@ async function syncData(sync, clientData, source) {
|
|
|
342
348
|
await pushData(undefined, undefined, "Internal error. Check server logs");
|
|
343
349
|
throw " d";
|
|
344
350
|
}
|
|
345
|
-
//
|
|
346
|
-
|
|
347
|
-
|
|
348
|
-
|
|
349
|
-
|
|
350
|
-
|
|
351
|
-
|
|
352
|
-
|
|
353
|
-
|
|
354
|
-
|
|
355
|
-
|
|
351
|
+
// TODO: Implement delete ensuring:
|
|
352
|
+
// 1. Delete is preformed only when clientData is fully synced (is kept in localStorage/IndexedDB OR is fully synced)
|
|
353
|
+
// if (allow_delete && table_rules?.delete) {
|
|
354
|
+
// const to_delete = serverData.filter((d) => {
|
|
355
|
+
// return !clientData.find((c) => rowsIdsMatch(c, d));
|
|
356
|
+
// });
|
|
357
|
+
// await Promise.all(
|
|
358
|
+
// to_delete.map((d) => {
|
|
359
|
+
// deleted++;
|
|
360
|
+
// return (this.dbo[table_name] as TableHandler).delete(
|
|
361
|
+
// pickKeys(d, id_fields),
|
|
362
|
+
// {},
|
|
363
|
+
// undefined,
|
|
364
|
+
// table_rules
|
|
365
|
+
// );
|
|
366
|
+
// })
|
|
367
|
+
// );
|
|
368
|
+
// serverData = await getServerData(min_synced, offset);
|
|
369
|
+
// }
|
|
356
370
|
const forClient = serverData.filter((s) => {
|
|
357
371
|
return !clientData.find((c) => rowsIdsMatch(c, s) && +c[synced_field] >= +s[synced_field]);
|
|
358
372
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SyncReplication.js","sourceRoot":"","sources":["../lib/SyncReplication.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"SyncReplication.js","sourceRoot":"","sources":["../lib/SyncReplication.ts"],"names":[],"mappings":"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"}
|
package/lib/Auth/AuthHandler.ts
CHANGED
|
@@ -358,7 +358,7 @@ export class AuthHandler {
|
|
|
358
358
|
const isSocket = "socket" in localParams;
|
|
359
359
|
if (isSocket && getSession && localParams.socket?.__prglCache) {
|
|
360
360
|
const { session, user, clientUser } = localParams.socket.__prglCache;
|
|
361
|
-
const isValid = this.
|
|
361
|
+
const isValid = this.isNonExpiredSocketSession(localParams.socket, session);
|
|
362
362
|
if (isValid) {
|
|
363
363
|
return {
|
|
364
364
|
sid: session.sid,
|
|
@@ -390,6 +390,7 @@ export class AuthHandler {
|
|
|
390
390
|
this.db,
|
|
391
391
|
getClientRequestIPsInfo(clientReq)
|
|
392
392
|
);
|
|
393
|
+
if (typeof clientInfo === "string") throw clientInfo;
|
|
393
394
|
user = clientInfo?.user;
|
|
394
395
|
clientUser = clientInfo?.clientUser;
|
|
395
396
|
}
|
|
@@ -421,7 +422,10 @@ export class AuthHandler {
|
|
|
421
422
|
return clientInfo;
|
|
422
423
|
}
|
|
423
424
|
|
|
424
|
-
|
|
425
|
+
isNonExpiredSocketSession = (
|
|
426
|
+
socket: PRGLIOSocket,
|
|
427
|
+
session: BasicSession | undefined
|
|
428
|
+
): boolean => {
|
|
425
429
|
const hasExpired = Boolean(session && session.expires <= Date.now());
|
|
426
430
|
if (this.opts.expressConfig?.publicRoutes && !this.opts.expressConfig.disableSocketAuthGuard) {
|
|
427
431
|
const error = "Session has expired";
|
package/lib/Auth/AuthTypes.ts
CHANGED
|
@@ -161,7 +161,7 @@ export class TableHandler extends ViewHandler {
|
|
|
161
161
|
if (invalidParams.length)
|
|
162
162
|
throw "Invalid or dissallowed params found: " + invalidParams.join(", ");
|
|
163
163
|
|
|
164
|
-
const { synced_field
|
|
164
|
+
const { synced_field }: SyncRule = table_rules.sync;
|
|
165
165
|
|
|
166
166
|
if (!table_rules.sync.id_fields.length || !synced_field) {
|
|
167
167
|
const err = "INTERNAL ERROR: id_fields OR synced_field missing from publish";
|
|
@@ -212,13 +212,13 @@ export class TableHandler extends ViewHandler {
|
|
|
212
212
|
condition,
|
|
213
213
|
id_fields,
|
|
214
214
|
synced_field,
|
|
215
|
-
allow_delete,
|
|
215
|
+
// allow_delete,
|
|
216
216
|
socket,
|
|
217
217
|
table_rules,
|
|
218
218
|
filter: { ...filter },
|
|
219
219
|
params: { select },
|
|
220
220
|
})
|
|
221
|
-
.then((channelName) => ({ channelName, id_fields, synced_field }));
|
|
221
|
+
.then(({ channelName }) => ({ channelName, id_fields, synced_field }));
|
|
222
222
|
});
|
|
223
223
|
await this._log({
|
|
224
224
|
command: "sync",
|
package/lib/Prostgles.ts
CHANGED
|
@@ -27,7 +27,15 @@ import {
|
|
|
27
27
|
export { DBHandlerServer };
|
|
28
28
|
export type PGP = pgPromise.IMain<{}, pg.IClient>;
|
|
29
29
|
|
|
30
|
-
import {
|
|
30
|
+
import {
|
|
31
|
+
CHANNELS,
|
|
32
|
+
ClientSchema,
|
|
33
|
+
SQLRequest,
|
|
34
|
+
isObject,
|
|
35
|
+
omitKeys,
|
|
36
|
+
tryCatch,
|
|
37
|
+
tryCatchV2,
|
|
38
|
+
} from "prostgles-types";
|
|
31
39
|
import { DBEventsManager } from "./DBEventsManager";
|
|
32
40
|
import { PublishParser } from "./PublishParser/PublishParser";
|
|
33
41
|
export { getOrSetTransporter, sendEmail, verifySMTPConfig } from "./Auth/sendEmail";
|
|
@@ -406,13 +414,13 @@ export class Prostgles {
|
|
|
406
414
|
onSocketConnected = onSocketConnected.bind(this);
|
|
407
415
|
|
|
408
416
|
getClientSchema = async (clientReq: Pick<LocalParams, "socket" | "httpReq">) => {
|
|
409
|
-
const result = await
|
|
417
|
+
const result = await tryCatchV2(async () => {
|
|
410
418
|
const clientInfo =
|
|
411
419
|
clientReq.socket ? { type: "socket" as const, socket: clientReq.socket }
|
|
412
420
|
: clientReq.httpReq ? { type: "http" as const, httpReq: clientReq.httpReq }
|
|
413
421
|
: undefined;
|
|
414
422
|
if (!clientInfo) throw "Invalid client";
|
|
415
|
-
|
|
423
|
+
|
|
416
424
|
const userData = await this.authHandler?.getClientInfo(clientInfo);
|
|
417
425
|
const { publishParser } = this;
|
|
418
426
|
let fullSchema: Awaited<ReturnType<PublishParser["getSchemaFromPublish"]>> | undefined;
|
|
@@ -493,16 +501,16 @@ export class Prostgles {
|
|
|
493
501
|
userData,
|
|
494
502
|
};
|
|
495
503
|
});
|
|
496
|
-
const sid = result.userData?.sid ?? this.authHandler?.getSIDNoError(clientReq);
|
|
504
|
+
const sid = result.data?.userData?.sid ?? this.authHandler?.getSIDNoError(clientReq);
|
|
497
505
|
await this.opts.onLog?.({
|
|
498
506
|
type: "connect.getClientSchema",
|
|
499
507
|
duration: result.duration,
|
|
500
508
|
sid,
|
|
501
509
|
socketId: clientReq.socket?.id,
|
|
502
|
-
error: result.error || result.publishValidationError,
|
|
510
|
+
error: result.error || result.data?.publishValidationError,
|
|
503
511
|
});
|
|
504
512
|
if (result.hasError) throw result.error;
|
|
505
|
-
return result.clientSchema;
|
|
513
|
+
return result.data.clientSchema;
|
|
506
514
|
};
|
|
507
515
|
|
|
508
516
|
pushSocketSchema = async (socket: PRGLIOSocket) => {
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { find,
|
|
1
|
+
import { find, tryCatchV2 } from "prostgles-types/dist/util";
|
|
2
2
|
import {
|
|
3
3
|
AddSyncParams,
|
|
4
4
|
BasicCallback,
|
|
@@ -11,17 +11,19 @@ import {
|
|
|
11
11
|
* Returns a sync channel
|
|
12
12
|
* A sync channel is unique per socket for each filter
|
|
13
13
|
*/
|
|
14
|
-
export async function addSync(
|
|
14
|
+
export async function addSync(
|
|
15
|
+
this: PubSubManager,
|
|
16
|
+
syncParams: AddSyncParams
|
|
17
|
+
): Promise<{ channelName: string }> {
|
|
15
18
|
const sid = this.dboBuilder.prostgles.authHandler?.getSIDNoError({
|
|
16
19
|
socket: syncParams.socket,
|
|
17
20
|
});
|
|
18
|
-
const res = await
|
|
21
|
+
const res = await tryCatchV2(async () => {
|
|
19
22
|
const {
|
|
20
23
|
socket = null,
|
|
21
24
|
table_info = null,
|
|
22
25
|
table_rules,
|
|
23
26
|
synced_field = null,
|
|
24
|
-
allow_delete = false,
|
|
25
27
|
id_fields = [],
|
|
26
28
|
filter = {},
|
|
27
29
|
params,
|
|
@@ -32,7 +34,7 @@ export async function addSync(this: PubSubManager, syncParams: AddSyncParams) {
|
|
|
32
34
|
if (!socket || !table_info) throw "socket or table_info missing";
|
|
33
35
|
|
|
34
36
|
const { name: table_name } = table_info;
|
|
35
|
-
const
|
|
37
|
+
const channelName = `${this.socketChannelPreffix}.${table_name}.${JSON.stringify(filter)}.sync`;
|
|
36
38
|
|
|
37
39
|
if (!synced_field) throw "synced_field missing from table_rules";
|
|
38
40
|
|
|
@@ -40,14 +42,13 @@ export async function addSync(this: PubSubManager, syncParams: AddSyncParams) {
|
|
|
40
42
|
|
|
41
43
|
const upsertSync = () => {
|
|
42
44
|
const newSync = {
|
|
43
|
-
channel_name,
|
|
45
|
+
channel_name: channelName,
|
|
44
46
|
table_name,
|
|
45
47
|
filter,
|
|
46
48
|
condition: conditionParsed,
|
|
47
49
|
synced_field,
|
|
48
50
|
sid,
|
|
49
51
|
id_fields,
|
|
50
|
-
allow_delete,
|
|
51
52
|
table_rules,
|
|
52
53
|
throttle: Math.max(throttle || 0, table_rules.sync?.throttle || 0),
|
|
53
54
|
batch_size: table_rules.sync?.batch_size || DEFAULT_SYNC_BATCH_SIZE,
|
|
@@ -63,11 +64,11 @@ export async function addSync(this: PubSubManager, syncParams: AddSyncParams) {
|
|
|
63
64
|
};
|
|
64
65
|
|
|
65
66
|
/* Only a sync per socket per table per condition allowed */
|
|
66
|
-
const existing = find(this.syncs, { socket_id: socket.id, channel_name });
|
|
67
|
+
const existing = find(this.syncs, { socket_id: socket.id, channel_name: channelName });
|
|
67
68
|
if (!existing) {
|
|
68
69
|
this.syncs.push(newSync);
|
|
69
70
|
|
|
70
|
-
const unsyncChn =
|
|
71
|
+
const unsyncChn = channelName + "unsync";
|
|
71
72
|
socket.removeAllListeners(unsyncChn);
|
|
72
73
|
socket.once(unsyncChn, (_data: any, cb: BasicCallback) => {
|
|
73
74
|
this._log({
|
|
@@ -80,18 +81,18 @@ export async function addSync(this: PubSubManager, syncParams: AddSyncParams) {
|
|
|
80
81
|
connectedSocketIds: this.connectedSocketIds,
|
|
81
82
|
duration: -1,
|
|
82
83
|
});
|
|
83
|
-
socket.removeAllListeners(
|
|
84
|
+
socket.removeAllListeners(channelName);
|
|
84
85
|
socket.removeAllListeners(unsyncChn);
|
|
85
86
|
this.syncs = this.syncs.filter((s) => {
|
|
86
87
|
const isMatch =
|
|
87
|
-
s.socket_id && s.socket_id === socket.id && s.channel_name ===
|
|
88
|
+
s.socket_id && s.socket_id === socket.id && s.channel_name === channelName;
|
|
88
89
|
return !isMatch;
|
|
89
90
|
});
|
|
90
91
|
cb(null, { res: "ok" });
|
|
91
92
|
});
|
|
92
93
|
|
|
93
|
-
socket.removeAllListeners(
|
|
94
|
-
socket.on(
|
|
94
|
+
socket.removeAllListeners(channelName);
|
|
95
|
+
socket.on(channelName, (data: any, cb: BasicCallback) => {
|
|
95
96
|
if (!data) {
|
|
96
97
|
cb({ err: "Unexpected request. Need data or onSyncRequest" });
|
|
97
98
|
return;
|
|
@@ -130,7 +131,7 @@ export async function addSync(this: PubSubManager, syncParams: AddSyncParams) {
|
|
|
130
131
|
|
|
131
132
|
await this.addTrigger({ table_name, condition: conditionParsed }, undefined, socket);
|
|
132
133
|
|
|
133
|
-
return {
|
|
134
|
+
return { channelName };
|
|
134
135
|
});
|
|
135
136
|
|
|
136
137
|
await this._log({
|
|
@@ -145,7 +146,7 @@ export async function addSync(this: PubSubManager, syncParams: AddSyncParams) {
|
|
|
145
146
|
sid,
|
|
146
147
|
});
|
|
147
148
|
|
|
148
|
-
if (res.
|
|
149
|
+
if (res.hasError) throw res.error;
|
|
149
150
|
|
|
150
|
-
return res.
|
|
151
|
+
return res.data;
|
|
151
152
|
}
|
|
@@ -127,7 +127,7 @@ export const RULE_TO_METHODS = [
|
|
|
127
127
|
no_limits: null,
|
|
128
128
|
table_only: true,
|
|
129
129
|
allowed_params: {
|
|
130
|
-
allow_delete: 1,
|
|
130
|
+
// allow_delete: 1,
|
|
131
131
|
batch_size: 1,
|
|
132
132
|
id_fields: 1,
|
|
133
133
|
synced_field: 1,
|
|
@@ -379,7 +379,7 @@ export type SyncRule<Cols extends AnyObject = AnyObject> = {
|
|
|
379
379
|
/**
|
|
380
380
|
* EXPERIMENTAL. Disabled by default. If true then server will attempt to delete any records missing from client.
|
|
381
381
|
*/
|
|
382
|
-
allow_delete?: boolean;
|
|
382
|
+
// allow_delete?: boolean;
|
|
383
383
|
|
|
384
384
|
/**
|
|
385
385
|
* Throttle replication transmission in milliseconds. Defaults to 100
|
package/lib/SyncReplication.ts
CHANGED
|
@@ -72,7 +72,6 @@ export async function syncData(
|
|
|
72
72
|
table_name,
|
|
73
73
|
filter,
|
|
74
74
|
table_rules,
|
|
75
|
-
allow_delete = false,
|
|
76
75
|
params,
|
|
77
76
|
synced_field,
|
|
78
77
|
id_fields = [],
|
|
@@ -210,28 +209,28 @@ export async function syncData(
|
|
|
210
209
|
},
|
|
211
210
|
deleteData = async (deleted: AnyObject[]) => {
|
|
212
211
|
// console.log("deleteData deleteData deleteData " + deleted.length);
|
|
213
|
-
if (allow_delete) {
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
} else {
|
|
232
|
-
|
|
233
|
-
}
|
|
234
|
-
return false;
|
|
212
|
+
// if (allow_delete) {
|
|
213
|
+
// return Promise.all(
|
|
214
|
+
// deleted.map(async (d) => {
|
|
215
|
+
// const id_filter = pickKeys(d, id_fields);
|
|
216
|
+
// try {
|
|
217
|
+
// await (this.dbo[table_name] as TableHandler).delete(
|
|
218
|
+
// id_filter,
|
|
219
|
+
// undefined,
|
|
220
|
+
// undefined,
|
|
221
|
+
// table_rules
|
|
222
|
+
// );
|
|
223
|
+
// return 1;
|
|
224
|
+
// } catch (e) {
|
|
225
|
+
// console.error(e);
|
|
226
|
+
// }
|
|
227
|
+
// return 0;
|
|
228
|
+
// })
|
|
229
|
+
// );
|
|
230
|
+
// } else {
|
|
231
|
+
// console.warn("client tried to delete data without permission (allow_delete is false)");
|
|
232
|
+
// }
|
|
233
|
+
// return false;
|
|
235
234
|
},
|
|
236
235
|
/**
|
|
237
236
|
* Upserts the given client data where synced_field is higher than on server
|
|
@@ -463,8 +462,8 @@ export async function syncData(
|
|
|
463
462
|
let inserted = 0,
|
|
464
463
|
updated = 0,
|
|
465
464
|
pushed = 0,
|
|
466
|
-
deleted = 0,
|
|
467
465
|
total = 0;
|
|
466
|
+
const deleted = 0;
|
|
468
467
|
|
|
469
468
|
// console.log("syncBatch", from_synced)
|
|
470
469
|
|
|
@@ -486,24 +485,25 @@ export async function syncData(
|
|
|
486
485
|
throw " d";
|
|
487
486
|
}
|
|
488
487
|
|
|
489
|
-
//
|
|
490
|
-
|
|
491
|
-
|
|
492
|
-
|
|
493
|
-
|
|
494
|
-
|
|
495
|
-
|
|
496
|
-
|
|
497
|
-
|
|
498
|
-
|
|
499
|
-
|
|
500
|
-
|
|
501
|
-
|
|
502
|
-
|
|
503
|
-
|
|
504
|
-
|
|
505
|
-
|
|
506
|
-
|
|
488
|
+
// TODO: Implement delete ensuring:
|
|
489
|
+
// 1. Delete is preformed only when clientData is fully synced (is kept in localStorage/IndexedDB OR is fully synced)
|
|
490
|
+
// if (allow_delete && table_rules?.delete) {
|
|
491
|
+
// const to_delete = serverData.filter((d) => {
|
|
492
|
+
// return !clientData.find((c) => rowsIdsMatch(c, d));
|
|
493
|
+
// });
|
|
494
|
+
// await Promise.all(
|
|
495
|
+
// to_delete.map((d) => {
|
|
496
|
+
// deleted++;
|
|
497
|
+
// return (this.dbo[table_name] as TableHandler).delete(
|
|
498
|
+
// pickKeys(d, id_fields),
|
|
499
|
+
// {},
|
|
500
|
+
// undefined,
|
|
501
|
+
// table_rules
|
|
502
|
+
// );
|
|
503
|
+
// })
|
|
504
|
+
// );
|
|
505
|
+
// serverData = await getServerData(min_synced, offset);
|
|
506
|
+
// }
|
|
507
507
|
|
|
508
508
|
const forClient = serverData.filter((s) => {
|
|
509
509
|
return !clientData.find(
|