From c3f35c57d0d5ee6fd1ff68a757a75605be16f314 Mon Sep 17 00:00:00 2001
From: Jonah Tan <47470981+jonahtanjz@users.noreply.github.com>
Date: Tue, 7 Dec 2021 16:03:24 +0800
Subject: [PATCH 01/10] Redesign top nav to two rows
---
packages/vue-components/src/Navbar.vue | 105 +++++++++++++++++--------
1 file changed, 71 insertions(+), 34 deletions(-)
diff --git a/packages/vue-components/src/Navbar.vue b/packages/vue-components/src/Navbar.vue
index b55ca9d4d7..632632792b 100644
--- a/packages/vue-components/src/Navbar.vue
+++ b/packages/vue-components/src/Navbar.vue
@@ -5,26 +5,15 @@
['foo','bar','index.html']
splitUrl(url) {
@@ -167,7 +151,8 @@ export default {
},
highlightLink(url) {
const defHlMode = this.defaultHighlightOn;
- const navLis = Array.from(this.$el.querySelector('.navbar-nav').children);
+ const navLis = [];
+ this.$el.querySelectorAll('.navbar-nav').forEach(nav => navLis.push(...Array.from(nav.children)));
// attempt an exact match first
for (let i = 0; i < navLis.length; i += 1) {
const li = navLis[i];
@@ -254,13 +239,6 @@ export default {
if (!content.contains(e.target)) content.classList.remove('open');
});
});
- $(this.$el).on('click', 'li:not(.dropdown)>a', (e) => {
- if (e.target.classList.contains('submenu-toggle')) { return; }
- setTimeout(() => { this.collapsed = true; }, 200);
- }).onBlur((e) => {
- if (!this.$el.contains(e.target)) { this.collapsed = true; }
- });
- if (this.slots.collapse) $('[data-toggle="collapse"]', this.$el).on('click', e => this.toggleCollapse(e));
// highlight current nav link
this.highlightLink(window.location.href);
@@ -270,7 +248,6 @@ export default {
},
beforeDestroy() {
$('.dropdown', this.$el).off('click').offBlur();
- if (this.slots.collapse) $('[data-toggle="collapse"]', this.$el).off('click');
$(window).off('resize', this.toggleLowerNavbar);
},
};
@@ -278,10 +255,58 @@ export default {
diff --git a/packages/vue-components/src/__tests__/__snapshots__/Navbar.spec.js.snap b/packages/vue-components/src/__tests__/__snapshots__/Navbar.spec.js.snap
index 4c4a7ca1f2..0658a93736 100644
--- a/packages/vue-components/src/__tests__/__snapshots__/Navbar.spec.js.snap
+++ b/packages/vue-components/src/__tests__/__snapshots__/Navbar.spec.js.snap
@@ -9,7 +9,7 @@ exports[`Navbar and secondary navbar navbar with page nav button 1`] = `
class="container-fluid"
>