w-orm-postgresql 1.0.11 → 1.0.13

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 CHANGED
@@ -133,6 +133,32 @@ let rsa = [
133
133
  },
134
134
  ]
135
135
 
136
+ let rsb = [
137
+ {
138
+ time: '2025-01-01T00:20:00Z',
139
+ name: 'bulk-1',
140
+ value: 201,
141
+ },
142
+ {
143
+ time: '2025-01-01T00:21:00Z',
144
+ name: 'bulk-2',
145
+ value: 202,
146
+ },
147
+ ]
148
+
149
+ let rsr = [
150
+ { //已存在, 為前次insertBulk所插入
151
+ time: '2025-01-01T00:20:00Z',
152
+ name: 'bulk-1',
153
+ value: 201,
154
+ },
155
+ { //不存在須新增
156
+ time: '2025-01-01T00:22:00Z',
157
+ name: 'ret-new',
158
+ value: 203,
159
+ },
160
+ ]
161
+
136
162
  async function test() {
137
163
 
138
164
  //wo
@@ -155,6 +181,9 @@ async function test() {
155
181
  wo.on('change', function(mode, data, res) {
156
182
  console.log('change', mode)
157
183
  })
184
+ wo.on('error', function(mode, data, err) {
185
+ console.log('error', mode, err)
186
+ })
158
187
 
159
188
  //delAll
160
189
  await wo.delAll()
@@ -174,6 +203,33 @@ async function test() {
174
203
  console.log('insert catch', msg)
175
204
  })
176
205
 
206
+ //insertBulk, 全批視為一個單位, 全部插入成功或一筆都不寫入
207
+ await wo.insertBulk(rsb)
208
+ .then(function(msg) {
209
+ console.log('insertBulk then', msg)
210
+ })
211
+ .catch(function(msg) {
212
+ console.log('insertBulk catch', msg)
213
+ })
214
+
215
+ //insertBulk by pk existed, 任一筆之主鍵已存在即整批reject且不寫入任何一筆
216
+ await wo.insertBulk(rsb)
217
+ .then(function(msg) {
218
+ console.log('insertBulk by pk existed then', msg)
219
+ })
220
+ .catch(function(msg) {
221
+ console.log('insertBulk by pk existed catch', `${msg}`) //reject回傳Error物件, 以樣板字串取其訊息以免印出堆疊
222
+ })
223
+
224
+ //insert by returnList, 改回傳與輸入等長且保序之逐筆結果, 令呼叫端得知是哪幾筆為新數據
225
+ await wo.insert(rsr, { returnList: true })
226
+ .then(function(msg) {
227
+ console.log('insert by returnList then', msg)
228
+ })
229
+ .catch(function(msg) {
230
+ console.log('insert by returnList catch', `${msg}`)
231
+ })
232
+
177
233
  //save
178
234
  await wo.save(rsm, { autoInsert: false })
179
235
  .then(function(msg) {
@@ -236,6 +292,15 @@ async function test() {
236
292
  console.log('del catch', msg)
237
293
  })
238
294
 
295
+ //del by data without pk, 該筆無法處理故ok為0並附err, 整批仍resolve且另發出error事件
296
+ await wo.del({ name: 'no-pk' })
297
+ .then(function(msg) {
298
+ console.log('del by data without pk then', msg)
299
+ })
300
+ .catch(function(msg) {
301
+ console.log('del by data without pk catch', msg)
302
+ })
303
+
239
304
  //del
240
305
  let ssDel = await wo.select()
241
306
  let ds = ssDel.filter(function(v) {
@@ -321,6 +386,12 @@ test()
321
386
  // delAll then { n: 0, nDeleted: 0, ok: 1 }
322
387
  // change insert
323
388
  // insert then { n: 13, nInserted: 13, ok: 1 }
389
+ // change insertBulk
390
+ // insertBulk then { n: 2, nInserted: 2, ok: 1 }
391
+ // error insertBulk duplicate key value violates unique constraint "users_pkey"
392
+ // insertBulk by pk existed catch error: duplicate key value violates unique constraint "users_pkey"
393
+ // change insert
394
+ // insert by returnList then [ { n: 1, nInserted: 0, ok: 1 }, { n: 1, nInserted: 1, ok: 1 } ]
324
395
  // change save
325
396
  // save then [
326
397
  // { n: 1, nInserted: 0, nModified: 0, ok: 1 },
@@ -340,6 +411,9 @@ test()
340
411
  // { time: 2025-01-01T00:07:00.000Z, name: 'rosemary', value: 124.76 },
341
412
  // { time: 2025-01-01T00:08:00.000Z, name: 'kettle', value: 524 },
342
413
  // { time: 2025-01-01T00:09:00.000Z, name: 'peter', value: 127 },
414
+ // { time: 2025-01-01T00:20:00.000Z, name: 'bulk-1', value: 201 },
415
+ // { time: 2025-01-01T00:21:00.000Z, name: 'bulk-2', value: 202 },
416
+ // { time: 2025-01-01T00:22:00.000Z, name: 'ret-new', value: 203 },
343
417
  // {
344
418
  // time: 2025-01-01T00:10:00.000Z,
345
419
  // name: 'rosemary(modify)',
@@ -375,6 +449,9 @@ test()
375
449
  // { time: 2025-01-01T00:03:00.000Z, name: 'peter', value: 200 },
376
450
  // { time: 2025-01-01T00:05:00.000Z, name: 'kettle', value: 488 },
377
451
  // { time: 2025-01-01T00:08:00.000Z, name: 'kettle', value: 524 },
452
+ // { time: 2025-01-01T00:20:00.000Z, name: 'bulk-1', value: 201 },
453
+ // { time: 2025-01-01T00:21:00.000Z, name: 'bulk-2', value: 202 },
454
+ // { time: 2025-01-01T00:22:00.000Z, name: 'ret-new', value: 203 },
378
455
  // {
379
456
  // time: 2025-01-01T00:11:00.000Z,
380
457
  // name: 'kettle(modify)',
@@ -397,6 +474,9 @@ test()
397
474
  // save then [ { n: 1, nInserted: 1, nModified: 0, ok: 1 } ]
398
475
  // change del
399
476
  // del then [ { n: 0, nDeleted: 0, ok: 1 } ]
477
+ // error del invalid time[undefined]
478
+ // change del
479
+ // del by data without pk then [ { n: 0, nDeleted: 0, ok: 0, err: 'invalid time[undefined]' } ]
400
480
  // change del
401
481
  // del then [
402
482
  // { n: 1, nDeleted: 1, ok: 1 },
@@ -414,6 +494,9 @@ test()
414
494
  // { time: 2025-01-01T00:01:00.000Z, name: 'rosemary', value: 123.456 },
415
495
  // { time: 2025-01-01T00:04:00.000Z, name: 'rosemary', value: 123.1236 },
416
496
  // { time: 2025-01-01T00:07:00.000Z, name: 'rosemary', value: 124.76 },
497
+ // { time: 2025-01-01T00:20:00.000Z, name: 'bulk-1', value: 201 },
498
+ // { time: 2025-01-01T00:21:00.000Z, name: 'bulk-2', value: 202 },
499
+ // { time: 2025-01-01T00:22:00.000Z, name: 'ret-new', value: 203 },
417
500
  // {
418
501
  // time: 2025-01-01T00:10:00.000Z,
419
502
  // name: 'rosemary(modify)',
@@ -1,7 +1,7 @@
1
1
  /*!
2
- * w-orm-postgresql v1.0.11
2
+ * w-orm-postgresql v1.0.13
3
3
  * (c) 2018-2021 yuda-lyu(semisphere)
4
4
  * Released under the MIT License.
5
5
  */
6
- !function(t,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e(require("pg"),require("mongo-sql")):"function"==typeof define&&define.amd?define(["pg","mongo-sql"],e):(t="undefined"!=typeof globalThis?globalThis:t||self)["w-orm-postgresql"]=e(t.pg,t["mongo-sql"])}(this,(function(t,e){"use strict";var n=Object.prototype;function r(t){var e=t&&t.constructor;return t===("function"==typeof e&&e.prototype||n)}function o(t,e){return function(n){return t(e(n))}}var u=o(Object.keys,Object),i=Object.prototype.hasOwnProperty;function c(t){if(!r(t))return u(t);var e=[];for(var n in Object(t))i.call(t,n)&&"constructor"!=n&&e.push(n);return e}var a="object"==typeof global&&global&&global.Object===Object&&global,f="object"==typeof self&&self&&self.Object===Object&&self,l=a||f||Function("return this")(),s=l.Symbol,v=Object.prototype,p=v.hasOwnProperty,h=v.toString,y=s?s.toStringTag:void 0;var d=Object.prototype.toString;var b=s?s.toStringTag:void 0;function j(t){return null==t?void 0===t?"[object Undefined]":"[object Null]":b&&b in Object(t)?function(t){var e=p.call(t,y),n=t[y];try{t[y]=void 0;var r=!0}catch(t){}var o=h.call(t);return r&&(e?t[y]=n:delete t[y]),o}(t):function(t){return d.call(t)}(t)}function g(t){var e=typeof t;return null!=t&&("object"==e||"function"==e)}function _(t){if(!g(t))return!1;var e=j(t);return"[object Function]"==e||"[object GeneratorFunction]"==e||"[object AsyncFunction]"==e||"[object Proxy]"==e}var w,O=l["__core-js_shared__"],m=(w=/[^.]+$/.exec(O&&O.keys&&O.keys.IE_PROTO||""))?"Symbol(src)_1."+w:"";var A=Function.prototype.toString;function x(t){if(null!=t){try{return A.call(t)}catch(t){}try{return t+""}catch(t){}}return""}var S=/^\[object .+?Constructor\]$/,P=Function.prototype,E=Object.prototype,$=P.toString,k=E.hasOwnProperty,I=RegExp("^"+$.call(k).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function T(t){return!(!g(t)||(e=t,m&&m in e))&&(_(t)?I:S).test(x(t));var e}function N(t,e){var n=function(t,e){return null==t?void 0:t[e]}(t,e);return T(n)?n:void 0}var q=N(l,"DataView"),C=N(l,"Map"),M=N(l,"Promise"),z=N(l,"Set"),D=N(l,"WeakMap"),F="[object Map]",B="[object Promise]",L="[object Set]",U="[object WeakMap]",R="[object DataView]",G=x(q),V=x(C),W=x(M),J=x(z),X=x(D),H=j;(q&&H(new q(new ArrayBuffer(1)))!=R||C&&H(new C)!=F||M&&H(M.resolve())!=B||z&&H(new z)!=L||D&&H(new D)!=U)&&(H=function(t){var e=j(t),n="[object Object]"==e?t.constructor:void 0,r=n?x(n):"";if(r)switch(r){case G:return R;case V:return F;case W:return B;case J:return L;case X:return U}return e});var Y=H;function Z(t){return"number"==typeof t&&t>-1&&t%1==0&&t<=9007199254740991}function K(t){return null!=t&&Z(t.length)&&!_(t)}var Q=Array.isArray;function tt(t){return null!=t&&"object"==typeof t}function et(t){return function(e){return null==e?void 0:e[t]}}var nt=et("length"),rt=RegExp("[\\u200d\\ud800-\\udfff\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff\\ufe0e\\ufe0f]");function ot(t){return rt.test(t)}var ut="\\ud800-\\udfff",it="["+ut+"]",ct="[\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff]",at="\\ud83c[\\udffb-\\udfff]",ft="[^"+ut+"]",lt="(?:\\ud83c[\\udde6-\\uddff]){2}",st="[\\ud800-\\udbff][\\udc00-\\udfff]",vt="(?:"+ct+"|"+at+")"+"?",pt="[\\ufe0e\\ufe0f]?",ht=pt+vt+("(?:\\u200d(?:"+[ft,lt,st].join("|")+")"+pt+vt+")*"),yt="(?:"+[ft+ct+"?",ct,lt,st,it].join("|")+")",dt=RegExp(at+"(?="+at+")|"+yt+ht,"g");function bt(t){return ot(t)?function(t){for(var e=dt.lastIndex=0;dt.test(t);)++e;return e}(t):nt(t)}function jt(t){if(null==t)return 0;if(K(t))return"string"==typeof(e=t)||!Q(e)&&tt(e)&&"[object String]"==j(e)?bt(t):t.length;var e,n=Y(t);return"[object Map]"==n||"[object Set]"==n?t.size:c(t).length}function gt(t){return"symbol"==typeof t||tt(t)&&"[object Symbol]"==j(t)}var _t=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,wt=/^\w*$/;function Ot(t,e){if(Q(t))return!1;var n=typeof t;return!("number"!=n&&"symbol"!=n&&"boolean"!=n&&null!=t&&!gt(t))||(wt.test(t)||!_t.test(t)||null!=e&&t in Object(e))}var mt=N(Object,"create");var At=Object.prototype.hasOwnProperty;var xt=Object.prototype.hasOwnProperty;function St(t){var e=-1,n=null==t?0:t.length;for(this.clear();++e<n;){var r=t[e];this.set(r[0],r[1])}}function Pt(t,e){return t===e||t!=t&&e!=e}function Et(t,e){for(var n=t.length;n--;)if(Pt(t[n][0],e))return n;return-1}St.prototype.clear=function(){this.__data__=mt?mt(null):{},this.size=0},St.prototype.delete=function(t){var e=this.has(t)&&delete this.__data__[t];return this.size-=e?1:0,e},St.prototype.get=function(t){var e=this.__data__;if(mt){var n=e[t];return"__lodash_hash_undefined__"===n?void 0:n}return At.call(e,t)?e[t]:void 0},St.prototype.has=function(t){var e=this.__data__;return mt?void 0!==e[t]:xt.call(e,t)},St.prototype.set=function(t,e){var n=this.__data__;return this.size+=this.has(t)?0:1,n[t]=mt&&void 0===e?"__lodash_hash_undefined__":e,this};var $t=Array.prototype.splice;function kt(t){var e=-1,n=null==t?0:t.length;for(this.clear();++e<n;){var r=t[e];this.set(r[0],r[1])}}function It(t,e){var n,r,o=t.__data__;return("string"==(r=typeof(n=e))||"number"==r||"symbol"==r||"boolean"==r?"__proto__"!==n:null===n)?o["string"==typeof e?"string":"hash"]:o.map}function Tt(t){var e=-1,n=null==t?0:t.length;for(this.clear();++e<n;){var r=t[e];this.set(r[0],r[1])}}kt.prototype.clear=function(){this.__data__=[],this.size=0},kt.prototype.delete=function(t){var e=this.__data__,n=Et(e,t);return!(n<0)&&(n==e.length-1?e.pop():$t.call(e,n,1),--this.size,!0)},kt.prototype.get=function(t){var e=this.__data__,n=Et(e,t);return n<0?void 0:e[n][1]},kt.prototype.has=function(t){return Et(this.__data__,t)>-1},kt.prototype.set=function(t,e){var n=this.__data__,r=Et(n,t);return r<0?(++this.size,n.push([t,e])):n[r][1]=e,this},Tt.prototype.clear=function(){this.size=0,this.__data__={hash:new St,map:new(C||kt),string:new St}},Tt.prototype.delete=function(t){var e=It(this,t).delete(t);return this.size-=e?1:0,e},Tt.prototype.get=function(t){return It(this,t).get(t)},Tt.prototype.has=function(t){return It(this,t).has(t)},Tt.prototype.set=function(t,e){var n=It(this,t),r=n.size;return n.set(t,e),this.size+=n.size==r?0:1,this};function Nt(t,e){if("function"!=typeof t||null!=e&&"function"!=typeof e)throw new TypeError("Expected a function");var n=function(){var r=arguments,o=e?e.apply(this,r):r[0],u=n.cache;if(u.has(o))return u.get(o);var i=t.apply(this,r);return n.cache=u.set(o,i)||u,i};return n.cache=new(Nt.Cache||Tt),n}Nt.Cache=Tt;var qt,Ct,Mt,zt=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,Dt=/\\(\\)?/g,Ft=(qt=function(t){var e=[];return 46===t.charCodeAt(0)&&e.push(""),t.replace(zt,(function(t,n,r,o){e.push(r?o.replace(Dt,"$1"):n||t)})),e},Ct=Nt(qt,(function(t){return 500===Mt.size&&Mt.clear(),t})),Mt=Ct.cache,Ct),Bt=Ft;function Lt(t,e){for(var n=-1,r=null==t?0:t.length,o=Array(r);++n<r;)o[n]=e(t[n],n,t);return o}var Ut=s?s.prototype:void 0,Rt=Ut?Ut.toString:void 0;function Gt(t){if("string"==typeof t)return t;if(Q(t))return Lt(t,Gt)+"";if(gt(t))return Rt?Rt.call(t):"";var e=t+"";return"0"==e&&1/t==-1/0?"-0":e}function Vt(t){return null==t?"":Gt(t)}function Wt(t,e){return Q(t)?t:Ot(t,e)?[t]:Bt(Vt(t))}function Jt(t){if("string"==typeof t||gt(t))return t;var e=t+"";return"0"==e&&1/t==-1/0?"-0":e}function Xt(t,e){for(var n=0,r=(e=Wt(e,t)).length;null!=t&&n<r;)t=t[Jt(e[n++])];return n&&n==r?t:void 0}function Ht(t,e,n){var r=null==t?void 0:Xt(t,e);return void 0===r?n:r}function Yt(t){var e=this.__data__=new kt(t);this.size=e.size}Yt.prototype.clear=function(){this.__data__=new kt,this.size=0},Yt.prototype.delete=function(t){var e=this.__data__,n=e.delete(t);return this.size=e.size,n},Yt.prototype.get=function(t){return this.__data__.get(t)},Yt.prototype.has=function(t){return this.__data__.has(t)},Yt.prototype.set=function(t,e){var n=this.__data__;if(n instanceof kt){var r=n.__data__;if(!C||r.length<199)return r.push([t,e]),this.size=++n.size,this;n=this.__data__=new Tt(r)}return n.set(t,e),this.size=n.size,this};function Zt(t){var e=-1,n=null==t?0:t.length;for(this.__data__=new Tt;++e<n;)this.add(t[e])}function Kt(t,e){for(var n=-1,r=null==t?0:t.length;++n<r;)if(e(t[n],n,t))return!0;return!1}function Qt(t,e){return t.has(e)}Zt.prototype.add=Zt.prototype.push=function(t){return this.__data__.set(t,"__lodash_hash_undefined__"),this},Zt.prototype.has=function(t){return this.__data__.has(t)};function te(t,e,n,r,o,u){var i=1&n,c=t.length,a=e.length;if(c!=a&&!(i&&a>c))return!1;var f=u.get(t),l=u.get(e);if(f&&l)return f==e&&l==t;var s=-1,v=!0,p=2&n?new Zt:void 0;for(u.set(t,e),u.set(e,t);++s<c;){var h=t[s],y=e[s];if(r)var d=i?r(y,h,s,e,t,u):r(h,y,s,t,e,u);if(void 0!==d){if(d)continue;v=!1;break}if(p){if(!Kt(e,(function(t,e){if(!Qt(p,e)&&(h===t||o(h,t,n,r,u)))return p.push(e)}))){v=!1;break}}else if(h!==y&&!o(h,y,n,r,u)){v=!1;break}}return u.delete(t),u.delete(e),v}var ee=l.Uint8Array;function ne(t){var e=-1,n=Array(t.size);return t.forEach((function(t,r){n[++e]=[r,t]})),n}function re(t){var e=-1,n=Array(t.size);return t.forEach((function(t){n[++e]=t})),n}var oe=s?s.prototype:void 0,ue=oe?oe.valueOf:void 0;function ie(t,e){for(var n=-1,r=e.length,o=t.length;++n<r;)t[o+n]=e[n];return t}function ce(t,e,n){var r=e(t);return Q(t)?r:ie(r,n(t))}function ae(t,e){for(var n=-1,r=null==t?0:t.length,o=0,u=[];++n<r;){var i=t[n];e(i,n,t)&&(u[o++]=i)}return u}function fe(){return[]}var le=Object.prototype.propertyIsEnumerable,se=Object.getOwnPropertySymbols,ve=se?function(t){return null==t?[]:(t=Object(t),ae(se(t),(function(e){return le.call(t,e)})))}:fe;function pe(t){return tt(t)&&"[object Arguments]"==j(t)}var he=Object.prototype,ye=he.hasOwnProperty,de=he.propertyIsEnumerable,be=pe(function(){return arguments}())?pe:function(t){return tt(t)&&ye.call(t,"callee")&&!de.call(t,"callee")},je=be;var ge="object"==typeof exports&&exports&&!exports.nodeType&&exports,_e=ge&&"object"==typeof module&&module&&!module.nodeType&&module,we=_e&&_e.exports===ge?l.Buffer:void 0,Oe=(we?we.isBuffer:void 0)||function(){return!1},me=/^(?:0|[1-9]\d*)$/;function Ae(t,e){var n=typeof t;return!!(e=null==e?9007199254740991:e)&&("number"==n||"symbol"!=n&&me.test(t))&&t>-1&&t%1==0&&t<e}var xe={};function Se(t){return function(e){return t(e)}}xe["[object Float32Array]"]=xe["[object Float64Array]"]=xe["[object Int8Array]"]=xe["[object Int16Array]"]=xe["[object Int32Array]"]=xe["[object Uint8Array]"]=xe["[object Uint8ClampedArray]"]=xe["[object Uint16Array]"]=xe["[object Uint32Array]"]=!0,xe["[object Arguments]"]=xe["[object Array]"]=xe["[object ArrayBuffer]"]=xe["[object Boolean]"]=xe["[object DataView]"]=xe["[object Date]"]=xe["[object Error]"]=xe["[object Function]"]=xe["[object Map]"]=xe["[object Number]"]=xe["[object Object]"]=xe["[object RegExp]"]=xe["[object Set]"]=xe["[object String]"]=xe["[object WeakMap]"]=!1;var Pe="object"==typeof exports&&exports&&!exports.nodeType&&exports,Ee=Pe&&"object"==typeof module&&module&&!module.nodeType&&module,$e=Ee&&Ee.exports===Pe&&a.process,ke=function(){try{var t=Ee&&Ee.require&&Ee.require("util").types;return t||$e&&$e.binding&&$e.binding("util")}catch(t){}}(),Ie=ke&&ke.isTypedArray,Te=Ie?Se(Ie):function(t){return tt(t)&&Z(t.length)&&!!xe[j(t)]},Ne=Object.prototype.hasOwnProperty;function qe(t,e){var n=Q(t),r=!n&&je(t),o=!n&&!r&&Oe(t),u=!n&&!r&&!o&&Te(t),i=n||r||o||u,c=i?function(t,e){for(var n=-1,r=Array(t);++n<t;)r[n]=e(n);return r}(t.length,String):[],a=c.length;for(var f in t)!e&&!Ne.call(t,f)||i&&("length"==f||o&&("offset"==f||"parent"==f)||u&&("buffer"==f||"byteLength"==f||"byteOffset"==f)||Ae(f,a))||c.push(f);return c}function Ce(t){return K(t)?qe(t):c(t)}function Me(t){return ce(t,Ce,ve)}var ze=Object.prototype.hasOwnProperty;var De="[object Arguments]",Fe="[object Array]",Be="[object Object]",Le=Object.prototype.hasOwnProperty;function Ue(t,e,n,r,o,u){var i=Q(t),c=Q(e),a=i?Fe:Y(t),f=c?Fe:Y(e),l=(a=a==De?Be:a)==Be,s=(f=f==De?Be:f)==Be,v=a==f;if(v&&Oe(t)){if(!Oe(e))return!1;i=!0,l=!1}if(v&&!l)return u||(u=new Yt),i||Te(t)?te(t,e,n,r,o,u):function(t,e,n,r,o,u,i){switch(n){case"[object DataView]":if(t.byteLength!=e.byteLength||t.byteOffset!=e.byteOffset)return!1;t=t.buffer,e=e.buffer;case"[object ArrayBuffer]":return!(t.byteLength!=e.byteLength||!u(new ee(t),new ee(e)));case"[object Boolean]":case"[object Date]":case"[object Number]":return Pt(+t,+e);case"[object Error]":return t.name==e.name&&t.message==e.message;case"[object RegExp]":case"[object String]":return t==e+"";case"[object Map]":var c=ne;case"[object Set]":var a=1&r;if(c||(c=re),t.size!=e.size&&!a)return!1;var f=i.get(t);if(f)return f==e;r|=2,i.set(t,e);var l=te(c(t),c(e),r,o,u,i);return i.delete(t),l;case"[object Symbol]":if(ue)return ue.call(t)==ue.call(e)}return!1}(t,e,a,n,r,o,u);if(!(1&n)){var p=l&&Le.call(t,"__wrapped__"),h=s&&Le.call(e,"__wrapped__");if(p||h){var y=p?t.value():t,d=h?e.value():e;return u||(u=new Yt),o(y,d,n,r,u)}}return!!v&&(u||(u=new Yt),function(t,e,n,r,o,u){var i=1&n,c=Me(t),a=c.length;if(a!=Me(e).length&&!i)return!1;for(var f=a;f--;){var l=c[f];if(!(i?l in e:ze.call(e,l)))return!1}var s=u.get(t),v=u.get(e);if(s&&v)return s==e&&v==t;var p=!0;u.set(t,e),u.set(e,t);for(var h=i;++f<a;){var y=t[l=c[f]],d=e[l];if(r)var b=i?r(d,y,l,e,t,u):r(y,d,l,t,e,u);if(!(void 0===b?y===d||o(y,d,n,r,u):b)){p=!1;break}h||(h="constructor"==l)}if(p&&!h){var j=t.constructor,g=e.constructor;j==g||!("constructor"in t)||!("constructor"in e)||"function"==typeof j&&j instanceof j&&"function"==typeof g&&g instanceof g||(p=!1)}return u.delete(t),u.delete(e),p}(t,e,n,r,o,u))}function Re(t,e,n,r,o){return t===e||(null==t||null==e||!tt(t)&&!tt(e)?t!=t&&e!=e:Ue(t,e,n,r,Re,o))}function Ge(t){return t==t&&!g(t)}function Ve(t,e){return function(n){return null!=n&&(n[t]===e&&(void 0!==e||t in Object(n)))}}function We(t){var e=function(t){for(var e=Ce(t),n=e.length;n--;){var r=e[n],o=t[r];e[n]=[r,o,Ge(o)]}return e}(t);return 1==e.length&&e[0][2]?Ve(e[0][0],e[0][1]):function(n){return n===t||function(t,e,n,r){var o=n.length,u=o,i=!r;if(null==t)return!u;for(t=Object(t);o--;){var c=n[o];if(i&&c[2]?c[1]!==t[c[0]]:!(c[0]in t))return!1}for(;++o<u;){var a=(c=n[o])[0],f=t[a],l=c[1];if(i&&c[2]){if(void 0===f&&!(a in t))return!1}else{var s=new Yt;if(r)var v=r(f,l,a,t,e,s);if(!(void 0===v?Re(l,f,3,r,s):v))return!1}}return!0}(n,t,e)}}function Je(t,e){return null!=t&&e in Object(t)}function Xe(t,e){return null!=t&&function(t,e,n){for(var r=-1,o=(e=Wt(e,t)).length,u=!1;++r<o;){var i=Jt(e[r]);if(!(u=null!=t&&n(t,i)))break;t=t[i]}return u||++r!=o?u:!!(o=null==t?0:t.length)&&Z(o)&&Ae(i,o)&&(Q(t)||je(t))}(t,e,Je)}function He(t){return t}function Ye(t){return Ot(t)?et(Jt(t)):function(t){return function(e){return Xt(e,t)}}(t)}function Ze(t){return"function"==typeof t?t:null==t?He:"object"==typeof t?Q(t)?(e=t[0],n=t[1],Ot(e)&&Ge(n)?Ve(Jt(e),n):function(t){var r=Ht(t,e);return void 0===r&&r===n?Xe(t,e):Re(n,r,3)}):We(t):Ye(t);var e,n}var Ke,Qe=function(t,e,n){for(var r=-1,o=Object(t),u=n(t),i=u.length;i--;){var c=u[Ke?i:++r];if(!1===e(o[c],c,o))break}return t};var tn=function(t,e){return function(n,r){if(null==n)return n;if(!K(n))return t(n,r);for(var o=n.length,u=e?o:-1,i=Object(n);(e?u--:++u<o)&&!1!==r(i[u],u,i););return n}}((function(t,e){return t&&Qe(t,e,Ce)})),en=tn;function nn(t,e){var n=-1,r=K(t)?Array(t.length):[];return en(t,(function(t,o,u){r[++n]=e(t,o,u)})),r}function rn(t,e){return(Q(t)?Lt:nn)(t,Ze(e))}function on(t,e){var n=[];return en(t,(function(t,r,o){e(t,r,o)&&n.push(t)})),n}function un(t,e){for(var n=-1,r=null==t?0:t.length;++n<r&&!1!==e(t[n],n,t););return t}var cn=function(){try{var t=N(Object,"defineProperty");return t({},"",{}),t}catch(t){}}(),an=cn;function fn(t,e,n){"__proto__"==e&&an?an(t,e,{configurable:!0,enumerable:!0,value:n,writable:!0}):t[e]=n}var ln=Object.prototype.hasOwnProperty;function sn(t,e,n){var r=t[e];ln.call(t,e)&&Pt(r,n)&&(void 0!==n||e in t)||fn(t,e,n)}function vn(t,e,n,r){var o=!n;n||(n={});for(var u=-1,i=e.length;++u<i;){var c=e[u],a=r?r(n[c],t[c],c,n,t):void 0;void 0===a&&(a=t[c]),o?fn(n,c,a):sn(n,c,a)}return n}var pn=Object.prototype.hasOwnProperty;function hn(t){if(!g(t))return function(t){var e=[];if(null!=t)for(var n in Object(t))e.push(n);return e}(t);var e=r(t),n=[];for(var o in t)("constructor"!=o||!e&&pn.call(t,o))&&n.push(o);return n}function yn(t){return K(t)?qe(t,!0):hn(t)}var dn="object"==typeof exports&&exports&&!exports.nodeType&&exports,bn=dn&&"object"==typeof module&&module&&!module.nodeType&&module,jn=bn&&bn.exports===dn?l.Buffer:void 0,gn=jn?jn.allocUnsafe:void 0;var _n=o(Object.getPrototypeOf,Object),wn=Object.getOwnPropertySymbols?function(t){for(var e=[];t;)ie(e,ve(t)),t=_n(t);return e}:fe,On=wn;function mn(t){return ce(t,yn,On)}var An=Object.prototype.hasOwnProperty;function xn(t){var e=new t.constructor(t.byteLength);return new ee(e).set(new ee(t)),e}var Sn=/\w*$/;var Pn=s?s.prototype:void 0,En=Pn?Pn.valueOf:void 0;function $n(t,e,n){var r,o=t.constructor;switch(e){case"[object ArrayBuffer]":return xn(t);case"[object Boolean]":case"[object Date]":return new o(+t);case"[object DataView]":return function(t,e){var n=e?xn(t.buffer):t.buffer;return new t.constructor(n,t.byteOffset,t.byteLength)}(t,n);case"[object Float32Array]":case"[object Float64Array]":case"[object Int8Array]":case"[object Int16Array]":case"[object Int32Array]":case"[object Uint8Array]":case"[object Uint8ClampedArray]":case"[object Uint16Array]":case"[object Uint32Array]":return function(t,e){var n=e?xn(t.buffer):t.buffer;return new t.constructor(n,t.byteOffset,t.length)}(t,n);case"[object Map]":case"[object Set]":return new o;case"[object Number]":case"[object String]":return new o(t);case"[object RegExp]":return function(t){var e=new t.constructor(t.source,Sn.exec(t));return e.lastIndex=t.lastIndex,e}(t);case"[object Symbol]":return r=t,En?Object(En.call(r)):{}}}var kn=Object.create,In=function(){function t(){}return function(e){if(!g(e))return{};if(kn)return kn(e);t.prototype=e;var n=new t;return t.prototype=void 0,n}}(),Tn=In;var Nn=ke&&ke.isMap,qn=Nn?Se(Nn):function(t){return tt(t)&&"[object Map]"==Y(t)};var Cn=ke&&ke.isSet,Mn=Cn?Se(Cn):function(t){return tt(t)&&"[object Set]"==Y(t)},zn="[object Arguments]",Dn="[object Function]",Fn="[object Object]",Bn={};function Ln(t,e,n,o,u,i){var c,a=1&e,f=2&e,l=4&e;if(n&&(c=u?n(t,o,u,i):n(t)),void 0!==c)return c;if(!g(t))return t;var s=Q(t);if(s){if(c=function(t){var e=t.length,n=new t.constructor(e);return e&&"string"==typeof t[0]&&An.call(t,"index")&&(n.index=t.index,n.input=t.input),n}(t),!a)return function(t,e){var n=-1,r=t.length;for(e||(e=Array(r));++n<r;)e[n]=t[n];return e}(t,c)}else{var v=Y(t),p=v==Dn||"[object GeneratorFunction]"==v;if(Oe(t))return function(t,e){if(e)return t.slice();var n=t.length,r=gn?gn(n):new t.constructor(n);return t.copy(r),r}(t,a);if(v==Fn||v==zn||p&&!u){if(c=f||p?{}:function(t){return"function"!=typeof t.constructor||r(t)?{}:Tn(_n(t))}(t),!a)return f?function(t,e){return vn(t,On(t),e)}(t,function(t,e){return t&&vn(e,yn(e),t)}(c,t)):function(t,e){return vn(t,ve(t),e)}(t,function(t,e){return t&&vn(e,Ce(e),t)}(c,t))}else{if(!Bn[v])return u?t:{};c=$n(t,v,a)}}i||(i=new Yt);var h=i.get(t);if(h)return h;i.set(t,c),Mn(t)?t.forEach((function(r){c.add(Ln(r,e,n,r,t,i))})):qn(t)&&t.forEach((function(r,o){c.set(o,Ln(r,e,n,o,t,i))}));var y=s?void 0:(l?f?mn:Me:f?yn:Ce)(t);return un(y||t,(function(r,o){y&&(r=t[o=r]),sn(c,o,Ln(r,e,n,o,t,i))})),c}function Un(t,e,n){var r=-1,o=t.length;e<0&&(e=-e>o?0:o+e),(n=n>o?o:n)<0&&(n+=o),o=e>n?0:n-e>>>0,e>>>=0;for(var u=Array(o);++r<o;)u[r]=t[r+e];return u}Bn[zn]=Bn["[object Array]"]=Bn["[object ArrayBuffer]"]=Bn["[object DataView]"]=Bn["[object Boolean]"]=Bn["[object Date]"]=Bn["[object Float32Array]"]=Bn["[object Float64Array]"]=Bn["[object Int8Array]"]=Bn["[object Int16Array]"]=Bn["[object Int32Array]"]=Bn["[object Map]"]=Bn["[object Number]"]=Bn[Fn]=Bn["[object RegExp]"]=Bn["[object Set]"]=Bn["[object String]"]=Bn["[object Symbol]"]=Bn["[object Uint8Array]"]=Bn["[object Uint8ClampedArray]"]=Bn["[object Uint16Array]"]=Bn["[object Uint32Array]"]=!0,Bn["[object Error]"]=Bn[Dn]=Bn["[object WeakMap]"]=!1;var Rn=Object.prototype.hasOwnProperty;function Gn(t,e){var n=-1,r=(e=Wt(e,t)).length;if(!r)return!0;for(;++n<r;){var o=Jt(e[n]);if("__proto__"===o&&!Rn.call(t,"__proto__"))return!1;if(("constructor"===o||"prototype"===o)&&n<r-1)return!1}var u=function(t,e){return e.length<2?t:Xt(t,Un(e,0,-1))}(t,e);return null==u||delete u[Jt(function(t){var e=null==t?0:t.length;return e?t[e-1]:void 0}(e))]}var Vn=Function.prototype,Wn=Object.prototype,Jn=Vn.toString,Xn=Wn.hasOwnProperty,Hn=Jn.call(Object);function Yn(t){return function(t){if(!tt(t)||"[object Object]"!=j(t))return!1;var e=_n(t);if(null===e)return!0;var n=Xn.call(e,"constructor")&&e.constructor;return"function"==typeof n&&n instanceof n&&Jn.call(n)==Hn}(t)?void 0:t}var Zn=s?s.isConcatSpreadable:void 0;function Kn(t){return Q(t)||je(t)||!!(Zn&&t&&t[Zn])}function Qn(t,e,n,r,o){var u=-1,i=t.length;for(n||(n=Kn),o||(o=[]);++u<i;){var c=t[u];e>0&&n(c)?e>1?Qn(c,e-1,n,r,o):ie(o,c):r||(o[o.length]=c)}return o}function tr(t){return(null==t?0:t.length)?Qn(t,1):[]}var er=Math.max;var nr=an?function(t,e){return an(t,"toString",{configurable:!0,enumerable:!1,value:(n=e,function(){return n}),writable:!0});var n}:He,rr=nr,or=Date.now;var ur=function(t){var e=0,n=0;return function(){var r=or(),o=16-(r-n);if(n=r,o>0){if(++e>=800)return arguments[0]}else e=0;return t.apply(void 0,arguments)}}(rr),ir=ur;var cr=function(t){return ir(function(t,e,n){return e=er(void 0===e?t.length-1:e,0),function(){for(var r=arguments,o=-1,u=er(r.length-e,0),i=Array(u);++o<u;)i[o]=r[e+o];o=-1;for(var c=Array(e+1);++o<e;)c[o]=r[o];return c[e]=n(i),function(t,e,n){switch(n.length){case 0:return t.call(e);case 1:return t.call(e,n[0]);case 2:return t.call(e,n[0],n[1]);case 3:return t.call(e,n[0],n[1],n[2])}return t.apply(e,n)}(t,this,c)}}(t,void 0,tr),t+"")}((function(t,e){var n={};if(null==t)return n;var r=!1;e=Lt(e,(function(e){return e=Wt(e,t),r||(r=e.length>1),e})),vn(t,mn(t),n),r&&(n=Ln(n,7,Yn));for(var o=e.length;o--;)Gn(n,e[o]);return n})),ar=cr,fr=/\s/;var lr=/^\s+/;function sr(t){return t?t.slice(0,function(t){for(var e=t.length;e--&&fr.test(t.charAt(e)););return e}(t)+1).replace(lr,""):t}function vr(t){return t!=t}function pr(t,e,n){return e==e?function(t,e,n){for(var r=n-1,o=t.length;++r<o;)if(t[r]===e)return r;return-1}(t,e,n):function(t,e,n,r){for(var o=t.length,u=n+(r?1:-1);r?u--:++u<o;)if(e(t[u],u,t))return u;return-1}(t,vr,n)}var hr="\\ud800-\\udfff",yr="["+hr+"]",dr="[\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff]",br="\\ud83c[\\udffb-\\udfff]",jr="[^"+hr+"]",gr="(?:\\ud83c[\\udde6-\\uddff]){2}",_r="[\\ud800-\\udbff][\\udc00-\\udfff]",wr="(?:"+dr+"|"+br+")"+"?",Or="[\\ufe0e\\ufe0f]?",mr=Or+wr+("(?:\\u200d(?:"+[jr,gr,_r].join("|")+")"+Or+wr+")*"),Ar="(?:"+[jr+dr+"?",dr,gr,_r,yr].join("|")+")",xr=RegExp(br+"(?="+br+")|"+Ar+mr,"g");function Sr(t){return ot(t)?function(t){return t.match(xr)||[]}(t):function(t){return t.split("")}(t)}function Pr(t,e,n){if((t=Vt(t))&&(n||void 0===e))return sr(t);if(!t||!(e=Gt(e)))return t;var r=Sr(t),o=Sr(e),u=function(t,e){for(var n=-1,r=t.length;++n<r&&pr(e,t[n],0)>-1;);return n}(r,o),i=function(t,e){for(var n=t.length;n--&&pr(e,t[n],0)>-1;);return n}(r,o)+1;return function(t,e,n){var r=t.length;return n=void 0===n?r:n,!e&&n>=r?t:Un(t,e,n)}(r,u,i).join("")}function Er(t){return Ln(t,5)}function $r(t){return"[object String]"===Object.prototype.toString.call(t)}function kr(t){return!(!$r(t)||""===t)}function Ir(t){return"[object Array]"===Object.prototype.toString.call(t)}function Tr(t){return"[object Object]"===Object.prototype.toString.call(t)}function Nr(t){return t!=t}function qr(t){return!!function(t){return"[object Undefined]"===Object.prototype.toString.call(t)}(t)||(!!function(t){return"[object Null]"===Object.prototype.toString.call(t)}(t)||(!!function(t){if(Tr(t)){for(let e in t)return!1;return!0}return!1}(t)||(!!function(t){return!(!$r(t)||""!==t)}(t)||(!!function(t){return!!Ir(t)&&0===t.length}(t)||!!Nr(t)))))}function Cr(t){return!!Ir(t)&&(0!==t.length&&(1!==t.length||!qr(t[0])))}function Mr(t){if(Tr(t)){for(let e in t)return!0;return!1}return!1}function zr(t){let e=!1;if(kr(t))e=!isNaN(Number(t));else if(function(t){return"[object Number]"===Object.prototype.toString.call(t)}(t)){if(Nr(t))return!1;e=!0}return e}var Dr=/^[-+]0x[0-9a-f]+$/i,Fr=/^0b[01]+$/i,Br=/^0o[0-7]+$/i,Lr=parseInt;var Ur=1/0;function Rr(t){return t?(t=function(t){if("number"==typeof t)return t;if(gt(t))return NaN;if(g(t)){var e="function"==typeof t.valueOf?t.valueOf():t;t=g(e)?e+"":e}if("string"!=typeof t)return 0===t?t:+t;t=sr(t);var n=Fr.test(t);return n||Br.test(t)?Lr(t.slice(2),n?2:8):Dr.test(t)?NaN:+t}(t))===Ur||t===-1/0?17976931348623157e292*(t<0?-1:1):t==t?t:0:0===t?t:0}function Gr(t){var e=Rr(t),n=e%1;return e==e?n?e-n:e:0}function Vr(t){if(!zr(t))return 0;return Rr(t)}function Wr(t){return!!zr(t)&&(t=Vr(t),"number"==typeof(e=t)&&e==Gr(e));var e}function Jr(t){return!0===(e=t)||!1===e||tt(e)&&"[object Boolean]"==j(e);var e}function Xr(t){return t&&t.__esModule&&Object.prototype.hasOwnProperty.call(t,"default")?t.default:t}var Hr={exports:{}};!function(t){var e=Object.prototype.hasOwnProperty,n="~";function r(){}function o(t,e,n){this.fn=t,this.context=e,this.once=n||!1}function u(t,e,r,u,i){if("function"!=typeof r)throw new TypeError("The listener must be a function");var c=new o(r,u||t,i),a=n?n+e:e;return t._events[a]?t._events[a].fn?t._events[a]=[t._events[a],c]:t._events[a].push(c):(t._events[a]=c,t._eventsCount++),t}function i(t,e){0==--t._eventsCount?t._events=new r:delete t._events[e]}function c(){this._events=new r,this._eventsCount=0}Object.create&&(r.prototype=Object.create(null),(new r).__proto__||(n=!1)),c.prototype.eventNames=function(){var t,r,o=[];if(0===this._eventsCount)return o;for(r in t=this._events)e.call(t,r)&&o.push(n?r.slice(1):r);return Object.getOwnPropertySymbols?o.concat(Object.getOwnPropertySymbols(t)):o},c.prototype.listeners=function(t){var e=n?n+t:t,r=this._events[e];if(!r)return[];if(r.fn)return[r.fn];for(var o=0,u=r.length,i=new Array(u);o<u;o++)i[o]=r[o].fn;return i},c.prototype.listenerCount=function(t){var e=n?n+t:t,r=this._events[e];return r?r.fn?1:r.length:0},c.prototype.emit=function(t,e,r,o,u,i){var c=n?n+t:t;if(!this._events[c])return!1;var a,f,l=this._events[c],s=arguments.length;if(l.fn){switch(l.once&&this.removeListener(t,l.fn,void 0,!0),s){case 1:return l.fn.call(l.context),!0;case 2:return l.fn.call(l.context,e),!0;case 3:return l.fn.call(l.context,e,r),!0;case 4:return l.fn.call(l.context,e,r,o),!0;case 5:return l.fn.call(l.context,e,r,o,u),!0;case 6:return l.fn.call(l.context,e,r,o,u,i),!0}for(f=1,a=new Array(s-1);f<s;f++)a[f-1]=arguments[f];l.fn.apply(l.context,a)}else{var v,p=l.length;for(f=0;f<p;f++)switch(l[f].once&&this.removeListener(t,l[f].fn,void 0,!0),s){case 1:l[f].fn.call(l[f].context);break;case 2:l[f].fn.call(l[f].context,e);break;case 3:l[f].fn.call(l[f].context,e,r);break;case 4:l[f].fn.call(l[f].context,e,r,o);break;default:if(!a)for(v=1,a=new Array(s-1);v<s;v++)a[v-1]=arguments[v];l[f].fn.apply(l[f].context,a)}}return!0},c.prototype.on=function(t,e,n){return u(this,t,e,n,!1)},c.prototype.once=function(t,e,n){return u(this,t,e,n,!0)},c.prototype.removeListener=function(t,e,r,o){var u=n?n+t:t;if(!this._events[u])return this;if(!e)return i(this,u),this;var c=this._events[u];if(c.fn)c.fn!==e||o&&!c.once||r&&c.context!==r||i(this,u);else{for(var a=0,f=[],l=c.length;a<l;a++)(c[a].fn!==e||o&&!c[a].once||r&&c[a].context!==r)&&f.push(c[a]);f.length?this._events[u]=1===f.length?f[0]:f:i(this,u)}return this},c.prototype.removeAllListeners=function(t){var e;return t?(e=n?n+t:t,this._events[e]&&i(this,e)):(this._events=new r,this._eventsCount=0),this},c.prototype.off=c.prototype.removeListener,c.prototype.addListener=c.prototype.on,c.prefixed=n,c.EventEmitter=c,t.exports=c}(Hr);var Yr=Xr(Hr.exports);function Zr(t,e){var n;return(Q(t)?un:en)(t,"function"==typeof(n=e)?n:He)}function Kr(t){let e=Object.prototype.toString.call(t);return"[object Function]"===e||"[object AsyncFunction]"===e}function Qr(t,e){let n=function(){let t,e,n=new Promise((function(){t=arguments[0],e=arguments[1]}));return n.resolve=t,n.reject=e,n}();if(!Ir(t)&&!Tr(t))return n.reject("rs is not an array or object"),n;let r=!1;if(Tr(t)){r=!0;let e=[];Zr(t,((t,n)=>{e.push({k:n,v:t})})),t=e}Kr(e)||(e=function(t){return t});let o=-1,u=[];return t.reduce((function(t,n){return t.then((function(t){u.push(t),o+=1;let i=o,c=n;return r&&(i=n.k,c=n.v),Kr(e)?e(c,i):c}))}),Promise.resolve()).then((function(t){var e,r,o,i;u.push(t),i=null==(e=u)?0:e.length,u=i?Un(e,(r=o||void 0===r?1:Gr(r))<0?0:r,i):[],n.resolve(u)})).catch((function(t){n.reject(t)})),n}return function(){let n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},r=null,o=Ht(n,"url");kr(o)||(o="postgresql://user:password@127.0.0.1:5432");let u=Ht(n,"db");kr(u)||(u="worm");let i=Ht(n,"cl");kr(i)||(i="test");let c=Ht(n,"useCache");Jr(c)||(c=!1);let a=Ht(n,"pk");function f(t){return kr(t)||zr(t)||Jr(t)||function(t){let e=t;return kr(t)&&(e=new Date(t)),zr(t)&&(e=Vr(t),e=new Date(t)),e instanceof Date&&!isNaN(e)}(t)}function l(t,e,n){if(!Mr(n))throw new Error(`obj[${n}] is not an effective object`);let r=Object.entries(n).map((t=>{let[n,r]=t,o=function(t){if($r(t))return/^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}(?:\.\d+)?(?:Z)?$/.test(t)?"TIMESTAMPTZ":"TEXT";return zr(t)?Wr(t)?"INTEGER":"DOUBLE PRECISION":Jr(t)?"BOOLEAN":null===t?"TEXT":"JSONB"}(r),u=` ${n} ${o}`;return n===e&&(u=`${u} PRIMARY KEY`),u}));return`CREATE TABLE ${t} (\n${r.join(",\n")}\n);`}function s(t){let e=Ce(t),n=[a],r=(u=t=>!n.includes(t),(Q(o=e)?ae:on)(o,Ze(u)));var o,u;if(0===jt(r))return"";let i=r.map((t=>`${t} = EXCLUDED.${t}`)).join(",\n "),c=`\n ON CONFLICT (${n.join(", ")}) DO UPDATE SET\n ${i}\n `;return c=Pr(c),c}kr(a)||(a="time");let v=`${o}/${u}`,p=new Yr,h=(t,e,n)=>{try{p.emit("change",t,e,n)}catch(t){console.log(t)}},y=(t,e,n)=>{try{p.emit("error",t,e,(t=>{let e=Ht(t,"message");return kr(e)?e:String(t)})(n))}catch(t){console.log(t)}},d=t.Client;function b(){r=null}function j(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return JSON.stringify({find:t,order:e})}function g(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if(Mr(r)){let n=j(t,e);if(function(t,e){return!!Tr(t)&&!(!kr(e)&&!zr(e))&&e in t}(r,n))return Er(r[n])}return null}function _(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:[];Mr(r)||(r={});let o=j(t,e);r[o]=Er(n)}return p.createTable=async function(t,e,n){kr(e)||(e=a);let r=!1,o=null,u=new d({connectionString:v});try{await u.connect()}catch(t){r=!0,o=t,u=null}if(r)return y("createTable",n,o),Promise.reject(o);try{let i=n;if(Cr(i)&&(i=i[0]),!Mr(i))throw new Error(`obj[${i}] is not an effective object`);let c=l(t,e,i);await u.query(c).then((()=>{o={ok:1}})).catch((t=>{r=!0,o=t.message}))}catch(t){r=!0,o=t}finally{await u.end(),u=null}return c&&b(),r?(y("createTable",n,o),Promise.reject(o)):o},p.select=async function(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},r=!1,o=null;if(c){let e=g(t,n);if(Ir(e))return e}let u=new d({connectionString:v});try{await u.connect()}catch(t){r=!0,o=t,u=null}if(r)return y("select",null,o),Promise.reject(o);try{let a=e.sql({type:"select",table:i,where:t,order:n});o=Ht(await u.query(a.query,a.values),"rows"),Ir(o)||(r=!0,o=`can not select by find[${JSON.stringify(t)}]`),c&&!r&&_(t,n,o)}catch(t){r=!0,o=t}finally{await u.end(),u=null}return r?(y("select",null,o),Promise.reject(o)):o},p.selectByPk=async function(t){let n=!1,r=null;if(!f(t))return null;let o={[a]:t};if(c){let t=g(o,{});if(Ir(t))return Ht(t,0,null)}let u=new d({connectionString:v});try{await u.connect()}catch(t){n=!0,r=t,u=null}if(n)return y("selectByPk",null,r),Promise.reject(r);try{let n=e.sql({type:"select",table:i,where:o}),a=Ht(await u.query(n.query,n.values),"rows");if(!Ir(a))throw new Error(`can not select by pk[${t}]`);c&&_(o,{},a);let f=Ht(a,0,null);r=Mr(f)?f:null}catch(t){!function(t){let e=Ht(t,"code");return"22P02"===e||"22007"===e}(t)?(n=!0,r=t):r=null}finally{await u.end(),u=null}return n?(y("selectByPk",null,r),Promise.reject(r)):r},p.insert=async function(t){let n=!1,r=null;if(!Mr(t)&&!Cr(t))return{n:0,nInserted:0,ok:1};t=Er(t);let o=new d({connectionString:v});try{await o.connect()}catch(t){n=!0,r=t,o=null}if(n)return y("insert",t,r),Promise.reject(r);try{Ir(t)||(t=[t]),t=rn(t,(function(t,e){if(!f(Ht(t,a)))throw new Error(`invalid data[${e}].${a}[${Ht(t,a)}]`);return t}));let u=e.sql({type:"insert",table:i,values:t}),c=`${u.query} ON CONFLICT (${a}) DO NOTHING`,l=jt(t);await o.query(c,u.values).then((t=>{r={n:l,nInserted:t.rowCount,ok:1}})).catch((t=>{n=!0,r=t.message}))}catch(t){n=!0,r=t}finally{await o.end(),o=null}return c&&b(),n||h("insert",t,r),n?(y("insert",t,r),Promise.reject(r)):r},p.save=async function(t){let n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},r=!1,o=null;if(!Mr(t)&&!Cr(t))return[];t=Er(t);let u=Ht(n,"autoInsert",!0),l=new d({connectionString:v});try{await l.connect()}catch(t){r=!0,o=t,l=null}if(r)return y("save",t,o),Promise.reject(o);try{Ir(t)||(t=[t]),t=rn(t,(function(t,e){if(!f(Ht(t,a)))throw new Error(`invalid data[${e}].${a}[${Ht(t,a)}]`);return t})),o=await Qr(t,(async t=>{let n=null,r=Ht(t,a),o=null;{let t=e.sql({type:"select",table:i,where:{[a]:r}}),n=Ht(await l.query(t.query,t.values),"rows");o=Ht(n,0,null)}if(Mr(o)){let e=ar(o,a),r={...e,...ar(t,a)};if(Re(r,e))return n={n:1,nInserted:0,nModified:0,ok:1},n}else if(!u)return n={n:0,nInserted:0,nModified:0,ok:1},n;if(u){let r=e.sql({type:"insert",table:i,values:t}),o=s(t);kr(o)||(o=`ON CONFLICT (${a}) DO NOTHING`);let u=`${r.query} ${o} RETURNING (xmax = 0) AS inserted`;await l.query(u,r.values).then((t=>{let e=Ht(t,"rows");n=Cr(e)?!0===Ht(e,"0.inserted")?{n:1,nInserted:1,nModified:0,ok:1}:{n:1,nInserted:0,nModified:1,ok:1}:{n:1,nInserted:0,nModified:0,ok:1}})).catch((t=>{n={n:1,nInserted:0,nModified:0,ok:0,err:t.message}}))}else{let o=e.sql({type:"update",table:i,updates:ar(t,a),where:{[a]:r}});await l.query(o.query,o.values).then((t=>{n=t.rowCount>0?{n:1,nInserted:0,nModified:1,ok:1}:{n:0,nInserted:0,nModified:0,ok:1}})).catch((t=>{n={n:1,nInserted:0,nModified:0,ok:0,err:t.message}}))}return 1===n.nInserted&&h("insert",[t],n),0===n.ok&&y("save",[t],n.err),n}))}catch(t){r=!0,o=t}finally{await l.end(),l=null}return c&&b(),r||h("save",t,o),r?(y("save",t,o),Promise.reject(o)):o},p.del=async function(t){let n=!1,r=null;if(!Mr(t)&&!Cr(t))return[];t=Er(t);let o=new d({connectionString:v});try{await o.connect()}catch(t){n=!0,r=t,o=null}if(n)return y("del",t,r),Promise.reject(r);try{Ir(t)||(t=[t]),r=await Qr(t,(async t=>{let n=null,r=Ht(t,a);if(!f(r))return n={n:0,nDeleted:0,ok:0,err:`invalid ${a}[${r}]`},y("del",[t],n.err),n;let u=e.sql({type:"delete",table:i,where:{[a]:r}});return await o.query(u.query,u.values).then((t=>{n={n:t.rowCount,nDeleted:t.rowCount,ok:1}})).catch((t=>{n={n:1,nDeleted:0,ok:0,err:t.message}})),0===n.ok&&y("del",[t],n.err),n}))}catch(t){n=!0,r=t}finally{await o.end(),o=null}return c&&b(),n||h("del",t,r),n?(y("del",t,r),Promise.reject(r)):r},p.delAll=async function(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},n=!1,r=null,o=new d({connectionString:v});try{await o.connect()}catch(t){n=!0,r=t,o=null}if(n)return y("delAll",null,r),Promise.reject(r);try{let u=e.sql({type:"delete",table:i,where:t});await o.query(u.query,u.values).then((t=>{r={n:t.rowCount,nDeleted:t.rowCount,ok:1}})).catch((t=>{n=!0,r=t.message}))}catch(t){n=!0,r=t}finally{await o.end(),o=null}return c&&b(),n||h("delAll",null,r),n?(y("delAll",null,r),Promise.reject(r)):r},p}}));
6
+ !function(t,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e(require("pg"),require("mongo-sql")):"function"==typeof define&&define.amd?define(["pg","mongo-sql"],e):(t="undefined"!=typeof globalThis?globalThis:t||self)["w-orm-postgresql"]=e(t.pg,t["mongo-sql"])}(this,(function(t,e){"use strict";var n=Object.prototype;function r(t){var e=t&&t.constructor;return t===("function"==typeof e&&e.prototype||n)}function o(t,e){return function(n){return t(e(n))}}var u=o(Object.keys,Object),i=Object.prototype.hasOwnProperty;function c(t){if(!r(t))return u(t);var e=[];for(var n in Object(t))i.call(t,n)&&"constructor"!=n&&e.push(n);return e}var a="object"==typeof global&&global&&global.Object===Object&&global,f="object"==typeof self&&self&&self.Object===Object&&self,l=a||f||Function("return this")(),s=l.Symbol,v=Object.prototype,p=v.hasOwnProperty,h=v.toString,y=s?s.toStringTag:void 0;var d=Object.prototype.toString;var b=s?s.toStringTag:void 0;function j(t){return null==t?void 0===t?"[object Undefined]":"[object Null]":b&&b in Object(t)?function(t){var e=p.call(t,y),n=t[y];try{t[y]=void 0;var r=!0}catch(t){}var o=h.call(t);return r&&(e?t[y]=n:delete t[y]),o}(t):function(t){return d.call(t)}(t)}function g(t){var e=typeof t;return null!=t&&("object"==e||"function"==e)}function _(t){if(!g(t))return!1;var e=j(t);return"[object Function]"==e||"[object GeneratorFunction]"==e||"[object AsyncFunction]"==e||"[object Proxy]"==e}var w,O=l["__core-js_shared__"],m=(w=/[^.]+$/.exec(O&&O.keys&&O.keys.IE_PROTO||""))?"Symbol(src)_1."+w:"";var A=Function.prototype.toString;function S(t){if(null!=t){try{return A.call(t)}catch(t){}try{return t+""}catch(t){}}return""}var x=/^\[object .+?Constructor\]$/,P=Function.prototype,E=Object.prototype,I=P.toString,k=E.hasOwnProperty,$=RegExp("^"+I.call(k).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function T(t){return!(!g(t)||(e=t,m&&m in e))&&(_(t)?$:x).test(S(t));var e}function N(t,e){var n=function(t,e){return null==t?void 0:t[e]}(t,e);return T(n)?n:void 0}var q=N(l,"DataView"),C=N(l,"Map"),M=N(l,"Promise"),D=N(l,"Set"),z=N(l,"WeakMap"),B="[object Map]",L="[object Promise]",F="[object Set]",U="[object WeakMap]",R="[object DataView]",G=S(q),V=S(C),W=S(M),J=S(D),X=S(z),H=j;(q&&H(new q(new ArrayBuffer(1)))!=R||C&&H(new C)!=B||M&&H(M.resolve())!=L||D&&H(new D)!=F||z&&H(new z)!=U)&&(H=function(t){var e=j(t),n="[object Object]"==e?t.constructor:void 0,r=n?S(n):"";if(r)switch(r){case G:return R;case V:return B;case W:return L;case J:return F;case X:return U}return e});var K=H;function Y(t){return"number"==typeof t&&t>-1&&t%1==0&&t<=9007199254740991}function Z(t){return null!=t&&Y(t.length)&&!_(t)}var Q=Array.isArray;function tt(t){return null!=t&&"object"==typeof t}function et(t){return function(e){return null==e?void 0:e[t]}}var nt=et("length"),rt=RegExp("[\\u200d\\ud800-\\udfff\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff\\ufe0e\\ufe0f]");function ot(t){return rt.test(t)}var ut="\\ud800-\\udfff",it="["+ut+"]",ct="[\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff]",at="\\ud83c[\\udffb-\\udfff]",ft="[^"+ut+"]",lt="(?:\\ud83c[\\udde6-\\uddff]){2}",st="[\\ud800-\\udbff][\\udc00-\\udfff]",vt="(?:"+ct+"|"+at+")"+"?",pt="[\\ufe0e\\ufe0f]?",ht=pt+vt+("(?:\\u200d(?:"+[ft,lt,st].join("|")+")"+pt+vt+")*"),yt="(?:"+[ft+ct+"?",ct,lt,st,it].join("|")+")",dt=RegExp(at+"(?="+at+")|"+yt+ht,"g");function bt(t){return ot(t)?function(t){for(var e=dt.lastIndex=0;dt.test(t);)++e;return e}(t):nt(t)}function jt(t){if(null==t)return 0;if(Z(t))return"string"==typeof(e=t)||!Q(e)&&tt(e)&&"[object String]"==j(e)?bt(t):t.length;var e,n=K(t);return"[object Map]"==n||"[object Set]"==n?t.size:c(t).length}function gt(t){return"symbol"==typeof t||tt(t)&&"[object Symbol]"==j(t)}var _t=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,wt=/^\w*$/;function Ot(t,e){if(Q(t))return!1;var n=typeof t;return!("number"!=n&&"symbol"!=n&&"boolean"!=n&&null!=t&&!gt(t))||(wt.test(t)||!_t.test(t)||null!=e&&t in Object(e))}var mt=N(Object,"create");var At=Object.prototype.hasOwnProperty;var St=Object.prototype.hasOwnProperty;function xt(t){var e=-1,n=null==t?0:t.length;for(this.clear();++e<n;){var r=t[e];this.set(r[0],r[1])}}function Pt(t,e){return t===e||t!=t&&e!=e}function Et(t,e){for(var n=t.length;n--;)if(Pt(t[n][0],e))return n;return-1}xt.prototype.clear=function(){this.__data__=mt?mt(null):{},this.size=0},xt.prototype.delete=function(t){var e=this.has(t)&&delete this.__data__[t];return this.size-=e?1:0,e},xt.prototype.get=function(t){var e=this.__data__;if(mt){var n=e[t];return"__lodash_hash_undefined__"===n?void 0:n}return At.call(e,t)?e[t]:void 0},xt.prototype.has=function(t){var e=this.__data__;return mt?void 0!==e[t]:St.call(e,t)},xt.prototype.set=function(t,e){var n=this.__data__;return this.size+=this.has(t)?0:1,n[t]=mt&&void 0===e?"__lodash_hash_undefined__":e,this};var It=Array.prototype.splice;function kt(t){var e=-1,n=null==t?0:t.length;for(this.clear();++e<n;){var r=t[e];this.set(r[0],r[1])}}function $t(t,e){var n,r,o=t.__data__;return("string"==(r=typeof(n=e))||"number"==r||"symbol"==r||"boolean"==r?"__proto__"!==n:null===n)?o["string"==typeof e?"string":"hash"]:o.map}function Tt(t){var e=-1,n=null==t?0:t.length;for(this.clear();++e<n;){var r=t[e];this.set(r[0],r[1])}}kt.prototype.clear=function(){this.__data__=[],this.size=0},kt.prototype.delete=function(t){var e=this.__data__,n=Et(e,t);return!(n<0)&&(n==e.length-1?e.pop():It.call(e,n,1),--this.size,!0)},kt.prototype.get=function(t){var e=this.__data__,n=Et(e,t);return n<0?void 0:e[n][1]},kt.prototype.has=function(t){return Et(this.__data__,t)>-1},kt.prototype.set=function(t,e){var n=this.__data__,r=Et(n,t);return r<0?(++this.size,n.push([t,e])):n[r][1]=e,this},Tt.prototype.clear=function(){this.size=0,this.__data__={hash:new xt,map:new(C||kt),string:new xt}},Tt.prototype.delete=function(t){var e=$t(this,t).delete(t);return this.size-=e?1:0,e},Tt.prototype.get=function(t){return $t(this,t).get(t)},Tt.prototype.has=function(t){return $t(this,t).has(t)},Tt.prototype.set=function(t,e){var n=$t(this,t),r=n.size;return n.set(t,e),this.size+=n.size==r?0:1,this};function Nt(t,e){if("function"!=typeof t||null!=e&&"function"!=typeof e)throw new TypeError("Expected a function");var n=function(){var r=arguments,o=e?e.apply(this,r):r[0],u=n.cache;if(u.has(o))return u.get(o);var i=t.apply(this,r);return n.cache=u.set(o,i)||u,i};return n.cache=new(Nt.Cache||Tt),n}Nt.Cache=Tt;var qt,Ct,Mt,Dt=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,zt=/\\(\\)?/g,Bt=(qt=function(t){var e=[];return 46===t.charCodeAt(0)&&e.push(""),t.replace(Dt,(function(t,n,r,o){e.push(r?o.replace(zt,"$1"):n||t)})),e},Ct=Nt(qt,(function(t){return 500===Mt.size&&Mt.clear(),t})),Mt=Ct.cache,Ct),Lt=Bt;function Ft(t,e){for(var n=-1,r=null==t?0:t.length,o=Array(r);++n<r;)o[n]=e(t[n],n,t);return o}var Ut=s?s.prototype:void 0,Rt=Ut?Ut.toString:void 0;function Gt(t){if("string"==typeof t)return t;if(Q(t))return Ft(t,Gt)+"";if(gt(t))return Rt?Rt.call(t):"";var e=t+"";return"0"==e&&1/t==-1/0?"-0":e}function Vt(t){return null==t?"":Gt(t)}function Wt(t,e){return Q(t)?t:Ot(t,e)?[t]:Lt(Vt(t))}function Jt(t){if("string"==typeof t||gt(t))return t;var e=t+"";return"0"==e&&1/t==-1/0?"-0":e}function Xt(t,e){for(var n=0,r=(e=Wt(e,t)).length;null!=t&&n<r;)t=t[Jt(e[n++])];return n&&n==r?t:void 0}function Ht(t,e,n){var r=null==t?void 0:Xt(t,e);return void 0===r?n:r}function Kt(t){var e=this.__data__=new kt(t);this.size=e.size}Kt.prototype.clear=function(){this.__data__=new kt,this.size=0},Kt.prototype.delete=function(t){var e=this.__data__,n=e.delete(t);return this.size=e.size,n},Kt.prototype.get=function(t){return this.__data__.get(t)},Kt.prototype.has=function(t){return this.__data__.has(t)},Kt.prototype.set=function(t,e){var n=this.__data__;if(n instanceof kt){var r=n.__data__;if(!C||r.length<199)return r.push([t,e]),this.size=++n.size,this;n=this.__data__=new Tt(r)}return n.set(t,e),this.size=n.size,this};function Yt(t){var e=-1,n=null==t?0:t.length;for(this.__data__=new Tt;++e<n;)this.add(t[e])}function Zt(t,e){for(var n=-1,r=null==t?0:t.length;++n<r;)if(e(t[n],n,t))return!0;return!1}function Qt(t,e){return t.has(e)}Yt.prototype.add=Yt.prototype.push=function(t){return this.__data__.set(t,"__lodash_hash_undefined__"),this},Yt.prototype.has=function(t){return this.__data__.has(t)};function te(t,e,n,r,o,u){var i=1&n,c=t.length,a=e.length;if(c!=a&&!(i&&a>c))return!1;var f=u.get(t),l=u.get(e);if(f&&l)return f==e&&l==t;var s=-1,v=!0,p=2&n?new Yt:void 0;for(u.set(t,e),u.set(e,t);++s<c;){var h=t[s],y=e[s];if(r)var d=i?r(y,h,s,e,t,u):r(h,y,s,t,e,u);if(void 0!==d){if(d)continue;v=!1;break}if(p){if(!Zt(e,(function(t,e){if(!Qt(p,e)&&(h===t||o(h,t,n,r,u)))return p.push(e)}))){v=!1;break}}else if(h!==y&&!o(h,y,n,r,u)){v=!1;break}}return u.delete(t),u.delete(e),v}var ee=l.Uint8Array;function ne(t){var e=-1,n=Array(t.size);return t.forEach((function(t,r){n[++e]=[r,t]})),n}function re(t){var e=-1,n=Array(t.size);return t.forEach((function(t){n[++e]=t})),n}var oe=s?s.prototype:void 0,ue=oe?oe.valueOf:void 0;function ie(t,e){for(var n=-1,r=e.length,o=t.length;++n<r;)t[o+n]=e[n];return t}function ce(t,e,n){var r=e(t);return Q(t)?r:ie(r,n(t))}function ae(t,e){for(var n=-1,r=null==t?0:t.length,o=0,u=[];++n<r;){var i=t[n];e(i,n,t)&&(u[o++]=i)}return u}function fe(){return[]}var le=Object.prototype.propertyIsEnumerable,se=Object.getOwnPropertySymbols,ve=se?function(t){return null==t?[]:(t=Object(t),ae(se(t),(function(e){return le.call(t,e)})))}:fe;function pe(t){return tt(t)&&"[object Arguments]"==j(t)}var he=Object.prototype,ye=he.hasOwnProperty,de=he.propertyIsEnumerable,be=pe(function(){return arguments}())?pe:function(t){return tt(t)&&ye.call(t,"callee")&&!de.call(t,"callee")},je=be;var ge="object"==typeof exports&&exports&&!exports.nodeType&&exports,_e=ge&&"object"==typeof module&&module&&!module.nodeType&&module,we=_e&&_e.exports===ge?l.Buffer:void 0,Oe=(we?we.isBuffer:void 0)||function(){return!1},me=/^(?:0|[1-9]\d*)$/;function Ae(t,e){var n=typeof t;return!!(e=null==e?9007199254740991:e)&&("number"==n||"symbol"!=n&&me.test(t))&&t>-1&&t%1==0&&t<e}var Se={};function xe(t){return function(e){return t(e)}}Se["[object Float32Array]"]=Se["[object Float64Array]"]=Se["[object Int8Array]"]=Se["[object Int16Array]"]=Se["[object Int32Array]"]=Se["[object Uint8Array]"]=Se["[object Uint8ClampedArray]"]=Se["[object Uint16Array]"]=Se["[object Uint32Array]"]=!0,Se["[object Arguments]"]=Se["[object Array]"]=Se["[object ArrayBuffer]"]=Se["[object Boolean]"]=Se["[object DataView]"]=Se["[object Date]"]=Se["[object Error]"]=Se["[object Function]"]=Se["[object Map]"]=Se["[object Number]"]=Se["[object Object]"]=Se["[object RegExp]"]=Se["[object Set]"]=Se["[object String]"]=Se["[object WeakMap]"]=!1;var Pe="object"==typeof exports&&exports&&!exports.nodeType&&exports,Ee=Pe&&"object"==typeof module&&module&&!module.nodeType&&module,Ie=Ee&&Ee.exports===Pe&&a.process,ke=function(){try{var t=Ee&&Ee.require&&Ee.require("util").types;return t||Ie&&Ie.binding&&Ie.binding("util")}catch(t){}}(),$e=ke&&ke.isTypedArray,Te=$e?xe($e):function(t){return tt(t)&&Y(t.length)&&!!Se[j(t)]},Ne=Object.prototype.hasOwnProperty;function qe(t,e){var n=Q(t),r=!n&&je(t),o=!n&&!r&&Oe(t),u=!n&&!r&&!o&&Te(t),i=n||r||o||u,c=i?function(t,e){for(var n=-1,r=Array(t);++n<t;)r[n]=e(n);return r}(t.length,String):[],a=c.length;for(var f in t)!e&&!Ne.call(t,f)||i&&("length"==f||o&&("offset"==f||"parent"==f)||u&&("buffer"==f||"byteLength"==f||"byteOffset"==f)||Ae(f,a))||c.push(f);return c}function Ce(t){return Z(t)?qe(t):c(t)}function Me(t){return ce(t,Ce,ve)}var De=Object.prototype.hasOwnProperty;var ze="[object Arguments]",Be="[object Array]",Le="[object Object]",Fe=Object.prototype.hasOwnProperty;function Ue(t,e,n,r,o,u){var i=Q(t),c=Q(e),a=i?Be:K(t),f=c?Be:K(e),l=(a=a==ze?Le:a)==Le,s=(f=f==ze?Le:f)==Le,v=a==f;if(v&&Oe(t)){if(!Oe(e))return!1;i=!0,l=!1}if(v&&!l)return u||(u=new Kt),i||Te(t)?te(t,e,n,r,o,u):function(t,e,n,r,o,u,i){switch(n){case"[object DataView]":if(t.byteLength!=e.byteLength||t.byteOffset!=e.byteOffset)return!1;t=t.buffer,e=e.buffer;case"[object ArrayBuffer]":return!(t.byteLength!=e.byteLength||!u(new ee(t),new ee(e)));case"[object Boolean]":case"[object Date]":case"[object Number]":return Pt(+t,+e);case"[object Error]":return t.name==e.name&&t.message==e.message;case"[object RegExp]":case"[object String]":return t==e+"";case"[object Map]":var c=ne;case"[object Set]":var a=1&r;if(c||(c=re),t.size!=e.size&&!a)return!1;var f=i.get(t);if(f)return f==e;r|=2,i.set(t,e);var l=te(c(t),c(e),r,o,u,i);return i.delete(t),l;case"[object Symbol]":if(ue)return ue.call(t)==ue.call(e)}return!1}(t,e,a,n,r,o,u);if(!(1&n)){var p=l&&Fe.call(t,"__wrapped__"),h=s&&Fe.call(e,"__wrapped__");if(p||h){var y=p?t.value():t,d=h?e.value():e;return u||(u=new Kt),o(y,d,n,r,u)}}return!!v&&(u||(u=new Kt),function(t,e,n,r,o,u){var i=1&n,c=Me(t),a=c.length;if(a!=Me(e).length&&!i)return!1;for(var f=a;f--;){var l=c[f];if(!(i?l in e:De.call(e,l)))return!1}var s=u.get(t),v=u.get(e);if(s&&v)return s==e&&v==t;var p=!0;u.set(t,e),u.set(e,t);for(var h=i;++f<a;){var y=t[l=c[f]],d=e[l];if(r)var b=i?r(d,y,l,e,t,u):r(y,d,l,t,e,u);if(!(void 0===b?y===d||o(y,d,n,r,u):b)){p=!1;break}h||(h="constructor"==l)}if(p&&!h){var j=t.constructor,g=e.constructor;j==g||!("constructor"in t)||!("constructor"in e)||"function"==typeof j&&j instanceof j&&"function"==typeof g&&g instanceof g||(p=!1)}return u.delete(t),u.delete(e),p}(t,e,n,r,o,u))}function Re(t,e,n,r,o){return t===e||(null==t||null==e||!tt(t)&&!tt(e)?t!=t&&e!=e:Ue(t,e,n,r,Re,o))}function Ge(t){return t==t&&!g(t)}function Ve(t,e){return function(n){return null!=n&&(n[t]===e&&(void 0!==e||t in Object(n)))}}function We(t){var e=function(t){for(var e=Ce(t),n=e.length;n--;){var r=e[n],o=t[r];e[n]=[r,o,Ge(o)]}return e}(t);return 1==e.length&&e[0][2]?Ve(e[0][0],e[0][1]):function(n){return n===t||function(t,e,n,r){var o=n.length,u=o,i=!r;if(null==t)return!u;for(t=Object(t);o--;){var c=n[o];if(i&&c[2]?c[1]!==t[c[0]]:!(c[0]in t))return!1}for(;++o<u;){var a=(c=n[o])[0],f=t[a],l=c[1];if(i&&c[2]){if(void 0===f&&!(a in t))return!1}else{var s=new Kt;if(r)var v=r(f,l,a,t,e,s);if(!(void 0===v?Re(l,f,3,r,s):v))return!1}}return!0}(n,t,e)}}function Je(t,e){return null!=t&&e in Object(t)}function Xe(t,e){return null!=t&&function(t,e,n){for(var r=-1,o=(e=Wt(e,t)).length,u=!1;++r<o;){var i=Jt(e[r]);if(!(u=null!=t&&n(t,i)))break;t=t[i]}return u||++r!=o?u:!!(o=null==t?0:t.length)&&Y(o)&&Ae(i,o)&&(Q(t)||je(t))}(t,e,Je)}function He(t){return t}function Ke(t){return Ot(t)?et(Jt(t)):function(t){return function(e){return Xt(e,t)}}(t)}function Ye(t){return"function"==typeof t?t:null==t?He:"object"==typeof t?Q(t)?(e=t[0],n=t[1],Ot(e)&&Ge(n)?Ve(Jt(e),n):function(t){var r=Ht(t,e);return void 0===r&&r===n?Xe(t,e):Re(n,r,3)}):We(t):Ke(t);var e,n}var Ze,Qe=function(t,e,n){for(var r=-1,o=Object(t),u=n(t),i=u.length;i--;){var c=u[Ze?i:++r];if(!1===e(o[c],c,o))break}return t};var tn=function(t,e){return function(n,r){if(null==n)return n;if(!Z(n))return t(n,r);for(var o=n.length,u=e?o:-1,i=Object(n);(e?u--:++u<o)&&!1!==r(i[u],u,i););return n}}((function(t,e){return t&&Qe(t,e,Ce)})),en=tn;function nn(t,e){var n=-1,r=Z(t)?Array(t.length):[];return en(t,(function(t,o,u){r[++n]=e(t,o,u)})),r}function rn(t,e){return(Q(t)?Ft:nn)(t,Ye(e))}function on(t,e){var n=[];return en(t,(function(t,r,o){e(t,r,o)&&n.push(t)})),n}function un(t,e){for(var n=-1,r=null==t?0:t.length;++n<r&&!1!==e(t[n],n,t););return t}var cn=function(){try{var t=N(Object,"defineProperty");return t({},"",{}),t}catch(t){}}(),an=cn;function fn(t,e,n){"__proto__"==e&&an?an(t,e,{configurable:!0,enumerable:!0,value:n,writable:!0}):t[e]=n}var ln=Object.prototype.hasOwnProperty;function sn(t,e,n){var r=t[e];ln.call(t,e)&&Pt(r,n)&&(void 0!==n||e in t)||fn(t,e,n)}function vn(t,e,n,r){var o=!n;n||(n={});for(var u=-1,i=e.length;++u<i;){var c=e[u],a=r?r(n[c],t[c],c,n,t):void 0;void 0===a&&(a=t[c]),o?fn(n,c,a):sn(n,c,a)}return n}var pn=Object.prototype.hasOwnProperty;function hn(t){if(!g(t))return function(t){var e=[];if(null!=t)for(var n in Object(t))e.push(n);return e}(t);var e=r(t),n=[];for(var o in t)("constructor"!=o||!e&&pn.call(t,o))&&n.push(o);return n}function yn(t){return Z(t)?qe(t,!0):hn(t)}var dn="object"==typeof exports&&exports&&!exports.nodeType&&exports,bn=dn&&"object"==typeof module&&module&&!module.nodeType&&module,jn=bn&&bn.exports===dn?l.Buffer:void 0,gn=jn?jn.allocUnsafe:void 0;var _n=o(Object.getPrototypeOf,Object),wn=Object.getOwnPropertySymbols?function(t){for(var e=[];t;)ie(e,ve(t)),t=_n(t);return e}:fe,On=wn;function mn(t){return ce(t,yn,On)}var An=Object.prototype.hasOwnProperty;function Sn(t){var e=new t.constructor(t.byteLength);return new ee(e).set(new ee(t)),e}var xn=/\w*$/;var Pn=s?s.prototype:void 0,En=Pn?Pn.valueOf:void 0;function In(t,e,n){var r,o=t.constructor;switch(e){case"[object ArrayBuffer]":return Sn(t);case"[object Boolean]":case"[object Date]":return new o(+t);case"[object DataView]":return function(t,e){var n=e?Sn(t.buffer):t.buffer;return new t.constructor(n,t.byteOffset,t.byteLength)}(t,n);case"[object Float32Array]":case"[object Float64Array]":case"[object Int8Array]":case"[object Int16Array]":case"[object Int32Array]":case"[object Uint8Array]":case"[object Uint8ClampedArray]":case"[object Uint16Array]":case"[object Uint32Array]":return function(t,e){var n=e?Sn(t.buffer):t.buffer;return new t.constructor(n,t.byteOffset,t.length)}(t,n);case"[object Map]":case"[object Set]":return new o;case"[object Number]":case"[object String]":return new o(t);case"[object RegExp]":return function(t){var e=new t.constructor(t.source,xn.exec(t));return e.lastIndex=t.lastIndex,e}(t);case"[object Symbol]":return r=t,En?Object(En.call(r)):{}}}var kn=Object.create,$n=function(){function t(){}return function(e){if(!g(e))return{};if(kn)return kn(e);t.prototype=e;var n=new t;return t.prototype=void 0,n}}(),Tn=$n;var Nn=ke&&ke.isMap,qn=Nn?xe(Nn):function(t){return tt(t)&&"[object Map]"==K(t)};var Cn=ke&&ke.isSet,Mn=Cn?xe(Cn):function(t){return tt(t)&&"[object Set]"==K(t)},Dn="[object Arguments]",zn="[object Function]",Bn="[object Object]",Ln={};function Fn(t,e,n,o,u,i){var c,a=1&e,f=2&e,l=4&e;if(n&&(c=u?n(t,o,u,i):n(t)),void 0!==c)return c;if(!g(t))return t;var s=Q(t);if(s){if(c=function(t){var e=t.length,n=new t.constructor(e);return e&&"string"==typeof t[0]&&An.call(t,"index")&&(n.index=t.index,n.input=t.input),n}(t),!a)return function(t,e){var n=-1,r=t.length;for(e||(e=Array(r));++n<r;)e[n]=t[n];return e}(t,c)}else{var v=K(t),p=v==zn||"[object GeneratorFunction]"==v;if(Oe(t))return function(t,e){if(e)return t.slice();var n=t.length,r=gn?gn(n):new t.constructor(n);return t.copy(r),r}(t,a);if(v==Bn||v==Dn||p&&!u){if(c=f||p?{}:function(t){return"function"!=typeof t.constructor||r(t)?{}:Tn(_n(t))}(t),!a)return f?function(t,e){return vn(t,On(t),e)}(t,function(t,e){return t&&vn(e,yn(e),t)}(c,t)):function(t,e){return vn(t,ve(t),e)}(t,function(t,e){return t&&vn(e,Ce(e),t)}(c,t))}else{if(!Ln[v])return u?t:{};c=In(t,v,a)}}i||(i=new Kt);var h=i.get(t);if(h)return h;i.set(t,c),Mn(t)?t.forEach((function(r){c.add(Fn(r,e,n,r,t,i))})):qn(t)&&t.forEach((function(r,o){c.set(o,Fn(r,e,n,o,t,i))}));var y=s?void 0:(l?f?mn:Me:f?yn:Ce)(t);return un(y||t,(function(r,o){y&&(r=t[o=r]),sn(c,o,Fn(r,e,n,o,t,i))})),c}function Un(t,e,n){var r=-1,o=t.length;e<0&&(e=-e>o?0:o+e),(n=n>o?o:n)<0&&(n+=o),o=e>n?0:n-e>>>0,e>>>=0;for(var u=Array(o);++r<o;)u[r]=t[r+e];return u}Ln[Dn]=Ln["[object Array]"]=Ln["[object ArrayBuffer]"]=Ln["[object DataView]"]=Ln["[object Boolean]"]=Ln["[object Date]"]=Ln["[object Float32Array]"]=Ln["[object Float64Array]"]=Ln["[object Int8Array]"]=Ln["[object Int16Array]"]=Ln["[object Int32Array]"]=Ln["[object Map]"]=Ln["[object Number]"]=Ln[Bn]=Ln["[object RegExp]"]=Ln["[object Set]"]=Ln["[object String]"]=Ln["[object Symbol]"]=Ln["[object Uint8Array]"]=Ln["[object Uint8ClampedArray]"]=Ln["[object Uint16Array]"]=Ln["[object Uint32Array]"]=!0,Ln["[object Error]"]=Ln[zn]=Ln["[object WeakMap]"]=!1;var Rn=Object.prototype.hasOwnProperty;function Gn(t,e){var n=-1,r=(e=Wt(e,t)).length;if(!r)return!0;for(;++n<r;){var o=Jt(e[n]);if("__proto__"===o&&!Rn.call(t,"__proto__"))return!1;if(("constructor"===o||"prototype"===o)&&n<r-1)return!1}var u=function(t,e){return e.length<2?t:Xt(t,Un(e,0,-1))}(t,e);return null==u||delete u[Jt(function(t){var e=null==t?0:t.length;return e?t[e-1]:void 0}(e))]}var Vn=Function.prototype,Wn=Object.prototype,Jn=Vn.toString,Xn=Wn.hasOwnProperty,Hn=Jn.call(Object);function Kn(t){return function(t){if(!tt(t)||"[object Object]"!=j(t))return!1;var e=_n(t);if(null===e)return!0;var n=Xn.call(e,"constructor")&&e.constructor;return"function"==typeof n&&n instanceof n&&Jn.call(n)==Hn}(t)?void 0:t}var Yn=s?s.isConcatSpreadable:void 0;function Zn(t){return Q(t)||je(t)||!!(Yn&&t&&t[Yn])}function Qn(t,e,n,r,o){var u=-1,i=t.length;for(n||(n=Zn),o||(o=[]);++u<i;){var c=t[u];e>0&&n(c)?e>1?Qn(c,e-1,n,r,o):ie(o,c):r||(o[o.length]=c)}return o}function tr(t){return(null==t?0:t.length)?Qn(t,1):[]}var er=Math.max;var nr=an?function(t,e){return an(t,"toString",{configurable:!0,enumerable:!1,value:(n=e,function(){return n}),writable:!0});var n}:He,rr=nr,or=Date.now;var ur=function(t){var e=0,n=0;return function(){var r=or(),o=16-(r-n);if(n=r,o>0){if(++e>=800)return arguments[0]}else e=0;return t.apply(void 0,arguments)}}(rr),ir=ur;var cr=function(t){return ir(function(t,e,n){return e=er(void 0===e?t.length-1:e,0),function(){for(var r=arguments,o=-1,u=er(r.length-e,0),i=Array(u);++o<u;)i[o]=r[e+o];o=-1;for(var c=Array(e+1);++o<e;)c[o]=r[o];return c[e]=n(i),function(t,e,n){switch(n.length){case 0:return t.call(e);case 1:return t.call(e,n[0]);case 2:return t.call(e,n[0],n[1]);case 3:return t.call(e,n[0],n[1],n[2])}return t.apply(e,n)}(t,this,c)}}(t,void 0,tr),t+"")}((function(t,e){var n={};if(null==t)return n;var r=!1;e=Ft(e,(function(e){return e=Wt(e,t),r||(r=e.length>1),e})),vn(t,mn(t),n),r&&(n=Fn(n,7,Kn));for(var o=e.length;o--;)Gn(n,e[o]);return n})),ar=cr,fr=/\s/;var lr=/^\s+/;function sr(t){return t?t.slice(0,function(t){for(var e=t.length;e--&&fr.test(t.charAt(e)););return e}(t)+1).replace(lr,""):t}function vr(t){return t!=t}function pr(t,e,n){return e==e?function(t,e,n){for(var r=n-1,o=t.length;++r<o;)if(t[r]===e)return r;return-1}(t,e,n):function(t,e,n,r){for(var o=t.length,u=n+(r?1:-1);r?u--:++u<o;)if(e(t[u],u,t))return u;return-1}(t,vr,n)}var hr="\\ud800-\\udfff",yr="["+hr+"]",dr="[\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff]",br="\\ud83c[\\udffb-\\udfff]",jr="[^"+hr+"]",gr="(?:\\ud83c[\\udde6-\\uddff]){2}",_r="[\\ud800-\\udbff][\\udc00-\\udfff]",wr="(?:"+dr+"|"+br+")"+"?",Or="[\\ufe0e\\ufe0f]?",mr=Or+wr+("(?:\\u200d(?:"+[jr,gr,_r].join("|")+")"+Or+wr+")*"),Ar="(?:"+[jr+dr+"?",dr,gr,_r,yr].join("|")+")",Sr=RegExp(br+"(?="+br+")|"+Ar+mr,"g");function xr(t){return ot(t)?function(t){return t.match(Sr)||[]}(t):function(t){return t.split("")}(t)}function Pr(t,e,n){if((t=Vt(t))&&(n||void 0===e))return sr(t);if(!t||!(e=Gt(e)))return t;var r=xr(t),o=xr(e),u=function(t,e){for(var n=-1,r=t.length;++n<r&&pr(e,t[n],0)>-1;);return n}(r,o),i=function(t,e){for(var n=t.length;n--&&pr(e,t[n],0)>-1;);return n}(r,o)+1;return function(t,e,n){var r=t.length;return n=void 0===n?r:n,!e&&n>=r?t:Un(t,e,n)}(r,u,i).join("")}function Er(t){return Fn(t,5)}function Ir(t){return"[object String]"===Object.prototype.toString.call(t)}function kr(t){return!(!Ir(t)||""===t)}function $r(t){return"[object Array]"===Object.prototype.toString.call(t)}function Tr(t){return"[object Object]"===Object.prototype.toString.call(t)}function Nr(t){return t!=t}function qr(t){return!!function(t){return"[object Undefined]"===Object.prototype.toString.call(t)}(t)||(!!function(t){return"[object Null]"===Object.prototype.toString.call(t)}(t)||(!!function(t){if(Tr(t)){for(let e in t)return!1;return!0}return!1}(t)||(!!function(t){return!(!Ir(t)||""!==t)}(t)||(!!function(t){return!!$r(t)&&0===t.length}(t)||!!Nr(t)))))}function Cr(t){return!!$r(t)&&(0!==t.length&&(1!==t.length||!qr(t[0])))}function Mr(t){if(Tr(t)){for(let e in t)return!0;return!1}return!1}function Dr(t){let e=!1;if(kr(t))e=!isNaN(Number(t));else if(function(t){return"[object Number]"===Object.prototype.toString.call(t)}(t)){if(Nr(t))return!1;e=!0}return e}var zr=/^[-+]0x[0-9a-f]+$/i,Br=/^0b[01]+$/i,Lr=/^0o[0-7]+$/i,Fr=parseInt;var Ur=1/0;function Rr(t){return t?(t=function(t){if("number"==typeof t)return t;if(gt(t))return NaN;if(g(t)){var e="function"==typeof t.valueOf?t.valueOf():t;t=g(e)?e+"":e}if("string"!=typeof t)return 0===t?t:+t;t=sr(t);var n=Br.test(t);return n||Lr.test(t)?Fr(t.slice(2),n?2:8):zr.test(t)?NaN:+t}(t))===Ur||t===-1/0?17976931348623157e292*(t<0?-1:1):t==t?t:0:0===t?t:0}function Gr(t){var e=Rr(t),n=e%1;return e==e?n?e-n:e:0}function Vr(t){if(!Dr(t))return 0;return Rr(t)}function Wr(t){return!!Dr(t)&&(t=Vr(t),"number"==typeof(e=t)&&e==Gr(e));var e}function Jr(t){return!0===(e=t)||!1===e||tt(e)&&"[object Boolean]"==j(e);var e}function Xr(t){return t&&t.__esModule&&Object.prototype.hasOwnProperty.call(t,"default")?t.default:t}var Hr={exports:{}};!function(t){var e=Object.prototype.hasOwnProperty,n="~";function r(){}function o(t,e,n){this.fn=t,this.context=e,this.once=n||!1}function u(t,e,r,u,i){if("function"!=typeof r)throw new TypeError("The listener must be a function");var c=new o(r,u||t,i),a=n?n+e:e;return t._events[a]?t._events[a].fn?t._events[a]=[t._events[a],c]:t._events[a].push(c):(t._events[a]=c,t._eventsCount++),t}function i(t,e){0==--t._eventsCount?t._events=new r:delete t._events[e]}function c(){this._events=new r,this._eventsCount=0}Object.create&&(r.prototype=Object.create(null),(new r).__proto__||(n=!1)),c.prototype.eventNames=function(){var t,r,o=[];if(0===this._eventsCount)return o;for(r in t=this._events)e.call(t,r)&&o.push(n?r.slice(1):r);return Object.getOwnPropertySymbols?o.concat(Object.getOwnPropertySymbols(t)):o},c.prototype.listeners=function(t){var e=n?n+t:t,r=this._events[e];if(!r)return[];if(r.fn)return[r.fn];for(var o=0,u=r.length,i=new Array(u);o<u;o++)i[o]=r[o].fn;return i},c.prototype.listenerCount=function(t){var e=n?n+t:t,r=this._events[e];return r?r.fn?1:r.length:0},c.prototype.emit=function(t,e,r,o,u,i){var c=n?n+t:t;if(!this._events[c])return!1;var a,f,l=this._events[c],s=arguments.length;if(l.fn){switch(l.once&&this.removeListener(t,l.fn,void 0,!0),s){case 1:return l.fn.call(l.context),!0;case 2:return l.fn.call(l.context,e),!0;case 3:return l.fn.call(l.context,e,r),!0;case 4:return l.fn.call(l.context,e,r,o),!0;case 5:return l.fn.call(l.context,e,r,o,u),!0;case 6:return l.fn.call(l.context,e,r,o,u,i),!0}for(f=1,a=new Array(s-1);f<s;f++)a[f-1]=arguments[f];l.fn.apply(l.context,a)}else{var v,p=l.length;for(f=0;f<p;f++)switch(l[f].once&&this.removeListener(t,l[f].fn,void 0,!0),s){case 1:l[f].fn.call(l[f].context);break;case 2:l[f].fn.call(l[f].context,e);break;case 3:l[f].fn.call(l[f].context,e,r);break;case 4:l[f].fn.call(l[f].context,e,r,o);break;default:if(!a)for(v=1,a=new Array(s-1);v<s;v++)a[v-1]=arguments[v];l[f].fn.apply(l[f].context,a)}}return!0},c.prototype.on=function(t,e,n){return u(this,t,e,n,!1)},c.prototype.once=function(t,e,n){return u(this,t,e,n,!0)},c.prototype.removeListener=function(t,e,r,o){var u=n?n+t:t;if(!this._events[u])return this;if(!e)return i(this,u),this;var c=this._events[u];if(c.fn)c.fn!==e||o&&!c.once||r&&c.context!==r||i(this,u);else{for(var a=0,f=[],l=c.length;a<l;a++)(c[a].fn!==e||o&&!c[a].once||r&&c[a].context!==r)&&f.push(c[a]);f.length?this._events[u]=1===f.length?f[0]:f:i(this,u)}return this},c.prototype.removeAllListeners=function(t){var e;return t?(e=n?n+t:t,this._events[e]&&i(this,e)):(this._events=new r,this._eventsCount=0),this},c.prototype.off=c.prototype.removeListener,c.prototype.addListener=c.prototype.on,c.prefixed=n,c.EventEmitter=c,t.exports=c}(Hr);var Kr=Xr(Hr.exports);function Yr(t,e){var n;return(Q(t)?un:en)(t,"function"==typeof(n=e)?n:He)}function Zr(t){let e=Object.prototype.toString.call(t);return"[object Function]"===e||"[object AsyncFunction]"===e}function Qr(t,e){let n=function(){let t,e,n=new Promise((function(){t=arguments[0],e=arguments[1]}));return n.resolve=t,n.reject=e,n}();if(!$r(t)&&!Tr(t))return n.reject("rs is not an array or object"),n;let r=!1;if(Tr(t)){r=!0;let e=[];Yr(t,((t,n)=>{e.push({k:n,v:t})})),t=e}Zr(e)||(e=function(t){return t});let o=-1,u=[];return t.reduce((function(t,n){return t.then((function(t){u.push(t),o+=1;let i=o,c=n;return r&&(i=n.k,c=n.v),Zr(e)?e(c,i):c}))}),Promise.resolve()).then((function(t){var e,r,o,i;u.push(t),i=null==(e=u)?0:e.length,u=i?Un(e,(r=o||void 0===r?1:Gr(r))<0?0:r,i):[],n.resolve(u)})).catch((function(t){n.reject(t)})),n}return function(){let n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},r=null,o=Ht(n,"url");kr(o)||(o="postgresql://user:password@127.0.0.1:5432");let u=Ht(n,"db");kr(u)||(u="worm");let i=Ht(n,"cl");kr(i)||(i="test");let c=Ht(n,"useCache");Jr(c)||(c=!1);let a=Ht(n,"pk");function f(t){return kr(t)||Dr(t)||Jr(t)||function(t){let e=t;return kr(t)&&(e=new Date(t)),Dr(t)&&(e=Vr(t),e=new Date(t)),e instanceof Date&&!isNaN(e)}(t)}function l(t,e,n){if(!Mr(n))throw new Error(`obj[${n}] is not an effective object`);let r=Object.entries(n).map((t=>{let[n,r]=t,o=function(t){if(Ir(t))return/^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}(?:\.\d+)?(?:Z)?$/.test(t)?"TIMESTAMPTZ":"TEXT";return Dr(t)?Wr(t)?"INTEGER":"DOUBLE PRECISION":Jr(t)?"BOOLEAN":null===t?"TEXT":"JSONB"}(r),u=` ${n} ${o}`;return n===e&&(u=`${u} PRIMARY KEY`),u}));return`CREATE TABLE ${t} (\n${r.join(",\n")}\n);`}function s(t){let e=Ce(t),n=[a],r=(u=t=>!n.includes(t),(Q(o=e)?ae:on)(o,Ye(u)));var o,u;if(0===jt(r))return"";let i=r.map((t=>`${t} = EXCLUDED.${t}`)).join(",\n "),c=`\n ON CONFLICT (${n.join(", ")}) DO UPDATE SET\n ${i}\n `;return c=Pr(c),c}kr(a)||(a="time");let v=`${o}/${u}`,p=new Kr,h=(t,e,n)=>{try{p.emit("change",t,e,n)}catch(t){console.log(t)}},y=(t,e,n)=>{try{p.emit("error",t,e,(t=>{let e=Ht(t,"message");return kr(e)?e:String(t)})(n))}catch(t){console.log(t)}},d=t.Client;function b(){r=null}function j(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return JSON.stringify({find:t,order:e})}function g(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if(Mr(r)){let n=j(t,e);if(function(t,e){return!!Tr(t)&&!(!kr(e)&&!Dr(e))&&e in t}(r,n))return Er(r[n])}return null}function _(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:[];Mr(r)||(r={});let o=j(t,e);r[o]=Er(n)}let w=async function(t,n,r){let o=arguments.length>3&&void 0!==arguments[3]&&arguments[3],u=1;n.forEach((function(t){u=Math.max(u,jt(Ce(t)))}));let c=Math.max(1,Math.floor(65535/u)),f=[];for(let t=0;t<jt(n);t+=c)f.push(n.slice(t,t+c));await t.query("BEGIN");try{let n=0,u=[];for(let c of f){let f=e.sql({type:"insert",table:i,values:c}),l=f.query;r&&(l=`${l} ON CONFLICT (${a}) DO NOTHING`),o&&(l=`${l} RETURNING ${a}`);let s=await t.query(l,f.values);n+=s.rowCount,o&&(u=u.concat(Ht(s,"rows",[])))}return await t.query("COMMIT"),{nIns:n,rows:u}}catch(e){throw await t.query("ROLLBACK").catch((()=>{})),e}};return p.createTable=async function(t,e,n){kr(e)||(e=a);let r=!1,o=null,u=new d({connectionString:v});try{await u.connect()}catch(t){r=!0,o=t,u=null}if(r)return y("createTable",n,o),Promise.reject(o);try{let i=n;if(Cr(i)&&(i=i[0]),!Mr(i))throw new Error(`obj[${i}] is not an effective object`);let c=l(t,e,i);await u.query(c).then((()=>{o={ok:1}})).catch((t=>{r=!0,o=t.message}))}catch(t){r=!0,o=t}finally{await u.end(),u=null}return c&&b(),r?(y("createTable",n,o),Promise.reject(o)):o},p.select=async function(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},r=!1,o=null;if(c){let e=g(t,n);if($r(e))return e}let u=new d({connectionString:v});try{await u.connect()}catch(t){r=!0,o=t,u=null}if(r)return y("select",null,o),Promise.reject(o);try{let a=e.sql({type:"select",table:i,where:t,order:n});o=Ht(await u.query(a.query,a.values),"rows"),$r(o)||(r=!0,o=`can not select by find[${JSON.stringify(t)}]`),c&&!r&&_(t,n,o)}catch(t){r=!0,o=t}finally{await u.end(),u=null}return r?(y("select",null,o),Promise.reject(o)):o},p.selectByPk=async function(t){let n=!1,r=null;if(!f(t))return null;let o={[a]:t};if(c){let t=g(o,{});if($r(t))return Ht(t,0,null)}let u=new d({connectionString:v});try{await u.connect()}catch(t){n=!0,r=t,u=null}if(n)return y("selectByPk",null,r),Promise.reject(r);try{let n=e.sql({type:"select",table:i,where:o}),a=Ht(await u.query(n.query,n.values),"rows");if(!$r(a))throw new Error(`can not select by pk[${t}]`);c&&_(o,{},a);let f=Ht(a,0,null);r=Mr(f)?f:null}catch(t){!function(t){let e=Ht(t,"code");return"22P02"===e||"22007"===e}(t)?(n=!0,r=t):r=null}finally{await u.end(),u=null}return n?(y("selectByPk",null,r),Promise.reject(r)):r},p.insert=async function(t){let e=!1,n=null,r=Ht(arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},"returnList",!1);if(Jr(r)||(r=!1),!Mr(t)&&!Cr(t))return r?[]:{n:0,nInserted:0,ok:1};t=Er(t);let o=new d({connectionString:v});try{await o.connect()}catch(t){e=!0,n=t,o=null}if(e)return y("insert",t,n),Promise.reject(n);try{$r(t)||(t=[t]);let e=jt(t=rn(t,(function(t,e){if(!f(Ht(t,a)))throw new Error(`invalid data[${e}].${a}[${Ht(t,a)}]`);return t}))),{nIns:u,rows:i}=await w(o,t,!0,r);n=r?((t,e)=>{let n=jt(e)>0&&e[0][a]instanceof Date,r=t=>n?new Date(t).toISOString():String(t),o=new Set;e.forEach((function(t){o.add(r(Ht(t,a)))}));let u=new Set;return rn(t,(function(t){let e=r(Ht(t,a)),n=o.has(e)&&!u.has(e);return u.add(e),{n:1,nInserted:n?1:0,ok:1}}))})(t,i):{n:e,nInserted:u,ok:1}}catch(t){e=!0,n=t}finally{await o.end(),o=null}return c&&b(),e||h("insert",t,n),e?(y("insert",t,n),Promise.reject(n)):n},p.insertBulk=async function(t){let e=!1,n=null;if(!Mr(t)&&!Cr(t))return{n:0,nInserted:0,ok:1};t=Er(t);let r=new d({connectionString:v});try{await r.connect()}catch(t){e=!0,n=t,r=null}if(e)return y("insertBulk",t,n),Promise.reject(n);try{$r(t)||(t=[t]);let e=jt(t=rn(t,(function(t,e){if(!f(Ht(t,a)))throw new Error(`invalid data[${e}].${a}[${Ht(t,a)}]`);return t}))),{nIns:o}=await w(r,t,!1);n={n:e,nInserted:o,ok:1}}catch(t){e=!0,n=t}finally{await r.end(),r=null}return c&&b(),e||h("insertBulk",t,n),e?(y("insertBulk",t,n),Promise.reject(n)):n},p.save=async function(t){let n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},r=!1,o=null;if(!Mr(t)&&!Cr(t))return[];t=Er(t);let u=Ht(n,"autoInsert",!0),l=new d({connectionString:v});try{await l.connect()}catch(t){r=!0,o=t,l=null}if(r)return y("save",t,o),Promise.reject(o);try{$r(t)||(t=[t]),t=rn(t,(function(t,e){if(!f(Ht(t,a)))throw new Error(`invalid data[${e}].${a}[${Ht(t,a)}]`);return t})),o=await Qr(t,(async t=>{let n=null,r=Ht(t,a),o=null;{let t=e.sql({type:"select",table:i,where:{[a]:r}}),n=Ht(await l.query(t.query,t.values),"rows");o=Ht(n,0,null)}if(Mr(o)){let e=ar(o,a),r={...e,...ar(t,a)};if(Re(r,e))return n={n:1,nInserted:0,nModified:0,ok:1},n}else if(!u)return n={n:0,nInserted:0,nModified:0,ok:1},n;if(u){let r=e.sql({type:"insert",table:i,values:t}),o=s(t);kr(o)||(o=`ON CONFLICT (${a}) DO NOTHING`);let u=`${r.query} ${o} RETURNING (xmax = 0) AS inserted`;await l.query(u,r.values).then((t=>{let e=Ht(t,"rows");n=Cr(e)?!0===Ht(e,"0.inserted")?{n:1,nInserted:1,nModified:0,ok:1}:{n:1,nInserted:0,nModified:1,ok:1}:{n:1,nInserted:0,nModified:0,ok:1}})).catch((t=>{n={n:1,nInserted:0,nModified:0,ok:0,err:t.message}}))}else{let o=e.sql({type:"update",table:i,updates:ar(t,a),where:{[a]:r}});await l.query(o.query,o.values).then((t=>{n=t.rowCount>0?{n:1,nInserted:0,nModified:1,ok:1}:{n:0,nInserted:0,nModified:0,ok:1}})).catch((t=>{n={n:1,nInserted:0,nModified:0,ok:0,err:t.message}}))}return 1===n.nInserted&&h("insert",[t],n),0===n.ok&&y("save",[t],n.err),n}))}catch(t){r=!0,o=t}finally{await l.end(),l=null}return c&&b(),r||h("save",t,o),r?(y("save",t,o),Promise.reject(o)):o},p.del=async function(t){let n=!1,r=null;if(!Mr(t)&&!Cr(t))return[];t=Er(t);let o=new d({connectionString:v});try{await o.connect()}catch(t){n=!0,r=t,o=null}if(n)return y("del",t,r),Promise.reject(r);try{$r(t)||(t=[t]),r=await Qr(t,(async t=>{let n=null,r=Ht(t,a);if(!f(r))return n={n:0,nDeleted:0,ok:0,err:`invalid ${a}[${r}]`},y("del",[t],n.err),n;let u=e.sql({type:"delete",table:i,where:{[a]:r}});return await o.query(u.query,u.values).then((t=>{n={n:t.rowCount,nDeleted:t.rowCount,ok:1}})).catch((t=>{n={n:1,nDeleted:0,ok:0,err:t.message}})),0===n.ok&&y("del",[t],n.err),n}))}catch(t){n=!0,r=t}finally{await o.end(),o=null}return c&&b(),n||h("del",t,r),n?(y("del",t,r),Promise.reject(r)):r},p.delAll=async function(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},n=!1,r=null,o=new d({connectionString:v});try{await o.connect()}catch(t){n=!0,r=t,o=null}if(n)return y("delAll",null,r),Promise.reject(r);try{let u=e.sql({type:"delete",table:i,where:t});await o.query(u.query,u.values).then((t=>{r={n:t.rowCount,nDeleted:t.rowCount,ok:1}})).catch((t=>{n=!0,r=t.message}))}catch(t){n=!0,r=t}finally{await o.end(),o=null}return c&&b(),n||h("delAll",null,r),n?(y("delAll",null,r),Promise.reject(r)):r},p}}));
7
7
  //# sourceMappingURL=w-orm-postgresql.umd.js.map