UNPKG

@techmmunity/symbiosis

Version:

Symbiosis - The Ultimate OM For All Databases

16 lines (14 loc) 80.8 kB
require('./sourcemap-register.js');(()=>{var e={4761:function(e){!function(t,n){true?e.exports=n():0}(this,(function(){"use strict";var e={year:0,month:1,day:2,hour:3,minute:4,second:5},t={};return function(n,r,o){var i,a=function(e,n,r){void 0===r&&(r={});var o=new Date(e);return function(e,n){void 0===n&&(n={});var r=n.timeZoneName||"short",o=e+"|"+r,i=t[o];return i||(i=new Intl.DateTimeFormat("en-US",{hour12:!1,timeZone:e,year:"numeric",month:"2-digit",day:"2-digit",hour:"2-digit",minute:"2-digit",second:"2-digit",timeZoneName:r}),t[o]=i),i}(n,r).formatToParts(o)},u=function(t,n){for(var r=a(t,n),i=[],s=0;s<r.length;s+=1){var c=r[s],l=c.type,d=c.value,y=e[l];y>=0&&(i[y]=parseInt(d,10))}var f=i[3],p=24===f?0:f,m=i[0]+"-"+i[1]+"-"+i[2]+" "+p+":"+i[4]+":"+i[5]+":000",v=+t;return(o.utc(m).valueOf()-(v-=v%1e3))/6e4},s=r.prototype;s.tz=function(e,t){void 0===e&&(e=i);var n=this.utcOffset(),r=this.toDate(),s=r.toLocaleString("en-US",{timeZone:e}),c=Math.round((r-new Date(s))/1e3/60),l=o(s).$set("millisecond",this.$ms).utcOffset(15*-Math.round(r.getTimezoneOffset()/15)-c,!0);if(t){var d=l.utcOffset();l=l.add(n-d,"minute")}return l.$x.$timezone=e,l},s.offsetName=function(e){var t=this.$x.$timezone||o.tz.guess(),n=a(this.valueOf(),t,{timeZoneName:e}).find((function(e){return"timezonename"===e.type.toLowerCase()}));return n&&n.value};var c=s.startOf;s.startOf=function(e,t){if(!this.$x||!this.$x.$timezone)return c.call(this,e,t);var n=o(this.format("YYYY-MM-DD HH:mm:ss:SSS"));return c.call(n,e,t).tz(this.$x.$timezone,!0)},o.tz=function(e,t,n){var r=n&&t,s=n||t||i,c=u(+o(),s);if("string"!=typeof e)return o(e).tz(s);var l=function(e,t,n){var r=e-60*t*1e3,o=u(r,n);if(t===o)return[r,t];var i=u(r-=60*(o-t)*1e3,n);return o===i?[r,o]:[e-60*Math.min(o,i)*1e3,Math.max(o,i)]}(o.utc(e,r).valueOf(),c,s),d=l[0],y=l[1],f=o(d).utcOffset(y);return f.$x.$timezone=s,f},o.tz.guess=function(){return Intl.DateTimeFormat().resolvedOptions().timeZone},o.tz.setDefault=function(e){i=e}}}))},4359:function(e){!function(t,n){true?e.exports=n():0}(this,(function(){"use strict";var e="minute",t=/[+-]\d\d(?::?\d\d)?/g,n=/([+-]|\d\d)/g;return function(r,o,i){var s=o.prototype;i.utc=function(e){var t={date:e,utc:!0,args:arguments};return new o(t)},s.utc=function(t){var n=i(this.toDate(),{locale:this.$L,utc:!0});return t?n.add(this.utcOffset(),e):n},s.local=function(){return i(this.toDate(),{locale:this.$L,utc:!1})};var c=s.parse;s.parse=function(e){e.utc&&(this.$u=!0),this.$utils().u(e.$offset)||(this.$offset=e.$offset),c.call(this,e)};var l=s.init;s.init=function(){if(this.$u){var e=this.$d;this.$y=e.getUTCFullYear(),this.$M=e.getUTCMonth(),this.$D=e.getUTCDate(),this.$W=e.getUTCDay(),this.$H=e.getUTCHours(),this.$m=e.getUTCMinutes(),this.$s=e.getUTCSeconds(),this.$ms=e.getUTCMilliseconds()}else l.call(this)};var d=s.utcOffset;s.utcOffset=function(r,o){var i=this.$utils().u;if(i(r))return this.$u?0:i(this.$offset)?d.call(this):this.$offset;if("string"==typeof r&&null===(r=function(e){void 0===e&&(e="");var r=e.match(t);if(!r)return null;var o=(""+r[0]).match(n)||["-",0,0],i=o[0],s=60*+o[1]+ +o[2];return 0===s?0:"+"===i?s:-s}(r)))return this;var s=Math.abs(r)<=16?60*r:r,c=this;if(o)return c.$offset=s,c.$u=0===r,c;if(0!==r){var l=this.$u?this.toDate().getTimezoneOffset():-1*this.utcOffset();(c=this.local().add(s+l,e)).$offset=s,c.$x.$localOffset=l}else c=this.utc();return c};var y=s.format;s.format=function(e){var t=e||(this.$u?"YYYY-MM-DDTHH:mm:ss[Z]":"");return y.call(this,t)},s.valueOf=function(){var e=this.$utils().u(this.$offset)?0:this.$offset+(this.$x.$localOffset||(new Date).getTimezoneOffset());return this.$d.valueOf()-6e4*e},s.isUTC=function(){return!!this.$u},s.toISOString=function(){return this.toDate().toISOString()},s.toString=function(){return this.toDate().toUTCString()};var f=s.toDate;s.toDate=function(e){return"s"===e&&this.$offset?i(this.format("YYYY-MM-DD HH:mm:ss:SSS")).toDate():f.call(this)};var p=s.diff;s.diff=function(e,t,n){if(e&&this.$u===e.$u)return p.call(this,e,t,n);var r=this.local(),o=i(e).local();return p.call(r,o,t,n)}}}))},2246:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:true});t.dotCase=void 0;var r=n(4351);var o=n(397);function dotCase(e,t){if(t===void 0){t={}}return o.noCase(e,r.__assign({delimiter:"."},t))}t.dotCase=dotCase},8387:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:true});t.lowerCase=t.localeLowerCase=void 0;var n={tr:{regexp:/\u0130|\u0049|\u0049\u0307/g,map:{"İ":"i",I:"ı","İ":"i"}},az:{regexp:/\u0130/g,map:{"İ":"i",I:"ı","İ":"i"}},lt:{regexp:/\u0049|\u004A|\u012E|\u00CC|\u00CD|\u0128/g,map:{I:"i̇",J:"j̇","Į":"į̇","Ì":"i̇̀","Í":"i̇́","Ĩ":"i̇̃"}}};function localeLowerCase(e,t){var r=n[t.toLowerCase()];if(r)return lowerCase(e.replace(r.regexp,(function(e){return r.map[e]})));return lowerCase(e)}t.localeLowerCase=localeLowerCase;function lowerCase(e){return e.toLowerCase()}t.lowerCase=lowerCase},397:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:true});t.noCase=void 0;var r=n(8387);var o=[/([a-z0-9])([A-Z])/g,/([A-Z])([A-Z][a-z])/g];var i=/[^A-Z0-9]+/gi;function noCase(e,t){if(t===void 0){t={}}var n=t.splitRegexp,s=n===void 0?o:n,c=t.stripRegexp,l=c===void 0?i:c,d=t.transform,y=d===void 0?r.lowerCase:d,f=t.delimiter,p=f===void 0?" ":f;var m=replace(replace(e,s,"$1\0$2"),l,"\0");var v=0;var g=m.length;while(m.charAt(v)==="\0")v++;while(m.charAt(g-1)==="\0")g--;return m.slice(v,g).split("\0").map(y).join(p)}t.noCase=noCase;function replace(e,t,n){if(t instanceof RegExp)return e.replace(t,n);return t.reduce((function(e,t){return e.replace(t,n)}),e)}},6213:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:true});t.snakeCase=void 0;var r=n(4351);var o=n(2246);function snakeCase(e,t){if(t===void 0){t={}}return o.dotCase(e,r.__assign({delimiter:"_"},t))}t.snakeCase=snakeCase},4351:e=>{ /*! ***************************************************************************** Copyright (c) Microsoft Corporation. Permission to use, copy, modify, and/or distribute this software for any purpose with or without fee is hereby granted. THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. ***************************************************************************** */ var t;var n;var r;var o;var i;var s;var c;var l;var d;var y;var f;var p;var m;var v;var g;var b;var O;var M;var _;var h;var S;var E;var P;var j;(function(t){var n=typeof global==="object"?global:typeof self==="object"?self:typeof this==="object"?this:{};if(typeof define==="function"&&define.amd){define("tslib",["exports"],(function(e){t(createExporter(n,createExporter(e)))}))}else if(true&&typeof e.exports==="object"){t(createExporter(n,createExporter(e.exports)))}else{t(createExporter(n))}function createExporter(e,t){if(e!==n){if(typeof Object.create==="function"){Object.defineProperty(e,"__esModule",{value:true})}else{e.__esModule=true}}return function(n,r){return e[n]=t?t(n,r):r}}})((function(e){var w=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)if(Object.prototype.hasOwnProperty.call(t,n))e[n]=t[n]};t=function(e,t){if(typeof t!=="function"&&t!==null)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");w(e,t);function __(){this.constructor=e}e.prototype=t===null?Object.create(t):(__.prototype=t.prototype,new __)};n=Object.assign||function(e){for(var t,n=1,r=arguments.length;n<r;n++){t=arguments[n];for(var o in t)if(Object.prototype.hasOwnProperty.call(t,o))e[o]=t[o]}return e};r=function(e,t){var n={};for(var r in e)if(Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0)n[r]=e[r];if(e!=null&&typeof Object.getOwnPropertySymbols==="function")for(var o=0,r=Object.getOwnPropertySymbols(e);o<r.length;o++){if(t.indexOf(r[o])<0&&Object.prototype.propertyIsEnumerable.call(e,r[o]))n[r[o]]=e[r[o]]}return n};o=function(e,t,n,r){var o=arguments.length,i=o<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,s;if(typeof Reflect==="object"&&typeof Reflect.decorate==="function")i=Reflect.decorate(e,t,n,r);else for(var c=e.length-1;c>=0;c--)if(s=e[c])i=(o<3?s(i):o>3?s(t,n,i):s(t,n))||i;return o>3&&i&&Object.defineProperty(t,n,i),i};i=function(e,t){return function(n,r){t(n,r,e)}};s=function(e,t){if(typeof Reflect==="object"&&typeof Reflect.metadata==="function")return Reflect.metadata(e,t)};c=function(e,t,n,r){function adopt(e){return e instanceof n?e:new n((function(t){t(e)}))}return new(n||(n=Promise))((function(n,o){function fulfilled(e){try{step(r.next(e))}catch(e){o(e)}}function rejected(e){try{step(r["throw"](e))}catch(e){o(e)}}function step(e){e.done?n(e.value):adopt(e.value).then(fulfilled,rejected)}step((r=r.apply(e,t||[])).next())}))};l=function(e,t){var n={label:0,sent:function(){if(i[0]&1)throw i[1];return i[1]},trys:[],ops:[]},r,o,i,s;return s={next:verb(0),throw:verb(1),return:verb(2)},typeof Symbol==="function"&&(s[Symbol.iterator]=function(){return this}),s;function verb(e){return function(t){return step([e,t])}}function step(s){if(r)throw new TypeError("Generator is already executing.");while(n)try{if(r=1,o&&(i=s[0]&2?o["return"]:s[0]?o["throw"]||((i=o["return"])&&i.call(o),0):o.next)&&!(i=i.call(o,s[1])).done)return i;if(o=0,i)s=[s[0]&2,i.value];switch(s[0]){case 0:case 1:i=s;break;case 4:n.label++;return{value:s[1],done:false};case 5:n.label++;o=s[1];s=[0];continue;case 7:s=n.ops.pop();n.trys.pop();continue;default:if(!(i=n.trys,i=i.length>0&&i[i.length-1])&&(s[0]===6||s[0]===2)){n=0;continue}if(s[0]===3&&(!i||s[1]>i[0]&&s[1]<i[3])){n.label=s[1];break}if(s[0]===6&&n.label<i[1]){n.label=i[1];i=s;break}if(i&&n.label<i[2]){n.label=i[2];n.ops.push(s);break}if(i[2])n.ops.pop();n.trys.pop();continue}s=t.call(e,n)}catch(e){s=[6,e];o=0}finally{r=i=0}if(s[0]&5)throw s[1];return{value:s[0]?s[1]:void 0,done:true}}};d=function(e,t){for(var n in e)if(n!=="default"&&!Object.prototype.hasOwnProperty.call(t,n))j(t,e,n)};j=Object.create?function(e,t,n,r){if(r===undefined)r=n;Object.defineProperty(e,r,{enumerable:true,get:function(){return t[n]}})}:function(e,t,n,r){if(r===undefined)r=n;e[r]=t[n]};y=function(e){var t=typeof Symbol==="function"&&Symbol.iterator,n=t&&e[t],r=0;if(n)return n.call(e);if(e&&typeof e.length==="number")return{next:function(){if(e&&r>=e.length)e=void 0;return{value:e&&e[r++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")};f=function(e,t){var n=typeof Symbol==="function"&&e[Symbol.iterator];if(!n)return e;var r=n.call(e),o,i=[],s;try{while((t===void 0||t-- >0)&&!(o=r.next()).done)i.push(o.value)}catch(e){s={error:e}}finally{try{if(o&&!o.done&&(n=r["return"]))n.call(r)}finally{if(s)throw s.error}}return i};p=function(){for(var e=[],t=0;t<arguments.length;t++)e=e.concat(f(arguments[t]));return e};m=function(){for(var e=0,t=0,n=arguments.length;t<n;t++)e+=arguments[t].length;for(var r=Array(e),o=0,t=0;t<n;t++)for(var i=arguments[t],s=0,c=i.length;s<c;s++,o++)r[o]=i[s];return r};v=function(e,t,n){if(n||arguments.length===2)for(var r=0,o=t.length,i;r<o;r++){if(i||!(r in t)){if(!i)i=Array.prototype.slice.call(t,0,r);i[r]=t[r]}}return e.concat(i||Array.prototype.slice.call(t))};g=function(e){return this instanceof g?(this.v=e,this):new g(e)};b=function(e,t,n){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var r=n.apply(e,t||[]),o,i=[];return o={},verb("next"),verb("throw"),verb("return"),o[Symbol.asyncIterator]=function(){return this},o;function verb(e){if(r[e])o[e]=function(t){return new Promise((function(n,r){i.push([e,t,n,r])>1||resume(e,t)}))}}function resume(e,t){try{step(r[e](t))}catch(e){settle(i[0][3],e)}}function step(e){e.value instanceof g?Promise.resolve(e.value.v).then(fulfill,reject):settle(i[0][2],e)}function fulfill(e){resume("next",e)}function reject(e){resume("throw",e)}function settle(e,t){if(e(t),i.shift(),i.length)resume(i[0][0],i[0][1])}};O=function(e){var t,n;return t={},verb("next"),verb("throw",(function(e){throw e})),verb("return"),t[Symbol.iterator]=function(){return this},t;function verb(r,o){t[r]=e[r]?function(t){return(n=!n)?{value:g(e[r](t)),done:r==="return"}:o?o(t):t}:o}};M=function(e){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var t=e[Symbol.asyncIterator],n;return t?t.call(e):(e=typeof y==="function"?y(e):e[Symbol.iterator](),n={},verb("next"),verb("throw"),verb("return"),n[Symbol.asyncIterator]=function(){return this},n);function verb(t){n[t]=e[t]&&function(n){return new Promise((function(r,o){n=e[t](n),settle(r,o,n.done,n.value)}))}}function settle(e,t,n,r){Promise.resolve(r).then((function(t){e({value:t,done:n})}),t)}};_=function(e,t){if(Object.defineProperty){Object.defineProperty(e,"raw",{value:t})}else{e.raw=t}return e};var C=Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:true,value:t})}:function(e,t){e["default"]=t};h=function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var n in e)if(n!=="default"&&Object.prototype.hasOwnProperty.call(e,n))j(t,e,n);C(t,e);return t};S=function(e){return e&&e.__esModule?e:{default:e}};E=function(e,t,n,r){if(n==="a"&&!r)throw new TypeError("Private accessor was defined without a getter");if(typeof t==="function"?e!==t||!r:!t.has(e))throw new TypeError("Cannot read private member from an object whose class did not declare it");return n==="m"?r:n==="a"?r.call(e):r?r.value:t.get(e)};P=function(e,t,n,r,o){if(r==="m")throw new TypeError("Private method is not writable");if(r==="a"&&!o)throw new TypeError("Private accessor was defined without a setter");if(typeof t==="function"?e!==t||!o:!t.has(e))throw new TypeError("Cannot write private member to an object whose class did not declare it");return r==="a"?o.call(e,n):o?o.value=n:t.set(e,n),n};e("__extends",t);e("__assign",n);e("__rest",r);e("__decorate",o);e("__param",i);e("__metadata",s);e("__awaiter",c);e("__generator",l);e("__exportStar",d);e("__createBinding",j);e("__values",y);e("__read",f);e("__spread",p);e("__spreadArrays",m);e("__spreadArray",v);e("__await",g);e("__asyncGenerator",b);e("__asyncDelegator",O);e("__asyncValues",M);e("__makeTemplateObject",_);e("__importStar",h);e("__importDefault",S);e("__classPrivateFieldGet",E);e("__classPrivateFieldSet",P)}))},2284:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:true});t.DEFAULT_CONNECTION_NAME=t.METADATA_PREFIX=void 0;t.METADATA_PREFIX="symbiosis:";t.DEFAULT_CONNECTION_NAME="Default"},6144:function(e,t,n){"use strict";var r=this&&this.__createBinding||(Object.create?function(e,t,n,r){if(r===undefined)r=n;Object.defineProperty(e,r,{enumerable:true,get:function(){return t[n]}})}:function(e,t,n,r){if(r===undefined)r=n;e[r]=t[n]});var o=this&&this.__exportStar||function(e,t){for(var n in e)if(n!=="default"&&!Object.prototype.hasOwnProperty.call(t,n))r(t,e,n)};Object.defineProperty(t,"__esModule",{value:true});n(3878);o(n(3139),t);o(n(4018),t);o(n(8194),t);o(n(753),t);o(n(8747),t);o(n(3859),t);o(n(7722),t);o(n(5453),t);o(n(7929),t);o(n(1646),t);o(n(9357),t);o(n(3436),t);o(n(9632),t);o(n(9006),t);o(n(4092),t);o(n(2572),t);o(n(5371),t);o(n(6500),t);o(n(5970),t);o(n(75),t);o(n(8474),t);o(n(9429),t);o(n(6425),t);o(n(4683),t);o(n(7234),t);o(n(4039),t);o(n(7339),t);o(n(3493),t);o(n(2101),t);o(n(6943),t);o(n(4787),t);o(n(1925),t);o(n(6404),t);o(n(2073),t);o(n(2422),t);o(n(1097),t);o(n(8333),t);o(n(5490),t);o(n(4841),t);o(n(7480),t);o(n(113),t);o(n(7586),t);o(n(5196),t);o(n(2143),t);o(n(385),t);o(n(1971),t);o(n(4814),t);o(n(5253),t);o(n(4886),t);o(n(4932),t);o(n(3940),t);o(n(5933),t);o(n(7008),t);o(n(6962),t);o(n(9623),t);o(n(3401),t);o(n(8160),t);o(n(4760),t);o(n(4474),t);o(n(8544),t);o(n(4993),t);o(n(127),t);o(n(5686),t);o(n(3246),t);o(n(576),t);o(n(715),t);o(n(3557),t);o(n(3411),t);o(n(2860),t);o(n(5823),t)},3436:function(e,t,n){"use strict";var r=this&&this.__rest||function(e,t){var n={};for(var r in e)if(Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0)n[r]=e[r];if(e!=null&&typeof Object.getOwnPropertySymbols==="function")for(var o=0,r=Object.getOwnPropertySymbols(e);o<r.length;o++){if(t.indexOf(r[o])<0&&Object.prototype.propertyIsEnumerable.call(e,r[o]))n[r[o]]=e[r[o]]}return n};Object.defineProperty(t,"__esModule",{value:true});t.BaseConnection=void 0;const o=n(2945);const i=n(2284);const s=n(9357);const c=n(4932);const l=n(5933);const d=n(2860);const y=n(5823);class BaseConnection{constructor(e,t){this.internalOptions=(0,y.loadOptions)(e,t);this.isLoaded=false}async load(){const e=this.internalOptions,{entities:t=[],entitiesDir:n}=e,o=r(e,["entities","entitiesDir"]);this.options=o;this.name=this.options.name||i.DEFAULT_CONNECTION_NAME;const c=await(0,d.loadEntities)(n);this.entities=[...t,...c];this.logger=new l.Logger(this.name,this.options.logging);this.entityManager=new s.EntityManager({logger:this.logger,connectionOptions:this.options,entities:this.entities});this.isLoaded=true;return this}basicValidate(){if((0,o.isEmptyArray)(this.entities)){throw new c.SymbiosisError({code:"MISSING_PARAM",origin:"SYMBIOSIS",message:"Missing entities",details:["No entities found","`entities` option:",this.internalOptions.entities,"`entitiesDir` option:",this.internalOptions.entitiesDir]})}}}t.BaseConnection=BaseConnection},9632:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:true})},2755:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:true});t.getOptions=void 0;const r=n(2945);const getOptions=e=>{if((0,r.getTypeof)(e)==="object"){return e}return{}};t.getOptions=getOptions},246:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:true});t.getType=void 0;const r=n(2945);const o=n(4932);const i=n(8544);const s="Column type isn't supported";const handleUnacceptedType=(e,t,n,r)=>{const c=i.MetadataUtil.getMetadataName(t);if(!e.includes("all")&&!e.includes(c)){throw new o.SymbiosisError({code:"INVALID_PARAM_TYPE",origin:"SYMBIOSIS",message:s,details:[`Entity: ${n.constructor.name}`,`Column: ${r}`]})}};const getType=({entityPrototype:e,propertyName:t,suggestedType:n,enumValues:c,acceptedTypes:l=["all"]})=>{const d=Reflect.getMetadata("design:type",e,t);if(d===Array){handleUnacceptedType(l,"array",e,t);if(n&&i.MetadataUtil.isMetadataType(n)){return{type:n,isArray:true}}throw new o.SymbiosisError({code:"INVALID_PARAM_TYPE",origin:"SYMBIOSIS",message:"You must explicitly declare array types",details:[`Entity: ${e.constructor.name}`,`Column: ${t}`]})}if(i.MetadataUtil.isMetadataType(d)){handleUnacceptedType(l,d,e,t);return{type:d}}if(c){const[n]=c;switch((0,r.getTypeof)(n)){case"string":return{type:String};case"number":return{type:Number};default:throw new o.SymbiosisError({code:"INVALID_PARAM_TYPE",origin:"SYMBIOSIS",message:s,details:[`Entity: ${e.constructor.name}`,`Column: ${t}`]})}}throw new o.SymbiosisError({code:"INVALID_PARAM_TYPE",origin:"SYMBIOSIS",message:s,details:[`Entity: ${e.constructor.name}`,`Column: ${t}`]})};t.getType=getType},3139:function(e,t,n){"use strict";var r=this&&this.__rest||function(e,t){var n={};for(var r in e)if(Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0)n[r]=e[r];if(e!=null&&typeof Object.getOwnPropertySymbols==="function")for(var o=0,r=Object.getOwnPropertySymbols(e);o<r.length;o++){if(t.indexOf(r[o])<0&&Object.prototype.propertyIsEnumerable.call(e,r[o]))n[r[o]]=e[r[o]]}return n};Object.defineProperty(t,"__esModule",{value:true});t.Column=void 0;const o=n(2755);const i=n(8268);const s=n(6416);const c=n(8544);const Column=e=>{const t=(0,o.getOptions)(e),{name:n,type:l,defaultValue:d}=t,y=r(t,["name","type","defaultValue"]);const f=l||(c.MetadataUtil.isMetadataType(e)?e:undefined);const p=(0,i.getDefaultValue)(d);return(0,s.makeColumnDecorator)({metadata:Object.assign(Object.assign(Object.assign({},y),p),{databaseName:n}),suggestedType:f})};t.Column=Column},4018:function(e,t,n){"use strict";var r=this&&this.__rest||function(e,t){var n={};for(var r in e)if(Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0)n[r]=e[r];if(e!=null&&typeof Object.getOwnPropertySymbols==="function")for(var o=0,r=Object.getOwnPropertySymbols(e);o<r.length;o++){if(t.indexOf(r[o])<0&&Object.prototype.propertyIsEnumerable.call(e,r[o]))n[r[o]]=e[r[o]]}return n};Object.defineProperty(t,"__esModule",{value:true});t.CountColumn=void 0;const o=n(1097);const i=n(2755);const s=n(6416);const CountColumn=e=>{const t=(0,i.getOptions)(e),{name:n}=t,c=r(t,["name"]);const l=Array.isArray(e)?e:e.events;return(0,s.makeColumnDecorator)({metadata:Object.assign(Object.assign({},c),{databaseName:n,autoGenerateOnlyOnEvents:l,autoGenerate:(0,o.Plus)(1)}),acceptedTypes:["number"]})};t.CountColumn=CountColumn},8747:function(e,t,n){"use strict";var r=this&&this.__rest||function(e,t){var n={};for(var r in e)if(Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0)n[r]=e[r];if(e!=null&&typeof Object.getOwnPropertySymbols==="function")for(var o=0,r=Object.getOwnPropertySymbols(e);o<r.length;o++){if(t.indexOf(r[o])<0&&Object.prototype.propertyIsEnumerable.call(e,r[o]))n[r[o]]=e[r[o]]}return n};Object.defineProperty(t,"__esModule",{value:true});t.DeleteDateColumn=void 0;const o=n(2755);const i=n(6416);const DeleteDateColumn=e=>{const t=(0,o.getOptions)(e),{name:n}=t,s=r(t,["name"]);return(0,i.makeColumnDecorator)({metadata:Object.assign(Object.assign({},s),{databaseName:n,autoGenerateOnlyOnEvents:["delete"],autoGenerate:"date"}),acceptedTypes:["string","number","date"]})};t.DeleteDateColumn=DeleteDateColumn},8268:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:true});t.getDefaultValue=void 0;const r=n(2945);const getDefaultValue=e=>{if((0,r.getTypeof)(e)!=="undefined"){return{autoGenerateOnlyOnEvents:["insert"],autoGenerate:e}}return{}};t.getDefaultValue=getDefaultValue},6416:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:true});t.makeColumnDecorator=void 0;const r=n(2945);const o=n(246);const i=n(8544);const makeColumnDecorator=({metadata:e,acceptedTypes:t,suggestedType:n})=>(s,c)=>{const l=e.enum?(0,r.getEnumValues)(e.enum):undefined;const{type:d,isArray:y}=(0,o.getType)({entityPrototype:s,propertyName:c,acceptedTypes:t,suggestedType:n,enumValues:l});const f=e.databaseName||c;const p=(0,r.cleanObj)(Object.assign(Object.assign({},e),{type:d,isArray:y,enumValues:l,databaseName:f,name:c,enumName:l?`${f}_enum`:undefined,isNameAlreadyFormatted:e.databaseName?true:undefined}));i.MetadataUtil.addColumnMetadataToEntity({entity:s.constructor,metadata:p})};t.makeColumnDecorator=makeColumnDecorator},3859:function(e,t,n){"use strict";var r=this&&this.__rest||function(e,t){var n={};for(var r in e)if(Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0)n[r]=e[r];if(e!=null&&typeof Object.getOwnPropertySymbols==="function")for(var o=0,r=Object.getOwnPropertySymbols(e);o<r.length;o++){if(t.indexOf(r[o])<0&&Object.prototype.propertyIsEnumerable.call(e,r[o]))n[r[o]]=e[r[o]]}return n};Object.defineProperty(t,"__esModule",{value:true});t.InsertDateColumn=void 0;const o=n(2755);const i=n(6416);const InsertDateColumn=e=>{const t=(0,o.getOptions)(e),{name:n}=t,s=r(t,["name"]);return(0,i.makeColumnDecorator)({metadata:Object.assign(Object.assign({},s),{databaseName:n,autoGenerateOnlyOnEvents:["insert"],autoGenerate:"date"}),acceptedTypes:["string","number","date"]})};t.InsertDateColumn=InsertDateColumn},8194:function(e,t,n){"use strict";var r=this&&this.__rest||function(e,t){var n={};for(var r in e)if(Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0)n[r]=e[r];if(e!=null&&typeof Object.getOwnPropertySymbols==="function")for(var o=0,r=Object.getOwnPropertySymbols(e);o<r.length;o++){if(t.indexOf(r[o])<0&&Object.prototype.propertyIsEnumerable.call(e,r[o]))n[r[o]]=e[r[o]]}return n};Object.defineProperty(t,"__esModule",{value:true});t.PrimaryColumn=void 0;const o=n(2945);const i=n(2755);const s=n(6416);const PrimaryColumn=e=>{const t=(0,i.getOptions)(e),{name:n}=t,c=r(t,["name"]);const l=n||((0,o.getTypeof)(e)==="string"?e:undefined);return(0,s.makeColumnDecorator)({metadata:Object.assign(Object.assign({},c),{databaseName:l,primary:true}),acceptedTypes:["string","number"]})};t.PrimaryColumn=PrimaryColumn},753:function(e,t,n){"use strict";var r=this&&this.__rest||function(e,t){var n={};for(var r in e)if(Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0)n[r]=e[r];if(e!=null&&typeof Object.getOwnPropertySymbols==="function")for(var o=0,r=Object.getOwnPropertySymbols(e);o<r.length;o++){if(t.indexOf(r[o])<0&&Object.prototype.propertyIsEnumerable.call(e,r[o]))n[r[o]]=e[r[o]]}return n};Object.defineProperty(t,"__esModule",{value:true});t.PrimaryGeneratedColumn=void 0;const o=n(2945);const i=n(2755);const s=n(6416);const getAutoGenerate=e=>{var t;if(!e||(0,o.getTypeof)(e)==="object"){return((t=e)===null||t===void 0?void 0:t.strategy)||"uuid"}return e};const PrimaryGeneratedColumn=e=>{const t=(0,i.getOptions)(e),{name:n}=t,o=r(t,["name"]);return(0,s.makeColumnDecorator)({metadata:Object.assign(Object.assign({},o),{autoGenerate:getAutoGenerate(e),databaseName:n,primary:true,autoGenerateOnlyOnEvents:["insert"]}),acceptedTypes:["string","number"]})};t.PrimaryGeneratedColumn=PrimaryGeneratedColumn},7722:function(e,t,n){"use strict";var r=this&&this.__rest||function(e,t){var n={};for(var r in e)if(Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0)n[r]=e[r];if(e!=null&&typeof Object.getOwnPropertySymbols==="function")for(var o=0,r=Object.getOwnPropertySymbols(e);o<r.length;o++){if(t.indexOf(r[o])<0&&Object.prototype.propertyIsEnumerable.call(e,r[o]))n[r[o]]=e[r[o]]}return n};Object.defineProperty(t,"__esModule",{value:true});t.UpdateDateColumn=void 0;const o=n(2755);const i=n(6416);const UpdateDateColumn=e=>{const t=(0,o.getOptions)(e),{name:n}=t,s=r(t,["name"]);return(0,i.makeColumnDecorator)({metadata:Object.assign(Object.assign({},s),{databaseName:n,autoGenerateOnlyOnEvents:["insert","update"],autoGenerate:"date"}),acceptedTypes:["string","number","date"]})};t.UpdateDateColumn=UpdateDateColumn},5453:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:true});t.Entity=void 0;const r=n(2755);const o=n(2763);const i=n(3126);const Entity=e=>t=>{const{databaseName:n,isNameAlreadyFormatted:s}=(0,i.getDatabaseName)({entityConstructor:t,nameOrOptions:e});const{extras:c}=(0,r.getOptions)(e);(0,o.addEntityMetadata)({entityConstructor:t,metadata:{name:t.name,databaseName:n,isNameAlreadyFormatted:s,extras:c}})};t.Entity=Entity},2763:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:true});t.addEntityMetadata=void 0;const r=n(4932);const o=n(8544);const addEntityMetadata=({entityConstructor:e,metadata:t})=>{const n=o.MetadataUtil.getEntityMetadata({metadataKey:"columns",entity:e});if(!n){throw new r.SymbiosisError({code:"MISSING_DECORATOR",message:"Entity must have at least one column",origin:"SYMBIOSIS",details:[`Entity: ${e.name}`]})}o.MetadataUtil.defineAllEntityMetadata({entity:e,metadata:Object.assign(Object.assign({},t),{columns:n})})};t.addEntityMetadata=addEntityMetadata},3126:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:true});t.getDatabaseName=void 0;const getDatabaseName=({entityConstructor:e,nameOrOptions:t})=>{if(typeof t==="string"){return{databaseName:t,isNameAlreadyFormatted:true}}if(t===null||t===void 0?void 0:t.name){return{databaseName:t.name,isNameAlreadyFormatted:true}}return{databaseName:e.name}};t.getDatabaseName=getDatabaseName},7929:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:true});t.SubEntity=void 0;const r=n(2755);const o=n(2763);const SubEntity=e=>t=>{const{extras:n}=(0,r.getOptions)(e);(0,o.addEntityMetadata)({entityConstructor:t,metadata:{name:t.name,databaseName:t.name,isNameAlreadyFormatted:true,isSubEntity:true,extras:n}})};t.SubEntity=SubEntity},6723:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:true});t.addIndexMetadata=void 0;const r=n(8544);const addIndexMetadata=({entityConstructor:e,indexName:t,columnName:n,extras:o})=>{const i=r.MetadataUtil.getAllEntityMetadata({entity:e});if(i.indexes){const e=i.indexes.find((e=>e.databaseName===t));if(e){e.columns.push({name:n,extras:o})}else{i.indexes.push({databaseName:t,columns:[{name:n,extras:o}]})}}else{i.indexes=[{databaseName:t,columns:[{name:n,extras:o}]}]}r.MetadataUtil.defineAllEntityMetadata({entity:e,metadata:i})};t.addIndexMetadata=addIndexMetadata},9135:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:true});t.getIndexName=void 0;const r=n(2945);const o=n(6213);const getIndexName=({name:e,nameOrOptions:t,propertyName:n})=>{if(e)return e;if((0,r.getTypeof)(t)==="string")return t;return`${(0,o.snakeCase)(n)}_index`};t.getIndexName=getIndexName},1646:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:true});t.Index=void 0;const r=n(2755);const o=n(6723);const i=n(9135);const Index=e=>(t,n)=>{const{name:s,extras:c}=(0,r.getOptions)(e);const l=(0,i.getIndexName)({name:s,propertyName:n,nameOrOptions:e});(0,o.addIndexMetadata)({entityConstructor:t.constructor,columnName:n,indexName:l,extras:c})};t.Index=Index},9357:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:true});t.EntityManager=void 0;const r=n(4932);const o=n(3491);const i=n(1333);const s=n(7047);const c=n(5695);const l=n(1008);const d=n(1902);const y=n(2900);class EntityManager{constructor({connectionOptions:e,logger:t,entities:n}){this.entities={};this.logger=t;this.connectionOptions=e;this.entities=(0,y.loadEntities)({connectionOptions:this.connectionOptions,logger:this.logger,entities:n})}getAllEntitiesMetadata(){return this.entities}getAllTablesMetadata(){return Object.values(this.entities).filter((e=>!e.isSubEntity))}getEntityMetadata(e){const t=this.entities[e.name];if(!t){throw new r.SymbiosisError({message:"Entity not Registered",code:"ENTITY_ERROR",origin:"SYMBIOSIS",details:["Entity: ",e]})}return t}getColumnMetadata(e,t){const n=this.getEntityMetadata(e);const o=n.columns.find((e=>e.name===t));if(!o){throw new r.SymbiosisError({message:"Column not found",code:"COLUMN_ERROR",origin:"SYMBIOSIS",details:["Entity: ",e,"Column: ",t]})}return o}getEntityPrimaryColumns(e){const t=this.getEntityMetadata(e);return t.columns.filter((e=>e.primary))}autoGenerateEntityToDatabase(e){return(0,o.autoGenerateEntityToDatabase)({entityManager:this,connectionOptions:this.connectionOptions},e)}convertEntityToDatabase(e){return(0,c.convertEntityToDatabase)({entityManager:this},e)}convertDatabaseToEntity(e){return(0,s.convertDatabaseToEntity)({entityManager:this},e)}formatConditions(e){return(0,l.formatConditions)({entityManager:this},e)}formatOrder(e){return(0,d.formatOrder)({entityManager:this},e)}convertColumnsNames(e){return(0,i.convertColumnsNames)({entityManager:this},e)}}t.EntityManager=EntityManager},4689:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:true});t.handleCustomMetadata=void 0;const r=n(2945);const o=n(3491);const handleCustomMetadata=({columnMetadata:e,data:t,entityManager:n,acc:i,connectionOptions:s,events:c})=>{const l=e.name;const d=t[l];if(!d)return i;const y=n.getEntityMetadata(e.type);if(e.isArray){const e=d.map((e=>(0,o.recursiveAutoGenerateEntityToDatabase)({entityManager:n,connectionOptions:s},{entity:y,events:c,data:e})));i[l]=e}else{const e=(0,o.recursiveAutoGenerateEntityToDatabase)({entityManager:n,connectionOptions:s},{entity:y,events:c,data:d});if((0,r.isNotEmptyObject)(e)){i[l]=e}}};t.handleCustomMetadata=handleCustomMetadata},1524:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:true});t.shouldAutoGenerate=void 0;const r=n(2945);const matchesBasicValidation=e=>(0,r.getTypeof)(e.autoGenerate)!=="undefined";const matchesEventToAutoGenerate=({columnMetadata:e,events:t})=>t.some((t=>e.autoGenerateOnlyOnEvents.includes(t)));const shouldAutoGenerate=({columnMetadata:e,events:t})=>{if(matchesBasicValidation(e)){return matchesEventToAutoGenerate({columnMetadata:e,events:t})}return false};t.shouldAutoGenerate=shouldAutoGenerate},3491:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:true});t.autoGenerateEntityToDatabase=t.recursiveAutoGenerateEntityToDatabase=void 0;const r=n(2945);const o=n(3842);const i=n(4689);const s=n(1524);const c=n(8544);const l=n(127);const d=n(5686);const recursiveAutoGenerateEntityToDatabase=({entityManager:e,connectionOptions:t},{entity:n,data:y,events:f})=>{if((0,r.getTypeof)(y)==="undefined")return;const p=e.getEntityMetadata(n);const m=p.columns.reduce(((n,m)=>{const v=m.name;const g=y[v];if((0,l.isFindOperator)(g)){n[v]=undefined;return n}if((0,d.isSaveOperator)(g)){n[v]=g;return n}if(c.MetadataUtil.isCustomMetadataType(m.type)){(0,i.handleCustomMetadata)({data:y,acc:n,columnMetadata:m,entityManager:e,connectionOptions:t,events:f});return n}if((0,r.getTypeof)(g)!=="undefined"){n[v]=g;return n}if((0,s.shouldAutoGenerate)({columnMetadata:m,events:f})){n[v]=(0,o.autoGenerate)({columnMetadata:m,entityMetadata:p,connectionOptions:t});return n}return n}),y);return(0,r.cleanObj)(m)};t.recursiveAutoGenerateEntityToDatabase=recursiveAutoGenerateEntityToDatabase;const autoGenerateEntityToDatabase=({entityManager:e,connectionOptions:n},{entity:r,data:o,events:i})=>(0,t.recursiveAutoGenerateEntityToDatabase)({entityManager:e,connectionOptions:n},{entity:r,data:o,events:i});t.autoGenerateEntityToDatabase=autoGenerateEntityToDatabase},1333:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:true});t.convertColumnsNames=void 0;const r=n(4456);const o=n(123);const i=n(5743);const convertColumnsNames=({entityManager:e},{entity:t,columnsNames:n})=>n.map((n=>{if((0,i.isMultipleLevelsColumn)(n)){return(0,o.getMultipleLevelColumnName)({entity:t,entityManager:e,originalColumnsNames:n.split(".")})}return(0,r.getColumnDatabaseName)({entityManager:e,entity:t,columnName:n})}));t.convertColumnsNames=convertColumnsNames},7047:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:true});t.convertDatabaseToEntity=void 0;const r=n(2945);const o=n(8544);const convertDatabaseToEntity=({entityManager:e},{entity:n,data:i})=>{if(!i)return;const s=e.getEntityMetadata(n);return s.columns.reduce(((n,s)=>{const c=s.name;const l=i[s.databaseName];if((0,r.getTypeof)(l)==="undefined")return n;if(o.MetadataUtil.isCustomMetadataType(s.type)){const r=e.getEntityMetadata(s.type);if(s.isArray){n[c]=l.map((n=>(0,t.convertDatabaseToEntity)({entityManager:e},{entity:r,data:n})));return n}n[c]=(0,t.convertDatabaseToEntity)({entityManager:e},{entity:r,data:l});return n}n[c]=l;return n}),{})};t.convertDatabaseToEntity=convertDatabaseToEntity},5695:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:true});t.convertEntityToDatabase=void 0;const r=n(2945);const o=n(8544);const i=n(5686);const recursiveConvertEntityToDatabase=({entityManager:e},{entity:t,data:n})=>{if((0,r.getTypeof)(n)==="undefined")return;const s=e.getEntityMetadata(t);return s.columns.reduce(((t,s)=>{const c=n[s.name];if((0,r.getTypeof)(c)==="undefined"){return t}if((0,i.isSaveOperator)(c)){t[s.databaseName]=c;return t}if(o.MetadataUtil.isCustomMetadataType(s.type)){const n=e.getEntityMetadata(s.type);if(s.isArray){t[s.databaseName]=c.map((t=>recursiveConvertEntityToDatabase({entityManager:e},{entity:n,data:t})));return t}const o=recursiveConvertEntityToDatabase({entityManager:e},{entity:n,data:c});if(o&&(0,r.isNotEmptyObject)(o)){t[s.databaseName]=o}return t}t[s.databaseName]=c;return t}),{})};const convertEntityToDatabase=({entityManager:e},{entity:t,data:n})=>recursiveConvertEntityToDatabase({entityManager:e},{entity:t,data:n})||{};t.convertEntityToDatabase=convertEntityToDatabase},8155:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:true});t.getConditionsArray=void 0;const getConditionsArray=e=>{if(Array.isArray(e)){return e}return[e]};t.getConditionsArray=getConditionsArray},3950:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:true});t.getConditionsFormatted=void 0;const r=n(2945);const o=n(1008);const i=n(8544);const s=n(127);const getConditionsFormatted=({conditionsArray:e,entityMetadata:t,entityManager:n})=>e.map((e=>t.columns.reduce(((t,c)=>{const l=e[c.name];if((0,r.getTypeof)(l)==="undefined")return t;if((0,s.isFindOperator)(l)){t[c.databaseName]=l;return t}if(i.MetadataUtil.isCustomMetadataType(c.type)){const e=n.getEntityMetadata(c.type);if(c.isArray){t[c.databaseName]=l.map((t=>(0,o.formatConditions)({entityManager:n},{entity:e,conditions:t})));return t}t[c.databaseName]=(0,o.formatConditions)({entityManager:n},{entity:e,conditions:l});return t}t[c.databaseName]=l;return t}),{})));t.getConditionsFormatted=getConditionsFormatted},1008:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:true});t.formatConditions=void 0;const r=n(2945);const o=n(8155);const i=n(3950);const formatConditions=({entityManager:e},{entity:t,conditions:n})=>{if((0,r.getTypeof)(n)==="undefined")return{};const s=e.getEntityMetadata(t);const c=(0,o.getConditionsArray)(n);const l=(0,i.getConditionsFormatted)({entityManager:e,entityMetadata:s,conditionsArray:c});return Array.isArray(n)?l:l.shift()};t.formatConditions=formatConditions},1902:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:true});t.formatOrder=void 0;const r=n(4456);const o=n(123);const i=n(5743);const formatOrder=({entityManager:e},{entity:t,orderBy:n})=>{const s=Object.entries(n).map((([n,s])=>{if((0,i.isMultipleLevelsColumn)(n)){const r=(0,o.getMultipleLevelColumnName)({entity:t,entityManager:e,originalColumnsNames:n.split(".")});return[r,s]}const c=(0,r.getColumnDatabaseName)({entityManager:e,entity:t,columnName:n,errorOptions:{ifLastFieldIsSubEntity:{message:"Invalid order",getDetails:e=>[`Column "${e}" is a subEntity, and cannot be used to ordering. Use a column of this subEntity`]}}});return[c,s]}));return Object.fromEntries(s)};t.formatOrder=formatOrder},8549:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:true});t.generateDate=void 0;const r=n(2513);const generateDate=(e,t)=>{const n=t.timeZone||"UTC";switch(e){case String:return r.DateUtil.nowIso(n);case Number:return r.DateUtil.nowEpoch(n);case Date:default:return r.DateUtil.nowDate(n)}};t.generateDate=generateDate},3170:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:true});t.generateUuid=void 0;const r=n(4932);const generateUuid=e=>{try{e("uuid");const{v4:t}=n(6132);return t()}catch(e){throw new r.SymbiosisError({code:"INVALID_PARAM",message:"Invalid param",origin:"SYMBIOSIS",details:['To use the "uuid" option, you need to install the "uuid" lib.',"Example: `yarn add uuid` OR `npm i --save uuid`"]})}};t.generateUuid=generateUuid},3842:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:true});t.autoGenerate=void 0;const r=n(2945);const o=n(8549);const i=n(3170);const autoGenerate=({columnMetadata:e,entityMetadata:t,connectionOptions:n,data:s})=>{if((0,r.getTypeof)(e.autoGenerate)==="function"){return e.autoGenerate({connectionOptions:n,columnMetadata:e,entityMetadata:t,data:s})}switch(e.autoGenerate){case"date":return(0,o.generateDate)(e.type,n);case"uuid":return(0,i.generateUuid)(require.resolve);default:return e.autoGenerate}};t.autoGenerate=autoGenerate},2046:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:true});t.formatColumns=void 0;const r=n(3748);const formatColumns=({columns:e,connectionOptions:t,applyPrefixSuffix:n=true})=>e.map((e=>{var o,i,s;const c=(0,r.getDatabaseName)({value:e.databaseName,isNameAlreadyFormatted:e.isNameAlreadyFormatted,namingStrategy:(o=t.namingStrategy)===null||o===void 0?void 0:o.column,optionsPrefix:n?(i=t.prefix)===null||i===void 0?void 0:i.column:undefined,optionsSuffix:n?(s=t.suffix)===null||s===void 0?void 0:s.column:undefined});return Object.assign(Object.assign({},e),{databaseName:c})}));t.formatColumns=formatColumns},3748:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:true});t.getDatabaseName=void 0;const r=n(8967);const o=n(648);const i=n(5571);const getDatabaseName=({value:e,isNameAlreadyFormatted:t,namingStrategy:n,optionsPrefix:s,optionsSuffix:c})=>{if(t){return e}const l=(0,o.formatPrefix)({value:e,options:s});const d=(0,i.formatSuffix)({value:l,options:c});const y=(0,r.formatNamingStrategy)({value:d,namingStrategy:n});return y};t.getDatabaseName=getDatabaseName},9908:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:true});t.getEntitiesMetadata=void 0;const r=n(4932);const o=n(2046);const i=n(3748);const s=n(8544);const getEntitiesMetadata=({logger:e,rawEntities:t,connectionOptions:n})=>{const c={};const l=[];t.forEach((t=>{var d,y,f;const p=s.MetadataUtil.getAllEntityMetadata({entity:t});if(c[p.name]){throw new r.SymbiosisError({message:"Duplicated Entity",code:"DUPLICATED_ENTITY",origin:"SYMBIOSIS",details:[`Entity: ${p.name}`]})}const m=(0,i.getDatabaseName)({value:p.databaseName,isNameAlreadyFormatted:p.isNameAlreadyFormatted,namingStrategy:(d=n.namingStrategy)===null||d===void 0?void 0:d.entity,optionsPrefix:(y=n.prefix)===null||y===void 0?void 0:y.entity,optionsSuffix:(f=n.suffix)===null||f===void 0?void 0:f.entity});const v=(0,o.formatColumns)({columns:p.columns,connectionOptions:n});c[p.name]=Object.assign(Object.assign({},p),{databaseName:m,columns:v});l.push(...v);e.debug(`Add Entity: ${JSON.stringify(c[p.name])}`)}));return{entities:c,columns:l}};t.getEntitiesMetadata=getEntitiesMetadata},2830:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:true});t.getSubEntitiesMetadata=void 0;const r=n(2046);const o=n(3748);const i=n(8544);const getSubEntitiesMetadata=({logger:e,allEntitiesColumns:n,entities:s,connectionOptions:c})=>{const l=n.filter((e=>i.MetadataUtil.isCustomMetadataType(e.type))).map((e=>e.type));l.forEach((n=>{var l,d,y;const f=i.MetadataUtil.getAllEntityMetadata({entity:n});if(s[f.name]){e.warn(`Duplicated SubEntity skipped, may be an error: ${f.name}`);return}const p=(0,o.getDatabaseName)({value:f.databaseName,isNameAlreadyFormatted:f.isNameAlreadyFormatted,namingStrategy:(l=c.namingStrategy)===null||l===void 0?void 0:l.entity,optionsPrefix:(d=c.prefix)===null||d===void 0?void 0:d.entity,optionsSuffix:(y=c.suffix)===null||y===void 0?void 0:y.entity});const m=(0,r.formatColumns)({columns:f.columns,applyPrefixSuffix:!f.isSubEntity,connectionOptions:c});s[f.name]=Object.assign(Object.assign({},f),{databaseName:p,columns:m});e.debug(`Add SubEntity: ${JSON.stringify(s[f.name])}`);(0,t.getSubEntitiesMetadata)({allEntitiesColumns:m,logger:e,entities:s,connectionOptions:c})}))};t.getSubEntitiesMetadata=getSubEntitiesMetadata},2900:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:true});t.loadEntities=void 0;const r=n(9908);const o=n(2830);const loadEntities=({connectionOptions:e,logger:t,entities:n})=>{const{entities:i,columns:s}=(0,r.getEntitiesMetadata)({logger:t,rawEntities:n,connectionOptions:e});(0,o.getSubEntitiesMetadata)({entities:i,logger:t,connectionOptions:e,allEntitiesColumns:s});return i};t.loadEntities=loadEntities},3578:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:true});t.COLUMN_METADATA_KEYS=void 0;t.COLUMN_METADATA_KEYS=["name","databaseName","isNameAlreadyFormatted","comment","type","databaseType","isArray","enumName","enumValues","autoGenerate","autoGenerateOnlyOnEvents","primary","extras"]},9473:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:true});t.ENTITY_METADATA_KEYS=void 0;t.ENTITY_METADATA_KEYS=["name","databaseName","isNameAlreadyFormatted","isSubEntity","columns","indexes","extras"]},4932:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:true});t.SymbiosisError=void 0;class SymbiosisError extends Error{constructor({message:e,code:t,origin:n,details:r}){super(e);this.code=t;this.origin=n;this.details=r;this.stack=JSON.stringify({message:e,code:t,origin:n,details:r},null,"\t")}}t.SymbiosisError=SymbiosisError},9070:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:true});t.addColor=void 0;const addColor=({message:e,logLevel:t})=>{switch(t){case"DEBUG":return`${e};`;case"ERROR":return`${e}`;case"WARN":return`${e}`;case"INFO":return`${e}`;case"LOG":default:return`${e}`}};t.addColor=addColor},401:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:true});t.getLogLevels=void 0;const getLogLevels=e=>{switch(e){case"ALL_INTERNAL":return["DEBUG","ERROR","INFO","LOG","WARN"];case"NONE":return[];case"ALL":case undefined:return["ERROR","WARN","LOG"];case"MINIMUM":return["ERROR"];default:return e}};t.getLogLevels=getLogLevels},4416:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:true});t.getTimestamp=void 0;const getTimestamp=()=>new Date(Date.now()).toLocaleString(undefined,{year:"numeric",hour:"numeric",minute:"numeric",second:"numeric",day:"2-digit",month:"2-digit"});t.getTimestamp=getTimestamp},3158:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:true});t.printMessage=void 0;const r=n(9070);const o=n(4416);const getOutput=e=>{if(["string","number"].includes(typeof e)){return e}return JSON.stringify(e)};const printMessage=({writeStreamType:e,message:t,logLevel:n,connectionName:i})=>{const s=7;const c=(0,r.addColor)({logLevel:n,message:`[Symbiosis] ${process.pid} - `});const l=(0,o.getTimestamp)();const d=(0,r.addColor)({logLevel:n,message:n.toUpperCase().padStart(s," ")});const y=getOutput(t);process[e||"stdout"].write(`${c}${l} ${d} [${i}] ${y}\n`)};t.printMessage=printMessage},5933:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:true});t.Logger=void 0;const r=n(401);const o=n(3158);class Logger{constructor(e,t){this.connectionName=e;this.logLevels=(0,r.getLogLevels)(t)}warn(e){if(!this.isLevelEnabled("WARN")){return}(0,o.printMessage)({message:e,logLevel:"WARN",connectionName:this.connectionName})}error(e){if(!this.isLevelEnabled("ERROR")){return}(0,o.printMessage)({message:e,logLevel:"ERROR",writeStreamType:"stderr",connectionName:this.connectionName})}log(e){if(!this.isLevelEnabled("LOG")){return}(0,o.printMessage)({message:e,logLevel:"LOG",connectionName:this.connectionName})}debug(e){if(!this.isLevelEnabled("DEBUG")){return}(0,o.printMessage)({message:e,logLevel:"DEBUG",connectionName:this.connectionName})}info(e){if(!this.isLevelEnabled("INFO")){return}(0,o.printMessage)({message:e,logLevel:"INFO",connectionName:this.connectionName})}static cliWarn(e){(0,o.printMessage)({message:e,logLevel:"WARN",writeStreamType:"stderr",connectionName:"CLI"})}static cliError(e){(0,o.printMessage)({message:e,logLevel:"ERROR",connectionName:"CLI"})}static cliLog(e){(0,o.printMessage)({message:e,logLevel:"LOG",connectionName:"CLI"})}static cliInfo(e){(0,o.printMessage)({message:e,logLevel:"INFO",connectionName:"CLI"})}isLevelEnabled(e){return this.logLevels.includes(e)}}t.Logger=Logger},7008:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:true})},9006:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:true});t.BaseRepository=void 0;const r=n(9610);const o=n(7461);const i=n(3900);const s=n(1795);const c=n(2098);const l=n(5232);const d=n(92);const y=n(9789);const f=n(1213);const p=n(4015);const m=n(1383);const v=n(8623);const g=n(1732);const b=n(743);const O=n(1331);const M=n(3687);const _=n(7632);const h=n(83);const S=n(7045);const E=n(2258);const P=n(4970);const j=n(6196);class BaseRepository{constructor(e,t,n){this.entityManager=e;this.logger=t;this.entity=n;const r=this.entityManager.getEntityMetadata(n);this.tableName=r.databaseName}beforeSave(e){return(0,M.beforeSave)({entity:this.entity,entityManager:this.entityManager},e)}afterSave(e){const t=(0,O.afterSave)({entity:this.entity,entityManager:this.entityManager},e);return t}beforeInsert(e){return(0,p.beforeInsert)({entity:this.entity,entityManager:this.entityManager},e)}afterInsert(e){const t=(0,f.afterInsert)({entity:this.entity,entityManager:this.entityManager},e);return t}beforeUpdate(e){return(0,E.beforeUpdate)({entity:this.entity,entityManager:this.entityManager},e)}afterUpdate(e){const t=(0,S.afterUpdate)({entity:this.entity,entityManager:this.entityManager},e);return t}beforeUpsert(e){return(0,j.beforeUpsert)({entity:this.entity,entityManager:this.entityManager},e)}afterUpsert(e){const t=(0,P.afterUpsert)({entity:this.entity,entityManager:this.entityManager},e);return t}beforeFind(e){return(0,y.beforeFind)({entity:this.entity,entityManager:this.entityManager},e)}afterFind(e){return(0,d.afterFind)({entity:this.entity,entityManager:this.entityManager},e)}beforeFindOne(e){return(0,l.beforeFindOne)({entity:this.entity,entityManager:this.entityManager},e)}afterFindOne(e){return(0,c.afterFindOne)({entity:this.entity,entityManager:this.entityManager},e)}beforeDelete(e){return(0,s.beforeDelete)({entity:this.entity,entityManager:this.entityManager},e)}afterDelete(e){return(0,i.afterDelete)({entity:this.entity,entityManager:this.entityManager},e)}beforeSoftDelete(e){return(0,h.beforeSoftDelete)({entity:this.entity,entityManager:this.entityManager},e)}afterSoftDelete(e){return(0,_.afterSoftDelete)({entity:this.entity,entityManager:this.entityManager},e)}beforeRecover(e){return(0,b.beforeRecover)({entity:this.entity,entityManager:this.entityManager},e)}afterRecover(e){return(0,g.afterRecover)({entity:this.entity,entityManager:this.entityManager},e)}beforeCount(e){return(0,o.beforeCount)({entity:this.entity,entityManager:this.entityManager},e)}afterCount(e){return(0,r.afterCount)({entity:this.entity,entityManager:this.entityManager},e)}beforePerformativeCount(e){return(0,v.beforePerformativeCount)({entity:this.entity,entityManager:this.entityManager},e)}afterPerformati