From 6f8faff137ae34bfbf4e8b14dbc61e8069b660b8 Mon Sep 17 00:00:00 2001 From: Swaraj Gandhi Date: Sun, 1 Dec 2024 17:56:54 +0530 Subject: [PATCH 1/6] changes for sub menu rule node --- lib/core/base/rule.js | 16 +++++++++++++++- lib/core/utils/check-helper.js | 3 +++ 2 files changed, 18 insertions(+), 1 deletion(-) diff --git a/lib/core/base/rule.js b/lib/core/base/rule.js index e42c74292..faca47afb 100644 --- a/lib/core/base/rule.js +++ b/lib/core/base/rule.js @@ -583,13 +583,27 @@ Rule.prototype.after = function after(result, options) { // only add the node property for the check.after so we can // look at which iframe a check result came from, but we don't // want it for the final results object - delete item.node; + if (item.data.metaData) { + delete item.node; + item.result = true; + } if (afterResults.indexOf(item) === -1) { item.filtered = true; } }); }); + // Sub menu nodes modifications + const data = result.nodes.filter((r) => !r.all[0].result); + data.forEach((r) => { + const node = r.all[0].data; + r.node = new axe.utils.DqElement(node); + }); + + result.nodes.forEach((r) => { + delete r.all[0].data; + }); + result.nodes = sanitizeNodes(result); return result; }; diff --git a/lib/core/utils/check-helper.js b/lib/core/utils/check-helper.js index fbedf3645..5aab8485f 100644 --- a/lib/core/utils/check-helper.js +++ b/lib/core/utils/check-helper.js @@ -25,6 +25,9 @@ function checkHelper(checkResult, options, resolve, reject) { data(data) { checkResult.data = data; }, + getData() { + return checkResult.data; + }, relatedNodes(nodes) { if (!window.Node) { return; From ae82510acbb83c507fad1caa8be945e811c562c2 Mon Sep 17 00:00:00 2001 From: SwarajGK Date: Sun, 1 Dec 2024 12:28:21 +0000 Subject: [PATCH 2/6] :robot: Automated formatting fixes --- lib/core/base/rule.js | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/lib/core/base/rule.js b/lib/core/base/rule.js index faca47afb..1ce0fefd8 100644 --- a/lib/core/base/rule.js +++ b/lib/core/base/rule.js @@ -594,13 +594,13 @@ Rule.prototype.after = function after(result, options) { }); // Sub menu nodes modifications - const data = result.nodes.filter((r) => !r.all[0].result); - data.forEach((r) => { + const data = result.nodes.filter(r => !r.all[0].result); + data.forEach(r => { const node = r.all[0].data; r.node = new axe.utils.DqElement(node); }); - result.nodes.forEach((r) => { + result.nodes.forEach(r => { delete r.all[0].data; }); From 89ce28c2730c9cb10dcd39908ea0d7297728c375 Mon Sep 17 00:00:00 2001 From: Swaraj Gandhi Date: Mon, 2 Dec 2024 16:50:04 +0530 Subject: [PATCH 3/6] added changes for sub menu rule logic --- lib/core/base/rule.js | 28 +++++++++++++++++----------- 1 file changed, 17 insertions(+), 11 deletions(-) diff --git a/lib/core/base/rule.js b/lib/core/base/rule.js index faca47afb..0e31c0cb7 100644 --- a/lib/core/base/rule.js +++ b/lib/core/base/rule.js @@ -583,9 +583,13 @@ Rule.prototype.after = function after(result, options) { // only add the node property for the check.after so we can // look at which iframe a check result came from, but we don't // want it for the final results object - if (item.data.metaData) { + if (check.id === 'sub-menu-metadata') { + if (item.data.metaData) { + delete item.node; + item.result = true; + } + } else { delete item.node; - item.result = true; } if (afterResults.indexOf(item) === -1) { item.filtered = true; @@ -593,16 +597,18 @@ Rule.prototype.after = function after(result, options) { }); }); - // Sub menu nodes modifications - const data = result.nodes.filter((r) => !r.all[0].result); - data.forEach((r) => { - const node = r.all[0].data; - r.node = new axe.utils.DqElement(node); - }); + // Trying for sub-menu + if (result.id === 'sub-menu-metadata') { + const data = result.nodes.filter((r) => !r.all[0].result); + data.forEach((r) => { + const node = r.all[0].data; + r.node = new axe.utils.DqElement(node); + }); - result.nodes.forEach((r) => { - delete r.all[0].data; - }); + result.nodes.forEach((r) => { + delete r.all[0].data; + }); + } result.nodes = sanitizeNodes(result); return result; From 60bf702e3b1ff21cc8225709cc5c708ee208ffc3 Mon Sep 17 00:00:00 2001 From: SwarajGK Date: Mon, 2 Dec 2024 11:22:44 +0000 Subject: [PATCH 4/6] :robot: Automated formatting fixes --- lib/core/base/rule.js | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/lib/core/base/rule.js b/lib/core/base/rule.js index 0e31c0cb7..89387b139 100644 --- a/lib/core/base/rule.js +++ b/lib/core/base/rule.js @@ -599,13 +599,13 @@ Rule.prototype.after = function after(result, options) { // Trying for sub-menu if (result.id === 'sub-menu-metadata') { - const data = result.nodes.filter((r) => !r.all[0].result); - data.forEach((r) => { + const data = result.nodes.filter(r => !r.all[0].result); + data.forEach(r => { const node = r.all[0].data; r.node = new axe.utils.DqElement(node); }); - result.nodes.forEach((r) => { + result.nodes.forEach(r => { delete r.all[0].data; }); } From 01a1bfd1513e48d0c048a2f98d18c8c7c44b52c6 Mon Sep 17 00:00:00 2001 From: Swaraj Gandhi Date: Fri, 6 Dec 2024 10:24:57 +0530 Subject: [PATCH 5/6] added changes for rule name --- lib/core/base/rule.js | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/lib/core/base/rule.js b/lib/core/base/rule.js index 0e31c0cb7..da40c959d 100644 --- a/lib/core/base/rule.js +++ b/lib/core/base/rule.js @@ -583,8 +583,8 @@ Rule.prototype.after = function after(result, options) { // only add the node property for the check.after so we can // look at which iframe a check result came from, but we don't // want it for the final results object - if (check.id === 'sub-menu-metadata') { - if (item.data.metaData) { + if (check.id === 'menu-expand' || check.id === 'menu-popup') { + if (item?.data?.metaData) { delete item.node; item.result = true; } @@ -598,7 +598,7 @@ Rule.prototype.after = function after(result, options) { }); // Trying for sub-menu - if (result.id === 'sub-menu-metadata') { + if (result.id === 'menu-expand' || result.id === 'menu-popup') { const data = result.nodes.filter((r) => !r.all[0].result); data.forEach((r) => { const node = r.all[0].data; From 8292c0af1f7ac29b551a373a609b4e385024c559 Mon Sep 17 00:00:00 2001 From: SwarajGK Date: Fri, 6 Dec 2024 04:57:25 +0000 Subject: [PATCH 6/6] :robot: Automated formatting fixes --- lib/core/base/rule.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/lib/core/base/rule.js b/lib/core/base/rule.js index 8da844f9c..89fc1dc6b 100644 --- a/lib/core/base/rule.js +++ b/lib/core/base/rule.js @@ -599,8 +599,8 @@ Rule.prototype.after = function after(result, options) { // Trying for sub-menu if (result.id === 'menu-expand' || result.id === 'menu-popup') { - const data = result.nodes.filter((r) => !r.all[0].result); - data.forEach((r) => { + const data = result.nodes.filter(r => !r.all[0].result); + data.forEach(r => { const node = r.all[0].data; r.node = new axe.utils.DqElement(node); });