From 25648911ddbd08f26ea84e375acfeac616573a64 Mon Sep 17 00:00:00 2001 From: Ben <36240171+benkyd@users.noreply.github.com> Date: Tue, 22 Mar 2022 23:35:27 +0000 Subject: [PATCH] InHerAtENCe?!?! Former-commit-id: a5c9ef76c3e33a827750132bcaf758f87498a588 --- README.md | Bin 6572 -> 6564 bytes client/public/components/compact-listing.mjs | 2 +- client/public/components/components.mjs | 18 +++++++++++++++--- client/public/components/css/navbar.js | 7 ------- client/public/components/navbar.mjs | 7 +++++++ 5 files changed, 23 insertions(+), 11 deletions(-) delete mode 100644 client/public/components/css/navbar.js diff --git a/README.md b/README.md index bdf59bd3751bae16d9f07c0e740e581c5c1f9c22..8fe6ffee28e389764ea7ba7386a65c749723b02c 100644 GIT binary patch delta 15 XcmZ2uyu^6JFY(F$#NSMQC$SFzKzs;e delta 15 XcmZ2tyvBILFY(FW#6L`aByk7;Kqv@T diff --git a/client/public/components/compact-listing.mjs b/client/public/components/compact-listing.mjs index 8faf313..72e9646 100644 --- a/client/public/components/compact-listing.mjs +++ b/client/public/components/compact-listing.mjs @@ -1,7 +1,7 @@ import { RegisterComponent, Component, SideLoad } from './components.mjs'; class CompactProductListing extends Component { - static __IDENTIFY => 'compact-listing'; + static __IDENTIFY() { return 'compact-listing'; } constructor() { super(CompactProductListing); diff --git a/client/public/components/components.mjs b/client/public/components/components.mjs index 17acf25..2863c3b 100644 --- a/client/public/components/components.mjs +++ b/client/public/components/components.mjs @@ -1,5 +1,18 @@ -export async function SideLoad(path) { - return await fetch(path).then(response => response.text()); +// it is important that no more than content than +// neccesary is fetched from the server +const preLoadCache = []; +export function SideLoad(path) { + console.log(preLoadCache); + + return new Promise((resolve) => { + if (preLoadCache[path]) { + resolve(preLoadCache[path]); + } else { + const fetchPromise = fetch(path).then(response => response.text()); + preLoadCache[path] = fetchPromise; + resolve(fetchPromise); + } + }); } export function RegisterComponent(componentClass) { @@ -25,7 +38,6 @@ export class Component extends HTMLElement { OnceRendered() { this.__WARN('Render'); } static __IDENTIFY() { this.__WARN('identify'); } - connectedCallback() { // set up to watch all attributes for changes this.watchAttributeChange(this.attributeChangedCallback.bind(this)); diff --git a/client/public/components/css/navbar.js b/client/public/components/css/navbar.js deleted file mode 100644 index 16f832e..0000000 --- a/client/public/components/css/navbar.js +++ /dev/null @@ -1,7 +0,0 @@ -const menuToggler = document.querySelector('navbar-component').shadowRoot.querySelector('#menu-toggler'); -const navMenu = document.querySelector('navbar-component').shadowRoot.querySelector('.navbar'); - -menuToggler.addEventListener('click', function() { - menuToggler.classList.toggle('menu-active'); - navMenu.classList.toggle('menu-active'); -}); diff --git a/client/public/components/navbar.mjs b/client/public/components/navbar.mjs index 910ea40..6c457dc 100644 --- a/client/public/components/navbar.mjs +++ b/client/public/components/navbar.mjs @@ -15,6 +15,13 @@ class NavBar extends Component { } OnceRendered() { + const menuToggler = document.querySelector('navbar-component').shadowRoot.querySelector('#menu-toggler'); + const navMenu = document.querySelector('navbar-component').shadowRoot.querySelector('.navbar'); + + menuToggler.addEventListener('click', function () { + menuToggler.classList.toggle('menu-active'); + navMenu.classList.toggle('menu-active'); + }); } }