@warlock.js/cascade 1.0.1 → 1.0.3

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,3 +1,3 @@
1
- import { Model } from "../model";
1
+ import { Model } from "../model/model";
2
2
  export declare function castModel(model: typeof Model, embeddedKey?: string | string[]): (value: any) => Promise<any>;
3
3
  //# sourceMappingURL=castModel.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"castModel.d.ts","sourceRoot":"","sources":["../../src/casts/castModel.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AAEjC,wBAAgB,SAAS,CACvB,KAAK,EAAE,OAAO,KAAK,EACnB,WAAW,GAAE,MAAM,GAAG,MAAM,EAAmB,WAEC,GAAG,kBAkDpD"}
1
+ {"version":3,"file":"castModel.d.ts","sourceRoot":"","sources":["../../src/casts/castModel.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AAEvC,wBAAgB,SAAS,CACvB,KAAK,EAAE,OAAO,KAAK,EACnB,WAAW,GAAE,MAAM,GAAG,MAAM,EAAmB,WAEC,GAAG,kBAkDpD"}
@@ -1,4 +1,4 @@
1
- 'use strict';var supportiveIs=require('@mongez/supportive-is');require('@mongez/reinforcements'),require('@mongez/time-wizard'),require('@warlock.js/logger'),require('mongodb'),require('@mongez/events'),require('async_hooks'),require('../model/base-model.js'),require('../model/types.js'),require('pluralize');var model=require('../model/model.js');function castModel(model$1, embeddedKey = "embeddedData") {
1
+ 'use strict';var supportiveIs=require('@mongez/supportive-is'),model=require('../model/model.js');function castModel(model$1, embeddedKey = "embeddedData") {
2
2
  return async function injectEmbeddedData(value) {
3
3
  if (Array.isArray(value)) {
4
4
  const results = [];
@@ -1 +1 @@
1
- {"version":3,"file":"castModel.js","sources":["../../src/casts/castModel.ts"],"sourcesContent":[null],"names":["model","Model","isEmpty"],"mappings":"sWAGgB,SAAS,CACvBA,OAAmB,EACnB,cAAiC,cAAc,EAAA;AAE/C,IAAA,OAAO,eAAe,kBAAkB,CAAC,KAAU,EAAA;AACjD,QAAA,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;YACxB,MAAM,OAAO,GAAU,EAAE,CAAC;AAC1B,YAAA,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE;gBACxB,IAAI,KAAK,YAAYC,WAAK,EAAE;oBAC1B,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC,CAAC;AAC/C,iBAAA;qBAAM,IAAI,IAAI,EAAE,EAAE,EAAE;AACnB,oBAAA,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACpB,iBAAA;AACF,aAAA;AAED,YAAA,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC;AAAE,gBAAA,OAAO,OAAO,CAAC;YAEvC,MAAM,OAAO,GAAY,MAAMD,OAAK;AACjC,iBAAA,SAAS,EAAE;iBACX,OAAO,CACN,IAAI,EACJ,KAAK,CAAC,GAAG,CAAC,KAAK,IAAI,MAAM,CAAC,KAAK,CAAC,EAAE,IAAI,KAAK,CAAC,CAAC,CAC9C;AACA,iBAAA,GAAG,EAAE,CAAC;YAET,MAAM,SAAS,GAAG,OAAO;iBACtB,GAAG,CAAC,MAAM,IAAG;AACZ,gBAAA,OAAO,YAAY,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;AAC3C,aAAC,CAAC;iBACD,MAAM,CAAC,KAAK,IAAI,CAACE,oBAAO,CAAC,KAAK,CAAC,CAAC,CAAC;;YAGpC,MAAM,gBAAgB,GAAU,EAAE,CAAC;AAEnC,YAAA,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE;AACxB,gBAAA,MAAM,QAAQ,GAAG,SAAS,CAAC,IAAI,CAAC,QAAQ,IAAI,QAAQ,CAAC,EAAE,KAAK,IAAI,CAAC,EAAE,CAAC,CAAC;AACrE,gBAAA,IAAI,QAAQ,EAAE;AACZ,oBAAA,gBAAgB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;AACjC,iBAAA;AACF,aAAA;AAED,YAAA,OAAO,gBAAgB,CAAC;AACzB,SAAA;QAED,IAAI,KAAK,YAAYD,WAAK;AAAE,YAAA,OAAO,YAAY,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC;QAEpE,IAAI,KAAK,EAAE,EAAE;AAAE,YAAA,OAAO,KAAK,CAAC;AAE5B,QAAA,MAAM,MAAM,GAAQ,MAAMD,OAAK,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;AAEpD,QAAA,IAAI,CAAC,MAAM;AAAE,YAAA,OAAO,IAAI,CAAC;AAEzB,QAAA,OAAO,YAAY,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;AAC3C,KAAC,CAAC;AACJ,CAAC;AAED,SAAS,YAAY,CAAC,KAAY,EAAE,WAA8B,EAAA;AAChE,IAAA,IAAI,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE;AAC9B,QAAA,OAAO,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;AAChC,KAAA;AAED,IAAA,OAAQ,KAAa,CAAC,WAAW,CAAC,CAAC;AACrC"}
1
+ {"version":3,"file":"castModel.js","sources":["../../src/casts/castModel.ts"],"sourcesContent":[null],"names":["model","Model","isEmpty"],"mappings":"2GAGgB,SAAS,CACvBA,OAAmB,EACnB,cAAiC,cAAc,EAAA;AAE/C,IAAA,OAAO,eAAe,kBAAkB,CAAC,KAAU,EAAA;AACjD,QAAA,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;YACxB,MAAM,OAAO,GAAU,EAAE,CAAC;AAC1B,YAAA,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE;gBACxB,IAAI,KAAK,YAAYC,WAAK,EAAE;oBAC1B,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC,CAAC;AAC/C,iBAAA;qBAAM,IAAI,IAAI,EAAE,EAAE,EAAE;AACnB,oBAAA,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACpB,iBAAA;AACF,aAAA;AAED,YAAA,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC;AAAE,gBAAA,OAAO,OAAO,CAAC;YAEvC,MAAM,OAAO,GAAY,MAAMD,OAAK;AACjC,iBAAA,SAAS,EAAE;iBACX,OAAO,CACN,IAAI,EACJ,KAAK,CAAC,GAAG,CAAC,KAAK,IAAI,MAAM,CAAC,KAAK,CAAC,EAAE,IAAI,KAAK,CAAC,CAAC,CAC9C;AACA,iBAAA,GAAG,EAAE,CAAC;YAET,MAAM,SAAS,GAAG,OAAO;iBACtB,GAAG,CAAC,MAAM,IAAG;AACZ,gBAAA,OAAO,YAAY,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;AAC3C,aAAC,CAAC;iBACD,MAAM,CAAC,KAAK,IAAI,CAACE,oBAAO,CAAC,KAAK,CAAC,CAAC,CAAC;;YAGpC,MAAM,gBAAgB,GAAU,EAAE,CAAC;AAEnC,YAAA,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE;AACxB,gBAAA,MAAM,QAAQ,GAAG,SAAS,CAAC,IAAI,CAAC,QAAQ,IAAI,QAAQ,CAAC,EAAE,KAAK,IAAI,CAAC,EAAE,CAAC,CAAC;AACrE,gBAAA,IAAI,QAAQ,EAAE;AACZ,oBAAA,gBAAgB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;AACjC,iBAAA;AACF,aAAA;AAED,YAAA,OAAO,gBAAgB,CAAC;AACzB,SAAA;QAED,IAAI,KAAK,YAAYD,WAAK;AAAE,YAAA,OAAO,YAAY,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC;QAEpE,IAAI,KAAK,EAAE,EAAE;AAAE,YAAA,OAAO,KAAK,CAAC;AAE5B,QAAA,MAAM,MAAM,GAAQ,MAAMD,OAAK,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;AAEpD,QAAA,IAAI,CAAC,MAAM;AAAE,YAAA,OAAO,IAAI,CAAC;AAEzB,QAAA,OAAO,YAAY,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;AAC3C,KAAC,CAAC;AACJ,CAAC;AAED,SAAS,YAAY,CAAC,KAAY,EAAE,WAA8B,EAAA;AAChE,IAAA,IAAI,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE;AAC9B,QAAA,OAAO,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;AAChC,KAAA;AAED,IAAA,OAAQ,KAAa,CAAC,WAAW,CAAC,CAAC;AACrC"}
package/cjs/index.js CHANGED
@@ -1 +1 @@
1
- 'use strict';var DeselectPipeline=require('./aggregate/DeselectPipeline.js'),GeoNearPipeline=require('./aggregate/GeoNearPipeline.js'),GroupByPipeline=require('./aggregate/GroupByPipeline.js'),LimitPipeline=require('./aggregate/LimitPipeline.js'),LookupPipeline=require('./aggregate/LookupPipeline.js'),OrWherePipeline=require('./aggregate/OrWherePipeline.js'),SelectPipeline=require('./aggregate/SelectPipeline.js'),SkipPipeline=require('./aggregate/SkipPipeline.js'),SortByPipeline=require('./aggregate/SortByPipeline.js'),SortPipeline=require('./aggregate/SortPipeline.js'),SortRandomPipeline=require('./aggregate/SortRandomPipeline.js'),UnwindPipeline=require('./aggregate/UnwindPipeline.js'),WhereExpression=require('./aggregate/WhereExpression.js'),WhereExpressionPipeline=require('./aggregate/WhereExpressionPipeline.js'),WherePipeline=require('./aggregate/WherePipeline.js'),aggregate=require('./aggregate/aggregate.js'),expressions=require('./aggregate/expressions.js'),parsePipelines=require('./aggregate/parsePipelines.js'),pipeline=require('./aggregate/pipeline.js'),types=require('./aggregate/types.js'),blueprint=require('./blueprint/blueprint.js'),modelBlueprint=require('./blueprint/model-blueprint.js'),arrayOf=require('./casts/arrayOf.js'),castEmail=require('./casts/cast-email.js'),castModel=require('./casts/castModel.js'),expiresAfter=require('./casts/expiresAfter.js'),oneOf=require('./casts/oneOf.js'),randomString=require('./casts/random-string.js'),randomInteger=require('./casts/randomInteger.js'),shapedArray=require('./casts/shapedArray.js'),config=require('./config.js'),connection=require('./connection.js'),dbIndexesCommand=require('./console/db-indexes-command.js'),migrateCommand=require('./console/migrate-command.js'),registerBlueprintCommand=require('./console/register-blueprint-command.js'),database=require('./database.js'),migrate=require('./migration/migrate.js'),migrationOffice=require('./migration/migration-office.js'),ModelAggregate=require('./model/ModelAggregate.js'),ModelSync=require('./model/ModelSync.js'),baseModel=require('./model/base-model.js'),crudModel=require('./model/crud-model.js'),joinable=require('./model/joinable.js'),masterMind=require('./model/master-mind.js'),model=require('./model/model.js'),relationships=require('./model/relationships.js'),types$1=require('./model/types.js'),query=require('./query/query.js'),connectToDatabase=require('./utils/connectToDatabase.js'),dropAllDatabaseIndexes=require('./utils/dropAllDatabaseIndexes.js'),listDatabaseIndexes=require('./utils/listDatabaseIndexes.js'),onceConnected=require('./utils/onceConnected.js');exports.DeselectPipeline=DeselectPipeline.DeselectPipeline;exports.deselectPipeline=DeselectPipeline.deselectPipeline;exports.GeoNearPipeline=GeoNearPipeline.GeoNearPipeline;exports.geoNearPipeline=GeoNearPipeline.geoNearPipeline;exports.GroupByPipeline=GroupByPipeline.GroupByPipeline;exports.groupByPipeline=GroupByPipeline.groupByPipeline;exports.LimitPipeline=LimitPipeline.LimitPipeline;exports.limitPipeline=LimitPipeline.limitPipeline;exports.LookupPipeline=LookupPipeline.LookupPipeline;exports.lookupPipeline=LookupPipeline.lookupPipeline;exports.OrWherePipeline=OrWherePipeline.OrWherePipeline;exports.orWherePipeline=OrWherePipeline.orWherePipeline;exports.SelectPipeline=SelectPipeline.SelectPipeline;exports.selectPipeline=SelectPipeline.selectPipeline;exports.SkipPipeline=SkipPipeline.SkipPipeline;exports.skipPipeline=SkipPipeline.skipPipeline;exports.SortByPipeline=SortByPipeline.SortByPipeline;exports.sortByPipeline=SortByPipeline.sortByPipeline;exports.SortPipeline=SortPipeline.SortPipeline;exports.sortPipeline=SortPipeline.sortPipeline;exports.SortRandomPipeline=SortRandomPipeline.SortRandomPipeline;exports.sortRandomPipeline=SortRandomPipeline.sortRandomPipeline;exports.UnwindPipeline=UnwindPipeline.UnwindPipeline;exports.unwindPipeline=UnwindPipeline.unwindPipeline;exports.WhereExpression=WhereExpression.WhereExpression;exports.parseValuesInObject=WhereExpression.parseValuesInObject;exports.toOperator=WhereExpression.toOperator;exports.WhereExpressionPipeline=WhereExpressionPipeline.WhereExpressionPipeline;exports.WherePipeline=WherePipeline.WherePipeline;exports.wherePipeline=WherePipeline.wherePipeline;exports.Aggregate=aggregate.Aggregate;exports.$agg=expressions.$agg;exports._divide=expressions._divide;exports._multiply=expressions._multiply;exports._round=expressions._round;exports.addToSet=expressions.addToSet;exports.all=expressions.all;exports.average=expressions.average;exports.avg=expressions.avg;exports.between=expressions.between;exports.booleanCond=expressions.booleanCond;exports.columnName=expressions.columnName;exports.columns=expressions.columns;exports.concat=expressions.concat;exports.concatWith=expressions.concatWith;exports.cond=expressions.cond;exports.condition=expressions.condition;exports.count=expressions.count;exports.dayOfMonth=expressions.dayOfMonth;exports.dayOfWeek=expressions.dayOfWeek;exports.divide=expressions.divide;exports.eq=expressions.eq;exports.equal=expressions.equal;exports.exists=expressions.exists;exports.expr=expressions.expr;exports.first=expressions.first;exports.firstDayOfMonth=expressions.firstDayOfMonth;exports.firstMonth=expressions.firstMonth;exports.firstYear=expressions.firstYear;exports.greaterThan=expressions.greaterThan;exports.greaterThanOrEqual=expressions.greaterThanOrEqual;exports.gt=expressions.gt;exports.gte=expressions.gte;exports.inArray=expressions.inArray;exports.isNull=expressions.isNull;exports.last=expressions.last;exports.lastDayOfMonth=expressions.lastDayOfMonth;exports.lastMonth=expressions.lastMonth;exports.lastYear=expressions.lastYear;exports.lessThan=expressions.lessThan;exports.lessThanOrEqual=expressions.lessThanOrEqual;exports.like=expressions.like;exports.lt=expressions.lt;exports.lte=expressions.lte;exports.max=expressions.max;exports.merge=expressions.merge;exports.mergeWith=expressions.mergeWith;exports.min=expressions.min;exports.month=expressions.month;exports.multiply=expressions.multiply;exports.ne=expressions.ne;exports.nin=expressions.nin;exports.notBetween=expressions.notBetween;exports.notEqual=expressions.notEqual;exports.notExists=expressions.notExists;exports.notIn=expressions.notIn;exports.notInArray=expressions.notInArray;exports.notLike=expressions.notLike;exports.notNull=expressions.notNull;exports.push=expressions.push;exports.regex=expressions.regex;exports.round=expressions.round;exports.size=expressions.size;exports.sum=expressions.sum;exports.week=expressions.week;exports.year=expressions.year;exports.parsePipeline=parsePipelines.parsePipeline;exports.parsePipelines=parsePipelines.parsePipelines;exports.Pipeline=pipeline.Pipeline;exports.whereOperators=types.whereOperators;exports.Blueprint=blueprint.Blueprint;exports.blueprint=blueprint.blueprint;exports.ModelBlueprint=modelBlueprint.ModelBlueprint;exports.modelBlueprint=modelBlueprint.modelBlueprint;exports.arrayOf=arrayOf.arrayOf;exports.castEmail=castEmail.castEmail;exports.castModel=castModel.castModel;exports.expiresAfter=expiresAfter.expiresAfter;exports.castEnum=oneOf.castEnum;exports.oneOf=oneOf.oneOf;exports.randomString=randomString.randomString;exports.randomInteger=randomInteger.randomInteger;Object.defineProperty(exports,'ShapedArrayType',{enumerable:true,get:function(){return shapedArray.ShapedArrayType}});exports.shapedArray=shapedArray.shapedArray;exports.getDatabaseConfigurations=config.getDatabaseConfigurations;exports.setDatabaseConfigurations=config.setDatabaseConfigurations;exports.Connection=connection.Connection;exports.connection=connection.connection;exports.registerDatabaseIndexesCommand=dbIndexesCommand.registerDatabaseIndexesCommand;exports.registerMigrationCommand=migrateCommand.registerMigrationCommand;exports.parseBlueprint=registerBlueprintCommand.parseBlueprint;exports.Database=database.Database;exports.database=database.database;exports.dropMigrations=migrate.dropMigrations;exports.listMigrations=migrate.listMigrations;exports.migrate=migrate.migrate;exports.MigrationOffice=migrationOffice.MigrationOffice;exports.migrationOffice=migrationOffice.migrationOffice;exports.ModelAggregate=ModelAggregate.ModelAggregate;exports.ModelSync=ModelSync.ModelSync;exports.BaseModel=baseModel.BaseModel;exports.CrudModel=crudModel.CrudModel;exports.Joinable=joinable.Joinable;exports.MasterMind=masterMind.MasterMind;exports.masterMind=masterMind.masterMind;exports.Model=model.Model;exports.RelationshipModel=relationships.RelationshipModel;Object.defineProperty(exports,'ModelDeleteStrategy',{enumerable:true,get:function(){return types$1.ModelDeleteStrategy}});exports.Query=query.Query;exports.query=query.query;exports.connectToDatabase=connectToDatabase.connectToDatabase;exports.dropAllDatabaseIndexes=dropAllDatabaseIndexes.dropAllDatabaseIndexes;exports.listDatabaseIndexes=listDatabaseIndexes.listDatabaseIndexes;exports.listIndexesForCertainCollections=listDatabaseIndexes.listIndexesForCertainCollections;exports.printCollectionIndexes=listDatabaseIndexes.printCollectionIndexes;exports.onceConnected=onceConnected.onceConnected;//# sourceMappingURL=index.js.map
1
+ 'use strict';var DeselectPipeline=require('./aggregate/DeselectPipeline.js'),GeoNearPipeline=require('./aggregate/GeoNearPipeline.js'),GroupByPipeline=require('./aggregate/GroupByPipeline.js'),LimitPipeline=require('./aggregate/LimitPipeline.js'),LookupPipeline=require('./aggregate/LookupPipeline.js'),OrWherePipeline=require('./aggregate/OrWherePipeline.js'),SelectPipeline=require('./aggregate/SelectPipeline.js'),SkipPipeline=require('./aggregate/SkipPipeline.js'),SortByPipeline=require('./aggregate/SortByPipeline.js'),SortPipeline=require('./aggregate/SortPipeline.js'),SortRandomPipeline=require('./aggregate/SortRandomPipeline.js'),UnwindPipeline=require('./aggregate/UnwindPipeline.js'),WhereExpression=require('./aggregate/WhereExpression.js'),WhereExpressionPipeline=require('./aggregate/WhereExpressionPipeline.js'),WherePipeline=require('./aggregate/WherePipeline.js'),aggregate=require('./aggregate/aggregate.js'),expressions=require('./aggregate/expressions.js'),parsePipelines=require('./aggregate/parsePipelines.js'),pipeline=require('./aggregate/pipeline.js'),types=require('./aggregate/types.js'),blueprint=require('./blueprint/blueprint.js'),modelBlueprint=require('./blueprint/model-blueprint.js'),arrayOf=require('./casts/arrayOf.js'),castEmail=require('./casts/cast-email.js'),castModel=require('./casts/castModel.js'),expiresAfter=require('./casts/expiresAfter.js'),oneOf=require('./casts/oneOf.js'),randomString=require('./casts/random-string.js'),randomInteger=require('./casts/randomInteger.js'),shapedArray=require('./casts/shapedArray.js'),config=require('./config.js'),connection=require('./connection.js'),dbIndexesCommand=require('./console/db-indexes-command.js'),migrateCommand=require('./console/migrate-command.js'),registerBlueprintCommand=require('./console/register-blueprint-command.js'),database=require('./database.js'),migrate=require('./migration/migrate.js'),migrationOffice=require('./migration/migration-office.js'),ModelAggregate=require('./model/ModelAggregate.js'),ModelSync=require('./model/ModelSync.js'),baseModel=require('./model/base-model.js'),crudModel=require('./model/crud-model.js'),joinable=require('./model/joinable.js'),masterMind=require('./model/master-mind.js'),model=require('./model/model.js'),types$1=require('./model/types.js'),query=require('./query/query.js'),connectToDatabase=require('./utils/connectToDatabase.js'),dropAllDatabaseIndexes=require('./utils/dropAllDatabaseIndexes.js'),listDatabaseIndexes=require('./utils/listDatabaseIndexes.js'),onceConnected=require('./utils/onceConnected.js');exports.DeselectPipeline=DeselectPipeline.DeselectPipeline;exports.deselectPipeline=DeselectPipeline.deselectPipeline;exports.GeoNearPipeline=GeoNearPipeline.GeoNearPipeline;exports.geoNearPipeline=GeoNearPipeline.geoNearPipeline;exports.GroupByPipeline=GroupByPipeline.GroupByPipeline;exports.groupByPipeline=GroupByPipeline.groupByPipeline;exports.LimitPipeline=LimitPipeline.LimitPipeline;exports.limitPipeline=LimitPipeline.limitPipeline;exports.LookupPipeline=LookupPipeline.LookupPipeline;exports.lookupPipeline=LookupPipeline.lookupPipeline;exports.OrWherePipeline=OrWherePipeline.OrWherePipeline;exports.orWherePipeline=OrWherePipeline.orWherePipeline;exports.SelectPipeline=SelectPipeline.SelectPipeline;exports.selectPipeline=SelectPipeline.selectPipeline;exports.SkipPipeline=SkipPipeline.SkipPipeline;exports.skipPipeline=SkipPipeline.skipPipeline;exports.SortByPipeline=SortByPipeline.SortByPipeline;exports.sortByPipeline=SortByPipeline.sortByPipeline;exports.SortPipeline=SortPipeline.SortPipeline;exports.sortPipeline=SortPipeline.sortPipeline;exports.SortRandomPipeline=SortRandomPipeline.SortRandomPipeline;exports.sortRandomPipeline=SortRandomPipeline.sortRandomPipeline;exports.UnwindPipeline=UnwindPipeline.UnwindPipeline;exports.unwindPipeline=UnwindPipeline.unwindPipeline;exports.WhereExpression=WhereExpression.WhereExpression;exports.parseValuesInObject=WhereExpression.parseValuesInObject;exports.toOperator=WhereExpression.toOperator;exports.WhereExpressionPipeline=WhereExpressionPipeline.WhereExpressionPipeline;exports.WherePipeline=WherePipeline.WherePipeline;exports.wherePipeline=WherePipeline.wherePipeline;exports.Aggregate=aggregate.Aggregate;exports.$agg=expressions.$agg;exports._divide=expressions._divide;exports._multiply=expressions._multiply;exports._round=expressions._round;exports.addToSet=expressions.addToSet;exports.all=expressions.all;exports.average=expressions.average;exports.avg=expressions.avg;exports.between=expressions.between;exports.booleanCond=expressions.booleanCond;exports.columnName=expressions.columnName;exports.columns=expressions.columns;exports.concat=expressions.concat;exports.concatWith=expressions.concatWith;exports.cond=expressions.cond;exports.condition=expressions.condition;exports.count=expressions.count;exports.dayOfMonth=expressions.dayOfMonth;exports.dayOfWeek=expressions.dayOfWeek;exports.divide=expressions.divide;exports.eq=expressions.eq;exports.equal=expressions.equal;exports.exists=expressions.exists;exports.expr=expressions.expr;exports.first=expressions.first;exports.firstDayOfMonth=expressions.firstDayOfMonth;exports.firstMonth=expressions.firstMonth;exports.firstYear=expressions.firstYear;exports.greaterThan=expressions.greaterThan;exports.greaterThanOrEqual=expressions.greaterThanOrEqual;exports.gt=expressions.gt;exports.gte=expressions.gte;exports.inArray=expressions.inArray;exports.isNull=expressions.isNull;exports.last=expressions.last;exports.lastDayOfMonth=expressions.lastDayOfMonth;exports.lastMonth=expressions.lastMonth;exports.lastYear=expressions.lastYear;exports.lessThan=expressions.lessThan;exports.lessThanOrEqual=expressions.lessThanOrEqual;exports.like=expressions.like;exports.lt=expressions.lt;exports.lte=expressions.lte;exports.max=expressions.max;exports.merge=expressions.merge;exports.mergeWith=expressions.mergeWith;exports.min=expressions.min;exports.month=expressions.month;exports.multiply=expressions.multiply;exports.ne=expressions.ne;exports.nin=expressions.nin;exports.notBetween=expressions.notBetween;exports.notEqual=expressions.notEqual;exports.notExists=expressions.notExists;exports.notIn=expressions.notIn;exports.notInArray=expressions.notInArray;exports.notLike=expressions.notLike;exports.notNull=expressions.notNull;exports.push=expressions.push;exports.regex=expressions.regex;exports.round=expressions.round;exports.size=expressions.size;exports.sum=expressions.sum;exports.week=expressions.week;exports.year=expressions.year;exports.parsePipeline=parsePipelines.parsePipeline;exports.parsePipelines=parsePipelines.parsePipelines;exports.Pipeline=pipeline.Pipeline;exports.whereOperators=types.whereOperators;exports.Blueprint=blueprint.Blueprint;exports.blueprint=blueprint.blueprint;exports.ModelBlueprint=modelBlueprint.ModelBlueprint;exports.modelBlueprint=modelBlueprint.modelBlueprint;exports.arrayOf=arrayOf.arrayOf;exports.castEmail=castEmail.castEmail;exports.castModel=castModel.castModel;exports.expiresAfter=expiresAfter.expiresAfter;exports.castEnum=oneOf.castEnum;exports.oneOf=oneOf.oneOf;exports.randomString=randomString.randomString;exports.randomInteger=randomInteger.randomInteger;Object.defineProperty(exports,'ShapedArrayType',{enumerable:true,get:function(){return shapedArray.ShapedArrayType}});exports.shapedArray=shapedArray.shapedArray;exports.getDatabaseConfigurations=config.getDatabaseConfigurations;exports.setDatabaseConfigurations=config.setDatabaseConfigurations;exports.Connection=connection.Connection;exports.connection=connection.connection;exports.registerDatabaseIndexesCommand=dbIndexesCommand.registerDatabaseIndexesCommand;exports.registerMigrationCommand=migrateCommand.registerMigrationCommand;exports.parseBlueprint=registerBlueprintCommand.parseBlueprint;exports.Database=database.Database;exports.database=database.database;exports.dropMigrations=migrate.dropMigrations;exports.listMigrations=migrate.listMigrations;exports.migrate=migrate.migrate;exports.MigrationOffice=migrationOffice.MigrationOffice;exports.migrationOffice=migrationOffice.migrationOffice;exports.ModelAggregate=ModelAggregate.ModelAggregate;exports.ModelSync=ModelSync.ModelSync;exports.BaseModel=baseModel.BaseModel;exports.CrudModel=crudModel.CrudModel;exports.Joinable=joinable.Joinable;exports.MasterMind=masterMind.MasterMind;exports.masterMind=masterMind.masterMind;exports.Model=model.Model;Object.defineProperty(exports,'ModelDeleteStrategy',{enumerable:true,get:function(){return types$1.ModelDeleteStrategy}});exports.Query=query.Query;exports.query=query.query;exports.connectToDatabase=connectToDatabase.connectToDatabase;exports.dropAllDatabaseIndexes=dropAllDatabaseIndexes.dropAllDatabaseIndexes;exports.listDatabaseIndexes=listDatabaseIndexes.listDatabaseIndexes;exports.listIndexesForCertainCollections=listDatabaseIndexes.listIndexesForCertainCollections;exports.printCollectionIndexes=listDatabaseIndexes.printCollectionIndexes;exports.onceConnected=onceConnected.onceConnected;//# sourceMappingURL=index.js.map
@@ -1,5 +1,4 @@
1
- import type { GenericObject } from "@mongez/reinforcements";
2
- import { Model } from "./model";
1
+ import type { Model } from "./model";
3
2
  import type { Filter } from "./types";
4
3
  export declare class RelationshipWithMany<T> {
5
4
  protected model: Model;
@@ -9,10 +8,6 @@ export declare class RelationshipWithMany<T> {
9
8
  * Constructor
10
9
  */
11
10
  constructor(model: Model, relatedModel: typeof Model, column: string);
12
- /**
13
- * Add the given model to the relationship
14
- */
15
- add(model: Model | GenericObject): Promise<void>;
16
11
  /**
17
12
  * Create and add the given model to the relationship
18
13
  */
@@ -1 +1 @@
1
- {"version":3,"file":"RelationshipWithMany.d.ts","sourceRoot":"","sources":["../../src/model/RelationshipWithMany.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAC5D,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAChC,OAAO,KAAK,EAAE,MAAM,EAAiB,MAAM,SAAS,CAAC;AAErD,qBAAa,oBAAoB,CAAC,CAAC;IAK/B,SAAS,CAAC,KAAK,EAAE,KAAK;IACtB,SAAS,CAAC,YAAY,EAAE,OAAO,KAAK;IACpC,SAAS,CAAC,MAAM,EAAE,MAAM;IAN1B;;OAEG;gBAES,KAAK,EAAE,KAAK,EACZ,YAAY,EAAE,OAAO,KAAK,EAC1B,MAAM,EAAE,MAAM;IAK1B;;OAEG;IACU,GAAG,CAAC,KAAK,EAAE,KAAK,GAAG,aAAa;IAU7C;;OAEG;IACU,MAAM,CAAC,IAAI,EAAE,GAAG;IAM7B;;OAEG;IACU,MAAM,CAAC,KAAK,EAAE,KAAK;IAIhC;;OAEG;IACU,IAAI,CAAC,MAAM,GAAE,MAAW;CAiBtC"}
1
+ {"version":3,"file":"RelationshipWithMany.d.ts","sourceRoot":"","sources":["../../src/model/RelationshipWithMany.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AACrC,OAAO,KAAK,EAAE,MAAM,EAAiB,MAAM,SAAS,CAAC;AAErD,qBAAa,oBAAoB,CAAC,CAAC;IAK/B,SAAS,CAAC,KAAK,EAAE,KAAK;IACtB,SAAS,CAAC,YAAY,EAAE,OAAO,KAAK;IACpC,SAAS,CAAC,MAAM,EAAE,MAAM;IAN1B;;OAEG;gBAES,KAAK,EAAE,KAAK,EACZ,YAAY,EAAE,OAAO,KAAK,EAC1B,MAAM,EAAE,MAAM;IAK1B;;OAEG;IACU,MAAM,CAAC,IAAI,EAAE,GAAG;IAM7B;;OAEG;IACU,MAAM,CAAC,KAAK,EAAE,KAAK;IAIhC;;OAEG;IACU,IAAI,CAAC,MAAM,GAAE,MAAW;CAiBtC"}
@@ -1,4 +1,4 @@
1
- 'use strict';var model=require('./model.js');class RelationshipWithMany {
1
+ 'use strict';class RelationshipWithMany {
2
2
  model;
3
3
  relatedModel;
4
4
  column;
@@ -11,16 +11,6 @@
11
11
  this.column = column;
12
12
  //
13
13
  }
14
- /**
15
- * Add the given model to the relationship
16
- */
17
- async add(model$1) {
18
- if (model$1 instanceof model.Model === false) {
19
- model$1 = new this.relatedModel(model$1);
20
- }
21
- await model$1.save();
22
- await this.model.associate(this.column, model$1).save();
23
- }
24
14
  /**
25
15
  * Create and add the given model to the relationship
26
16
  */
@@ -1 +1 @@
1
- {"version":3,"file":"RelationshipWithMany.js","sources":["../../src/model/RelationshipWithMany.ts"],"sourcesContent":[null],"names":["model","Model"],"mappings":"mDAIa,oBAAoB,CAAA;AAKnB,IAAA,KAAA,CAAA;AACA,IAAA,YAAA,CAAA;AACA,IAAA,MAAA,CAAA;AANZ;;AAEG;AACH,IAAA,WAAA,CACY,KAAY,EACZ,YAA0B,EAC1B,MAAc,EAAA;QAFd,IAAK,CAAA,KAAA,GAAL,KAAK,CAAO;QACZ,IAAY,CAAA,YAAA,GAAZ,YAAY,CAAc;QAC1B,IAAM,CAAA,MAAA,GAAN,MAAM,CAAQ;;KAGzB;AAED;;AAEG;IACI,MAAM,GAAG,CAACA,OAA4B,EAAA;AAC3C,QAAA,IAAIA,OAAK,YAAYC,WAAK,KAAK,KAAK,EAAE;YACpCD,OAAK,GAAG,IAAI,IAAI,CAAC,YAAY,CAACA,OAAK,CAAC,CAAC;AACtC,SAAA;AAED,QAAA,MAAMA,OAAK,CAAC,IAAI,EAAE,CAAC;AAEnB,QAAA,MAAM,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,EAAEA,OAAK,CAAC,CAAC,IAAI,EAAE,CAAC;KACvD;AAED;;AAEG;IACI,MAAM,MAAM,CAAC,IAAS,EAAA;QAC3B,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;QAElC,OAAO,MAAM,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;KAC7C;AAED;;AAEG;IACI,MAAM,MAAM,CAAC,KAAY,EAAA;AAC9B,QAAA,MAAM,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,IAAI,EAAE,CAAC;KAC1D;AAED;;AAEG;AACI,IAAA,MAAM,IAAI,CAAC,MAAA,GAAiB,EAAE,EAAA;AACnC,QAAA,MAAM,iBAAiB,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;AAE5D,QAAA,MAAM,oBAAoB,GAAG,iBAAiB,CAAC,GAAG;;QAEhD,CAAC,QAAuB,KAAK,QAAQ,CAAC,EAAE,IAAI,QAAQ,CACrD,CAAC;QAEF,MAAM,SAAS,IAAI,MAAO,IAAI,CAAC,YAAoB,CAAC,IAAI,CAAC;AACvD,YAAA,EAAE,EAAE,oBAAoB;AACxB,YAAA,GAAG,MAAM;AACV,SAAA,CAAC,CAAQ,CAAC;QAEX,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;AAEvC,QAAA,OAAO,SAAS,CAAC;KAClB;AACF"}
1
+ {"version":3,"file":"RelationshipWithMany.js","sources":["../../src/model/RelationshipWithMany.ts"],"sourcesContent":[null],"names":[],"mappings":"mBAGa,oBAAoB,CAAA;AAKnB,IAAA,KAAA,CAAA;AACA,IAAA,YAAA,CAAA;AACA,IAAA,MAAA,CAAA;AANZ;;AAEG;AACH,IAAA,WAAA,CACY,KAAY,EACZ,YAA0B,EAC1B,MAAc,EAAA;QAFd,IAAK,CAAA,KAAA,GAAL,KAAK,CAAO;QACZ,IAAY,CAAA,YAAA,GAAZ,YAAY,CAAc;QAC1B,IAAM,CAAA,MAAA,GAAN,MAAM,CAAQ;;KAGzB;AAED;;AAEG;IACI,MAAM,MAAM,CAAC,IAAS,EAAA;QAC3B,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;QAElC,OAAO,MAAM,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;KAC7C;AAED;;AAEG;IACI,MAAM,MAAM,CAAC,KAAY,EAAA;AAC9B,QAAA,MAAM,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,IAAI,EAAE,CAAC;KAC1D;AAED;;AAEG;AACI,IAAA,MAAM,IAAI,CAAC,MAAA,GAAiB,EAAE,EAAA;AACnC,QAAA,MAAM,iBAAiB,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;AAE5D,QAAA,MAAM,oBAAoB,GAAG,iBAAiB,CAAC,GAAG;;QAEhD,CAAC,QAAuB,KAAK,QAAQ,CAAC,EAAE,IAAI,QAAQ,CACrD,CAAC;QAEF,MAAM,SAAS,IAAI,MAAO,IAAI,CAAC,YAAoB,CAAC,IAAI,CAAC;AACvD,YAAA,EAAE,EAAE,oBAAoB;AACxB,YAAA,GAAG,MAAM;AACV,SAAA,CAAC,CAAQ,CAAC;QAEX,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;AAEvC,QAAA,OAAO,SAAS,CAAC;KAClB;AACF"}
@@ -1,11 +1,10 @@
1
+ export * from "../migration/migration-office";
1
2
  export * from "./ModelAggregate";
2
3
  export * from "./ModelSync";
3
4
  export * from "./base-model";
4
5
  export * from "./crud-model";
5
6
  export * from "./joinable";
6
7
  export * from "./master-mind";
7
- export * from "../migration/migration-office";
8
8
  export * from "./model";
9
- export * from "./relationships";
10
9
  export * from "./types";
11
10
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/model/index.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAC;AACjC,cAAc,aAAa,CAAC;AAC5B,cAAc,cAAc,CAAC;AAC7B,cAAc,cAAc,CAAC;AAC7B,cAAc,YAAY,CAAC;AAC3B,cAAc,eAAe,CAAC;AAC9B,cAAc,+BAA+B,CAAC;AAC9C,cAAc,SAAS,CAAC;AACxB,cAAc,iBAAiB,CAAC;AAChC,cAAc,SAAS,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/model/index.ts"],"names":[],"mappings":"AAAA,cAAc,+BAA+B,CAAC;AAC9C,cAAc,kBAAkB,CAAC;AACjC,cAAc,aAAa,CAAC;AAC5B,cAAc,cAAc,CAAC;AAC7B,cAAc,cAAc,CAAC;AAC7B,cAAc,YAAY,CAAC;AAC3B,cAAc,eAAe,CAAC;AAC9B,cAAc,SAAS,CAAC;AACxB,cAAc,SAAS,CAAC"}
@@ -1,7 +1,10 @@
1
1
  import { ObjectId } from "mongodb";
2
- import type { Joinable } from "src/cascade/model/joinable";
3
- import { RelationshipModel } from "./relationships";
4
- import type { CastType, Casts, CustomCasts, Document } from "./types";
2
+ import { ModelAggregate } from "./ModelAggregate";
3
+ import { ModelSync } from "./ModelSync";
4
+ import { RelationshipWithMany } from "./RelationshipWithMany";
5
+ import { CrudModel } from "./crud-model";
6
+ import { Joinable } from "./joinable";
7
+ import type { CastType, Casts, ChildModel, CustomCasts, Document, ModelDocument } from "./types";
5
8
  export type Schema<ModelSchema = Document> = ModelSchema & {
6
9
  _id?: ObjectId;
7
10
  id?: number;
@@ -9,8 +12,7 @@ export type Schema<ModelSchema = Document> = ModelSchema & {
9
12
  updatedAt?: Date;
10
13
  };
11
14
  type ModelSchema = Schema;
12
- type ModelDocument = Document;
13
- export declare class Model extends RelationshipModel {
15
+ export declare class Model extends CrudModel {
14
16
  /**
15
17
  * Model Initial Document data
16
18
  */
@@ -36,6 +38,10 @@ export declare class Model extends RelationshipModel {
36
38
  * Model casts types
37
39
  */
38
40
  protected casts: Casts;
41
+ /**
42
+ * Sync with list
43
+ */
44
+ syncWith: ModelSync[];
39
45
  /**
40
46
  * Set custom casts that will be used to cast the model's data are not related to the current value of the collection's column
41
47
  *
@@ -322,6 +328,62 @@ export declare class Model extends RelationshipModel {
322
328
  * Clone the model
323
329
  */
324
330
  clone(data?: Document): this;
331
+ /**
332
+ * Get relationship with the given model class
333
+ */
334
+ hasMany<T extends Model = Model>(modelClass: typeof Model, column: string): RelationshipWithMany<T>;
335
+ /**
336
+ * Get new aggregate for current model
337
+ */
338
+ static aggregate<T extends Model = Model>(this: ChildModel<T>): ModelAggregate<T>;
339
+ /**
340
+ * Get query builder
341
+ * @alias aggregate
342
+ */
343
+ static queryBuilder<T extends Model = Model>(this: ChildModel<T>): ModelAggregate<T>;
344
+ /**
345
+ * Sync with the given model
346
+ */
347
+ static sync(columns: string | string[], embedMethod?: string): ModelSync;
348
+ /**
349
+ * Sync data on saving
350
+ */
351
+ startSyncing(saveMode: "create" | "update", oldModel?: Model): void;
352
+ /**
353
+ * Sync destruction
354
+ * Called when destroy method is called
355
+ */
356
+ syncDestruction(): void;
357
+ /**
358
+ * The syncing model (That calls startSyncing) is being embedded in multiple documents of current model
359
+ * I.e Country.syncMany('cities') while current model is City
360
+ */
361
+ static syncMany(columns: string | string[], embedMethod?: string): ModelSync;
362
+ /**
363
+ * Reassociate a model/object/document with the current model
364
+ * If the model is already associated, it will be updated
365
+ * If not, it will be associated
366
+ * the model/document must have an id
367
+ *
368
+ * If it is a model, you can set the embed method to use
369
+ */
370
+ reassociate(this: Model, column: string, model: Model | ModelDocument | any, embedWith?: string): Model;
371
+ /**
372
+ * Associate a model with the current model
373
+ */
374
+ associate(this: Model, column: string, model: Model | ModelDocument | any, embedWith?: string): Model;
375
+ /**
376
+ * Disassociate a model with the current model
377
+ */
378
+ disassociate(this: Model, column: string, model: Model | ModelDocument | any): Model;
379
+ /**
380
+ * Make a wrapper to list when models should be updated when only one of the given columns is updated
381
+ */
382
+ syncUpdateWhenChange(columns: string | string[], syncModels: ModelSync[]): ModelSync[];
383
+ /**
384
+ * Get a Joinable instance for current model
385
+ */
386
+ static joinable(localField?: string, foreignField?: string, single?: boolean, as?: string): import("./joinable").JoinableProxy;
325
387
  }
326
388
  export type ModelType = typeof Model;
327
389
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"model.d.ts","sourceRoot":"","sources":["../../src/model/model.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"model.d.ts","sourceRoot":"","sources":["../../src/model/model.ts"],"names":[],"mappings":"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"}
@@ -1,9 +1,9 @@
1
- 'use strict';var reinforcements=require('@mongez/reinforcements'),supportiveIs=require('@mongez/supportive-is'),timeWizard=require('@mongez/time-wizard'),dayjs=require('dayjs'),mongodb=require('mongodb');require('../casts/arrayOf.js');var castModel=require('../casts/castModel.js'),oneOf=require('../casts/oneOf.js');require('../casts/shapedArray.js');var relationships=require('./relationships.js'),types=require('./types.js');function _interopDefault(e){return e&&e.__esModule?e:{default:e}}var dayjs__default=/*#__PURE__*/_interopDefault(dayjs);class Model
1
+ 'use strict';var reinforcements=require('@mongez/reinforcements'),supportiveIs=require('@mongez/supportive-is'),timeWizard=require('@mongez/time-wizard'),dayjs=require('dayjs'),mongodb=require('mongodb'),castModel=require('../casts/castModel.js'),oneOf=require('../casts/oneOf.js'),joinableProxy=require('../utils/joinable-proxy.js'),ModelAggregate=require('./ModelAggregate.js'),ModelSync=require('./ModelSync.js'),RelationshipWithMany=require('./RelationshipWithMany.js'),crudModel=require('./crud-model.js'),joinable=require('./joinable.js'),types=require('./types.js');function _interopDefault(e){return e&&e.__esModule?e:{default:e}}var dayjs__default=/*#__PURE__*/_interopDefault(dayjs);class Model
2
2
  // <
3
3
  // ModelDocument extends Document = any,
4
4
  // ModelSchema extends Schema<ModelDocument> = any,
5
5
  // >
6
- extends relationships.RelationshipModel {
6
+ extends crudModel.CrudModel {
7
7
  /**
8
8
  * Model Initial Document data
9
9
  */
@@ -29,6 +29,10 @@
29
29
  * Model casts types
30
30
  */
31
31
  casts = {};
32
+ /**
33
+ * Sync with list
34
+ */
35
+ syncWith = [];
32
36
  /**
33
37
  * Set custom casts that will be used to cast the model's data are not related to the current value of the collection's column
34
38
  *
@@ -845,4 +849,142 @@
845
849
  clone(data = this.data) {
846
850
  return new this.constructor(reinforcements.clone(data));
847
851
  }
852
+ /**
853
+ * Get relationship with the given model class
854
+ */
855
+ hasMany(modelClass, column) {
856
+ return new RelationshipWithMany.RelationshipWithMany(this, modelClass, column);
857
+ }
858
+ /**
859
+ * Get new aggregate for current model
860
+ */
861
+ static aggregate() {
862
+ return new ModelAggregate.ModelAggregate(this);
863
+ }
864
+ /**
865
+ * Get query builder
866
+ * @alias aggregate
867
+ */
868
+ static queryBuilder() {
869
+ return new ModelAggregate.ModelAggregate(this);
870
+ }
871
+ /**
872
+ * Sync with the given model
873
+ */
874
+ static sync(columns, embedMethod = "embedData") {
875
+ return new ModelSync.ModelSync(this, columns, embedMethod);
876
+ }
877
+ /**
878
+ * Sync data on saving
879
+ */
880
+ startSyncing(saveMode, oldModel) {
881
+ for (const modelSync of this.syncWith) {
882
+ modelSync.sync(this, saveMode, oldModel);
883
+ }
884
+ }
885
+ /**
886
+ * Sync destruction
887
+ * Called when destroy method is called
888
+ */
889
+ syncDestruction() {
890
+ for (const modelSync of this.syncWith) {
891
+ modelSync.syncDestruction(this);
892
+ }
893
+ }
894
+ /**
895
+ * The syncing model (That calls startSyncing) is being embedded in multiple documents of current model
896
+ * I.e Country.syncMany('cities') while current model is City
897
+ */
898
+ static syncMany(columns, embedMethod = "embedData") {
899
+ return new ModelSync.ModelSync(this, columns, embedMethod).syncMany();
900
+ }
901
+ /**
902
+ * Reassociate a model/object/document with the current model
903
+ * If the model is already associated, it will be updated
904
+ * If not, it will be associated
905
+ * the model/document must have an id
906
+ *
907
+ * If it is a model, you can set the embed method to use
908
+ */
909
+ reassociate(column, model, embedWith) {
910
+ const columnValue = model instanceof Model
911
+ ? embedWith
912
+ ? model[embedWith]()
913
+ : model.embeddedData
914
+ : model;
915
+ if (columnValue === undefined)
916
+ return this;
917
+ // make a deep copy so when changing the data, it won't affect the original data
918
+ const documentsList = reinforcements.clone(this.get(column, []));
919
+ const index = documentsList.findIndex((doc) => (doc?.id || doc) === (columnValue?.id || columnValue));
920
+ if (index === -1) {
921
+ documentsList.push(columnValue);
922
+ }
923
+ else {
924
+ documentsList[index] = columnValue;
925
+ }
926
+ this.set(column, [...documentsList]);
927
+ return this;
928
+ }
929
+ /**
930
+ * Associate a model with the current model
931
+ */
932
+ associate(column, model, embedWith) {
933
+ const columnValue = model instanceof Model
934
+ ? embedWith
935
+ ? model[embedWith]()
936
+ : model.embeddedData
937
+ : model;
938
+ if (columnValue === undefined)
939
+ return this;
940
+ const documentsList = this.get(column, []);
941
+ documentsList.push(columnValue);
942
+ this.set(column, documentsList);
943
+ return this;
944
+ }
945
+ /**
946
+ * Disassociate a model with the current model
947
+ */
948
+ disassociate(column, model) {
949
+ const columnValue = model instanceof Model ? model.embeddedData : model;
950
+ if (columnValue === undefined)
951
+ return this;
952
+ const documentsList = this.get(column, []);
953
+ if (!Array.isArray(documentsList))
954
+ return this;
955
+ const index = documentsList.findIndex((doc) => (doc?.id || doc) === (columnValue?.id || columnValue));
956
+ if (index !== -1) {
957
+ documentsList.splice(index, 1);
958
+ }
959
+ this.set(column, documentsList);
960
+ return this;
961
+ }
962
+ /**
963
+ * Make a wrapper to list when models should be updated when only one of the given columns is updated
964
+ */
965
+ syncUpdateWhenChange(columns, syncModels) {
966
+ return syncModels.map(syncModel => {
967
+ syncModel.updateWhenChange(columns);
968
+ return syncModel;
969
+ });
970
+ }
971
+ /**
972
+ * Get a Joinable instance for current model
973
+ */
974
+ static joinable(localField, foreignField, single, as) {
975
+ const joinable$1 = new joinable.Joinable(this);
976
+ if (localField) {
977
+ joinable$1.localField(localField);
978
+ }
979
+ if (foreignField) {
980
+ joinable$1.foreignField(foreignField);
981
+ }
982
+ if (single) {
983
+ joinable$1.single(single);
984
+ }
985
+ if (as) {
986
+ joinable$1.as(as);
987
+ }
988
+ return joinableProxy.joinableProxy(joinable$1);
989
+ }
848
990
  }exports.Model=Model;//# sourceMappingURL=model.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"model.js","sources":["../../src/model/model.ts"],"sourcesContent":[null],"names":["RelationshipModel","clone","ObjectId","get","except","only","set","merge","MongoServerError","areEqual","castModel","castEnum","isEmpty","isPlainObject","dayjs","toUTC","ModelDeleteStrategy"],"mappings":"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"}
1
+ {"version":3,"file":"model.js","sources":["../../src/model/model.ts"],"sourcesContent":[null],"names":["CrudModel","clone","ObjectId","get","except","only","set","merge","MongoServerError","areEqual","castModel","castEnum","isEmpty","isPlainObject","dayjs","toUTC","ModelDeleteStrategy","RelationshipWithMany","ModelAggregate","ModelSync","joinable","Joinable","joinableProxy"],"mappings":"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"}
@@ -1,3 +1,3 @@
1
- import { Model } from "../model";
1
+ import { Model } from "../model/model";
2
2
  export declare function castModel(model: typeof Model, embeddedKey?: string | string[]): (value: any) => Promise<any>;
3
3
  //# sourceMappingURL=castModel.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"castModel.d.ts","sourceRoot":"","sources":["../../src/casts/castModel.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AAEjC,wBAAgB,SAAS,CACvB,KAAK,EAAE,OAAO,KAAK,EACnB,WAAW,GAAE,MAAM,GAAG,MAAM,EAAmB,WAEC,GAAG,kBAkDpD"}
1
+ {"version":3,"file":"castModel.d.ts","sourceRoot":"","sources":["../../src/casts/castModel.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AAEvC,wBAAgB,SAAS,CACvB,KAAK,EAAE,OAAO,KAAK,EACnB,WAAW,GAAE,MAAM,GAAG,MAAM,EAAmB,WAEC,GAAG,kBAkDpD"}
@@ -1,4 +1,4 @@
1
- import {isEmpty}from'@mongez/supportive-is';import'@mongez/reinforcements';import'@mongez/time-wizard';import'@warlock.js/logger';import'mongodb';import'@mongez/events';import'async_hooks';import'../model/base-model.js';import'../model/types.js';import'pluralize';import {Model}from'../model/model.js';function castModel(model, embeddedKey = "embeddedData") {
1
+ import {isEmpty}from'@mongez/supportive-is';import {Model}from'../model/model.js';function castModel(model, embeddedKey = "embeddedData") {
2
2
  return async function injectEmbeddedData(value) {
3
3
  if (Array.isArray(value)) {
4
4
  const results = [];
@@ -1 +1 @@
1
- {"version":3,"file":"castModel.js","sources":["../../src/casts/castModel.ts"],"sourcesContent":[null],"names":[],"mappings":"uTAGgB,SAAS,CACvB,KAAmB,EACnB,cAAiC,cAAc,EAAA;AAE/C,IAAA,OAAO,eAAe,kBAAkB,CAAC,KAAU,EAAA;AACjD,QAAA,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;YACxB,MAAM,OAAO,GAAU,EAAE,CAAC;AAC1B,YAAA,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE;gBACxB,IAAI,KAAK,YAAY,KAAK,EAAE;oBAC1B,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC,CAAC;AAC/C,iBAAA;qBAAM,IAAI,IAAI,EAAE,EAAE,EAAE;AACnB,oBAAA,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACpB,iBAAA;AACF,aAAA;AAED,YAAA,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC;AAAE,gBAAA,OAAO,OAAO,CAAC;YAEvC,MAAM,OAAO,GAAY,MAAM,KAAK;AACjC,iBAAA,SAAS,EAAE;iBACX,OAAO,CACN,IAAI,EACJ,KAAK,CAAC,GAAG,CAAC,KAAK,IAAI,MAAM,CAAC,KAAK,CAAC,EAAE,IAAI,KAAK,CAAC,CAAC,CAC9C;AACA,iBAAA,GAAG,EAAE,CAAC;YAET,MAAM,SAAS,GAAG,OAAO;iBACtB,GAAG,CAAC,MAAM,IAAG;AACZ,gBAAA,OAAO,YAAY,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;AAC3C,aAAC,CAAC;iBACD,MAAM,CAAC,KAAK,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC;;YAGpC,MAAM,gBAAgB,GAAU,EAAE,CAAC;AAEnC,YAAA,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE;AACxB,gBAAA,MAAM,QAAQ,GAAG,SAAS,CAAC,IAAI,CAAC,QAAQ,IAAI,QAAQ,CAAC,EAAE,KAAK,IAAI,CAAC,EAAE,CAAC,CAAC;AACrE,gBAAA,IAAI,QAAQ,EAAE;AACZ,oBAAA,gBAAgB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;AACjC,iBAAA;AACF,aAAA;AAED,YAAA,OAAO,gBAAgB,CAAC;AACzB,SAAA;QAED,IAAI,KAAK,YAAY,KAAK;AAAE,YAAA,OAAO,YAAY,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC;QAEpE,IAAI,KAAK,EAAE,EAAE;AAAE,YAAA,OAAO,KAAK,CAAC;AAE5B,QAAA,MAAM,MAAM,GAAQ,MAAM,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;AAEpD,QAAA,IAAI,CAAC,MAAM;AAAE,YAAA,OAAO,IAAI,CAAC;AAEzB,QAAA,OAAO,YAAY,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;AAC3C,KAAC,CAAC;AACJ,CAAC;AAED,SAAS,YAAY,CAAC,KAAY,EAAE,WAA8B,EAAA;AAChE,IAAA,IAAI,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE;AAC9B,QAAA,OAAO,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;AAChC,KAAA;AAED,IAAA,OAAQ,KAAa,CAAC,WAAW,CAAC,CAAC;AACrC"}
1
+ {"version":3,"file":"castModel.js","sources":["../../src/casts/castModel.ts"],"sourcesContent":[null],"names":[],"mappings":"2FAGgB,SAAS,CACvB,KAAmB,EACnB,cAAiC,cAAc,EAAA;AAE/C,IAAA,OAAO,eAAe,kBAAkB,CAAC,KAAU,EAAA;AACjD,QAAA,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;YACxB,MAAM,OAAO,GAAU,EAAE,CAAC;AAC1B,YAAA,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE;gBACxB,IAAI,KAAK,YAAY,KAAK,EAAE;oBAC1B,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC,CAAC;AAC/C,iBAAA;qBAAM,IAAI,IAAI,EAAE,EAAE,EAAE;AACnB,oBAAA,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACpB,iBAAA;AACF,aAAA;AAED,YAAA,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC;AAAE,gBAAA,OAAO,OAAO,CAAC;YAEvC,MAAM,OAAO,GAAY,MAAM,KAAK;AACjC,iBAAA,SAAS,EAAE;iBACX,OAAO,CACN,IAAI,EACJ,KAAK,CAAC,GAAG,CAAC,KAAK,IAAI,MAAM,CAAC,KAAK,CAAC,EAAE,IAAI,KAAK,CAAC,CAAC,CAC9C;AACA,iBAAA,GAAG,EAAE,CAAC;YAET,MAAM,SAAS,GAAG,OAAO;iBACtB,GAAG,CAAC,MAAM,IAAG;AACZ,gBAAA,OAAO,YAAY,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;AAC3C,aAAC,CAAC;iBACD,MAAM,CAAC,KAAK,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC;;YAGpC,MAAM,gBAAgB,GAAU,EAAE,CAAC;AAEnC,YAAA,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE;AACxB,gBAAA,MAAM,QAAQ,GAAG,SAAS,CAAC,IAAI,CAAC,QAAQ,IAAI,QAAQ,CAAC,EAAE,KAAK,IAAI,CAAC,EAAE,CAAC,CAAC;AACrE,gBAAA,IAAI,QAAQ,EAAE;AACZ,oBAAA,gBAAgB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;AACjC,iBAAA;AACF,aAAA;AAED,YAAA,OAAO,gBAAgB,CAAC;AACzB,SAAA;QAED,IAAI,KAAK,YAAY,KAAK;AAAE,YAAA,OAAO,YAAY,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC;QAEpE,IAAI,KAAK,EAAE,EAAE;AAAE,YAAA,OAAO,KAAK,CAAC;AAE5B,QAAA,MAAM,MAAM,GAAQ,MAAM,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;AAEpD,QAAA,IAAI,CAAC,MAAM;AAAE,YAAA,OAAO,IAAI,CAAC;AAEzB,QAAA,OAAO,YAAY,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;AAC3C,KAAC,CAAC;AACJ,CAAC;AAED,SAAS,YAAY,CAAC,KAAY,EAAE,WAA8B,EAAA;AAChE,IAAA,IAAI,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE;AAC9B,QAAA,OAAO,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;AAChC,KAAA;AAED,IAAA,OAAQ,KAAa,CAAC,WAAW,CAAC,CAAC;AACrC"}
package/esm/index.js CHANGED
@@ -1 +1 @@
1
- export{DeselectPipeline,deselectPipeline}from'./aggregate/DeselectPipeline.js';export{GeoNearPipeline,geoNearPipeline}from'./aggregate/GeoNearPipeline.js';export{GroupByPipeline,groupByPipeline}from'./aggregate/GroupByPipeline.js';export{LimitPipeline,limitPipeline}from'./aggregate/LimitPipeline.js';export{LookupPipeline,lookupPipeline}from'./aggregate/LookupPipeline.js';export{OrWherePipeline,orWherePipeline}from'./aggregate/OrWherePipeline.js';export{SelectPipeline,selectPipeline}from'./aggregate/SelectPipeline.js';export{SkipPipeline,skipPipeline}from'./aggregate/SkipPipeline.js';export{SortByPipeline,sortByPipeline}from'./aggregate/SortByPipeline.js';export{SortPipeline,sortPipeline}from'./aggregate/SortPipeline.js';export{SortRandomPipeline,sortRandomPipeline}from'./aggregate/SortRandomPipeline.js';export{UnwindPipeline,unwindPipeline}from'./aggregate/UnwindPipeline.js';export{WhereExpression,parseValuesInObject,toOperator}from'./aggregate/WhereExpression.js';export{WhereExpressionPipeline}from'./aggregate/WhereExpressionPipeline.js';export{WherePipeline,wherePipeline}from'./aggregate/WherePipeline.js';export{Aggregate}from'./aggregate/aggregate.js';export{$agg,_divide,_multiply,_round,addToSet,all,average,avg,between,booleanCond,columnName,columns,concat,concatWith,cond,condition,count,dayOfMonth,dayOfWeek,divide,eq,equal,exists,expr,first,firstDayOfMonth,firstMonth,firstYear,greaterThan,greaterThanOrEqual,gt,gte,inArray,isNull,last,lastDayOfMonth,lastMonth,lastYear,lessThan,lessThanOrEqual,like,lt,lte,max,merge,mergeWith,min,month,multiply,ne,nin,notBetween,notEqual,notExists,notIn,notInArray,notLike,notNull,push,regex,round,size,sum,week,year}from'./aggregate/expressions.js';export{parsePipeline,parsePipelines}from'./aggregate/parsePipelines.js';export{Pipeline}from'./aggregate/pipeline.js';export{whereOperators}from'./aggregate/types.js';export{Blueprint,blueprint}from'./blueprint/blueprint.js';export{ModelBlueprint,modelBlueprint}from'./blueprint/model-blueprint.js';export{arrayOf}from'./casts/arrayOf.js';export{castEmail}from'./casts/cast-email.js';export{castModel}from'./casts/castModel.js';export{expiresAfter}from'./casts/expiresAfter.js';export{castEnum,oneOf}from'./casts/oneOf.js';export{randomString}from'./casts/random-string.js';export{randomInteger}from'./casts/randomInteger.js';export{ShapedArrayType,shapedArray}from'./casts/shapedArray.js';export{getDatabaseConfigurations,setDatabaseConfigurations}from'./config.js';export{Connection,connection}from'./connection.js';export{registerDatabaseIndexesCommand}from'./console/db-indexes-command.js';export{registerMigrationCommand}from'./console/migrate-command.js';export{parseBlueprint}from'./console/register-blueprint-command.js';export{Database,database}from'./database.js';export{dropMigrations,listMigrations,migrate}from'./migration/migrate.js';export{MigrationOffice,migrationOffice}from'./migration/migration-office.js';export{ModelAggregate}from'./model/ModelAggregate.js';export{ModelSync}from'./model/ModelSync.js';export{BaseModel}from'./model/base-model.js';export{CrudModel}from'./model/crud-model.js';export{Joinable}from'./model/joinable.js';export{MasterMind,masterMind}from'./model/master-mind.js';export{Model}from'./model/model.js';export{RelationshipModel}from'./model/relationships.js';export{ModelDeleteStrategy}from'./model/types.js';export{Query,query}from'./query/query.js';export{connectToDatabase}from'./utils/connectToDatabase.js';export{dropAllDatabaseIndexes}from'./utils/dropAllDatabaseIndexes.js';export{listDatabaseIndexes,listIndexesForCertainCollections,printCollectionIndexes}from'./utils/listDatabaseIndexes.js';export{onceConnected}from'./utils/onceConnected.js';//# sourceMappingURL=index.js.map
1
+ export{DeselectPipeline,deselectPipeline}from'./aggregate/DeselectPipeline.js';export{GeoNearPipeline,geoNearPipeline}from'./aggregate/GeoNearPipeline.js';export{GroupByPipeline,groupByPipeline}from'./aggregate/GroupByPipeline.js';export{LimitPipeline,limitPipeline}from'./aggregate/LimitPipeline.js';export{LookupPipeline,lookupPipeline}from'./aggregate/LookupPipeline.js';export{OrWherePipeline,orWherePipeline}from'./aggregate/OrWherePipeline.js';export{SelectPipeline,selectPipeline}from'./aggregate/SelectPipeline.js';export{SkipPipeline,skipPipeline}from'./aggregate/SkipPipeline.js';export{SortByPipeline,sortByPipeline}from'./aggregate/SortByPipeline.js';export{SortPipeline,sortPipeline}from'./aggregate/SortPipeline.js';export{SortRandomPipeline,sortRandomPipeline}from'./aggregate/SortRandomPipeline.js';export{UnwindPipeline,unwindPipeline}from'./aggregate/UnwindPipeline.js';export{WhereExpression,parseValuesInObject,toOperator}from'./aggregate/WhereExpression.js';export{WhereExpressionPipeline}from'./aggregate/WhereExpressionPipeline.js';export{WherePipeline,wherePipeline}from'./aggregate/WherePipeline.js';export{Aggregate}from'./aggregate/aggregate.js';export{$agg,_divide,_multiply,_round,addToSet,all,average,avg,between,booleanCond,columnName,columns,concat,concatWith,cond,condition,count,dayOfMonth,dayOfWeek,divide,eq,equal,exists,expr,first,firstDayOfMonth,firstMonth,firstYear,greaterThan,greaterThanOrEqual,gt,gte,inArray,isNull,last,lastDayOfMonth,lastMonth,lastYear,lessThan,lessThanOrEqual,like,lt,lte,max,merge,mergeWith,min,month,multiply,ne,nin,notBetween,notEqual,notExists,notIn,notInArray,notLike,notNull,push,regex,round,size,sum,week,year}from'./aggregate/expressions.js';export{parsePipeline,parsePipelines}from'./aggregate/parsePipelines.js';export{Pipeline}from'./aggregate/pipeline.js';export{whereOperators}from'./aggregate/types.js';export{Blueprint,blueprint}from'./blueprint/blueprint.js';export{ModelBlueprint,modelBlueprint}from'./blueprint/model-blueprint.js';export{arrayOf}from'./casts/arrayOf.js';export{castEmail}from'./casts/cast-email.js';export{castModel}from'./casts/castModel.js';export{expiresAfter}from'./casts/expiresAfter.js';export{castEnum,oneOf}from'./casts/oneOf.js';export{randomString}from'./casts/random-string.js';export{randomInteger}from'./casts/randomInteger.js';export{ShapedArrayType,shapedArray}from'./casts/shapedArray.js';export{getDatabaseConfigurations,setDatabaseConfigurations}from'./config.js';export{Connection,connection}from'./connection.js';export{registerDatabaseIndexesCommand}from'./console/db-indexes-command.js';export{registerMigrationCommand}from'./console/migrate-command.js';export{parseBlueprint}from'./console/register-blueprint-command.js';export{Database,database}from'./database.js';export{dropMigrations,listMigrations,migrate}from'./migration/migrate.js';export{MigrationOffice,migrationOffice}from'./migration/migration-office.js';export{ModelAggregate}from'./model/ModelAggregate.js';export{ModelSync}from'./model/ModelSync.js';export{BaseModel}from'./model/base-model.js';export{CrudModel}from'./model/crud-model.js';export{Joinable}from'./model/joinable.js';export{MasterMind,masterMind}from'./model/master-mind.js';export{Model}from'./model/model.js';export{ModelDeleteStrategy}from'./model/types.js';export{Query,query}from'./query/query.js';export{connectToDatabase}from'./utils/connectToDatabase.js';export{dropAllDatabaseIndexes}from'./utils/dropAllDatabaseIndexes.js';export{listDatabaseIndexes,listIndexesForCertainCollections,printCollectionIndexes}from'./utils/listDatabaseIndexes.js';export{onceConnected}from'./utils/onceConnected.js';//# sourceMappingURL=index.js.map
@@ -1,5 +1,4 @@
1
- import type { GenericObject } from "@mongez/reinforcements";
2
- import { Model } from "./model";
1
+ import type { Model } from "./model";
3
2
  import type { Filter } from "./types";
4
3
  export declare class RelationshipWithMany<T> {
5
4
  protected model: Model;
@@ -9,10 +8,6 @@ export declare class RelationshipWithMany<T> {
9
8
  * Constructor
10
9
  */
11
10
  constructor(model: Model, relatedModel: typeof Model, column: string);
12
- /**
13
- * Add the given model to the relationship
14
- */
15
- add(model: Model | GenericObject): Promise<void>;
16
11
  /**
17
12
  * Create and add the given model to the relationship
18
13
  */
@@ -1 +1 @@
1
- {"version":3,"file":"RelationshipWithMany.d.ts","sourceRoot":"","sources":["../../src/model/RelationshipWithMany.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAC5D,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAChC,OAAO,KAAK,EAAE,MAAM,EAAiB,MAAM,SAAS,CAAC;AAErD,qBAAa,oBAAoB,CAAC,CAAC;IAK/B,SAAS,CAAC,KAAK,EAAE,KAAK;IACtB,SAAS,CAAC,YAAY,EAAE,OAAO,KAAK;IACpC,SAAS,CAAC,MAAM,EAAE,MAAM;IAN1B;;OAEG;gBAES,KAAK,EAAE,KAAK,EACZ,YAAY,EAAE,OAAO,KAAK,EAC1B,MAAM,EAAE,MAAM;IAK1B;;OAEG;IACU,GAAG,CAAC,KAAK,EAAE,KAAK,GAAG,aAAa;IAU7C;;OAEG;IACU,MAAM,CAAC,IAAI,EAAE,GAAG;IAM7B;;OAEG;IACU,MAAM,CAAC,KAAK,EAAE,KAAK;IAIhC;;OAEG;IACU,IAAI,CAAC,MAAM,GAAE,MAAW;CAiBtC"}
1
+ {"version":3,"file":"RelationshipWithMany.d.ts","sourceRoot":"","sources":["../../src/model/RelationshipWithMany.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AACrC,OAAO,KAAK,EAAE,MAAM,EAAiB,MAAM,SAAS,CAAC;AAErD,qBAAa,oBAAoB,CAAC,CAAC;IAK/B,SAAS,CAAC,KAAK,EAAE,KAAK;IACtB,SAAS,CAAC,YAAY,EAAE,OAAO,KAAK;IACpC,SAAS,CAAC,MAAM,EAAE,MAAM;IAN1B;;OAEG;gBAES,KAAK,EAAE,KAAK,EACZ,YAAY,EAAE,OAAO,KAAK,EAC1B,MAAM,EAAE,MAAM;IAK1B;;OAEG;IACU,MAAM,CAAC,IAAI,EAAE,GAAG;IAM7B;;OAEG;IACU,MAAM,CAAC,KAAK,EAAE,KAAK;IAIhC;;OAEG;IACU,IAAI,CAAC,MAAM,GAAE,MAAW;CAiBtC"}
@@ -1,4 +1,4 @@
1
- import {Model}from'./model.js';class RelationshipWithMany {
1
+ class RelationshipWithMany {
2
2
  model;
3
3
  relatedModel;
4
4
  column;
@@ -11,16 +11,6 @@ import {Model}from'./model.js';class RelationshipWithMany {
11
11
  this.column = column;
12
12
  //
13
13
  }
14
- /**
15
- * Add the given model to the relationship
16
- */
17
- async add(model) {
18
- if (model instanceof Model === false) {
19
- model = new this.relatedModel(model);
20
- }
21
- await model.save();
22
- await this.model.associate(this.column, model).save();
23
- }
24
14
  /**
25
15
  * Create and add the given model to the relationship
26
16
  */
@@ -1 +1 @@
1
- {"version":3,"file":"RelationshipWithMany.js","sources":["../../src/model/RelationshipWithMany.ts"],"sourcesContent":[null],"names":[],"mappings":"qCAIa,oBAAoB,CAAA;AAKnB,IAAA,KAAA,CAAA;AACA,IAAA,YAAA,CAAA;AACA,IAAA,MAAA,CAAA;AANZ;;AAEG;AACH,IAAA,WAAA,CACY,KAAY,EACZ,YAA0B,EAC1B,MAAc,EAAA;QAFd,IAAK,CAAA,KAAA,GAAL,KAAK,CAAO;QACZ,IAAY,CAAA,YAAA,GAAZ,YAAY,CAAc;QAC1B,IAAM,CAAA,MAAA,GAAN,MAAM,CAAQ;;KAGzB;AAED;;AAEG;IACI,MAAM,GAAG,CAAC,KAA4B,EAAA;AAC3C,QAAA,IAAI,KAAK,YAAY,KAAK,KAAK,KAAK,EAAE;YACpC,KAAK,GAAG,IAAI,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;AACtC,SAAA;AAED,QAAA,MAAM,KAAK,CAAC,IAAI,EAAE,CAAC;AAEnB,QAAA,MAAM,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,IAAI,EAAE,CAAC;KACvD;AAED;;AAEG;IACI,MAAM,MAAM,CAAC,IAAS,EAAA;QAC3B,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;QAElC,OAAO,MAAM,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;KAC7C;AAED;;AAEG;IACI,MAAM,MAAM,CAAC,KAAY,EAAA;AAC9B,QAAA,MAAM,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,IAAI,EAAE,CAAC;KAC1D;AAED;;AAEG;AACI,IAAA,MAAM,IAAI,CAAC,MAAA,GAAiB,EAAE,EAAA;AACnC,QAAA,MAAM,iBAAiB,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;AAE5D,QAAA,MAAM,oBAAoB,GAAG,iBAAiB,CAAC,GAAG;;QAEhD,CAAC,QAAuB,KAAK,QAAQ,CAAC,EAAE,IAAI,QAAQ,CACrD,CAAC;QAEF,MAAM,SAAS,IAAI,MAAO,IAAI,CAAC,YAAoB,CAAC,IAAI,CAAC;AACvD,YAAA,EAAE,EAAE,oBAAoB;AACxB,YAAA,GAAG,MAAM;AACV,SAAA,CAAC,CAAQ,CAAC;QAEX,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;AAEvC,QAAA,OAAO,SAAS,CAAC;KAClB;AACF"}
1
+ {"version":3,"file":"RelationshipWithMany.js","sources":["../../src/model/RelationshipWithMany.ts"],"sourcesContent":[null],"names":[],"mappings":"MAGa,oBAAoB,CAAA;AAKnB,IAAA,KAAA,CAAA;AACA,IAAA,YAAA,CAAA;AACA,IAAA,MAAA,CAAA;AANZ;;AAEG;AACH,IAAA,WAAA,CACY,KAAY,EACZ,YAA0B,EAC1B,MAAc,EAAA;QAFd,IAAK,CAAA,KAAA,GAAL,KAAK,CAAO;QACZ,IAAY,CAAA,YAAA,GAAZ,YAAY,CAAc;QAC1B,IAAM,CAAA,MAAA,GAAN,MAAM,CAAQ;;KAGzB;AAED;;AAEG;IACI,MAAM,MAAM,CAAC,IAAS,EAAA;QAC3B,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;QAElC,OAAO,MAAM,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;KAC7C;AAED;;AAEG;IACI,MAAM,MAAM,CAAC,KAAY,EAAA;AAC9B,QAAA,MAAM,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,IAAI,EAAE,CAAC;KAC1D;AAED;;AAEG;AACI,IAAA,MAAM,IAAI,CAAC,MAAA,GAAiB,EAAE,EAAA;AACnC,QAAA,MAAM,iBAAiB,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;AAE5D,QAAA,MAAM,oBAAoB,GAAG,iBAAiB,CAAC,GAAG;;QAEhD,CAAC,QAAuB,KAAK,QAAQ,CAAC,EAAE,IAAI,QAAQ,CACrD,CAAC;QAEF,MAAM,SAAS,IAAI,MAAO,IAAI,CAAC,YAAoB,CAAC,IAAI,CAAC;AACvD,YAAA,EAAE,EAAE,oBAAoB;AACxB,YAAA,GAAG,MAAM;AACV,SAAA,CAAC,CAAQ,CAAC;QAEX,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;AAEvC,QAAA,OAAO,SAAS,CAAC;KAClB;AACF"}
@@ -1,11 +1,10 @@
1
+ export * from "../migration/migration-office";
1
2
  export * from "./ModelAggregate";
2
3
  export * from "./ModelSync";
3
4
  export * from "./base-model";
4
5
  export * from "./crud-model";
5
6
  export * from "./joinable";
6
7
  export * from "./master-mind";
7
- export * from "../migration/migration-office";
8
8
  export * from "./model";
9
- export * from "./relationships";
10
9
  export * from "./types";
11
10
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/model/index.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAC;AACjC,cAAc,aAAa,CAAC;AAC5B,cAAc,cAAc,CAAC;AAC7B,cAAc,cAAc,CAAC;AAC7B,cAAc,YAAY,CAAC;AAC3B,cAAc,eAAe,CAAC;AAC9B,cAAc,+BAA+B,CAAC;AAC9C,cAAc,SAAS,CAAC;AACxB,cAAc,iBAAiB,CAAC;AAChC,cAAc,SAAS,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/model/index.ts"],"names":[],"mappings":"AAAA,cAAc,+BAA+B,CAAC;AAC9C,cAAc,kBAAkB,CAAC;AACjC,cAAc,aAAa,CAAC;AAC5B,cAAc,cAAc,CAAC;AAC7B,cAAc,cAAc,CAAC;AAC7B,cAAc,YAAY,CAAC;AAC3B,cAAc,eAAe,CAAC;AAC9B,cAAc,SAAS,CAAC;AACxB,cAAc,SAAS,CAAC"}
@@ -1,7 +1,10 @@
1
1
  import { ObjectId } from "mongodb";
2
- import type { Joinable } from "src/cascade/model/joinable";
3
- import { RelationshipModel } from "./relationships";
4
- import type { CastType, Casts, CustomCasts, Document } from "./types";
2
+ import { ModelAggregate } from "./ModelAggregate";
3
+ import { ModelSync } from "./ModelSync";
4
+ import { RelationshipWithMany } from "./RelationshipWithMany";
5
+ import { CrudModel } from "./crud-model";
6
+ import { Joinable } from "./joinable";
7
+ import type { CastType, Casts, ChildModel, CustomCasts, Document, ModelDocument } from "./types";
5
8
  export type Schema<ModelSchema = Document> = ModelSchema & {
6
9
  _id?: ObjectId;
7
10
  id?: number;
@@ -9,8 +12,7 @@ export type Schema<ModelSchema = Document> = ModelSchema & {
9
12
  updatedAt?: Date;
10
13
  };
11
14
  type ModelSchema = Schema;
12
- type ModelDocument = Document;
13
- export declare class Model extends RelationshipModel {
15
+ export declare class Model extends CrudModel {
14
16
  /**
15
17
  * Model Initial Document data
16
18
  */
@@ -36,6 +38,10 @@ export declare class Model extends RelationshipModel {
36
38
  * Model casts types
37
39
  */
38
40
  protected casts: Casts;
41
+ /**
42
+ * Sync with list
43
+ */
44
+ syncWith: ModelSync[];
39
45
  /**
40
46
  * Set custom casts that will be used to cast the model's data are not related to the current value of the collection's column
41
47
  *
@@ -322,6 +328,62 @@ export declare class Model extends RelationshipModel {
322
328
  * Clone the model
323
329
  */
324
330
  clone(data?: Document): this;
331
+ /**
332
+ * Get relationship with the given model class
333
+ */
334
+ hasMany<T extends Model = Model>(modelClass: typeof Model, column: string): RelationshipWithMany<T>;
335
+ /**
336
+ * Get new aggregate for current model
337
+ */
338
+ static aggregate<T extends Model = Model>(this: ChildModel<T>): ModelAggregate<T>;
339
+ /**
340
+ * Get query builder
341
+ * @alias aggregate
342
+ */
343
+ static queryBuilder<T extends Model = Model>(this: ChildModel<T>): ModelAggregate<T>;
344
+ /**
345
+ * Sync with the given model
346
+ */
347
+ static sync(columns: string | string[], embedMethod?: string): ModelSync;
348
+ /**
349
+ * Sync data on saving
350
+ */
351
+ startSyncing(saveMode: "create" | "update", oldModel?: Model): void;
352
+ /**
353
+ * Sync destruction
354
+ * Called when destroy method is called
355
+ */
356
+ syncDestruction(): void;
357
+ /**
358
+ * The syncing model (That calls startSyncing) is being embedded in multiple documents of current model
359
+ * I.e Country.syncMany('cities') while current model is City
360
+ */
361
+ static syncMany(columns: string | string[], embedMethod?: string): ModelSync;
362
+ /**
363
+ * Reassociate a model/object/document with the current model
364
+ * If the model is already associated, it will be updated
365
+ * If not, it will be associated
366
+ * the model/document must have an id
367
+ *
368
+ * If it is a model, you can set the embed method to use
369
+ */
370
+ reassociate(this: Model, column: string, model: Model | ModelDocument | any, embedWith?: string): Model;
371
+ /**
372
+ * Associate a model with the current model
373
+ */
374
+ associate(this: Model, column: string, model: Model | ModelDocument | any, embedWith?: string): Model;
375
+ /**
376
+ * Disassociate a model with the current model
377
+ */
378
+ disassociate(this: Model, column: string, model: Model | ModelDocument | any): Model;
379
+ /**
380
+ * Make a wrapper to list when models should be updated when only one of the given columns is updated
381
+ */
382
+ syncUpdateWhenChange(columns: string | string[], syncModels: ModelSync[]): ModelSync[];
383
+ /**
384
+ * Get a Joinable instance for current model
385
+ */
386
+ static joinable(localField?: string, foreignField?: string, single?: boolean, as?: string): import("./joinable").JoinableProxy;
325
387
  }
326
388
  export type ModelType = typeof Model;
327
389
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"model.d.ts","sourceRoot":"","sources":["../../src/model/model.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"model.d.ts","sourceRoot":"","sources":["../../src/model/model.ts"],"names":[],"mappings":"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"}
@@ -1,9 +1,9 @@
1
- import {clone,get,except,only,set,merge,areEqual}from'@mongez/reinforcements';import {isEmpty,isPlainObject}from'@mongez/supportive-is';import {toUTC}from'@mongez/time-wizard';import dayjs from'dayjs';import {ObjectId,MongoServerError}from'mongodb';import'../casts/arrayOf.js';import {castModel}from'../casts/castModel.js';import {castEnum}from'../casts/oneOf.js';import'../casts/shapedArray.js';import {RelationshipModel}from'./relationships.js';import {ModelDeleteStrategy}from'./types.js';class Model
1
+ import {clone,get,except,only,set,merge,areEqual}from'@mongez/reinforcements';import {isEmpty,isPlainObject}from'@mongez/supportive-is';import {toUTC}from'@mongez/time-wizard';import dayjs from'dayjs';import {ObjectId,MongoServerError}from'mongodb';import {castModel}from'../casts/castModel.js';import {castEnum}from'../casts/oneOf.js';import {joinableProxy}from'../utils/joinable-proxy.js';import {ModelAggregate}from'./ModelAggregate.js';import {ModelSync}from'./ModelSync.js';import {RelationshipWithMany}from'./RelationshipWithMany.js';import {CrudModel}from'./crud-model.js';import {Joinable}from'./joinable.js';import {ModelDeleteStrategy}from'./types.js';class Model
2
2
  // <
3
3
  // ModelDocument extends Document = any,
4
4
  // ModelSchema extends Schema<ModelDocument> = any,
5
5
  // >
6
- extends RelationshipModel {
6
+ extends CrudModel {
7
7
  /**
8
8
  * Model Initial Document data
9
9
  */
@@ -29,6 +29,10 @@ import {clone,get,except,only,set,merge,areEqual}from'@mongez/reinforcements';im
29
29
  * Model casts types
30
30
  */
31
31
  casts = {};
32
+ /**
33
+ * Sync with list
34
+ */
35
+ syncWith = [];
32
36
  /**
33
37
  * Set custom casts that will be used to cast the model's data are not related to the current value of the collection's column
34
38
  *
@@ -845,4 +849,142 @@ import {clone,get,except,only,set,merge,areEqual}from'@mongez/reinforcements';im
845
849
  clone(data = this.data) {
846
850
  return new this.constructor(clone(data));
847
851
  }
852
+ /**
853
+ * Get relationship with the given model class
854
+ */
855
+ hasMany(modelClass, column) {
856
+ return new RelationshipWithMany(this, modelClass, column);
857
+ }
858
+ /**
859
+ * Get new aggregate for current model
860
+ */
861
+ static aggregate() {
862
+ return new ModelAggregate(this);
863
+ }
864
+ /**
865
+ * Get query builder
866
+ * @alias aggregate
867
+ */
868
+ static queryBuilder() {
869
+ return new ModelAggregate(this);
870
+ }
871
+ /**
872
+ * Sync with the given model
873
+ */
874
+ static sync(columns, embedMethod = "embedData") {
875
+ return new ModelSync(this, columns, embedMethod);
876
+ }
877
+ /**
878
+ * Sync data on saving
879
+ */
880
+ startSyncing(saveMode, oldModel) {
881
+ for (const modelSync of this.syncWith) {
882
+ modelSync.sync(this, saveMode, oldModel);
883
+ }
884
+ }
885
+ /**
886
+ * Sync destruction
887
+ * Called when destroy method is called
888
+ */
889
+ syncDestruction() {
890
+ for (const modelSync of this.syncWith) {
891
+ modelSync.syncDestruction(this);
892
+ }
893
+ }
894
+ /**
895
+ * The syncing model (That calls startSyncing) is being embedded in multiple documents of current model
896
+ * I.e Country.syncMany('cities') while current model is City
897
+ */
898
+ static syncMany(columns, embedMethod = "embedData") {
899
+ return new ModelSync(this, columns, embedMethod).syncMany();
900
+ }
901
+ /**
902
+ * Reassociate a model/object/document with the current model
903
+ * If the model is already associated, it will be updated
904
+ * If not, it will be associated
905
+ * the model/document must have an id
906
+ *
907
+ * If it is a model, you can set the embed method to use
908
+ */
909
+ reassociate(column, model, embedWith) {
910
+ const columnValue = model instanceof Model
911
+ ? embedWith
912
+ ? model[embedWith]()
913
+ : model.embeddedData
914
+ : model;
915
+ if (columnValue === undefined)
916
+ return this;
917
+ // make a deep copy so when changing the data, it won't affect the original data
918
+ const documentsList = clone(this.get(column, []));
919
+ const index = documentsList.findIndex((doc) => (doc?.id || doc) === (columnValue?.id || columnValue));
920
+ if (index === -1) {
921
+ documentsList.push(columnValue);
922
+ }
923
+ else {
924
+ documentsList[index] = columnValue;
925
+ }
926
+ this.set(column, [...documentsList]);
927
+ return this;
928
+ }
929
+ /**
930
+ * Associate a model with the current model
931
+ */
932
+ associate(column, model, embedWith) {
933
+ const columnValue = model instanceof Model
934
+ ? embedWith
935
+ ? model[embedWith]()
936
+ : model.embeddedData
937
+ : model;
938
+ if (columnValue === undefined)
939
+ return this;
940
+ const documentsList = this.get(column, []);
941
+ documentsList.push(columnValue);
942
+ this.set(column, documentsList);
943
+ return this;
944
+ }
945
+ /**
946
+ * Disassociate a model with the current model
947
+ */
948
+ disassociate(column, model) {
949
+ const columnValue = model instanceof Model ? model.embeddedData : model;
950
+ if (columnValue === undefined)
951
+ return this;
952
+ const documentsList = this.get(column, []);
953
+ if (!Array.isArray(documentsList))
954
+ return this;
955
+ const index = documentsList.findIndex((doc) => (doc?.id || doc) === (columnValue?.id || columnValue));
956
+ if (index !== -1) {
957
+ documentsList.splice(index, 1);
958
+ }
959
+ this.set(column, documentsList);
960
+ return this;
961
+ }
962
+ /**
963
+ * Make a wrapper to list when models should be updated when only one of the given columns is updated
964
+ */
965
+ syncUpdateWhenChange(columns, syncModels) {
966
+ return syncModels.map(syncModel => {
967
+ syncModel.updateWhenChange(columns);
968
+ return syncModel;
969
+ });
970
+ }
971
+ /**
972
+ * Get a Joinable instance for current model
973
+ */
974
+ static joinable(localField, foreignField, single, as) {
975
+ const joinable = new Joinable(this);
976
+ if (localField) {
977
+ joinable.localField(localField);
978
+ }
979
+ if (foreignField) {
980
+ joinable.foreignField(foreignField);
981
+ }
982
+ if (single) {
983
+ joinable.single(single);
984
+ }
985
+ if (as) {
986
+ joinable.as(as);
987
+ }
988
+ return joinableProxy(joinable);
989
+ }
848
990
  }export{Model};//# sourceMappingURL=model.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"model.js","sources":["../../src/model/model.ts"],"sourcesContent":[null],"names":[],"mappings":"kfAqCa,KAAK;AAChB;AACA;AACA;AACA;AACA,SAAQ,iBAAiB,CAAA;AAEzB;;AAEG;IACI,WAAW,GAAyB,EAAE,CAAC;AAE9C;;AAEG;AACI,IAAA,OAAO,QAAQ,GAA6B,EAAE,CAAC;AAEtD;;AAEG;AACI,IAAA,IAAI,CAAe;AAE1B;;;AAGG;IACI,YAAY,GAAyB,EAAE,CAAC;AAE/C;;AAEG;IACO,UAAU,GAAG,KAAK,CAAC;AAE7B;;AAEG;IACO,KAAK,GAAU,EAAE,CAAC;AAE5B;;;;AAIG;IACO,WAAW,GAAwB,EAAE,CAAC;AAEhD;;AAEG;IACI,OAAO,GAA4B,EAAE,CAAC;AAE7C;;AAEG;IACI,MAAM,GAA4B,EAAE,CAAC;AAE5C;;AAEG;IACI,QAAQ,GAA0B,EAAE,CAAC;AAE5C;;AAEG;IACI,cAAc,GAA4B,EAAE,CAAC;AAEpD;;AAEG;IACI,sCAAsC,GAAG,KAAK,CAAC;AAEtD;;AAEG;IACI,eAAe,GAAG,WAAW,CAAC;AAErC;;AAEG;IACI,eAAe,GAAG,WAAW,CAAC;AAErC;;AAEG;IACI,eAAe,GAAG,WAAW,CAAC;AAErC;;AAEG;IACI,eAAe,GAAG,WAAW,CAAC;AAErC;;AAEG;IACI,eAAe,GAAG,WAAW,CAAC;AAErC;;AAEG;IACI,eAAe,GAAG,WAAW,CAAC;AAErC;;AAEG;IACI,UAAU,GAAG,YAAY,CAAC;AAEjC;;AAEG;IACO,eAAe,GAAG,KAAK,CAAC;AAElC;;AAEG;IACO,cAAc,GAAG,UAAU,CAAC;AAEtC;;AAEG;IACI,YAAY,GAAgB,EAAiB,CAAC;AAErD;;AAEG;AACH,IAAA,WAAA,CAAmB,eAAqC,EAAE,EAAA;AACxD,QAAA,KAAK,EAAE,CAAC;QAER,IAAI,YAAY,YAAY,KAAK,EAAE;YACjC,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC,YAAY,CAAC,IAAI,CAAgB,CAAC;AAC7D,SAAA;AAAM,aAAA;AACL,YAAA,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC,YAAY,CAAgB,CAAC;AACxD,SAAA;AAED,QAAA,IAAI,OAAO,YAAY,EAAE,GAAG,KAAK,QAAQ,EAAE;YACzC,IAAI;gBACD,YAAoB,CAAC,GAAG,GAAG,IAAI,QAAQ,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC;AAC5D,aAAA;AAAC,YAAA,OAAO,KAAK,EAAE;AACb,gBAAA,YAAoB,CAAC,GAAG,GAAG,IAAI,QAAQ,EAAE,CAAC;AAC5C,aAAA;AACF,SAAA;QAED,IAAI,CAAC,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QAErC,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;;;QAI5C,IAAI,YAAY,EAAE,GAAG,EAAE;AACrB,YAAA,IAAI,CAAC,YAAY,CAAC,GAAG,GAAG,IAAI,QAAQ,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC;AACvD,YAAA,IAAI,CAAC,IAAI,CAAC,GAAG,GAAG,IAAI,QAAQ,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC;AAC/C,YAAA,IAAI,CAAC,WAAW,CAAC,GAAG,GAAG,IAAI,QAAQ,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC;AACvD,SAAA;KACF;AAED;;AAEG;AACH,IAAA,IAAW,WAAW,GAAA;QACpB,OAAO,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;KAChC;AAED;;AAEG;IACI,QAAQ,CAAC,GAAW,EAAE,YAAkB,EAAA;QAC7C,OAAO,GAAG,CAAC,IAAI,CAAC,YAAY,EAAE,GAAG,EAAE,YAAY,CAAC,CAAC;KAClD;AAED;;AAEG;AACH,IAAA,IAAW,UAAU,GAAA;QACnB,OAAO,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,OAAmB,CAAC,CAAC;KACpD;AAED;;AAEG;AACH,IAAA,IAAW,WAAW,GAAA;QACpB,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,OAAmB,CAAC,CAAC;KAClD;AAED;;AAEG;AACH,IAAA,IAAW,EAAE,GAAA;AACX,QAAA,OAAO,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;KACvB;AAED;;AAEG;AACH,IAAA,IAAW,QAAQ,GAAA;QACjB,OAAO,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC;KAC/C;AAED;;AAEG;AACH,IAAA,IAAW,GAAG,GAAA;AACZ,QAAA,OAAO,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;KACxB;AAED;;AAEG;IACI,cAAc,GAAA;AACnB,QAAA,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;KACxB;AAED;;AAEG;IACI,GAAG,CAAC,MAAyB,EAAE,KAAU,EAAA;AAC9C,QAAA,IAAI,CAAC,IAAI,GAAG,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,MAAgB,EAAE,KAAK,CAAgB,CAAC;AAEnE,QAAA,OAAO,IAAI,CAAC;KACb;AAED;;AAEG;AACI,IAAA,SAAS,CAAC,MAAyB,EAAE,KAAK,GAAG,CAAC,EAAA;AACnD,QAAA,OAAO,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC;KACtD;AAED;;AAEG;AACI,IAAA,SAAS,CAAC,MAAyB,EAAE,KAAK,GAAG,CAAC,EAAA;AACnD,QAAA,OAAO,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC;KACtD;AAED;;AAEG;IACI,UAAU,CAAC,MAAyB,EAAE,YAAkB,EAAA;QAC7D,OAAO,GAAG,CAAC,IAAI,CAAC,WAAW,EAAE,MAAgB,EAAE,YAAY,CAAC,CAAC;KAC9D;AAED;;AAEG;IACI,GAAG,CACR,MAAyB,EACzB,YAAkB,EAAA;QAElB,OAAO,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,MAAgB,EAAE,YAAY,CAAC,CAAC;KACvD;AAED;;AAEG;IACI,MAAM,CAAC,MAAyB,EAAE,YAAkB,EAAA;QACzD,OAAO,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC,CAAC;KAC/C;AAED;;AAEG;IACI,GAAG,CAAC,MAAyB,EAAE,YAAkB,EAAA;QACtD,OAAO,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC,CAAC;KACjD;AAED;;AAEG;IACI,KAAK,CAAC,MAAyB,EAAE,YAAkB,EAAA;QACxD,OAAO,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC,CAAC;KACnD;AAED;;AAEG;IACI,MAAM,CAAC,MAAyB,EAAE,YAAkB,EAAA;QACzD,OAAO,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC,CAAC;KAC/C;AAED;;AAEG;IACI,IAAI,CAAC,MAAyB,EAAE,YAAkB,EAAA;QACvD,OAAO,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC,CAAC;KAChD;AAED;;AAEG;AACI,IAAA,GAAG,CAAC,MAAyB,EAAA;QAClC,OAAO,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,MAAgB,CAAC,KAAK,SAAS,CAAC;KACvD;AAED;;AAEG;AACI,IAAA,MAAM,CAAC,OAA8B,EAAA;QAC1C,OAAO,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,OAAmB,CAAC,CAAC;KAC/C;AAED;;AAEG;AACI,IAAA,IAAI,CAAC,OAA8B,EAAA;QACxC,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,OAAmB,CAAC,CAAC;KAC7C;AAED;;AAEG;AACH,IAAA,IAAW,MAAM,GAAA;QACf,OAAO,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;KAC1B;AAED;;AAEG;IACI,KAAK,CAAC,GAAG,OAA8B,EAAA;QAC5C,IAAI,CAAC,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,OAAmB,CAAC,CAAC;AAEnD,QAAA,OAAO,IAAI,CAAC;KACb;AAED;;AAEG;AACI,IAAA,WAAW,CAAC,IAAiB,EAAA;QAClC,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE;YAC5B,IAAI,CAAC,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;AACxB,SAAA;QAED,IAAI,CAAC,IAAI,CAAC,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE;YAC9B,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC;AAC1B,SAAA;AAED,QAAA,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;AAEjB,QAAA,OAAO,IAAI,CAAC;KACb;AAED;;AAEG;AACI,IAAA,KAAK,CAAC,IAAc,EAAA;QACzB,IAAI,CAAC,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;AAEnC,QAAA,OAAO,IAAI,CAAC;KACb;AAED;;;;AAIG;AACI,IAAA,IAAI,CAAC,MAAyB,EAAE,GAAG,MAAa,EAAA;QACrD,MAAM,YAAY,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;AAEtC,QAAA,IAAI,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE;AAC/B,YAAA,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC,GAAG,YAAY,EAAE,GAAG,MAAM,CAAC,CAAC,CAAC;AAChD,SAAA;aAAM,IAAI,CAAC,YAAY,EAAE;AACxB,YAAA,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;AAC1B,SAAA;AAED,QAAA,OAAO,IAAI,CAAC;KACb;AAED;;AAEG;AACI,IAAA,QAAQ,CAAC,MAAyB,EAAE,GAAG,MAAa,EAAA;QACzD,MAAM,YAAY,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;AAEtC,QAAA,IAAI,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE;AAC/B,YAAA,MAAM,SAAS,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC,CAAC,GAAG,YAAY,EAAE,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;AACpE,YAAA,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;AAC7B,SAAA;aAAM,IAAI,CAAC,YAAY,EAAE;AACxB,YAAA,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;AAC1B,SAAA;AAED,QAAA,OAAO,IAAI,CAAC;KACb;AAED;;;;AAIG;AACI,IAAA,OAAO,CAAC,MAAyB,EAAE,GAAG,MAAa,EAAA;QACxD,MAAM,YAAY,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;AAEtC,QAAA,IAAI,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE;AAC/B,YAAA,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC,GAAG,MAAM,EAAE,GAAG,YAAY,CAAC,CAAC,CAAC;AAChD,SAAA;aAAM,IAAI,CAAC,YAAY,EAAE;AACxB,YAAA,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;AAC1B,SAAA;AAED,QAAA,OAAO,IAAI,CAAC;KACb;AAED;;AAEG;AACI,IAAA,WAAW,CAAC,MAAyB,EAAE,GAAG,MAAa,EAAA;QAC5D,MAAM,YAAY,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;AAEtC,QAAA,IAAI,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE;AAC/B,YAAA,MAAM,SAAS,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC,CAAC,GAAG,MAAM,EAAE,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC;AACpE,YAAA,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;AAC7B,SAAA;aAAM,IAAI,CAAC,YAAY,EAAE;AACxB,YAAA,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;AAC1B,SAAA;AAED,QAAA,OAAO,IAAI,CAAC;KACb;AAED;;AAEG;AACI,IAAA,MAAM,IAAI,CACf,UAA4C,EAC5C,EACE,aAAa,GAAG,IAAI,EACpB,IAAI,GAAG,IAAI,EACX,WAAW,GAAG,KAAK,MAKjB,EAAE,EAAA;QAEN,MAAM,UAAU,GAAU,EAAE,CAAC;QAC7B,IAAI;AACF,YAAA,IAAI,UAAU,EAAE;AACd,gBAAA,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;AACxB,aAAA;YAED,IAAI,IAAI,GAAwB,QAAQ,CAAC;AAEzC,YAAA,IAAI,YAAY,CAAC;;AAGjB,YAAA,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,EAAE;;;;AAKtB,gBAAA,IAAI,IAAI,EAAE;AACR,oBAAA,MAAM,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;AAClC,iBAAA;AAED,gBAAA,IAAI,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,YAAY,EAAE,IAAI,CAAC,IAAI,CAAC,KAAK,KAAK,EAAE;AAC7D,oBAAA,OAAO,IAAI,CAAC;AACb,iBAAA;gBAED,YAAY,GAAG,IAAK,IAAI,CAAC,WAAmB,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;gBAEhE,IAAI,GAAG,QAAQ,CAAC;AAEhB,gBAAA,MAAM,eAAe,GAAG,IAAI,CAAC,eAAe,CAAC;AAE7C,gBAAA,IAAI,eAAe,EAAE;;oBAElB,IAAI,CAAC,IAAY,CAAC,eAAe,CAAC,GAAG,IAAI,IAAI,EAAE,CAAC;AAClD,iBAAA;AAED,gBAAA,IAAI,aAAa,EAAE;AACjB,oBAAA,MAAM,eAAe,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC;AAE9C,oBAAA,MAAM,WAAW,GAAG,IAAI,CAAC,kBAAkB,EAAE,CAAC;AAE9C,oBAAA,MAAM,IAAI,CAAC,QAAQ,EAAE,CAAC;AACtB,oBAAA,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC;oBACxB,MAAM,eAAe,CAAC,OAAO,CAAC,UAAU,EAAE,IAAI,EAAE,YAAY,CAAC,CAAC;oBAC9D,MAAM,eAAe,CAAC,OAAO,CAAC,QAAQ,EAAE,IAAI,EAAE,YAAY,CAAC,CAAC;oBAC5D,MAAM,WAAW,CAAC,OAAO,CAAC,UAAU,EAAE,IAAI,EAAE,YAAY,CAAC,CAAC;oBAC1D,MAAM,WAAW,CAAC,OAAO,CAAC,QAAQ,EAAE,IAAI,EAAE,YAAY,CAAC,CAAC;AACzD,iBAAA;gBAED,MAAM,IAAI,CAAC,QAAQ,EAAE,CAAC,OAAO,CAC3B,IAAI,CAAC,aAAa,EAAE,EACpB;AACE,oBAAA,GAAG,EAAE,IAAI,CAAC,IAAI,CAAC,GAAG;AACnB,iBAAA,EACD,IAAI,CAAC,IAAI,CACV,CAAC;AAEF,gBAAA,IAAI,aAAa,EAAE;AACjB,oBAAA,MAAM,eAAe,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC;AAC9C,oBAAA,MAAM,WAAW,GAAG,IAAI,CAAC,kBAAkB,EAAE,CAAC;oBAC9C,UAAU,CAAC,IAAI,CACb,IAAI,CAAC,OAAO,EAAE,EACd,IAAI,CAAC,SAAS,EAAE,EAChB,eAAe,CAAC,OAAO,CAAC,SAAS,EAAE,IAAI,EAAE,YAAY,CAAC,EACtD,eAAe,CAAC,OAAO,CAAC,OAAO,EAAE,IAAI,EAAE,YAAY,CAAC,EACpD,WAAW,CAAC,OAAO,CAAC,SAAS,EAAE,IAAI,EAAE,YAAY,CAAC,EAClD,WAAW,CAAC,OAAO,CAAC,OAAO,EAAE,IAAI,EAAE,YAAY,CAAC,CACjD,CAAC;AACH,iBAAA;AACF,aAAA;AAAM,iBAAA;gBACL,IAAI,KAAK,GAAG,CAAC,CAAC;gBAEd,OAAO,KAAK,GAAG,CAAC,EAAE;oBAChB,IAAI;;;AAGF,wBAAA,MAAM,IAAI,CAAC,kBAAkB,EAAE,CAAC;;AAGhC,wBAAA,IACE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,eAAe;AACvC,4BAAA,IAAI,CAAC,iBAAiB,CAAC,gBAAgB,CAAC,EACxC;AACA,4BAAA,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC;AAC5B,4BAAA,MAAM,IAAI,CAAC,cAAc,EAAE,CAAC;AAC7B,yBAAA;AAED,wBAAA,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC;AAEvB,wBAAA,MAAM,eAAe,GAAG,IAAI,CAAC,eAAe,CAAC;;AAG7C,wBAAA,IAAI,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,EAAE;AAC7B,4BAAA,IAAI,CAAC,IAAY,CAAC,eAAe,CAAC,GAAG,IAAI,IAAI,CAC5C,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,CAC3B,CAAC;AACH,yBAAA;AAAM,6BAAA,IAAI,eAAe,EAAE;AACzB,4BAAA,IAAI,CAAC,IAAY,CAAC,eAAe,CAAC,GAAG,GAAG,CAAC;AAC3C,yBAAA;;AAGD,wBAAA,MAAM,eAAe,GAAG,IAAI,CAAC,eAAe,CAAC;AAE7C,wBAAA,IAAI,eAAe,EAAE;AAClB,4BAAA,IAAI,CAAC,IAAY,CAAC,eAAe,CAAC,GAAG,GAAG,CAAC;AAC3C,yBAAA;AAED,wBAAA,IAAI,IAAI,EAAE;AACR,4BAAA,MAAM,IAAI,CAAC,QAAQ,EAAE,CAAC;AACvB,yBAAA;AAED,wBAAA,IAAI,aAAa,EAAE;AACjB,4BAAA,MAAM,eAAe,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC;AAE9C,4BAAA,MAAM,WAAW,GAAG,IAAI,CAAC,kBAAkB,EAAE,CAAC;AAE9C,4BAAA,MAAM,IAAI,CAAC,QAAQ,EAAE,CAAC;AACtB,4BAAA,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC;4BACxB,MAAM,eAAe,CAAC,OAAO,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;4BAChD,MAAM,eAAe,CAAC,OAAO,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;4BAC9C,MAAM,WAAW,CAAC,OAAO,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;4BAC5C,MAAM,WAAW,CAAC,OAAO,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;AAC3C,yBAAA;wBAED,IAAI,CAAC,IAAI,IAAI,MAAM,IAAI,CAAC,QAAQ,EAAE,CAAC,MAAM,CACvC,IAAI,CAAC,aAAa,EAAE,EACpB,IAAI,CAAC,IAAI,CACV,CAAgB,CAAC;AAElB,wBAAA,IAAI,aAAa,EAAE;AACjB,4BAAA,MAAM,eAAe,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC;AAC9C,4BAAA,MAAM,WAAW,GAAG,IAAI,CAAC,kBAAkB,EAAE,CAAC;4BAE9C,UAAU,CAAC,IAAI,CACb,IAAI,CAAC,OAAO,EAAE,EACd,IAAI,CAAC,SAAS,EAAE,EAChB,eAAe,CAAC,OAAO,CAAC,SAAS,EAAE,IAAI,CAAC,EACxC,eAAe,CAAC,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC,EACtC,WAAW,CAAC,OAAO,CAAC,SAAS,EAAE,IAAI,CAAC,EACpC,WAAW,CAAC,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC,CACnC,CAAC;AACH,yBAAA;wBAED,MAAM;AACP,qBAAA;AAAC,oBAAA,OAAO,KAA6B,EAAE;AACtC,wBAAA,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;AAC3B,wBAAA,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;;wBAEzB,IAAI,KAAK,YAAY,gBAAgB,IAAI,KAAK,CAAC,IAAI,KAAK,KAAK,EAAE;4BAC7D,IAAI,KAAK,GAAG,CAAC,EAAE;AACb,gCAAA,MAAM,cAAc,GAAG,KAAK,CAAC,QAAQ,CAAC;gCACtC,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC;AAEjD,gCAAA,MAAM,YAAY,GAAG,CAA0B,uBAAA,EAAA,SAAS,kBAAkB,CAAC;gCAC3E,IAAI,IAAI,CAAC,eAAe,EAAE;AACxB,oCAAA,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;AAClB,iCAAA;AAED,gCAAA,MAAM,IAAI,KAAK,CAAC,YAAY,CAAC,CAAC;AAC/B,6BAAA;AAAM,iCAAA;AACL,gCAAA,KAAK,EAAE,CAAC;AACT,6BAAA;AACF,yBAAA;AAED,wBAAA,MAAM,KAAK,CAAC;AACb,qBAAA;AACF,iBAAA;AACF,aAAA;AAED,YAAA,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;AAAE,gBAAA,OAAO,IAAI,CAAC;YAE/B,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;;YAGrC,IAAI,CAAC,YAAY,CAAC,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC;AAEtC,YAAA,IAAI,aAAa,EAAE;AACjB,gBAAA,MAAM,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;AAC9B,gBAAA,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC;AACvC,aAAA;AAED,YAAA,OAAO,IAAI,CAAC;AACb,SAAA;AAAC,QAAA,OAAO,KAAK,EAAE;AACd,YAAA,OAAO,CAAC,GAAG,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,GAAG,SAAS,CAAC,CAAC;AAC7D,YAAA,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;AACnB,YAAA,MAAM,KAAK,CAAC;AACb,SAAA;KACF;AAED;;AAEG;AACI,IAAA,MAAM,cAAc,GAAA;QACzB,IAAI,CAAC,GAAG,CACN,IAAI,EACJ,MAAM,IAAI,CAAC,iBAAiB,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,CACnE,CAAC;QAEF,OAAO,IAAI,CAAC,EAAE,CAAC;KAChB;AAED;;AAEG;AACI,IAAA,MAAM,YAAY,CACvB,UAA4C,EAC5C,OAA4B,EAAA;AAE5B,QAAA,OAAO,MAAM,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE;AACjC,YAAA,aAAa,EAAE,KAAK;AACpB,YAAA,IAAI,OAAO,IAAI,EAAE;AAClB,SAAA,CAAC,CAAC;KACJ;AAED;;AAEG;IACO,YAAY,CAAC,YAAyB,EAAE,IAAiB,EAAA;QACjE,OAAO,QAAQ,CAAC,YAAY,EAAE,IAAI,CAAC,KAAK,KAAK,CAAC;KAC/C;AAED;;AAEG;AACO,IAAA,MAAM,QAAQ,GAAA;;KAEvB;AAED;;AAEG;AACO,IAAA,MAAM,OAAO,GAAA;;KAEtB;AAED;;AAEG;AACO,IAAA,MAAM,UAAU,GAAA;;KAEzB;AAED;;AAEG;AACO,IAAA,MAAM,SAAS,GAAA;;KAExB;AAED;;AAEG;AACO,IAAA,MAAM,UAAU,GAAA;;KAEzB;AAED;;AAEG;AACO,IAAA,MAAM,SAAS,GAAA;;KAExB;AAED;;AAEG;AACO,IAAA,MAAM,UAAU,GAAA;;KAEzB;AAED;;AAEG;AACO,IAAA,MAAM,SAAS,GAAA;;KAExB;AAED;;AAEG;AACO,IAAA,MAAM,QAAQ,CAAC,WAAW,GAAG,KAAK,EAAA;AAC1C,QAAA,KAAK,MAAM,MAAM,IAAI,IAAI,CAAC,KAAK,EAAE;YAC/B,IAAI,CAAC,WAAW,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE;gBACzC,SAAS;AACV,aAAA;YAED,IAAI,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;YAE7B,IAAI,KAAK,KAAK,SAAS;gBAAE,SAAS;YAElC,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;AAEpC,YAAA,MAAM,SAAS,GAAG,OAAO,KAAU,KAAI;AACrC,gBAAA,IAAI,QAAQ,CAAC,SAAS,YAAY,KAAK,EAAE;;oBAEvC,KAAK,GAAG,MAAM,SAAS,CAAC,QAAQ,CAAC,CAAC,KAAK,CAAC,CAAC;AAC1C,iBAAA;qBAAM,IAAI,QAAQ,EAAE,KAAK,EAAE;;;;AAK1B,oBAAA,KAAK,GAAG,MAAM,SAAS,CAAC,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAC,WAAW,CAAC,CAAC,KAAK,CAAC,CAAC;AACtE,iBAAA;AAAM,qBAAA,IAAI,OAAO,QAAQ,KAAK,QAAQ,EAAE;;oBAGvC,KAAK,GAAG,MAAM,QAAQ,CAAC,QAAQ,CAAC,CAAC,KAAK,CAAC,CAAC;AACzC,iBAAA;qBAAM,IAAI,KAAK,YAAY,KAAK,EAAE;AACjC,oBAAA,KAAK,GAAG,KAAK,CAAC,YAAY,CAAC;AAC5B,iBAAA;AAAM,qBAAA,IAAI,OAAO,QAAQ,KAAK,UAAU,EAAE;oBACzC,KAAK,GAAG,MAAO,QAA2B,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;AACjE,iBAAA;AAAM,qBAAA;oBACL,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;AACzC,iBAAA;AAED,gBAAA,OAAO,KAAK,CAAC;AACf,aAAC,CAAC;;;;;AAMF,YAAA,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE;AAC3B,gBAAA,KAAK,GAAG,MAAM,QAAQ,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;AAChD,aAAA;iBAAM,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,QAAQ,KAAK,WAAW,EAAE;;;;;;;gBAQ3D,IAAI,QAAQ,KAAK,OAAO,EAAE,CAGzB;AAAM,qBAAA,IAAI,KAAK,CAAC,CAAC,CAAC,EAAE,UAAU,IAAI,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE;AAClD,oBAAA,KAAK,GAAG,MAAM,OAAO,CAAC,GAAG,CACvB,KAAK,CAAC,GAAG,CAAC,OAAM,IAAI,KAAG;wBACrB,OAAO;4BACL,UAAU,EAAE,IAAI,CAAC,UAAU;AAC3B,4BAAA,KAAK,EAAE,MAAM,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC;yBACnC,CAAC;qBACH,CAAC,CACH,CAAC;AACH,iBAAA;AAAM,qBAAA;AACL,oBAAA,KAAK,GAAG,MAAM,OAAO,CAAC,GAAG,CACvB,KAAK,CAAC,GAAG,CAAC,OAAM,IAAI,KAAG;AACrB,wBAAA,OAAO,MAAM,SAAS,CAAC,IAAI,CAAC,CAAC;qBAC9B,CAAC,CACH,CAAC;AACH,iBAAA;AACF,aAAA;AAAM,iBAAA;AACL,gBAAA,KAAK,GAAG,MAAM,SAAS,CAAC,KAAK,CAAC,CAAC;AAChC,aAAA;AAED,YAAA,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;AACxB,gBAAA,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC,KAAK,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,SAAS,CAAC,CAAC;AACtE,aAAA;YAED,IAAI,KAAK,KAAK,SAAS,EAAE;AACvB,gBAAA,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;AACzB,aAAA;AAAM,iBAAA;AACL,gBAAA,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;AACpB,aAAA;AACF,SAAA;AAED,QAAA,KAAK,MAAM,MAAM,IAAI,IAAI,CAAC,WAAW,EAAE;YACrC,MAAM,QAAQ,GAAG,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;YAE1C,MAAM,KAAK,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;YAE3C,IAAI,KAAK,KAAK,SAAS,EAAE;AACvB,gBAAA,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;AACzB,aAAA;AAAM,iBAAA;AACL,gBAAA,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;AACpB,aAAA;AACF,SAAA;KACF;AAED;;AAEG;AACI,IAAA,UAAU,CAAC,OAAiB,EAAA;QACjC,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;KACvC;AAED;;AAEG;AACI,IAAA,YAAY,CAAC,OAAiB,EAAA;QACnC,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC;KACzC;AAED;;AAEG;IACO,SAAS,CAAC,KAAU,EAAE,QAAkB,EAAA;AAChD,QAAA,MAAM,YAAY,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC;AAEpC,QAAA,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE;YAC7B,IAAI,KAAK,KAAK,IAAI;AAAE,gBAAA,OAAO,SAAS,CAAC;AACtC,SAAA;AAAM,aAAA,IAAI,YAAY;AAAE,YAAA,OAAO,SAAS,CAAC;AAE1C,QAAA,QAAQ,QAAQ;AACd,YAAA,KAAK,QAAQ;AACX,gBAAA,OAAO,YAAY,GAAG,EAAE,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,CAAC;AAClD,YAAA,KAAK,WAAW;;;AAId,gBAAA,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;AAAE,oBAAA,OAAO,SAAS,CAAC;AAE5C,gBAAA,OAAO,KAAK;AACT,qBAAA,MAAM,CAAC,KAAK,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,aAAa,CAAC,KAAK,CAAC,CAAC;qBACxD,GAAG,CAAC,IAAI,IAAG;oBACV,OAAO;wBACL,UAAU,EAAE,IAAI,CAAC,UAAU;wBAC3B,KAAK,EAAE,IAAI,CAAC,KAAK;qBAClB,CAAC;AACJ,iBAAC,CAAC,CAAC;AACP,YAAA,KAAK,QAAQ;;AAEX,gBAAA,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC;AACvB,YAAA,KAAK,KAAK,CAAC;AACX,YAAA,KAAK,SAAS;;AAEZ,gBAAA,OAAO,QAAQ,CAAC,KAAK,CAAC,CAAC;AACzB,YAAA,KAAK,OAAO;;AAEV,gBAAA,OAAO,UAAU,CAAC,KAAK,CAAC,CAAC;AAC3B,YAAA,KAAK,MAAM,CAAC;YACZ,KAAK,SAAS,EAAE;;gBAGd,IAAI,KAAK,KAAK,MAAM;AAAE,oBAAA,OAAO,IAAI,CAAC;gBAElC,IAAI,KAAK,KAAK,OAAO,IAAI,KAAK,KAAK,GAAG,IAAI,KAAK,KAAK,CAAC;AAAE,oBAAA,OAAO,KAAK,CAAC;AAEpE,gBAAA,OAAO,OAAO,CAAC,KAAK,CAAC,CAAC;AACvB,aAAA;YACD,KAAK,MAAM,EAAE;AACX,gBAAA,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;AACxB,oBAAA,KAAK,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC;AACxB,iBAAA;gBAED,IAAI,KAAK,YAAY,IAAI,EAAE;AACzB,oBAAA,OAAO,KAAK,CAAC,KAAK,CAAC,CAAC;AACrB,iBAAA;gBAED,OAAO,KAAK,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;AAC/B,aAAA;YACD,KAAK,UAAU,EAAE;;gBAGf,MAAM,GAAG,GAAG,KAAK,GAAG,CAAC,CAAC,IAAI,KAAK,EAAE,GAAG,CAAC;gBACrC,MAAM,GAAG,GAAG,KAAK,GAAG,CAAC,CAAC,IAAI,KAAK,EAAE,GAAG,CAAC;gBACrC,MAAM,OAAO,GAAG,KAAK,EAAE,OAAO,IAAI,KAAK,EAAE,gBAAgB,CAAC;gBAE1D,OAAO;AACL,oBAAA,IAAI,EAAE,OAAO;oBACb,WAAW,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC;oBACvC,OAAO;iBACR,CAAC;AACH,aAAA;YACD,KAAK,QAAQ,EAAE;;AAGb,gBAAA,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE;oBAC7B,IAAI;AACF,wBAAA,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;AAC1B,qBAAA;AAAC,oBAAA,OAAO,KAAK,EAAE;AACd,wBAAA,OAAO,SAAS,CAAC;AAClB,qBAAA;AACF,iBAAA;AAED,gBAAA,OAAO,KAAK,CAAC;AACd,aAAA;YACD,KAAK,OAAO,EAAE;;AAGZ,gBAAA,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE;AAC7B,oBAAA,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;AAC1B,iBAAA;AAED,gBAAA,OAAO,KAAK,CAAC;AACd,aAAA;AACD,YAAA,KAAK,OAAO,CAAC;AACb,YAAA,KAAK,KAAK,CAAC;AACX,YAAA;AACE,gBAAA,OAAO,KAAK,CAAC;AAChB,SAAA;KACF;AAED;;AAEG;IACO,kBAAkB,GAAA;;AAE1B,QAAA,IAAI,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC;YAAE,OAAO;QAEvC,MAAM,YAAY,GAAG,EAAE,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC;AAE9C,QAAA,KAAK,MAAM,GAAG,IAAI,YAAY,EAAE;AAC9B,YAAA,MAAM,KAAK,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC;AAEhC,YAAA,IAAI,OAAO,KAAK,KAAK,UAAU,EAAE;gBAC/B,YAAY,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC;AACjC,aAAA;AACF,SAAA;;QAGD,IAAI,CAAC,IAAI,GAAG,KAAK,CAAC,YAAY,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;KAC5C;AAED;;AAEG;AACI,IAAA,MAAM,OAAO,GAAA;AAClB,QAAA,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG;YAAE,OAAO;QAE3B,IAAI,IAAI,CAAC,eAAe,EAAE;YACxB,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,eAAe,EAAE,IAAI,IAAI,EAAE,CAAC,CAAC;AAC5C,SAAA;QAED,MAAM,cAAc,GAClB,IAAI,CAAC,iBAAiB,CAAC,gBAAgB,CAAC,CAAC;AAE3C,QAAA,IAAI,cAAc,KAAK,mBAAmB,CAAC,WAAW,EAAE;AACtD,YAAA,MAAM,cAAc,GAAG,IAAI,CAAC,aAAa,EAAE,CAAC;YAC5C,MAAM,KAAM,SAAQ,KAAK,CAAA;AAChB,gBAAA,OAAO,UAAU,GAAG,cAAc,GAAG,OAAO,CAAC;;;YAItD,KAAK,CAAC,MAAM,CAAC;gBACX,QAAQ,EAAE,IAAI,CAAC,IAAI;AACpB,aAAA,CAAC,CAAC;AACJ,SAAA;AAED,QAAA,MAAM,eAAe,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC;AAE9C,QAAA,MAAM,WAAW,GAAG,IAAI,CAAC,kBAAkB,EAAE,CAAC;AAE9C,QAAA,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC;QACxB,MAAM,eAAe,CAAC,OAAO,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;QAChD,MAAM,WAAW,CAAC,OAAO,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;;AAG5C,QAAA,IAAI,cAAc,KAAK,mBAAmB,CAAC,UAAU,EAAE;YACrD,MAAM,IAAI,CAAC,QAAQ,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,aAAa,EAAE,EAAE;AACpD,gBAAA,GAAG,EAAE,IAAI,CAAC,IAAI,CAAC,GAAG;AACnB,aAAA,CAAC,CAAC;AACJ,SAAA;AAAM,aAAA,IAAI,cAAc,KAAK,mBAAmB,CAAC,UAAU,EAAE;YAC5D,MAAM,IAAI,CAAC,QAAQ,EAAE,CAAC,SAAS,CAC7B,IAAI,CAAC,aAAa,EAAE,EACpB;AACE,gBAAA,GAAG,EAAE,IAAI,CAAC,IAAI,CAAC,GAAG;AACnB,aAAA,EACD,IAAI,CAAC,IAAI,CACV,CAAC;AACH,SAAA;QAED,IAAI,CAAC,SAAS,EAAE,CAAC;AAEjB,QAAA,eAAe,CAAC,OAAO,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;AACzC,QAAA,WAAW,CAAC,OAAO,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;QAErC,IAAI,CAAC,eAAe,EAAE,CAAC;KACxB;AAED;;;;AAIG;AACI,IAAA,OAAO,CAAC,MAAe,EAAA;QAC5B,IAAI,CAAC,MAAM,EAAE;AACX,YAAA,OAAO,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,KAAK,KAAK,CAAC;AACvE,SAAA;QAED,IAAI,IAAI,CAAC,UAAU,EAAE;AAAE,YAAA,OAAO,IAAI,CAAC;QAEnC,MAAM,YAAY,GAAG,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QAC5C,MAAM,aAAa,GAAG,GAAG,CAAC,IAAI,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC;AAErD,QAAA,OAAO,QAAQ,CAAC,KAAK,CAAC,YAAY,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC,CAAC,KAAK,KAAK,CAAC;KACtE;AAED;;AAEG;IACI,UAAU,GAAA;AACf,QAAA,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,KAAK,IAAI,CAAC,IAAI,CAAC,GAAG,IAAI,IAAI,CAAC,UAAU,CAAC,CAAC;KAC7D;AAED;;AAEG;AACH,IAAA,IAAW,YAAY,GAAA;AACrB,QAAA,IAAI,IAAI,CAAC,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE;YAClC,OAAO,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,cAA0B,CAAC,CAAC;AAC3D,SAAA;QAED,IAAI,IAAI,CAAC,sCAAsC,EAAE;AAC/C,YAAA,OAAO,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE;AACvB,gBAAA,IAAI,CAAC,eAAe;AACpB,gBAAA,IAAI,CAAC,eAAe;AACpB,gBAAA,IAAI,CAAC,eAAe;AACpB,gBAAA,IAAI,CAAC,eAAe;AACpB,gBAAA,IAAI,CAAC,eAAe;AACpB,gBAAA,IAAI,CAAC,eAAe;AACrB,aAAA,CAAC,CAAC;AACJ,SAAA;QAED,OAAO,IAAI,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC;KACxE;AAED;;AAEG;AACI,IAAA,KAAK,CAAC,IAAA,GAAiB,IAAI,CAAC,IAAI,EAAA;QACrC,OAAO,IAAK,IAAI,CAAC,WAAmB,CAAC,KAAK,CAAC,IAAI,CAAC,CAAS,CAAC;KAC3D;"}
1
+ {"version":3,"file":"model.js","sources":["../../src/model/model.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@warlock.js/cascade",
3
- "version": "1.0.1",
3
+ "version": "1.0.3",
4
4
  "description": "ORM for managing databases",
5
5
  "main": "./cjs/index.js",
6
6
  "dependencies": {