RelationInsertOperation.js 638 B

123456789101112131415161718192021
  1. const { after } = require('../utils/promiseUtils');
  2. const InsertOperation = require('../queryBuilder/operations/InsertOperation');
  3. class RelationInsertOperation extends InsertOperation {
  4. constructor(name, opt) {
  5. super(name, opt);
  6. this.relation = opt.relation;
  7. this.owner = opt.owner;
  8. this.assignResultToOwner = true;
  9. }
  10. onBefore2(builder, result) {
  11. const queryContext = builder.context();
  12. const maybePromise = this.relation.executeBeforeInsert(this.models, queryContext, result);
  13. return after(maybePromise, result => super.onBefore2(builder, result));
  14. }
  15. }
  16. module.exports = RelationInsertOperation;