New Case Study:See how Anthropic automated 95% of dependency reviews with Socket.Learn More
Socket
Sign inDemoInstall
Socket

@uql/mongo

Package Overview
Dependencies
Maintainers
1
Versions
113
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@uql/mongo - npm Package Compare versions

Comparing version 0.4.8 to 0.4.9

8

mongodbQuerier.d.ts

@@ -10,7 +10,7 @@ import { MongoClient, ObjectId } from 'mongodb';

constructor(conn: MongoClient, dialect?: MongoDialect);
insert<E>(entity: Type<E>, bodies: E[]): Promise<any[]>;
update<E>(entity: Type<E>, filter: QueryFilter<E>, body: E): Promise<number>;
find<E>(entity: Type<E>, qm: Query<E>): Promise<E[]>;
insertMany<E>(entity: Type<E>, bodies: E[]): Promise<any[]>;
updateMany<E>(entity: Type<E>, filter: QueryFilter<E>, body: E): Promise<number>;
findMany<E>(entity: Type<E>, qm: Query<E>): Promise<E[]>;
findOneById<E>(entity: Type<E>, id: ObjectId, qo: QueryOne<E>, opts?: QueryOptions): Promise<E>;
remove<E>(entity: Type<E>, filter: QueryFilter<E>): Promise<number>;
removeMany<E>(entity: Type<E>, filter: QueryFilter<E>): Promise<number>;
count<E>(entity: Type<E>, filter?: QueryFilter<E>): Promise<number>;

@@ -17,0 +17,0 @@ query(query: string): Promise<void>;

@@ -15,3 +15,3 @@ "use strict";

}
async insert(entity, bodies) {
async insertMany(entity, bodies) {
const persistables = bodies.map((body) => {

@@ -27,3 +27,3 @@ const persistableProperties = util_1.filterPersistableProperties(entity, body);

}
async update(entity, filter, body) {
async updateMany(entity, filter, body) {
const persistableProperties = util_1.filterPersistableProperties(entity, body);

@@ -39,3 +39,3 @@ const persistable = persistableProperties.reduce((acc, key) => {

}
async find(entity, qm) {
async findMany(entity, qm) {
const meta = decorator_1.getMeta(entity);

@@ -76,3 +76,3 @@ let documents;

}
async remove(entity, filter) {
async removeMany(entity, filter) {
const res = await this.collection(entity).deleteMany(this.dialect.buildFilter(entity, filter), {

@@ -156,2 +156,2 @@ session: this.session,

}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9uZ29kYlF1ZXJpZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvbW9uZ29kYlF1ZXJpZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEscUNBQTJFO0FBRTNFLCtDQUFnRDtBQUNoRCwwREFBcUQ7QUFDckQsZ0RBQW9FO0FBQ3BFLGlEQUE4QztBQUU5QyxNQUFhLGNBQWUsU0FBUSxxQkFBcUI7SUFHdkQsWUFBcUIsSUFBaUIsRUFBVyxVQUFVLElBQUksMkJBQVksRUFBRTtRQUMzRSxLQUFLLEVBQUUsQ0FBQztRQURXLFNBQUksR0FBSixJQUFJLENBQWE7UUFBVyxZQUFPLEdBQVAsT0FBTyxDQUFxQjtJQUU3RSxDQUFDO0lBRUQsS0FBSyxDQUFDLE1BQU0sQ0FBSSxNQUFlLEVBQUUsTUFBVztRQUMxQyxNQUFNLFlBQVksR0FBRyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUU7WUFDdkMsTUFBTSxxQkFBcUIsR0FBRyxrQ0FBMkIsQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDLENBQUM7WUFDeEUsT0FBTyxxQkFBcUIsQ0FBQyxNQUFNLENBQUMsQ0FBQyxHQUFHLEVBQUUsR0FBRyxFQUFFLEVBQUU7Z0JBQy9DLEdBQUcsQ0FBQyxHQUFHLENBQUMsR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7Z0JBQ3JCLE9BQU8sR0FBRyxDQUFDO1lBQ2IsQ0FBQyxFQUFFLEVBQW1CLENBQUMsQ0FBQztRQUMxQixDQUFDLENBQUMsQ0FBQztRQUVILE1BQU0sR0FBRyxHQUFHLE1BQU0sSUFBSSxDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUMsQ0FBQyxVQUFVLENBQUMsWUFBWSxFQUFFLEVBQUUsT0FBTyxFQUFFLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUFDO1FBRTlGLE9BQU8sTUFBTSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDeEMsQ0FBQztJQUVELEtBQUssQ0FB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QUNGO0lBQ0QsT0FBTyxHQUFRLENBQUM7QUFDbEIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE1vbmdvQ2xpZW50LCBDbGllbnRTZXNzaW9uLCBPcHRpb25hbElkLCBPYmplY3RJZCB9IGZyb20gJ21vbmdvZGInO1xuaW1wb3J0IHsgUXVlcnlGaWx0ZXIsIFF1ZXJ5LCBFbnRpdHlNZXRhLCBRdWVyeU9uZSwgUXVlcnlPcHRpb25zLCBUeXBlIH0gZnJvbSAnQHVxbC9jb3JlL3R5cGUnO1xuaW1wb3J0IHsgQmFzZVF1ZXJpZXIgfSBmcm9tICdAdXFsL2NvcmUvcXVlcmllcic7XG5pbXBvcnQgeyBnZXRNZXRhIH0gZnJvbSAnQHVxbC9jb3JlL2VudGl0eS9kZWNvcmF0b3InO1xuaW1wb3J0IHsgZmlsdGVyUGVyc2lzdGFibGVQcm9wZXJ0aWVzIH0gZnJvbSAnQHVxbC9jb3JlL2VudGl0eS91dGlsJztcbmltcG9ydCB7IE1vbmdvRGlhbGVjdCB9IGZyb20gJy4vbW9uZ29EaWFsZWN0JztcblxuZXhwb3J0IGNsYXNzIE1vbmdvZGJRdWVyaWVyIGV4dGVuZHMgQmFzZVF1ZXJpZXI8T2JqZWN0SWQ+IHtcbiAgcHJpdmF0ZSBzZXNzaW9uOiBDbGllbnRTZXNzaW9uO1xuXG4gIGNvbnN0cnVjdG9yKHJlYWRvbmx5IGNvbm46IE1vbmdvQ2xpZW50LCByZWFkb25seSBkaWFsZWN0ID0gbmV3IE1vbmdvRGlhbGVjdCgpKSB7XG4gICAgc3VwZXIoKTtcbiAgfVxuXG4gIGFzeW5jIGluc2VydDxFPihlbnRpdHk6IFR5cGU8RT4sIGJvZGllczogRVtdKSB7XG4gICAgY29uc3QgcGVyc2lzdGFibGVzID0gYm9kaWVzLm1hcCgoYm9keSkgPT4ge1xuICAgICAgY29uc3QgcGVyc2lzdGFibGVQcm9wZXJ0aWVzID0gZmlsdGVyUGVyc2lzdGFibGVQcm9wZXJ0aWVzKGVudGl0eSwgYm9keSk7XG4gICAgICByZXR1cm4gcGVyc2lzdGFibGVQcm9wZXJ0aWVzLnJlZHVjZSgoYWNjLCBrZXkpID0+IHtcbiAgICAgICAgYWNjW2tleV0gPSBib2R5W2tleV07XG4gICAgICAgIHJldHVybiBhY2M7XG4gICAgICB9LCB7fSBhcyBPcHRpb25hbElkPEU+KTtcbiAgICB9KTtcblxuICAgIGNvbnN0IHJlcyA9IGF3YWl0IHRoaXMuY29sbGVjdGlvbihlbnRpdHkpLmluc2VydE1hbnkocGVyc2lzdGFibGVzLCB7IHNlc3Npb246IHRoaXMuc2Vzc2lvbiB9KTtcblxuICAgIHJldHVybiBPYmplY3QudmFsdWVzKHJlcy5pbnNlcnRlZElkcyk7XG4gIH1cblxuICBhc3luYyB1cGRhdGU8RT4oZW50aXR5OiBUeXBlPEU+LCBmaWx0ZXI6IFF1ZXJ5RmlsdGVyPEU+LCBib2R5OiBFKSB7XG4gICAgY29uc3QgcGVyc2lzdGFibGVQcm9wZXJ0aWVzID0gZmlsdGVyUGVyc2lzdGFibGVQcm9wZXJ0aWVzKGVudGl0eSwgYm9keSk7XG4gICAgY29uc3QgcGVyc2lzdGFibGUgPSBwZXJzaXN0YWJsZVByb3BlcnRpZXMucmVkdWNlKChhY2MsIGtleSkgPT4ge1xuICAgICAgYWNjW2tleV0gPSBib2R5W2tleV07XG4gICAgICByZXR1cm4gYWNjO1xuICAgIH0sIHt9IGFzIE9wdGlvbmFsSWQ8RT4pO1xuXG4gICAgY29uc3QgcmVzID0gYXdhaXQgdGhpcy5jb2xsZWN0aW9uKGVudGl0eSkudXBkYXRlTWFueShcbiAgICAgIHRoaXMuZGlhbGVjdC5idWlsZEZpbHRlcihlbnRpdHksIGZpbHRlciksXG4gICAgICB7ICRzZXQ6IHBlcnNpc3RhYmxlIH0sXG4gICAgICB7XG4gICAgICAgIHNlc3Npb246IHRoaXMuc2Vzc2lvbixcbiAgICAgIH1cbiAgICApO1xuXG4gICAgcmV0dXJuIHJlcy5tb2RpZmllZENvdW50O1xuICB9XG5cbiAgYXN5bmMgZmluZDxFPihlbnRpdHk6IFR5cGU8RT4sIHFtOiBRdWVyeTxFPikge1xuICAgIGNvbnN0IG1ldGEgPSBnZXRNZXRhKGVudGl0eSk7XG5cbiAgICBsZXQgZG9jdW1lbnRzOiBFW107XG5cbiAgICBpZiAocW0ucG9wdWxhdGUgJiYgT2JqZWN0LmtleXMocW0ucG9wdWxhdGUpLmxlbmd0aCkge1xuICAgICAgY29uc3QgcGlwZWxpbmUgPSB0aGlzLmRpYWxlY3QuYnVpbGRBZ2dyZWdhdGlvblBpcGVsaW5lKGVudGl0eSwgcW0pO1xuICAgICAgZG9jdW1lbnRzID0gYXdhaXQgdGhpcy5jb2xsZWN0aW9uKGVudGl0eSkuYWdncmVnYXRlPEU+KHBpcGVsaW5lLCB7IHNlc3Npb246IHRoaXMuc2Vzc2lvbiB9KS50b0FycmF5KCk7XG4gICAgICBub3JtYWxpemVJZHMoZG9jdW1lbnRzLCBtZXRhKTtcbiAgICAgIGF3YWl0IHRoaXMucG9wdWxhdGVUb01hbnlSZWxhdGlvbnMoZW50aXR5LCBkb2N1bWVudHMsIHFtLnBvcHVsYXRlKTtcbiAgICB9IGVsc2Uge1xuICAgICAgY29uc3QgY3Vyc29yID0gdGhpcy5jb2xsZWN0aW9uKGVudGl0eSkuZmluZDxFPih7fSwgeyBzZXNzaW9uOiB0aGlzLnNlc3Npb24gfSk7XG5cbiAgICAgIGlmIChxbS5maWx0ZXIpIHtcbiAgICAgICAgY29uc3QgZmlsdGVyID0gdGhpcy5kaWFsZWN0LmJ1aWxkRmlsdGVyKGVudGl0eSwgcW0uZmlsdGVyKTtcbiAgICAgICAgY3Vyc29yLmZpbHRlcihmaWx0ZXIpO1xuICAgICAgfVxuICAgICAgaWYgKHFtLnByb2plY3QpIHtcbiAgICAgICAgY3Vyc29yLnByb2plY3QocW0ucHJvamVjdCk7XG4gICAgICB9XG4gICAgICBpZiAocW0uc29ydCkge1xuICAgICAgICBjdXJzb3Iuc29ydChxbS5zb3J0KTtcbiAgICAgIH1cbiAgICAgIGlmIChxbS5za2lwKSB7XG4gICAgICAgIGN1cnNvci5za2lwKHFtLnNraXApO1xuICAgICAgfVxuICAgICAgaWYgKHFtLmxpbWl0KSB7XG4gICAgICAgIGN1cnNvci5saW1pdChxbS5saW1pdCk7XG4gICAgICB9XG5cbiAgICAgIGRvY3VtZW50cyA9IGF3YWl0IGN1cnNvci50b0FycmF5KCk7XG4gICAgICBub3JtYWxpemVJZHMoZG9jdW1lbnRzLCBtZXRhKTtcbiAgICB9XG5cbiAgICByZXR1cm4gZG9jdW1lbnRzO1xuICB9XG5cbiAgZmluZE9uZUJ5SWQ8RT4oZW50aXR5OiBUeXBlPEU+LCBpZDogT2JqZWN0SWQsIHFvOiBRdWVyeU9uZTxFPiwgb3B0cz86IFF1ZXJ5T3B0aW9ucykge1xuICAgIGNvbnN0IG1ldGEgPSBnZXRNZXRhKGVudGl0eSk7XG4gICAgcmV0dXJuIHRoaXMuZmluZE9uZShlbnRpdHksIHsgLi4ucW8sIGZpbHRlcjogeyBbbWV0YS5pZC5uYW1lXTogaWQgfSB9LCBvcHRzKTtcbiAgfVxuXG4gIGFzeW5jIHJlbW92ZTxFPihlbnRpdHk6IFR5cGU8RT4sIGZpbHRlcjogUXVlcnlGaWx0ZXI8RT4pIHtcbiAgICBjb25zdCByZXMgPSBhd2FpdCB0aGlzLmNvbGxlY3Rpb24oZW50aXR5KS5kZWxldGVNYW55KHRoaXMuZGlhbGVjdC5idWlsZEZpbHRlcihlbnRpdHksIGZpbHRlciksIHtcbiAgICAgIHNlc3Npb246IHRoaXMuc2Vzc2lvbixcbiAgICB9KTtcbiAgICByZXR1cm4gcmVzLmRlbGV0ZWRDb3VudDtcbiAgfVxuXG4gIGNvdW50PEU+KGVudGl0eTogVHlwZTxFPiwgZmlsdGVyPzogUXVlcnlGaWx0ZXI8RT4pIHtcbiAgICByZXR1cm4gdGhpcy5jb2xsZWN0aW9uKGVudGl0eSkuY291bnREb2N1bWVudHModGhpcy5kaWFsZWN0LmJ1aWxkRmlsdGVyKGVudGl0eSwgZmlsdGVyKSwgeyBzZXNzaW9uOiB0aGlzLnNlc3Npb24gfSk7XG4gIH1cblxuICBhc3luYyBxdWVyeShxdWVyeTogc3RyaW5nKSB7XG4gICAgdGhyb3cgbmV3IFR5cGVFcnJvcignbWV0aG9kIG5vdCBpbXBsZW1lbnRlZCcpO1xuICB9XG5cbiAgZ2V0IGhhc09wZW5UcmFuc2FjdGlvbigpIHtcbiAgICByZXR1cm4gdGhpcy5zZXNzaW9uPy5pblRyYW5zYWN0aW9uKCk7XG4gIH1cblxuICBjb2xsZWN0aW9uPEU+KGVudGl0eTogVHlwZTxFPikge1xuICAgIGNvbnN0IG1ldGEgPSBnZXRNZXRhKGVudGl0eSk7XG4gICAgcmV0dXJuIHRoaXMuY29ubi5kYigpLmNvbGxlY3Rpb24obWV0YS5uYW1lKTtcbiAgfVxuXG4gIGFzeW5jIGJlZ2luVHJhbnNhY3Rpb24oKSB7XG4gICAgaWYgKHRoaXMuc2Vzc2lvbj8uaW5UcmFuc2FjdGlvbigpKSB7XG4gICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKCdwZW5kaW5nIHRyYW5zYWN0aW9uJyk7XG4gICAgfVxuICAgIHRoaXMuc2Vzc2lvbiA9IHRoaXMuY29ubi5zdGFydFNlc3Npb24oKTtcbiAgICB0aGlzLnNlc3Npb24uc3RhcnRUcmFuc2FjdGlvbigpO1xuICB9XG5cbiAgYXN5bmMgY29tbWl0VHJhbnNhY3Rpb24oKSB7XG4gICAgaWYgKCF0aGlzLnNlc3Npb24/LmluVHJhbnNhY3Rpb24oKSkge1xuICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcignbm90IGEgcGVuZGluZyB0cmFuc2FjdGlvbicpO1xuICAgIH1cbiAgICBhd2FpdCB0aGlzLnNlc3Npb24uY29tbWl0VHJhbnNhY3Rpb24oKTtcbiAgICB0aGlzLnNlc3Npb24uZW5kU2Vzc2lvbigpO1xuICB9XG5cbiAgYXN5bmMgcm9sbGJhY2tUcmFuc2FjdGlvbigpIHtcbiAgICBpZiAoIXRoaXMuc2Vzc2lvbj8uaW5UcmFuc2FjdGlvbigpKSB7XG4gICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKCdub3QgYSBwZW5kaW5nIHRyYW5zYWN0aW9uJyk7XG4gICAgfVxuICAgIGF3YWl0IHRoaXMuc2Vzc2lvbi5hYm9ydFRyYW5zYWN0aW9uKCk7XG4gIH1cblxuICBhc3luYyByZWxlYXNlKCkge1xuICAgIGlmICh0aGlzLnNlc3Npb24/LmluVHJhbnNhY3Rpb24oKSkge1xuICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcigncGVuZGluZyB0cmFuc2FjdGlvbicpO1xuICAgIH1cbiAgICByZXR1cm4gdGhpcy5jb25uLmNsb3NlKCk7XG4gIH1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIG5vcm1hbGl6ZUlkczxFPihkb2NzOiBFIHwgRVtdLCBtZXRhOiBFbnRpdHlNZXRhPEU+KSB7XG4gIGlmIChBcnJheS5pc0FycmF5KGRvY3MpKSB7XG4gICAgZm9yIChjb25zdCBkb2Mgb2YgZG9jcykge1xuICAgICAgbm9ybWFsaXplSWQ8RT4oZG9jLCBtZXRhKTtcbiAgICB9XG4gIH0gZWxzZSB7XG4gICAgbm9ybWFsaXplSWQ8RT4oZG9jcywgbWV0YSk7XG4gIH1cbn1cblxuZnVuY3Rpb24gbm9ybWFsaXplSWQ8RT4oZG9jOiBFLCBtZXRhOiBFbnRpdHlNZXRhPEU+KSB7XG4gIGlmICghZG9jKSB7XG4gICAgcmV0dXJuO1xuICB9XG4gIGRvY1ttZXRhLmlkLnByb3BlcnR5XSA9IChkb2MgYXMgYW55KS5faWQ7XG4gIGRlbGV0ZSAoZG9jIGFzIGFueSkuX2lkO1xuICBmb3IgKGNvbnN0IHJlbFByb3Agb2YgT2JqZWN0LmtleXMobWV0YS5yZWxhdGlvbnMpKSB7XG4gICAgY29uc3QgcmVsT3B0cyA9IG1ldGEucmVsYXRpb25zW3JlbFByb3BdO1xuICAgIGNvbnN0IHJlbERhdGEgPSBkb2NbcmVsUHJvcF07XG4gICAgaWYgKHR5cGVvZiByZWxEYXRhID09PSAnb2JqZWN0JyAmJiAhKHJlbERhdGEgaW5zdGFuY2VvZiBPYmplY3RJZCkpIHtcbiAgICAgIGNvbnN0IHJlbE1ldGEgPSBnZXRNZXRhKHJlbE9wdHMuZW50aXR5KCkpO1xuICAgICAgbm9ybWFsaXplSWRzKHJlbERhdGEsIHJlbE1ldGEpO1xuICAgIH1cbiAgfVxuICByZXR1cm4gZG9jIGFzIEU7XG59XG4iXX0=
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9uZ29kYlF1ZXJpZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvbW9uZ29kYlF1ZXJpZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEscUNBQTJFO0FBRTNFLCtDQUFnRDtBQUNoRCwwREFBcUQ7QUFDckQsZ0RBQW9FO0FBQ3BFLGlEQUE4QztBQUU5QyxNQUFhLGNBQWUsU0FBUSxxQkFBcUI7SUFHdkQsWUFBcUIsSUFBaUIsRUFBVyxVQUFVLElBQUksMkJBQVksRUFBRTtRQUMzRSxLQUFLLEVBQUUsQ0FBQztRQURXLFNBQUksR0FBSixJQUFJLENBQWE7UUFBVyxZQUFPLEdBQVAsT0FBTyxDQUFxQjtJQUU3RSxDQUFDO0lBRUQsS0FBSyxDQUFDLFVBQVUsQ0FBSSxNQUFlLEVBQUUsTUFBVztRQUM5QyxNQUFNLFlBQVksR0FBRyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUU7WUFDdkMsTUFBTSxxQkFBcUIsR0FBRyxrQ0FBMkIsQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDLENBQUM7WUFDeEUsT0FBTyxxQkFBcUIsQ0FBQyxNQUFNLENBQUMsQ0FBQyxHQUFHLEVBQUUsR0FBRyxFQUFFLEVBQUU7Z0JBQy9DLEdBQUcsQ0FBQyxHQUFHLENBQUMsR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7Z0JBQ3JCLE9BQU8sR0FBRyxDQUFDO1lBQ2IsQ0FBQyxFQUFFLEVBQW1CLENBQUMsQ0FBQztRQUMxQixDQUFDLENBQUMsQ0FBQztRQUVILE1BQU0sR0FBRyxHQUFHLE1BQU0sSUFBSSxDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUMsQ0FBQyxVQUFVLENBQUMsWUFBWSxFQUFFLEVBQUUsT0FBTyxFQUFFLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUFDO1FBRTlGLE9BQU8sTUFBTSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDeEMsQ0FBQztJQUVELEtBQUssQ0FB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QUNGO0lBQ0QsT0FBTyxHQUFRLENBQUM7QUFDbEIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE1vbmdvQ2xpZW50LCBDbGllbnRTZXNzaW9uLCBPcHRpb25hbElkLCBPYmplY3RJZCB9IGZyb20gJ21vbmdvZGInO1xuaW1wb3J0IHsgUXVlcnlGaWx0ZXIsIFF1ZXJ5LCBFbnRpdHlNZXRhLCBRdWVyeU9uZSwgUXVlcnlPcHRpb25zLCBUeXBlIH0gZnJvbSAnQHVxbC9jb3JlL3R5cGUnO1xuaW1wb3J0IHsgQmFzZVF1ZXJpZXIgfSBmcm9tICdAdXFsL2NvcmUvcXVlcmllcic7XG5pbXBvcnQgeyBnZXRNZXRhIH0gZnJvbSAnQHVxbC9jb3JlL2VudGl0eS9kZWNvcmF0b3InO1xuaW1wb3J0IHsgZmlsdGVyUGVyc2lzdGFibGVQcm9wZXJ0aWVzIH0gZnJvbSAnQHVxbC9jb3JlL2VudGl0eS91dGlsJztcbmltcG9ydCB7IE1vbmdvRGlhbGVjdCB9IGZyb20gJy4vbW9uZ29EaWFsZWN0JztcblxuZXhwb3J0IGNsYXNzIE1vbmdvZGJRdWVyaWVyIGV4dGVuZHMgQmFzZVF1ZXJpZXI8T2JqZWN0SWQ+IHtcbiAgcHJpdmF0ZSBzZXNzaW9uOiBDbGllbnRTZXNzaW9uO1xuXG4gIGNvbnN0cnVjdG9yKHJlYWRvbmx5IGNvbm46IE1vbmdvQ2xpZW50LCByZWFkb25seSBkaWFsZWN0ID0gbmV3IE1vbmdvRGlhbGVjdCgpKSB7XG4gICAgc3VwZXIoKTtcbiAgfVxuXG4gIGFzeW5jIGluc2VydE1hbnk8RT4oZW50aXR5OiBUeXBlPEU+LCBib2RpZXM6IEVbXSkge1xuICAgIGNvbnN0IHBlcnNpc3RhYmxlcyA9IGJvZGllcy5tYXAoKGJvZHkpID0+IHtcbiAgICAgIGNvbnN0IHBlcnNpc3RhYmxlUHJvcGVydGllcyA9IGZpbHRlclBlcnNpc3RhYmxlUHJvcGVydGllcyhlbnRpdHksIGJvZHkpO1xuICAgICAgcmV0dXJuIHBlcnNpc3RhYmxlUHJvcGVydGllcy5yZWR1Y2UoKGFjYywga2V5KSA9PiB7XG4gICAgICAgIGFjY1trZXldID0gYm9keVtrZXldO1xuICAgICAgICByZXR1cm4gYWNjO1xuICAgICAgfSwge30gYXMgT3B0aW9uYWxJZDxFPik7XG4gICAgfSk7XG5cbiAgICBjb25zdCByZXMgPSBhd2FpdCB0aGlzLmNvbGxlY3Rpb24oZW50aXR5KS5pbnNlcnRNYW55KHBlcnNpc3RhYmxlcywgeyBzZXNzaW9uOiB0aGlzLnNlc3Npb24gfSk7XG5cbiAgICByZXR1cm4gT2JqZWN0LnZhbHVlcyhyZXMuaW5zZXJ0ZWRJZHMpO1xuICB9XG5cbiAgYXN5bmMgdXBkYXRlTWFueTxFPihlbnRpdHk6IFR5cGU8RT4sIGZpbHRlcjogUXVlcnlGaWx0ZXI8RT4sIGJvZHk6IEUpIHtcbiAgICBjb25zdCBwZXJzaXN0YWJsZVByb3BlcnRpZXMgPSBmaWx0ZXJQZXJzaXN0YWJsZVByb3BlcnRpZXMoZW50aXR5LCBib2R5KTtcbiAgICBjb25zdCBwZXJzaXN0YWJsZSA9IHBlcnNpc3RhYmxlUHJvcGVydGllcy5yZWR1Y2UoKGFjYywga2V5KSA9PiB7XG4gICAgICBhY2Nba2V5XSA9IGJvZHlba2V5XTtcbiAgICAgIHJldHVybiBhY2M7XG4gICAgfSwge30gYXMgT3B0aW9uYWxJZDxFPik7XG5cbiAgICBjb25zdCByZXMgPSBhd2FpdCB0aGlzLmNvbGxlY3Rpb24oZW50aXR5KS51cGRhdGVNYW55KFxuICAgICAgdGhpcy5kaWFsZWN0LmJ1aWxkRmlsdGVyKGVudGl0eSwgZmlsdGVyKSxcbiAgICAgIHsgJHNldDogcGVyc2lzdGFibGUgfSxcbiAgICAgIHtcbiAgICAgICAgc2Vzc2lvbjogdGhpcy5zZXNzaW9uLFxuICAgICAgfVxuICAgICk7XG5cbiAgICByZXR1cm4gcmVzLm1vZGlmaWVkQ291bnQ7XG4gIH1cblxuICBhc3luYyBmaW5kTWFueTxFPihlbnRpdHk6IFR5cGU8RT4sIHFtOiBRdWVyeTxFPikge1xuICAgIGNvbnN0IG1ldGEgPSBnZXRNZXRhKGVudGl0eSk7XG5cbiAgICBsZXQgZG9jdW1lbnRzOiBFW107XG5cbiAgICBpZiAocW0ucG9wdWxhdGUgJiYgT2JqZWN0LmtleXMocW0ucG9wdWxhdGUpLmxlbmd0aCkge1xuICAgICAgY29uc3QgcGlwZWxpbmUgPSB0aGlzLmRpYWxlY3QuYnVpbGRBZ2dyZWdhdGlvblBpcGVsaW5lKGVudGl0eSwgcW0pO1xuICAgICAgZG9jdW1lbnRzID0gYXdhaXQgdGhpcy5jb2xsZWN0aW9uKGVudGl0eSkuYWdncmVnYXRlPEU+KHBpcGVsaW5lLCB7IHNlc3Npb246IHRoaXMuc2Vzc2lvbiB9KS50b0FycmF5KCk7XG4gICAgICBub3JtYWxpemVJZHMoZG9jdW1lbnRzLCBtZXRhKTtcbiAgICAgIGF3YWl0IHRoaXMucG9wdWxhdGVUb01hbnlSZWxhdGlvbnMoZW50aXR5LCBkb2N1bWVudHMsIHFtLnBvcHVsYXRlKTtcbiAgICB9IGVsc2Uge1xuICAgICAgY29uc3QgY3Vyc29yID0gdGhpcy5jb2xsZWN0aW9uKGVudGl0eSkuZmluZDxFPih7fSwgeyBzZXNzaW9uOiB0aGlzLnNlc3Npb24gfSk7XG5cbiAgICAgIGlmIChxbS5maWx0ZXIpIHtcbiAgICAgICAgY29uc3QgZmlsdGVyID0gdGhpcy5kaWFsZWN0LmJ1aWxkRmlsdGVyKGVudGl0eSwgcW0uZmlsdGVyKTtcbiAgICAgICAgY3Vyc29yLmZpbHRlcihmaWx0ZXIpO1xuICAgICAgfVxuICAgICAgaWYgKHFtLnByb2plY3QpIHtcbiAgICAgICAgY3Vyc29yLnByb2plY3QocW0ucHJvamVjdCk7XG4gICAgICB9XG4gICAgICBpZiAocW0uc29ydCkge1xuICAgICAgICBjdXJzb3Iuc29ydChxbS5zb3J0KTtcbiAgICAgIH1cbiAgICAgIGlmIChxbS5za2lwKSB7XG4gICAgICAgIGN1cnNvci5za2lwKHFtLnNraXApO1xuICAgICAgfVxuICAgICAgaWYgKHFtLmxpbWl0KSB7XG4gICAgICAgIGN1cnNvci5saW1pdChxbS5saW1pdCk7XG4gICAgICB9XG5cbiAgICAgIGRvY3VtZW50cyA9IGF3YWl0IGN1cnNvci50b0FycmF5KCk7XG4gICAgICBub3JtYWxpemVJZHMoZG9jdW1lbnRzLCBtZXRhKTtcbiAgICB9XG5cbiAgICByZXR1cm4gZG9jdW1lbnRzO1xuICB9XG5cbiAgZmluZE9uZUJ5SWQ8RT4oZW50aXR5OiBUeXBlPEU+LCBpZDogT2JqZWN0SWQsIHFvOiBRdWVyeU9uZTxFPiwgb3B0cz86IFF1ZXJ5T3B0aW9ucykge1xuICAgIGNvbnN0IG1ldGEgPSBnZXRNZXRhKGVudGl0eSk7XG4gICAgcmV0dXJuIHRoaXMuZmluZE9uZShlbnRpdHksIHsgLi4ucW8sIGZpbHRlcjogeyBbbWV0YS5pZC5uYW1lXTogaWQgfSB9LCBvcHRzKTtcbiAgfVxuXG4gIGFzeW5jIHJlbW92ZU1hbnk8RT4oZW50aXR5OiBUeXBlPEU+LCBmaWx0ZXI6IFF1ZXJ5RmlsdGVyPEU+KSB7XG4gICAgY29uc3QgcmVzID0gYXdhaXQgdGhpcy5jb2xsZWN0aW9uKGVudGl0eSkuZGVsZXRlTWFueSh0aGlzLmRpYWxlY3QuYnVpbGRGaWx0ZXIoZW50aXR5LCBmaWx0ZXIpLCB7XG4gICAgICBzZXNzaW9uOiB0aGlzLnNlc3Npb24sXG4gICAgfSk7XG4gICAgcmV0dXJuIHJlcy5kZWxldGVkQ291bnQ7XG4gIH1cblxuICBjb3VudDxFPihlbnRpdHk6IFR5cGU8RT4sIGZpbHRlcj86IFF1ZXJ5RmlsdGVyPEU+KSB7XG4gICAgcmV0dXJuIHRoaXMuY29sbGVjdGlvbihlbnRpdHkpLmNvdW50RG9jdW1lbnRzKHRoaXMuZGlhbGVjdC5idWlsZEZpbHRlcihlbnRpdHksIGZpbHRlciksIHsgc2Vzc2lvbjogdGhpcy5zZXNzaW9uIH0pO1xuICB9XG5cbiAgYXN5bmMgcXVlcnkocXVlcnk6IHN0cmluZykge1xuICAgIHRocm93IG5ldyBUeXBlRXJyb3IoJ21ldGhvZCBub3QgaW1wbGVtZW50ZWQnKTtcbiAgfVxuXG4gIGdldCBoYXNPcGVuVHJhbnNhY3Rpb24oKSB7XG4gICAgcmV0dXJuIHRoaXMuc2Vzc2lvbj8uaW5UcmFuc2FjdGlvbigpO1xuICB9XG5cbiAgY29sbGVjdGlvbjxFPihlbnRpdHk6IFR5cGU8RT4pIHtcbiAgICBjb25zdCBtZXRhID0gZ2V0TWV0YShlbnRpdHkpO1xuICAgIHJldHVybiB0aGlzLmNvbm4uZGIoKS5jb2xsZWN0aW9uKG1ldGEubmFtZSk7XG4gIH1cblxuICBhc3luYyBiZWdpblRyYW5zYWN0aW9uKCkge1xuICAgIGlmICh0aGlzLnNlc3Npb24/LmluVHJhbnNhY3Rpb24oKSkge1xuICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcigncGVuZGluZyB0cmFuc2FjdGlvbicpO1xuICAgIH1cbiAgICB0aGlzLnNlc3Npb24gPSB0aGlzLmNvbm4uc3RhcnRTZXNzaW9uKCk7XG4gICAgdGhpcy5zZXNzaW9uLnN0YXJ0VHJhbnNhY3Rpb24oKTtcbiAgfVxuXG4gIGFzeW5jIGNvbW1pdFRyYW5zYWN0aW9uKCkge1xuICAgIGlmICghdGhpcy5zZXNzaW9uPy5pblRyYW5zYWN0aW9uKCkpIHtcbiAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoJ25vdCBhIHBlbmRpbmcgdHJhbnNhY3Rpb24nKTtcbiAgICB9XG4gICAgYXdhaXQgdGhpcy5zZXNzaW9uLmNvbW1pdFRyYW5zYWN0aW9uKCk7XG4gICAgdGhpcy5zZXNzaW9uLmVuZFNlc3Npb24oKTtcbiAgfVxuXG4gIGFzeW5jIHJvbGxiYWNrVHJhbnNhY3Rpb24oKSB7XG4gICAgaWYgKCF0aGlzLnNlc3Npb24/LmluVHJhbnNhY3Rpb24oKSkge1xuICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcignbm90IGEgcGVuZGluZyB0cmFuc2FjdGlvbicpO1xuICAgIH1cbiAgICBhd2FpdCB0aGlzLnNlc3Npb24uYWJvcnRUcmFuc2FjdGlvbigpO1xuICB9XG5cbiAgYXN5bmMgcmVsZWFzZSgpIHtcbiAgICBpZiAodGhpcy5zZXNzaW9uPy5pblRyYW5zYWN0aW9uKCkpIHtcbiAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoJ3BlbmRpbmcgdHJhbnNhY3Rpb24nKTtcbiAgICB9XG4gICAgcmV0dXJuIHRoaXMuY29ubi5jbG9zZSgpO1xuICB9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBub3JtYWxpemVJZHM8RT4oZG9jczogRSB8IEVbXSwgbWV0YTogRW50aXR5TWV0YTxFPikge1xuICBpZiAoQXJyYXkuaXNBcnJheShkb2NzKSkge1xuICAgIGZvciAoY29uc3QgZG9jIG9mIGRvY3MpIHtcbiAgICAgIG5vcm1hbGl6ZUlkPEU+KGRvYywgbWV0YSk7XG4gICAgfVxuICB9IGVsc2Uge1xuICAgIG5vcm1hbGl6ZUlkPEU+KGRvY3MsIG1ldGEpO1xuICB9XG59XG5cbmZ1bmN0aW9uIG5vcm1hbGl6ZUlkPEU+KGRvYzogRSwgbWV0YTogRW50aXR5TWV0YTxFPikge1xuICBpZiAoIWRvYykge1xuICAgIHJldHVybjtcbiAgfVxuICBkb2NbbWV0YS5pZC5wcm9wZXJ0eV0gPSAoZG9jIGFzIGFueSkuX2lkO1xuICBkZWxldGUgKGRvYyBhcyBhbnkpLl9pZDtcbiAgZm9yIChjb25zdCByZWxQcm9wIG9mIE9iamVjdC5rZXlzKG1ldGEucmVsYXRpb25zKSkge1xuICAgIGNvbnN0IHJlbE9wdHMgPSBtZXRhLnJlbGF0aW9uc1tyZWxQcm9wXTtcbiAgICBjb25zdCByZWxEYXRhID0gZG9jW3JlbFByb3BdO1xuICAgIGlmICh0eXBlb2YgcmVsRGF0YSA9PT0gJ29iamVjdCcgJiYgIShyZWxEYXRhIGluc3RhbmNlb2YgT2JqZWN0SWQpKSB7XG4gICAgICBjb25zdCByZWxNZXRhID0gZ2V0TWV0YShyZWxPcHRzLmVudGl0eSgpKTtcbiAgICAgIG5vcm1hbGl6ZUlkcyhyZWxEYXRhLCByZWxNZXRhKTtcbiAgICB9XG4gIH1cbiAgcmV0dXJuIGRvYyBhcyBFO1xufVxuIl19

@@ -5,3 +5,3 @@ {

"license": "MIT",
"version": "0.4.8",
"version": "0.4.9",
"main": "index.js",

@@ -24,3 +24,3 @@ "types": "index.d.ts",

"@types/node": "^15.3.0",
"@uql/core": "^0.4.8",
"@uql/core": "^0.4.9",
"copyfiles": "^2.4.1",

@@ -27,0 +27,0 @@ "rimraf": "^3.0.2",

@@ -248,15 +248,12 @@ [![build status](https://travis-ci.org/impensables/uql.svg?branch=master)](https://travis-ci.org/impensables/uql?branch=master)

@Transactional()
async confirmAction(body: Confirmation, @InjectQuerier() querier?: Querier): Promise<void> {
async confirmAction(body: Confirmation, @InjectQuerier() querier?: Querier) {
if (body.type === 'register') {
const newUser: User = {
await querier.insertOne(User, {
name: body.name,
email: body.email,
password: body.password,
};
await querier.insertOne(User, newUser);
});
} else {
const userId = body.user as string;
await querier.updateOneById(User, userId, { password: body.password });
await querier.updateOneById(User, body.userId, { password: body.password });
}
await querier.updateOneById(Confirmation, body.id, { status: CONFIRM_STATUS_VERIFIED });

@@ -281,3 +278,3 @@ }

3. start the transaction with `await querier.beginTransaction()`
4. perform the different operations using the `querier`
4. perform the different operations using the `querier` or `repositories`
5. commit the transaction with `await querier.commitTransaction()`

@@ -288,5 +285,5 @@ 6. in the `catch` block, add `await querier.rollbackTransaction()`

```ts
import { getQuerier } from '@uql/core/querier';
import { getQuerier } from '@uql/core';
async function confirmAction(confirmation: Confirmation): Promise<void> {
async function confirmAction(body: Confirmation) {
const querier = await getQuerier();

@@ -297,16 +294,15 @@

if (confirmation.entity === 'register') {
const newUser: User = {
name: confirmation.name,
email: confirmation.email,
password: confirmation.password,
};
await querier.insertOne(User, newUser);
if (body.action === 'signup') {
// signup
await querier.insertOne(User, {
name: body.name,
email: body.email,
password: body.password,
});
} else {
// confirm change password
const userId = confirmation.user as string;
await querier.updateOneById(User, userId, { password: confirmation.password });
// change password
await querier.updateOneById(User, body.userId, { password: body.password });
}
await this.querier.updateOneById(Confirmation, body.id, { status: CONFIRM_STATUS_VERIFIED });
await querier.updateOneById(Confirmation, body.id, { status: CONFIRM_STATUS_VERIFIED });

@@ -349,9 +345,9 @@ await querier.commitTransaction();

app
// ...other routes may go before and/or after (as usual)
// ...
.use(
'/api',
// this will generate CRUD REST APIs for the entities.
// all entities will be automatically exposed unless
// 'include' or 'exclude' options are provided
entitiesMiddleware({
// all entities will be automatically exposed unless
// 'include' or 'exclude' options are provided
exclude: [Confirmation],

@@ -381,8 +377,8 @@ })

```ts
import { getQuerier } from '@uql/client';
import { getRepository } from '@uql/client';
const querier = await getQuerier();
// 'Item' is an entity class
const querier = await getRepository(Item);
// 'Item' is an entity class
const lastItems = await querier.find(Item, {
const lastItems = await itemRepository.findMany({
sort: { createdAt: -1 },

@@ -389,0 +385,0 @@ limit: 100,

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc