@anncic-api/typeorm 3.7.17 → 3.7.19

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.
@@ -1 +1,7 @@
1
- var a13_0x281be2=a13_0x14b2;function a13_0x14b2(_0x29d2e4,_0x581223){var _0x15f3a2=a13_0x45ef();return a13_0x14b2=function(_0x1c3890,_0x37805d){_0x1c3890=_0x1c3890-0xb9;var _0x45ef6d=_0x15f3a2[_0x1c3890];return _0x45ef6d;},a13_0x14b2(_0x29d2e4,_0x581223);}(function(_0x26e44f,_0x316f74){var _0x4e2ccc=a13_0x14b2,_0x20a393=_0x26e44f();while(!![]){try{var _0x41a268=parseInt(_0x4e2ccc(0xc2))/0x1*(parseInt(_0x4e2ccc(0xca))/0x2)+parseInt(_0x4e2ccc(0xbf))/0x3+parseInt(_0x4e2ccc(0xbd))/0x4*(parseInt(_0x4e2ccc(0xbe))/0x5)+-parseInt(_0x4e2ccc(0xb9))/0x6*(parseInt(_0x4e2ccc(0xc7))/0x7)+-parseInt(_0x4e2ccc(0xc6))/0x8+-parseInt(_0x4e2ccc(0xc4))/0x9+parseInt(_0x4e2ccc(0xc5))/0xa;if(_0x41a268===_0x316f74)break;else _0x20a393['push'](_0x20a393['shift']());}catch(_0x32ed95){_0x20a393['push'](_0x20a393['shift']());}}}(a13_0x45ef,0x8674a));function a13_0x45ef(){var _0x11e246=['7442302AMjIfd','toString','__esModule','478nNewVg','6bvKGdI','search','defineProperty','constructor','40WwSKtB','53110QipyHw','275385oaIoVR','apply','sleep','4517nRmCQN','(((.+)+)+)+$','5716656AnqDkz','13198320FpnsYm','2786480IPtKbE'];a13_0x45ef=function(){return _0x11e246;};return a13_0x45ef();}var a13_0x37805d=(function(){var _0x11fa49=!![];return function(_0x240e31,_0x260648){var _0x5a0967=_0x11fa49?function(){var _0x5ed56e=a13_0x14b2;if(_0x260648){var _0x41cc0e=_0x260648[_0x5ed56e(0xc0)](_0x240e31,arguments);return _0x260648=null,_0x41cc0e;}}:function(){};return _0x11fa49=![],_0x5a0967;};}()),a13_0x1c3890=a13_0x37805d(this,function(){var _0x1b7711=a13_0x14b2;return a13_0x1c3890[_0x1b7711(0xc8)]()[_0x1b7711(0xba)](_0x1b7711(0xc3))[_0x1b7711(0xc8)]()[_0x1b7711(0xbc)](a13_0x1c3890)['search'](_0x1b7711(0xc3));});a13_0x1c3890();'use strict';Object[a13_0x281be2(0xbb)](exports,a13_0x281be2(0xc9),{'value':!![]}),exports[a13_0x281be2(0xc1)]=sleep;function sleep(_0x4a73dc=0xc8){return new Promise(_0x3463f8=>setTimeout(_0x3463f8,_0x4a73dc));}
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.sleep = sleep;
4
+ function sleep(time = 200) {
5
+ return new Promise((resolve) => setTimeout(resolve, time));
6
+ }
7
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2xlZXAuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaGVscGVyL3NsZWVwLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsc0JBRUM7QUFGRCxTQUFnQixLQUFLLENBQUMsT0FBYyxHQUFHO0lBQ25DLE9BQU8sSUFBSSxPQUFPLENBQUMsQ0FBQyxPQUFPLEVBQUUsRUFBRSxDQUFDLFVBQVUsQ0FBQyxPQUFPLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQztBQUMvRCxDQUFDIn0=
package/dist/index.js CHANGED
@@ -1 +1,51 @@
1
- var a14_0x326e7e=a14_0xbb4c;(function(_0x1bf7b2,_0x2ed9a5){var _0x4cb4e3=a14_0xbb4c,_0x285d53=_0x1bf7b2();while(!![]){try{var _0x3e26a8=-parseInt(_0x4cb4e3(0x201))/0x1*(parseInt(_0x4cb4e3(0x20c))/0x2)+parseInt(_0x4cb4e3(0x1e3))/0x3*(parseInt(_0x4cb4e3(0x214))/0x4)+parseInt(_0x4cb4e3(0x1e4))/0x5*(parseInt(_0x4cb4e3(0x206))/0x6)+parseInt(_0x4cb4e3(0x1f4))/0x7*(parseInt(_0x4cb4e3(0x1de))/0x8)+-parseInt(_0x4cb4e3(0x1e0))/0x9+parseInt(_0x4cb4e3(0x1dd))/0xa*(parseInt(_0x4cb4e3(0x1e8))/0xb)+-parseInt(_0x4cb4e3(0x200))/0xc*(parseInt(_0x4cb4e3(0x1f9))/0xd);if(_0x3e26a8===_0x2ed9a5)break;else _0x285d53['push'](_0x285d53['shift']());}catch(_0x23747b){_0x285d53['push'](_0x285d53['shift']());}}}(a14_0x3f33,0xab9fe));var a14_0x33cda9=(function(){var _0x136961=!![];return function(_0x507e35,_0x542b4f){var _0x1047df=_0x136961?function(){var _0x2812a4=a14_0xbb4c;if(_0x542b4f){var _0x549683=_0x542b4f[_0x2812a4(0x207)](_0x507e35,arguments);return _0x542b4f=null,_0x549683;}}:function(){};return _0x136961=![],_0x1047df;};}()),a14_0x116c4=a14_0x33cda9(this,function(){var _0x341289=a14_0xbb4c;return a14_0x116c4['toString']()[_0x341289(0x208)]('(((.+)+)+)+$')[_0x341289(0x211)]()['constructor'](a14_0x116c4)[_0x341289(0x208)](_0x341289(0x1f5));});a14_0x116c4();'use strict';var __createBinding=this&&this[a14_0x326e7e(0x1e5)]||(Object[a14_0x326e7e(0x1f0)]?function(_0x119886,_0x1dd52d,_0x38b2cf,_0x5c8f22){var _0x148cee=a14_0x326e7e;if(_0x5c8f22===undefined)_0x5c8f22=_0x38b2cf;var _0x105f69=Object[_0x148cee(0x1f7)](_0x1dd52d,_0x38b2cf);(!_0x105f69||(_0x148cee(0x212)in _0x105f69?!_0x1dd52d['__esModule']:_0x105f69['writable']||_0x105f69[_0x148cee(0x1ec)]))&&(_0x105f69={'enumerable':!![],'get':function(){return _0x1dd52d[_0x38b2cf];}}),Object['defineProperty'](_0x119886,_0x5c8f22,_0x105f69);}:function(_0x249d4c,_0xa84d32,_0x1bc982,_0x254129){if(_0x254129===undefined)_0x254129=_0x1bc982;_0x249d4c[_0x254129]=_0xa84d32[_0x1bc982];}),__exportStar=this&&this[a14_0x326e7e(0x1f8)]||function(_0x240001,_0x406dae){var _0x438e99=a14_0x326e7e;for(var _0x5db606 in _0x240001)if(_0x5db606!==_0x438e99(0x1e7)&&!Object[_0x438e99(0x209)][_0x438e99(0x1fa)][_0x438e99(0x204)](_0x406dae,_0x5db606))__createBinding(_0x406dae,_0x240001,_0x5db606);};Object[a14_0x326e7e(0x20e)](exports,a14_0x326e7e(0x20a),{'value':!![]}),exports['ScopeEnum']=exports[a14_0x326e7e(0x210)]=exports[a14_0x326e7e(0x1ff)]=exports[a14_0x326e7e(0x1eb)]=exports['Configuration']=exports[a14_0x326e7e(0x20d)]=exports[a14_0x326e7e(0x1dc)]=exports[a14_0x326e7e(0x1ee)]=exports[a14_0x326e7e(0x1f6)]=exports['Search']=exports['ProvideSearch']=exports[a14_0x326e7e(0x20b)]=exports[a14_0x326e7e(0x1df)]=exports['ProvideEntity']=exports[a14_0x326e7e(0x1fd)]=exports[a14_0x326e7e(0x1e6)]=exports[a14_0x326e7e(0x20f)]=exports[a14_0x326e7e(0x1e2)]=void 0x0,__exportStar(require(a14_0x326e7e(0x1fb)),exports),__exportStar(require('./interface'),exports);var Repository_1=require('./definition/Repository');Object[a14_0x326e7e(0x20e)](exports,'Repository',{'enumerable':!![],'get':function(){var _0x4abc03=a14_0x326e7e;return Repository_1[_0x4abc03(0x1e2)];}});var VirtualColumn_1=require(a14_0x326e7e(0x1f2));Object[a14_0x326e7e(0x20e)](exports,a14_0x326e7e(0x20f),{'enumerable':!![],'get':function(){var _0x40f3c3=a14_0x326e7e;return VirtualColumn_1[_0x40f3c3(0x20f)];}});var InjectEntity_1=require(a14_0x326e7e(0x1e9));Object[a14_0x326e7e(0x20e)](exports,a14_0x326e7e(0x1e6),{'enumerable':!![],'get':function(){return InjectEntity_1['InjectEntity'];}});function a14_0xbb4c(_0x2920c5,_0xd8afd5){var _0x354af9=a14_0x3f33();return a14_0xbb4c=function(_0x116c4,_0x33cda9){_0x116c4=_0x116c4-0x1db;var _0x3f330b=_0x354af9[_0x116c4];return _0x3f330b;},a14_0xbb4c(_0x2920c5,_0xd8afd5);}var InjectRepository_1=require(a14_0x326e7e(0x203));Object[a14_0x326e7e(0x20e)](exports,a14_0x326e7e(0x1fd),{'enumerable':!![],'get':function(){var _0x229cf8=a14_0x326e7e;return InjectRepository_1[_0x229cf8(0x1fd)];}});var ProvideEntity_1=require(a14_0x326e7e(0x1e1));Object[a14_0x326e7e(0x20e)](exports,a14_0x326e7e(0x1ed),{'enumerable':!![],'get':function(){var _0x5e10e5=a14_0x326e7e;return ProvideEntity_1[_0x5e10e5(0x1ed)];}});var ProvideObserve_1=require('./decorator/ProvideObserve');Object[a14_0x326e7e(0x20e)](exports,'ProvideObserve',{'enumerable':!![],'get':function(){var _0x597bab=a14_0x326e7e;return ProvideObserve_1[_0x597bab(0x1df)];}});var ProvideRepository_1=require(a14_0x326e7e(0x1ef));Object[a14_0x326e7e(0x20e)](exports,a14_0x326e7e(0x20b),{'enumerable':!![],'get':function(){var _0x2674a5=a14_0x326e7e;return ProvideRepository_1[_0x2674a5(0x20b)];}});var ProvideSearch_1=require(a14_0x326e7e(0x1ea));Object[a14_0x326e7e(0x20e)](exports,a14_0x326e7e(0x1f1),{'enumerable':!![],'get':function(){var _0x25104b=a14_0x326e7e;return ProvideSearch_1[_0x25104b(0x1f1)];}}),Object[a14_0x326e7e(0x20e)](exports,a14_0x326e7e(0x213),{'enumerable':!![],'get':function(){var _0x287075=a14_0x326e7e;return ProvideSearch_1[_0x287075(0x213)];}}),Object[a14_0x326e7e(0x20e)](exports,a14_0x326e7e(0x1f6),{'enumerable':!![],'get':function(){var _0x4d9f3e=a14_0x326e7e;return ProvideSearch_1[_0x4d9f3e(0x1f6)];}});var ProvideSharding_1=require(a14_0x326e7e(0x1fe));Object['defineProperty'](exports,a14_0x326e7e(0x1ee),{'enumerable':!![],'get':function(){var _0x5241e4=a14_0x326e7e;return ProvideSharding_1[_0x5241e4(0x1ee)];}});var getProvideObserve_1=require(a14_0x326e7e(0x202));Object[a14_0x326e7e(0x20e)](exports,a14_0x326e7e(0x1dc),{'enumerable':!![],'get':function(){return getProvideObserve_1['getProvideObserve'];}});var getDataSourceEntity_1=require('./helper/getDataSourceEntity');Object[a14_0x326e7e(0x20e)](exports,a14_0x326e7e(0x20d),{'enumerable':!![],'get':function(){return getDataSourceEntity_1['getDataSourceEntity'];}});var configuration_1=require(a14_0x326e7e(0x1f3));function a14_0x3f33(){var _0xfc2537=['./decorator/ProvideSharding','Inject','48qUGDXG','1150932svsLvg','./helper/getProvideObserve','./decorator/InjectRepository','call','Configuration','330906IaspqA','apply','search','prototype','__esModule','ProvideRepository','2kZKpjf','getDataSourceEntity','defineProperty','VirtualColumn','Scope','toString','get','Search','4BSGqKG','ScopeEnum','getProvideObserve','147540yczJQb','190728KpiOpD','ProvideObserve','5172057XZvIIa','./decorator/ProvideEntity','Repository','3268077YQJxtI','55Jdkmkt','__createBinding','InjectEntity','default','1012daWPQX','./decorator/InjectEntity','./decorator/ProvideSearch','Provide','configurable','ProvideEntity','ProvideSharding','./decorator/ProvideRepository','create','ProvideSearch','./decorator/VirtualColumn','./configuration','49XdzFoY','(((.+)+)+)+$','SearchScope','getOwnPropertyDescriptor','__exportStar','2573012FjyIXr','hasOwnProperty','typeorm','CustomConfiguration','InjectRepository'];a14_0x3f33=function(){return _0xfc2537;};return a14_0x3f33();}Object[a14_0x326e7e(0x20e)](exports,a14_0x326e7e(0x205),{'enumerable':!![],'get':function(){var _0x448446=a14_0x326e7e;return configuration_1[_0x448446(0x1fc)];}});var core_1=require('@midwayjs/core');Object[a14_0x326e7e(0x20e)](exports,a14_0x326e7e(0x1eb),{'enumerable':!![],'get':function(){return core_1['Provide'];}}),Object[a14_0x326e7e(0x20e)](exports,a14_0x326e7e(0x1ff),{'enumerable':!![],'get':function(){var _0x2f5cca=a14_0x326e7e;return core_1[_0x2f5cca(0x1ff)];}}),Object['defineProperty'](exports,a14_0x326e7e(0x210),{'enumerable':!![],'get':function(){var _0xde589f=a14_0x326e7e;return core_1[_0xde589f(0x210)];}}),Object[a14_0x326e7e(0x20e)](exports,a14_0x326e7e(0x1db),{'enumerable':!![],'get':function(){var _0xba1932=a14_0x326e7e;return core_1[_0xba1932(0x1db)];}});
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ exports.ScopeEnum = exports.Scope = exports.Inject = exports.Provide = exports.Configuration = exports.getDataSourceEntity = exports.getProvideObserve = exports.ProvideSharding = exports.SearchScope = exports.Search = exports.ProvideSearch = exports.ProvideRepository = exports.ProvideObserve = exports.ProvideEntity = exports.InjectRepository = exports.InjectEntity = exports.VirtualColumn = exports.Repository = void 0;
18
+ __exportStar(require("typeorm"), exports);
19
+ __exportStar(require("./interface"), exports);
20
+ var Repository_1 = require("./definition/Repository");
21
+ Object.defineProperty(exports, "Repository", { enumerable: true, get: function () { return Repository_1.Repository; } });
22
+ var VirtualColumn_1 = require("./decorator/VirtualColumn");
23
+ Object.defineProperty(exports, "VirtualColumn", { enumerable: true, get: function () { return VirtualColumn_1.VirtualColumn; } });
24
+ var InjectEntity_1 = require("./decorator/InjectEntity");
25
+ Object.defineProperty(exports, "InjectEntity", { enumerable: true, get: function () { return InjectEntity_1.InjectEntity; } });
26
+ var InjectRepository_1 = require("./decorator/InjectRepository");
27
+ Object.defineProperty(exports, "InjectRepository", { enumerable: true, get: function () { return InjectRepository_1.InjectRepository; } });
28
+ var ProvideEntity_1 = require("./decorator/ProvideEntity");
29
+ Object.defineProperty(exports, "ProvideEntity", { enumerable: true, get: function () { return ProvideEntity_1.ProvideEntity; } });
30
+ var ProvideObserve_1 = require("./decorator/ProvideObserve");
31
+ Object.defineProperty(exports, "ProvideObserve", { enumerable: true, get: function () { return ProvideObserve_1.ProvideObserve; } });
32
+ var ProvideRepository_1 = require("./decorator/ProvideRepository");
33
+ Object.defineProperty(exports, "ProvideRepository", { enumerable: true, get: function () { return ProvideRepository_1.ProvideRepository; } });
34
+ var ProvideSearch_1 = require("./decorator/ProvideSearch");
35
+ Object.defineProperty(exports, "ProvideSearch", { enumerable: true, get: function () { return ProvideSearch_1.ProvideSearch; } });
36
+ Object.defineProperty(exports, "Search", { enumerable: true, get: function () { return ProvideSearch_1.Search; } });
37
+ Object.defineProperty(exports, "SearchScope", { enumerable: true, get: function () { return ProvideSearch_1.SearchScope; } });
38
+ var ProvideSharding_1 = require("./decorator/ProvideSharding");
39
+ Object.defineProperty(exports, "ProvideSharding", { enumerable: true, get: function () { return ProvideSharding_1.ProvideSharding; } });
40
+ var getProvideObserve_1 = require("./helper/getProvideObserve");
41
+ Object.defineProperty(exports, "getProvideObserve", { enumerable: true, get: function () { return getProvideObserve_1.getProvideObserve; } });
42
+ var getDataSourceEntity_1 = require("./helper/getDataSourceEntity");
43
+ Object.defineProperty(exports, "getDataSourceEntity", { enumerable: true, get: function () { return getDataSourceEntity_1.getDataSourceEntity; } });
44
+ var configuration_1 = require("./configuration");
45
+ Object.defineProperty(exports, "Configuration", { enumerable: true, get: function () { return configuration_1.CustomConfiguration; } });
46
+ var core_1 = require("@midwayjs/core");
47
+ Object.defineProperty(exports, "Provide", { enumerable: true, get: function () { return core_1.Provide; } });
48
+ Object.defineProperty(exports, "Inject", { enumerable: true, get: function () { return core_1.Inject; } });
49
+ Object.defineProperty(exports, "Scope", { enumerable: true, get: function () { return core_1.Scope; } });
50
+ Object.defineProperty(exports, "ScopeEnum", { enumerable: true, get: function () { return core_1.ScopeEnum; } });
51
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFDQSwwQ0FBd0I7QUFDeEIsOENBQTRCO0FBQzVCLHNEQUFxRDtBQUE1Qyx3R0FBQSxVQUFVLE9BQUE7QUFDbkIsMkRBQTBEO0FBQWpELDhHQUFBLGFBQWEsT0FBQTtBQUN0Qix5REFBd0Q7QUFBL0MsNEdBQUEsWUFBWSxPQUFBO0FBQ3JCLGlFQUFnRTtBQUF2RCxvSEFBQSxnQkFBZ0IsT0FBQTtBQUN6QiwyREFBMEQ7QUFBakQsOEdBQUEsYUFBYSxPQUFBO0FBQ3RCLDZEQUE0RDtBQUFuRCxnSEFBQSxjQUFjLE9BQUE7QUFDdkIsbUVBQWtFO0FBQXpELHNIQUFBLGlCQUFpQixPQUFBO0FBQzFCLDJEQUErRTtBQUF0RSw4R0FBQSxhQUFhLE9BQUE7QUFBRSx1R0FBQSxNQUFNLE9BQUE7QUFBRSw0R0FBQSxXQUFXLE9BQUE7QUFDM0MsK0RBQThEO0FBQXJELGtIQUFBLGVBQWUsT0FBQTtBQUV4QixnRUFBK0Q7QUFBdEQsc0hBQUEsaUJBQWlCLE9BQUE7QUFDMUIsb0VBQW1FO0FBQTFELDBIQUFBLG1CQUFtQixPQUFBO0FBRTVCLGlEQUF1RTtBQUE5RCw4R0FBQSxtQkFBbUIsT0FBaUI7QUFDN0MsdUNBQW1FO0FBQTFELCtGQUFBLE9BQU8sT0FBQTtBQUFFLDhGQUFBLE1BQU0sT0FBQTtBQUFFLDZGQUFBLEtBQUssT0FBQTtBQUFFLGlHQUFBLFNBQVMsT0FBQSJ9
package/dist/interface.js CHANGED
@@ -1 +1,326 @@
1
- const a15_0x1d8c3d=a15_0x648e;(function(_0x2c471b,_0x2020f3){const _0x30fa54=a15_0x648e,_0x329120=_0x2c471b();while(!![]){try{const _0x32975b=parseInt(_0x30fa54(0x88))/0x1+-parseInt(_0x30fa54(0xa3))/0x2+parseInt(_0x30fa54(0xd9))/0x3*(-parseInt(_0x30fa54(0xab))/0x4)+-parseInt(_0x30fa54(0xf3))/0x5*(parseInt(_0x30fa54(0x82))/0x6)+parseInt(_0x30fa54(0xe0))/0x7+-parseInt(_0x30fa54(0x7f))/0x8+parseInt(_0x30fa54(0xde))/0x9;if(_0x32975b===_0x2020f3)break;else _0x329120['push'](_0x329120['shift']());}catch(_0x5665a8){_0x329120['push'](_0x329120['shift']());}}}(a15_0x16f0,0x9c25e));const a15_0x265f4b=(function(){let _0x5dc14d=!![];return function(_0x41bc74,_0x10f316){const _0x36b34a=_0x5dc14d?function(){const _0x31c15c=a15_0x648e;if(_0x10f316){const _0x4899b8=_0x10f316[_0x31c15c(0xe6)](_0x41bc74,arguments);return _0x10f316=null,_0x4899b8;}}:function(){};return _0x5dc14d=![],_0x36b34a;};}()),a15_0x14d54d=a15_0x265f4b(this,function(){const _0x5e028a=a15_0x648e;return a15_0x14d54d['toString']()[_0x5e028a(0x6f)]('(((.+)+)+)+$')[_0x5e028a(0xf7)]()[_0x5e028a(0xb8)](a15_0x14d54d)[_0x5e028a(0x6f)](_0x5e028a(0x95));});a15_0x14d54d();'use strict';Object['defineProperty'](exports,'__esModule',{'value':!![]}),exports[a15_0x1d8c3d(0xb4)]=exports['clearTableExistsCache']=exports['ShardingStrategy']=exports[a15_0x1d8c3d(0xf9)]=exports[a15_0x1d8c3d(0xed)]=exports[a15_0x1d8c3d(0x8c)]=exports['MODEL_KEY']=exports['REPOSITORY_OBSERVE_KEY']=exports[a15_0x1d8c3d(0xd2)]=exports[a15_0x1d8c3d(0xea)]=exports['ENTIFY_MODULE_SOURCE']=exports['ENTIFY_MODULE']=exports[a15_0x1d8c3d(0x6e)]=void 0x0;const stream_1=require(a15_0x1d8c3d(0x8e)),core_1=require(a15_0x1d8c3d(0xe8)),typeorm_1=require(a15_0x1d8c3d(0xda)),DriverUtils_1=require(a15_0x1d8c3d(0x9c)),typeorm_2=require(a15_0x1d8c3d(0xda)),typeorm_3=require(a15_0x1d8c3d(0xda));require('./interfaceSharding');const sleep_1=require(a15_0x1d8c3d(0xf5));exports[a15_0x1d8c3d(0x6e)]=a15_0x1d8c3d(0xe9),exports['ENTIFY_MODULE']='decorator:anncic-api:typeorm:entify:module',exports[a15_0x1d8c3d(0xb0)]=a15_0x1d8c3d(0xfc),exports[a15_0x1d8c3d(0xea)]=a15_0x1d8c3d(0x9a),exports[a15_0x1d8c3d(0xd2)]='decorator:anncic-api:typeorm:repository',exports['REPOSITORY_OBSERVE_KEY']=a15_0x1d8c3d(0xa9),exports['MODEL_KEY']=a15_0x1d8c3d(0xce),exports[a15_0x1d8c3d(0x8c)]=a15_0x1d8c3d(0xfa),exports[a15_0x1d8c3d(0xed)]=a15_0x1d8c3d(0xbe),exports[a15_0x1d8c3d(0xf9)]=a15_0x1d8c3d(0xc2);function a15_0x16f0(){const _0x263b5c=['map','driver','cacheId','(((.+)+)+)+$','./interfaceSharding','rows','isArray','number','decorator:anncic-api:typeorm:entify:sharding','find','typeorm/driver/DriverUtils','data','default','countsize','end','getManyExplainCount','\x20=\x20:','1320782vYOQIo','clearTableExistsCache','Readable','expressionMap','isMySQLFamily','object','decorator:anncic-api:typeorm:repository:observe','getExplainCount','4DlXtqe','setFindOptions','listenerCount','push','withDeleted','ENTIFY_MODULE_SOURCE','function','queryResultCache','length','SearchPaginate','boolean','cacheDuration','ignoreErrors','constructor','size','ShardingStrategy','clone','abs','findOption','decorator:anncic-api:typeorm:model:search:scope','referencedColumnName','destroy','query','decorator:anncic-api:typeorm:entity:virtual:column','records','queryEntity','getOne','limit','duration','immediately','getRawAndEntities','offset','updateDateColumn','getFromCache','one-to-one','decorator:anncic-api:typeorm:model','getMetadataArgsStorage','_appends','queryRunner','REPOSITORY_KEY','startsWith','resolve','findOneOrFail','type','versionColumn','isExpired','3699099qGHUdp','typeorm','getCount','target','hasOwnProperty','30161385tjfrrD','sleep','2232566FHtcpf','connection','joinAppends','getEntityValue','relations','string','apply','getQueryAndParameters','@midwayjs/core','decorator:anncic-api:typeorm:entify','ENTIFY_SHARDING_KEY','relationType','then','MODEL_SEARCH_SCOPE_KEY','stringify','relation','getClassMetadata','alwaysEnabled','storeInCache','345865CIeXFd','delay','./helper/sleep','EntityManager','toString','defineProperty','ENTITY_VIRTUAL_COLUMN_KEY','decorator:anncic-api:typeorm:model:search','many-to-many','decorator:anncic-api:typeorm:entify:module:source','_joinAppendsResolve','lockMode','emit','createQueryBuilder','OptimisticLockVersionMismatchError','skip','lockVersion','EntityNotFoundError','ENTIFY_KEY','search','chunk','release','many-to-one','mainAlias','name','getManyAndCount','splice','SelectQueryBuilder','andWhere','EXPLAIN\x20','propertyName','one-to-many','findOne','take','\x20--\x20PARAMETERS:\x20','7773000xjwGnX','all','parse','42vINRee','joinColumns','optimistic','prototype','joinColumn','cache','318639wVTdsM','getTime','getMany','alias','MODEL_SEARCH_KEY','reject','stream','resume','substring','metadata'];a15_0x16f0=function(){return _0x263b5c;};return a15_0x16f0();}var interfaceSharding_1=require(a15_0x1d8c3d(0x96));Object[a15_0x1d8c3d(0xf8)](exports,a15_0x1d8c3d(0xba),{'enumerable':!![],'get':function(){const _0x1c313f=a15_0x1d8c3d;return interfaceSharding_1[_0x1c313f(0xba)];}}),Object[a15_0x1d8c3d(0xf8)](exports,'clearTableExistsCache',{'enumerable':!![],'get':function(){const _0x5a3b4b=a15_0x1d8c3d;return interfaceSharding_1[_0x5a3b4b(0xa4)];}});class SearchPaginate{}function a15_0x648e(_0x4463f5,_0x8da7b7){const _0x319e5d=a15_0x16f0();return a15_0x648e=function(_0x14d54d,_0x265f4b){_0x14d54d=_0x14d54d-0x68;let _0x16f07e=_0x319e5d[_0x14d54d];return _0x16f07e;},a15_0x648e(_0x4463f5,_0x8da7b7);}exports[a15_0x1d8c3d(0xb4)]=SearchPaginate,typeorm_2[a15_0x1d8c3d(0x77)]['prototype'][a15_0x1d8c3d(0x70)]=function(_0x30a1b0=0x64,_0x5e9227){const _0x2e0427=a15_0x1d8c3d;let _0x419f58=0x1,_0x4219c6=0x64,_0x2e898c=0x0,_0x428011=0x0,_0x378c54=![],_0x33c922=!![];if(typeof _0x30a1b0=='number'||typeof _0x30a1b0=='string')_0x4219c6=parseInt(''+_0x30a1b0);else _0x30a1b0&&((_0x30a1b0===null||_0x30a1b0===void 0x0?void 0x0:_0x30a1b0[_0x2e0427(0xb9)])&&(_0x4219c6=parseInt(''+_0x30a1b0['size'])),(_0x30a1b0===null||_0x30a1b0===void 0x0?void 0x0:_0x30a1b0[_0x2e0427(0x9f)])&&(_0x2e898c=parseInt(''+_0x30a1b0[_0x2e0427(0x9f)])),(_0x30a1b0===null||_0x30a1b0===void 0x0?void 0x0:_0x30a1b0['delay'])&&(_0x378c54=typeof _0x30a1b0[_0x2e0427(0xf4)]=='boolean'?0x1f4:parseInt(''+_0x30a1b0[_0x2e0427(0xf4)])),typeof(_0x30a1b0===null||_0x30a1b0===void 0x0?void 0x0:_0x30a1b0[_0x2e0427(0xc8)])==_0x2e0427(0xb5)&&(_0x33c922=_0x30a1b0[_0x2e0427(0xc8)]));_0x2e898c>0x0&&_0x2e898c>_0x4219c6&&(_0x4219c6=_0x2e898c);const _0xe53505=this,_0x27480c=new stream_1[(_0x2e0427(0xa5))]({'objectMode':!![],'highWaterMark':_0x4219c6*0x2,async 'read'(){const _0x348e62=_0x2e0427;try{if(_0x2e898c>0x0&&_0x2e898c<=_0x428011)this[_0x348e62(0xad)](_0x348e62(0x9d))>0x0?this[_0x348e62(0xae)](null):this[_0x348e62(0x68)]('end');else{const _0x49915e=_0xe53505[_0x348e62(0xbb)]()['limit'](Math[_0x348e62(0xbc)](_0x4219c6))[_0x348e62(0xca)]((Math[_0x348e62(0xbc)](_0x419f58)-0x1)*Math[_0x348e62(0xbc)](_0x4219c6)),_0xe4eefe=await _0x49915e['getMany']();if((_0xe4eefe===null||_0xe4eefe===void 0x0?void 0x0:_0xe4eefe[_0x348e62(0xb3)])>0x0){_0x2e898c>0x0&&_0x428011+_0xe4eefe[_0x348e62(0xb3)]>_0x2e898c&&_0xe4eefe[_0x348e62(0x76)](0x0,_0x2e898c-(_0x428011+_0xe4eefe['length']-_0x2e898c));if(typeof _0x5e9227=='function'){const _0x3facbe=await _0x5e9227(_0xe4eefe,_0x419f58,_0x49915e[_0x348e62(0xe7)]());_0x3facbe&&Array[_0x348e62(0x98)](_0x3facbe)?(_0x3facbe===null||_0x3facbe===void 0x0?void 0x0:_0x3facbe['length'])>0x0&&(_0x428011+=_0x3facbe[_0x348e62(0xb3)],_0x2e898c>0x0&&_0x428011>_0x2e898c&&_0x3facbe[_0x348e62(0x76)](0x0,_0x2e898c-(_0x428011-_0x2e898c)),this[_0x348e62(0xae)](_0x3facbe),_0x3facbe[_0x348e62(0xb3)]=0x0):(_0x428011+=_0xe4eefe['length'],_0x2e898c>0x0&&_0x428011>_0x2e898c&&_0xe4eefe[_0x348e62(0x76)](0x0,_0x2e898c-(_0x428011-_0x2e898c)),this[_0x348e62(0xae)](_0xe4eefe));}else _0x428011+=_0xe4eefe[_0x348e62(0xb3)],_0x2e898c>0x0&&_0x428011>_0x2e898c&&_0xe4eefe['splice'](0x0,_0x2e898c-(_0x428011-_0x2e898c)),this[_0x348e62(0xae)](_0xe4eefe);_0xe4eefe[_0x348e62(0xb3)]=0x0,_0x419f58++,_0x378c54&&typeof _0x378c54==_0x348e62(0x99)&&await(0x0,sleep_1[_0x348e62(0xdf)])(_0x378c54);}else this[_0x348e62(0xad)](_0x348e62(0x9d))>0x0?this[_0x348e62(0xae)](null):this['emit'](_0x348e62(0xa0));}}catch(_0x3c5609){this[_0x348e62(0xc0)](_0x3c5609);}}});return _0x27480c['on'](_0x2e0427(0xa0),()=>_0x27480c['destroy']()),_0x27480c['on']('close',()=>_0x27480c[_0x2e0427(0xc0)]()),_0x33c922&&_0x27480c[_0x2e0427(0x8f)](),_0x27480c;},typeorm_3[a15_0x1d8c3d(0xf6)]['prototype'][a15_0x1d8c3d(0xd5)]=async function(_0x3812c8,_0x4007cd){const _0x5cd762=a15_0x1d8c3d;return this[_0x5cd762(0x7c)](_0x3812c8,_0x4007cd)[_0x5cd762(0xec)](_0x29287c=>{const _0x578280=_0x5cd762;if(_0x29287c===null||_0x29287c===undefined)return Promise[_0x578280(0x8d)](new typeorm_3[(_0x578280(0x6d))](_0x3812c8,_0x4007cd));return Promise[_0x578280(0xd4)](_0x29287c);});},typeorm_3[a15_0x1d8c3d(0xf6)][a15_0x1d8c3d(0x85)]['findOneByOrFail']=async function(_0xc8847e,_0x377c55){const _0x145bc1=a15_0x1d8c3d;return this['findOneBy'](_0xc8847e,_0x377c55)[_0x145bc1(0xec)](_0x3771a8=>{const _0xfb6087=_0x145bc1;if(_0x3771a8===null||_0x3771a8===undefined)return Promise[_0xfb6087(0x8d)](new typeorm_3[(_0xfb6087(0x6d))](_0xc8847e,_0x377c55));return Promise[_0xfb6087(0xd4)](_0x3771a8);});},typeorm_2[a15_0x1d8c3d(0x77)][a15_0x1d8c3d(0x85)][a15_0x1d8c3d(0xc5)]=async function(){const _0x470b52=a15_0x1d8c3d;var _0x4822cd;const {entities:_0x2e0a70,raw:_0x8eb5e9}=await this[_0x470b52(0xc9)]();if(_0x2e0a70[0x0]&&this['expressionMap'][_0x470b52(0xfe)]===_0x470b52(0x84)&&this[_0x470b52(0xa6)][_0x470b52(0x6c)]){const _0x2de1eb=this[_0x470b52(0xa6)]['mainAlias']['metadata'];if(this['expressionMap'][_0x470b52(0x6c)]instanceof Date){const _0x25d125=_0x2de1eb[_0x470b52(0xcb)][_0x470b52(0xe3)](_0x2e0a70[0x0]);if(_0x25d125[_0x470b52(0x89)]()!==this[_0x470b52(0xa6)]['lockVersion'][_0x470b52(0x89)]())throw new typeorm_2[(_0x470b52(0x6a))](_0x2de1eb[_0x470b52(0x74)],this[_0x470b52(0xa6)][_0x470b52(0x6c)],_0x25d125);}else{const _0x691200=_0x2de1eb[_0x470b52(0xd7)][_0x470b52(0xe3)](_0x2e0a70[0x0]);if(_0x691200!==this[_0x470b52(0xa6)][_0x470b52(0x6c)])throw new typeorm_2[(_0x470b52(0x6a))](_0x2de1eb[_0x470b52(0x74)],this[_0x470b52(0xa6)]['lockVersion'],_0x691200);}}if(_0x2e0a70[0x0]&&_0x8eb5e9[0x0]){const _0x2e0542=(0x0,core_1[_0x470b52(0xf0)])(exports[_0x470b52(0xf9)],_0x2e0a70[0x0]);for(const _0xbead54 in _0x2e0542){_0x8eb5e9[0x0][_0x470b52(0xdd)](_0xbead54)&&(_0x2e0a70[0x0][_0xbead54]=_0x8eb5e9[0x0][_0xbead54]||((_0x4822cd=_0x2e0542[_0xbead54])===null||_0x4822cd===void 0x0?void 0x0:_0x4822cd[_0x470b52(0x9e)])||'');}}return _0x2e0a70[0x0]&&typeof this[_0x470b52(0xfd)]==_0x470b52(0xb1)&&(_0x2e0a70[0x0]=await this[_0x470b52(0xfd)](_0x2e0a70[0x0])),_0x2e0a70[0x0]||null;},typeorm_2[a15_0x1d8c3d(0x77)][a15_0x1d8c3d(0x85)][a15_0x1d8c3d(0x8a)]=async function(){const _0x43a318=a15_0x1d8c3d;if(this['expressionMap'][_0x43a318(0xfe)]==='optimistic')throw new typeorm_2['OptimisticLockCanNotBeUsedError']();const {entities:_0x9ffcd1,raw:_0x168651}=await this[_0x43a318(0xc9)]();return await Promise[_0x43a318(0x80)](_0x9ffcd1[_0x43a318(0x92)](async(_0x371d73,_0x162644)=>{const _0x48bd01=_0x43a318;var _0x1c54d7;const _0x1c5f89=(0x0,core_1['getClassMetadata'])(exports[_0x48bd01(0xf9)],_0x371d73)||{};for(const _0x145499 in _0x1c5f89){_0x168651[_0x162644]&&_0x168651[_0x162644][_0x48bd01(0xdd)](_0x145499)&&(_0x371d73[_0x145499]=_0x168651[_0x162644][_0x145499]||((_0x1c54d7=_0x1c5f89[_0x145499])===null||_0x1c54d7===void 0x0?void 0x0:_0x1c54d7[_0x48bd01(0x9e)])||'');}return _0x371d73&&typeof this[_0x48bd01(0xfd)]==_0x48bd01(0xb1)&&(_0x371d73=await this[_0x48bd01(0xfd)](_0x371d73)),_0x371d73;}));},typeorm_2['SelectQueryBuilder'][a15_0x1d8c3d(0x85)][a15_0x1d8c3d(0x75)]=async function(){const _0x1a8954=a15_0x1d8c3d;return[await this['getMany'](),await this[_0x1a8954(0xdb)]()];},typeorm_2[a15_0x1d8c3d(0x77)][a15_0x1d8c3d(0x85)][a15_0x1d8c3d(0xa1)]=async function(){const _0x2c8257=a15_0x1d8c3d;return[await this[_0x2c8257(0x8a)](),await this[_0x2c8257(0xaa)]()];},typeorm_2[a15_0x1d8c3d(0x77)][a15_0x1d8c3d(0x85)][a15_0x1d8c3d(0xaa)]=async function(){const _0x41a835=a15_0x1d8c3d;var _0x458a51,_0x530174,_0x2c821a,_0x3195e3;if(DriverUtils_1['DriverUtils'][_0x41a835(0xa7)](this[_0x41a835(0xe1)][_0x41a835(0x93)])){const _0x11c4e3=this['obtainQueryRunner']();try{this[_0x41a835(0xa6)][_0x41a835(0xc4)]=![];const [_0x42281f,_0x2f7ab9]=this['clone']()['offset'](undefined)[_0x41a835(0xc6)](undefined)[_0x41a835(0x6b)](undefined)[_0x41a835(0x7d)](undefined)[_0x41a835(0xe7)](),_0x3d072e=_0x41a835(0x79)+_0x42281f+_0x41a835(0x7e)+JSON[_0x41a835(0xee)](_0x2f7ab9),_0x2bf93c=typeof this[_0x41a835(0xe1)]['options'][_0x41a835(0x87)]===_0x41a835(0xa8)?this['connection']['options'][_0x41a835(0x87)]:{},_0x33d0d5=_0x2bf93c[_0x41a835(0xf1)]&&this['expressionMap'][_0x41a835(0x87)]||this[_0x41a835(0xa6)]['cache'];let _0x303ed8=undefined,_0x26622e=![];if(this[_0x41a835(0xe1)][_0x41a835(0xb2)]&&_0x33d0d5)try{_0x303ed8=await this['connection'][_0x41a835(0xb2)][_0x41a835(0xcc)]({'query':_0x3d072e,'identifier':this[_0x41a835(0xa6)][_0x41a835(0x94)],'duration':this['expressionMap'][_0x41a835(0xb6)]||_0x2bf93c[_0x41a835(0xc7)]||0x3e8},_0x11c4e3);if(_0x303ed8&&!this['connection'][_0x41a835(0xb2)][_0x41a835(0xd8)](_0x303ed8))return parseInt(((_0x530174=(_0x458a51=JSON[_0x41a835(0x81)](_0x303ed8['result']))===null||_0x458a51===void 0x0?void 0x0:_0x458a51[0x0])===null||_0x530174===void 0x0?void 0x0:_0x530174[_0x41a835(0x97)])||'0');}catch(_0x4cbfd3){if(!_0x2bf93c[_0x41a835(0xb7)])throw _0x4cbfd3;_0x26622e=!![];}const _0x41bc9e=await _0x11c4e3[_0x41a835(0xc1)]('EXPLAIN\x20'+_0x42281f,_0x2f7ab9,!![]);if(!_0x26622e&&this['connection']['queryResultCache']&&_0x33d0d5)try{await this[_0x41a835(0xe1)][_0x41a835(0xb2)][_0x41a835(0xf2)]({'query':_0x3d072e,'time':new Date()[_0x41a835(0x89)](),'identifier':this[_0x41a835(0xa6)][_0x41a835(0x94)],'duration':this[_0x41a835(0xa6)]['cacheDuration']||_0x2bf93c[_0x41a835(0xc7)]||0x3e8,'result':JSON['stringify'](_0x41bc9e[_0x41a835(0xc3)])},_0x303ed8,_0x11c4e3);}catch(_0x1e04c2){if(!_0x2bf93c['ignoreErrors'])throw _0x1e04c2;}return parseInt(((_0x3195e3=(_0x2c821a=_0x41bc9e['records'])===null||_0x2c821a===void 0x0?void 0x0:_0x2c821a[0x0])===null||_0x3195e3===void 0x0?void 0x0:_0x3195e3[_0x41a835(0x97)])||'0');}catch(_0x463e66){throw _0x463e66;}finally{_0x11c4e3!==this[_0x41a835(0xd1)]&&await _0x11c4e3[_0x41a835(0x71)]();}}else return this[_0x41a835(0xdb)]();},typeorm_2['SelectQueryBuilder'][a15_0x1d8c3d(0x85)][a15_0x1d8c3d(0xe2)]=function(_0x6f0a30,_0x5a76e4){const _0xa87a12=a15_0x1d8c3d;_0x6f0a30[_0xa87a12(0xd3)](this[_0xa87a12(0x8b)]+'.')&&(_0x6f0a30=_0x6f0a30[_0xa87a12(0x90)]((this[_0xa87a12(0x8b)]+'.')[_0xa87a12(0xb3)]));const _0x197ed1=typeof _0x5a76e4==_0xa87a12(0xe5)?{'alias':_0x5a76e4}:_0x5a76e4,_0x323d2d=this[_0xa87a12(0xa6)][_0xa87a12(0x73)][_0xa87a12(0x91)],_0x378ed6=(0x0,typeorm_1[_0xa87a12(0xcf)])(),_0xe0566d=_0x378ed6[_0xa87a12(0xe4)][_0xa87a12(0x9b)](_0x2f011c=>_0x2f011c[_0xa87a12(0xdc)]==_0x323d2d[_0xa87a12(0xdc)]&&_0x2f011c['propertyName']==_0x6f0a30);if((_0x323d2d===null||_0x323d2d===void 0x0?void 0x0:_0x323d2d[_0xa87a12(0xdc)])&&(_0xe0566d===null||_0xe0566d===void 0x0?void 0x0:_0xe0566d['propertyName'])){!this[_0xa87a12(0xd0)]&&(this[_0xa87a12(0xd0)]=[]);if(_0xe0566d[_0xa87a12(0xeb)]==_0xa87a12(0x72)||_0xe0566d[_0xa87a12(0xeb)]=='one-to-one'){const _0x3fa6c6=_0x378ed6[_0xa87a12(0x83)][_0xa87a12(0x9b)](_0x111ad7=>_0x111ad7[_0xa87a12(0xdc)]==_0x323d2d['target']&&_0x111ad7[_0xa87a12(0x7a)]==_0x6f0a30);_0xe0566d['propertyName']==(_0x3fa6c6===null||_0x3fa6c6===void 0x0?void 0x0:_0x3fa6c6[_0xa87a12(0x7a)])&&(!this[_0xa87a12(0xd0)]['find'](_0x3e1951=>_0x3e1951[_0xa87a12(0x8b)]==((_0x197ed1===null||_0x197ed1===void 0x0?void 0x0:_0x197ed1['alias'])||_0x6f0a30))&&this[_0xa87a12(0xd0)][_0xa87a12(0xae)]({'alias':(_0x197ed1===null||_0x197ed1===void 0x0?void 0x0:_0x197ed1[_0xa87a12(0x8b)])||_0x6f0a30,'relation':_0xe0566d,'joinColumn':_0x3fa6c6,'findOption':(_0x197ed1===null||_0x197ed1===void 0x0?void 0x0:_0x197ed1[_0xa87a12(0xbd)])||undefined}));}else{if(_0xe0566d[_0xa87a12(0xeb)]==_0xa87a12(0x7b))try{const _0x1250c5=_0x378ed6[_0xa87a12(0xe4)][_0xa87a12(0x9b)](_0x24166c=>_0x24166c['target']==_0xe0566d[_0xa87a12(0xd6)](_0xe0566d[_0xa87a12(0x7a)])&&_0x24166c[_0xa87a12(0xd6)](_0x24166c[_0xa87a12(0xeb)])==_0x323d2d[_0xa87a12(0xdc)]),_0x3a12c5=_0x378ed6['joinColumns'][_0xa87a12(0x9b)](_0x547917=>_0x547917[_0xa87a12(0xdc)]==_0x1250c5[_0xa87a12(0xdc)]&&_0x547917['propertyName']==_0x1250c5[_0xa87a12(0x7a)]);_0x1250c5['propertyName']==(_0x3a12c5===null||_0x3a12c5===void 0x0?void 0x0:_0x3a12c5[_0xa87a12(0x7a)])&&(!this[_0xa87a12(0xd0)][_0xa87a12(0x9b)](_0x2752da=>_0x2752da[_0xa87a12(0x8b)]==((_0x197ed1===null||_0x197ed1===void 0x0?void 0x0:_0x197ed1[_0xa87a12(0x8b)])||_0x6f0a30))&&this[_0xa87a12(0xd0)][_0xa87a12(0xae)]({'alias':(_0x197ed1===null||_0x197ed1===void 0x0?void 0x0:_0x197ed1[_0xa87a12(0x8b)])||_0x6f0a30,'relation':_0xe0566d,'joinColumn':_0x3a12c5,'findOption':(_0x197ed1===null||_0x197ed1===void 0x0?void 0x0:_0x197ed1[_0xa87a12(0xbd)])||undefined}));}catch(_0x770a9){}}}return this;},typeorm_2[a15_0x1d8c3d(0x77)][a15_0x1d8c3d(0x85)]['_joinAppendsResolve']=async function(_0x16a253){const _0x234f7f=a15_0x1d8c3d;var _0x1d1e74,_0x1e8716,_0x3697e8,_0x30e2fa;for(const _0x21498d of this[_0x234f7f(0xd0)]||[]){if(!((_0x1d1e74=_0x21498d===null||_0x21498d===void 0x0?void 0x0:_0x21498d[_0x234f7f(0xef)])===null||_0x1d1e74===void 0x0?void 0x0:_0x1d1e74[_0x234f7f(0xeb)]))continue;if(!((_0x1e8716=_0x21498d===null||_0x21498d===void 0x0?void 0x0:_0x21498d[_0x234f7f(0x86)])===null||_0x1e8716===void 0x0?void 0x0:_0x1e8716[_0x234f7f(0x74)])||!((_0x3697e8=_0x21498d===null||_0x21498d===void 0x0?void 0x0:_0x21498d[_0x234f7f(0x86)])===null||_0x3697e8===void 0x0?void 0x0:_0x3697e8[_0x234f7f(0xbf)]))continue;if(!_0x16a253[_0x21498d['joinColumn'][_0x234f7f(0xbf)]])continue;if(typeof((_0x30e2fa=_0x21498d===null||_0x21498d===void 0x0?void 0x0:_0x21498d['relation'])===null||_0x30e2fa===void 0x0?void 0x0:_0x30e2fa['type'])!=_0x234f7f(0xb1))continue;if(_0x21498d['relation'][_0x234f7f(0xeb)]==_0x234f7f(0x72)||_0x21498d['relation'][_0x234f7f(0xeb)]==_0x234f7f(0xcd)){const _0x28cbb6=this['connection'][_0x234f7f(0x69)](_0x21498d['relation'][_0x234f7f(0xd6)](_0x21498d['relation'][_0x234f7f(0xeb)]),_0x21498d[_0x234f7f(0xef)][_0x234f7f(0x7a)])[_0x234f7f(0xaf)]();(_0x21498d===null||_0x21498d===void 0x0?void 0x0:_0x21498d['findOption'])&&_0x28cbb6[_0x234f7f(0xac)]({..._0x21498d[_0x234f7f(0xbd)],'skip':0x0,'take':0x1}),_0x16a253[_0x21498d[_0x234f7f(0x8b)]]=await _0x28cbb6[_0x234f7f(0x78)](_0x28cbb6[_0x234f7f(0x8b)]+'.'+_0x21498d[_0x234f7f(0x86)]['referencedColumnName']+_0x234f7f(0xa2)+_0x21498d['joinColumn'][_0x234f7f(0xbf)],{[_0x21498d['joinColumn'][_0x234f7f(0xbf)]]:_0x16a253[_0x21498d['joinColumn']['name']]})['getOne']();}else{if(_0x21498d[_0x234f7f(0xef)][_0x234f7f(0xeb)]=='one-to-many'||_0x21498d[_0x234f7f(0xef)][_0x234f7f(0xeb)]==_0x234f7f(0xfb)){const _0x5ada12=this[_0x234f7f(0xe1)][_0x234f7f(0x69)](_0x21498d['relation']['type'](_0x21498d[_0x234f7f(0xef)][_0x234f7f(0xeb)]),_0x21498d[_0x234f7f(0xef)]['propertyName'])[_0x234f7f(0xaf)]();(_0x21498d===null||_0x21498d===void 0x0?void 0x0:_0x21498d['findOption'])&&_0x5ada12[_0x234f7f(0xac)]({'skip':0x0,'take':0xa,..._0x21498d['findOption']}),_0x16a253[_0x21498d[_0x234f7f(0x8b)]]=await _0x5ada12['andWhere'](_0x5ada12[_0x234f7f(0x8b)]+'.'+_0x21498d[_0x234f7f(0x86)][_0x234f7f(0x74)]+_0x234f7f(0xa2)+_0x21498d[_0x234f7f(0x86)]['name'],{[_0x21498d[_0x234f7f(0x86)]['name']]:_0x16a253[_0x21498d[_0x234f7f(0x86)][_0x234f7f(0xbf)]]})[_0x234f7f(0x8a)]();}}}return _0x16a253;};
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SearchPaginate = exports.clearTableExistsCache = exports.ShardingStrategy = exports.ENTITY_VIRTUAL_COLUMN_KEY = exports.MODEL_SEARCH_SCOPE_KEY = exports.MODEL_SEARCH_KEY = exports.MODEL_KEY = exports.REPOSITORY_OBSERVE_KEY = exports.REPOSITORY_KEY = exports.ENTIFY_SHARDING_KEY = exports.ENTIFY_MODULE_SOURCE = exports.ENTIFY_MODULE = exports.ENTIFY_KEY = void 0;
4
+ const stream_1 = require("stream");
5
+ const core_1 = require("@midwayjs/core");
6
+ const typeorm_1 = require("typeorm");
7
+ const DriverUtils_1 = require("typeorm/driver/DriverUtils");
8
+ const typeorm_2 = require("typeorm");
9
+ const typeorm_3 = require("typeorm");
10
+ require("./interfaceSharding");
11
+ const sleep_1 = require("./helper/sleep");
12
+ exports.ENTIFY_KEY = 'decorator:anncic-api:typeorm:entify';
13
+ exports.ENTIFY_MODULE = 'decorator:anncic-api:typeorm:entify:module';
14
+ exports.ENTIFY_MODULE_SOURCE = 'decorator:anncic-api:typeorm:entify:module:source';
15
+ exports.ENTIFY_SHARDING_KEY = 'decorator:anncic-api:typeorm:entify:sharding';
16
+ exports.REPOSITORY_KEY = 'decorator:anncic-api:typeorm:repository';
17
+ exports.REPOSITORY_OBSERVE_KEY = 'decorator:anncic-api:typeorm:repository:observe';
18
+ exports.MODEL_KEY = 'decorator:anncic-api:typeorm:model';
19
+ exports.MODEL_SEARCH_KEY = 'decorator:anncic-api:typeorm:model:search';
20
+ exports.MODEL_SEARCH_SCOPE_KEY = 'decorator:anncic-api:typeorm:model:search:scope';
21
+ exports.ENTITY_VIRTUAL_COLUMN_KEY = 'decorator:anncic-api:typeorm:entity:virtual:column';
22
+ var interfaceSharding_1 = require("./interfaceSharding");
23
+ Object.defineProperty(exports, "ShardingStrategy", { enumerable: true, get: function () { return interfaceSharding_1.ShardingStrategy; } });
24
+ Object.defineProperty(exports, "clearTableExistsCache", { enumerable: true, get: function () { return interfaceSharding_1.clearTableExistsCache; } });
25
+ class SearchPaginate {
26
+ }
27
+ exports.SearchPaginate = SearchPaginate;
28
+ typeorm_2.SelectQueryBuilder.prototype.chunk = function (optionORsize = 100, callback) {
29
+ let pageindex = 1, pagesize = 100, countsize = 0, countchunksize = 0, optionDelay = false, optionImmediately = true;
30
+ if (typeof (optionORsize) == 'number' || typeof (optionORsize) == 'string') {
31
+ pagesize = parseInt(`${optionORsize}`);
32
+ }
33
+ else if (optionORsize) {
34
+ if (optionORsize === null || optionORsize === void 0 ? void 0 : optionORsize.size) {
35
+ pagesize = parseInt(`${optionORsize.size}`);
36
+ }
37
+ if (optionORsize === null || optionORsize === void 0 ? void 0 : optionORsize.countsize) {
38
+ countsize = parseInt(`${optionORsize.countsize}`);
39
+ }
40
+ if (optionORsize === null || optionORsize === void 0 ? void 0 : optionORsize.delay) {
41
+ optionDelay = typeof (optionORsize.delay) == 'boolean' ? 500 : parseInt(`${optionORsize.delay}`);
42
+ }
43
+ if (typeof (optionORsize === null || optionORsize === void 0 ? void 0 : optionORsize.immediately) == 'boolean') {
44
+ optionImmediately = optionORsize.immediately;
45
+ }
46
+ }
47
+ if (countsize > 0 && countsize > pagesize) {
48
+ pagesize = countsize;
49
+ }
50
+ const ChunkQueryBuilder = this, ChunkReadable = new stream_1.Readable({
51
+ objectMode: true,
52
+ highWaterMark: pagesize * 2,
53
+ async read() {
54
+ try {
55
+ if (countsize > 0 && countsize <= countchunksize) {
56
+ if (this.listenerCount('data') > 0) {
57
+ this.push(null);
58
+ }
59
+ else {
60
+ this.emit('end');
61
+ }
62
+ }
63
+ else {
64
+ const ChunkQuery = ChunkQueryBuilder.clone().limit(Math.abs(pagesize)).offset((Math.abs(pageindex) - 1) * Math.abs(pagesize)), tmpModels = await ChunkQuery.getMany();
65
+ if ((tmpModels === null || tmpModels === void 0 ? void 0 : tmpModels.length) > 0) {
66
+ if (countsize > 0 && (countchunksize + tmpModels.length) > countsize) {
67
+ tmpModels.splice(0, countsize - ((countchunksize + tmpModels.length) - countsize));
68
+ }
69
+ if (typeof (callback) == 'function') {
70
+ const callbackModels = await callback(tmpModels, pageindex, ChunkQuery.getQueryAndParameters());
71
+ if (callbackModels && Array.isArray(callbackModels)) {
72
+ if ((callbackModels === null || callbackModels === void 0 ? void 0 : callbackModels.length) > 0) {
73
+ countchunksize += callbackModels.length;
74
+ if (countsize > 0 && countchunksize > countsize) {
75
+ callbackModels.splice(0, countsize - (countchunksize - countsize));
76
+ }
77
+ this.push(callbackModels), callbackModels.length = 0;
78
+ }
79
+ }
80
+ else {
81
+ countchunksize += tmpModels.length;
82
+ if (countsize > 0 && countchunksize > countsize) {
83
+ tmpModels.splice(0, countsize - (countchunksize - countsize));
84
+ }
85
+ this.push(tmpModels);
86
+ }
87
+ }
88
+ else {
89
+ countchunksize += tmpModels.length;
90
+ if (countsize > 0 && countchunksize > countsize) {
91
+ tmpModels.splice(0, countsize - (countchunksize - countsize));
92
+ }
93
+ this.push(tmpModels);
94
+ }
95
+ tmpModels.length = 0, pageindex++;
96
+ if (optionDelay && typeof (optionDelay) == 'number') {
97
+ await (0, sleep_1.sleep)(optionDelay);
98
+ }
99
+ }
100
+ else {
101
+ if (this.listenerCount('data') > 0) {
102
+ this.push(null);
103
+ }
104
+ else {
105
+ this.emit('end');
106
+ }
107
+ }
108
+ }
109
+ }
110
+ catch (error) {
111
+ this.destroy(error);
112
+ }
113
+ }
114
+ });
115
+ ChunkReadable.on("end", () => ChunkReadable.destroy());
116
+ ChunkReadable.on("close", () => ChunkReadable.destroy());
117
+ if (optionImmediately) {
118
+ ChunkReadable.resume();
119
+ }
120
+ return ChunkReadable;
121
+ };
122
+ typeorm_3.EntityManager.prototype.findOneOrFail = async function (entityClass, options) {
123
+ return this.findOne(entityClass, options).then(value => {
124
+ if (value === null || value === undefined) {
125
+ return Promise.reject(new typeorm_3.EntityNotFoundError(entityClass, options));
126
+ }
127
+ return Promise.resolve(value);
128
+ });
129
+ };
130
+ typeorm_3.EntityManager.prototype.findOneByOrFail = async function (entityClass, where) {
131
+ return this.findOneBy(entityClass, where).then(value => {
132
+ if (value === null || value === undefined) {
133
+ return Promise.reject(new typeorm_3.EntityNotFoundError(entityClass, where));
134
+ }
135
+ return Promise.resolve(value);
136
+ });
137
+ };
138
+ typeorm_2.SelectQueryBuilder.prototype.getOne = async function () {
139
+ var _a;
140
+ const { entities, raw } = await this.getRawAndEntities();
141
+ if (entities[0] && this.expressionMap.lockMode === "optimistic" && this.expressionMap.lockVersion) {
142
+ const metadata = this.expressionMap.mainAlias.metadata;
143
+ if (this.expressionMap.lockVersion instanceof Date) {
144
+ const actualVersion = metadata.updateDateColumn.getEntityValue(entities[0]);
145
+ if (actualVersion.getTime() !== this.expressionMap.lockVersion.getTime()) {
146
+ throw new typeorm_2.OptimisticLockVersionMismatchError(metadata.name, this.expressionMap.lockVersion, actualVersion);
147
+ }
148
+ }
149
+ else {
150
+ const actualVersion = metadata.versionColumn.getEntityValue(entities[0]);
151
+ if (actualVersion !== this.expressionMap.lockVersion) {
152
+ throw new typeorm_2.OptimisticLockVersionMismatchError(metadata.name, this.expressionMap.lockVersion, actualVersion);
153
+ }
154
+ }
155
+ }
156
+ if (entities[0] && raw[0]) {
157
+ const metaInfo = (0, core_1.getClassMetadata)(exports.ENTITY_VIRTUAL_COLUMN_KEY, entities[0]);
158
+ for (const propertyKey in metaInfo) {
159
+ if (raw[0].hasOwnProperty(propertyKey)) {
160
+ entities[0][propertyKey] = raw[0][propertyKey] || ((_a = metaInfo[propertyKey]) === null || _a === void 0 ? void 0 : _a.default) || '';
161
+ }
162
+ }
163
+ }
164
+ if (entities[0] && typeof (this._joinAppendsResolve) == 'function') {
165
+ entities[0] = await this._joinAppendsResolve(entities[0]);
166
+ }
167
+ return entities[0] || null;
168
+ };
169
+ typeorm_2.SelectQueryBuilder.prototype.getMany = async function () {
170
+ if (this.expressionMap.lockMode === "optimistic") {
171
+ throw new typeorm_2.OptimisticLockCanNotBeUsedError();
172
+ }
173
+ const { entities, raw } = await this.getRawAndEntities();
174
+ return await Promise.all(entities.map(async (entitiy, index) => {
175
+ var _a;
176
+ const metaInfo = (0, core_1.getClassMetadata)(exports.ENTITY_VIRTUAL_COLUMN_KEY, entitiy) || {};
177
+ for (const propertyKey in metaInfo) {
178
+ if (raw[index] && raw[index].hasOwnProperty(propertyKey)) {
179
+ entitiy[propertyKey] = raw[index][propertyKey] || ((_a = metaInfo[propertyKey]) === null || _a === void 0 ? void 0 : _a.default) || '';
180
+ }
181
+ }
182
+ if (entitiy && typeof (this._joinAppendsResolve) == 'function') {
183
+ entitiy = await this._joinAppendsResolve(entitiy);
184
+ }
185
+ return entitiy;
186
+ }));
187
+ };
188
+ typeorm_2.SelectQueryBuilder.prototype.getManyAndCount = async function () {
189
+ return [await this.getMany(), await this.getCount()];
190
+ };
191
+ typeorm_2.SelectQueryBuilder.prototype.getManyExplainCount = async function () {
192
+ return [await this.getMany(), await this.getExplainCount()];
193
+ };
194
+ typeorm_2.SelectQueryBuilder.prototype.getExplainCount = async function () {
195
+ var _a, _b, _c, _d;
196
+ if (DriverUtils_1.DriverUtils.isMySQLFamily(this.connection.driver)) {
197
+ const queryRunner = this.obtainQueryRunner();
198
+ try {
199
+ this.expressionMap.queryEntity = false;
200
+ const [sql, parameters] = this.clone().offset(undefined).limit(undefined).skip(undefined).take(undefined).getQueryAndParameters();
201
+ const queryId = "EXPLAIN " + sql + " -- PARAMETERS: " + JSON.stringify(parameters);
202
+ const cacheOptions = typeof this.connection.options.cache === "object" ? this.connection.options.cache : {};
203
+ const isCachingEnabled = (cacheOptions.alwaysEnabled && this.expressionMap.cache) || this.expressionMap.cache;
204
+ let savedQueryResultCacheOptions = undefined, cacheError = false;
205
+ if (this.connection.queryResultCache && isCachingEnabled) {
206
+ try {
207
+ savedQueryResultCacheOptions = await this.connection.queryResultCache.getFromCache({
208
+ query: queryId,
209
+ identifier: this.expressionMap.cacheId,
210
+ duration: this.expressionMap.cacheDuration || cacheOptions.duration || 1000,
211
+ }, queryRunner);
212
+ if (savedQueryResultCacheOptions && !this.connection.queryResultCache.isExpired(savedQueryResultCacheOptions)) {
213
+ return parseInt(((_b = (_a = (JSON.parse(savedQueryResultCacheOptions.result))) === null || _a === void 0 ? void 0 : _a[0]) === null || _b === void 0 ? void 0 : _b.rows) || '0');
214
+ }
215
+ }
216
+ catch (error) {
217
+ if (!cacheOptions.ignoreErrors) {
218
+ throw error;
219
+ }
220
+ cacheError = true;
221
+ }
222
+ }
223
+ const results = await queryRunner.query(`EXPLAIN ${sql}`, parameters, true);
224
+ if (!cacheError && this.connection.queryResultCache && isCachingEnabled) {
225
+ try {
226
+ await this.connection.queryResultCache.storeInCache({
227
+ query: queryId,
228
+ time: new Date().getTime(),
229
+ identifier: this.expressionMap.cacheId,
230
+ duration: this.expressionMap.cacheDuration || cacheOptions.duration || 1000,
231
+ result: JSON.stringify(results.records),
232
+ }, savedQueryResultCacheOptions, queryRunner);
233
+ }
234
+ catch (error) {
235
+ if (!cacheOptions.ignoreErrors) {
236
+ throw error;
237
+ }
238
+ }
239
+ }
240
+ return parseInt(((_d = (_c = results.records) === null || _c === void 0 ? void 0 : _c[0]) === null || _d === void 0 ? void 0 : _d.rows) || '0');
241
+ }
242
+ catch (error) {
243
+ throw error;
244
+ }
245
+ finally {
246
+ if (queryRunner !== this.queryRunner) {
247
+ await queryRunner.release();
248
+ }
249
+ }
250
+ }
251
+ else {
252
+ return this.getCount();
253
+ }
254
+ };
255
+ typeorm_2.SelectQueryBuilder.prototype.joinAppends = function (append, option) {
256
+ if (append.startsWith(`${this.alias}.`)) {
257
+ append = append.substring(`${this.alias}.`.length);
258
+ }
259
+ const options = typeof (option) == 'string' ? { alias: option } : option;
260
+ const metadata = this.expressionMap.mainAlias.metadata, metastorage = (0, typeorm_1.getMetadataArgsStorage)();
261
+ const relation = metastorage.relations.find(item => item.target == metadata.target && item.propertyName == append);
262
+ if ((metadata === null || metadata === void 0 ? void 0 : metadata.target) && (relation === null || relation === void 0 ? void 0 : relation.propertyName)) {
263
+ if (!this._appends) {
264
+ this._appends = [];
265
+ }
266
+ if (relation.relationType == 'many-to-one' || relation.relationType == 'one-to-one') {
267
+ const joinColumn = metastorage.joinColumns.find(item => item.target == metadata.target && item.propertyName == append);
268
+ if (relation.propertyName == (joinColumn === null || joinColumn === void 0 ? void 0 : joinColumn.propertyName)) {
269
+ if (!this._appends.find(item => item.alias == ((options === null || options === void 0 ? void 0 : options.alias) || append))) {
270
+ this._appends.push({ alias: (options === null || options === void 0 ? void 0 : options.alias) || append, relation, joinColumn, findOption: (options === null || options === void 0 ? void 0 : options.findOption) || undefined });
271
+ }
272
+ }
273
+ }
274
+ else if (relation.relationType == 'one-to-many') {
275
+ try {
276
+ const joinRelation = metastorage.relations.find(item => item.target == relation.type(relation.propertyName) && item.type(item.relationType) == metadata.target);
277
+ const joinRelationColumn = metastorage.joinColumns.find(item => item.target == joinRelation.target && item.propertyName == joinRelation.propertyName);
278
+ if (joinRelation.propertyName == (joinRelationColumn === null || joinRelationColumn === void 0 ? void 0 : joinRelationColumn.propertyName)) {
279
+ if (!this._appends.find(item => item.alias == ((options === null || options === void 0 ? void 0 : options.alias) || append))) {
280
+ this._appends.push({ alias: (options === null || options === void 0 ? void 0 : options.alias) || append, relation, joinColumn: joinRelationColumn, findOption: (options === null || options === void 0 ? void 0 : options.findOption) || undefined });
281
+ }
282
+ }
283
+ }
284
+ catch (error) {
285
+ }
286
+ }
287
+ }
288
+ return this;
289
+ };
290
+ typeorm_2.SelectQueryBuilder.prototype._joinAppendsResolve = async function (entityData) {
291
+ var _a, _b, _c, _d;
292
+ for (const append of (this._appends || [])) {
293
+ if (!((_a = append === null || append === void 0 ? void 0 : append.relation) === null || _a === void 0 ? void 0 : _a.relationType)) {
294
+ continue;
295
+ }
296
+ if (!((_b = append === null || append === void 0 ? void 0 : append.joinColumn) === null || _b === void 0 ? void 0 : _b.name) || !((_c = append === null || append === void 0 ? void 0 : append.joinColumn) === null || _c === void 0 ? void 0 : _c.referencedColumnName)) {
297
+ continue;
298
+ }
299
+ if (!entityData[append.joinColumn.referencedColumnName]) {
300
+ continue;
301
+ }
302
+ if (typeof ((_d = append === null || append === void 0 ? void 0 : append.relation) === null || _d === void 0 ? void 0 : _d.type) != 'function') {
303
+ continue;
304
+ }
305
+ if (append.relation.relationType == 'many-to-one' || append.relation.relationType == 'one-to-one') {
306
+ const QueryBuilder = this.connection.createQueryBuilder(append.relation.type(append.relation.relationType), append.relation.propertyName).withDeleted();
307
+ if (append === null || append === void 0 ? void 0 : append.findOption) {
308
+ QueryBuilder.setFindOptions({ ...append.findOption, skip: 0, take: 1 });
309
+ }
310
+ entityData[append.alias] = await QueryBuilder.andWhere(`${QueryBuilder.alias}.${append.joinColumn.referencedColumnName} = :${append.joinColumn.referencedColumnName}`, {
311
+ [append.joinColumn.referencedColumnName]: entityData[append.joinColumn.name]
312
+ }).getOne();
313
+ }
314
+ else if (append.relation.relationType == 'one-to-many' || append.relation.relationType == 'many-to-many') {
315
+ const QueryBuilder = this.connection.createQueryBuilder(append.relation.type(append.relation.relationType), append.relation.propertyName).withDeleted();
316
+ if (append === null || append === void 0 ? void 0 : append.findOption) {
317
+ QueryBuilder.setFindOptions({ skip: 0, take: 10, ...append.findOption });
318
+ }
319
+ entityData[append.alias] = await QueryBuilder.andWhere(`${QueryBuilder.alias}.${append.joinColumn.name} = :${append.joinColumn.name}`, {
320
+ [append.joinColumn.name]: entityData[append.joinColumn.referencedColumnName]
321
+ }).getMany();
322
+ }
323
+ }
324
+ return entityData;
325
+ };
326
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW50ZXJmYWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL2ludGVyZmFjZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxtQ0FBa0M7QUFDbEMseUNBQWtEO0FBQ2xELHFDQUFrRjtBQUlsRiw0REFBeUQ7QUFDekQscUNBQWtIO0FBQ2xILHFDQUFnTDtBQUdoTCwrQkFBNkI7QUFFN0IsMENBQXVDO0FBSTFCLFFBQUEsVUFBVSxHQUFHLHFDQUFxQyxDQUFDO0FBQ25ELFFBQUEsYUFBYSxHQUFHLDRDQUE0QyxDQUFDO0FBQzdELFFBQUEsb0JBQW9CLEdBQUcsbURBQW1ELENBQUM7QUFDM0UsUUFBQSxtQkFBbUIsR0FBRyw4Q0FBOEMsQ0FBQztBQUNyRSxRQUFBLGNBQWMsR0FBRyx5Q0FBeUMsQ0FBQztBQUMzRCxRQUFBLHNCQUFzQixHQUFHLGlEQUFpRCxDQUFDO0FBQzNFLFFBQUEsU0FBUyxHQUFHLG9DQUFvQyxDQUFDO0FBQ2pELFFBQUEsZ0JBQWdCLEdBQUcsMkNBQTJDLENBQUM7QUFDL0QsUUFBQSxzQkFBc0IsR0FBRyxpREFBaUQsQ0FBQztBQUMzRSxRQUFBLHlCQUF5QixHQUFHLG9EQUFvRCxDQUFDO0FBRzlGLHlEQUErRjtBQUFyRSxxSEFBQSxnQkFBZ0IsT0FBQTtBQUFFLDBIQUFBLHFCQUFxQixPQUFBO0FBcUJqRSxNQUFhLGNBQWM7Q0FLMUI7QUFMRCx3Q0FLQztBQWdCRCw0QkFBa0IsQ0FBQyxTQUFTLENBQUMsS0FBSyxHQUFHLFVBQWtCLGVBQWdILEdBQUcsRUFBRSxRQUF5SjtJQUNqVSxJQUFJLFNBQVMsR0FBVyxDQUFDLEVBQUUsUUFBUSxHQUFXLEdBQUcsRUFBRSxTQUFTLEdBQVcsQ0FBQyxFQUFFLGNBQWMsR0FBVyxDQUFDLEVBQUUsV0FBVyxHQUFxQixLQUFLLEVBQUUsaUJBQWlCLEdBQVksSUFBSSxDQUFDO0lBRS9LLElBQUksT0FBTyxDQUFDLFlBQVksQ0FBQyxJQUFJLFFBQVEsSUFBSSxPQUFP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