chore: upgrade sequelize version to to latest (#1234)

* chore: upgrade sequelize version to to latest

* fix: type error

* chore: type ModelCtor to ModelStatic

* feat: update sequelize version of the map plugin

* chore: update lock

Co-authored-by: chenos <chenlinxh@gmail.com>
Co-authored-by: chareice <chareice@live.com>
This commit is contained in:
Dunqing 2022-12-24 16:30:01 +08:00 committed by GitHub
parent 6d1a4425f2
commit 07c373956c
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
31 changed files with 95 additions and 92 deletions

View File

@ -46,7 +46,7 @@ db.collection({
| `options.name` | `string` | - | collection 标识 |
| `options.tableName?` | `string` | - | 数据库表名,如不传则使用 `options.name` 的值 |
| `options.fields?` | `FieldOptions[]` | - | 字段定义,详见 [Field](./field) |
| `options.model?` | `string \| ModelCtor<Model>` | - | Sequelize 的 Model 类型,如果使用的是 `string`,则需要调用之前在 db 上注册过该模型名称 |
| `options.model?` | `string \| ModelStatic<Model>` | - | Sequelize 的 Model 类型,如果使用的是 `string`,则需要调用之前在 db 上注册过该模型名称 |
| `options.repository?` | `string \| RepositoryType` | - | 数据仓库类型,如果使用 `string`,则需要调用之前在 db 上注册过该仓库类型 |
| `options.sortable?` | `string \| boolean \| { name?: string; scopeKey?: string }` | - | 数据可排序字段配置,默认不排序 |
| `options.autoGenId?` | `boolean` | `true` | 是否自动生成唯一主键,默认为 `true` |

View File

@ -396,7 +396,7 @@ db.registerFieldTypes({
**签名**
* `registerModels(models: MapOf<ModelCtor<any>>): void`
* `registerModels(models: MapOf<ModelStatic<any>>): void`
**参数**

View File

@ -46,7 +46,7 @@ db.collection({
| `options.name` | `string` | - | collection 标识 |
| `options.tableName?` | `string` | - | 数据库表名,如不传则使用 `options.name` 的值 |
| `options.fields?` | `FieldOptions[]` | - | 字段定义,详见 [Field](./field) |
| `options.model?` | `string \| ModelCtor<Model>` | - | Sequelize 的 Model 类型,如果使用的是 `string`,则需要调用之前在 db 上注册过该模型名称 |
| `options.model?` | `string \| ModelStatic<Model>` | - | Sequelize 的 Model 类型,如果使用的是 `string`,则需要调用之前在 db 上注册过该模型名称 |
| `options.repository?` | `string \| RepositoryType` | - | 数据仓库类型,如果使用 `string`,则需要调用之前在 db 上注册过该仓库类型 |
| `options.sortable?` | `string \| boolean \| { name?: string; scopeKey?: string }` | - | 数据可排序字段配置,默认不排序 |
| `options.autoGenId?` | `boolean` | `true` | 是否自动生成唯一主键,默认为 `true` |

View File

@ -396,7 +396,7 @@ db.registerFieldTypes({
**签名**
* `registerModels(models: MapOf<ModelCtor<any>>): void`
* `registerModels(models: MapOf<ModelStatic<any>>): void`
**参数**

View File

@ -21,7 +21,7 @@
"mathjs": "^10.6.1",
"moment": "2.x",
"semver": "^7.3.7",
"sequelize": "^6.9.0",
"sequelize": "^6.26.0",
"umzug": "^3.1.1"
},
"devDependencies": {

View File

@ -2,11 +2,11 @@ import merge from 'deepmerge';
import { EventEmitter } from 'events';
import { default as lodash, default as _ } from 'lodash';
import {
ModelCtor,
ModelOptions,
QueryInterfaceDropTableOptions,
SyncOptions,
Transactionable,
ModelStatic,
Utils,
} from 'sequelize';
import { Database } from './database';
@ -25,7 +25,7 @@ export interface CollectionOptions extends Omit<ModelOptions, 'name' | 'hooks'>
inherits?: string[] | string;
filterTargetKey?: string;
fields?: FieldOptions[];
model?: string | ModelCtor<Model>;
model?: string | ModelStatic<Model>;
repository?: string | RepositoryType;
sortable?: CollectionSortable;
/**
@ -51,7 +51,7 @@ export class Collection<
context: CollectionContext;
isThrough?: boolean;
fields: Map<string, any> = new Map<string, any>();
model: ModelCtor<Model>;
model: ModelStatic<Model>;
repository: Repository<TModelAttributes, TCreationAttributes>;
get filterTargetKey() {
@ -109,7 +109,7 @@ export class Collection<
return;
}
const { name, model, autoGenId = true } = this.options;
let M: ModelCtor<Model> = Model;
let M: ModelStatic<Model> = Model;
if (this.context.database.sequelize.isDefined(name)) {
const m = this.context.database.sequelize.model(name);
if ((m as any).isThrough) {
@ -450,7 +450,7 @@ export class Collection<
}
}
const models: ModelCtor<Model>[] = [];
const models: ModelStatic<Model>[] = [];
// @ts-ignore
this.context.database.sequelize.modelManager.forEachModel((model) => {
if (modelNames.has(model.name)) {

View File

@ -7,7 +7,7 @@ import { basename, isAbsolute, resolve } from 'path';
import semver from 'semver';
import {
DataTypes,
ModelCtor,
ModelStatic,
Op,
Options,
QueryInterfaceDropAllTablesOptions,
@ -65,7 +65,7 @@ export interface MergeOptions extends merge.Options {}
export interface PendingOptions {
field: RelationField;
model: ModelCtor<Model>;
model: ModelStatic<Model>;
}
interface MapOf<T> {
@ -147,12 +147,12 @@ export class Database extends EventEmitter implements AsyncEmitter {
migrations: Migrations;
fieldTypes = new Map();
options: IDatabaseOptions;
models = new Map<string, ModelCtor<Model>>();
models = new Map<string, ModelStatic<Model>>();
repositories = new Map<string, RepositoryType>();
operators = new Map();
collections = new Map<string, Collection>();
pendingFields = new Map<string, RelationField[]>();
modelCollection = new Map<ModelCtor<any>, Collection>();
modelCollection = new Map<ModelStatic<any>, Collection>();
tableNameCollectionMap = new Map<string, Collection>();
referenceMap = new ReferencesMap();
@ -371,7 +371,7 @@ export class Database extends EventEmitter implements AsyncEmitter {
}
getModel<M extends Model>(name: string) {
return this.getCollection(name).model as ModelCtor<M>;
return this.getCollection(name).model as ModelStatic<M>;
}
getRepository<R extends Repository>(name: string): R;
@ -409,7 +409,7 @@ export class Database extends EventEmitter implements AsyncEmitter {
}
}
registerModels(models: MapOf<ModelCtor<any>>) {
registerModels(models: MapOf<ModelStatic<any>>) {
for (const [type, schemaType] of Object.entries(models)) {
this.models.set(type, schemaType);
}

View File

@ -1,6 +1,6 @@
import { flatten, unflatten } from 'flat';
import { default as lodash, default as _ } from 'lodash';
import { ModelCtor } from 'sequelize';
import { ModelStatic } from 'sequelize';
import { Collection } from './collection';
import { Database } from './database';
import { Model } from './model';
@ -17,7 +17,7 @@ interface FilterParserContext {
export default class FilterParser {
collection: Collection;
database: Database;
model: ModelCtor<Model>;
model: ModelStatic<Model>;
filter: FilterType;
context: FilterParserContext;

View File

@ -1,4 +1,4 @@
export { DataTypes, ModelCtor, Op, SyncOptions } from 'sequelize';
export { DataTypes, ModelStatic, Op, SyncOptions } from 'sequelize';
export * from './collection';
export * from './inherited-collection';
export * from './database';

View File

@ -1,5 +1,6 @@
import lodash from 'lodash';
import type { SequelizeHooks } from 'sequelize/types/lib/hooks';
import { SequelizeHooks } from 'sequelize/types/hooks';
import Database from './database';
import { Model } from './model';

View File

@ -1,5 +1,5 @@
import lodash from 'lodash';
import { DataTypes, Model as SequelizeModel, ModelCtor } from 'sequelize';
import { DataTypes, Model as SequelizeModel, ModelStatic } from 'sequelize';
import { Collection } from './collection';
import { Database } from './database';
import { Field } from './fields';
@ -13,7 +13,7 @@ interface IModel {
}
interface JSONTransformerOptions {
model: ModelCtor<any>;
model: ModelStatic<any>;
collection: Collection;
db: Database;
key?: string;
@ -82,7 +82,7 @@ export class Model<TModelAttributes extends {} = any, TCreationAttributes extend
};
const opts = {
model: this.constructor as ModelCtor<any>,
model: this.constructor as ModelStatic<any>,
collection: (this.constructor as any).collection,
db: (this.constructor as any).database as Database,
};

View File

@ -149,4 +149,4 @@ export default {
[Op.and]: [Sequelize.literal(`${subQuery}`)],
};
},
};
} as Record<string, any>;

View File

@ -11,4 +11,4 @@ export default {
[Op.is]: null,
};
},
};
} as Record<string, any>;

View File

@ -15,4 +15,4 @@ export default {
[Op.eq]: true,
};
},
};
} as Record<string, any>;

View File

@ -38,4 +38,4 @@ export default {
$dateNotAfter(value) {
return { [Op.lt]: getNextDay(value) };
},
};
} as Record<string, any>;

View File

@ -1,4 +1,4 @@
import { DataTypes, Op } from 'sequelize';
import { Op } from 'sequelize';
import { ArrayField, StringField } from '../fields';
import arrayOperators from './array';
import lodash, { parseInt } from 'lodash';

View File

@ -13,4 +13,4 @@ export default {
},
};
},
};
} as Record<string, any>;

View File

@ -9,4 +9,5 @@ export default {
},
};
},
};
} as Record<string, any>;

View File

@ -1,4 +1,4 @@
import { FindAttributeOptions, ModelCtor, Op, Sequelize } from 'sequelize';
import { FindAttributeOptions, ModelStatic, Op, Sequelize } from 'sequelize';
import { Collection } from './collection';
import { Database } from './database';
import FilterParser from './filter-parser';
@ -15,7 +15,7 @@ export class OptionsParser {
options: FindOptions;
database: Database;
collection: Collection;
model: ModelCtor<any>;
model: ModelStatic<any>;
filterParser: FilterParser;
context: OptionsParserContext;
@ -207,7 +207,7 @@ export class OptionsParser {
* @param queryParams
* @param append
*/
const setInclude = (model: ModelCtor<any>, queryParams: any, append: string) => {
const setInclude = (model: ModelStatic<any>, queryParams: any, append: string) => {
const appendFields = append.split('.');
const appendAssociation = appendFields[0];

View File

@ -1,5 +1,5 @@
import lodash from 'lodash';
import { Association, BelongsTo, BelongsToMany, HasMany, HasOne, ModelCtor, Transaction } from 'sequelize';
import { Association, BelongsTo, BelongsToMany, HasMany, HasOne, ModelStatic, Transaction } from 'sequelize';
import { Collection } from '../collection';
import Database from '../database';
import { transactionWrapperBuilder } from '../decorators/transaction-decorator';
@ -18,7 +18,7 @@ export const transaction = transactionWrapperBuilder(function () {
export abstract class RelationRepository {
sourceCollection: Collection;
association: Association;
targetModel: ModelCtor<any>;
targetModel: ModelStatic<any>;
targetCollection: Collection;
associationName: string;
associationField: RelationField;

View File

@ -7,12 +7,12 @@ import {
DestroyOptions as SequelizeDestroyOptions,
FindAndCountOptions as SequelizeAndCountOptions,
FindOptions as SequelizeFindOptions,
ModelCtor,
ModelStatic,
Op,
Transactionable,
UpdateOptions as SequelizeUpdateOptions,
WhereOperators,
} from 'sequelize';
import { WhereOperators } from 'sequelize/types/lib/model';
import { Collection } from './collection';
import { Database } from './database';
import mustHaveFilter from './decorators/must-have-filter-decorator';
@ -202,7 +202,7 @@ export class Repository<TModelAttributes extends {} = any, TCreationAttributes e
{
database: Database;
collection: Collection;
model: ModelCtor<Model>;
model: ModelStatic<Model>;
constructor(collection: Collection) {
this.database = collection.context.database;

View File

@ -1,8 +1,8 @@
import type { Model } from './model';
import type { ValidationOptions } from 'sequelize/types/lib/instance-validator';
import type { HookReturn } from 'sequelize/types/lib/hooks';
import type { CreateOptions, DestroyOptions, SaveOptions, SyncOptions, UpdateOptions } from 'sequelize/types';
import { Collection, CollectionOptions } from './collection';
import { HookReturn } from 'sequelize/types/hooks';
import { ValidationOptions } from 'sequelize/types/instance-validator';
export type CollectionNameType = string;

View File

@ -5,8 +5,8 @@ import {
HasMany,
HasOne,
Hookable,
ModelCtor,
Transactionable
ModelStatic,
Transactionable,
} from 'sequelize';
import { Model } from './model';
import { UpdateGuard } from './update-guard';
@ -297,13 +297,13 @@ export async function updateSingleAssociation(
const createAccessor = association.accessors.create;
let dataKey: string;
let M: ModelCtor<Model>;
let M: ModelStatic<Model>;
if (association.associationType === 'BelongsTo') {
M = association.target as ModelCtor<Model>;
M = association.target as ModelStatic<Model>;
// @ts-ignore
dataKey = association.targetKey;
} else {
M = association.target as ModelCtor<Model>;
M = association.target as ModelStatic<Model>;
dataKey = M.primaryKeyAttribute;
}

View File

@ -1,5 +1,5 @@
import lodash from 'lodash';
import { ModelCtor } from 'sequelize';
import { ModelStatic } from 'sequelize';
import { Model } from './model';
import { AssociationKeysToBeUpdate, BlackList, WhiteList } from './repository';
@ -11,7 +11,7 @@ type UpdateValues = {
type UpdateAction = 'create' | 'update';
export class UpdateGuard {
model: ModelCtor<any>;
model: ModelStatic<any>;
action: UpdateAction;
private associationKeysToBeUpdate: AssociationKeysToBeUpdate;
private blackList: BlackList;
@ -21,7 +21,7 @@ export class UpdateGuard {
this.action = action;
}
setModel(model: ModelCtor<any>) {
setModel(model: ModelStatic<any>) {
this.model = model;
}

View File

@ -14,7 +14,7 @@
"@nocobase/database": "0.8.0-alpha.13",
"@nocobase/plugin-error-handler": "0.8.0-alpha.13",
"@nocobase/server": "0.8.0-alpha.13",
"sequelize": "^6.9.0"
"sequelize": "^6.26.0"
},
"devDependencies": {
"@nocobase/test": "0.8.0-alpha.13"

View File

@ -12,7 +12,7 @@
"@formily/react": "2.0.20",
"@emotion/css": "^11.7.1",
"antd": "~4.19.5",
"sequelize": "^6.9.0",
"sequelize": "^6.26.0",
"ahooks": "^3.7.2"
}
}

View File

@ -2,7 +2,6 @@ import { BaseColumnFieldOptions, Field, FieldContext } from '@nocobase/database'
import { DataTypes } from 'sequelize';
import { isPg, toValue } from '../helpers';
// @ts-ignore
class Circle extends DataTypes.ABSTRACT {
key = 'Circle';
}

View File

@ -2,7 +2,6 @@ import { BaseColumnFieldOptions, Field, FieldContext } from '@nocobase/database'
import { DataTypes } from 'sequelize';
import { isMysql, isPg, isSqlite, joinComma, toValue } from '../helpers';
// @ts-ignore
class LineString extends DataTypes.ABSTRACT {
key = 'Path';
}

View File

@ -2,7 +2,6 @@ import { BaseColumnFieldOptions, Field, FieldContext } from '@nocobase/database'
import { DataTypes } from 'sequelize';
import { isMysql, isPg, joinComma, toValue } from '../helpers';
// @ts-ignore
class Point extends DataTypes.ABSTRACT {
key = 'Point';
}

View File

@ -2,7 +2,6 @@ import { BaseColumnFieldOptions, Field, FieldContext } from '@nocobase/database'
import { DataTypes } from 'sequelize';
import { isMysql, isPg, joinComma, toValue } from '../helpers';
// @ts-ignore
class Polygon extends DataTypes.ABSTRACT {
key = 'Polygon'
}

View File

@ -5570,6 +5570,11 @@
resolved "https://registry.npmjs.org/@types/unist/-/unist-2.0.6.tgz#250a7b16c3b91f672a24552ec64678eeb1d3a08d"
integrity sha512-PBjIUxZHOuj0R15/xuwJYjFi+KZdNFrehocChv4g5hu6aFroHue8m0lBP0POdK2nKzbw0cgV1mws8+V/JAcEkQ==
"@types/validator@^13.7.1":
version "13.7.10"
resolved "https://registry.yarnpkg.com/@types/validator/-/validator-13.7.10.tgz#f9763dc0933f8324920afa9c0790308eedf55ca7"
integrity sha512-t1yxFAR2n0+VO6hd/FJ9F2uezAZVWHLmpmlJzm1eX03+H7+HsuTAp7L8QJs+2pQCfWkP1+EXsGK9Z9v7o/qPVQ==
"@types/warning@^3.0.0":
version "3.0.0"
resolved "https://registry.npmjs.org/@types/warning/-/warning-3.0.0.tgz#0d2501268ad8f9962b740d387c4654f5f8e23e52"
@ -9336,7 +9341,7 @@ debug@^3.1.0, debug@^3.1.1, debug@^3.2.6, debug@^3.2.7:
dependencies:
ms "^2.1.1"
debug@^4.3.4:
debug@^4.3.3, debug@^4.3.4:
version "4.3.4"
resolved "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz#1319f6579357f2338d3337d2cdd4914bb5dcc865"
integrity sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==
@ -9806,9 +9811,9 @@ dotignore@~0.1.2:
dependencies:
minimatch "^3.0.4"
dottie@^2.0.0:
dottie@^2.0.2:
version "2.0.2"
resolved "https://registry.npmjs.org/dottie/-/dottie-2.0.2.tgz#cc91c0726ce3a054ebf11c55fbc92a7f266dd154"
resolved "https://registry.yarnpkg.com/dottie/-/dottie-2.0.2.tgz#cc91c0726ce3a054ebf11c55fbc92a7f266dd154"
integrity sha512-fmrwR04lsniq/uSr8yikThDTrM7epXHBAAjH9TbeH3rEA8tdCO7mRzB9hdmdGyJCxF8KERo9CITcm3kGuoyMhg==
dumi-assets-types@1.0.0:
@ -12440,10 +12445,10 @@ inflation@^2.0.0:
resolved "https://registry.npmjs.org/inflation/-/inflation-2.0.0.tgz#8b417e47c28f925a45133d914ca1fd389107f30f"
integrity sha1-i0F+R8KPklpFEz2RTKH9OJEH8w8=
inflection@1.13.1:
version "1.13.1"
resolved "https://registry.npmjs.org/inflection/-/inflection-1.13.1.tgz#c5cadd80888a90cf84c2e96e340d7edc85d5f0cb"
integrity sha512-dldYtl2WlN0QDkIDtg8+xFwOS2Tbmp12t1cHa5/YClU6ZQjTFm7B66UcVbh9NQB+HvT5BAd2t5+yKsBkw5pcqA==
inflection@^1.13.2:
version "1.13.4"
resolved "https://registry.yarnpkg.com/inflection/-/inflection-1.13.4.tgz#65aa696c4e2da6225b148d7a154c449366633a32"
integrity sha512-6I/HUDeYFfuNCVS3td055BaXBwKYuzw7K3ExVMStBowKo9oOAMJIXIHvdyR3iboTCp1b+1i5DSkIZTcwIktuDw==
inflight@^1.0.4:
version "1.0.6"
@ -14965,7 +14970,7 @@ lodash.uniq@^4.3.0, lodash.uniq@^4.5.0:
resolved "https://registry.npmjs.org/lodash.uniq/-/lodash.uniq-4.5.0.tgz#d0225373aeb652adc1bc82e4945339a842754773"
integrity sha1-0CJTc662Uq3BvILklFM5qEJ1R3M=
lodash@4.17.21, lodash@4.x, lodash@^4.17.11, lodash@^4.17.12, lodash@^4.17.14, lodash@^4.17.15, lodash@^4.17.19, lodash@^4.17.20, lodash@^4.17.21, lodash@^4.17.4, lodash@^4.7.0:
lodash@4.17.21, lodash@4.x, lodash@^4.17.11, lodash@^4.17.12, lodash@^4.17.14, lodash@^4.17.15, lodash@^4.17.19, lodash@^4.17.21, lodash@^4.17.4, lodash@^4.7.0:
version "4.17.21"
resolved "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz#679591c564c3bffaae8454cf0b3df370c3d6911c"
integrity sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==
@ -15871,10 +15876,10 @@ module-details-from-path@^1.0.3:
resolved "https://registry.npmjs.org/module-details-from-path/-/module-details-from-path-1.0.3.tgz#114c949673e2a8a35e9d35788527aa37b679da2b"
integrity sha1-EUyUlnPiqKNenTV4hSeqN7Z52is=
moment-timezone@^0.5.31:
version "0.5.34"
resolved "https://registry.npmjs.org/moment-timezone/-/moment-timezone-0.5.34.tgz#a75938f7476b88f155d3504a9343f7519d9a405c"
integrity sha512-3zAEHh2hKUs3EXLESx/wsgw6IQdusOT8Bxm3D9UrHPQR7zlMmzwybC8zHEM1tQ4LJwP7fcxrWr8tuBg05fFCbg==
moment-timezone@^0.5.34:
version "0.5.40"
resolved "https://registry.yarnpkg.com/moment-timezone/-/moment-timezone-0.5.40.tgz#c148f5149fd91dd3e29bf481abc8830ecba16b89"
integrity sha512-tWfmNkRYmBkPJz5mr9GVDn9vRlVZOTe6yqY92rFxiOdWXbjaR0+9LwQnZGGuNR63X456NqmEkbskte8tWL5ePg==
dependencies:
moment ">= 2.9.0"
@ -15883,7 +15888,7 @@ moment@2.x, moment@^2.29.1:
resolved "https://registry.npmjs.org/moment/-/moment-2.29.4.tgz#3dbe052889fe7c1b2ed966fcb3a77328964ef108"
integrity sha512-5LC9SOxjSc2HF6vO2CyuTDNivEdoz2IvyJJGj6X8DJ0eFyfszE0QiEd+iXmBvUP3WHxSjFH/vIsA0EN00cgr8w==
"moment@>= 2.9.0", moment@^2.24.0, moment@^2.25.3, moment@^2.26.0:
"moment@>= 2.9.0", moment@^2.24.0, moment@^2.25.3:
version "2.29.1"
resolved "https://registry.npmjs.org/moment/-/moment-2.29.1.tgz#b2be769fa31940be9eeea6469c075e35006fa3d3"
integrity sha512-kHmoybcPV8Sqy59DwNDY3Jefr64lK/by/da0ViFcuA4DH0vQg5Q6Ze5VimxkfQNSC+Mls/Kx53s7TjP1RhFEDQ==
@ -20303,12 +20308,10 @@ ret@~0.1.10:
resolved "https://registry.npmjs.org/ret/-/ret-0.1.15.tgz#b8a4825d5bdb1fc3f6f53c2bc33f81388681c7bc"
integrity sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg==
retry-as-promised@^3.2.0:
version "3.2.0"
resolved "https://registry.npmjs.org/retry-as-promised/-/retry-as-promised-3.2.0.tgz#769f63d536bec4783549db0777cb56dadd9d8543"
integrity sha512-CybGs60B7oYU/qSQ6kuaFmRd9sTZ6oXSc0toqePvV74Ac6/IFZSI1ReFQmtCN+uvW1Mtqdwpvt/LGOiCBAY2Mg==
dependencies:
any-promise "^1.3.0"
retry-as-promised@^6.1.0:
version "6.1.0"
resolved "https://registry.yarnpkg.com/retry-as-promised/-/retry-as-promised-6.1.0.tgz#11eca9a0f97804d552ec8e74bc4eb839bd226dc4"
integrity sha512-Hj/jY+wFC+SB9SDlIIFWiGOHnNG0swYbGYsOj2BJ8u2HKUaobNKab0OIC0zOLYzDy0mb7A4xA5BMo4LMz5YtEA==
retry@^0.12.0:
version "0.12.0"
@ -20701,28 +20704,30 @@ seq-queue@^0.0.5:
resolved "https://registry.npmjs.org/seq-queue/-/seq-queue-0.0.5.tgz#d56812e1c017a6e4e7c3e3a37a1da6d78dd3c93e"
integrity sha1-1WgS4cAXpuTnw+Ojeh2m143TyT4=
sequelize-pool@^6.0.0:
version "6.1.0"
resolved "https://registry.npmjs.org/sequelize-pool/-/sequelize-pool-6.1.0.tgz#caaa0c1e324d3c2c3a399fed2c7998970925d668"
integrity sha512-4YwEw3ZgK/tY/so+GfnSgXkdwIJJ1I32uZJztIEgZeAO6HMgj64OzySbWLgxj+tXhZCJnzRfkY9gINw8Ft8ZMg==
sequelize-pool@^7.1.0:
version "7.1.0"
resolved "https://registry.yarnpkg.com/sequelize-pool/-/sequelize-pool-7.1.0.tgz#210b391af4002762f823188fd6ecfc7413020768"
integrity sha512-G9c0qlIWQSK29pR/5U2JF5dDQeqqHRragoyahj/Nx4KOOQ3CPPfzxnfqFPCSB7x5UgjOgnZ61nSxz+fjDpRlJg==
sequelize@^6.9.0:
version "6.11.0"
resolved "https://registry.npmjs.org/sequelize/-/sequelize-6.11.0.tgz#11620b02ab2ca02af59ec652dd22bef7ccd348af"
integrity sha512-+j3N5lr+FR1eicMRGR3bRsGOl9HMY0UGb2PyB2i1yZ64XBgsz3xejMH0UD45LcUitj40soDGIa9CyvZG0dfzKg==
sequelize@^6.26.0:
version "6.26.0"
resolved "https://registry.yarnpkg.com/sequelize/-/sequelize-6.26.0.tgz#ef4a48849f20b28303d3e2c1cb0f0e13755f26ae"
integrity sha512-Xv82z1FdSn/qwB1IObSxIHV519cFk/vSD28vWs8Y0VucQLn7pK2x2jYjf2Qg/rBUQbCVprDdU7RPf+55rrkc0A==
dependencies:
debug "^4.1.1"
dottie "^2.0.0"
inflection "1.13.1"
lodash "^4.17.20"
moment "^2.26.0"
moment-timezone "^0.5.31"
"@types/debug" "^4.1.7"
"@types/validator" "^13.7.1"
debug "^4.3.3"
dottie "^2.0.2"
inflection "^1.13.2"
lodash "^4.17.21"
moment "^2.29.1"
moment-timezone "^0.5.34"
pg-connection-string "^2.5.0"
retry-as-promised "^3.2.0"
semver "^7.3.2"
sequelize-pool "^6.0.0"
retry-as-promised "^6.1.0"
semver "^7.3.5"
sequelize-pool "^7.1.0"
toposort-class "^1.0.1"
uuid "^8.1.0"
uuid "^8.3.2"
validator "^13.7.0"
wkx "^0.5.0"
@ -23006,7 +23011,7 @@ uuid@^3.2.1, uuid@^3.3.2:
resolved "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz#b23e4358afa8a202fe7a100af1f5f883f02007ee"
integrity sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==
uuid@^8.1.0, uuid@^8.3.0:
uuid@^8.3.0, uuid@^8.3.2:
version "8.3.2"
resolved "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz#80d5b5ced271bb9af6c445f21a1a04c606cefbe2"
integrity sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==