@uql/mongo
Advanced tools
Comparing version 0.4.57 to 0.4.58
@@ -28,3 +28,3 @@ "use strict"; | ||
let documents; | ||
const hasProjectRelations = (0, querier_1.isProjectingRelations)(meta, qm.$project); | ||
const hasProjectRelations = (0, util_1.isProjectingRelations)(meta, qm.$project); | ||
if (hasProjectRelations) { | ||
@@ -72,3 +72,3 @@ const pipeline = this.dialect.aggregationPipeline(entity, qm); | ||
const payloads = Array.isArray(payload) ? payload : [payload]; | ||
const persistables = (0, querier_1.getPersistables)(meta, payload, 'onInsert'); | ||
const persistables = (0, util_1.getPersistables)(meta, payload, 'onInsert'); | ||
(0, core_1.log)('insertMany', entity.name, persistables); | ||
@@ -86,3 +86,3 @@ const { insertedIds } = await this.collection(entity).insertMany(persistables, { session: this.session }); | ||
const meta = (0, decorator_1.getMeta)(entity); | ||
const persistable = (0, querier_1.getPersistable)(meta, payload, 'onUpdate'); | ||
const persistable = (0, util_1.getPersistable)(meta, payload, 'onUpdate'); | ||
const filter = this.dialect.filter(entity, qm.$filter); | ||
@@ -169,2 +169,2 @@ const update = { $set: persistable }; | ||
exports.MongodbQuerier = MongodbQuerier; | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9uZ29kYlF1ZXJpZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvbW9uZ29kYlF1ZXJpZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQ0Esb0NBQTJDO0FBRTNDLCtDQUF3RztBQUN4RywwREFBcUQ7QUFDckQseUNBQWdEO0FBRWhELGlEQUE4QztBQUU5QyxNQUFhLGNBQWUsU0FBUSxxQkFBVztJQUc3QyxZQUFxQixJQUFpQixFQUFXLFVBQVUsSUFBSSwyQkFBWSxFQUFFO1FBQzNFLEtBQUssRUFBRSxDQUFDO1FBRFcsU0FBSSxHQUFKLElBQUksQ0FBYTtRQUFXLFlBQU8sR0FBUCxPQUFPLENBQXFCO0lBRTdFLENBQUM7SUFFUSxLQUFLLENBQUksTUFBZSxFQUFFLEtBQXFCLEVBQUU7UUFDeEQsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUN2RCxJQUFBLFVBQUcsRUFBQyxPQUFPLEVBQUUsTUFBTSxDQUFDLElBQUksRUFBRSxNQUFNLENBQUMsQ0FBQztRQUNsQyxPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFDLENBQUMsY0FBYyxDQUFDLE1BQU0sRUFBRTtZQUNwRCxPQUFPLEVBQUUsSUFBSSxDQUFDLE9BQU87U0FDdEIsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVRLFdBQVcsQ0FBSSxNQUFlLEVBQUUsRUFBYyxFQUFFLEVBQWU7UUFDdEUsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sRUFBRSxFQUFFLEdBQUcsRUFBRSxFQUFFLE9BQU8sRUFBRSxFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBQ3RELENBQUM7SUFFUSxLQUFLLENBQUMsUUFBUSxDQUFJLE1BQWUsRUFBRSxFQUFZO1FBQ3RELE1BQU0sSUFBSSxHQUFHLElBQUEsbUJBQU8sRUFBQyxNQUFNLENBQUMsQ0FBQztRQUU3QixJQUFJLFNBQWMs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QUFPLDBDQUFFLGFBQWEsRUFBRSxDQUFBLEVBQUU7WUFDbEMsTUFBTSxJQUFJLFNBQVMsQ0FBQywyQkFBMkIsQ0FBQyxDQUFDO1NBQ2xEO1FBQ0QsSUFBQSxVQUFHLEVBQUMscUJBQXFCLENBQUMsQ0FBQztRQUMzQixNQUFNLElBQUksQ0FBQyxPQUFPLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztJQUN4QyxDQUFDO0lBRVEsS0FBSyxDQUFDLE9BQU8sQ0FBQyxLQUFlOztRQUNwQyxJQUFJLE1BQUEsSUFBSSxDQUFDLE9BQU8sMENBQUUsYUFBYSxFQUFFLEVBQUU7WUFDakMsTUFBTSxJQUFJLFNBQVMsQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDO1NBQzVDO1FBQ0QsTUFBTSxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUMvQixDQUFDO0NBQ0Y7QUF6TEQsd0NBeUxDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTW9uZ29DbGllbnQsIENsaWVudFNlc3Npb24gfSBmcm9tICdtb25nb2RiJztcbmltcG9ydCB7IGlzTG9nZ2luZywgbG9nIH0gZnJvbSAnQHVxbC9jb3JlJztcbmltcG9ydCB7IFF1ZXJ5LCBRdWVyeU9uZSwgVHlwZSwgUXVlcnlDcml0ZXJpYSwgUXVlcnlPcHRpb25zLCBRdWVyeVNlYXJjaCwgSWRWYWx1ZSwgRmllbGRWYWx1ZSB9IGZyb20gJ0B1cWwvY29yZS90eXBlJztcbmltcG9ydCB7IEJhc2VRdWVyaWVyLCBnZXRQZXJzaXN0YWJsZSwgZ2V0UGVyc2lzdGFibGVzLCBpc1Byb2plY3RpbmdSZWxhdGlvbnMgfSBmcm9tICdAdXFsL2NvcmUvcXVlcmllcic7XG5pbXBvcnQgeyBnZXRNZXRhIH0gZnJvbSAnQHVxbC9jb3JlL2VudGl0eS9kZWNvcmF0b3InO1xuaW1wb3J0IHsgY2xvbmUsIGhhc0tleXMgfSBmcm9tICdAdXFsL2NvcmUvdXRpbCc7XG5cbmltcG9ydCB7IE1vbmdvRGlhbGVjdCB9IGZyb20gJy4vbW9uZ29EaWFsZWN0JztcblxuZXhwb3J0IGNsYXNzIE1vbmdvZGJRdWVyaWVyIGV4dGVuZHMgQmFzZVF1ZXJpZXIge1xuICBwcml2YXRlIHNlc3Npb246IENsaWVudFNlc3Npb247XG5cbiAgY29uc3RydWN0b3IocmVhZG9ubHkgY29ubjogTW9uZ29DbGllbnQsIHJlYWRvbmx5IGRpYWxlY3QgPSBuZXcgTW9uZ29EaWFsZWN0KCkpIHtcbiAgICBzdXBlcigpO1xuICB9XG5cbiAgb3ZlcnJpZGUgY291bnQ8RT4oZW50aXR5OiBUeXBlPEU+LCBxbTogUXVlcnlTZWFyY2g8RT4gPSB7fSkge1xuICAgIGNvbnN0IGZpbHRlciA9IHRoaXMuZGlhbGVjdC5maWx0ZXIoZW50aXR5LCBxbS4kZmlsdGVyKTtcbiAgICBsb2coJ2NvdW50JywgZW50aXR5Lm5hbWUsIGZpbHRlcik7XG4gICAgcmV0dXJuIHRoaXMuY29sbGVjdGlvbihlbnRpdHkpLmNvdW50RG9jdW1lbnRzKGZpbHRlciwge1xuICAgICAgc2Vzc2lvbjogdGhpcy5zZXNzaW9uLFxuICAgIH0pO1xuICB9XG5cbiAgb3ZlcnJpZGUgZmluZE9uZUJ5SWQ8RT4oZW50aXR5OiBUeXBlPEU+LCBpZDogSWRWYWx1ZTxFPiwgcW86IFF1ZXJ5T25lPEU+KSB7XG4gICAgcmV0dXJuIHRoaXMuZmluZE9uZShlbnRpdHksIHsgLi4ucW8sICRmaWx0ZXI6IGlkIH0pO1xuICB9XG5cbiAgb3ZlcnJpZGUgYXN5bmMgZmluZE1hbnk8RT4oZW50aXR5OiBUeXBlPEU+LCBxbTogUXVlcnk8RT4pIHtcbiAgICBjb25zdCBtZXRhID0gZ2V0TWV0YShlbnRpdHkpO1xuXG4gICAgbGV0IGRvY3VtZW50czogRVtdO1xuICAgIGNvbnN0IGhhc1Byb2plY3RSZWxhdGlvbnMgPSBpc1Byb2plY3RpbmdSZWxhdGlvbnMobWV0YSwgcW0uJHByb2plY3QpO1xuXG4gICAgaWYgKGhhc1Byb2plY3RSZWxhdGlvbnMpIHtcbiAgICAgIGNvbnN0IHBpcGVsaW5lID0gdGhpcy5kaWFsZWN0LmFnZ3JlZ2F0aW9uUGlwZWxpbmUoZW50aXR5LCBxbSk7XG4gICAgICBpZiAoaXNMb2dnaW5nKCkpIHtcbiAgICAgICAgbG9nKCdmaW5kTWFueScsIGVudGl0eS5uYW1lLCBKU09OLnN0cmluZ2lmeShwaXBlbGluZSwgbnVsbCwgMikpO1xuICAgICAgfVxuICAgICAgZG9jdW1lbnRzID0gYXdhaXQgdGhpcy5jb2xsZWN0aW9uKGVudGl0eSkuYWdncmVnYXRlPEU+KHBpcGVsaW5lLCB7IHNlc3Npb246IHRoaXMuc2Vzc2lvbiB9KS50b0FycmF5KCk7XG4gICAgICBkb2N1bWVudHMgPSB0aGlzLmRpYWxlY3Qubm9ybWFsaXplSWRzKG1ldGEsIGRvY3VtZW50cyk7XG4gICAgICBhd2FpdCB0aGlzLmZpbmRUb01hbnlSZWxhdGlvbnMoZW50aXR5LCBkb2N1bWVudHMsIHFtLiRwcm9qZWN0KTtcbiAgICB9IGVsc2Uge1xuICAgICAgY29uc3QgY3Vyc29yID0gdGhpcy5jb2xsZWN0aW9uKGVudGl0eSkuZmluZDxFPih7fSwgeyBzZXNzaW9uOiB0aGlzLnNlc3Npb24gfSk7XG5cbiAgICAgIGNvbnN0IGZpbHRlciA9IHRoaXMuZGlhbGVjdC5maWx0ZXIoZW50aXR5LCBxbS4kZmlsdGVyKTtcbiAgICAgIGlmIChoYXNLZXlzKGZpbHRlcikpIHtcbiAgICAgICAgY3Vyc29yLmZpbHRlcihmaWx0ZXIpO1xuICAgICAgfVxuICAgICAgY29uc3QgcHJvamVjdCA9IHRoaXMuZGlhbGVjdC5wcm9qZWN0KGVudGl0eSwgcW0uJHByb2plY3QpO1xuICAgICAgaWYgKGhhc0tleXMocHJvamVjdCkpIHtcbiAgICAgICAgY3Vyc29yLnByb2plY3QocHJvamVjdCk7XG4gICAgICB9XG4gICAgICBjb25zdCBzb3J0ID0gdGhpcy5kaWFsZWN0LnNvcnQoZW50aXR5LCBxbS4kc29ydCk7XG4gICAgICBpZiAoaGFzS2V5cyhzb3J0KSkge1xuICAgICAgICBjdXJzb3Iuc29ydChzb3J0KTtcbiAgICAgIH1cbiAgICAgIGlmIChxbS4kc2tpcCkge1xuICAgICAgICBjdXJzb3Iuc2tpcChxbS4kc2tpcCk7XG4gICAgICB9XG4gICAgICBpZiAocW0uJGxpbWl0KSB7XG4gICAgICAgIGN1cnNvci5saW1pdChxbS4kbGltaXQpO1xuICAgICAgfVxuXG4gICAgICBsb2coJ2ZpbmRNYW55JywgZW50aXR5Lm5hbWUsIHFtKTtcblxuICAgICAgZG9jdW1lbnRzID0gYXdhaXQgY3Vyc29yLnRvQXJyYXkoKTtcbiAgICAgIGRvY3VtZW50cyA9IHRoaXMuZGlhbGVjdC5ub3JtYWxpemVJZHMobWV0YSwgZG9jdW1lbnRzKTtcbiAgICB9XG5cbiAgICByZXR1cm4gZG9jdW1lbnRzO1xuICB9XG5cbiAgb3ZlcnJpZGUgYXN5bmMgaW5zZXJ0TWFueTxFPihlbnRpdHk6IFR5cGU8RT4sIHBheWxvYWQ6IEVbXSkge1xuICAgIGlmICghcGF5bG9hZC5sZW5ndGgpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBwYXlsb2FkID0gY2xvbmUocGF5bG9hZCk7XG5cbiAgICBjb25zdCBtZXRhID0gZ2V0TWV0YShlbnRpdHkpO1xuICAgIGNvbnN0IHBheWxvYWRzID0gQXJyYXkuaXNBcnJheShwYXlsb2FkKSA/IHBheWxvYWQgOiBbcGF5bG9hZF07XG4gICAgY29uc3QgcGVyc2lzdGFibGVzID0gZ2V0UGVyc2lzdGFibGVzKG1ldGEsIHBheWxvYWQsICdvbkluc2VydCcpO1xuXG4gICAgbG9nKCdpbnNlcnRNYW55JywgZW50aXR5Lm5hbWUsIHBlcnNpc3RhYmxlcyk7XG5cbiAgICBjb25zdCB7IGluc2VydGVkSWRzIH0gPSBhd2FpdCB0aGlzLmNvbGxlY3Rpb24oZW50aXR5KS5pbnNlcnRNYW55KHBlcnNpc3RhYmxlcywgeyBzZXNzaW9uOiB0aGlzLnNlc3Npb24gfSk7XG5cbiAgICBjb25zdCBpZHM6IElkVmFsdWU8RT5bXSA9IE9iamVjdC52YWx1ZXMoaW5zZXJ0ZWRJZHMpO1xuXG4gICAgZm9yIChjb25zdCBbaW5kZXgsIGl0XSBvZiBwYXlsb2Fkcy5lbnRyaWVzKCkpIHtcbiAgICAgIGl0W21ldGEuaWRdID0gaWRzW2luZGV4XSBhcyBGaWVsZFZhbHVlPEU+O1xuICAgIH1cblxuICAgIGF3YWl0IHRoaXMuaW5zZXJ0UmVsYXRpb25zKGVudGl0eSwgcGF5bG9hZHMpO1xuXG4gICAgcmV0dXJuIGlkcztcbiAgfVxuXG4gIG92ZXJyaWRlIGFzeW5jIHVwZGF0ZU1hbnk8RT4oZW50aXR5OiBUeXBlPEU+LCBxbTogUXVlcnlDcml0ZXJpYTxFPiwgcGF5bG9hZDogRSkge1xuICAgIHBheWxvYWQgPSBjbG9uZShwYXlsb2FkKTtcbiAgICBjb25zdCBtZXRhID0gZ2V0TWV0YShlbnRpdHkpO1xuICAgIGNvbnN0IHBlcnNpc3RhYmxlID0gZ2V0UGVyc2lzdGFibGUobWV0YSwgcGF5bG9hZCwgJ29uVXBkYXRlJyk7XG4gICAgY29uc3QgZmlsdGVyID0gdGhpcy5kaWFsZWN0LmZpbHRlcihlbnRpdHksIHFtLiRmaWx0ZXIpO1xuICAgIGNvbnN0IHVwZGF0ZSA9IHsgJHNldDogcGVyc2lzdGFibGUgfTtcblxuICAgIGxvZygndXBkYXRlTWFueScsIGVudGl0eS5uYW1lLCBmaWx0ZXIsIHVwZGF0ZSk7XG5cbiAgICBjb25zdCB7IG1hdGNoZWRDb3VudCB9ID0gYXdhaXQgdGhpcy5jb2xsZWN0aW9uKGVudGl0eSkudXBkYXRlTWFueShmaWx0ZXIsIHVwZGF0ZSwge1xuICAgICAgc2Vzc2lvbjogdGhpcy5zZXNzaW9uLFxuICAgIH0pO1xuXG4gICAgYXdhaXQgdGhpcy51cGRhdGVSZWxhdGlvbnMoZW50aXR5LCBxbSwgcGF5bG9hZCk7XG5cbiAgICByZXR1cm4gbWF0Y2hlZENvdW50O1xuICB9XG5cbiAgb3ZlcnJpZGUgYXN5bmMgZGVsZXRlTWFueTxFPihlbnRpdHk6IFR5cGU8RT4sIHFtOiBRdWVyeUNyaXRlcmlhPEU+LCBvcHRzOiBRdWVyeU9wdGlvbnMgPSB7fSkge1xuICAgIGNvbnN0IG1ldGEgPSBnZXRNZXRhKGVudGl0eSk7XG4gICAgY29uc3QgZmlsdGVyID0gdGhpcy5kaWFsZWN0LmZpbHRlcihlbnRpdHksIHFtLiRmaWx0ZXIpO1xuICAgIGxvZygnZGVsZXRlTWFueScsIGVudGl0eS5uYW1lLCBmaWx0ZXIsIG9wdHMpO1xuICAgIGNvbnN0IGZvdW5kczogRVtdID0gYXdhaXQgdGhpcy5jb2xsZWN0aW9uKGVudGl0eSlcbiAgICAgIC5maW5kKGZpbHRlciwge1xuICAgICAgICBwcm9qZWN0aW9uOiB7IF9pZDogdHJ1ZSB9LFxuICAgICAgICBzZXNzaW9uOiB0aGlzLnNlc3Npb24sXG4gICAgICB9KVxuICAgICAgLnRvQXJyYXkoKTtcbiAgICBpZiAoIWZvdW5kcy5sZW5ndGgpIHtcbiAgICAgIHJldHVybiAwO1xuICAgIH1cbiAgICBjb25zdCBpZHM6IElkVmFsdWU8RT5bXSA9IHRoaXMuZGlhbGVjdC5ub3JtYWxpemVJZHMobWV0YSwgZm91bmRzKS5tYXAoKGZvdW5kKSA9PiBmb3VuZFttZXRhLmlkXSk7XG4gICAgbGV0IGNoYW5nZXM6IG51bWJlcjtcbiAgICBpZiAobWV0YS5zb2Z0RGVsZXRlS2V5ICYmICFvcHRzLnNvZnREZWxldGUpIHtcbiAgICAgIGNvbnN0IHVwZGF0ZVJlc3VsdCA9IGF3YWl0IHRoaXMuY29sbGVjdGlvbihlbnRpdHkpLnVwZGF0ZU1hbnkoXG4gICAgICAgIHsgX2lkOiB7ICRpbjogaWRzIH0gfSxcbiAgICAgICAgeyAkc2V0OiB7IFttZXRhLnNvZnREZWxldGVLZXldOiBtZXRhLmZpZWxkc1ttZXRhLnNvZnREZWxldGVLZXldLm9uRGVsZXRlKCkgfSB9LFxuICAgICAgICB7XG4gICAgICAgICAgc2Vzc2lvbjogdGhpcy5zZXNzaW9uLFxuICAgICAgICB9XG4gICAgICApO1xuICAgICAgY2hhbmdlcyA9IHVwZGF0ZVJlc3VsdC5tYXRjaGVkQ291bnQ7XG4gICAgfSBlbHNlIHtcbiAgICAgIGNvbnN0IGRlbGV0ZVJlc3VsdCA9IGF3YWl0IHRoaXMuY29sbGVjdGlvbihlbnRpdHkpLmRlbGV0ZU1hbnkoXG4gICAgICAgIHsgX2lkOiB7ICRpbjogaWRzIH0gfSxcbiAgICAgICAge1xuICAgICAgICAgIHNlc3Npb246IHRoaXMuc2Vzc2lvbixcbiAgICAgICAgfVxuICAgICAgKTtcbiAgICAgIGNoYW5nZXMgPSBkZWxldGVSZXN1bHQuZGVsZXRlZENvdW50O1xuICAgIH1cbiAgICBhd2FpdCB0aGlzLmRlbGV0ZVJlbGF0aW9ucyhlbnRpdHksIGlkcywgb3B0cyk7XG4gICAgcmV0dXJuIGNoYW5nZXM7XG4gIH1cblxuICBvdmVycmlkZSBnZXQgaGFzT3BlblRyYW5zYWN0aW9uKCkge1xuICAgIHJldHVybiB0aGlzLnNlc3Npb24/LmluVHJhbnNhY3Rpb24oKTtcbiAgfVxuXG4gIGNvbGxlY3Rpb248RT4oZW50aXR5OiBUeXBlPEU+KSB7XG4gICAgY29uc3QgbWV0YSA9IGdldE1ldGEoZW50aXR5KTtcbiAgICByZXR1cm4gdGhpcy5jb25uLmRiKCkuY29sbGVjdGlvbihtZXRhLm5hbWUpO1xuICB9XG5cbiAgb3ZlcnJpZGUgYXN5bmMgYmVnaW5UcmFuc2FjdGlvbigpIHtcbiAgICBpZiAodGhpcy5zZXNzaW9uPy5pblRyYW5zYWN0aW9uKCkpIHtcbiAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoJ3BlbmRpbmcgdHJhbnNhY3Rpb24nKTtcbiAgICB9XG4gICAgbG9nKCdiZWdpblRyYW5zYWN0aW9uJyk7XG4gICAgdGhpcy5zZXNzaW9uID0gdGhpcy5jb25uLnN0YXJ0U2Vzc2lvbigpO1xuICAgIHRoaXMuc2Vzc2lvbi5zdGFydFRyYW5zYWN0aW9uKCk7XG4gIH1cblxuICBvdmVycmlkZSBhc3luYyBjb21taXRUcmFuc2FjdGlvbigpIHtcbiAgICBpZiAoIXRoaXMuc2Vzc2lvbj8uaW5UcmFuc2FjdGlvbigpKSB7XG4gICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKCdub3QgYSBwZW5kaW5nIHRyYW5zYWN0aW9uJyk7XG4gICAgfVxuICAgIGxvZygnY29tbWl0VHJhbnNhY3Rpb24nKTtcbiAgICBhd2FpdCB0aGlzLnNlc3Npb24uY29tbWl0VHJhbnNhY3Rpb24oKTtcbiAgfVxuXG4gIG92ZXJyaWRlIGFzeW5jIHJvbGxiYWNrVHJhbnNhY3Rpb24oKSB7XG4gICAgaWYgKCF0aGlzLnNlc3Npb24/LmluVHJhbnNhY3Rpb24oKSkge1xuICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcignbm90IGEgcGVuZGluZyB0cmFuc2FjdGlvbicpO1xuICAgIH1cbiAgICBsb2coJ3JvbGxiYWNrVHJhbnNhY3Rpb24nKTtcbiAgICBhd2FpdCB0aGlzLnNlc3Npb24uYWJvcnRUcmFuc2FjdGlvbigpO1xuICB9XG5cbiAgb3ZlcnJpZGUgYXN5bmMgcmVsZWFzZShmb3JjZT86IGJvb2xlYW4pIHtcbiAgICBpZiAodGhpcy5zZXNzaW9uPy5pblRyYW5zYWN0aW9uKCkpIHtcbiAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoJ3BlbmRpbmcgdHJhbnNhY3Rpb24nKTtcbiAgICB9XG4gICAgYXdhaXQgdGhpcy5jb25uLmNsb3NlKGZvcmNlKTtcbiAgfVxufVxuIl19 | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9uZ29kYlF1ZXJpZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvbW9uZ29kYlF1ZXJpZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQ0Esb0NBQTJDO0FBRTNDLCtDQUFnRDtBQUNoRCwwREFBcUQ7QUFDckQseUNBQXdHO0FBRXhHLGlEQUE4QztBQUU5QyxNQUFhLGNBQWUsU0FBUSxxQkFBVztJQUc3QyxZQUFxQixJQUFpQixFQUFXLFVBQVUsSUFBSSwyQkFBWSxFQUFFO1FBQzNFLEtBQUssRUFBRSxDQUFDO1FBRFcsU0FBSSxHQUFKLElBQUksQ0FBYTtRQUFXLFlBQU8sR0FBUCxPQUFPLENBQXFCO0lBRTdFLENBQUM7SUFFUSxLQUFLLENBQUksTUFBZSxFQUFFLEtBQXFCLEVBQUU7UUFDeEQsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUN2RCxJQUFBLFVBQUcsRUFBQyxPQUFPLEVBQUUsTUFBTSxDQUFDLElBQUksRUFBRSxNQUFNLENBQUMsQ0FBQztRQUNsQyxPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFDLENBQUMsY0FBYyxDQUFDLE1BQU0sRUFBRTtZQUNwRCxPQUFPLEVBQUUsSUFBSSxDQUFDLE9BQU87U0FDdEIsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVRLFdBQVcsQ0FBSSxNQUFlLEVBQUUsRUFBYyxFQUFFLEVBQWU7UUFDdEUsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sRUFBRSxFQUFFLEdBQUcsRUFBRSxFQUFFLE9BQU8sRUFBRSxFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBQ3RELENBQUM7SUFFUSxLQUFLLENBQUMsUUFBUSxDQUFJLE1BQWUsRUFBRSxFQUFZO1FBQ3RELE1BQU0sSUFBSSxHQUFHLElBQUEsbUJBQU8sRUFBQyxNQUFNLENBQUMsQ0FBQztRQUU3QixJQUFJLFNBQWMs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QUFPLDBDQUFFLGFBQWEsRUFBRSxDQUFBLEVBQUU7WUFDbEMsTUFBTSxJQUFJLFNBQVMsQ0FBQywyQkFBMkIsQ0FBQyxDQUFDO1NBQ2xEO1FBQ0QsSUFBQSxVQUFHLEVBQUMscUJBQXFCLENBQUMsQ0FBQztRQUMzQixNQUFNLElBQUksQ0FBQyxPQUFPLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztJQUN4QyxDQUFDO0lBRVEsS0FBSyxDQUFDLE9BQU8sQ0FBQyxLQUFlOztRQUNwQyxJQUFJLE1BQUEsSUFBSSxDQUFDLE9BQU8sMENBQUUsYUFBYSxFQUFFLEVBQUU7WUFDakMsTUFBTSxJQUFJLFNBQVMsQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDO1NBQzVDO1FBQ0QsTUFBTSxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUMvQixDQUFDO0NBQ0Y7QUF6TEQsd0NBeUxDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTW9uZ29DbGllbnQsIENsaWVudFNlc3Npb24gfSBmcm9tICdtb25nb2RiJztcbmltcG9ydCB7IGlzTG9nZ2luZywgbG9nIH0gZnJvbSAnQHVxbC9jb3JlJztcbmltcG9ydCB7IFF1ZXJ5LCBRdWVyeU9uZSwgVHlwZSwgUXVlcnlDcml0ZXJpYSwgUXVlcnlPcHRpb25zLCBRdWVyeVNlYXJjaCwgSWRWYWx1ZSwgRmllbGRWYWx1ZSB9IGZyb20gJ0B1cWwvY29yZS90eXBlJztcbmltcG9ydCB7IEJhc2VRdWVyaWVyIH0gZnJvbSAnQHVxbC9jb3JlL3F1ZXJpZXInO1xuaW1wb3J0IHsgZ2V0TWV0YSB9IGZyb20gJ0B1cWwvY29yZS9lbnRpdHkvZGVjb3JhdG9yJztcbmltcG9ydCB7IGNsb25lLCBnZXRQZXJzaXN0YWJsZSwgZ2V0UGVyc2lzdGFibGVzLCBoYXNLZXlzLCBpc1Byb2plY3RpbmdSZWxhdGlvbnMgfSBmcm9tICdAdXFsL2NvcmUvdXRpbCc7XG5cbmltcG9ydCB7IE1vbmdvRGlhbGVjdCB9IGZyb20gJy4vbW9uZ29EaWFsZWN0JztcblxuZXhwb3J0IGNsYXNzIE1vbmdvZGJRdWVyaWVyIGV4dGVuZHMgQmFzZVF1ZXJpZXIge1xuICBwcml2YXRlIHNlc3Npb246IENsaWVudFNlc3Npb247XG5cbiAgY29uc3RydWN0b3IocmVhZG9ubHkgY29ubjogTW9uZ29DbGllbnQsIHJlYWRvbmx5IGRpYWxlY3QgPSBuZXcgTW9uZ29EaWFsZWN0KCkpIHtcbiAgICBzdXBlcigpO1xuICB9XG5cbiAgb3ZlcnJpZGUgY291bnQ8RT4oZW50aXR5OiBUeXBlPEU+LCBxbTogUXVlcnlTZWFyY2g8RT4gPSB7fSkge1xuICAgIGNvbnN0IGZpbHRlciA9IHRoaXMuZGlhbGVjdC5maWx0ZXIoZW50aXR5LCBxbS4kZmlsdGVyKTtcbiAgICBsb2coJ2NvdW50JywgZW50aXR5Lm5hbWUsIGZpbHRlcik7XG4gICAgcmV0dXJuIHRoaXMuY29sbGVjdGlvbihlbnRpdHkpLmNvdW50RG9jdW1lbnRzKGZpbHRlciwge1xuICAgICAgc2Vzc2lvbjogdGhpcy5zZXNzaW9uLFxuICAgIH0pO1xuICB9XG5cbiAgb3ZlcnJpZGUgZmluZE9uZUJ5SWQ8RT4oZW50aXR5OiBUeXBlPEU+LCBpZDogSWRWYWx1ZTxFPiwgcW86IFF1ZXJ5T25lPEU+KSB7XG4gICAgcmV0dXJuIHRoaXMuZmluZE9uZShlbnRpdHksIHsgLi4ucW8sICRmaWx0ZXI6IGlkIH0pO1xuICB9XG5cbiAgb3ZlcnJpZGUgYXN5bmMgZmluZE1hbnk8RT4oZW50aXR5OiBUeXBlPEU+LCBxbTogUXVlcnk8RT4pIHtcbiAgICBjb25zdCBtZXRhID0gZ2V0TWV0YShlbnRpdHkpO1xuXG4gICAgbGV0IGRvY3VtZW50czogRVtdO1xuICAgIGNvbnN0IGhhc1Byb2plY3RSZWxhdGlvbnMgPSBpc1Byb2plY3RpbmdSZWxhdGlvbnMobWV0YSwgcW0uJHByb2plY3QpO1xuXG4gICAgaWYgKGhhc1Byb2plY3RSZWxhdGlvbnMpIHtcbiAgICAgIGNvbnN0IHBpcGVsaW5lID0gdGhpcy5kaWFsZWN0LmFnZ3JlZ2F0aW9uUGlwZWxpbmUoZW50aXR5LCBxbSk7XG4gICAgICBpZiAoaXNMb2dnaW5nKCkpIHtcbiAgICAgICAgbG9nKCdmaW5kTWFueScsIGVudGl0eS5uYW1lLCBKU09OLnN0cmluZ2lmeShwaXBlbGluZSwgbnVsbCwgMikpO1xuICAgICAgfVxuICAgICAgZG9jdW1lbnRzID0gYXdhaXQgdGhpcy5jb2xsZWN0aW9uKGVudGl0eSkuYWdncmVnYXRlPEU+KHBpcGVsaW5lLCB7IHNlc3Npb246IHRoaXMuc2Vzc2lvbiB9KS50b0FycmF5KCk7XG4gICAgICBkb2N1bWVudHMgPSB0aGlzLmRpYWxlY3Qubm9ybWFsaXplSWRzKG1ldGEsIGRvY3VtZW50cyk7XG4gICAgICBhd2FpdCB0aGlzLmZpbmRUb01hbnlSZWxhdGlvbnMoZW50aXR5LCBkb2N1bWVudHMsIHFtLiRwcm9qZWN0KTtcbiAgICB9IGVsc2Uge1xuICAgICAgY29uc3QgY3Vyc29yID0gdGhpcy5jb2xsZWN0aW9uKGVudGl0eSkuZmluZDxFPih7fSwgeyBzZXNzaW9uOiB0aGlzLnNlc3Npb24gfSk7XG5cbiAgICAgIGNvbnN0IGZpbHRlciA9IHRoaXMuZGlhbGVjdC5maWx0ZXIoZW50aXR5LCBxbS4kZmlsdGVyKTtcbiAgICAgIGlmIChoYXNLZXlzKGZpbHRlcikpIHtcbiAgICAgICAgY3Vyc29yLmZpbHRlcihmaWx0ZXIpO1xuICAgICAgfVxuICAgICAgY29uc3QgcHJvamVjdCA9IHRoaXMuZGlhbGVjdC5wcm9qZWN0KGVudGl0eSwgcW0uJHByb2plY3QpO1xuICAgICAgaWYgKGhhc0tleXMocHJvamVjdCkpIHtcbiAgICAgICAgY3Vyc29yLnByb2plY3QocHJvamVjdCk7XG4gICAgICB9XG4gICAgICBjb25zdCBzb3J0ID0gdGhpcy5kaWFsZWN0LnNvcnQoZW50aXR5LCBxbS4kc29ydCk7XG4gICAgICBpZiAoaGFzS2V5cyhzb3J0KSkge1xuICAgICAgICBjdXJzb3Iuc29ydChzb3J0KTtcbiAgICAgIH1cbiAgICAgIGlmIChxbS4kc2tpcCkge1xuICAgICAgICBjdXJzb3Iuc2tpcChxbS4kc2tpcCk7XG4gICAgICB9XG4gICAgICBpZiAocW0uJGxpbWl0KSB7XG4gICAgICAgIGN1cnNvci5saW1pdChxbS4kbGltaXQpO1xuICAgICAgfVxuXG4gICAgICBsb2coJ2ZpbmRNYW55JywgZW50aXR5Lm5hbWUsIHFtKTtcblxuICAgICAgZG9jdW1lbnRzID0gYXdhaXQgY3Vyc29yLnRvQXJyYXkoKTtcbiAgICAgIGRvY3VtZW50cyA9IHRoaXMuZGlhbGVjdC5ub3JtYWxpemVJZHMobWV0YSwgZG9jdW1lbnRzKTtcbiAgICB9XG5cbiAgICByZXR1cm4gZG9jdW1lbnRzO1xuICB9XG5cbiAgb3ZlcnJpZGUgYXN5bmMgaW5zZXJ0TWFueTxFPihlbnRpdHk6IFR5cGU8RT4sIHBheWxvYWQ6IEVbXSkge1xuICAgIGlmICghcGF5bG9hZC5sZW5ndGgpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBwYXlsb2FkID0gY2xvbmUocGF5bG9hZCk7XG5cbiAgICBjb25zdCBtZXRhID0gZ2V0TWV0YShlbnRpdHkpO1xuICAgIGNvbnN0IHBheWxvYWRzID0gQXJyYXkuaXNBcnJheShwYXlsb2FkKSA/IHBheWxvYWQgOiBbcGF5bG9hZF07XG4gICAgY29uc3QgcGVyc2lzdGFibGVzID0gZ2V0UGVyc2lzdGFibGVzKG1ldGEsIHBheWxvYWQsICdvbkluc2VydCcpO1xuXG4gICAgbG9nKCdpbnNlcnRNYW55JywgZW50aXR5Lm5hbWUsIHBlcnNpc3RhYmxlcyk7XG5cbiAgICBjb25zdCB7IGluc2VydGVkSWRzIH0gPSBhd2FpdCB0aGlzLmNvbGxlY3Rpb24oZW50aXR5KS5pbnNlcnRNYW55KHBlcnNpc3RhYmxlcywgeyBzZXNzaW9uOiB0aGlzLnNlc3Npb24gfSk7XG5cbiAgICBjb25zdCBpZHM6IElkVmFsdWU8RT5bXSA9IE9iamVjdC52YWx1ZXMoaW5zZXJ0ZWRJZHMpO1xuXG4gICAgZm9yIChjb25zdCBbaW5kZXgsIGl0XSBvZiBwYXlsb2Fkcy5lbnRyaWVzKCkpIHtcbiAgICAgIGl0W21ldGEuaWRdID0gaWRzW2luZGV4XSBhcyBGaWVsZFZhbHVlPEU+O1xuICAgIH1cblxuICAgIGF3YWl0IHRoaXMuaW5zZXJ0UmVsYXRpb25zKGVudGl0eSwgcGF5bG9hZHMpO1xuXG4gICAgcmV0dXJuIGlkcztcbiAgfVxuXG4gIG92ZXJyaWRlIGFzeW5jIHVwZGF0ZU1hbnk8RT4oZW50aXR5OiBUeXBlPEU+LCBxbTogUXVlcnlDcml0ZXJpYTxFPiwgcGF5bG9hZDogRSkge1xuICAgIHBheWxvYWQgPSBjbG9uZShwYXlsb2FkKTtcbiAgICBjb25zdCBtZXRhID0gZ2V0TWV0YShlbnRpdHkpO1xuICAgIGNvbnN0IHBlcnNpc3RhYmxlID0gZ2V0UGVyc2lzdGFibGUobWV0YSwgcGF5bG9hZCwgJ29uVXBkYXRlJyk7XG4gICAgY29uc3QgZmlsdGVyID0gdGhpcy5kaWFsZWN0LmZpbHRlcihlbnRpdHksIHFtLiRmaWx0ZXIpO1xuICAgIGNvbnN0IHVwZGF0ZSA9IHsgJHNldDogcGVyc2lzdGFibGUgfTtcblxuICAgIGxvZygndXBkYXRlTWFueScsIGVudGl0eS5uYW1lLCBmaWx0ZXIsIHVwZGF0ZSk7XG5cbiAgICBjb25zdCB7IG1hdGNoZWRDb3VudCB9ID0gYXdhaXQgdGhpcy5jb2xsZWN0aW9uKGVudGl0eSkudXBkYXRlTWFueShmaWx0ZXIsIHVwZGF0ZSwge1xuICAgICAgc2Vzc2lvbjogdGhpcy5zZXNzaW9uLFxuICAgIH0pO1xuXG4gICAgYXdhaXQgdGhpcy51cGRhdGVSZWxhdGlvbnMoZW50aXR5LCBxbSwgcGF5bG9hZCk7XG5cbiAgICByZXR1cm4gbWF0Y2hlZENvdW50O1xuICB9XG5cbiAgb3ZlcnJpZGUgYXN5bmMgZGVsZXRlTWFueTxFPihlbnRpdHk6IFR5cGU8RT4sIHFtOiBRdWVyeUNyaXRlcmlhPEU+LCBvcHRzOiBRdWVyeU9wdGlvbnMgPSB7fSkge1xuICAgIGNvbnN0IG1ldGEgPSBnZXRNZXRhKGVudGl0eSk7XG4gICAgY29uc3QgZmlsdGVyID0gdGhpcy5kaWFsZWN0LmZpbHRlcihlbnRpdHksIHFtLiRmaWx0ZXIpO1xuICAgIGxvZygnZGVsZXRlTWFueScsIGVudGl0eS5uYW1lLCBmaWx0ZXIsIG9wdHMpO1xuICAgIGNvbnN0IGZvdW5kczogRVtdID0gYXdhaXQgdGhpcy5jb2xsZWN0aW9uKGVudGl0eSlcbiAgICAgIC5maW5kKGZpbHRlciwge1xuICAgICAgICBwcm9qZWN0aW9uOiB7IF9pZDogdHJ1ZSB9LFxuICAgICAgICBzZXNzaW9uOiB0aGlzLnNlc3Npb24sXG4gICAgICB9KVxuICAgICAgLnRvQXJyYXkoKTtcbiAgICBpZiAoIWZvdW5kcy5sZW5ndGgpIHtcbiAgICAgIHJldHVybiAwO1xuICAgIH1cbiAgICBjb25zdCBpZHM6IElkVmFsdWU8RT5bXSA9IHRoaXMuZGlhbGVjdC5ub3JtYWxpemVJZHMobWV0YSwgZm91bmRzKS5tYXAoKGZvdW5kKSA9PiBmb3VuZFttZXRhLmlkXSk7XG4gICAgbGV0IGNoYW5nZXM6IG51bWJlcjtcbiAgICBpZiAobWV0YS5zb2Z0RGVsZXRlS2V5ICYmICFvcHRzLnNvZnREZWxldGUpIHtcbiAgICAgIGNvbnN0IHVwZGF0ZVJlc3VsdCA9IGF3YWl0IHRoaXMuY29sbGVjdGlvbihlbnRpdHkpLnVwZGF0ZU1hbnkoXG4gICAgICAgIHsgX2lkOiB7ICRpbjogaWRzIH0gfSxcbiAgICAgICAgeyAkc2V0OiB7IFttZXRhLnNvZnREZWxldGVLZXldOiBtZXRhLmZpZWxkc1ttZXRhLnNvZnREZWxldGVLZXldLm9uRGVsZXRlKCkgfSB9LFxuICAgICAgICB7XG4gICAgICAgICAgc2Vzc2lvbjogdGhpcy5zZXNzaW9uLFxuICAgICAgICB9XG4gICAgICApO1xuICAgICAgY2hhbmdlcyA9IHVwZGF0ZVJlc3VsdC5tYXRjaGVkQ291bnQ7XG4gICAgfSBlbHNlIHtcbiAgICAgIGNvbnN0IGRlbGV0ZVJlc3VsdCA9IGF3YWl0IHRoaXMuY29sbGVjdGlvbihlbnRpdHkpLmRlbGV0ZU1hbnkoXG4gICAgICAgIHsgX2lkOiB7ICRpbjogaWRzIH0gfSxcbiAgICAgICAge1xuICAgICAgICAgIHNlc3Npb246IHRoaXMuc2Vzc2lvbixcbiAgICAgICAgfVxuICAgICAgKTtcbiAgICAgIGNoYW5nZXMgPSBkZWxldGVSZXN1bHQuZGVsZXRlZENvdW50O1xuICAgIH1cbiAgICBhd2FpdCB0aGlzLmRlbGV0ZVJlbGF0aW9ucyhlbnRpdHksIGlkcywgb3B0cyk7XG4gICAgcmV0dXJuIGNoYW5nZXM7XG4gIH1cblxuICBvdmVycmlkZSBnZXQgaGFzT3BlblRyYW5zYWN0aW9uKCkge1xuICAgIHJldHVybiB0aGlzLnNlc3Npb24/LmluVHJhbnNhY3Rpb24oKTtcbiAgfVxuXG4gIGNvbGxlY3Rpb248RT4oZW50aXR5OiBUeXBlPEU+KSB7XG4gICAgY29uc3QgbWV0YSA9IGdldE1ldGEoZW50aXR5KTtcbiAgICByZXR1cm4gdGhpcy5jb25uLmRiKCkuY29sbGVjdGlvbihtZXRhLm5hbWUpO1xuICB9XG5cbiAgb3ZlcnJpZGUgYXN5bmMgYmVnaW5UcmFuc2FjdGlvbigpIHtcbiAgICBpZiAodGhpcy5zZXNzaW9uPy5pblRyYW5zYWN0aW9uKCkpIHtcbiAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoJ3BlbmRpbmcgdHJhbnNhY3Rpb24nKTtcbiAgICB9XG4gICAgbG9nKCdiZWdpblRyYW5zYWN0aW9uJyk7XG4gICAgdGhpcy5zZXNzaW9uID0gdGhpcy5jb25uLnN0YXJ0U2Vzc2lvbigpO1xuICAgIHRoaXMuc2Vzc2lvbi5zdGFydFRyYW5zYWN0aW9uKCk7XG4gIH1cblxuICBvdmVycmlkZSBhc3luYyBjb21taXRUcmFuc2FjdGlvbigpIHtcbiAgICBpZiAoIXRoaXMuc2Vzc2lvbj8uaW5UcmFuc2FjdGlvbigpKSB7XG4gICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKCdub3QgYSBwZW5kaW5nIHRyYW5zYWN0aW9uJyk7XG4gICAgfVxuICAgIGxvZygnY29tbWl0VHJhbnNhY3Rpb24nKTtcbiAgICBhd2FpdCB0aGlzLnNlc3Npb24uY29tbWl0VHJhbnNhY3Rpb24oKTtcbiAgfVxuXG4gIG92ZXJyaWRlIGFzeW5jIHJvbGxiYWNrVHJhbnNhY3Rpb24oKSB7XG4gICAgaWYgKCF0aGlzLnNlc3Npb24/LmluVHJhbnNhY3Rpb24oKSkge1xuICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcignbm90IGEgcGVuZGluZyB0cmFuc2FjdGlvbicpO1xuICAgIH1cbiAgICBsb2coJ3JvbGxiYWNrVHJhbnNhY3Rpb24nKTtcbiAgICBhd2FpdCB0aGlzLnNlc3Npb24uYWJvcnRUcmFuc2FjdGlvbigpO1xuICB9XG5cbiAgb3ZlcnJpZGUgYXN5bmMgcmVsZWFzZShmb3JjZT86IGJvb2xlYW4pIHtcbiAgICBpZiAodGhpcy5zZXNzaW9uPy5pblRyYW5zYWN0aW9uKCkpIHtcbiAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoJ3BlbmRpbmcgdHJhbnNhY3Rpb24nKTtcbiAgICB9XG4gICAgYXdhaXQgdGhpcy5jb25uLmNsb3NlKGZvcmNlKTtcbiAgfVxufVxuIl19 |
@@ -7,3 +7,2 @@ "use strict"; | ||
const util_1 = require("@uql/core/util"); | ||
const querier_1 = require("@uql/core/querier"); | ||
class MongoDialect { | ||
@@ -67,3 +66,3 @@ filter(entity, filter = {}, { softDelete } = {}) { | ||
} | ||
const relations = (0, querier_1.getProjectRelationKeys)(meta, qm.$project); | ||
const relations = (0, util_1.getProjectRelationKeys)(meta, qm.$project); | ||
for (const relKey of relations) { | ||
@@ -138,2 +137,2 @@ const relOpts = meta.relations[relKey]; | ||
exports.MongoDialect = MongoDialect; | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9uZ29EaWFsZWN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL21vbmdvRGlhbGVjdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxxQ0FBa0U7QUFhbEUsMERBQXFEO0FBQ3JELHlDQUFnRTtBQUNoRSwrQ0FBMkQ7QUFFM0QsTUFBYSxZQUFZO0lBQ3ZCLE1BQU0sQ0FBSSxNQUFlLEVBQUUsU0FBeUIsRUFBRSxFQUFFLEVBQUUsVUFBVSxLQUFtQixFQUFFO1FBQ3ZGLE1BQU0sSUFBSSxHQUFHLElBQUEsbUJBQU8sRUFBQyxNQUFNLENBQUMsQ0FBQztRQUU3QixJQUFJLE9BQU8sTUFBTSxLQUFLLFFBQVEsSUFBSSxLQUFLLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxJQUFJLE1BQU0sWUFBWSxrQkFBUSxJQUFJLGtCQUFRLENBQUMsT0FBTyxDQUFDLE1BQWdCLENBQUMsRUFBRTtZQUMzSCxNQUFNLEdBQUc7Z0JBQ1AsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLEVBQUUsTUFBTTthQUNsQixDQUFDO1NBQ0g7UUFFRCxJQUFJLElBQUksQ0FBQyxhQUFhLElBQUksQ0FBQyxVQUFVLElBQUksVUFBVSxLQUFLLFNBQVMsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxhQUF1QixDQUFDLEVBQUU7WUFDM0csTUFBTSxDQUFDLElBQUksQ0FBQyxhQUF1QixDQUFDLEdBQUcsSUFBSSxDQUFDO1NBQzdDO1FBRUQsT0FBTyxJQUFBLGNBQU8sRUFBQyxNQUFNLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxHQUFHLEVBQUUsR0FBRyxFQUFFLEVBQUU7WUFDekMsSUFBSSxLQUFLLEdBQUcsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1lBQ3hCLElBQUksR0FBRyxLQUFLLE1BQU0sSUFBSSxHQUFHLEtBQUssS0FBSyxFQUFFO2dCQUNuQyxHQUFHLENBQUMsR0FBRyxDQUFDLEdBQUcsS0FBSyxDQUFDLEdBQUcsQ0FBQyxD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QyxDQUFDLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxPQUFPLEVBQUUsR0FBRyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUM7U0FDN0g7UUFFRCxPQUFPLEdBQVEsQ0FBQztJQUNsQixDQUFDO0lBRUQsVUFBVSxDQUFzRCxLQUFRO1FBQ3RFLElBQUksS0FBSyxZQUFZLGtCQUFRLEVBQUU7WUFDN0IsT0FBTyxLQUFLLENBQUM7U0FDZDtRQUNELElBQUksS0FBSyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsRUFBRTtZQUN4QixPQUFPLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxFQUFFLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsRUFBRSxDQUFDLENBQU0sQ0FBQztTQUNwRDtRQUNELE9BQU8sSUFBSSxrQkFBUSxDQUFDLEtBQUssQ0FBTSxDQUFDO0lBQ2xDLENBQUM7Q0FDRjtBQXBKRCxvQ0FvSkMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBGaWx0ZXJRdWVyeSwgT2JqZWN0SWQsIFNvcnRPcHRpb25PYmplY3QgfSBmcm9tICdtb25nb2RiJztcbmltcG9ydCB7XG4gIFF1ZXJ5RmlsdGVyLFxuICBRdWVyeSxcbiAgRW50aXR5TWV0YSxcbiAgVHlwZSxcbiAgUXVlcnlQcm9qZWN0LFxuICBRdWVyeVByb2plY3RNYXAsXG4gIFF1ZXJ5T3B0aW9ucyxcbiAgUXVlcnlTb3J0LFxuICBGaWVsZFZhbHVlLFxuICBSZWxhdGlvbktleSxcbn0gZnJvbSAnQHVxbC9jb3JlL3R5cGUnO1xuaW1wb3J0IHsgZ2V0TWV0YSB9IGZyb20gJ0B1cWwvY29yZS9lbnRpdHkvZGVjb3JhdG9yJztcbmltcG9ydCB7IGdldEtleXMsIGhhc0tleXMsIGJ1aWxkU29ydE1hcCB9IGZyb20gJ0B1cWwvY29yZS91dGlsJztcbmltcG9ydCB7IGdldFByb2plY3RSZWxhdGlvbktleXMgfSBmcm9tICdAdXFsL2NvcmUvcXVlcmllcic7XG5cbmV4cG9ydCBjbGFzcyBNb25nb0RpYWxlY3Qge1xuICBmaWx0ZXI8RT4oZW50aXR5OiBUeXBlPEU+LCBmaWx0ZXI6IFF1ZXJ5RmlsdGVyPEU+ID0ge30sIHsgc29mdERlbGV0ZSB9OiBRdWVyeU9wdGlvbnMgPSB7fSk6IEZpbHRlclF1ZXJ5PEU+IHtcbiAgICBjb25zdCBtZXRhID0gZ2V0TWV0YShlbnRpdHkpO1xuXG4gICAgaWYgKHR5cGVvZiBmaWx0ZXIgIT09ICdvYmplY3QnIHx8IEFycmF5LmlzQXJyYXkoZmlsdGVyKSB8fCBmaWx0ZXIgaW5zdGFuY2VvZiBPYmplY3RJZCB8fCBPYmplY3RJZC5pc1ZhbGlkKGZpbHRlciBhcyBzdHJpbmcpKSB7XG4gICAgICBmaWx0ZXIgPSB7XG4gICAgICAgIFttZXRhLmlkXTogZmlsdGVyLFxuICAgICAgfTtcbiAgICB9XG5cbiAgICBpZiAobWV0YS5zb2Z0RGVsZXRlS2V5ICYmIChzb2Z0RGVsZXRlIHx8IHNvZnREZWxldGUgPT09IHVuZGVmaW5lZCkgJiYgIWZpbHRlclttZXRhLnNvZnREZWxldGVLZXkgYXMgc3RyaW5nXSkge1xuICAgICAgZmlsdGVyW21ldGEuc29mdERlbGV0ZUtleSBhcyBzdHJpbmddID0gbnVsbDtcbiAgICB9XG5cbiAgICByZXR1cm4gZ2V0S2V5cyhmaWx0ZXIpLnJlZHVjZSgoYWNjLCBrZXkpID0+IHtcbiAgICAgIGxldCB2YWx1ZSA9IGZpbHRlcltrZXldO1xuICAgICAgaWYgKGtleSA9PT0gJyRhbmQnIHx8IGtleSA9PT0gJyRvcicpIHtcbiAgICAgICAgYWNjW2tleV0gPSB2YWx1ZS5tYXAoKGZpbHRlckl0OiBRdWVyeUZpbHRlcjxFPikgPT4gdGhpcy5maWx0ZXIoZW50aXR5LCBmaWx0ZXJJdCkpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgaWYgKGtleSA9PT0gJ19pZCcgfHwga2V5ID09PSBtZXRhLmlkKSB7XG4gICAgICAgICAga2V5ID0gJ19pZCc7XG4gICAgICAgICAgdmFsdWUgPSB0aGlzLmdldElkVmFsdWUodmFsdWUpO1xuICAgICAgICB9IGVsc2UgaWYgKEFycmF5LmlzQXJyYXkodmFsdWUpKSB7XG4gICAgICAgICAgdmFsdWUgPSB7XG4gICAgICAgICAgICAkaW46IHZhbHVlLFxuICAgICAgICAgIH07XG4gICAgICAgIH1cbiAgICAgICAgYWNjW2tleSBhcyBrZXlvZiBGaWx0ZXJRdWVyeTxFPl0gPSB2YWx1ZTtcbiAgICAgIH1cbiAgICAgIHJldHVybiBhY2M7XG4gICAgfSwge30gYXMgRmlsdGVyUXVlcnk8RT4pO1xuICB9XG5cbiAgcHJvamVjdDxFPihlbnRpdHk6IFR5cGU8RT4sIHByb2plY3Q6IFF1ZXJ5UHJvamVjdDxFPik6IFF1ZXJ5UHJvamVjdE1hcDxFPiB7XG4gICAgaWYgKEFycmF5LmlzQXJyYXkocHJvamVjdCkpIHtcbiAgICAgIHJldHVybiBwcm9qZWN0LnJlZHVjZSgoYWNjLCBpdCkgPT4ge1xuICAgICAgICBhY2NbaXQgYXMgc3RyaW5nXSA9IHRydWU7XG4gICAgICAgIHJldHVybiBhY2M7XG4gICAgICB9LCB7fSBhcyBRdWVyeVByb2plY3RNYXA8RT4pO1xuICAgIH1cbiAgICByZXR1cm4gcHJvamVjdCBhcyBRdWVyeVByb2plY3RNYXA8RT47XG4gIH1cblxuICBzb3J0PEU+KGVudGl0eTogVHlwZTxFPiwgc29ydDogUXVlcnlTb3J0PEU+KTogTW9uZ29Tb3J0PEU+IHtcbiAgICByZXR1cm4gYnVpbGRTb3J0TWFwKHNvcnQpIGFzIE1vbmdvU29ydDxFPjtcbiAgfVxuXG4gIGFnZ3JlZ2F0aW9uUGlwZWxpbmU8RT4oZW50aXR5OiBUeXBlPEU+LCBxbTogUXVlcnk8RT4pOiBNb25nb0FnZ3JlZ2F0aW9uUGlwZWxpbmVFbnRyeTxFPltdIHtcbiAgICBjb25zdCBtZXRhID0gZ2V0TWV0YShlbnRpdHkpO1xuXG4gICAgY29uc3QgZmlsdGVyID0gdGhpcy5maWx0ZXIoZW50aXR5LCBxbS4kZmlsdGVyKTtcbiAgICBjb25zdCBzb3J0ID0gdGhpcy5zb3J0KGVudGl0eSwgcW0uJHNvcnQpO1xuICAgIGNvbnN0IGZpcnN0UGlwZWxpbmVFbnRyeTogTW9uZ29BZ2dyZWdhdGlvblBpcGVsaW5lRW50cnk8RT4gPSB7fTtcblxuICAgIGlmIChoYXNLZXlzKGZpbHRlcikpIHtcbiAgICAgIGZpcnN0UGlwZWxpbmVFbnRyeS4kbWF0Y2ggPSBmaWx0ZXI7XG4gICAgfVxuICAgIGlmIChoYXNLZXlzKHNvcnQpKSB7XG4gICAgICBmaXJzdFBpcGVsaW5lRW50cnkuJHNvcnQgPSBzb3J0O1xuICAgIH1cblxuICAgIGNvbnN0IHBpcGVsaW5lOiBNb25nb0FnZ3JlZ2F0aW9uUGlwZWxpbmVFbnRyeTxFPltdID0gW107XG5cbiAgICBpZiAoaGFzS2V5cyhmaXJzdFBpcGVsaW5lRW50cnkpKSB7XG4gICAgICBwaXBlbGluZS5wdXNoKGZpcnN0UGlwZWxpbmVFbnRyeSk7XG4gICAgfVxuXG4gICAgY29uc3QgcmVsYXRpb25zID0gZ2V0UHJvamVjdFJlbGF0aW9uS2V5cyhtZXRhLCBxbS4kcHJvamVjdCk7XG5cbiAgICBmb3IgKGNvbnN0IHJlbEtleSBvZiByZWxhdGlvbnMpIHtcbiAgICAgIGNvbnN0IHJlbE9wdHMgPSBtZXRhLnJlbGF0aW9uc1tyZWxLZXldO1xuXG4gICAgICBpZiAocmVsT3B0cy5jYXJkaW5hbGl0eSA9PT0gJzFtJyB8fCByZWxPcHRzLmNhcmRpbmFsaXR5ID09PSAnbW0nKSB7XG4gICAgICAgIC8vICcxbScgYW5kICdtbScgc2hvdWxkIGJlIHJlc29sdmVkIGluIGEgaGlnaGVyIGxheWVyIGJlY2F1c2UgdGhleSB3aWxsIG5lZWQgbXVsdGlwbGUgcXVlcmllc1xuICAgICAgICBjb250aW51ZTtcbiAgICAgIH1cblxuICAgICAgY29uc3QgcmVsRW50aXR5ID0gcmVsT3B0cy5lbnRpdHkoKTtcbiAgICAgIGNvbnN0IHJlbE1ldGEgPSBnZXRNZXRhKHJlbEVudGl0eSk7XG5cbiAgICAgIGlmIChyZWxPcHRzLmNhcmRpbmFsaXR5ID09PSAnbTEnKSB7XG4gICAgICAgIHBpcGVsaW5lLnB1c2goe1xuICAgICAgICAgICRsb29rdXA6IHtcbiAgICAgICAgICAgIGZyb206IHJlbE1ldGEubmFtZSxcbiAgICAgICAgICAgIGxvY2FsRmllbGQ6IHJlbE9wdHMucmVmZXJlbmNlc1swXS5zb3VyY2UsXG4gICAgICAgICAgICBmb3JlaWduRmllbGQ6ICdfaWQnLFxuICAgICAgICAgICAgYXM6IHJlbEtleSxcbiAgICAgICAgICB9LFxuICAgICAgICB9KTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGNvbnN0IHJlZmVyZW5jZUtleSA9IHJlbE9wdHMubWFwcGVkQnkgPyByZWxPcHRzLnJlZmVyZW5jZXNbMF0udGFyZ2V0IDogcmVsT3B0cy5yZWZlcmVuY2VzWzBdLnNvdXJjZTtcbiAgICAgICAgY29uc3QgcmVmZXJlbmNlRmlsdGVyID0gdGhpcy5maWx0ZXIocmVsRW50aXR5LCBxbS4kZmlsdGVyKTtcbiAgICAgICAgY29uc3QgcmVmZXJlbmNlU29ydCA9IHRoaXMuc29ydChyZWxFbnRpdHksIHFtLiRzb3J0KTtcbiAgICAgICAgY29uc3QgcmVmZXJlbmNlUGlwZWxpbmVFbnRyeTogTW9uZ29BZ2dyZWdhdGlvblBpcGVsaW5lRW50cnk8RmllbGRWYWx1ZTxFPj4gPSB7ICRtYXRjaDogeyBbcmVmZXJlbmNlS2V5XTogcmVmZXJlbmNlRmlsdGVyLl9pZCB9IH07XG4gICAgICAgIGlmIChoYXNLZXlzKHJlZmVyZW5jZVNvcnQpKSB7XG4gICAgICAgICAgcmVmZXJlbmNlUGlwZWxpbmVFbnRyeS4kc29ydCA9IHJlZmVyZW5jZVNvcnQ7XG4gICAgICAgIH1cbiAgICAgICAgcGlwZWxpbmUucHVzaCh7XG4gICAgICAgICAgJGxvb2t1cDoge1xuICAgICAgICAgICAgZnJvbTogcmVsTWV0YS5uYW1lLFxuICAgICAgICAgICAgcGlwZWxpbmU6IFtyZWZlcmVuY2VQaXBlbGluZUVudHJ5XSxcbiAgICAgICAgICAgIGFzOiByZWxLZXksXG4gICAgICAgICAgfSxcbiAgICAgICAgfSk7XG4gICAgICB9XG5cbiAgICAgIHBpcGVsaW5lLnB1c2goeyAkdW53aW5kOiB7IHBhdGg6IGAkJHtyZWxLZXl9YCwgcHJlc2VydmVOdWxsQW5kRW1wdHlBcnJheXM6IHRydWUgfSB9KTtcbiAgICB9XG5cbiAgICByZXR1cm4gcGlwZWxpbmU7XG4gIH1cblxuICBub3JtYWxpemVJZHM8RT4obWV0YTogRW50aXR5TWV0YTxFPiwgZG9jczogRVtdKTogRVtdIHtcbiAgICByZXR1cm4gZG9jcz8ubWFwKChkb2MpID0+IHRoaXMubm9ybWFsaXplSWQobWV0YSwgZG9jKSk7XG4gIH1cblxuICBub3JtYWxpemVJZDxFPihtZXRhOiBFbnRpdHlNZXRhPEU+LCBkb2M6IEUpOiBFIHtcbiAgICBpZiAoIWRvYykge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGNvbnN0IHJlcyA9IGRvYyBhcyBFICYgeyBfaWQ6IGFueSB9O1xuXG4gICAgaWYgKHJlcy5faWQpIHtcbiAgICAgIHJlc1ttZXRhLmlkXSA9IHJlcy5faWQ7XG4gICAgICBkZWxldGUgcmVzLl9pZDtcbiAgICB9XG5cbiAgICBjb25zdCByZWxLZXlzID0gZ2V0S2V5cyhtZXRhLnJlbGF0aW9ucykuZmlsdGVyKChrZXkpID0+IGRvY1trZXldKTtcblxuICAgIGZvciAoY29uc3QgcmVsS2V5IG9mIHJlbEtleXMpIHtcbiAgICAgIGNvbnN0IHJlbE9wdHMgPSBtZXRhLnJlbGF0aW9uc1tyZWxLZXldO1xuICAgICAgY29uc3QgcmVsTWV0YSA9IGdldE1ldGEocmVsT3B0cy5lbnRpdHkoKSk7XG4gICAgICByZXNbcmVsS2V5XSA9IEFycmF5LmlzQXJyYXkocmVzW3JlbEtleV0pID8gdGhpcy5ub3JtYWxpemVJZHMocmVsTWV0YSwgcmVzW3JlbEtleV0pIDogdGhpcy5ub3JtYWxpemVJZChyZWxNZXRhLCByZXNbcmVsS2V5XSk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHJlcyBhcyBFO1xuICB9XG5cbiAgZ2V0SWRWYWx1ZTxUIGV4dGVuZHMgc3RyaW5nIHwgc3RyaW5nW10gfCBPYmplY3RJZCB8IE9iamVjdElkW10+KHZhbHVlOiBUKTogVCB7XG4gICAgaWYgKHZhbHVlIGluc3RhbmNlb2YgT2JqZWN0SWQpIHtcbiAgICAgIHJldHVybiB2YWx1ZTtcbiAgICB9XG4gICAgaWYgKEFycmF5LmlzQXJyYXkodmFsdWUpKSB7XG4gICAgICByZXR1cm4gdmFsdWUubWFwKChpdCkgPT4gdGhpcy5nZXRJZFZhbHVlKGl0KSkgYXMgVDtcbiAgICB9XG4gICAgcmV0dXJuIG5ldyBPYmplY3RJZCh2YWx1ZSkgYXMgVDtcbiAgfVxufVxuXG50eXBlIE1vbmdvQWdncmVnYXRpb25QaXBlbGluZUVudHJ5PEU+ID0ge1xuICByZWFkb25seSAkbG9va3VwPzogTW9uZ29BZ2dyZWdhdGlvbkxvb2t1cDxFPjtcbiAgJG1hdGNoPzogRmlsdGVyUXVlcnk8RT4gfCBSZWNvcmQ8c3RyaW5nLCBhbnk+O1xuICAkc29ydD86IE1vbmdvU29ydDxFPjtcbiAgcmVhZG9ubHkgJHVud2luZD86IE1vbmdvQWdncmVnYXRpb25VbndpbmQ7XG59O1xuXG50eXBlIE1vbmdvQWdncmVnYXRpb25Mb29rdXA8RT4gPSB7XG4gIHJlYWRvbmx5IGZyb20/OiBzdHJpbmc7XG4gIHJlYWRvbmx5IGZvcmVpZ25GaWVsZD86IHN0cmluZztcbiAgcmVhZG9ubHkgbG9jYWxGaWVsZD86IHN0cmluZztcbiAgcmVhZG9ubHkgcGlwZWxpbmU/OiBNb25nb0FnZ3JlZ2F0aW9uUGlwZWxpbmVFbnRyeTxGaWVsZFZhbHVlPEU+PltdO1xuICByZWFkb25seSBhcz86IFJlbGF0aW9uS2V5PEU+O1xufTtcblxudHlwZSBNb25nb0FnZ3JlZ2F0aW9uVW53aW5kID0ge1xuICByZWFkb25seSBwYXRoPzogc3RyaW5nO1xuICByZWFkb25seSBwcmVzZXJ2ZU51bGxBbmRFbXB0eUFycmF5cz86IGJvb2xlYW47XG59O1xuXG50eXBlIE1vbmdvU29ydDxFPiA9IFtzdHJpbmcsIG51bWJlcl1bXSB8IFNvcnRPcHRpb25PYmplY3Q8RT47XG4iXX0= | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9uZ29EaWFsZWN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL21vbmdvRGlhbGVjdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxxQ0FBa0U7QUFhbEUsMERBQXFEO0FBQ3JELHlDQUF3RjtBQUV4RixNQUFhLFlBQVk7SUFDdkIsTUFBTSxDQUFJLE1BQWUsRUFBRSxTQUF5QixFQUFFLEVBQUUsRUFBRSxVQUFVLEtBQW1CLEVBQUU7UUFDdkYsTUFBTSxJQUFJLEdBQUcsSUFBQSxtQkFBTyxFQUFDLE1BQU0sQ0FBQyxDQUFDO1FBRTdCLElBQUksT0FBTyxNQUFNLEtBQUssUUFBUSxJQUFJLEtBQUssQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLElBQUksTUFBTSxZQUFZLGtCQUFRLElBQUksa0JBQVEsQ0FBQyxPQUFPLENBQUMsTUFBZ0IsQ0FBQyxFQUFFO1lBQzNILE1BQU0sR0FBRztnQkFDUCxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsRUFBRSxNQUFNO2FBQ2xCLENBQUM7U0FDSDtRQUVELElBQUksSUFBSSxDQUFDLGFBQWEsSUFBSSxDQUFDLFVBQVUsSUFBSSxVQUFVLEtBQUssU0FBUyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLGFBQXVCLENBQUMsRUFBRTtZQUMzRyxNQUFNLENBQUMsSUFBSSxDQUFDLGFBQXVCLENBQUMsR0FBRyxJQUFJLENBQUM7U0FDN0M7UUFFRCxPQUFPLElBQUEsY0FBTyxFQUFDLE1BQU0sQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLEdBQUcsRUFBRSxHQUFHLEVBQUUsRUFBRTtZQUN6QyxJQUFJLEtBQUssR0FBRyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUM7WUFDeEIsSUFBSSxHQUFHLEtBQUssTUFBTSxJQUFJLEdBQUcsS0FBSyxLQUFLLEVBQUU7Z0JBQ25DLEdBQUcsQ0FBQyxHQUFHLENBQUMsR0FBRyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsUUFBd0IsRUFB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QUFJLENBQUMsV0FBVyxDQUFDLE9BQU8sRUFBRSxHQUFHLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQztTQUM3SDtRQUVELE9BQU8sR0FBUSxDQUFDO0lBQ2xCLENBQUM7SUFFRCxVQUFVLENBQXNELEtBQVE7UUFDdEUsSUFBSSxLQUFLLFlBQVksa0JBQVEsRUFBRTtZQUM3QixPQUFPLEtBQUssQ0FBQztTQUNkO1FBQ0QsSUFBSSxLQUFLLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxFQUFFO1lBQ3hCLE9BQU8sS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEVBQUUsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxFQUFFLENBQUMsQ0FBTSxDQUFDO1NBQ3BEO1FBQ0QsT0FBTyxJQUFJLGtCQUFRLENBQUMsS0FBSyxDQUFNLENBQUM7SUFDbEMsQ0FBQztDQUNGO0FBcEpELG9DQW9KQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEZpbHRlclF1ZXJ5LCBPYmplY3RJZCwgU29ydE9wdGlvbk9iamVjdCB9IGZyb20gJ21vbmdvZGInO1xuaW1wb3J0IHtcbiAgUXVlcnlGaWx0ZXIsXG4gIFF1ZXJ5LFxuICBFbnRpdHlNZXRhLFxuICBUeXBlLFxuICBRdWVyeVByb2plY3QsXG4gIFF1ZXJ5UHJvamVjdE1hcCxcbiAgUXVlcnlPcHRpb25zLFxuICBRdWVyeVNvcnQsXG4gIEZpZWxkVmFsdWUsXG4gIFJlbGF0aW9uS2V5LFxufSBmcm9tICdAdXFsL2NvcmUvdHlwZSc7XG5pbXBvcnQgeyBnZXRNZXRhIH0gZnJvbSAnQHVxbC9jb3JlL2VudGl0eS9kZWNvcmF0b3InO1xuaW1wb3J0IHsgZ2V0S2V5cywgaGFzS2V5cywgYnVpbGRTb3J0TWFwLCBnZXRQcm9qZWN0UmVsYXRpb25LZXlzIH0gZnJvbSAnQHVxbC9jb3JlL3V0aWwnO1xuXG5leHBvcnQgY2xhc3MgTW9uZ29EaWFsZWN0IHtcbiAgZmlsdGVyPEU+KGVudGl0eTogVHlwZTxFPiwgZmlsdGVyOiBRdWVyeUZpbHRlcjxFPiA9IHt9LCB7IHNvZnREZWxldGUgfTogUXVlcnlPcHRpb25zID0ge30pOiBGaWx0ZXJRdWVyeTxFPiB7XG4gICAgY29uc3QgbWV0YSA9IGdldE1ldGEoZW50aXR5KTtcblxuICAgIGlmICh0eXBlb2YgZmlsdGVyICE9PSAnb2JqZWN0JyB8fCBBcnJheS5pc0FycmF5KGZpbHRlcikgfHwgZmlsdGVyIGluc3RhbmNlb2YgT2JqZWN0SWQgfHwgT2JqZWN0SWQuaXNWYWxpZChmaWx0ZXIgYXMgc3RyaW5nKSkge1xuICAgICAgZmlsdGVyID0ge1xuICAgICAgICBbbWV0YS5pZF06IGZpbHRlcixcbiAgICAgIH07XG4gICAgfVxuXG4gICAgaWYgKG1ldGEuc29mdERlbGV0ZUtleSAmJiAoc29mdERlbGV0ZSB8fCBzb2Z0RGVsZXRlID09PSB1bmRlZmluZWQpICYmICFmaWx0ZXJbbWV0YS5zb2Z0RGVsZXRlS2V5IGFzIHN0cmluZ10pIHtcbiAgICAgIGZpbHRlclttZXRhLnNvZnREZWxldGVLZXkgYXMgc3RyaW5nXSA9IG51bGw7XG4gICAgfVxuXG4gICAgcmV0dXJuIGdldEtleXMoZmlsdGVyKS5yZWR1Y2UoKGFjYywga2V5KSA9PiB7XG4gICAgICBsZXQgdmFsdWUgPSBmaWx0ZXJba2V5XTtcbiAgICAgIGlmIChrZXkgPT09ICckYW5kJyB8fCBrZXkgPT09ICckb3InKSB7XG4gICAgICAgIGFjY1trZXldID0gdmFsdWUubWFwKChmaWx0ZXJJdDogUXVlcnlGaWx0ZXI8RT4pID0+IHRoaXMuZmlsdGVyKGVudGl0eSwgZmlsdGVySXQpKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGlmIChrZXkgPT09ICdfaWQnIHx8IGtleSA9PT0gbWV0YS5pZCkge1xuICAgICAgICAgIGtleSA9ICdfaWQnO1xuICAgICAgICAgIHZhbHVlID0gdGhpcy5nZXRJZFZhbHVlKHZhbHVlKTtcbiAgICAgICAgfSBlbHNlIGlmIChBcnJheS5pc0FycmF5KHZhbHVlKSkge1xuICAgICAgICAgIHZhbHVlID0ge1xuICAgICAgICAgICAgJGluOiB2YWx1ZSxcbiAgICAgICAgICB9O1xuICAgICAgICB9XG4gICAgICAgIGFjY1trZXkgYXMga2V5b2YgRmlsdGVyUXVlcnk8RT5dID0gdmFsdWU7XG4gICAgICB9XG4gICAgICByZXR1cm4gYWNjO1xuICAgIH0sIHt9IGFzIEZpbHRlclF1ZXJ5PEU+KTtcbiAgfVxuXG4gIHByb2plY3Q8RT4oZW50aXR5OiBUeXBlPEU+LCBwcm9qZWN0OiBRdWVyeVByb2plY3Q8RT4pOiBRdWVyeVByb2plY3RNYXA8RT4ge1xuICAgIGlmIChBcnJheS5pc0FycmF5KHByb2plY3QpKSB7XG4gICAgICByZXR1cm4gcHJvamVjdC5yZWR1Y2UoKGFjYywgaXQpID0+IHtcbiAgICAgICAgYWNjW2l0IGFzIHN0cmluZ10gPSB0cnVlO1xuICAgICAgICByZXR1cm4gYWNjO1xuICAgICAgfSwge30gYXMgUXVlcnlQcm9qZWN0TWFwPEU+KTtcbiAgICB9XG4gICAgcmV0dXJuIHByb2plY3QgYXMgUXVlcnlQcm9qZWN0TWFwPEU+O1xuICB9XG5cbiAgc29ydDxFPihlbnRpdHk6IFR5cGU8RT4sIHNvcnQ6IFF1ZXJ5U29ydDxFPik6IE1vbmdvU29ydDxFPiB7XG4gICAgcmV0dXJuIGJ1aWxkU29ydE1hcChzb3J0KSBhcyBNb25nb1NvcnQ8RT47XG4gIH1cblxuICBhZ2dyZWdhdGlvblBpcGVsaW5lPEU+KGVudGl0eTogVHlwZTxFPiwgcW06IFF1ZXJ5PEU+KTogTW9uZ29BZ2dyZWdhdGlvblBpcGVsaW5lRW50cnk8RT5bXSB7XG4gICAgY29uc3QgbWV0YSA9IGdldE1ldGEoZW50aXR5KTtcblxuICAgIGNvbnN0IGZpbHRlciA9IHRoaXMuZmlsdGVyKGVudGl0eSwgcW0uJGZpbHRlcik7XG4gICAgY29uc3Qgc29ydCA9IHRoaXMuc29ydChlbnRpdHksIHFtLiRzb3J0KTtcbiAgICBjb25zdCBmaXJzdFBpcGVsaW5lRW50cnk6IE1vbmdvQWdncmVnYXRpb25QaXBlbGluZUVudHJ5PEU+ID0ge307XG5cbiAgICBpZiAoaGFzS2V5cyhmaWx0ZXIpKSB7XG4gICAgICBmaXJzdFBpcGVsaW5lRW50cnkuJG1hdGNoID0gZmlsdGVyO1xuICAgIH1cbiAgICBpZiAoaGFzS2V5cyhzb3J0KSkge1xuICAgICAgZmlyc3RQaXBlbGluZUVudHJ5LiRzb3J0ID0gc29ydDtcbiAgICB9XG5cbiAgICBjb25zdCBwaXBlbGluZTogTW9uZ29BZ2dyZWdhdGlvblBpcGVsaW5lRW50cnk8RT5bXSA9IFtdO1xuXG4gICAgaWYgKGhhc0tleXMoZmlyc3RQaXBlbGluZUVudHJ5KSkge1xuICAgICAgcGlwZWxpbmUucHVzaChmaXJzdFBpcGVsaW5lRW50cnkpO1xuICAgIH1cblxuICAgIGNvbnN0IHJlbGF0aW9ucyA9IGdldFByb2plY3RSZWxhdGlvbktleXMobWV0YSwgcW0uJHByb2plY3QpO1xuXG4gICAgZm9yIChjb25zdCByZWxLZXkgb2YgcmVsYXRpb25zKSB7XG4gICAgICBjb25zdCByZWxPcHRzID0gbWV0YS5yZWxhdGlvbnNbcmVsS2V5XTtcblxuICAgICAgaWYgKHJlbE9wdHMuY2FyZGluYWxpdHkgPT09ICcxbScgfHwgcmVsT3B0cy5jYXJkaW5hbGl0eSA9PT0gJ21tJykge1xuICAgICAgICAvLyAnMW0nIGFuZCAnbW0nIHNob3VsZCBiZSByZXNvbHZlZCBpbiBhIGhpZ2hlciBsYXllciBiZWNhdXNlIHRoZXkgd2lsbCBuZWVkIG11bHRpcGxlIHF1ZXJpZXNcbiAgICAgICAgY29udGludWU7XG4gICAgICB9XG5cbiAgICAgIGNvbnN0IHJlbEVudGl0eSA9IHJlbE9wdHMuZW50aXR5KCk7XG4gICAgICBjb25zdCByZWxNZXRhID0gZ2V0TWV0YShyZWxFbnRpdHkpO1xuXG4gICAgICBpZiAocmVsT3B0cy5jYXJkaW5hbGl0eSA9PT0gJ20xJykge1xuICAgICAgICBwaXBlbGluZS5wdXNoKHtcbiAgICAgICAgICAkbG9va3VwOiB7XG4gICAgICAgICAgICBmcm9tOiByZWxNZXRhLm5hbWUsXG4gICAgICAgICAgICBsb2NhbEZpZWxkOiByZWxPcHRzLnJlZmVyZW5jZXNbMF0uc291cmNlLFxuICAgICAgICAgICAgZm9yZWlnbkZpZWxkOiAnX2lkJyxcbiAgICAgICAgICAgIGFzOiByZWxLZXksXG4gICAgICAgICAgfSxcbiAgICAgICAgfSk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBjb25zdCByZWZlcmVuY2VLZXkgPSByZWxPcHRzLm1hcHBlZEJ5ID8gcmVsT3B0cy5yZWZlcmVuY2VzWzBdLnRhcmdldCA6IHJlbE9wdHMucmVmZXJlbmNlc1swXS5zb3VyY2U7XG4gICAgICAgIGNvbnN0IHJlZmVyZW5jZUZpbHRlciA9IHRoaXMuZmlsdGVyKHJlbEVudGl0eSwgcW0uJGZpbHRlcik7XG4gICAgICAgIGNvbnN0IHJlZmVyZW5jZVNvcnQgPSB0aGlzLnNvcnQocmVsRW50aXR5LCBxbS4kc29ydCk7XG4gICAgICAgIGNvbnN0IHJlZmVyZW5jZVBpcGVsaW5lRW50cnk6IE1vbmdvQWdncmVnYXRpb25QaXBlbGluZUVudHJ5PEZpZWxkVmFsdWU8RT4+ID0geyAkbWF0Y2g6IHsgW3JlZmVyZW5jZUtleV06IHJlZmVyZW5jZUZpbHRlci5faWQgfSB9O1xuICAgICAgICBpZiAoaGFzS2V5cyhyZWZlcmVuY2VTb3J0KSkge1xuICAgICAgICAgIHJlZmVyZW5jZVBpcGVsaW5lRW50cnkuJHNvcnQgPSByZWZlcmVuY2VTb3J0O1xuICAgICAgICB9XG4gICAgICAgIHBpcGVsaW5lLnB1c2goe1xuICAgICAgICAgICRsb29rdXA6IHtcbiAgICAgICAgICAgIGZyb206IHJlbE1ldGEubmFtZSxcbiAgICAgICAgICAgIHBpcGVsaW5lOiBbcmVmZXJlbmNlUGlwZWxpbmVFbnRyeV0sXG4gICAgICAgICAgICBhczogcmVsS2V5LFxuICAgICAgICAgIH0sXG4gICAgICAgIH0pO1xuICAgICAgfVxuXG4gICAgICBwaXBlbGluZS5wdXNoKHsgJHVud2luZDogeyBwYXRoOiBgJCR7cmVsS2V5fWAsIHByZXNlcnZlTnVsbEFuZEVtcHR5QXJyYXlzOiB0cnVlIH0gfSk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHBpcGVsaW5lO1xuICB9XG5cbiAgbm9ybWFsaXplSWRzPEU+KG1ldGE6IEVudGl0eU1ldGE8RT4sIGRvY3M6IEVbXSk6IEVbXSB7XG4gICAgcmV0dXJuIGRvY3M/Lm1hcCgoZG9jKSA9PiB0aGlzLm5vcm1hbGl6ZUlkKG1ldGEsIGRvYykpO1xuICB9XG5cbiAgbm9ybWFsaXplSWQ8RT4obWV0YTogRW50aXR5TWV0YTxFPiwgZG9jOiBFKTogRSB7XG4gICAgaWYgKCFkb2MpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBjb25zdCByZXMgPSBkb2MgYXMgRSAmIHsgX2lkOiBhbnkgfTtcblxuICAgIGlmIChyZXMuX2lkKSB7XG4gICAgICByZXNbbWV0YS5pZF0gPSByZXMuX2lkO1xuICAgICAgZGVsZXRlIHJlcy5faWQ7XG4gICAgfVxuXG4gICAgY29uc3QgcmVsS2V5cyA9IGdldEtleXMobWV0YS5yZWxhdGlvbnMpLmZpbHRlcigoa2V5KSA9PiBkb2Nba2V5XSk7XG5cbiAgICBmb3IgKGNvbnN0IHJlbEtleSBvZiByZWxLZXlzKSB7XG4gICAgICBjb25zdCByZWxPcHRzID0gbWV0YS5yZWxhdGlvbnNbcmVsS2V5XTtcbiAgICAgIGNvbnN0IHJlbE1ldGEgPSBnZXRNZXRhKHJlbE9wdHMuZW50aXR5KCkpO1xuICAgICAgcmVzW3JlbEtleV0gPSBBcnJheS5pc0FycmF5KHJlc1tyZWxLZXldKSA/IHRoaXMubm9ybWFsaXplSWRzKHJlbE1ldGEsIHJlc1tyZWxLZXldKSA6IHRoaXMubm9ybWFsaXplSWQocmVsTWV0YSwgcmVzW3JlbEtleV0pO1xuICAgIH1cblxuICAgIHJldHVybiByZXMgYXMgRTtcbiAgfVxuXG4gIGdldElkVmFsdWU8VCBleHRlbmRzIHN0cmluZyB8IHN0cmluZ1tdIHwgT2JqZWN0SWQgfCBPYmplY3RJZFtdPih2YWx1ZTogVCk6IFQge1xuICAgIGlmICh2YWx1ZSBpbnN0YW5jZW9mIE9iamVjdElkKSB7XG4gICAgICByZXR1cm4gdmFsdWU7XG4gICAgfVxuICAgIGlmIChBcnJheS5pc0FycmF5KHZhbHVlKSkge1xuICAgICAgcmV0dXJuIHZhbHVlLm1hcCgoaXQpID0+IHRoaXMuZ2V0SWRWYWx1ZShpdCkpIGFzIFQ7XG4gICAgfVxuICAgIHJldHVybiBuZXcgT2JqZWN0SWQodmFsdWUpIGFzIFQ7XG4gIH1cbn1cblxudHlwZSBNb25nb0FnZ3JlZ2F0aW9uUGlwZWxpbmVFbnRyeTxFPiA9IHtcbiAgcmVhZG9ubHkgJGxvb2t1cD86IE1vbmdvQWdncmVnYXRpb25Mb29rdXA8RT47XG4gICRtYXRjaD86IEZpbHRlclF1ZXJ5PEU+IHwgUmVjb3JkPHN0cmluZywgYW55PjtcbiAgJHNvcnQ/OiBNb25nb1NvcnQ8RT47XG4gIHJlYWRvbmx5ICR1bndpbmQ/OiBNb25nb0FnZ3JlZ2F0aW9uVW53aW5kO1xufTtcblxudHlwZSBNb25nb0FnZ3JlZ2F0aW9uTG9va3VwPEU+ID0ge1xuICByZWFkb25seSBmcm9tPzogc3RyaW5nO1xuICByZWFkb25seSBmb3JlaWduRmllbGQ/OiBzdHJpbmc7XG4gIHJlYWRvbmx5IGxvY2FsRmllbGQ/OiBzdHJpbmc7XG4gIHJlYWRvbmx5IHBpcGVsaW5lPzogTW9uZ29BZ2dyZWdhdGlvblBpcGVsaW5lRW50cnk8RmllbGRWYWx1ZTxFPj5bXTtcbiAgcmVhZG9ubHkgYXM/OiBSZWxhdGlvbktleTxFPjtcbn07XG5cbnR5cGUgTW9uZ29BZ2dyZWdhdGlvblVud2luZCA9IHtcbiAgcmVhZG9ubHkgcGF0aD86IHN0cmluZztcbiAgcmVhZG9ubHkgcHJlc2VydmVOdWxsQW5kRW1wdHlBcnJheXM/OiBib29sZWFuO1xufTtcblxudHlwZSBNb25nb1NvcnQ8RT4gPSBbc3RyaW5nLCBudW1iZXJdW10gfCBTb3J0T3B0aW9uT2JqZWN0PEU+O1xuIl19 |
@@ -6,3 +6,3 @@ { | ||
"license": "MIT", | ||
"version": "0.4.57", | ||
"version": "0.4.58", | ||
"main": "index.js", | ||
@@ -20,8 +20,8 @@ "types": "index.d.ts", | ||
"peerDependencies": { | ||
"@uql/core": "^0.4.55" | ||
"@uql/core": "^0.4.57" | ||
}, | ||
"devDependencies": { | ||
"@types/mongodb": "^3.6.20", | ||
"@types/node": "^16.4.2", | ||
"@uql/core": "^0.4.57", | ||
"@types/node": "^16.4.3", | ||
"@uql/core": "^0.4.58", | ||
"copyfiles": "^2.4.1", | ||
@@ -28,0 +28,0 @@ "rimraf": "^3.0.2", |
@@ -238,3 +238,3 @@ # [uql](https://uql.io) · [](https://github.com/impensables/uql/blob/master/LICENSE) [](https://github.com/impensables/uql) [](https://coveralls.io/r/impensables/uql?branch=master) [](https://badge.fury.io/js/%40uql%2Fcore) | ||
import { Querier } from '@uql/core/type'; | ||
import { Transactional, InjectQuerier } from '@uql/core/querier/decorator'; | ||
import { Transactional, InjectQuerier } from '@uql/core/querier'; | ||
@@ -241,0 +241,0 @@ class ConfirmationService { |
63430
394