@cagovweb/state-template 6.6.0-beta3 → 6.6.0-beta5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,4 +1,4 @@
1
- var StateTemplateNpmPackageVersion="6.6.0-beta3";
1
+ var StateTemplateNpmPackageVersion="6.6.0-beta5";
2
2
  /*!
3
3
  * Bootstrap v5.3.8 (https://getbootstrap.com/)
4
4
  * Copyright 2011-2025 The Bootstrap Authors (https://github.com/twbs/bootstrap/graphs/contributors)
@@ -8081,113 +8081,12 @@ window.addEventListener("load", () => {
8081
8081
  document.querySelector(".side-navigation")
8082
8082
  );
8083
8083
  if (!sidenavigation || !siteHeader) return;
8084
- const allSidenavLinks = /** @type {NodeListOf<HTMLElement>} */ (
8085
- sidenavigation.querySelectorAll(".side-navigation a")
8086
- );
8087
- const mainContentSideNavCont = sidenavigation.closest("div");
8088
8084
  sidenavigation.id = "side-navigation";
8089
8085
  const topposition = localStorage.getItem("sidebar-scroll");
8090
8086
  const mobileCntls = document.querySelector(".global-header .mobile-controls");
8091
- if (!mobileCntls) return;
8092
- let mobileControlsDisplay = window.getComputedStyle(mobileCntls).display; // Side nav height vs viewport
8093
8087
  const siteHeaderHeight = siteHeader ? siteHeader.clientHeight : 0;
8094
8088
  const mobileView$3 = () =>
8095
8089
  getComputedStyle(mobileCntls)["display"] !== "none";
8096
- let timeout = 0;
8097
- const delay = 250; // delay between calls
8098
- /** @type {HTMLElement} */
8099
- let mobileSideNavDiv,
8100
- /** @type {HTMLDivElement} */ mobileSideNavCont,
8101
- /** @type {HTMLButtonElement} */ sidenavToggleBtn;
8102
-
8103
- const createMobileSideNavButton = () => {
8104
- // get first side nav element
8105
- /** @type {HTMLAnchorElement | null} */
8106
- const sidenavTItle = document.querySelector(".side-navigation a, .sidenav");
8107
-
8108
- if (sidenavTItle) {
8109
- // get text for the button for first side nav element
8110
- let btnText = sidenavTItle.innerText;
8111
- const btnTextSpan = sidenavTItle.querySelector("span")?.innerText || ""; // removing the sr-only span and it's content
8112
- btnText = btnText.replace(btnTextSpan, "").trim();
8113
- // create button container
8114
- const sidenavMobile = document.createElement("aside");
8115
- sidenavMobile.className = "sidenav-mobile-btn";
8116
- const sidenavMobileCont = document.createElement("div");
8117
- sidenavMobileCont.className = "container";
8118
- sidenavMobile.append(sidenavMobileCont);
8119
- // create button
8120
- sidenavToggleBtn = document.createElement("button");
8121
- sidenavToggleBtn.type = "button";
8122
- sidenavToggleBtn.className = "sidenav-toggle";
8123
- sidenavToggleBtn.ariaExpanded = "false";
8124
- sidenavToggleBtn.setAttribute("aria-controls", "side-navigation");
8125
- sidenavToggleBtn.innerText = btnText;
8126
- // create icon
8127
- const arrowIcon = document.createElement("span");
8128
- arrowIcon.ariaHidden = "true";
8129
- arrowIcon.className = "ca-gov-icon-caret-down";
8130
- sidenavToggleBtn.append(arrowIcon);
8131
- // append button into the header
8132
- sidenavMobileCont.append(sidenavToggleBtn);
8133
- siteHeader.after(sidenavMobile);
8134
- // add click event
8135
- sidenavToggleBtn.addEventListener("click", toggleSideNav);
8136
- }
8137
- };
8138
-
8139
- const createmobileSideNavDiv = () => {
8140
- mobileSideNavDiv = document.createElement("aside");
8141
- mobileSideNavDiv.className = "mobile-sidenav";
8142
- mobileSideNavCont = document.createElement("div");
8143
- mobileSideNavCont.className = "container";
8144
- mobileSideNavDiv.append(mobileSideNavCont);
8145
- siteHeader.after(mobileSideNavDiv);
8146
- };
8147
-
8148
- // MOBILE Side nav
8149
- const moveSideNavToHeader = () => {
8150
- if (mobileSideNavCont) {
8151
- mobileSideNavCont.append(sidenavigation);
8152
- }
8153
-
8154
- sidenavigation.ariaHidden = "true";
8155
- allSidenavLinks?.forEach(el => {
8156
- el.tabIndex = -1;
8157
- });
8158
- };
8159
-
8160
- // DESKTOP Side nav
8161
- const moveSideNavToMainContent = () => {
8162
- if (sidenavigation === mainContentSideNavCont) return; //Prevents an error if sidenav is not set up correctly
8163
-
8164
- mainContentSideNavCont?.append(sidenavigation);
8165
- sidenavigation.removeAttribute("aria-hidden");
8166
- allSidenavLinks?.forEach(el => {
8167
- el.removeAttribute("tabindex");
8168
- });
8169
- };
8170
-
8171
- // Mobile Side Nav Button click function
8172
- const toggleSideNav = () => {
8173
- mobileSideNavDiv.classList.toggle("visible");
8174
- // Open
8175
- if (mobileSideNavDiv.classList.contains("visible")) {
8176
- sidenavigation.removeAttribute("aria-hidden");
8177
- sidenavToggleBtn.ariaExpanded = "true";
8178
- allSidenavLinks?.forEach(el => {
8179
- el.removeAttribute("tabindex");
8180
- });
8181
-
8182
- // Closed
8183
- } else {
8184
- sidenavToggleBtn.ariaExpanded = "false";
8185
- sidenavigation.ariaHidden = "true";
8186
- allSidenavLinks?.forEach(el => {
8187
- el.tabIndex = -1;
8188
- });
8189
- }
8190
- };
8191
8090
 
8192
8091
  /**
8193
8092
  * Set active class on nav-heading links
@@ -8239,26 +8138,8 @@ window.addEventListener("load", () => {
8239
8138
  };
8240
8139
 
8241
8140
  // ONLOAD
8242
- addActiveClass();
8243
- createmobileSideNavDiv();
8244
- createMobileSideNavButton();
8245
-
8246
- if (mobileControlsDisplay == "block") {
8247
- moveSideNavToHeader();
8248
- }
8249
- // on resize
8250
- window.addEventListener("resize", () => {
8251
- mobileControlsDisplay = getComputedStyle(mobileCntls).display; // clear the timeout
8252
-
8253
- window.clearTimeout(timeout); // start timing for event "completion"
8254
- timeout = window.setTimeout(sidenavOverflow, delay); // if mobile
8255
- if (mobileControlsDisplay == "block") {
8256
- moveSideNavToHeader(); // if desctop
8257
- } else {
8258
- moveSideNavToMainContent();
8259
- }
8260
- });
8261
8141
  sidenavOverflow();
8142
+ addActiveClass();
8262
8143
  });
8263
8144
 
8264
8145
  //@ts-check