From 848b4cf1573484642e16e1dfe9b5e4789f7165cf Mon Sep 17 00:00:00 2001 From: "ALZAHRANI-PC\\riyad" Date: Thu, 12 Aug 2021 06:10:46 +0300 Subject: [PATCH 01/13] Add plugins/hiddenSiteNav.js --- .../core/template/plugins/hiddenSiteNav.js | 46 +++++++++++++++++++ 1 file changed, 46 insertions(+) create mode 100644 packages/core/template/plugins/hiddenSiteNav.js diff --git a/packages/core/template/plugins/hiddenSiteNav.js b/packages/core/template/plugins/hiddenSiteNav.js new file mode 100644 index 0000000000..3f90684c4d --- /dev/null +++ b/packages/core/template/plugins/hiddenSiteNav.js @@ -0,0 +1,46 @@ +// hiddenSiteNav.js +const cheerio = module.parent.require('cheerio'); + +module.exports = { + processNode: (pluginContext, node) => { + if (node.attribs.slot === 'brand') { + cheerio(node) + .children('.navbar-brand') + .removeAttr('slot') + .wrap('
') + .before( + '' + ) + .before( + '' + ) + } + + if (node.attribs.id === 'site-nav') { + cheerio(node).attr('hidden', 'hidden'); + } + }, + postRender: (pluginContext, frontMatter, content) => { + const $ = cheerio.load(content, { xmlMode: false }); + $('#site-nav-show-button').click(() => { + $('#site-nav').removeAttr('hidden'); + $('#site-nav-hide-button').removeAttr('hidden'); + $('#site-nav-show-button').attr('hidden', 'hidden'); + }); + + $('#site-nav-hide-button').click(() => { + $('#site-nav').attr('hidden', 'hidden'); + $('#site-nav-hide-button').attr('hidden', 'hidden'); + $('#site-nav-show-button').removeAttr('hidden'); + }); + } +} \ No newline at end of file From 74b2504ac60ece3d178393e3d1abdefc40a02ba0 Mon Sep 17 00:00:00 2001 From: "ALZAHRANI-PC\\riyad" Date: Thu, 12 Aug 2021 06:12:23 +0300 Subject: [PATCH 02/13] Add hiddenSiteNav plugin to plugins in site.json --- packages/core/template/default/site.json | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/packages/core/template/default/site.json b/packages/core/template/default/site.json index b8ad4a6e2e..441a8c3fd4 100755 --- a/packages/core/template/default/site.json +++ b/packages/core/template/default/site.json @@ -23,5 +23,8 @@ ], "deploy": { "message": "Site Update." - } + }, + "plugins": [ + "hiddenSiteNav" + ] } From 88bb89f2b6c7a9a13019afe6e7ace16d5ca12274 Mon Sep 17 00:00:00 2001 From: "ALZAHRANI-PC\\riyad" Date: Thu, 12 Aug 2021 06:15:10 +0300 Subject: [PATCH 03/13] Correct path to hiddenSiteNav plugin --- packages/core/template/default/site.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/core/template/default/site.json b/packages/core/template/default/site.json index 441a8c3fd4..e2cbe3f01d 100755 --- a/packages/core/template/default/site.json +++ b/packages/core/template/default/site.json @@ -25,6 +25,6 @@ "message": "Site Update." }, "plugins": [ - "hiddenSiteNav" + "./plugins/hiddenSiteNav.js" ] } From 29a26b6d6446a4a4fdcd9e01820f6883149ce3b5 Mon Sep 17 00:00:00 2001 From: "ALZAHRANI-PC\\riyad" Date: Thu, 12 Aug 2021 06:18:25 +0300 Subject: [PATCH 04/13] Add return statement to postRender --- packages/core/template/plugins/hiddenSiteNav.js | 2 ++ 1 file changed, 2 insertions(+) diff --git a/packages/core/template/plugins/hiddenSiteNav.js b/packages/core/template/plugins/hiddenSiteNav.js index 3f90684c4d..2b4f6b8466 100644 --- a/packages/core/template/plugins/hiddenSiteNav.js +++ b/packages/core/template/plugins/hiddenSiteNav.js @@ -42,5 +42,7 @@ module.exports = { $('#site-nav-hide-button').attr('hidden', 'hidden'); $('#site-nav-show-button').removeAttr('hidden'); }); + + return $.html(); } } \ No newline at end of file From f9378ac5636241cc28b0fe1d9b534be324d78a29 Mon Sep 17 00:00:00 2001 From: "ALZAHRANI-PC\\riyad" Date: Thu, 12 Aug 2021 07:35:26 +0300 Subject: [PATCH 05/13] Remove path from plugin name of hiddenSiteNav --- packages/core/template/default/site.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/core/template/default/site.json b/packages/core/template/default/site.json index e2cbe3f01d..441a8c3fd4 100755 --- a/packages/core/template/default/site.json +++ b/packages/core/template/default/site.json @@ -25,6 +25,6 @@ "message": "Site Update." }, "plugins": [ - "./plugins/hiddenSiteNav.js" + "hiddenSiteNav" ] } From d6714d10565017d3d962c21917429a7ec2148413 Mon Sep 17 00:00:00 2001 From: "ALZAHRANI-PC\\riyad" Date: Thu, 12 Aug 2021 07:40:48 +0300 Subject: [PATCH 06/13] Move hiddenSiteNav.js to core/src/plugins/ --- packages/core/{template => src}/plugins/hiddenSiteNav.js | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename packages/core/{template => src}/plugins/hiddenSiteNav.js (100%) diff --git a/packages/core/template/plugins/hiddenSiteNav.js b/packages/core/src/plugins/hiddenSiteNav.js similarity index 100% rename from packages/core/template/plugins/hiddenSiteNav.js rename to packages/core/src/plugins/hiddenSiteNav.js From f3885941fb771b644cd37ed643a6d07445bad5d7 Mon Sep 17 00:00:00 2001 From: "ALZAHRANI-PC\\riyad" Date: Thu, 12 Aug 2021 07:42:27 +0300 Subject: [PATCH 07/13] Fix plugin loading issues --- packages/core/src/plugins/hiddenSiteNav.js | 42 +++++++++++----------- 1 file changed, 21 insertions(+), 21 deletions(-) diff --git a/packages/core/src/plugins/hiddenSiteNav.js b/packages/core/src/plugins/hiddenSiteNav.js index 2b4f6b8466..617eb69fdf 100644 --- a/packages/core/src/plugins/hiddenSiteNav.js +++ b/packages/core/src/plugins/hiddenSiteNav.js @@ -3,7 +3,7 @@ const cheerio = module.parent.require('cheerio'); module.exports = { processNode: (pluginContext, node) => { - if (node.attribs.slot === 'brand') { + if (node.attribs.hasOwnProperty('#brand')) { cheerio(node) .children('.navbar-brand') .removeAttr('slot') @@ -12,37 +12,37 @@ module.exports = { '' ) .before( '' - ) + ); } if (node.attribs.id === 'site-nav') { cheerio(node).attr('hidden', 'hidden'); } }, - postRender: (pluginContext, frontMatter, content) => { - const $ = cheerio.load(content, { xmlMode: false }); - $('#site-nav-show-button').click(() => { - $('#site-nav').removeAttr('hidden'); - $('#site-nav-hide-button').removeAttr('hidden'); - $('#site-nav-show-button').attr('hidden', 'hidden'); - }); - - $('#site-nav-hide-button').click(() => { - $('#site-nav').attr('hidden', 'hidden'); - $('#site-nav-hide-button').attr('hidden', 'hidden'); - $('#site-nav-show-button').removeAttr('hidden'); - }); - - return $.html(); - } -} \ No newline at end of file + getScripts: (pluginContext, frontMatter, content) => [ + '', + '' + ] +} From 35ede5c880aa09507585c15eb9b51653d23ab229 Mon Sep 17 00:00:00 2001 From: "ALZAHRANI-PC\\riyad" Date: Thu, 12 Aug 2021 08:02:00 +0300 Subject: [PATCH 08/13] Enable site nav buttons to adopt the navbar color --- packages/core/src/plugins/hiddenSiteNav.js | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/packages/core/src/plugins/hiddenSiteNav.js b/packages/core/src/plugins/hiddenSiteNav.js index 617eb69fdf..9cd42b5e61 100644 --- a/packages/core/src/plugins/hiddenSiteNav.js +++ b/packages/core/src/plugins/hiddenSiteNav.js @@ -3,6 +3,10 @@ const cheerio = module.parent.require('cheerio'); module.exports = { processNode: (pluginContext, node) => { + if (node.name === 'navbar') { + pluginContext.navbarTheme = node.attribs.type; + } + if (node.attribs.hasOwnProperty('#brand')) { cheerio(node) .children('.navbar-brand') @@ -12,14 +16,14 @@ module.exports = { '' ) .before( '' ); From f3130b54ee8daf51ff6aca808a5b6d8624ebb5e6 Mon Sep 17 00:00:00 2001 From: "ALZAHRANI-PC\\riyad" Date: Thu, 12 Aug 2021 08:02:42 +0300 Subject: [PATCH 09/13] Add navbarTheme to hiddenSiteNav's pluginsContext --- packages/core/template/default/site.json | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/packages/core/template/default/site.json b/packages/core/template/default/site.json index 441a8c3fd4..0916fb40bc 100755 --- a/packages/core/template/default/site.json +++ b/packages/core/template/default/site.json @@ -26,5 +26,10 @@ }, "plugins": [ "hiddenSiteNav" - ] + ], + "pluginsContext": { + "hiddenSiteNav": { + "navbarTheme": "dark" + } + } } From 7a42e6cff582d625860350a2de3a825e822debcb Mon Sep 17 00:00:00 2001 From: "ALZAHRANI-PC\\riyad" Date: Thu, 12 Aug 2021 08:59:11 +0300 Subject: [PATCH 10/13] Add hiddenSiteNav.css --- packages/core/src/plugins/hiddenSiteNav.css | 13 +++++++++++++ 1 file changed, 13 insertions(+) create mode 100644 packages/core/src/plugins/hiddenSiteNav.css diff --git a/packages/core/src/plugins/hiddenSiteNav.css b/packages/core/src/plugins/hiddenSiteNav.css new file mode 100644 index 0000000000..da2346998e --- /dev/null +++ b/packages/core/src/plugins/hiddenSiteNav.css @@ -0,0 +1,13 @@ +/* hiddenSiteNav.css */ +#site-nav-show-button, +#site-nav-hide-button { + margin-right: 10px; +} + +/* Media query settings were copied from core/template/default/stylesheets/main.css */ +@media screen and (max-width: 991.98px) { + #site-nav-show-button, + #site-nav-hide-button { + display: none; + } +} \ No newline at end of file From f14e64640cbdb090c8403090fc6db3b1b70fce0c Mon Sep 17 00:00:00 2001 From: "ALZAHRANI-PC\\riyad" Date: Thu, 12 Aug 2021 08:59:45 +0300 Subject: [PATCH 11/13] Add getLinks to plugin exports --- packages/core/src/plugins/hiddenSiteNav.js | 3 +++ 1 file changed, 3 insertions(+) diff --git a/packages/core/src/plugins/hiddenSiteNav.js b/packages/core/src/plugins/hiddenSiteNav.js index 9cd42b5e61..4dc28bb528 100644 --- a/packages/core/src/plugins/hiddenSiteNav.js +++ b/packages/core/src/plugins/hiddenSiteNav.js @@ -33,6 +33,9 @@ module.exports = { cheerio(node).attr('hidden', 'hidden'); } }, + getLinks: (pluginContext, frontMatter, content) => [ + '' + ], getScripts: (pluginContext, frontMatter, content) => [ '', - '' - ] + if (node.attribs.id === 'site-nav') { + cheerio(node).attr('hidden', 'hidden'); + } + }, + getLinks: (pluginContext, frontMatter, content) => [ + '' + ], + getScripts: (pluginContext, frontMatter, content) => [ + '' + ] } From f1d200999539e5097f1952ae1c665798e2a9ffcc Mon Sep 17 00:00:00 2001 From: "ALZAHRANI-PC\\riyad" Date: Thu, 12 Aug 2021 14:22:42 +0300 Subject: [PATCH 13/13] Adjust code styling for hiddenSiteNav.css --- packages/core/src/plugins/hiddenSiteNav.css | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/packages/core/src/plugins/hiddenSiteNav.css b/packages/core/src/plugins/hiddenSiteNav.css index da2346998e..a8d24a89e4 100644 --- a/packages/core/src/plugins/hiddenSiteNav.css +++ b/packages/core/src/plugins/hiddenSiteNav.css @@ -1,13 +1,13 @@ /* hiddenSiteNav.css */ #site-nav-show-button, #site-nav-hide-button { - margin-right: 10px; + margin-right: 10px; } /* Media query settings were copied from core/template/default/stylesheets/main.css */ @media screen and (max-width: 991.98px) { - #site-nav-show-button, - #site-nav-hide-button { - display: none; - } + #site-nav-show-button, + #site-nav-hide-button { + display: none; + } } \ No newline at end of file