From 327b47a1ee3e65abd2b09ced20d129a2dbd6e8ae Mon Sep 17 00:00:00 2001 From: Valeri Karpov Date: Fri, 11 Oct 2019 11:03:13 -0400 Subject: [PATCH] fix(subdocument): make subdocument#isModified use parent document's isModified Fix #8223 --- lib/types/subdocument.js | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/lib/types/subdocument.js b/lib/types/subdocument.js index 92a88489523..cb4db5c1651 100644 --- a/lib/types/subdocument.js +++ b/lib/types/subdocument.js @@ -115,6 +115,16 @@ Subdocument.prototype.markModified = function(path) { } }; +Subdocument.prototype.isModified = function(paths, modifiedPaths) { + if (this.$parent && this.$basePath) { + paths = (Array.isArray(paths) ? paths : paths.split(' ')). + map(p => [this.$basePath, p].join('.')); + return this.$parent.isModified(paths, modifiedPaths); + } + + return Document.prototype.isModified(paths, modifiedPaths); +}; + /** * Marks a path as valid, removing existing validation errors. *