VYPR
Moderate severityNVD Advisory· Published Jun 9, 2025· Updated Jun 10, 2025

@haxtheweb/haxcms-nodejs Iframe Phishing vulnerability

CVE-2025-49139

Description

HAX CMS PHP allows users to manage their microsite universe with a PHP backend. Prior to version 11.0.0, in the HAX site editor, users can create a website block to load another site in an iframe. The application allows users to supply a target URL in the website block. When the HAX site is visited, the client's browser will query the supplied URL. An authenticated attacker can create a HAX site with a website block pointing at an attacker-controlled server running Responder or a similar tool. The attacker can then conduct a phishing attack by convincing another user to visit their malicious HAX site to harvest credentials. Version 11.0.0 contains a patch for the issue.

AI Insight

LLM-synthesized narrative grounded in this CVE's description and references.

HAX CMS PHP prior to 11.0.0 allows authenticated attackers to load an iframe with a malicious URL, enabling credential harvesting via phishing.

Root

Cause

The vulnerability exists in the HAX site editor, where users can create a website block that loads another site in an iframe. The application does not validate or restrict the target URL supplied by the user, allowing arbitrary URLs to be embedded [1].

Exploitation

An authenticated attacker can create a HAX site with a website block pointing to an attacker-controlled server running Responder or a similar tool. The attacker then convinces another user to visit the malicious HAX site. When the victim visits, the iframe loads the attacker's server, which prompts the user to sign in, harvesting their credentials [4].

Impact

Successful exploitation allows the attacker to conduct a phishing attack and capture victim credentials, including password hashes, when the user enters them on the fake login prompt [4].

Mitigation

The issue is fixed in version 11.0.0 of HAX CMS PHP. Users should upgrade to the latest version to prevent this attack [1].

AI Insight generated on May 20, 2026. Synthesized from this CVE's description and the cited reference URLs; citations are validated against the source bundle.

Affected packages

Versions sourced from the GitHub Security Advisory.

PackageAffected versionsPatched versions
@haxtheweb/haxcms-nodejsnpm
< 11.0.011.0.0

Affected products

2
  • HAX CMS/HAXcmsllm-fuzzy
    Range: <11.0.0
  • haxtheweb/issuesv5
    Range: < 11.0.0

Patches

1
5368eb9b278c

https://github.com/haxtheweb/issues/security/advisories/GHSA-v3ph-2q5q-cg88

18 files changed · +15740 243
  • src/public/build/es6/node_modules/@haxtheweb/glossy-portfolio-theme/glossy-portfolio-theme.js+166 15 modified
    @@ -2,35 +2,186 @@
      * Copyright 2025 NazmanRosman
      * @license Apache-2.0, see LICENSE for full text.
      */
    -import{html as o,css as t}from"../../lit/index.js";import{HAXCMSLitElementTheme as s}from"../haxcms-elements/lib/core/HAXCMSLitElementTheme.js";import{store as i}from"../haxcms-elements/lib/core/haxcms-site-store.js";import{autorun as r,toJS as e}from"../../mobx/dist/mobx.esm.js";import{DDDSuper as l}from"../d-d-d/d-d-d.js";import{I18NMixin as p}from"../i18n-manager/lib/I18NMixin.js";import"./lib/glossy-portfolio-card.js";import"./lib/glossy-portfolio-header.js";import"./lib/glossy-portfolio-page.js";import"./lib/glossy-portfolio-home.js";import"./lib/glossy-portfolio-grid.js";import"./lib/glossy-portfolio-about.js";export class GlossyPortfolioTheme extends(l(p(s))){static get tag(){return"glossy-portfolio-theme"}constructor(){super(),this.title="",this.currentView="home",this.t=this.t||{},this.t={...this.t,title:"Title"}}static get properties(){return{...super.properties,title:{type:String},currentView:{type:String}}}disconnectedCallback(){if(this.__disposer)for(var o in this.__disposer)this.__disposer[o].dispose();super.disconnectedCallback()}static get styles(){return[super.styles,t`
    -      :host{
    +import{html as t,css as e}from"../../lit/index.js";import{HAXCMSLitElementTheme as o}from"../haxcms-elements/lib/core/HAXCMSLitElementTheme.js";import{store as i}from"../haxcms-elements/lib/core/haxcms-site-store.js";import{autorun as r,toJS as s}from"../../mobx/dist/mobx.esm.js";import{DDDSuper as a}from"../d-d-d/d-d-d.js";import{I18NMixin as l}from"../i18n-manager/lib/I18NMixin.js";import{DDDVariables as n}from"../d-d-d/lib/DDDStyles.js";import"../haxcms-elements/lib/ui-components/active-item/site-active-title.js";import"../bootstrap-theme/lib/BootstrapBreadcrumb.js";import"../haxcms-elements/lib/ui-components/navigation/site-breadcrumb.js";import"./lib/glossy-portfolio-card.js";import"./lib/glossy-portfolio-header.js";import"./lib/glossy-portfolio-footer.js";import"./lib/glossy-portfolio-home.js";import"./lib/glossy-portfolio-grid.js";import"./lib/glossy-portfolio-about.js";import"./lib/glossy-portfolio-breadcrumb.js";export class GlossyPortfolioTheme extends(a(l(o))){static get tag(){return"glossy-portfolio-theme"}constructor(){super(),this.title="",this.activeLayout="grid",this.activeParent="",this.relatedItems=[],this.childrenArray=[],this.__disposer=this.__disposer||[],r((t=>{const e=s(i.activeItem);if(e){this.activeItem=e,this.activeParent=i.manifest.items.find((t=>e.parent===t.id))||"";const t=i.getItemChildren(i.activeId);t&&(t.length>0?(this.setLayout("grid"),this.childrenArray=[...t]):e.parent?(this.childrenArray=[],this.setLayout("media")):(this.childrenArray=[],this.setLayout("text")))}this.__disposer.push(t)})),r((t=>{const e=s(i.activeItem);if(e){if(this.activeItem=e,this.activeItem.metadata.relatedItems){let t=i.findItem(e.metadata.relatedItems);this.relatedItems.some((e=>e.id===t.id))||this.relatedItems.push(t)}this.__disposer.push(t)}}))}static get properties(){return{...super.properties,title:{type:String},activeLayout:{type:String},activeItems:{type:Array},activeParent:{type:Object},relatedItem:{type:Object},childrenArray:{type:Array},categoryTags:{type:Array},items:{type:Object}}}disconnectedCallback(){if(this.__disposer)for(var t in this.__disposer)this.__disposer[t].dispose();super.disconnectedCallback()}setLayout(t){globalThis.document&&globalThis.document.startViewTransition?globalThis.document.startViewTransition((()=>{this.activeLayout=t})):this.activeLayout=t}firstUpdated(t){super.firstUpdated(t);let e=globalThis.DesignSystemManager.requestAvailability();e.addDesignSystem({name:"glossy-portfolio-theme",styles:[...GlossyPortfolioTheme.styles,n],fonts:["https://fonts.googleapis.com/css2?family=Playfair+Display:ital,wght@0,400..900;1,400..900&family=Source+Code+Pro:ital,wght@0,200..900;1,200..900&family=Work+Sans:ital,wght@0,100..900;1,100..900&display=swap","https://fonts.googleapis.com/css2?family=Manrope:wght@200..800&display=swap","https://fonts.googleapis.com/css2?family=Inter:ital,opsz,wght@0,14..32,100..900;1,14..32,100..900&display=swap"],hax:!0}),e.active="glossy-portfolio-theme"}static get styles(){return[super.styles,e`
    +      * {
    +        box-sizing: border-box;
    +    
             --bg-color: #111111;
             --main-font: "Manrope", "Manrope Placeholder", sans-serif;
             --max-width: 1200px;
             --page-padding: 0 25px;
    +        --link-color: #6cddff;
    +        --link-color-hover: #9ae7ff;
    +        --main-font-size: 18px;
    +        
             --mobile-page-padding: 0 15px;
    +
             
    -    
           }
    - 
    -      
    +      :root, html, body{
    +        /* font-size: 124px; */
    +        font-family: var(--main-font);
    +        color: white;
    +        background-color: var(--bg-color);
    +        font-size: var(--main-font-size);
    +
    +      }
    +
           :host {
             display: block;
             color: var(--ddd-theme-primary);
    -        background-color: var(--bg-color);
             font-family: var(--main-font);
             margin: auto;
             box-sizing: border-box;
             overflow: visible;
             min-height: 100vh;
    +        background-color: var(--bg-color);
    +
    +      }
    +      /* text style */
    +      p, a, blockquote, pre, code, span, strong, em {
    +        margin: 1em 0; /* Top and bottom margins equal to the font size, no left/right margin */
    +        font-size: 1rem;
    +        font-weight: 400;
    +        line-height: 1.8;
    +        font-family: inherit;
    +
    +      }
    +      
    +      li{
    +        font-size: 1rem;
    +        font-weight: 400;
    +        line-height: 1.8;
    +        font-family: inherit;
    +      }
    +
    +      ol, ul{
    +        margin-bottom: 1em;
    +      }
    +      
    +      p, h1, h2, h3, h4, h5, h6, li, a, blockquote, pre, code, span, strong, em {
    +        max-width: 840px;
    +        /* letter-spacing: .01em; */
    +      }
    +      h1, h2, h3, h4, h5, h6 {
    +        margin: 0.5em 0; /* Slightly smaller margins for headings */
    +      }
    +      h1 {
    +        font-size: 3rem;
    +        font-weight: 700;
    +        line-height: 1.2;
    +        font-family: inherit;
    +
    +      }
    +
    +      h2 {
    +        font-size: 2rem;
    +        font-weight: 700;
    +        line-height: 1.3;
    +        font-family: inherit;
    +
    +      }
    +      h3{
    +        font-size: 1.75rem; /* 28px if root font size is 16px */
    +        font-weight: 700;
    +        line-height: 1.4; 
    +        font-family: inherit;
    +
    +      }
    +
    +      a {
    + 
    +        text-decoration: none;
    +        color: var(--link-color); /* Sky Blue */
    +        font-family: inherit;
    +
    +      }
    +      
    +      a:hover {
    +        color: var(--link-color-hover); /* Bright Cyan for hover effect */
    +        text-decoration: underline;
    +      }
    +      
    +      /* wrapper style */
    +      site-active-title h1{
    +        margin-bottom: 0;
    +        /* margin-top: 0.25em; */
    +      }
    +      .wrapper {
    +        /* min-width: 100%; */
    +        max-width: var(--max-width);
    +        padding: var(--page-padding);
    +        /* background-color: red; */
    +        margin: 0 auto;
    +
    +      }
    +
    +      #contentcontainer {
    +        min-width: 100%;
    +      }
    +
    +      site-breadcrumb {
    +        color: white;
    +      }
    +
    +      glossy-portfolio-footer{
    +        position: relative;
    +        bottom: 0;
    +        width: 100%;
    +      }
    +      .body-wrapper { 
    +        display: flex;
    +        flex-direction: column;
    +        min-height: 100vh;
    +      }
    +
    +      .grow {
    +        flex: 1 0 auto; /* Allow this element to grow and fill available space */
    +      }
    +      .not-grow {
    +        flex: 0 0 auto; /* Prevent this element from growing */
           }
    -    `]}render(){if("home"===this.currentView)return o`
    -      <div id="contentcontainer">
    -        <div id="slot"><slot></slot></div>
    -      </div>
    -      <glossy-portfolio-home></glossy-portfolio-home>
    -      <!-- <glossy-portfolio-about></glossy-portfolio-about> -->
    -      <!-- <glossy-portfolio-page></glossy-portfolio-page> -->
    -      <!-- <glossy-portfolio-grid class="projects"></glossy-portfolio-grid> -->
     
    -      `}static get haxProperties(){return new URL(`./lib/${this.tag}.haxProperties.json`,import.meta.url).href}}globalThis.customElements.define(GlossyPortfolioTheme.tag,GlossyPortfolioTheme);
    \ No newline at end of file
    +  
    +      /* Extra small devices (phones) */
    +      @media (max-width: 575.98px) {
    +        :root, html, body{
    +          /* font-size: 124px; */
    +          font-family: var(--main-font);
    +          color: white;
    +          background-color: var(--bg-color);
    +          font-size: 14px;
    +
    +       }
    +      }
    +    `]}render(){const e=this.activeItem?.title||"Default Title";return t`
    +    <!-- temporary margin-top  -->
    +<div class="body-wrapper" style="margin-top: 150px"> 
    +  <div id="contentcontainer" class="grow">
    +    <div class="wrapper">
    +      <glossy-portfolio-breadcrumb></glossy-portfolio-breadcrumb>
    +
    +      <site-active-title></site-active-title>          
    +      <div id="slot"><slot></slot></div>
    +    </div>
    +
    +  </div> 
    +
    +  <glossy-portfolio-header></glossy-portfolio-header>
    +
    +  <!-- display grid of children items -->
    +  ${this.childrenArray&&this.childrenArray.length>0?t` <glossy-portfolio-grid class="grow" title=${e} .data=${this.childrenArray} style=""></glossy-portfolio-grid>`:""}
    +
    +  <!-- display grid of related items -->
    +  ${this.relatedItems&&this.relatedItems.length>0?t` <glossy-portfolio-grid class="grow" title="RELATED CONTENT" .data=${this.relatedItems} style=""></glossy-portfolio-grid>`:""}
    +  <footer><glossy-portfolio-footer class="not-grow"></glossy-portfolio-footer></footer>
    +  <!-- <glossy-portfolio-footer></glossy-portfolio-footer> -->
    +
    +
    +
    +</div>  
    +
    +       
    +       
    +
    +`}static get haxProperties(){return new URL(`./lib/${this.tag}.haxProperties.json`,import.meta.url).href}}globalThis.customElements.define(GlossyPortfolioTheme.tag,GlossyPortfolioTheme);
    \ No newline at end of file
    
  • src/public/build/es6/node_modules/@haxtheweb/glossy-portfolio-theme/lib/components/data (1).json+15307 0 added
  • src/public/build/es6/node_modules/@haxtheweb/glossy-portfolio-theme/lib/glossy-portfolio-breadcrumb.js+77 0 added
    @@ -0,0 +1,77 @@
    +/**
    + * Copyright 2025 NazmanRosman
    + * @license Apache-2.0, see LICENSE for full text.
    + */
    +import{LitElement as e,html as t,css as i}from"../../../lit/index.js";import{DDDSuper as s}from"../../d-d-d/d-d-d.js";import{I18NMixin as r}from"../../i18n-manager/lib/I18NMixin.js";import{SiteBreadcrumb as o}from"../../haxcms-elements/lib/ui-components/navigation/site-breadcrumb.js";import{store as l}from"../../haxcms-elements/lib/core/haxcms-site-store.js";import{autorun as a,toJS as m}from"../../../mobx/dist/mobx.esm.js";export class GlossyPortfolioBreadcrumb extends(s(r(e))){static get tag(){return"glossy-portfolio-breadcrumb"}static get styles(){return[super.styles,i`
    +        :host {
    +          display: block;
    +          box-sizing: border-box;
    +        }
    +        ol.breadcrumb{
    +          list-style: none;
    +          margin: 0;
    +          padding: 0;
    +          display: flex;
    +          flex-direction: row;
    +          flex-wrap: wrap;
    +          font-family: inherit;
    +          font-size: 0.9rem;
    +          gap: 8px;
    +          list-style: ">";
    +          list-style-position: inside; /* Place bullets inside the container */
    +
    +        }
    +
    +
    +        ol.breadcrumb li {
    +          /* padding-left: 8px; */
    +          font-size: 0.9rem;
    +          font-weight: 300;
    +        }
    +        ol.breadcrumb li a {
    +          margin-left: 4px;
    +          font-size: 0.9rem;
    +          /* color: var(--link-color); */
    +          color: #ffffffa6;
    +          font-weight: 400;
    +        }
    +        ol.breadcrumb li a:hover {
    +          color: var(--link-color);
    +
    +        }
    +        ol.breadcrumb li::marker {
    +          font-size: 0.9rem;
    +          color: #ffffffa6;
    +        }
    +        ol.breadcrumb li:last-child a{
    +          color: white;
    +        }
    +        ol.breadcrumb li:last-child a:hover{
    +          text-decoration: none;
    +          cursor: default
    +        }
    +        ol.breadcrumb li:first-child::marker {
    +          content: "";
    +          
    +        }
    +        ol.breadcrumb li:first-child a {
    +          margin-left: 0;
    +      
    +        }
    + 
    +
    +      `]}constructor(){super(),this.__disposer=[],this.items=[],this.includeHome=!1,this.t=this.t||{},this.t={...this.t,home:"Home"}}render(){return t` ${this.items.length>0?t`
    +          <ol
    +            class="breadcrumb"
    +            itemscope
    +            itemtype="https://schema.org/BreadcrumbList"
    +          >
    +            ${this.items.map((e=>t`<li
    +                  itemprop="itemListElement"
    +                  itemscope
    +                  itemtype="https://schema.org/ListItem"
    +                >
    +                  <a itemprop="item" href="${e.slug}">${e.title}</a>
    +                </li>`))}
    +          </ol>
    +        `:""}`}static get properties(){return{...super.properties,items:{type:Array},editMode:{type:Boolean,reflect:!0,attribute:"edit-mode"},includeHome:{type:Boolean,reflect:!0,attribute:"include-home"}}}firstUpdated(e){super.firstUpdated&&super.firstUpdated(e),a((e=>{this.editMode=m(l.editMode),this.__disposer.push(e)})),a((e=>{this._activeItemChanged(m(l.activeItem)),this.__disposer.push(e)}))}_activeItemChanged(e){const t=e;if(t&&this.shadowRoot){var i=[{title:t.title,slug:t.slug}];let e=t,s=m(l.routerManifest);for(;e&&null!=e.parent;)e=s.items.find((t=>t.id==e.parent)),e&&i.unshift({title:e.title,slug:e.slug});this.includeHome&&i.unshift({title:this.t.home,slug:l.homeLink}),this.includeHome||1!==i.length?this.includeHome&&2===i.length&&i[0].slug===i[1].slug?this.items=[]:this.items=[...i]:this.items=[]}}disconnectedCallback(){for(var e in this.__disposer)this.__disposer[e].dispose();super.disconnectedCallback()}static get haxProperties(){return new URL(`./lib/${this.tag}.haxProperties.json`,import.meta.url).href}}globalThis.customElements.define(GlossyPortfolioBreadcrumb.tag,GlossyPortfolioBreadcrumb);
    \ No newline at end of file
    
  • src/public/build/es6/node_modules/@haxtheweb/glossy-portfolio-theme/lib/glossy-portfolio-card.js+9 11 modified
    @@ -2,7 +2,7 @@
      * Copyright 2025 NazmanRosman
      * @license Apache-2.0, see LICENSE for full text.
      */
    -import{LitElement as t,html as o,css as r}from"../../../lit/index.js";import{DDDSuper as i}from"../../d-d-d/d-d-d.js";import{I18NMixin as a}from"../../i18n-manager/lib/I18NMixin.js";export class GlossyPortfolioCard extends(i(a(t))){static get tag(){return"glossy-portfolio-card"}constructor(){super(),this.title="Title",this.thumbnail="impactra.png",this.link="https://google.com",this.tags=[],this.t=this.t||{},this.t={...this.t,title:"Title"}}static get properties(){return{...super.properties,title:{type:String},thumbnail:{type:String},link:{type:String},tags:{type:Array}}}static get styles(){return[super.styles,r`
    +import{LitElement as t,html as o,css as r}from"../../../lit/index.js";import{DDDSuper as i}from"../../d-d-d/d-d-d.js";import{I18NMixin as a}from"../../i18n-manager/lib/I18NMixin.js";export class GlossyPortfolioCard extends(i(a(t))){static get tag(){return"glossy-portfolio-card"}constructor(){super(),this.title="Title",this.thumbnail="https://img.freepik.com/premium-photo/cool-cat-wearing-pink-sunglasses-with-neon-light-background_514761-16858.jpg",this.slug="https://google.com",this.tags=[]}static get properties(){return{...super.properties,title:{type:String},thumbnail:{type:String},slug:{type:String},tags:{type:Array}}}static get styles(){return[super.styles,r`
           :host {
             display: block;
             
    @@ -35,12 +35,12 @@ import{LitElement as t,html as o,css as r}from"../../../lit/index.js";import{DDD
             bottom: 36px;
             left: 36px;
             font-family: "Manrope", "Manrope Placeholder", sans-serif;
    -        font-size: 22px;
    +        font-size: 1.25rem;
             color: white;
             opacity: 0;
             font-weight: 500;
             text-shadow: 1px 1px 7px rgba(0, 0, 0, 0.5); /* Horizontal offset, vertical offset, blur radius, color */
    -
    +        width: 70%;
             
           }
           .arrow{
    @@ -97,24 +97,22 @@ import{LitElement as t,html as o,css as r}from"../../../lit/index.js";import{DDD
             }
     
             .arrow-shape{
    -          opacity: 1;
    -          transform: scale(0.3) rotate(0);
    -          right:24px;
    +          display: none;
             }
             .arrow-box{
    -          opacity: 0.3;
    -          right:24px;
    +          display: none;
             }
           }
     
     
         `]}render(){return o`
    -<a href="https://google.com"  target="_blank" rel="noopener">
    +<a href=${this.slug}>
       <div class="container">
    -    <img src=${`/lib/thumbnails/${this.thumbnail}`} class="thumbnail">
    +    <img src=${this.thumbnail} class="thumbnail">
         <div class="title">${this.title}</div>
         <div class="arrow arrow-box"></div>
    -    <img src="lib/components/arrow.png" class="arrow arrow-shape">
    +    <!-- <img src="lib/components/arrow.png" class="arrow arrow-shape"> -->
    +    <img src="https://github.com/NazmanRosman/graphic-portfolio/blob/main/lib/components/arrow.png?raw=true" class="arrow arrow-shape">
       </div>
     </a>
     `}static get haxProperties(){return new URL(`./lib/${this.tag}.haxProperties.json`,import.meta.url).href}}globalThis.customElements.define(GlossyPortfolioCard.tag,GlossyPortfolioCard);
    \ No newline at end of file
    
  • src/public/build/es6/node_modules/@haxtheweb/glossy-portfolio-theme/lib/glossy-portfolio-footer.js+62 0 added
    @@ -0,0 +1,62 @@
    +/**
    + * Copyright 2025 NazmanRosman
    + * @license Apache-2.0, see LICENSE for full text.
    + */
    +import{LitElement as e,html as t,css as i}from"../../../lit/index.js";import{DDDSuper as s}from"../../d-d-d/d-d-d.js";import{I18NMixin as r}from"../../i18n-manager/lib/I18NMixin.js";import{store as n}from"../../haxcms-elements/lib/core/haxcms-site-store.js";import{autorun as a,toJS as o}from"../../../mobx/dist/mobx.esm.js";import{licenseList as l}from"../../license-element/license-element.js";export class GlossyPortfolioFooter extends(s(r(e))){static get tag(){return"glossy-portfolio-footer"}constructor(){super(),this.title="Title",this.homeLink="",this.__disposer=this.__disposer||[],a((e=>{this.manifest=o(n.manifest);let t=new l;this.manifest.license&&t[this.manifest.license]&&(this.licenseName=t[this.manifest.license].name,this.licenseLink=t[this.manifest.license].link,this.licenseImage=t[this.manifest.license].image),this.__disposer.push(e)})),a((e=>{this.lastUpdated=new Date(1e3*n.manifest.metadata.site.updated).toDateString(),this.copyrightYear=new Date(1e3*n.manifest.metadata.site.created).getFullYear(),this.__disposer.push(e)}))}static get properties(){return{...super.properties,title:{type:String},thumbnail:{type:String},link:{type:String},topItems:{type:Array}}}static get styles(){return[super.styles,i`
    +      *{
    +        box-sizing: border-box;
    +      }
    +      .background{
    +        background-color: #161616;
    +        display: flex;
    +        flex-direction: column;
    +        justify-content: center;
    +        align-items: center;
    +      }
    +      .wrapper {
    +        height: auto;
    +        padding: var(--page-padding);
    +        padding-top: 20px;
    +        padding-bottom: 20px;
    +        display: grid;
    +        grid-template-columns: 1fr auto 1fr; /* Three columns: left, center, right */
    +        align-items: center;
    +        width: 100%;
    +        max-width: var(--max-width);
    +
    +        
    +      }
    +      p {
    +        margin: 0;
    +        font-family: Inter;
    +        color: #ffffff97;
    +        font-size: 0.8rem;
    +        text-align: center; /* Center-align text inside the grid cell */
    +        font-weight: 300;
    +      }
    +      .item {
    +        justify-self: start; /* Align left-side text to the start */
    +      }
    +      .center {
    +        justify-self: center; /* Center-align the copyright text */
    +      }
    +      .license {
    +        justify-self: end; /* Align the license image to the end */
    +      }
    +
    +
    +    `]}render(){return t`
    +<div class="background">
    +  <div class="wrapper">
    +      <p class="item"> Last updated: ${this.lastUpdated} </p>
    +      <p class="center">© ${this.copyrightYear}   </p>
    +    <div class="license item"> 
    +      <a href="${this.licenseLink}" target="_blank">
    +        <img src="${this.licenseImage}" alt="${this.licenseName}" />
    +      </a>
    +    </div>
    +  </div>
    +</div>
    +
    +
    +  `}static get haxProperties(){return new URL(`./lib/${this.tag}.haxProperties.json`,import.meta.url).href}}globalThis.customElements.define(GlossyPortfolioFooter.tag,GlossyPortfolioFooter);
    \ No newline at end of file
    
  • src/public/build/es6/node_modules/@haxtheweb/glossy-portfolio-theme/lib/glossy-portfolio-grid.js+11 9 modified
    @@ -2,7 +2,7 @@
      * Copyright 2025 NazmanRosman
      * @license Apache-2.0, see LICENSE for full text.
      */
    -import{LitElement as t,html as i,css as e}from"../../../lit/index.js";import{DDDSuper as a}from"../../d-d-d/d-d-d.js";import{I18NMixin as r}from"../../i18n-manager/lib/I18NMixin.js";import{store as s}from"../../haxcms-elements/lib/core/haxcms-site-store.js";import{autorun as o,toJS as l}from"../../../mobx/dist/mobx.esm.js";export class GlossyPortfolioGrid extends(a(r(t))){static get tag(){return"glossy-portfolio-grid"}constructor(){super(),this.title="Title",this.thumbnail="impactra.png",this.link="https://google.com",this.filtersList=new Set,this.filteredData=[],this.data=[],this.activeFilter="",this.t=this.t||{},this.t={...this.t,title:"Title"},o((()=>{this.data=l(s.manifest.items),console.log(this.data)}))}static get properties(){return{...super.properties,title:{type:String},thumbnail:{type:String},link:{type:String},filteredData:{type:Array},data:{type:Array},filtersList:{type:Array}}}static get styles(){return[super.styles,e`
    +import{LitElement as t,html as i,css as e}from"../../../lit/index.js";import{DDDSuper as a}from"../../d-d-d/d-d-d.js";import{I18NMixin as r}from"../../i18n-manager/lib/I18NMixin.js";import{store as s}from"../../haxcms-elements/lib/core/haxcms-site-store.js";import{autorun as o,toJS as l}from"../../../mobx/dist/mobx.esm.js";export class GlossyPortfolioGrid extends(a(r(t))){static get tag(){return"glossy-portfolio-grid"}constructor(){super(),this.filtersList=[],this.filteredData=[],this.data=[],this.activeFilter=""}static get properties(){return{...super.properties,filteredData:{type:Array},data:{type:Array},filtersList:{type:Array}}}static get styles(){return[super.styles,e`
           :host {
             display: block;
             color: white;
    @@ -23,16 +23,17 @@ import{LitElement as t,html as i,css as e}from"../../../lit/index.js";import{DDD
             width: 100%;
             padding: var(--page-padding);
             min-height: 100vh;
    +        padding-bottom: 30px;
           }
           .projects-header{
             display: flex;
             justify-content: space-between;
             padding: 50px 0;
             max-width: 100%;
           }
    -      .latest-projects{
    -        font-size: 18px;
    -        font-weight: 500;
    +      .grid-title{
    +        font-size: 1rem;
    +        font-weight: 800;
             letter-spacing: 1.7px;
     
           }
    @@ -49,7 +50,7 @@ import{LitElement as t,html as i,css as e}from"../../../lit/index.js";import{DDD
     
           .filter{
             font-family: "Inter", "Inter Placeholder", sans-serif;
    -        font-size: 16px;
    +        font-size: 1rem;
             color: rgb(153, 153, 153);
           }
           .card-container {
    @@ -97,7 +98,7 @@ import{LitElement as t,html as i,css as e}from"../../../lit/index.js";import{DDD
     <div class = "container-background">
       <div class="projects-header">
     
    -    <div class="latest-projects">LATEST PROJECTS</div>
    +    <div class="grid-title">${this.title.toUpperCase()}</div>
         <div class="filters">
           <button class="filter active" name="all" @click="${this.updateFilter}">All</button>
           
    @@ -112,14 +113,15 @@ import{LitElement as t,html as i,css as e}from"../../../lit/index.js";import{DDD
     
       </div>
       <div class="card-container">
    -
         ${this.filteredData.map((t=>i`
             <glossy-portfolio-card class="card" 
             title="${t.title}" 
    -        thumbnail=${t.thumbnail}>
    +        thumbnail=${t.metadata.images[0]?t.metadata.images[0]:"https://img.freepik.com/premium-photo/cool-cat-wearing-pink-sunglasses-with-neon-light-background_514761-16858.jpg"}
    +        slug="${t.slug}"
    +        >
           </glossy-portfolio-card>
           `))}
         </div> 
     </div> 
     
    -`}capitalizeWords(t){return t.split(" ").map((t=>t.charAt(0).toUpperCase()+t.slice(1))).join(" ")}updated(t){super.updated(t),t.has("data")&&(this.data.sort(((t,i)=>t.title.localeCompare(i.title))),this.filteredData=this.data,this.data.forEach((t=>{void 0!==t.metadata.tags&&null!==t.metadata.tags&&t.metadata.tags.split(",").length>0&&this.filtersList.add(t.metadata.tags.split(",")[0])})))}_updateFilter(t,i){this.activeFilter=t.getAttribute("name");this.renderRoot.querySelectorAll(".filter").forEach((t=>t.classList.remove("active"))),i.classList.add("active"),this.filterData()}updateFilter(t){const i=t.target,e=t.currentTarget;globalThis.document.startViewTransition?globalThis.document.startViewTransition((()=>{this._updateFilter(i,e)})):this._updateFilter(i,e)}filterData(){"all"===this.activeFilter?this.filteredData=this.data:(this.filteredData=[],this.data.forEach((t=>{t.tag===this.activeFilter&&this.filteredData.push(t)})))}static get haxProperties(){return new URL(`./lib/${this.tag}.haxProperties.json`,import.meta.url).href}}globalThis.customElements.define(GlossyPortfolioGrid.tag,GlossyPortfolioGrid);
    \ No newline at end of file
    +`}capitalizeWords(t){return t.split(" ").map((t=>t.charAt(0).toUpperCase()+t.slice(1))).join(" ")}updated(t){super.updated(t),t.has("data")&&this.data&&this.data.length>0&&(this.filteredData=this.data,this.filtersList=[],this.data.forEach((t=>{if(void 0!==t.metadata.tags&&null!==t.metadata.tags&&t.metadata.tags.split(",").length>0){const i=t.metadata.tags.split(",")[0];this.filtersList.includes(i)||this.filtersList.push(i)}})))}_updateFilter(t,i){this.activeFilter=t.getAttribute("name");this.renderRoot.querySelectorAll(".filter").forEach((t=>t.classList.remove("active"))),i.classList.add("active"),this.filterData()}updateFilter(t){const i=t.target,e=t.currentTarget;globalThis.document.startViewTransition?globalThis.document.startViewTransition((()=>{this._updateFilter(i,e)})):this._updateFilter(i,e)}filterData(){"all"===this.activeFilter?this.filteredData=this.data:(this.filteredData=[],this.data.forEach((t=>{t.metadata.tags&&t.metadata.tags.includes(this.activeFilter)&&this.filteredData.push(t)})))}static get haxProperties(){return new URL(`./lib/${this.tag}.haxProperties.json`,import.meta.url).href}}globalThis.customElements.define(GlossyPortfolioGrid.tag,GlossyPortfolioGrid);
    \ No newline at end of file
    
  • src/public/build/es6/node_modules/@haxtheweb/glossy-portfolio-theme/lib/glossy-portfolio-header.js+91 40 modified
    @@ -2,17 +2,19 @@
      * Copyright 2025 NazmanRosman
      * @license Apache-2.0, see LICENSE for full text.
      */
    -import{LitElement as i,html as t,css as e}from"../../../lit/index.js";import{DDDSuper as n}from"../../d-d-d/d-d-d.js";import{I18NMixin as o}from"../../i18n-manager/lib/I18NMixin.js";export class GlossyPortfolioHeader extends(n(o(i))){static get tag(){return"glossy-portfolio-header"}constructor(){super(),this.title="Title",this.thumbnail="impactra.png",this.link="https://google.com",this.t=this.t||{},this.t={...this.t,title:"Title"}}static get properties(){return{...super.properties,title:{type:String},thumbnail:{type:String},link:{type:String}}}static get styles(){return[super.styles,e`
    +import{LitElement as e,html as t,css as i}from"../../../lit/index.js";import{DDDSuper as o}from"../../d-d-d/d-d-d.js";import{I18NMixin as r}from"../../i18n-manager/lib/I18NMixin.js";import{store as a}from"../../haxcms-elements/lib/core/haxcms-site-store.js";import{autorun as s,toJS as n}from"../../../mobx/dist/mobx.esm.js";export class GlossyPortfolioHeader extends(o(r(e))){static get tag(){return"glossy-portfolio-header"}constructor(){super(),this.title="Title",this.homeLink="",this.__disposer=this.__disposer||[],s((e=>{let t=a.getItemChildren(null);t&&t.length>0&&(this.topItems=[...t]),this.__disposer.push(e)})),s((e=>{this.homeLink=n(a.homeLink),this.__disposer.push(e)})),s((e=>{this.logo=n(a.logo),console.log(this.logo),this.__disposer.push(e)}))}static get properties(){return{...super.properties,title:{type:String},thumbnail:{type:String},link:{type:String},topItems:{type:Array}}}static get styles(){return[super.styles,i`
           :host {
             display: block;
             
    -        font-family: var(--ddd-font-navigation);
             /* min-width: 400px; */
             height: auto;
    +        background-color: #1d1d1d;
           }
     
           *{
             box-sizing: border-box;
    +        margin: 0;
    +        padding: 0;
           }
     
           ul{
    @@ -21,28 +23,31 @@ import{LitElement as i,html as t,css as e}from"../../../lit/index.js";import{DDD
           }
     
           .container{
    +        background: linear-gradient(180deg, rgba(17, 17, 17, 1) 0%, rgba(17, 17, 17, 0) 100%);;
    +
             display: flex;
             justify-content: space-between;
             align-items: center;
             z-index: 10;
             position: fixed;
             top: 0px;
             width: 100vw;
    -        display: flex;
             position: fixed;
             left: 0;
             right: 0;
    -        padding: 30px 50px 10px 50px;
    -        height: 80px;
    -        /* background-color: #11111150; */
    +        padding: 50px 50px 40px 50px;
    +        /* temporary */
    +        margin-top: 50px;
    +        max-height: 80px;
             font-family: var(--main-font);  
    -        /* position: relative; */
    +        overflow-x: auto;
    +        overflow-y: hidden;
    +
           }
           
     
           .nav-links li{
    -        font-size: 18px;
    -        font-weight: 500;
    +        font-weight: 700;
             font-family: var(--main-font);
     
           }
    @@ -54,8 +59,9 @@ import{LitElement as i,html as t,css as e}from"../../../lit/index.js";import{DDD
           }
     
           .logo{
    -        /* background-color: blue; */
    -        width: 70px;
    +        max-height: 60px;
    +        min-height: 60px;
    +        flex: 0 0 auto;
             position: relative;
             z-index: 10;
           }
    @@ -65,38 +71,71 @@ import{LitElement as i,html as t,css as e}from"../../../lit/index.js";import{DDD
             flex-direction: row;
             align-items: center;
             gap: 50px;
    -        font-size: 18px;
             list-style: none;
           }
    +      li{
    +        flex: 0 1 auto;
    +        text-align: center;
    +      }
           .nav-links{
             transition: all 0.3s ease-in-out;
    -
           }
    -      a{
    +      a, div.header-link{
             all: unset;
             color: white;
    +        text-decoration: none;
    +        font-weight: 500;
    +        font-size: 1rem;
    +
    +      }
    +      a .active-title, div.header-link .active-title {
    +        font-weight: 800;
    +      }
    +      a:hover, div.header-lik:hover{
    +        /* all: unset; */
    +        color: white;
    +        /* font-weight: 500; */
    +
           }
           button{
             all: unset;
             cursor: pointer;
           }
     
    +
           /* Extra small devices (phones) */
           @media (max-width: 575.98px) {
             /* Styles for phones */
             .container{
    -          font-size: 9px;
    -          padding: 15px 0px;
    -
    +          /* padding: 15px 0px; */
    +          padding: 0;
               background: var(--bg-color);
    -
    -        } 
    -        .container{
               flex-wrap: wrap;
    -          height: auto;
    +          align-items: center;
    +          position: fixed;
    +          top: 0;
    +          bottom: 0;
    +          overflow-y: scroll;
    +          overflow-x: hidden;
    +          align-content: start;
    +          height: 60px;
    +
             }
    +
    +        .logo-hamburger{
    +          display: flex;
    +          justify-content: space-between;
    +          width: 100%;
    +          max-height: 60px;
    +          flex: 0 0 auto;
    +        }
    +
    +        /* active after hamburger is clicked */
             .container.active{
    -          padding: 15px 0 0 0;
    +          /* padding: 15px 0 0 0; */
    +          height: auto;
    +          max-height: 100vh;
    +          overflow-y: scroll;
             }
             .nav-links.active{
               display: flex;
    @@ -107,30 +146,31 @@ import{LitElement as i,html as t,css as e}from"../../../lit/index.js";import{DDD
     
               gap: 0px;
               width: 100vw;
    -          padding: 20px 0 0 0;
    +          padding: 0;
               border-radius: 10px;
    +
             }
             
    -        .nav-links li{
    -          font-size: 16px;
     
    -        }
             .hamburger{
               display: block;
               padding-right: 15px;
     
             }
    -        .logo{
    -          width: 60px;
    +        svg.logo{
    +          /* max-height: 60px; */
    +          max-height: 60px;
               padding-left: 15px;
    +
             }
    -   
    +
    +
    +        /* nav links */
             li, a.right-side-item{
               display: flex;
               flex-direction: column;
               justify-content: center;
               width: 100vw;
    -          /* background-color:blue; */
               text-align: center; /* Centers the text horizontally */
               height: 80px;
               
    @@ -141,6 +181,7 @@ import{LitElement as i,html as t,css as e}from"../../../lit/index.js";import{DDD
               text-decoration: none; /* Ensures underline is removed on hover */
     
             }
    +
             
             
           }
    @@ -157,19 +198,29 @@ import{LitElement as i,html as t,css as e}from"../../../lit/index.js";import{DDD
           
     
     
    -    `]}openHamburger(){const i=this.renderRoot.querySelector(".nav-links"),t=this.renderRoot.querySelector(".container");i.classList.toggle("active"),t.classList.toggle("active")}render(){return t`
    +    `]}openHamburger(){const e=this.renderRoot.querySelector(".nav-links"),t=this.renderRoot.querySelector(".container");e.classList.toggle("active"),t.classList.toggle("active")}render(){return t`
     <div class="container">
    -  <img class="logo" src="lib/components/logo.svg" >
    -  <button>
    -    <img @click="${this.openHamburger}" class="hamburger" src="../lib/components/hamburger.svg" width="70px">
    -  </button>
    +  <!-- <img class="logo" src="lib/components/logo.svg" > -->
    +  <div class="logo-hamburger">
    +    <a href="${this.homeLink}">
    +      <img class="logo" src="${function getPostLogo(e){return e.metadata.image?e.metadata.image:a.manifest.metadata.theme.variables.image?n(a.manifest.metadata.theme.variables.image):n(a.manifest.metadata.site.logo)}(a.manifest)}" alt="Logo" />
    +  </a>
    +    <button>
    +      <!-- <img @click="" class="hamburger" src="../lib/components/hamburger.svg" width="70px"> -->
    +      <svg class="hamburger" @click="${this.openHamburger}"  width="800px" height="800px" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
    +        <g id="SVGRepo_bgCarrier" stroke-width="0"/>
    +        <g id="SVGRepo_tracerCarrier" stroke-linecap="round" stroke-linejoin="round"/>
    +        <g id="SVGRepo_iconCarrier"> <path d="M4 18L20 18" stroke="#ffffff" stroke-width="2" stroke-linecap="round"/> <path d="M4 12L20 12" stroke="#ffffff" stroke-width="2" stroke-linecap="round"/> <path d="M4 6L20 6" stroke="#ffffff" stroke-width="2" stroke-linecap="round"/> </g>
    +      </svg>
    +      
    +    </button>
    +  </div>
       <ul class="nav-links">
    -    <li><a class="right-side-item"><div clas="link">Work</div></a></li>
    -    <li><a class="right-side-item"><div clas="link">Play</div></a></li>
    -    <li><a class="right-side-item"><div clas="link">About</div></a></li>
    -    <li><a class="right-side-item"><div clas="link">Resume</div></a></li>
    +    ${Array.from(this.topItems).map((e=>t`
    +        <li><a class="right-side-item" href="${e.slug}"><div class="header-link ${this.toKebabCase(e.title)}">${e.title}</div></a></li>
    +      `))}
       </ul>
       
         
     </div>
    -`}static get haxProperties(){return new URL(`./lib/${this.tag}.haxProperties.json`,import.meta.url).href}}globalThis.customElements.define(GlossyPortfolioHeader.tag,GlossyPortfolioHeader);
    \ No newline at end of file
    +`}toKebabCase(e){return e.replace(/\s+/g,"-")}static get haxProperties(){return new URL(`./lib/${this.tag}.haxProperties.json`,import.meta.url).href}}globalThis.customElements.define(GlossyPortfolioHeader.tag,GlossyPortfolioHeader);
    \ No newline at end of file
    
  • src/public/build/es6/node_modules/@haxtheweb/glossy-portfolio-theme/lib/glossy-portfolio-home.js+3 2 modified
    @@ -2,7 +2,7 @@
      * Copyright 2025 NazmanRosman
      * @license Apache-2.0, see LICENSE for full text.
      */
    -import{LitElement as t,html as i,css as o}from"../../../lit/index.js";import{DDDSuper as e}from"../../d-d-d/d-d-d.js";import{I18NMixin as r}from"../../i18n-manager/lib/I18NMixin.js";export class GlossyPortfolioHome extends(e(r(t))){static get tag(){return"glossy-portfolio-home"}constructor(){super(),this.title="Title",this.t=this.t||{},this.t={...this.t,title:"Title"}}static get properties(){return{...super.properties,title:{type:String}}}static get styles(){return[super.styles,o`
    +import{LitElement as t,html as i,css as o}from"../../../lit/index.js";import{DDDSuper as e}from"../../d-d-d/d-d-d.js";import{I18NMixin as r}from"../../i18n-manager/lib/I18NMixin.js";export class GlossyPortfolioHome extends(e(r(t))){static get tag(){return"glossy-portfolio-home"}constructor(){super(),this.title="Title"}static get properties(){return{...super.properties,title:{type:String}}}static get styles(){return[super.styles,o`
           :host {
             display: block;
             
    @@ -29,7 +29,8 @@ import{LitElement as t,html as i,css as o}from"../../../lit/index.js";import{DDD
           }
     
           .background{
    -        background-image: url("lib/components/bg.webp");
    +        /* background-image: url("lib/components/bg.webp"); */
    +        background-image: url("https://github.com/NazmanRosman/graphic-portfolio/raw/refs/heads/main/lib/components/bg.webp");
             background-attachment: fixed;
             background-size: cover;
             /* background-color: gray; */
    
  • src/public/build/es6/node_modules/@haxtheweb/glossy-portfolio-theme/lib/glossy-portfolio-page.js+0 155 removed
    @@ -1,155 +0,0 @@
    -/**
    - * Copyright 2025 NazmanRosman
    - * @license Apache-2.0, see LICENSE for full text.
    - */
    -import{LitElement as e,html as t,css as i}from"../../../lit/index.js";import{DDDSuper as a}from"../../d-d-d/d-d-d.js";import{I18NMixin as r}from"../../i18n-manager/lib/I18NMixin.js";export class GlossyPortfolioPage extends(a(r(e))){static get tag(){return"glossy-portfolio-page"}constructor(){super(),this.title="Title",this.t=this.t||{},this.t={...this.t,title:"Title"}}static get properties(){return{...super.properties,title:{type:String}}}static get styles(){return[super.styles,i`
    -      :host {
    -        display: block;
    -        /* line-height: 2rem; */
    -        margin: 0;
    -        --project-title-font-size: 28px;
    -        --project-header-font-size: 64px;
    -        --body-font-size: 20px;
    -        font-size: var(--body-font-size);
    -        background-color: var(--bg-color);
    -      }
    -
    -      h1, p, h2, h3{
    -        margin: 0;
    -      }
    -      h3{
    -        font-weight: 500;
    -        margin-top: 50px;
    -        padding: 0 0 20px 0;
    -
    -      }
    -      p{
    -        line-height: 170%;
    -        margin: 0 0 20px 0;
    -      }
    -
    -
    -      .wrapper{
    -        display: flex;
    -        flex-direction: column;
    -        
    -        max-width: var(--max-width); 
    -        margin: 0 auto ;
    -        padding: var(--page-padding);
    -        padding-top: 130px;
    -        color: white;
    -        /* overflow: visible; */
    -      }
    -
    -      .text{
    -        max-width: 840px;
    -      }
    -      
    -      h2.project-title{
    -        margin: 0;
    -        font-weight: 500;
    -        font-size: var(--project-title-font-size);
    -      }
    -
    -      h1.project-header{
    -        margin: 40px 0;
    -        font-weight: 400;
    -        font-size: var(--project-header-font-size);
    -
    -      }
    -
    -
    -      .details-table{
    -        margin: 40px 0 40px 0;
    -        display: grid;
    -        /* border: 1px solid red; */
    -        grid-template-columns: repeat(2, 1fr);
    -        gap: 10px;
    -        justify-content: center;
    -        max-width: var(--max-width);
    -        line-height: 170%; 
    -      }
    -      .detail-header{
    -        color:rgb(128, 128, 128);
    -      }
    -      @media (max-width: 575.98px) {
    -        img{
    -          width: 100%;
    -          height: auto;
    -        }
    -        .details-table{
    -          grid-template-columns: 1fr;
    -          font-size: 16px;
    -          gap: 7px;
    -          margin:0 0 20px 0;
    -
    -        }
    -        h2.project-title{
    -          font-size: 20px;
    -        }
    -        h1.project-header{
    -          font-size: 36px;
    -          margin: 20px 0;
    -        }
    -        p{
    -          font-size: 16px;
    -        }
    -        .wrapper{
    -          padding: var(--mobile-page-padding);
    -          padding-top: 100px;
    -        }
    -
    -      }
    - 
    -
    -    `]}render(){return t`
    -      <glossy-portfolio-header></glossy-portfolio-header>
    -<div class="wrapper">
    -  <div class="text">
    -    
    -    <h2 class="project-title">Rune Wars</h2>
    -    <h1 class="project-header">The future of games.</h1>
    -    <p>Gaming has long been defined by isolated screens.</p>
    -    <p>Augmented reality, however, is upending all of that. The future of gaming is physical, social, and immersed in the real world.</p>
    -    <p>Introducing Rune Wars, the first multi-player game built on Snap's Spectacles</p>
    -    <p><b>- Winner of Snap Inc.'s Prize @ Immerse The Bay 2024 Hackathon -</b></p>
    -  </div>
    -
    -  <div class="text">
    -
    -    <div class="details-table">
    -
    -      <div class="detail-section">
    -        <div class="detail-header">Date</div>
    -        <div class="detail-text">November 2024</div>
    -      </div>
    -      <div class="detail-section">
    -        <div class="detail-header">Duration</div>
    -        <div class="detail-text">36 hours</div>
    -      </div>
    -      <div class="detail-section">
    -        <div class="detail-header">Type</div>
    -        <div class="detail-text">Design, prototyping, AR</div>
    -      </div>
    -      <div class="detail-section">
    -        <div class="detail-header">Achievement</div>
    -        <div class="detail-text">Winner of Snap Inc.'s Prize @ Immerse The Bay 2024 Hackathon</div>
    -      </div>
    -
    -    </div>
    -  </div>
    -
    -  <img src="lib/thumbnails/impactra.png" width="700px">
    -  <div class="text">
    -    <h3>A Vision of Spatial Play.</h3>
    -    <p>Rune Wars is a simple multiplayer combat system helping people connect and exercise in a more engaging way.</p>
    -
    -    <p>Two people play as warriors battling for their honour.</p>
    -
    -    <p>Players shoot rune-enforced stones from one hand using a pinch gesture, and use the other hand to raise temporary walls from the ground using a pinch + drag gesture. These walls are destroyed after 5 seconds.</p>
    -
    -    <p>To win, a player reduce their opponent’s health to zero</p>
    -  </div>
    -  
    -</div>
    -`}static get haxProperties(){return new URL(`./lib/${this.tag}.haxProperties.json`,import.meta.url).href}}globalThis.customElements.define(GlossyPortfolioPage.tag,GlossyPortfolioPage);
    \ No newline at end of file
    
  • src/public/build/es6/node_modules/@haxtheweb/hax-body/lib/hax-store.js+1 1 modified
    @@ -10,4 +10,4 @@ import{LitElement as e,html as t,nothing as i}from"../../../lit/index.js";import
                             >
                           </li>
                         `))}
    -                </ul>`:null,value:{name:"Search "+i.details.title,context:"/",index:i.index,detail:i,program:async(e,t)=>{const a=S(HAXStore.activeApp),o=S(HAXStore.appList[t.index]);a.index!=o.index&&(HAXStore.activeApp=S(HAXStore.appList[t.index]));let r={};r[Object.keys(t.detail.connection.operations.browse.search)[0]]=e,HAXStore.appSearch.updateSearchValues(r);let n=await HAXStore.appSearch.loadAppData(),s=[];return await n.forEach((async e=>{var t=e.map,a=e.type;a&&null!=a&&""!=a&&"undefined"!=a||!t.source||(a=HAXStore.guessGizmoType(t));let o=HAXStore.guessGizmo(a,t,!1,!0);o.length>0&&void 0!==o[0].tag&&(o[0].nextToActive=!0),s.push({title:e.title,image:e.image,tags:[],value:{value:o[0].tag,eventName:"insert-tag",properties:o[0].properties},context:["/","/sources/"+i.details.title.toLowerCase()],eventName:"hax-super-daemon-insert-tag",path:"/sources/"+i.details.title.toLowerCase()})})),s}},context:["HAX","/"],eventName:"super-daemon-run-program",path:"/sources/"+i.details.title.toLowerCase(),priority:"local files"===i.details.title.toLowerCase()?-100:0}),i.connection&&i.connection.protocol&&i.connection.url){let e=globalThis.document.createElement("link");e.rel="preconnect",e.href=i.connection.protocol+"://"+i.connection.url,globalThis.document.head.appendChild(e)}void 0!==e.target.parentElement&&"HAX-STORE"===e.target.parentElement.tagName&&e.target.parentElement.removeChild(e.target)}}_haxStoreRegisterStax(e){e.detail&&(e.detail.index=this.staxList.length,this.staxList=[...this.staxList,e.detail],this.write("staxList",this.staxList,this),void 0!==e.target.parentElement&&"HAX-STORE"===e.target.parentElement.tagName&&e.target.parentElement.removeChild(e.target))}activeBodyIgnoreActive(e){this.activeHaxBody.__ignoreActive=e}dashToCamel(e){return e.replace(/-([a-z])/g,(function(e){return e[1].toUpperCase()}))}async htmlToHaxElements(e){let t=[],i=globalThis.document.createElement("div");if(i.innerHTML=e,i.children){const e=this.validTagList,a=i.children;for(let i=0;i<a.length;i++)void 0!==a[i].tagName&&e.includes(a[i].tagName.toLowerCase())&&t.push(await c(a[i],null))}return t}async nodeToContent(e){if(this.testHook(e,"preProcessNodeToContent")&&(e=await this.runHook(e,"preProcessNodeToContent",[e])),e&&!e.tagName)return e;let t=e.tagName.toLowerCase();this._isSandboxed&&"webview"===t&&(t="iframe");var i="";i+="<"+t;var a=this.elementList[t],o={},r=["data-hax-ray","data-hax-layout","data-hax-grid","data-hax-active",'="true"',"contenteditable","draggable","role"];for(let t=0;t<r.length;t++)e.removeAttribute(r[t]);d(e);for(let t=0,i=e.attributes.length;t<i;++t){var n=e.attributes.item(t).nodeName,s=e.attributes.item(t).value;"style"==n||typeof s!=typeof Object&&s.constructor!==Array?null!=s&&"null"!=s&&(!0===s||"true"===s?o[n]=!0:!1===s||("string"==typeof s&&""!==s?(s=(s=(s=(s=s.replace(new RegExp("&","g"),"&amp;")).replace(new RegExp('"',"g"),"&quot;")).replace(new RegExp("<","g"),"&#60;")).replace(new RegExp(">","g"),"&#62;"),o[n]=s):""===s?(""==s&&""!=e.attributes.item(t).value&&(s=e.attributes.item(t).value),o[n]=s):o[n]=s)):o[n]=JSON.stringify(s).replace(new RegExp('"',"g"),"&quot;")}let l;if(globalThis.customElements.get(t)&&(l=globalThis.customElements.get(t).properties),void 0===l&&(l=e.__data),void 0!==l)for(let t in l){n=m(t),s=null;void 0!==e[t]&&(s=e[t]),l[t].readOnly||l[t].computed||s===l[t].value||n.startsWith("__")||(null==s||"object"!=typeof s&&s.constructor!==Array?null!=s&&"null"!=s&&(!0===s||"true"===s?o[n]=!0:!1===s||("string"==typeof s&&""!==s?(s=(s=(s=(s=s.replace(new RegExp("&","g"),"&amp;")).replace(new RegExp('"',"g"),"&quot;")).replace(new RegExp("<","g"),"&#60;")).replace(new RegExp(">","g"),"&#62;"),o[n]=s):""===s?""==s&&""!=l[t].value?s=l[t].value:""===s&&l[t].value:o[n]=s)):(s.constructor===Array&&s!=[]||"object"==typeof s&&s!={})&&(o[n]=JSON.stringify(s).replace(new RegExp('"',"g"),"&quot;")))}if(void 0!==a&&void 0!==a.saveOptions.unsetAttributes)for(let e in a.saveOptions.unsetAttributes)delete o[a.saveOptions.unsetAttributes[e]];let c=["inner-text","inner-html","tabindex","guestinstance"];for(let e in c)void 0!==o[c[e]]&&delete o[c[e]];void 0!==o.id&&""===o.id&&delete o.id,delete o.draggable,delete o.contenteditable,delete o.role,delete o["data-hax-ray"],delete o["data-hax-layout"],delete o["data-hax-grid"],delete o["data-hax-active"],""==o.class&&delete o.class;for(let e in o)!0===o[e]?i+=" "+e:i+=" "+e+'="'+o[e]+'"';if(["area","base","br","col","embed","hr","img","input","keygen","link","meta","param","source","track","wbr"].includes(t)?i+="/>":i+=">",void 0===a||!a.saveOptions.wipeSlot){let t=e.childNodes;if(t.length>0)for(let e=0,a=t.length;e<a;e++)if(void 0!==t[e].tagName)if((!this.HTMLPrimativeTest(t[e])||this.HTMLPrimativeTest(t[e])&&t[e].children.length>0)&&"TEMPLATE"!==t[e].tagName)i+=await this.nodeToContent(t[e]);else{for(let i=0;i<r.length;i++)t[e].removeAttribute(r[i]);d(t[e]),i+=t[e].outerHTML}else 8===t[e].nodeType?i+="\x3c!-- "+t[e].textContent+" --\x3e":1!==t[e].nodeType&&void 0!==t[e].textContent&&"undefined"!==t[e].textContent&&(i+=g(t[e].textContent))}return this.testHook(e,"progressiveEnhancement")&&(i+=await this.runHook(e,"progressiveEnhancement",[e])),"span"===t?i+="</"+t+">":"hr"===t||"br"===t||"img"===t||(i+="</"+t+">\n"),i=(i=(i=(i=(i=(i=(i=(i=(i=(i=(i=(i=(i=(i=(i=(i=(i=(i=i.replace(/&nbsp;/gm," ")).replace(/ data-hax-ray="(\s|.)*?"/gim,"")).replace(/ data-hax-active="(\s|.)*?"/gim,"")).replace(/ class=""/gim,"")).replace(/ style=""/gim,"")).replace(/ contenteditable="(\s|.)*?"/gim,"")).replace(/<span style="(.*?)">/gim,"<span>")).replace(/<span>\s*?<\/span>/g," ")).replace(/<span><br\/><\/span>/gm,"")).replace(/<strong style="(.*?)">/gim,"<strong>")).replace(/<b style="(.*?)">/gim,"<b>")).replace(/<strike style="(.*?)">/gim,"<strike>")).replace(/<em style="(.*?)">/gim,"<em>")).replace(/<i style="(.*?)">/gim,"<i>")).replace(/<p>(\s*)<\/p>/gm,"<p></p>")).replace(/<p>&nbsp;<\/p>/gm,"<p></p>")).replace(/<p><br\/><\/p>/gm,"<p></p>")).replace(/<p><br><\/p>/gm,"<p></p>"),this.testHook(e,"postProcessNodeToContent")&&(i=await this.runHook(e,"postProcessNodeToContent",[i])),i}HTMLPrimativeTest(e){return void 0!==e.tagName&&-1==e.tagName.indexOf("-")}getHaxAppStoreTargets(e){return S(this.appList).filter((t=>{if(void 0!==t.connection.operations.add){let i=t.connection.operations.add;if(void 0!==i.acceptsGizmoTypes&&i.acceptsGizmoTypes.includes(e))return!0}return!1}))}async refreshActiveNodeForm(){this.haxTray.activeHaxElement=await c(this.haxTray.activeNode,null),await this.haxTray._setupForm()}haxElementPrototype(e,t,i=""){return{tag:e.tag,properties:t,content:i,gizmo:e}}async getHAXSlot(e){if(this.isTextElement(e))return e.innerHTML;let t="";var i=e.childNodes;if(i.length>0)for(let e=0,a=i.length;e<a;e++){if(!i[e])return;void 0!==i[e].tagName?i[e].tagName.indexOf("-")>0?t+="  "+await this.nodeToContent(i[e])+"\n":t+="  "+i[e].outerHTML+"\n":8===i[e].nodeType?t+="\x3c!-- "+i[e].textContent+" --\x3e":1!==i[e].nodeType&&void 0!==i[e].textContent&&"undefined"!==i[e].textContent&&(t+=i[e].textContent)}return t}async _haxStoreRegisterProperties(e){if(e.detail&&e.detail.properties&&e.detail.tag){if(!this.elementList[e.detail.tag]){let t=e.detail;t.properties=await this.attemptGizmoTranslation(t.tag,t.properties);let i=t.properties.gizmo;if(i){i.tag=t.tag;let e=this.gizmoList;e.push(i),this.gizmoList=[...e],this.write("gizmoList",e,this),i.meta&&(i.meta.inlineOnly||i.meta.hidden)||N.defineOption({title:i.title,icon:i.icon,tags:i.tags||[],value:{value:i.tag,eventName:"insert-tag",demoSchema:!0},context:["HAX"],eventName:"hax-super-daemon-insert-tag",path:"HAX/insert/block/"+i.tag})}this.elementList[t.tag]=t.properties,this.validTagList.find((e=>e===t.tag))||this.validTagList.push(t.tag),"grid"!=t.properties.type||this.validGridTagList.find((e=>e===t.tag))||this.validGridTagList.push(t.tag),globalThis.customElements.get(e.detail.tag)&&this.testHook(globalThis.document.createElement(e.detail.tag),"gizmoRegistration")&&await this.runHook(globalThis.document.createElement(e.detail.tag),"gizmoRegistration",[this])}void 0!==e.target.parentElement&&"HAX-AUTOLOADER"===e.target.parentElement.tagName&&this.haxAutoloader.removeChild(e.target)}}get activeGizmo(){let e=S(this._calculateActiveGizmo(this.activeNode));return this.write("activeGizmo",e,this),e}get activeNodeIndex(){let e=null;return this.activeNode&&Array.from(S(this.activeHaxBody).children).map(((t,i)=>{S(this.activeNode)!==t&&S(this.activeNode).parentElement!==t||(e=i)})),e}async attemptGizmoTranslation(e,t){var i=await A.loadNamespaceFile(e+".haxProperties");if(!i&&"en"==this.globalPreferences.haxLang&&globalThis.customElements.get(e)&&globalThis.customElements.get(e).haxProperties&&"string"==typeof(i=globalThis.customElements.get(e).haxProperties)&&(i=await fetch(i).then((e=>!(!e||!e.json)&&e.json()))),i){if(t.gizmo&&i.gizmo)for(let e in i.gizmo)t.gizmo[e]=i.gizmo[e];if(t.settings&&i.settings){let e={advanced:"advanced",configure:"configure"};for(let a in e)if(t.settings[a]&&i.settings[a])for(let e in i.settings[a])for(let o in i.settings[a][e])t.settings[a][e][o]=i.settings[a][e][o]}if(t.demoSchema&&i.demoSchema)for(let e in i.demoSchema)if(i.demoSchema[e].properties)for(let a in i.demoSchema[e].properties)t.demoSchema[e].properties[a]=i.demoSchema[e].properties[a]}return t}}globalThis.customElements.define(HaxStore.tag,HaxStore);export{HaxStore};globalThis.HaxStore=globalThis.HaxStore||{},globalThis.HaxStore.requestAvailability=function(){return globalThis.HaxStore.instance||(globalThis.HaxStore.instance=globalThis.document.createElement("hax-store"),globalThis.document.body.appendChild(globalThis.HaxStore.instance)),globalThis.HaxStore.instance};export const HAXStore=globalThis.HaxStore.requestAvailability();globalThis.Hax=globalThis.Hax||{},globalThis.Hax.add=function(e){if(HAXStore.elementList[e]){let t,i=HAXStore.haxSchemaFromTag(e);t=i.gizmo.tag&&i.demoSchema&&i.demoSchema[0]?h(i.demoSchema[0]):globalThis.document.createElement(e),HAXStore.activeHaxBody.haxReplaceNode(HAXStore.activeNode,t),HAXStore.activeHaxBody.__focusLogic(t)}else HAXStore.toast(`${e} is not a valid tag`)},globalThis.Hax.delete=function(){null!=HAXStore.activeNode&&HAXStore.activeHaxBody.haxDeleteNode(HAXStore.activeNode)},globalThis.Hax.duplicate=function(){HAXStore.activeHaxBody.haxDuplicateNode(HAXStore.activeNode)},globalThis.Hax.move=function(e=!0){e?HAXStore.activeHaxBody.haxMoveGridPlate(HAXStore.activeNode,-1):HAXStore.activeHaxBody.haxMoveGridPlate(HAXStore.activeNode)},globalThis.Hax.grid=function(e=!0){HAXStore.activeHaxBody.haxGridPlateOps(e)},globalThis.Hax.set=function(e,t){HAXStore.write(e,t,window)},globalThis.Hax.get=function(e){return HAXStore[e]},globalThis.Hax.export=async function(){return await HAXStore.activeHaxBody.haxToContent()},globalThis.Hax.import=function(e="<p></p>"){return HAXStore.activeHaxBody.importContent(e)};
    \ No newline at end of file
    +                </ul>`:null,value:{name:"Search "+i.details.title,context:"/",index:i.index,detail:i,program:async(e,t)=>{const a=S(HAXStore.activeApp),o=S(HAXStore.appList[t.index]);a.index!=o.index&&(HAXStore.activeApp=S(HAXStore.appList[t.index]));let r={};r[Object.keys(t.detail.connection.operations.browse.search)[0]]=e,HAXStore.appSearch.updateSearchValues(r);let n=await HAXStore.appSearch.loadAppData(),s=[];return await n.forEach((async e=>{var t=e.map,a=e.type;a&&null!=a&&""!=a&&"undefined"!=a||!t.source||(a=HAXStore.guessGizmoType(t));let o=HAXStore.guessGizmo(a,t,!1,!0);o.length>0&&void 0!==o[0].tag&&(o[0].nextToActive=!0),s.push({title:e.title,image:e.image,tags:[],value:{value:o[0].tag,eventName:"insert-tag",properties:o[0].properties},context:["/","/sources/"+i.details.title.toLowerCase()],eventName:"hax-super-daemon-insert-tag",path:"/sources/"+i.details.title.toLowerCase()})})),s}},context:["HAX","/"],eventName:"super-daemon-run-program",path:"/sources/"+i.details.title.toLowerCase(),priority:"local files"===i.details.title.toLowerCase()?-100:0}),i.connection&&i.connection.protocol&&i.connection.url){let e=globalThis.document.createElement("link");e.rel="preconnect",e.href=i.connection.protocol+"://"+i.connection.url,globalThis.document.head.appendChild(e)}void 0!==e.target.parentElement&&"HAX-STORE"===e.target.parentElement.tagName&&e.target.parentElement.removeChild(e.target)}}_haxStoreRegisterStax(e){e.detail&&(e.detail.index=this.staxList.length,this.staxList=[...this.staxList,e.detail],this.write("staxList",this.staxList,this),void 0!==e.target.parentElement&&"HAX-STORE"===e.target.parentElement.tagName&&e.target.parentElement.removeChild(e.target))}activeBodyIgnoreActive(e){this.activeHaxBody.__ignoreActive=e}dashToCamel(e){return e.replace(/-([a-z])/g,(function(e){return e[1].toUpperCase()}))}async htmlToHaxElements(e){let t=[],i=globalThis.document.createElement("div");if(i.innerHTML=e,i.children){const e=this.validTagList,a=i.children;for(let i=0;i<a.length;i++)void 0!==a[i].tagName&&e.includes(a[i].tagName.toLowerCase())&&t.push(await c(a[i],null))}return t}async nodeToContent(e){if(this.testHook(e,"preProcessNodeToContent")&&(e=await this.runHook(e,"preProcessNodeToContent",[e])),e&&!e.tagName)return e;let t=e.tagName.toLowerCase();this._isSandboxed&&"webview"===t&&(t="iframe"),"iframe"===t&&e.setAttribute("sandbox","allow-scripts allow-same-origin");var i="";i+="<"+t;var a=this.elementList[t],o={},r=["data-hax-ray","data-hax-layout","data-hax-grid","data-hax-active",'="true"',"contenteditable","draggable","role"];for(let t=0;t<r.length;t++)e.removeAttribute(r[t]);d(e);for(let t=0,i=e.attributes.length;t<i;++t){var n=e.attributes.item(t).nodeName,s=e.attributes.item(t).value;"style"==n||typeof s!=typeof Object&&s.constructor!==Array?null!=s&&"null"!=s&&(!0===s||"true"===s?o[n]=!0:!1===s||("string"==typeof s&&""!==s?(s=(s=(s=(s=s.replace(new RegExp("&","g"),"&amp;")).replace(new RegExp('"',"g"),"&quot;")).replace(new RegExp("<","g"),"&#60;")).replace(new RegExp(">","g"),"&#62;"),o[n]=s):""===s?(""==s&&""!=e.attributes.item(t).value&&(s=e.attributes.item(t).value),o[n]=s):o[n]=s)):o[n]=JSON.stringify(s).replace(new RegExp('"',"g"),"&quot;")}let l;if(globalThis.customElements.get(t)&&(l=globalThis.customElements.get(t).properties),void 0===l&&(l=e.__data),void 0!==l)for(let t in l){n=m(t),s=null;void 0!==e[t]&&(s=e[t]),l[t].readOnly||l[t].computed||s===l[t].value||n.startsWith("__")||(null==s||"object"!=typeof s&&s.constructor!==Array?null!=s&&"null"!=s&&(!0===s||"true"===s?o[n]=!0:!1===s||("string"==typeof s&&""!==s?(s=(s=(s=(s=s.replace(new RegExp("&","g"),"&amp;")).replace(new RegExp('"',"g"),"&quot;")).replace(new RegExp("<","g"),"&#60;")).replace(new RegExp(">","g"),"&#62;"),o[n]=s):""===s?""==s&&""!=l[t].value?s=l[t].value:""===s&&l[t].value:o[n]=s)):(s.constructor===Array&&s!=[]||"object"==typeof s&&s!={})&&(o[n]=JSON.stringify(s).replace(new RegExp('"',"g"),"&quot;")))}if(void 0!==a&&void 0!==a.saveOptions.unsetAttributes)for(let e in a.saveOptions.unsetAttributes)delete o[a.saveOptions.unsetAttributes[e]];let c=["inner-text","inner-html","tabindex","guestinstance"];for(let e in c)void 0!==o[c[e]]&&delete o[c[e]];void 0!==o.id&&""===o.id&&delete o.id,delete o.draggable,delete o.contenteditable,delete o.role,delete o["data-hax-ray"],delete o["data-hax-layout"],delete o["data-hax-grid"],delete o["data-hax-active"],""==o.class&&delete o.class;for(let e in o)!0===o[e]?i+=" "+e:i+=" "+e+'="'+o[e]+'"';if(["area","base","br","col","embed","hr","img","input","keygen","link","meta","param","source","track","wbr"].includes(t)?i+="/>":i+=">",void 0===a||!a.saveOptions.wipeSlot){let t=e.childNodes;if(t.length>0)for(let e=0,a=t.length;e<a;e++)if(void 0!==t[e].tagName)if((!this.HTMLPrimativeTest(t[e])||this.HTMLPrimativeTest(t[e])&&t[e].children.length>0)&&"TEMPLATE"!==t[e].tagName)i+=await this.nodeToContent(t[e]);else{for(let i=0;i<r.length;i++)t[e].removeAttribute(r[i]);d(t[e]),i+=t[e].outerHTML}else 8===t[e].nodeType?i+="\x3c!-- "+t[e].textContent+" --\x3e":1!==t[e].nodeType&&void 0!==t[e].textContent&&"undefined"!==t[e].textContent&&(i+=g(t[e].textContent))}return this.testHook(e,"progressiveEnhancement")&&(i+=await this.runHook(e,"progressiveEnhancement",[e])),"span"===t?i+="</"+t+">":"hr"===t||"br"===t||"img"===t||(i+="</"+t+">\n"),i=(i=(i=(i=(i=(i=(i=(i=(i=(i=(i=(i=(i=(i=(i=(i=(i=(i=i.replace(/&nbsp;/gm," ")).replace(/ data-hax-ray="(\s|.)*?"/gim,"")).replace(/ data-hax-active="(\s|.)*?"/gim,"")).replace(/ class=""/gim,"")).replace(/ style=""/gim,"")).replace(/ contenteditable="(\s|.)*?"/gim,"")).replace(/<span style="(.*?)">/gim,"<span>")).replace(/<span>\s*?<\/span>/g," ")).replace(/<span><br\/><\/span>/gm,"")).replace(/<strong style="(.*?)">/gim,"<strong>")).replace(/<b style="(.*?)">/gim,"<b>")).replace(/<strike style="(.*?)">/gim,"<strike>")).replace(/<em style="(.*?)">/gim,"<em>")).replace(/<i style="(.*?)">/gim,"<i>")).replace(/<p>(\s*)<\/p>/gm,"<p></p>")).replace(/<p>&nbsp;<\/p>/gm,"<p></p>")).replace(/<p><br\/><\/p>/gm,"<p></p>")).replace(/<p><br><\/p>/gm,"<p></p>"),this.testHook(e,"postProcessNodeToContent")&&(i=await this.runHook(e,"postProcessNodeToContent",[i])),i}HTMLPrimativeTest(e){return void 0!==e.tagName&&-1==e.tagName.indexOf("-")}getHaxAppStoreTargets(e){return S(this.appList).filter((t=>{if(void 0!==t.connection.operations.add){let i=t.connection.operations.add;if(void 0!==i.acceptsGizmoTypes&&i.acceptsGizmoTypes.includes(e))return!0}return!1}))}async refreshActiveNodeForm(){this.haxTray.activeHaxElement=await c(this.haxTray.activeNode,null),await this.haxTray._setupForm()}haxElementPrototype(e,t,i=""){return{tag:e.tag,properties:t,content:i,gizmo:e}}async getHAXSlot(e){if(this.isTextElement(e))return e.innerHTML;let t="";var i=e.childNodes;if(i.length>0)for(let e=0,a=i.length;e<a;e++){if(!i[e])return;void 0!==i[e].tagName?i[e].tagName.indexOf("-")>0?t+="  "+await this.nodeToContent(i[e])+"\n":t+="  "+i[e].outerHTML+"\n":8===i[e].nodeType?t+="\x3c!-- "+i[e].textContent+" --\x3e":1!==i[e].nodeType&&void 0!==i[e].textContent&&"undefined"!==i[e].textContent&&(t+=i[e].textContent)}return t}async _haxStoreRegisterProperties(e){if(e.detail&&e.detail.properties&&e.detail.tag){if(!this.elementList[e.detail.tag]){let t=e.detail;t.properties=await this.attemptGizmoTranslation(t.tag,t.properties);let i=t.properties.gizmo;if(i){i.tag=t.tag;let e=this.gizmoList;e.push(i),this.gizmoList=[...e],this.write("gizmoList",e,this),i.meta&&(i.meta.inlineOnly||i.meta.hidden)||N.defineOption({title:i.title,icon:i.icon,tags:i.tags||[],value:{value:i.tag,eventName:"insert-tag",demoSchema:!0},context:["HAX"],eventName:"hax-super-daemon-insert-tag",path:"HAX/insert/block/"+i.tag})}this.elementList[t.tag]=t.properties,this.validTagList.find((e=>e===t.tag))||this.validTagList.push(t.tag),"grid"!=t.properties.type||this.validGridTagList.find((e=>e===t.tag))||this.validGridTagList.push(t.tag),globalThis.customElements.get(e.detail.tag)&&this.testHook(globalThis.document.createElement(e.detail.tag),"gizmoRegistration")&&await this.runHook(globalThis.document.createElement(e.detail.tag),"gizmoRegistration",[this])}void 0!==e.target.parentElement&&"HAX-AUTOLOADER"===e.target.parentElement.tagName&&this.haxAutoloader.removeChild(e.target)}}get activeGizmo(){let e=S(this._calculateActiveGizmo(this.activeNode));return this.write("activeGizmo",e,this),e}get activeNodeIndex(){let e=null;return this.activeNode&&Array.from(S(this.activeHaxBody).children).map(((t,i)=>{S(this.activeNode)!==t&&S(this.activeNode).parentElement!==t||(e=i)})),e}async attemptGizmoTranslation(e,t){var i=await A.loadNamespaceFile(e+".haxProperties");if(!i&&"en"==this.globalPreferences.haxLang&&globalThis.customElements.get(e)&&globalThis.customElements.get(e).haxProperties&&"string"==typeof(i=globalThis.customElements.get(e).haxProperties)&&(i=await fetch(i).then((e=>!(!e||!e.json)&&e.json()))),i){if(t.gizmo&&i.gizmo)for(let e in i.gizmo)t.gizmo[e]=i.gizmo[e];if(t.settings&&i.settings){let e={advanced:"advanced",configure:"configure"};for(let a in e)if(t.settings[a]&&i.settings[a])for(let e in i.settings[a])for(let o in i.settings[a][e])t.settings[a][e][o]=i.settings[a][e][o]}if(t.demoSchema&&i.demoSchema)for(let e in i.demoSchema)if(i.demoSchema[e].properties)for(let a in i.demoSchema[e].properties)t.demoSchema[e].properties[a]=i.demoSchema[e].properties[a]}return t}}globalThis.customElements.define(HaxStore.tag,HaxStore);export{HaxStore};globalThis.HaxStore=globalThis.HaxStore||{},globalThis.HaxStore.requestAvailability=function(){return globalThis.HaxStore.instance||(globalThis.HaxStore.instance=globalThis.document.createElement("hax-store"),globalThis.document.body.appendChild(globalThis.HaxStore.instance)),globalThis.HaxStore.instance};export const HAXStore=globalThis.HaxStore.requestAvailability();globalThis.Hax=globalThis.Hax||{},globalThis.Hax.add=function(e){if(HAXStore.elementList[e]){let t,i=HAXStore.haxSchemaFromTag(e);t=i.gizmo.tag&&i.demoSchema&&i.demoSchema[0]?h(i.demoSchema[0]):globalThis.document.createElement(e),HAXStore.activeHaxBody.haxReplaceNode(HAXStore.activeNode,t),HAXStore.activeHaxBody.__focusLogic(t)}else HAXStore.toast(`${e} is not a valid tag`)},globalThis.Hax.delete=function(){null!=HAXStore.activeNode&&HAXStore.activeHaxBody.haxDeleteNode(HAXStore.activeNode)},globalThis.Hax.duplicate=function(){HAXStore.activeHaxBody.haxDuplicateNode(HAXStore.activeNode)},globalThis.Hax.move=function(e=!0){e?HAXStore.activeHaxBody.haxMoveGridPlate(HAXStore.activeNode,-1):HAXStore.activeHaxBody.haxMoveGridPlate(HAXStore.activeNode)},globalThis.Hax.grid=function(e=!0){HAXStore.activeHaxBody.haxGridPlateOps(e)},globalThis.Hax.set=function(e,t){HAXStore.write(e,t,window)},globalThis.Hax.get=function(e){return HAXStore[e]},globalThis.Hax.export=async function(){return await HAXStore.activeHaxBody.haxToContent()},globalThis.Hax.import=function(e="<p></p>"){return HAXStore.activeHaxBody.importContent(e)};
    \ No newline at end of file
    
  • src/public/build/es6/node_modules/@haxtheweb/haxcms-elements/lib/core/haxcms-site-builder.js+1 1 modified
    @@ -41,4 +41,4 @@ import{LitElement as e,html as t,css as a}from"../../../../lit/index.js";import{
           <slot name="haxcms-site-editor-ui-suffix-buttons"></slot>
           <slot name="haxcms-site-editor-ui-main-menu"></slot>
           <slot name="haxcms-site-editor-ui-topbar-character-button"></slot>
    -    `}_updateManifest(e){this.manifest={...e}}_updateLoading(e){this.loading=e.detail.value}hashCode(e){return e.split("").reduce(((e,t)=>0|(e=(e<<5)-e+t.charCodeAt(0))),0)}nodeNormalizeIDs(e){if(e.tagName&&null==e.getAttribute("id")&&["H1","H2","H3","H4","H5","H6"].includes(e.tagName))if(e.getAttribute("resource"))e.setAttribute("id",e.getAttribute("resource"));else{let t=e.tagName.toLowerCase()+"-"+this.hashCode(e.innerText);e.setAttribute("id",t)}}_updateActiveItemContent(e){if(e){let t=globalThis.document.createElement("div");t.innerHTML=e;for(const e of t.childNodes)this.nodeNormalizeIDs(e);e=t.innerHTML,this.__pageContent=e,this._activeItemContentChanged(this.__pageContent,d(h.activeItem))}else h.cmsSiteEditorBackend.instance&&h.cmsSiteEditorBackend.instance.updateActiveItemContent&&h.cmsSiteEditorBackend.instance.updateActiveItemContent()}display404Error(){if(h.themeElement){let e=globalThis.document.createDocumentFragment(),t=globalThis.document.createElement("p");t.innerHTML=`<strong>${h.getInternalRoute()}</strong> ${this.t.couldNotBeLocated}. ${this.t.hereAreSomePossibleRemedies}\n      <ul>\n        <li><a href="x/search?search=${h.getInternalRoute()}">${this.t.useSearchToLocateTheContentYouAreLookingFor}</a></li>\n        <li><a href="./">${this.t.goToTheHomePage}</a></li>\n        <li>${this.t.navigateToAnotherPageInTheMenu}</li>\n      </ul>`,e.appendChild(t),s(h.themeElement,"*"),h.themeElement.appendChild(e)}}renderInternalRoute(){if(h.themeElement){let e=globalThis.document.createDocumentFragment();h.activeItem.component&&import(`../ui-components/routes/${h.activeItem.component}.js`).then((()=>{let t=globalThis.document.createElement(h.activeItem.component);e.appendChild(t),s(h.themeElement,"*"),h.themeElement.appendChild(e)}))}}async loadPageData(){if(this.activeItemLocation&&!this.loading){this.loading=!0;let e=`${this.outlineLocation}${this.activeItemLocation}`;this._timeStamp&&(-1!=e.indexOf("?")?e+=`&${this._timeStamp}`:e+=`?${this._timeStamp}`),"hax-internal-route.html"===this.activeItemLocation?(this.renderInternalRoute(),this.loading=!1):await fetch(e).then((e=>{if(e.ok)return e.text();this.display404Error()})).then((e=>{this._updateActiveItemContent(e),this.loading=!1})).catch((e=>{this.lastErrorChanged(e)}))}}async loadJOSData(){if(this.file){this.loading=!0;let e=`${this.outlineLocation}${this.file}`;try{let e=JSON.parse(this.file);this._updateManifest(e),this.loading=!1}catch(t){this._timeStamp&&""!=this._timeStamp&&(-1!=e.indexOf("?")?e+=`&${this._timeStamp}`:e+=`?${this._timeStamp}`);await fetch(e,{cache:"no-cache"}).then((e=>{if(e.ok)return e.json()})).then((e=>{this._updateManifest(e),this.loading=!1})).catch((e=>{this.lastErrorChanged(e)}))}}}updated(e){super.updated&&super.updated(e);let t=!1,a=!1;e.forEach(((e,i)=>{["outlineLocation","activeItemLocation"].includes(i)&&""!=this[i]&&(a=!0),["outlineLocation","file"].includes(i)&&""!=this[i]&&(t=!0),"_timeStamp"==i&&this[i]&&(t=!0,a=!0),"themeData"==i?this._themeChanged(this[i],e):"themeName"==i?this._themeNameChanged(this[i],e):"outlineLocation"==i?this.dispatchEvent(new CustomEvent("outline-location-changed",{bubbles:!0,cancelable:!0,composed:!0,detail:this[i]})):"manifest"==i&&(this.dispatchEvent(new CustomEvent("manifest-changed",{bubbles:!0,cancelable:!0,composed:!0,detail:this[i]})),this._manifestChanged(this[i],e))})),t&&this.__ready&&this.loadJOSData(),a&&this.__ready&&this.loadPageData()}static get properties(){return{...super.properties,activeItemLocation:{type:String,attribute:"active-item-location"},disableFeatures:{type:String,reflect:!0,attribute:"disable-features"},_timeStamp:{type:String},isLoggedIn:{type:Boolean,reflect:!0,attribute:"is-logged-in"},queryParams:{type:Object},loading:{type:Boolean,reflect:!0},outlineLocation:{type:String,attribute:"outline-location"},manifest:{type:Object},themeData:{type:Object},themeName:{type:String},__imported:{type:Object},themeLoaded:{type:Boolean,reflect:!0,attribute:"theme-loaded"},file:{type:String},baseURI:{type:String,attribute:"base-uri"}}}_themeNameChanged(e){e&&(h.themeElement&&h.themeElement.remove(),s(this,"*"),h.themeElement=globalThis.document.createElement(e),h.themeElement.classList.add("haxcms-theme-element"),this.appendChild(h.themeElement))}lastErrorChanged(e){e&&(console.error(e),e.detail&&e.detail.value?(globalThis&&globalThis.location&&globalThis.appSettings&&globalThis.appSettings.reloadOnError&&globalThis.location.reload(),h.toast(e.detail.value.status+" "+e.detail.value.statusText,5e3,{fire:!0})):globalThis&&globalThis.location&&globalThis.appSettings&&globalThis.appSettings.reloadOnError&&globalThis.location.reload())}constructor(){for(var e in super(),this.__pageContent="",this.windowControllers=new AbortController,this.t={...super.t,pageNotFound:"Page not found",navigateToAnotherPageInTheMenu:"Navigate to another page in the menu",couldNotBeLocated:"could not be located",hereAreSomePossibleRemedies:"Here are some possible remedies:",useSearchToLocateTheContentYouAreLookingFor:"Use Search to locate the content you are looking for",goToTheHomePage:"Go to the home page"},this.registerLocalization({context:this,namespace:"haxcms",localesPath:new URL("../../locales/haxcms.es.json",import.meta.url).href.replace("/haxcms.es.json","/"),locales:["es"]}),this._timeStamp=Math.floor(Date.now()/1e3),this.disableFeatures="",this.isLoggedIn=!1,this.__disposer=[],this.queryParams={},this.loading=!1,this.__imported={},this.themeLoaded=!1,this.outlineLocation="",this.activeItemLocation="",m.storePieces.siteBuilder=this,this.children)if(this.children[e].tagName&&this.children[e].getAttribute("slot")){const t=this.children[e].cloneNode(!0);let a=t.getAttribute("slot");switch(a){case"haxcms-site-editor-ui-prefix-avatar":case"haxcms-site-editor-ui-prefix-buttons":case"haxcms-site-editor-ui-suffix-buttons":case"haxcms-site-editor-ui-main-menu":case"haxcms-site-editor-ui-topbar-character-button":h.setupSlots[a].push(t)}}globalThis.addEventListener("hax-store-ready",this.storeReady.bind(this),{signal:this.windowControllers.signal}),globalThis.addEventListener("haxcms-trigger-update",this._triggerUpdatedData.bind(this),{signal:this.windowControllers.signal}),globalThis.addEventListener("haxcms-trigger-update-node",this._triggerUpdatedNode.bind(this),{signal:this.windowControllers.signal}),window.matchMedia("(prefers-color-scheme: dark)").addEventListener("change",darkToggle,{signal:this.windowControllers.signal}),r((()=>{l("app-hax-darkMode",d(h.darkMode)),d(h.darkMode)?globalThis.document.body.classList.add("dark-mode"):globalThis.document.body.classList.remove("dark-mode")})),r((()=>{this.isLoggedIn=d(h.isLoggedIn);const e=Math.floor(Date.now()/1e3);this.isLoggedIn&&!this.loggedInTime&&(this.loggedInTime=e,this._timeStamp=this.loggedInTime)}))}displayConsoleWarning(){setTimeout((()=>{console.warn("%c⚠️STOP⚠️","color: white; font-weight: bold; font-size: 5em;font-family: arial; background-color: darkred; border: 5px solid white; border: 5px solid white;"),console.warn('%cThis is a browser feature intended for developers. If someone told you to copy and paste something here to enable a hidden feature or "hack" someone\'s account, it is a scam and will give them access to your account.',"font-size: 1.5em; font-family: arial; color: white; background-color: darkred; ")}),3500)}displayConsoleLearnMore(){setTimeout((()=>{console.log("%c👩‍💻HAXcms🧑‍💻","color: white; font-weight: bold; padding: 10px; font-size: 5em;font-family: arial; background-color: black; border: 5px solid white; border: 5px solid white; font-style: italic;"),console.log("%cThis site was created using HAXcms.\nLearn more about HAXcms at https://hax.psu.edu/.","color: white; background-color: black; font-size: 1.5em; font-family: arial; padding: 10px;")}),3e3)}firstUpdated(e){super.firstUpdated&&super.firstUpdated(e),this.displayConsoleLearnMore(),this.__ready=!0,h.appReady=!0,globalThis.dispatchEvent(new CustomEvent("haxcms-ready",{bubbles:!0,composed:!0,cancelable:!1,detail:this})),import("./haxcms-editor-builder.js").then((e=>{import("./haxcms-toast.js"),this.editorBuilder=globalThis.document.createElement("haxcms-editor-builder"),this.parentNode?this.parentNode.insertBefore(this.editorBuilder,this):globalThis.document.body.appendChild(this.editorBuilder),"published"!==m.getApplicationContext()?this._timeStamp=Math.floor(Date.now()/1e3):this._timeStamp=""})).catch((e=>{console.warn(e)})),globalThis.dispatchEvent(new Event("resize")),setTimeout((()=>{r((e=>{if(this.themeData=d(h.themeData),this.themeData){const e=new URLSearchParams(globalThis.location.search),t=e.get("format");if(null!=t&&"print-page"===t)this.themeData.element="haxcms-print-theme";const a=e.get("disable-features");null!=a&&(this.disableFeatures=a)}this.themeData&&this.themeData.element!==this.themeName&&(this.themeName=this.themeData.element),this.__disposer.push(e)})),r((e=>{const t=d(h.activeItem);t&&this.__pageContent&&this._activeItemContentChanged(this.__pageContent,t),t&&t.location&&(this.activeItemLocation=t.location),this.__disposer.push(e)}))}),0)}disconnectedCallback(){for(var e in this.__disposer)this.__disposer[e].dispose();this.windowControllers.abort(),super.disconnectedCallback()}storeReady(e){h.cmsSiteEditor&&h.cmsSiteEditor.instance&&globalThis.HaxStore.requestAvailability().activeHaxBody&&h.activeItemContent&&globalThis.HaxStore.requestAvailability().activeHaxBody.importContent(h.activeItemContent)}replaceTagReplacement(e){for(var t=/\<(\w+?\-\w*.*)\s*?\>/gim,a=t.exec(e);null!=a;){let i=a[1].replace("<","").replace(">","");i.indexOf(" ")&&(i=i.split(" ")[0]),-1!=i.indexOf("-")&&(e=(e=e.replace("<"+i,'<replace-tag with="'+i+'" ')).replace("</"+i+">","</replace-tag>")),a=t.exec(e)}return e}_activeItemContentChanged(e,t){var a=e;null!==a&&t&&t.metadata&&(s(h.themeElement,"*"),a=`<page-break\n      break-type="site"\n      title="${t.title}"\n      parent="${t.parent}"\n      item-id="${t.id}"\n      slug="${t.slug}"\n      description="${t.description}"\n      order="${t.order}"\n      ${t.metadata.pageType?`page-type="${t.metadata.pageType}"`:""}\n      ${t.metadata.tags?`tags="${t.metadata.tags}"`:""}\n      ${t.metadata.hideInMenu?'hide-in-menu="hide-in-menu"':""}\n      ${t.metadata.relatedItems?`related-items="${t.metadata.relatedItems}"`:""}\n      ${t.metadata.image?`image="${t.metadata.image}"`:""}\n      ${t.metadata.icon?`icon="${t.metadata.icon}"`:""}\n      ${t.metadata.accentColor?`accent-color="${t.metadata.accentColor}"`:""}\n      ${t.metadata.theme&&t.metadata.theme.key?`developer-theme="${t.metadata.theme.key}"`:""}\n      ${t.metadata.locked?'locked="locked"':""}\n      ${!1===t.metadata.published?"":'published="published"'} ></page-break>${a}`,a=i(a),h.activeItemContent=a,setTimeout((()=>{if(0===h.themeElement.childNodes.length){let e=document.createRange().createContextualFragment(this.replaceTagReplacement(a));h.themeElement.appendChild(e),this.dispatchEvent(new CustomEvent("json-outline-schema-active-body-changed",{bubbles:!0,composed:!0,cancelable:!1,detail:a}))}if(!globalThis.WCAutoload&&n(this.manifest,"metadata.node.dynamicElementLoader")){let t=o(a);const i=new URL("../../locales/haxcms.es.json",import.meta.url).href+"/../";for(var e in t){const a=t[e];this.manifest.metadata.node.dynamicElementLoader[a]&&!globalThis.customElements.get(a)&&import(`${i}../../../../${this.manifest.metadata.node.dynamicElementLoader[a]}`).then((e=>{})).catch((e=>{console.warn(e)}))}}else globalThis.WCAutoload&&setTimeout((()=>{globalThis.WCAutoload.process()}),0)}),5))}_triggerUpdatedData(e){this.isLoggedIn?this._timeStamp=Math.floor(Date.now()/1e3):this._timeStamp=""}_triggerUpdatedNode(e){this.loadPageData()}_manifestChanged(e,t){e&&e.metadata&&e.items&&h.loadManifest(e,this)}_themeChanged(e,t){if(e){this.themeLoaded=!1;let t=e;if(void 0!==this.__imported[t.element])this.themeLoaded=!0;else if(globalThis.WCAutoload)this.__imported[t.element]=t.element,this.themeLoaded=!0,setTimeout((()=>{globalThis.WCAutoload.process(),globalThis.dispatchEvent(new CustomEvent("haxcms-theme-ready",{bubbles:!0,composed:!0,cancelable:!1,detail:this}))}),5);else try{import(new URL("./../../../../../"+e.path,import.meta.url).href).then((e=>{this.__imported[t.element]=t.element,this.themeLoaded=!0}))}catch(e){this.themeLoaded=!0}}}}globalThis.HAXme=function(e=null){null==e&&(e="demo",globalThis.appSettings={login:"dist/dev/login.json",logout:"dist/dev/logout.json",saveNodePath:"dist/dev/saveNode.json",saveManifestPath:"dist/dev/saveManifestPath.json",createNodePath:"dist/dev/saveNode.json",deleteNodePath:"dist/dev/saveNode.json",saveOutlinePath:"dist/dev/saveNode.json",getSiteFieldsPath:"dist/dev/getSiteFieldsPath.json",getFormToken:"adskjadshjudfu823u823u8fu8fij",appStore:{url:"dist/dev/appstore.json"},jwt:"made-up-thing",themes:{"haxcms-dev-theme":{element:"haxcms-dev-theme",path:"@haxtheweb/haxcms-elements/lib/haxcms-dev-theme.js",name:"Developer theme"}}}),"demo"==e&&(globalThis.HAXCMSContext="demo"),globalThis.document.body&&(globalThis.document.body.querySelector("haxcms-editor-builder").__appliedContext=!1,globalThis.document.body.querySelector("haxcms-editor-builder").applyContext(e))},globalThis.customElements.define(HAXCMSSiteBuilder.tag,HAXCMSSiteBuilder);export{HAXCMSSiteBuilder};
    \ No newline at end of file
    +    `}_updateManifest(e){this.manifest={...e}}_updateLoading(e){this.loading=e.detail.value}hashCode(e){return e.split("").reduce(((e,t)=>0|(e=(e<<5)-e+t.charCodeAt(0))),0)}nodeNormalizeIDs(e){if(e.tagName&&null==e.getAttribute("id")&&["H1","H2","H3","H4","H5","H6"].includes(e.tagName))if(e.getAttribute("resource"))e.setAttribute("id",e.getAttribute("resource"));else{let t=e.tagName.toLowerCase()+"-"+this.hashCode(e.innerText);e.setAttribute("id",t)}}_updateActiveItemContent(e){if(e){let t=globalThis.document.createElement("div");t.innerHTML=e;for(const e of t.childNodes)this.nodeNormalizeIDs(e);e=t.innerHTML,this.__pageContent=e,this._activeItemContentChanged(this.__pageContent,d(h.activeItem))}else h.cmsSiteEditorBackend.instance&&h.cmsSiteEditorBackend.instance.updateActiveItemContent&&h.cmsSiteEditorBackend.instance.updateActiveItemContent()}display404Error(){if(h.themeElement){let e=globalThis.document.createDocumentFragment(),t=globalThis.document.createElement("p");t.innerHTML=`<strong>${h.getInternalRoute()}</strong> ${this.t.couldNotBeLocated}. ${this.t.hereAreSomePossibleRemedies}\n      <ul>\n        <li><a href="x/search?search=${h.getInternalRoute()}">${this.t.useSearchToLocateTheContentYouAreLookingFor}</a></li>\n        <li><a href="./">${this.t.goToTheHomePage}</a></li>\n        <li>${this.t.navigateToAnotherPageInTheMenu}</li>\n      </ul>`,e.appendChild(t),s(h.themeElement,"*"),h.themeElement.appendChild(e)}}renderInternalRoute(){if(h.themeElement){let e=globalThis.document.createDocumentFragment();h.activeItem.component&&import(`../ui-components/routes/${h.activeItem.component}.js`).then((()=>{let t=globalThis.document.createElement(h.activeItem.component);e.appendChild(t),s(h.themeElement,"*"),h.themeElement.appendChild(e)}))}}async loadPageData(){if(this.activeItemLocation&&!this.loading){this.loading=!0;let e=`${this.outlineLocation}${this.activeItemLocation}`;this._timeStamp&&(-1!=e.indexOf("?")?e+=`&${this._timeStamp}`:e+=`?${this._timeStamp}`),"hax-internal-route.html"===this.activeItemLocation?(this.renderInternalRoute(),this.loading=!1):await fetch(e).then((e=>{if(e.ok)return e.text();this.display404Error()})).then((e=>{this._updateActiveItemContent(e),this.loading=!1})).catch((e=>{this.lastErrorChanged(e)}))}}async loadJOSData(){if(this.file){this.loading=!0;let e=`${this.outlineLocation}${this.file}`;try{let e=JSON.parse(this.file);this._updateManifest(e),this.loading=!1}catch(t){this._timeStamp&&""!=this._timeStamp&&(-1!=e.indexOf("?")?e+=`&${this._timeStamp}`:e+=`?${this._timeStamp}`);await fetch(e,{cache:"no-cache"}).then((e=>{if(e.ok)return e.json()})).then((e=>{this._updateManifest(e),this.loading=!1})).catch((e=>{this.lastErrorChanged(e)}))}}}updated(e){super.updated&&super.updated(e);let t=!1,a=!1;e.forEach(((e,i)=>{["outlineLocation","activeItemLocation"].includes(i)&&""!=this[i]&&(a=!0),["outlineLocation","file"].includes(i)&&""!=this[i]&&(t=!0),"_timeStamp"==i&&this[i]&&(t=!0,a=!0),"themeData"==i?this._themeChanged(this[i],e):"themeName"==i?this._themeNameChanged(this[i],e):"outlineLocation"==i?this.dispatchEvent(new CustomEvent("outline-location-changed",{bubbles:!0,cancelable:!0,composed:!0,detail:this[i]})):"manifest"==i&&(this.dispatchEvent(new CustomEvent("manifest-changed",{bubbles:!0,cancelable:!0,composed:!0,detail:this[i]})),this._manifestChanged(this[i],e))})),t&&this.__ready&&this.loadJOSData(),a&&this.__ready&&this.loadPageData()}static get properties(){return{...super.properties,activeItemLocation:{type:String,attribute:"active-item-location"},disableFeatures:{type:String,reflect:!0,attribute:"disable-features"},_timeStamp:{type:String},isLoggedIn:{type:Boolean,reflect:!0,attribute:"is-logged-in"},queryParams:{type:Object},loading:{type:Boolean,reflect:!0},outlineLocation:{type:String,attribute:"outline-location"},manifest:{type:Object},themeData:{type:Object},themeName:{type:String},__imported:{type:Object},themeLoaded:{type:Boolean,reflect:!0,attribute:"theme-loaded"},file:{type:String},baseURI:{type:String,attribute:"base-uri"}}}_themeNameChanged(e){e&&(h.themeElement&&h.themeElement.remove(),s(this,"*"),h.themeElement=globalThis.document.createElement(e),h.themeElement.classList.add("haxcms-theme-element"),this.appendChild(h.themeElement))}lastErrorChanged(e){e&&(console.error(e),e.detail&&e.detail.value?(globalThis&&globalThis.location&&globalThis.appSettings&&globalThis.appSettings.reloadOnError&&globalThis.location.reload(),h.toast(e.detail.value.status+" "+e.detail.value.statusText,5e3,{fire:!0})):globalThis&&globalThis.location&&globalThis.appSettings&&globalThis.appSettings.reloadOnError&&globalThis.location.reload())}constructor(){for(var e in super(),this.__pageContent="",this.windowControllers=new AbortController,this.t={...super.t,pageNotFound:"Page not found",navigateToAnotherPageInTheMenu:"Navigate to another page in the menu",couldNotBeLocated:"could not be located",hereAreSomePossibleRemedies:"Here are some possible remedies:",useSearchToLocateTheContentYouAreLookingFor:"Use Search to locate the content you are looking for",goToTheHomePage:"Go to the home page"},this.registerLocalization({context:this,namespace:"haxcms",localesPath:new URL("../../locales/haxcms.es.json",import.meta.url).href.replace("/haxcms.es.json","/"),locales:["es"]}),this._timeStamp=Math.floor(Date.now()/1e3),this.disableFeatures="",this.isLoggedIn=!1,this.__disposer=[],this.queryParams={},this.loading=!1,this.__imported={},this.themeLoaded=!1,this.outlineLocation="",this.activeItemLocation="",m.storePieces.siteBuilder=this,this.children)if(this.children[e].tagName&&this.children[e].getAttribute("slot")){const t=this.children[e].cloneNode(!0);let a=t.getAttribute("slot");switch(a){case"haxcms-site-editor-ui-prefix-avatar":case"haxcms-site-editor-ui-prefix-buttons":case"haxcms-site-editor-ui-suffix-buttons":case"haxcms-site-editor-ui-main-menu":case"haxcms-site-editor-ui-topbar-character-button":h.setupSlots[a].push(t)}}globalThis.addEventListener("hax-store-ready",this.storeReady.bind(this),{signal:this.windowControllers.signal}),globalThis.addEventListener("haxcms-trigger-update",this._triggerUpdatedData.bind(this),{signal:this.windowControllers.signal}),globalThis.addEventListener("haxcms-trigger-update-node",this._triggerUpdatedNode.bind(this),{signal:this.windowControllers.signal}),window.matchMedia("(prefers-color-scheme: dark)").addEventListener("change",darkToggle,{signal:this.windowControllers.signal}),r((()=>{l("app-hax-darkMode",d(h.darkMode)),d(h.darkMode)?globalThis.document.body.classList.add("dark-mode"):globalThis.document.body.classList.remove("dark-mode")})),r((()=>{this.isLoggedIn=d(h.isLoggedIn);const e=Math.floor(Date.now()/1e3);this.isLoggedIn&&!this.loggedInTime&&(this.loggedInTime=e,this._timeStamp=this.loggedInTime)}))}displayConsoleWarning(){setTimeout((()=>{console.warn("%c⚠️STOP⚠️","color: white; font-weight: bold; font-size: 5em;font-family: arial; background-color: darkred; border: 5px solid white; border: 5px solid white;"),console.warn('%cThis is a browser feature intended for developers. If someone told you to copy and paste something here to enable a hidden feature or "hack" someone\'s account, it is a scam and will give them access to your account.',"font-size: 1.5em; font-family: arial; color: white; background-color: darkred; ")}),3500)}displayConsoleLearnMore(){setTimeout((()=>{console.log("%c👩‍💻HAXcms🧑‍💻","color: white; font-weight: bold; padding: 10px; font-size: 5em;font-family: arial; background-color: black; border: 5px solid white; border: 5px solid white; font-style: italic;"),console.log("%cThis site was created using HAXcms.\nLearn more about HAXcms at https://hax.psu.edu/.","color: white; background-color: black; font-size: 1.5em; font-family: arial; padding: 10px;")}),3e3)}firstUpdated(e){super.firstUpdated&&super.firstUpdated(e),this.displayConsoleLearnMore(),this.__ready=!0,h.appReady=!0,globalThis.dispatchEvent(new CustomEvent("haxcms-ready",{bubbles:!0,composed:!0,cancelable:!1,detail:this})),import("./haxcms-editor-builder.js").then((e=>{import("./haxcms-toast.js"),this.editorBuilder=globalThis.document.createElement("haxcms-editor-builder"),this.parentNode?this.parentNode.insertBefore(this.editorBuilder,this):globalThis.document.body.appendChild(this.editorBuilder),"published"!==m.getApplicationContext()?this._timeStamp=Math.floor(Date.now()/1e3):this._timeStamp=""})).catch((e=>{console.warn(e)})),globalThis.dispatchEvent(new Event("resize")),setTimeout((()=>{r((e=>{if(this.themeData=d(h.themeData),this.themeData){const e=new URLSearchParams(globalThis.location.search),t=e.get("format");if(null!=t&&"print-page"===t)this.themeData.element="haxcms-print-theme";const a=e.get("disable-features");null!=a&&(this.disableFeatures=a)}this.themeData&&this.themeData.element!==this.themeName&&(this.themeName=this.themeData.element),this.__disposer.push(e)})),r((e=>{const t=d(h.activeItem);t&&this.__pageContent&&this._activeItemContentChanged(this.__pageContent,t),t&&t.location&&(this.activeItemLocation="",setTimeout((()=>{this.activeItemLocation=t.location}),0)),this.__disposer.push(e)}))}),0)}disconnectedCallback(){for(var e in this.__disposer)this.__disposer[e].dispose();this.windowControllers.abort(),super.disconnectedCallback()}storeReady(e){h.cmsSiteEditor&&h.cmsSiteEditor.instance&&globalThis.HaxStore.requestAvailability().activeHaxBody&&h.activeItemContent&&globalThis.HaxStore.requestAvailability().activeHaxBody.importContent(h.activeItemContent)}replaceTagReplacement(e){for(var t=/\<(\w+?\-\w*.*)\s*?\>/gim,a=t.exec(e);null!=a;){let i=a[1].replace("<","").replace(">","");i.indexOf(" ")&&(i=i.split(" ")[0]),-1!=i.indexOf("-")&&(e=(e=e.replace("<"+i,'<replace-tag with="'+i+'" ')).replace("</"+i+">","</replace-tag>")),a=t.exec(e)}return e}_activeItemContentChanged(e,t){var a=e;null!==a&&t&&t.metadata&&(s(h.themeElement,"*"),a=`<page-break\n      break-type="site"\n      title="${t.title}"\n      parent="${t.parent}"\n      item-id="${t.id}"\n      slug="${t.slug}"\n      description="${t.description}"\n      order="${t.order}"\n      ${t.metadata.pageType?`page-type="${t.metadata.pageType}"`:""}\n      ${t.metadata.tags?`tags="${t.metadata.tags}"`:""}\n      ${t.metadata.hideInMenu?'hide-in-menu="hide-in-menu"':""}\n      ${t.metadata.relatedItems?`related-items="${t.metadata.relatedItems}"`:""}\n      ${t.metadata.image?`image="${t.metadata.image}"`:""}\n      ${t.metadata.icon?`icon="${t.metadata.icon}"`:""}\n      ${t.metadata.accentColor?`accent-color="${t.metadata.accentColor}"`:""}\n      ${t.metadata.theme&&t.metadata.theme.key?`developer-theme="${t.metadata.theme.key}"`:""}\n      ${t.metadata.locked?'locked="locked"':""}\n      ${!1===t.metadata.published?"":'published="published"'} ></page-break>${a}`,a=i(a),h.activeItemContent=a,setTimeout((()=>{if(0===h.themeElement.childNodes.length){let e=document.createRange().createContextualFragment(this.replaceTagReplacement(a));h.themeElement.appendChild(e),this.dispatchEvent(new CustomEvent("json-outline-schema-active-body-changed",{bubbles:!0,composed:!0,cancelable:!1,detail:a}))}if(!globalThis.WCAutoload&&n(this.manifest,"metadata.node.dynamicElementLoader")){let t=o(a);const i=new URL("../../locales/haxcms.es.json",import.meta.url).href+"/../";for(var e in t){const a=t[e];this.manifest.metadata.node.dynamicElementLoader[a]&&!globalThis.customElements.get(a)&&import(`${i}../../../../${this.manifest.metadata.node.dynamicElementLoader[a]}`).then((e=>{})).catch((e=>{console.warn(e)}))}}else globalThis.WCAutoload&&setTimeout((()=>{globalThis.WCAutoload.process()}),0)}),5))}_triggerUpdatedData(e){this.isLoggedIn?this._timeStamp=Math.floor(Date.now()/1e3):this._timeStamp=""}_triggerUpdatedNode(e){this.loadPageData()}_manifestChanged(e,t){e&&e.metadata&&e.items&&h.loadManifest(e,this)}_themeChanged(e,t){if(e){this.themeLoaded=!1;let t=e;if(void 0!==this.__imported[t.element])this.themeLoaded=!0;else if(globalThis.WCAutoload)this.__imported[t.element]=t.element,this.themeLoaded=!0,setTimeout((()=>{globalThis.WCAutoload.process(),globalThis.dispatchEvent(new CustomEvent("haxcms-theme-ready",{bubbles:!0,composed:!0,cancelable:!1,detail:this}))}),5);else try{import(new URL("./../../../../../"+e.path,import.meta.url).href).then((e=>{this.__imported[t.element]=t.element,this.themeLoaded=!0}))}catch(e){this.themeLoaded=!0}}}}globalThis.HAXme=function(e=null){null==e&&(e="demo",globalThis.appSettings={login:"dist/dev/login.json",logout:"dist/dev/logout.json",saveNodePath:"dist/dev/saveNode.json",saveManifestPath:"dist/dev/saveManifestPath.json",createNodePath:"dist/dev/saveNode.json",deleteNodePath:"dist/dev/saveNode.json",saveOutlinePath:"dist/dev/saveNode.json",getSiteFieldsPath:"dist/dev/getSiteFieldsPath.json",getFormToken:"adskjadshjudfu823u823u8fu8fij",appStore:{url:"dist/dev/appstore.json"},jwt:"made-up-thing",themes:{"haxcms-dev-theme":{element:"haxcms-dev-theme",path:"@haxtheweb/haxcms-elements/lib/haxcms-dev-theme.js",name:"Developer theme"}}}),"demo"==e&&(globalThis.HAXCMSContext="demo"),globalThis.document.body&&(globalThis.document.body.querySelector("haxcms-editor-builder").__appliedContext=!1,globalThis.document.body.querySelector("haxcms-editor-builder").applyContext(e))},globalThis.customElements.define(HAXCMSSiteBuilder.tag,HAXCMSSiteBuilder);export{HAXCMSSiteBuilder};
    \ No newline at end of file
    
  • src/public/build/es6/node_modules/@haxtheweb/haxcms-elements/lib/core/haxcms-site-editor-ui.js+1 0 modified
    @@ -380,6 +380,7 @@ import{html as e,css as t,unsafeCSS as o}from"../../../../lit/index.js";import{s
                 href="${this.backLink}"
                 class="haxLogo"
                 id="backtosites"
    +            title="${this.backText}"
                 part="hax-logo"
               >
                 <simple-icon-lite icon="hax:hax2022"></simple-icon-lite>
    
  • src/public/build/es6/node_modules/@haxtheweb/haxcms-elements/lib/core/haxcms-site-store.js+1 1 modified
    @@ -1 +1 @@
    -import{observable as e,makeObservable as t,computed as i,autorun as a,toJS as s,configure as n}from"../../../../mobx/dist/mobx.esm.js";import{varExists as r,varGet as o,localStorageGet as l}from"../../../utils/utils.js";import{JsonOutlineSchema as c}from"../../../json-outline-schema/json-outline-schema.js";import{DeviceDetails as m}from"../../../replace-tag/lib/PerformanceDetect.js";import{SimpleIconsetStore as d}from"../../../simple-icon/lib/simple-iconset.js";import{UserScaffoldInstance as h}from"../../../user-scaffold/user-scaffold.js";n({enforceActions:!1});export function iconFromPageType(e){switch(e){case"content":return"lrn:page";case"assessment":return"lrn:assessment";case"quiz":return"lrn:quiz";case"submission":return"icons:move-to-inbox";case"lesson":return"hax:lesson";case"module":return"hax:module";case"unit":return"hax:unit";case"task":return"hax:task";case"activity":return"hax:ticket";case"project":return"hax:bulletin-board";case"practice":return"hax:shovel";case"connection":return"courseicons:chem-connection";case"knowledge":return"courseicons:knowledge";case"strategy":case"discuss":case"make":case"observe":case"present":case"read":case"reflect":case"research":case"watch":return"courseicons:strategy";case"listen":return"courseicons:listen";case"write":return"lrn:write"}return"courseicons:learning-objectives"}export const store=new class Store{constructor(){this.badDevice=!1,this.internalRoutes={search:{},views:{},tags:{}},this.evaluatebadDevice(),this.location=null,this.currentRouterLocation={},this.jwt=null,this.version=null,this.soundStatus=l("app-hax-soundStatus",!0),this.darkMode=!!l("app-hax-darkMode")&&l("app-hax-darkMode"),this.setupSlots={"haxcms-site-editor-ui-prefix-avatar":[],"haxcms-site-editor-ui-prefix-buttons":[],"haxcms-site-editor-ui-suffix-buttons":[],"haxcms-site-editor-ui-main-menu":[],"haxcms-site-editor-ui-topbar-character-button":[]},fetch(new URL("../../package.json",import.meta.url)).then((e=>e.json())).then((e=>this.version=e.version)),this.appReady=!1,this.editMode=!1,this.manifest=null,this.pageAllowed=!1,this.activeItemContent="",this.themeElement=null,this.themeStyleElement=globalThis.document.createElement("style"),this.themeStyleElement.id="haxcms-theme-global-style-element",this.t={close:"Close",search:"Search",views:"Content views",tags:"Content tags",pageNotFound:"Page not found"},this.activeId=null,this.userData={},this.cmsSiteEditor={instance:null},this.cmsSiteEditorBackend={instance:null},this._registration={},t(this,{location:e.ref,currentRouterLocation:e.ref,internalRoutes:e,editMode:e,jwt:e,userData:e,manifest:e,activeItemContent:e,themeElement:e,version:e,routerManifest:i,siteTitle:i,siteDescription:i,isLoggedIn:i,themeData:i,regionData:i,entityData:i,homeLink:i,activeId:e,activeItem:i,activeItemFields:i,activeManifestIndex:i,activeManifestIndexCounter:i,activeTitle:i,activeTags:i,parentTitle:i,ancestorTitle:i,ancestorItem:i,pageCounter:i,darkMode:e,soundStatus:e,appReady:e,badDevice:e,pageAllowed:e})}get entityData(){if(this.manifest&&this.manifest.items){var e={};return this.manifest.items.map((t=>{t.metadata&&(e[t.id]={id:t.id,title:t.title,color:t.metadata.color||null,icon:t.metadata.icon||null,type:t.metadata.entityType||"page"})})),e}}get regionData(){if(this.manifest){return r(this.manifest,"metadata.theme.regions")?this.manifest.metadata.theme.regions:{header:null,sidebarFirst:null,sidebarSecond:null,contentTop:null,contentBottom:null,footerPrimary:null,footerSecondary:null}}}getUniqueSlugName(e,t=null,i=!1){let a=e;if(null!=t&&null!=t.parent&&""!=t.parent&&i){let i=t,s=[e];for(;i=this.findItem(i.parent);){let e=i.slug.split("/");s.unshift(e.pop())}a=e=s.join("/")}let s=0,n=!1;for(;!n;)for(var r in n=!0,this.manifest.items){let i=this.manifest.items[r];if(a==i.slug){if(null!=t&&i.id==t.id)return a;s++,a=e+"-"+s,n=!1}}return a.toLowerCase().split(" ").join("-").replace(/[^0-9\-\/a-z]/gi,"")}async evaluatebadDevice(){this.badDevice=await m.badDevice(),this.badDevice&&(this.soundStatus=!1)}playSound(e){if(this.soundStatus&&this.appReady)try{switch(e){case"click":case"click2":case"coin":case"coin2":case"hit":case"success":case"error":"error"==e&&(e="hit"),this.audio=new Audio(new URL(`../../../app-hax/lib/assets/sounds/${e}.mp3`,import.meta.url).href),this.audio.volume=.3,this.audio.play();break;default:this.audio=new Audio(new URL("../../../app-hax/lib/assets/sounds/hit.mp3",import.meta.url).href),this.audio.volume=.3,this.audio.play(),console.warn(`${e} is not a valid sound file yet`)}}catch(e){console.warn(e)}}toast(e,t=2e3,i={},a="capsule",s=this.t.close,n=null,r=null){this.appReady&&globalThis.dispatchEvent(new CustomEvent("haxcms-toast-show",{bubbles:!0,composed:!0,cancelable:!0,detail:{text:e,duration:t,classStyle:a,closeText:s,eventCallback:n,slot:r,...i}}))}async loadManifest(e,t=null){if(null==t&&window&&(t=window),r(e,"metadata.siteName")){let t=o(e,"publishing.git",{});e.metadata.site={name:e.metadata.siteName,git:t,created:e.metadata.created,updated:e.metadata.updated},e.metadata.theme.variables={image:e.metadata.image,icon:e.metadata.icon,hexCode:e.metadata.hexCode,cssVariable:e.metadata.cssVariable},e.metadata.node={dynamicElementLoader:e.metadata.dynamicElementLoader,fields:e.metadata.fields},delete e.metadata.publishing,delete e.metadata.created,delete e.metadata.updated,delete e.metadata.siteName,delete e.metadata.image,delete e.metadata.icon,delete e.metadata.hexCode,delete e.metadata.cssVariable,delete e.metadata.dynamicElementLoader,delete e.metadata.fields}await e.items.forEach(((e,t,i)=>{e.slug||(i[t].slug=e.location.replace("pages/","").replace("/index.html","")),e.metadata.hasOwnProperty("published")||(i[t].metadata.published=!0),i[t].order=Number(i[t].order),e.metadata.hasOwnProperty("locked")||(i[t].metadata.locked=!1),e.metadata.hasOwnProperty("status")||(i[t].metadata.status="")}));var i=new c,a=i.itemsToNodes(e.items),s=i.nodesToItems(a),n=[];for(var l in s)n.push(e.items.find((e=>e.id===s[l].id)));globalThis.document.documentElement&&e.metadata.site.lang&&(globalThis.document.documentElement.lang=e.metadata.site.lang,globalThis.dispatchEvent(new CustomEvent("languagechange",{detail:e.metadata.site.lang}))),e.items=n,this.manifest=e,t.dispatchEvent(new CustomEvent("json-outline-schema-changed",{bubbles:!0,composed:!0,cancelable:!1,detail:e})),globalThis.dispatchEvent(new CustomEvent("haxcms-item-rebuild",{bubbles:!0,composed:!0,cancelable:!1,detail:!0}))}cmsSiteEditorAvailability(){return this.cmsSiteEditor.instance||(this.cmsSiteEditor.instance=globalThis.document.createElement("haxcms-site-editor")),this.cmsSiteEditor.instance}get processedItems(){}getItemChildren(e){if(this.manifest&&this.manifest.items)return this.manifest.items.filter((t=>t.parent===e))}_computeItems(e,t,i,a,s){if(s){let n,r=[],o=[];switch(s.items.forEach((e=>{e.parent||r.push(e)})),a){case"parent":n=s.items.find((e=>i===e.id)),n&&(i=n.parent);break;case"ancestor":for(n=s.items.find((e=>i===e.id));n&&null!=n.parent;)n=s.items.find((e=>e.id==n.parent));n&&(i=n.id)}return r.forEach(((a,s)=>{this._spiderChildren(a,o,e,t,i,!1)})),o}}_setChildren(e,t){const i=t.filter((t=>e.id===t.parent));e.children=i,e.children.length>0&&e.children.forEach((e=>{this._setChildren(e,t)}))}get routerManifest(){const e=this.manifest;if(globalThis.document.body.dispatchEvent(new CustomEvent("json-outline-schema-changed",{bubbles:!0,composed:!0,cancelable:!1,detail:e})),e&&void 0!==e.items){let t=e.items.map((t=>{let i=null,a=null,s=e.items.find((e=>t.parent===e.id));s&&(i=s.location,a=s.slug);let n=t.metadata,r=t.location,o=t.slug;return n&&n.pageType&&!n.icon&&(t.metadata.icon=iconFromPageType(n.pageType)),Object.assign({},t,{parentLocation:i,parentSlug:a,location:r,slug:o,metadata:n})}));if(t.forEach(((e,i)=>{this._setChildren(e,t)})),!0===o(e,"metadata.site.settings.publishPagesOn",!0)){const filterHiddenParentsRecursive=e=>{if(!1===e.metadata.published)return!1;const i=t.find((t=>t.id===e.parent));return!i||filterHiddenParentsRecursive(i)};this.isLoggedIn||(t=t.filter((e=>filterHiddenParentsRecursive(e))))}return Object.assign({},e,{items:t})}}get siteTitle(){return this.manifest&&this.manifest.title?this.manifest.title:""}get siteDescription(){return this.manifest&&this.manifest.description?this.manifest.description:""}get homeLink(){if(this.manifest){const e=this.manifest.items.find((e=>void 0!==e.id));if(e)return e.slug}return"/"}get activeItem(){let e=this.findItem(this.activeId);if(this.activeId&&HAXcmsStore.storePieces&&HAXcmsStore.storePieces.siteRouter&&null==e&&"404"===this.activeId){e={id:"404",_internalRoute:!0,title:this.t.pageNotFound,location:"hax-fake-404.html"};const t=store.getInternalRoute();t&&store.internalRoutes[t]&&("function"==typeof store.internalRoutes[t].callback&&store.internalRoutes[t].callback(),e={id:"x/"+t,_internalRoute:!0,component:`site-${t}-route`,title:this.t[t]||t,location:"hax-internal-route.html"})}return e||null}get activeItemFields(){if(this.activeItem&&this.activeItem.metadata){let e={title:this.activeItem.title,description:this.activeItem.description,location:this.activeItem.location,slug:this.activeItem.slug,created:this.activeItem.metadata.created,updated:this.activeItem.metadata.created};if(this.activeItem.metadata.fields)return Object.assign({},e,this.activeItem.metadata.fields)}}get themeData(){if(this.manifest){var e={};return e=r(this.manifest,"metadata.theme")?this.manifest.metadata.theme:{"haxcms-basic-theme":{element:"haxcms-basic-theme",path:"@haxtheweb/haxcms-elements/lib/core/themes/haxcms-basic-theme.js",name:"Basic theme",variables:{icon:"icons:record-voice-over",hexCode:"#da004e",cssVariable:"pink",image:"assets/banner.jpg",imageAlt:"",imageLink:""},regions:{header:null,sidebarFirst:null,sidebarSecond:null,contentTop:null,contentBottom:null,footerPrimary:null,footerSecondary:null}}},this.activeItem&&r(this.activeItem,"metadata.theme")?this.activeItem.metadata.theme:e}}get activeManifestIndex(){if(this.manifest&&this.manifest.items&&this.activeId)for(var e in this.manifest.items)if(this.manifest.items[e].id===this.activeId)return parseInt(e);return-1}get activeRouterManifestIndex(){if(this.routerManifest&&this.routerManifest.items&&this.activeId)for(var e in this.routerManifest.items)if(this.routerManifest.items[e].id===this.activeId)return parseInt(e);return-1}get activeManifestIndexCounter(){return null!==this.activeManifestIndex?1+this.activeManifestIndex:0}get activeTitle(){return this.activeItem?this.activeItem.title:""}get activeTags(){return this.activeItem&&this.activeItem.metadata&&this.activeItem.metadata.tags?this.activeItem.metadata.tags:null}get parentTitle(){if(this.manifest&&this.activeItem){let e=this.manifest.items.find((e=>this.activeItem.parent===e.id));if(e)return e.title}return""}get pageCounter(){return{current:this.activeManifestIndexCounter,total:this.manifest.items.length}}get siblingsPrevNext(){if(this.manifest.items&&this.activeItem){const e=this.manifest.items.filter((e=>e.parent===this.activeItem.parent)),t=e.findIndex((e=>e.id===this.activeItem.id));return{prev:e[t-1]||null,next:e[t+1]||null}}return{prev:null,next:null}}get isLoggedIn(){return!(!this.jwt||"null"==this.jwt)}get ancestorTitle(){if(this.manifest&&this.activeItem){let e=this.manifest.items.find((e=>this.activeItem.parent===e.id));for(;e&&null!=e.parent;)e=this.manifest.items.find((t=>t.id==e.parent));if(e)return e.title}return""}get ancestorItem(){if(this.manifest&&this.activeItem){let e=this.manifest.items.find((e=>this.activeItem.parent===e.id));for(;e&&null!=e.parent;)e=this.manifest.items.find((t=>t.id==e.parent));if(e)return e}return null}findItem(e){return this.manifest&&e?this.manifest.items.find((t=>t.id===e)):null}async getLastChildItem(e){if(this.manifest){let t={};return await this.manifest.items.map((i=>{i.parent===e&&(void 0===t.order||t.order<i.order)&&(t=i)})),t}return null}async findItemAsObject(e,t="id",i="item",a=!0){if(this.manifest&&e){var n=await this.manifest.items.find((i=>i[t]===e));if(a&&(n=s(n)),"item"==i)return n;if("parent"==i&&n.parent)return s(await this.manifest.items.find((e=>n.parent===e.id)))}return null}fallbackItemSlug(){if(this.manifest&&this.activeItem){if(this.activeManifestIndex>0&&this.manifest.items[this.activeManifestIndex-1])return this.manifest.items[this.activeManifestIndex-1].slug;if(this.activeManifestIndex<this.manifest.items.length-1&&this.manifest.items[this.activeManifestIndex+1])return this.manifest.items[this.activeManifestIndex+1].slug}return null}getManifestItems(e=!0){return e?s(this.manifest.items):this.manifest.items}getManifest(e=!0){return e?s(this.manifest):this.manifest}async addItem(e){var t=new c;let i=t.newItem();e.id&&(i.id=e.id),e.indent&&(i.indent=e.indent),i.location=e.location,i.slug=e.slug,i.order=e.order,i.parent=e.parent,i.title=e.title,i.metadata=e.metadata,t.items=s(this.manifest.items);let a={...t.validateItem(i)};t.items.push(a);var n=t.itemsToNodes(t.items),r=t.nodesToItems(n),o=[];for(var l in r)o.push(t.items.find((e=>e.id===r[l].id)));return this.manifest.items.replace(o),globalThis.dispatchEvent(new CustomEvent("json-outline-schema-changed",{bubbles:!0,composed:!0,cancelable:!1,detail:this.manifest})),globalThis.dispatchEvent(new CustomEvent("haxcms-item-rebuild",{bubbles:!0,composed:!0,cancelable:!1,detail:!0})),this.findItem(i.id)}removeItem(e){const t=this.findItem(e);if(t)if("new"===t.metadata.status){const e=this.manifest.items.indexOf(t);e>-1&&this.manifest.items.splice(e,1)}else t.metadata.status="delete"}spiderChildren(e,t,i,a,s,n,r){e.id===s||n?(n||(n=!0,!r&&e.indent>=i&&(i+=e.indent,a+=e.indent)),e.indent>=i&&e.indent<=a&&t.push(e),e.children.length>0&&e.children.forEach((e=>{this.spiderChildren(e,t,i,a,s,n,r)}))):e.children.length>0&&e.children.forEach((e=>{this.spiderChildren(e,t,a,s,n,r)}))}getInternalRoute(){return!!(this.currentRouterLocation&&this.currentRouterLocation.params&&this.currentRouterLocation.params[0])&&this.currentRouterLocation.params[0].replace("x/","")}computeItems(e,t,i,a,s,n){if(s){let r,o=[],l=[];switch(s.items.forEach((e=>{e.parent||o.push(e)})),a){case"parent":r=s.items.find((e=>i===e.id)),r&&(i=r.parent);break;case"ancestor":for(r=s.items.find((e=>i===e.id));r&&null!=r.parent;)r=s.items.find((e=>e.id==r.parent));r&&(i=r.id)}return s.items.forEach(((a,s)=>{store.spiderChildren(a,l,e,t,i,!1,n)})),l}}};globalThis.HAXCMS=globalThis.HAXCMS||{},globalThis.HAXCMS.setTheme=function(e){globalThis.HAXCMS.instance.store.manifest.metadata.theme.element=e},globalThis.HAXCMS.requestAvailability=()=>(globalThis.HAXCMS.instance||(globalThis.HAXCMS.instance=globalThis.document.createElement("haxcms-site-store"),globalThis.document.body.appendChild(globalThis.HAXCMS.instance)),globalThis.HAXCMS.instance);export const HAXcmsStore=globalThis.HAXCMS.requestAvailability();class HAXCMSSiteStore extends HTMLElement{constructor(){super(),this.storePieces={},this.store=store,this.source="",globalThis.addEventListener("playaudio",this.playSoundEvent.bind(this)),a((()=>{if(store.location&&store.location.route&&store.location.route.component){const e=store.location.route.name;if(store.manifest.items.find((t=>t.id===e)))store.activeId=e;else{const e=store.manifest.items.find((e=>void 0!==e.id));e&&(store.activeId=e.id)}}})),a((()=>{const e=s(store.findItem(store.activeId));e&&(globalThis.document.body.dispatchEvent(new CustomEvent("json-outline-schema-active-item-changed",{bubbles:!0,composed:!0,cancelable:!1,detail:e})),globalThis.document.title=store.activeTitle)})),a((()=>{if(store.appReady){const e=globalThis.document.querySelector('link[rel="icon"]');e&&(this.faviconSiteDefault=e.href,this.faviconInstance=e)}})),a((()=>{const e=h.readMemory("versionLatest");store.version&&e!=store.version&&(null==e&&h.writeMemory("versionInitial",store.version,"long"),h.writeMemory("versionLatest",store.version,"long"))})),a((()=>{const e=s(store.editMode);globalThis.HaxStore&&globalThis.HaxStore.requestAvailability()&&globalThis.HaxStore.requestAvailability().write&&(globalThis.dispatchEvent(new CustomEvent("haxcms-edit-mode-changed",{bubbles:!0,composed:!0,cancelable:!1,detail:e})),globalThis.HaxStore.requestAvailability().editMode=e,globalThis.HaxStore.requestAvailability().toastShowEventName="haxcms-toast-show")}))}playSoundEvent(e){this.store.playSound(e.detail.sound)}connectedCallback(){globalThis.document.body.appendChild(this.store.themeStyleElement)}disconnectedCallback(){this.store.themeStyleElement.remove(),this.store.themeStyleElement=globalThis.document.createElement("style")}resetFavicon(){this.setFavicon()}setFavicon(e=null,t=!0){e?t&&(e=d.getIcon(e)):e=this.faviconSiteDefault,this.faviconInstance&&this.faviconInstance.setAttribute("href",e)}resetCursor(){this.setCursor()}setCursor(e=null,t=!0){e?(t&&(e=d.getIcon(e)),globalThis.document.body.style.cursor=`url("${e}") 16 16, pointer`):globalThis.document.body.style.removeProperty("cursor")}getApplicationContext(){let e="";if("undefined"!=typeof DatArchive)e="beaker";else switch(globalThis.HAXCMSContext){case"published":case"nodejs":case"php":case"11ty":case"demo":case"desktop":case"local":case"userfs":e=globalThis.HAXCMSContext;break;default:e="php"}return e}static get tag(){return"haxcms-site-store"}static get observedAttributes(){return["source"]}set source(e){this[name]=e,e&&this.setAttribute("source",e)}get source(){return this.getAttribute("source")}attributeChangedCallback(e,t,i){"source"==e&&""!=i&&fetch(this[e]).then((e=>e.json())).then((e=>{this.store.loadManifest(e)})).catch((e=>{console.warn(e)}))}}globalThis.customElements.define(HAXCMSSiteStore.tag,HAXCMSSiteStore);export{HAXCMSSiteStore};
    \ No newline at end of file
    +import{observable as e,makeObservable as t,computed as i,autorun as a,toJS as s,configure as n}from"../../../../mobx/dist/mobx.esm.js";import{varExists as r,varGet as o,localStorageGet as l}from"../../../utils/utils.js";import{JsonOutlineSchema as c}from"../../../json-outline-schema/json-outline-schema.js";import{DeviceDetails as m}from"../../../replace-tag/lib/PerformanceDetect.js";import{SimpleIconsetStore as d}from"../../../simple-icon/lib/simple-iconset.js";import{UserScaffoldInstance as h}from"../../../user-scaffold/user-scaffold.js";n({enforceActions:!1});export function iconFromPageType(e){switch(e){case"content":return"lrn:page";case"assessment":return"lrn:assessment";case"quiz":return"lrn:quiz";case"submission":return"icons:move-to-inbox";case"lesson":return"hax:lesson";case"module":return"hax:module";case"unit":return"hax:unit";case"task":return"hax:task";case"activity":return"hax:ticket";case"project":return"hax:bulletin-board";case"practice":return"hax:shovel";case"connection":return"courseicons:chem-connection";case"knowledge":return"courseicons:knowledge";case"strategy":case"discuss":case"make":case"observe":case"present":case"read":case"reflect":case"research":case"watch":return"courseicons:strategy";case"listen":return"courseicons:listen";case"write":return"lrn:write"}return"courseicons:learning-objectives"}export const store=new class Store{constructor(){this.badDevice=!1,this.internalRoutes={search:{},views:{},tags:{}},this.evaluatebadDevice(),this.location=null,this.currentRouterLocation={},this.jwt=null,this.version=null,this.soundStatus=l("app-hax-soundStatus",!0),this.darkMode=!!l("app-hax-darkMode")&&l("app-hax-darkMode"),this.setupSlots={"haxcms-site-editor-ui-prefix-avatar":[],"haxcms-site-editor-ui-prefix-buttons":[],"haxcms-site-editor-ui-suffix-buttons":[],"haxcms-site-editor-ui-main-menu":[],"haxcms-site-editor-ui-topbar-character-button":[]},fetch(new URL("../../package.json",import.meta.url)).then((e=>e.json())).then((e=>this.version=e.version)),this.appReady=!1,this.editMode=!1,this.manifest=null,this.pageAllowed=!1,this.activeItemContent="",this.themeElement=null,this.themeStyleElement=globalThis.document.createElement("style"),this.themeStyleElement.id="haxcms-theme-global-style-element",this.t={close:"Close",search:"Search",views:"Content views",tags:"Content tags",pageNotFound:"Page not found"},this.activeId=null,this.userData={},this.cmsSiteEditor={instance:null},this.cmsSiteEditorBackend={instance:null},this._registration={},t(this,{location:e.ref,currentRouterLocation:e.ref,internalRoutes:e,editMode:e,jwt:e,userData:e,manifest:e,activeItemContent:e,themeElement:e,version:e,routerManifest:i,siteTitle:i,siteDescription:i,isLoggedIn:i,themeData:i,regionData:i,entityData:i,homeLink:i,activeId:e,activeItem:i,activeItemFields:i,activeManifestIndex:i,activeManifestIndexCounter:i,activeTitle:i,activeTags:i,parentTitle:i,ancestorTitle:i,ancestorItem:i,pageCounter:i,darkMode:e,soundStatus:e,appReady:e,badDevice:e,pageAllowed:e})}get entityData(){if(this.manifest&&this.manifest.items){var e={};return this.manifest.items.map((t=>{t.metadata&&(e[t.id]={id:t.id,title:t.title,color:t.metadata.color||null,icon:t.metadata.icon||null,type:t.metadata.entityType||"page"})})),e}}get regionData(){if(this.manifest){return r(this.manifest,"metadata.theme.regions")?this.manifest.metadata.theme.regions:{header:null,sidebarFirst:null,sidebarSecond:null,contentTop:null,contentBottom:null,footerPrimary:null,footerSecondary:null}}}getUniqueSlugName(e,t=null,i=!1){let a=e;if(null!=t&&null!=t.parent&&""!=t.parent&&i){let i=t,s=[e];for(;i=this.findItem(i.parent);){let e=i.slug.split("/");s.unshift(e.pop())}a=e=s.join("/")}let s=0,n=!1;for(;!n;)for(var r in n=!0,this.manifest.items){let i=this.manifest.items[r];if(a==i.slug){if(null!=t&&i.id==t.id)return a;s++,a=e+"-"+s,n=!1}}return a.toLowerCase().split(" ").join("-").replace(/[^0-9\-\/a-z]/gi,"")}async evaluatebadDevice(){this.badDevice=await m.badDevice(),this.badDevice&&(this.soundStatus=!1)}playSound(e){if(this.soundStatus&&this.appReady)try{switch(e){case"click":case"click2":case"coin":case"coin2":case"hit":case"success":case"error":"error"==e&&(e="hit"),this.audio=new Audio(new URL(`../../../app-hax/lib/assets/sounds/${e}.mp3`,import.meta.url).href),this.audio.volume=.3,this.audio.play();break;default:this.audio=new Audio(new URL("../../../app-hax/lib/assets/sounds/hit.mp3",import.meta.url).href),this.audio.volume=.3,this.audio.play(),console.warn(`${e} is not a valid sound file yet`)}}catch(e){console.warn(e)}}toast(e,t=2e3,i={},a="capsule",s=this.t.close,n=null,r=null){this.appReady&&globalThis.dispatchEvent(new CustomEvent("haxcms-toast-show",{bubbles:!0,composed:!0,cancelable:!0,detail:{text:e,duration:t,classStyle:a,closeText:s,eventCallback:n,slot:r,...i}}))}async loadManifest(e,t=null){if(null==t&&window&&(t=window),r(e,"metadata.siteName")){let t=o(e,"publishing.git",{});e.metadata.site={name:e.metadata.siteName,git:t,created:e.metadata.created,updated:e.metadata.updated},e.metadata.theme.variables={image:e.metadata.image,icon:e.metadata.icon,hexCode:e.metadata.hexCode,cssVariable:e.metadata.cssVariable},e.metadata.node={dynamicElementLoader:e.metadata.dynamicElementLoader,fields:e.metadata.fields},delete e.metadata.publishing,delete e.metadata.created,delete e.metadata.updated,delete e.metadata.siteName,delete e.metadata.image,delete e.metadata.icon,delete e.metadata.hexCode,delete e.metadata.cssVariable,delete e.metadata.dynamicElementLoader,delete e.metadata.fields}await e.items.forEach(((e,t,i)=>{e.slug||(i[t].slug=e.location.replace("pages/","").replace("/index.html","")),e.metadata.hasOwnProperty("published")||(i[t].metadata.published=!0),i[t].order=Number(i[t].order),e.metadata.hasOwnProperty("locked")||(i[t].metadata.locked=!1),e.metadata.hasOwnProperty("status")||(i[t].metadata.status="")}));var i=new c,a=i.itemsToNodes(e.items),s=i.nodesToItems(a),n=[];for(var l in s)n.push(e.items.find((e=>e.id===s[l].id)));globalThis.document.documentElement&&e.metadata.site.lang&&(globalThis.document.documentElement.lang=e.metadata.site.lang,globalThis.dispatchEvent(new CustomEvent("languagechange",{detail:e.metadata.site.lang}))),e.items=n,this.manifest=e,t.dispatchEvent(new CustomEvent("json-outline-schema-changed",{bubbles:!0,composed:!0,cancelable:!1,detail:e})),globalThis.dispatchEvent(new CustomEvent("haxcms-item-rebuild",{bubbles:!0,composed:!0,cancelable:!1,detail:!0}))}cmsSiteEditorAvailability(){return this.cmsSiteEditor.instance||(this.cmsSiteEditor.instance=globalThis.document.createElement("haxcms-site-editor")),this.cmsSiteEditor.instance}get processedItems(){}getItemChildren(e){if(this.manifest&&this.manifest.items)return this.manifest.items.filter((t=>t.parent===e))}_computeItems(e,t,i,a,s){if(s){let n,r=[],o=[];switch(s.items.forEach((e=>{e.parent||r.push(e)})),a){case"parent":n=s.items.find((e=>i===e.id)),n&&(i=n.parent);break;case"ancestor":for(n=s.items.find((e=>i===e.id));n&&null!=n.parent;)n=s.items.find((e=>e.id==n.parent));n&&(i=n.id)}return r.forEach(((a,s)=>{this._spiderChildren(a,o,e,t,i,!1)})),o}}_setChildren(e,t){const i=t.filter((t=>e.id===t.parent));e.children=i,e.children.length>0&&e.children.forEach((e=>{this._setChildren(e,t)}))}get routerManifest(){const e=this.manifest;if(globalThis.document.body.dispatchEvent(new CustomEvent("json-outline-schema-changed",{bubbles:!0,composed:!0,cancelable:!1,detail:e})),e&&void 0!==e.items){let t=e.items.map((t=>{let i=null,a=null,s=e.items.find((e=>t.parent===e.id));s&&(i=s.location,a=s.slug);let n=t.metadata,r=t.location,o=t.slug;return n&&n.pageType&&!n.icon&&(t.metadata.icon=iconFromPageType(n.pageType)),Object.assign({},t,{parentLocation:i,parentSlug:a,location:r,slug:o,metadata:n})}));if(t.forEach(((e,i)=>{this._setChildren(e,t)})),!0===o(e,"metadata.site.settings.publishPagesOn",!0)){const filterHiddenParentsRecursive=e=>{if(!1===e.metadata.published)return!1;const i=t.find((t=>t.id===e.parent));return!i||filterHiddenParentsRecursive(i)};this.isLoggedIn||(t=t.filter((e=>filterHiddenParentsRecursive(e))))}return Object.assign({},e,{items:t})}}get siteTitle(){return this.manifest&&this.manifest.title?this.manifest.title:""}get siteDescription(){return this.manifest&&this.manifest.description?this.manifest.description:""}get homeLink(){if(this.manifest){const e=this.manifest.items.find((e=>void 0!==e.id));if(e)return e.slug}return"/"}get activeItem(){let e=this.findItem(this.activeId);if(this.activeId&&HAXcmsStore.storePieces&&HAXcmsStore.storePieces.siteRouter&&null==e&&"404"===this.activeId){e={id:"404",_internalRoute:!0,title:this.t.pageNotFound,location:"hax-fake-404.html"};const t=store.getInternalRoute();t&&store.internalRoutes[t]&&("function"==typeof store.internalRoutes[t].callback&&store.internalRoutes[t].callback(),e={id:"x/"+t,_internalRoute:!0,component:`site-${t}-route`,title:this.t[t]||t,location:"hax-internal-route.html"})}return e||null}get activeItemFields(){if(this.activeItem&&this.activeItem.metadata){let e={title:this.activeItem.title,description:this.activeItem.description,location:this.activeItem.location,slug:this.activeItem.slug,created:this.activeItem.metadata.created,updated:this.activeItem.metadata.created};if(this.activeItem.metadata.fields)return Object.assign({},e,this.activeItem.metadata.fields)}}get themeData(){if(this.manifest){var e={};return e=r(this.manifest,"metadata.theme")?this.manifest.metadata.theme:{"haxcms-basic-theme":{element:"haxcms-basic-theme",path:"@haxtheweb/haxcms-elements/lib/core/themes/haxcms-basic-theme.js",name:"Basic theme",variables:{icon:"icons:record-voice-over",hexCode:"#da004e",cssVariable:"pink",image:"assets/banner.jpg",imageAlt:"",imageLink:""},regions:{header:null,sidebarFirst:null,sidebarSecond:null,contentTop:null,contentBottom:null,footerPrimary:null,footerSecondary:null}}},this.activeItem&&r(this.activeItem,"metadata.theme")?this.activeItem.metadata.theme:e}}get activeManifestIndex(){if(this.manifest&&this.manifest.items&&this.activeId)for(var e in this.manifest.items)if(this.manifest.items[e].id===this.activeId)return parseInt(e);return-1}get activeRouterManifestIndex(){if(this.routerManifest&&this.routerManifest.items&&this.activeId)for(var e in this.routerManifest.items)if(this.routerManifest.items[e].id===this.activeId)return parseInt(e);return-1}get activeManifestIndexCounter(){return null!==this.activeManifestIndex?1+this.activeManifestIndex:0}get activeTitle(){return this.activeItem?this.activeItem.title:""}get activeTags(){return this.activeItem&&this.activeItem.metadata&&this.activeItem.metadata.tags?this.activeItem.metadata.tags:null}get parentTitle(){if(this.manifest&&this.activeItem){let e=this.manifest.items.find((e=>this.activeItem.parent===e.id));if(e)return e.title}return""}get pageCounter(){return{current:this.activeManifestIndexCounter,total:this.manifest.items.length}}get siblingsPrevNext(){if(this.manifest.items&&this.activeItem){const e=this.manifest.items.filter((e=>e.parent===this.activeItem.parent)),t=e.findIndex((e=>e.id===this.activeItem.id));return{prev:e[t-1]||null,next:e[t+1]||null}}return{prev:null,next:null}}get isLoggedIn(){return!(!this.jwt||"null"==this.jwt)}get ancestorTitle(){if(this.manifest&&this.activeItem){let e=this.manifest.items.find((e=>this.activeItem.parent===e.id));for(;e&&null!=e.parent;)e=this.manifest.items.find((t=>t.id==e.parent));if(e)return e.title}return""}get ancestorItem(){if(this.manifest&&this.activeItem){let e=this.manifest.items.find((e=>this.activeItem.parent===e.id));for(;e&&null!=e.parent;)e=this.manifest.items.find((t=>t.id==e.parent));if(e)return e}return null}findItem(e){return this.manifest&&e?this.manifest.items.find((t=>t.id===e)):null}async getLastChildItem(e){if(this.manifest){let t={};return await this.manifest.items.map((i=>{i.parent===e&&(void 0===t.order||t.order<i.order)&&(t=i)})),t}return null}async findItemAsObject(e,t="id",i="item",a=!0){if(this.manifest&&e){var n=await this.manifest.items.find((i=>i[t]===e));if(a&&(n=s(n)),"item"==i)return n;if("parent"==i&&n.parent)return s(await this.manifest.items.find((e=>n.parent===e.id)))}return null}fallbackItemSlug(){if(this.manifest&&this.activeItem){if(this.activeManifestIndex>0&&this.manifest.items[this.activeManifestIndex-1])return this.manifest.items[this.activeManifestIndex-1].slug;if(this.activeManifestIndex<this.manifest.items.length-1&&this.manifest.items[this.activeManifestIndex+1])return this.manifest.items[this.activeManifestIndex+1].slug}return null}getManifestItems(e=!0){return e?s(this.manifest.items):this.manifest.items}getManifest(e=!0){return e?s(this.manifest):this.manifest}async addItem(e){var t=new c;let i=t.newItem();e.id&&(i.id=e.id),e.indent&&(i.indent=e.indent),i.location=e.location,i.slug=e.slug,i.order=e.order,i.parent=e.parent,i.title=e.title,i.metadata=e.metadata,t.items=s(this.manifest.items);let a={...t.validateItem(i)};t.items.push(a);var n=t.itemsToNodes(t.items),r=t.nodesToItems(n),o=[];for(var l in r)o.push(t.items.find((e=>e.id===r[l].id)));return this.manifest.items.replace(o),globalThis.dispatchEvent(new CustomEvent("json-outline-schema-changed",{bubbles:!0,composed:!0,cancelable:!1,detail:this.manifest})),globalThis.dispatchEvent(new CustomEvent("haxcms-item-rebuild",{bubbles:!0,composed:!0,cancelable:!1,detail:!0})),this.findItem(i.id)}removeItem(e){const t=this.findItem(e);if(t)if("new"===t.metadata.status){const e=this.manifest.items.indexOf(t);e>-1&&this.manifest.items.splice(e,1)}else t.metadata.status="delete"}spiderChildren(e,t,i,a,s,n,r){e.id===s||n?(n||(n=!0,!r&&e.indent>=i&&(i+=e.indent,a+=e.indent)),e.indent>=i&&e.indent<=a&&t.push(e),e.children.length>0&&e.children.forEach((e=>{this.spiderChildren(e,t,i,a,s,n,r)}))):e.children.length>0&&e.children.forEach((e=>{this.spiderChildren(e,t,a,s,n,r)}))}getInternalRoute(){return!!(this.currentRouterLocation&&this.currentRouterLocation.params&&this.currentRouterLocation.params[0])&&this.currentRouterLocation.params[0].replace("x/","")}computeItems(e,t,i,a,s,n){if(s){let r,o=[],l=[];switch(s.items.forEach((e=>{e.parent||o.push(e)})),a){case"parent":r=s.items.find((e=>i===e.id)),r&&(i=r.parent);break;case"ancestor":for(r=s.items.find((e=>i===e.id));r&&null!=r.parent;)r=s.items.find((e=>e.id==r.parent));r&&(i=r.id)}return s.items.forEach(((a,s)=>{store.spiderChildren(a,l,e,t,i,!1,n)})),l}}};globalThis.HAXCMS=globalThis.HAXCMS||{},globalThis.HAXCMS.setTheme=function(e){globalThis.HAXCMS.instance.store.manifest.metadata.theme.element=e},globalThis.HAXCMS.requestAvailability=()=>(globalThis.HAXCMS.instance||(globalThis.HAXCMS.instance=globalThis.document.createElement("haxcms-site-store"),globalThis.document.body.appendChild(globalThis.HAXCMS.instance)),globalThis.HAXCMS.instance);export const HAXcmsStore=globalThis.HAXCMS.requestAvailability();class HAXCMSSiteStore extends HTMLElement{constructor(){super(),this.storePieces={},this.store=store,this.source="",globalThis.addEventListener("playaudio",this.playSoundEvent.bind(this)),a((()=>{if(store.location&&store.location.route&&store.location.route.component){const e=store.location.route.name;if(store.manifest.items.find((t=>t.id===e)))store.activeId=e;else if(store.getInternalRoute())store.activeId="404";else{const e=store.manifest.items.find((e=>void 0!==e.id));e&&(store.activeId=e.id)}}})),a((()=>{const e=s(store.findItem(store.activeId));e&&(globalThis.document.body.dispatchEvent(new CustomEvent("json-outline-schema-active-item-changed",{bubbles:!0,composed:!0,cancelable:!1,detail:e})),globalThis.document.title=store.activeTitle)})),a((()=>{if(store.appReady){const e=globalThis.document.querySelector('link[rel="icon"]');e&&(this.faviconSiteDefault=e.href,this.faviconInstance=e)}})),a((()=>{const e=h.readMemory("versionLatest");store.version&&e!=store.version&&(null==e&&h.writeMemory("versionInitial",store.version,"long"),h.writeMemory("versionLatest",store.version,"long"))})),a((()=>{const e=s(store.editMode);globalThis.HaxStore&&globalThis.HaxStore.requestAvailability()&&globalThis.HaxStore.requestAvailability().write&&(globalThis.dispatchEvent(new CustomEvent("haxcms-edit-mode-changed",{bubbles:!0,composed:!0,cancelable:!1,detail:e})),globalThis.HaxStore.requestAvailability().editMode=e,globalThis.HaxStore.requestAvailability().toastShowEventName="haxcms-toast-show")}))}playSoundEvent(e){this.store.playSound(e.detail.sound)}connectedCallback(){globalThis.document.body.appendChild(this.store.themeStyleElement)}disconnectedCallback(){this.store.themeStyleElement.remove(),this.store.themeStyleElement=globalThis.document.createElement("style")}resetFavicon(){this.setFavicon()}setFavicon(e=null,t=!0){e?t&&(e=d.getIcon(e)):e=this.faviconSiteDefault,this.faviconInstance&&this.faviconInstance.setAttribute("href",e)}resetCursor(){this.setCursor()}setCursor(e=null,t=!0){e?(t&&(e=d.getIcon(e)),globalThis.document.body.style.cursor=`url("${e}") 16 16, pointer`):globalThis.document.body.style.removeProperty("cursor")}getApplicationContext(){let e="";if("undefined"!=typeof DatArchive)e="beaker";else switch(globalThis.HAXCMSContext){case"published":case"nodejs":case"php":case"11ty":case"demo":case"desktop":case"local":case"userfs":e=globalThis.HAXCMSContext;break;default:e="php"}return e}static get tag(){return"haxcms-site-store"}static get observedAttributes(){return["source"]}set source(e){this[name]=e,e&&this.setAttribute("source",e)}get source(){return this.getAttribute("source")}attributeChangedCallback(e,t,i){"source"==e&&""!=i&&fetch(this[e]).then((e=>e.json())).then((e=>{this.store.loadManifest(e)})).catch((e=>{console.warn(e)}))}}globalThis.customElements.define(HAXCMSSiteStore.tag,HAXCMSSiteStore);export{HAXCMSSiteStore};
    \ No newline at end of file
    
  • src/public/build/es6/node_modules/@haxtheweb/iframe-loader/iframe-loader.js+1 1 modified
    @@ -26,7 +26,7 @@ import{LitElement as e,html as t,css as i}from"../../lit/index.js";import"./lib/
           .loaded #loading-screen {
             display: none;
           }
    -    `}constructor(){super(),this.invalidSource=!1,this.disabled=!1,this.loading=!0,this.height=500,this.width="100%",this.__iframe=null,this.querySelector("iframe")?(this.__iframe=this.querySelector("iframe"),this.__iframe.addEventListener("load",this.iframeLoadingCallback.bind(this)),this.__iframe.getAttribute("src")&&(this.source=this.__iframe.getAttribute("src"),this.height=this.__iframe.getAttribute("height")||this.height,this.width=this.__iframe.getAttribute("width")||this.width)):this.source=null,this.__mutationObserver=new MutationObserver((e=>{e.forEach((e=>{e.target.offsetHeight&&this.loading&&(this.height=e.target.offsetHeight)}))})),this.__observer=new MutationObserver((e=>{this.querySelector("iframe")&&(this.__iframe=this.querySelector("iframe"),this.source=this.__iframe.getAttribute("src"),this.__iframe.addEventListener("load",this.iframeLoadingCallback.bind(this)),this.__mutationObserver.observe(this.__iframe,{attributes:!0}))})),this.__observer.observe(this,{childList:!0}),this.querySelector("iframe-loader")&&this.querySelector("iframe-loader").remove()}iframeLoadingCallback(e){setTimeout((()=>{this.loading=!1,e&&e.path&&e.path[0]&&e.path[0].height&&(this.height=e.path[0].height)}),500)}haxHooks(){return{preProcessNodeToContent:"haxpreProcessNodeToContent",editModeChanged:"haxeditModeChanged",activeElementChanged:"haxactiveElementChanged"}}async haxpreProcessNodeToContent(e){return e.disabled=!1,e}haxactiveElementChanged(e,t){return this.disabled=!0,e.disabled=!0,e}haxeditModeChanged(e){this.disabled=e}static get haxProperties(){return new URL(`./lib/${this.tag}.haxProperties.json`,import.meta.url).href}firstUpdated(e){super.firstUpdated&&super.firstUpdated(e),this.querySelector("iframe")||(this.__iframe=globalThis.document.createElement("iframe"),this.__iframe.setAttribute("width",this.width),this.__iframe.setAttribute("height",this.height),this.__mutationObserver.observe(this.__iframe,{attributes:!0}),this.__iframe.setAttribute("src",this.source),this.appendChild(this.__iframe))}disconnectedCallback(){super.disconnectedCallback(),this.__iframe&&this.__iframe.removeEventListener("load",this.iframeLoadingCallback.bind(this)),this.__observer.disconnect()}updated(e){super.updated&&super.updated(e),e.forEach(((e,t)=>{this.invalidSource||("source"===t?this.__iframe?this.__iframe.setAttribute("src",this.source):(this.__iframe=globalThis.document.createElement("iframe"),this.__iframe.setAttribute("width",this.width),this.__iframe.setAttribute("height",this.height),this.__mutationObserver.observe(this.__iframe,{attributes:!0}),this.__iframe.setAttribute("src",this.source),this.appendChild(this.__iframe)):["height","width"].includes(t)&&this.__iframe&&this.__iframe.setAttribute(t,this[t]))}))}render(){return t`
    +    `}constructor(){super(),this.invalidSource=!1,this.disabled=!1,this.loading=!0,this.height=500,this.width="100%",this.__iframe=null,this.querySelector("iframe")?(this.__iframe=this.querySelector("iframe"),this.__iframe.addEventListener("load",this.iframeLoadingCallback.bind(this)),this.__iframe.getAttribute("src")&&(this.source=this.__iframe.getAttribute("src"),this.height=this.__iframe.getAttribute("height")||this.height,this.width=this.__iframe.getAttribute("width")||this.width)):this.source=null,this.__mutationObserver=new MutationObserver((e=>{e.forEach((e=>{e.target.offsetHeight&&this.loading&&(this.height=e.target.offsetHeight)}))})),this.__observer=new MutationObserver((e=>{this.querySelector("iframe")&&(this.__iframe=this.querySelector("iframe"),this.source=this.__iframe.getAttribute("src"),this.__iframe.addEventListener("load",this.iframeLoadingCallback.bind(this)),this.__mutationObserver.observe(this.__iframe,{attributes:!0}))})),this.__observer.observe(this,{childList:!0}),this.querySelector("iframe-loader")&&this.querySelector("iframe-loader").remove()}iframeLoadingCallback(e){setTimeout((()=>{this.loading=!1,e&&e.path&&e.path[0]&&e.path[0].height&&(this.height=e.path[0].height)}),500)}haxHooks(){return{preProcessNodeToContent:"haxpreProcessNodeToContent",editModeChanged:"haxeditModeChanged",activeElementChanged:"haxactiveElementChanged"}}async haxpreProcessNodeToContent(e){return e.disabled=!1,e}haxactiveElementChanged(e,t){return this.source!==e.src&&(this.source=e.src),this.disabled=!0,e.disabled=!0,e}haxeditModeChanged(e){this.disabled=e}static get haxProperties(){return new URL(`./lib/${this.tag}.haxProperties.json`,import.meta.url).href}firstUpdated(e){super.firstUpdated&&super.firstUpdated(e),this.querySelector("iframe")||(this.__iframe=globalThis.document.createElement("iframe"),this.__iframe.setAttribute("width",this.width),this.__iframe.setAttribute("height",this.height),this.__mutationObserver.observe(this.__iframe,{attributes:!0}),this.__iframe.setAttribute("src",this.source),this.__iframe.setAttribute("sandbox","allow-scripts allow-same-origin"),this.appendChild(this.__iframe))}disconnectedCallback(){super.disconnectedCallback(),this.__iframe&&this.__iframe.removeEventListener("load",this.iframeLoadingCallback.bind(this)),this.__observer.disconnect()}updated(e){super.updated&&super.updated(e),e.forEach(((e,t)=>{this.invalidSource||("source"===t?this.__iframe?this.__iframe.setAttribute("src",this.source):(this.__iframe=globalThis.document.createElement("iframe"),this.__iframe.setAttribute("width",this.width),this.__iframe.setAttribute("height",this.height),this.__mutationObserver.observe(this.__iframe,{attributes:!0}),this.__iframe.setAttribute("src",this.source),this.appendChild(this.__iframe)):["height","width"].includes(t)&&this.__iframe&&this.__iframe.setAttribute(t,this[t]))}))}render(){return t`
           <div id="container" class="${this.loading?"loading":"loaded"}">
             <div id="loading-screen" style="height:${this.height}px;">
               <loading-indicator ?loading="${this.loading}"></loading-indicator>
    
  • src/public/build/es6/node_modules/@haxtheweb/iframe-loader/lib/iframe-loader.haxProperties.json+3 3 modified
    @@ -70,10 +70,10 @@
       },
       "demoSchema": [
         {
    -      "tag": "iframe-loader",
    +      "tag": "iframe",
           "properties": {
    -        "source": "https://haxtheweb.org",
    -        "disabled": true
    +        "src": "https://haxtheweb.org",
    +        "sandbox": "allow-scripts allow-same-origin"
           },
           "content": ""
         }
    
  • src/public/build/es6/node_modules/@haxtheweb/la-tex/lib/latex2html5.js+1 1 modified
  • src/public/build/es6/node_modules/@haxtheweb/media-image/media-image.js+4 2 modified
    @@ -11,6 +11,7 @@ import{LitElement as e,html as t,css as i}from"../../lit/index.js";import{Schema
               font-family: var(--ddd-font-secondary);
               font-weight: var(--ddd-font-secondary-light);
               font-size: var(--ddd-font-size-4xs);
    +          color: light-dark(var(--media-image-color, black), var(---media-image-color, white));
             }
     
             :host([card]) {
    @@ -26,8 +27,9 @@ import{LitElement as e,html as t,css as i}from"../../lit/index.js";import{Schema
     
             :host([box]) {
               padding: var(--ddd-spacing-5);
    -          background-color: var(--ddd-theme-accent, var(--ddd-accent-2));
    -        }
    +          background-color: light-dark(var(--ddd-theme-accent, var(--ddd-accent-2)), var(--ddd-theme-accent, var(--ddd-primary-4)));
    +        }        
    +
             @media screen and (min-width: 650px) {
               :host([size="small"]) {
                 max-width: 35%;
    
  • src/public/wc-registry.json+1 1 modified
    @@ -1 +1 @@
    -{"focus-trap":"@a11y/focus-trap/focus-trap.js","local-time":"@github/time-elements/dist/local-time-element.js","relative-time":"@github/time-elements/dist/relative-time-element.js","time-ago":"@github/time-elements/dist/time-ago-element.js","time-until":"@github/time-elements/dist/time-until-element.js","model-viewer":"@google/model-viewer/dist/model-viewer.js","a11y-carousel":"@haxtheweb/a11y-carousel/a11y-carousel.js","a11y-carousel-button":"@haxtheweb/a11y-carousel/lib/a11y-carousel-button.js","a11y-collapse":"@haxtheweb/a11y-collapse/a11y-collapse.js","a11y-collapse-group":"@haxtheweb/a11y-collapse/lib/a11y-collapse-group.js","a11y-compare-image":"@haxtheweb/a11y-compare-image/a11y-compare-image.js","a11y-details":"@haxtheweb/a11y-details/a11y-details.js","a11y-figure":"@haxtheweb/a11y-figure/a11y-figure.js","a11y-gif-player":"@haxtheweb/a11y-gif-player/a11y-gif-player.js","a11y-media-player":"@haxtheweb/a11y-media-player/a11y-media-player.js","a11y-media-button":"@haxtheweb/a11y-media-player/lib/a11y-media-button.js","a11y-media-play-button":"@haxtheweb/a11y-media-player/lib/a11y-media-play-button.js","a11y-media-state-manager":"@haxtheweb/a11y-media-player/lib/a11y-media-state-manager.js","a11y-media-transcript-cue":"@haxtheweb/a11y-media-player/lib/a11y-media-transcript-cue.js","a11y-media-youtube":"@haxtheweb/a11y-media-player/lib/a11y-media-youtube.js","a11y-menu-button":"@haxtheweb/a11y-menu-button/a11y-menu-button.js","a11y-menu-button-item":"@haxtheweb/a11y-menu-button/lib/a11y-menu-button-item.js","a11y-tabs":"@haxtheweb/a11y-tabs/a11y-tabs.js","a11y-tab":"@haxtheweb/a11y-tabs/lib/a11y-tab.js","absolute-position-behavior":"@haxtheweb/absolute-position-behavior/absolute-position-behavior.js","absolute-position-state-manager":"@haxtheweb/absolute-position-behavior/lib/absolute-position-state-manager.js","accent-card":"@haxtheweb/accent-card/accent-card.js","aframe-player":"@haxtheweb/aframe-player/aframe-player.js","air-horn":"@haxtheweb/air-horn/air-horn.js","app-hax":"@haxtheweb/app-hax/app-hax.js","app-hax-theme":"@haxtheweb/app-hax/lib/app-hax-theme.js","random-word":"@haxtheweb/app-hax/lib/random-word/random-word.js","rpg-character-toast":"@haxtheweb/app-hax/lib/rpg-character-toast/rpg-character-toast.js","app-hax-button":"@haxtheweb/app-hax/lib/v1/app-hax-button.js","app-hax-hat-progress":"@haxtheweb/app-hax/lib/v1/app-hax-hat-progress.js","app-hax-label":"@haxtheweb/app-hax/lib/v1/app-hax-label.js","app-hax-search-bar":"@haxtheweb/app-hax/lib/v1/app-hax-search-bar.js","app-hax-search-results":"@haxtheweb/app-hax/lib/v1/app-hax-search-results.js","app-hax-site-bar":"@haxtheweb/app-hax/lib/v1/app-hax-site-bar.js","app-hax-site-button":"@haxtheweb/app-hax/lib/v1/app-hax-site-button.js","app-hax-site-details":"@haxtheweb/app-hax/lib/v1/app-hax-site-details.js","app-hax-site-login":"@haxtheweb/app-hax/lib/v1/app-hax-site-login.js","app-hax-steps":"@haxtheweb/app-hax/lib/v1/app-hax-steps.js","app-hax-toast":"@haxtheweb/app-hax/lib/v1/app-hax-toast.js","app-hax-top-bar":"@haxtheweb/app-hax/lib/v1/app-hax-top-bar.js","app-hax-user-menu-button":"@haxtheweb/app-hax/lib/v1/app-hax-user-menu-button.js","app-hax-user-menu":"@haxtheweb/app-hax/lib/v1/app-hax-user-menu.js","app-hax-wired-toggle":"@haxtheweb/app-hax/lib/v1/app-hax-wired-toggle.js","app-hax-backend-api":"@haxtheweb/app-hax/lib/v1/AppHaxBackendAPI.js","app-hax-router":"@haxtheweb/app-hax/lib/v1/AppHaxRouter.js","wired-darkmode-toggle":"@haxtheweb/app-hax/lib/wired-darkmode-toggle/wired-darkmode-toggle.js","audio-player":"@haxtheweb/audio-player/audio-player.js","awesome-explosion":"@haxtheweb/awesome-explosion/awesome-explosion.js","b-r":"@haxtheweb/b-r/b-r.js","barcode-reader":"@haxtheweb/barcode-reader/barcode-reader.js","beaker-broker":"@haxtheweb/beaker-broker/beaker-broker.js","bootstrap-theme":"@haxtheweb/bootstrap-theme/bootstrap-theme.js","bootstrap-breadcrumb":"@haxtheweb/bootstrap-theme/lib/BootstrapBreadcrumb.js","bootstrap-footer":"@haxtheweb/bootstrap-theme/lib/BootstrapFooter.js","bootstrap-search":"@haxtheweb/bootstrap-theme/lib/BootstrapSearch.js","chartist-render":"@haxtheweb/chartist-render/chartist-render.js","chat-agent":"@haxtheweb/chat-agent/chat-agent.js","chat-button":"@haxtheweb/chat-agent/lib/chat-button.js","chat-control-bar":"@haxtheweb/chat-agent/lib/chat-control-bar.js","chat-developer-panel":"@haxtheweb/chat-agent/lib/chat-developer-panel.js","chat-input":"@haxtheweb/chat-agent/lib/chat-input.js","chat-interface":"@haxtheweb/chat-agent/lib/chat-interface.js","chat-message":"@haxtheweb/chat-agent/lib/chat-message.js","chat-suggestion":"@haxtheweb/chat-agent/lib/chat-suggestion.js","check-it-out":"@haxtheweb/check-it-out/check-it-out.js","citation-element":"@haxtheweb/citation-element/citation-element.js","clean-one":"@haxtheweb/clean-one/clean-one.js","clean-one-search-box":"@haxtheweb/clean-one/lib/clean-one-search-box.js","clean-portfolio-theme":"@haxtheweb/clean-portfolio-theme/clean-portfolio-theme.js","clean-two":"@haxtheweb/clean-two/clean-two.js","cms-hax":"@haxtheweb/cms-hax/cms-hax.js","cms-block":"@haxtheweb/cms-hax/lib/cms-block.js","cms-entity":"@haxtheweb/cms-hax/lib/cms-entity.js","cms-token":"@haxtheweb/cms-hax/lib/cms-token.js","cms-views":"@haxtheweb/cms-hax/lib/cms-views.js","code-editor":"@haxtheweb/code-editor/code-editor.js","code-pen-button":"@haxtheweb/code-editor/lib/code-pen-button.js","monaco-element":"@haxtheweb/code-editor/lib/monaco-element/monaco-element.js","code-sample":"@haxtheweb/code-sample/code-sample.js","collection-list":"@haxtheweb/collection-list/collection-list.js","collection-item":"@haxtheweb/collection-list/lib/collection-item.js","collection-row":"@haxtheweb/collection-list/lib/collection-row.js","collections-theme-banner":"@haxtheweb/collection-list/lib/collections-theme-banner.js","collections-theme":"@haxtheweb/collection-list/lib/collections-theme.js","count-up":"@haxtheweb/count-up/count-up.js","course-design":"@haxtheweb/course-design/course-design.js","activity-box":"@haxtheweb/course-design/lib/activity-box.js","block-quote":"@haxtheweb/course-design/lib/block-quote.js","course-intro-header":"@haxtheweb/course-design/lib/course-intro-header.js","course-intro-lesson-plan":"@haxtheweb/course-design/lib/course-intro-lesson-plan.js","course-intro-lesson-plans":"@haxtheweb/course-design/lib/course-intro-lesson-plans.js","course-intro":"@haxtheweb/course-design/lib/course-intro.js","ebook-button":"@haxtheweb/course-design/lib/ebook-button.js","learning-component":"@haxtheweb/course-design/lib/learning-component.js","lrn-h5p":"@haxtheweb/course-design/lib/lrn-h5p.js","responsive-iframe":"@haxtheweb/course-design/lib/responsive-iframe.js","worksheet-download":"@haxtheweb/course-design/lib/worksheet-download.js","course-model":"@haxtheweb/course-model/course-model.js","model-info":"@haxtheweb/course-model/lib/model-info.js","model-option":"@haxtheweb/course-model/lib/model-option.js","csv-render":"@haxtheweb/csv-render/csv-render.js","d-d-d":"@haxtheweb/d-d-d/d-d-d.js","ddd-brochure-theme":"@haxtheweb/d-d-d/lib/ddd-brochure-theme.js","ddd-card":"@haxtheweb/d-d-d/lib/ddd-card.js","ddd-steps-list-item":"@haxtheweb/d-d-d/lib/ddd-steps-list-item.js","ddd-steps-list":"@haxtheweb/d-d-d/lib/ddd-steps-list.js","design-system":"@haxtheweb/d-d-d/lib/DesignSystemManager.js","mini-map":"@haxtheweb/d-d-d/lib/mini-map.js","d-d-docs":"@haxtheweb/d-d-docs/d-d-docs.js","data-viz":"@haxtheweb/data-viz/data-viz.js","date-card":"@haxtheweb/date-card/date-card.js","date-chip":"@haxtheweb/date-card/lib/date-chip.js","discord-embed":"@haxtheweb/discord-embed/discord-embed.js","disqus-embed":"@haxtheweb/disqus-embed/disqus-embed.js","haxcms-site-disqus":"@haxtheweb/disqus-embed/lib/haxcms-site-disqus.js","documentation-player":"@haxtheweb/documentation-player/documentation-player.js","dynamic-import-registry":"@haxtheweb/dynamic-import-registry/dynamic-import-registry.js","editable-outline":"@haxtheweb/editable-outline/editable-outline.js","editable-table":"@haxtheweb/editable-table/editable-table.js","editable-table-display":"@haxtheweb/editable-table/lib/editable-table-display.js","editable-table-edit":"@haxtheweb/editable-table/lib/editable-table-edit.js","editable-table-editor-rowcol":"@haxtheweb/editable-table/lib/editable-table-editor-rowcol.js","editable-table-filter":"@haxtheweb/editable-table/lib/editable-table-filter.js","editable-table-sort":"@haxtheweb/editable-table/lib/editable-table-sort.js","elmsln-loading":"@haxtheweb/elmsln-loading/elmsln-loading.js","enhanced-text":"@haxtheweb/enhanced-text/enhanced-text.js","event-badge":"@haxtheweb/event-badge/event-badge.js","example-hax-element":"@haxtheweb/example-hax-element/example-hax-element.js","example-haxcms-theme":"@haxtheweb/example-haxcms-theme/example-haxcms-theme.js","figure-label":"@haxtheweb/figure-label/figure-label.js","file-system-broker":"@haxtheweb/file-system-broker/file-system-broker.js","docx-file-system-broker":"@haxtheweb/file-system-broker/lib/docx-file-system-broker.js","xlsx-file-system-broker":"@haxtheweb/file-system-broker/lib/xlsx-file-system-broker.js","fill-in-the-blanks":"@haxtheweb/fill-in-the-blanks/fill-in-the-blanks.js","flash-card":"@haxtheweb/flash-card/flash-card.js","flash-card-answer-box":"@haxtheweb/flash-card/lib/flash-card-answer-box.js","flash-card-image-prompt":"@haxtheweb/flash-card/lib/flash-card-prompt-img.js","flash-card-set":"@haxtheweb/flash-card/lib/flash-card-set.js","fluid-type":"@haxtheweb/fluid-type/fluid-type.js","full-width-image":"@haxtheweb/full-width-image/full-width-image.js","fullscreen-behaviors":"@haxtheweb/fullscreen-behaviors/fullscreen-behaviors.js","future-terminal-text":"@haxtheweb/future-terminal-text/future-terminal-text.js","future-terminal-text-lite":"@haxtheweb/future-terminal-text/lib/future-terminal-text-lite.js","git-corner":"@haxtheweb/git-corner/git-corner.js","github-preview":"@haxtheweb/github-preview/github-preview.js","github-rpg-contributors":"@haxtheweb/github-preview/lib/github-rpg-contributors.js","wc-markdown":"@haxtheweb/github-preview/lib/wc-markdown.js","glossy-portfolio-theme":"@haxtheweb/glossy-portfolio-theme/glossy-portfolio-theme.js","glossy-portfolio-about":"@haxtheweb/glossy-portfolio-theme/lib/glossy-portfolio-about.js","glossy-portfolio-card":"@haxtheweb/glossy-portfolio-theme/lib/glossy-portfolio-card.js","glossy-portfolio-grid":"@haxtheweb/glossy-portfolio-theme/lib/glossy-portfolio-grid.js","glossy-portfolio-header":"@haxtheweb/glossy-portfolio-theme/lib/glossy-portfolio-header.js","glossy-portfolio-home":"@haxtheweb/glossy-portfolio-theme/lib/glossy-portfolio-home.js","glossy-portfolio-page":"@haxtheweb/glossy-portfolio-theme/lib/glossy-portfolio-page.js","grade-book":"@haxtheweb/grade-book/grade-book.js","grade-book-lite":"@haxtheweb/grade-book/lib/grade-book-lite.js","grade-book-pop-up":"@haxtheweb/grade-book/lib/grade-book-pop-up.js","grade-book-store":"@haxtheweb/grade-book/lib/grade-book-store.js","grade-book-student-block":"@haxtheweb/grade-book/lib/grade-book-student-block.js","grade-book-table":"@haxtheweb/grade-book/lib/grade-book-table.js","letter-grade-picker":"@haxtheweb/grade-book/lib/letter-grade-picker.js","letter-grade":"@haxtheweb/grade-book/lib/letter-grade.js","grid-plate":"@haxtheweb/grid-plate/grid-plate.js","h-a-x":"@haxtheweb/h-a-x/h-a-x.js","h5p-element":"@haxtheweb/h5p-element/h5p-element.js","h5p-wrapped-element":"@haxtheweb/h5p-element/lib/h5p-wrapped-element.js","hal-9000":"@haxtheweb/hal-9000/hal-9000.js","hal-9000-ui":"@haxtheweb/hal-9000/lib/hal-9000-ui/hal-9000-ui.js","hax-body":"@haxtheweb/hax-body/hax-body.js","hax-app-picker":"@haxtheweb/hax-body/lib/hax-app-picker.js","hax-app-search":"@haxtheweb/hax-body/lib/hax-app-search.js","hax-app":"@haxtheweb/hax-body/lib/hax-app.js","hax-autoloader":"@haxtheweb/hax-body/lib/hax-autoloader.js","hax-cancel-dialog":"@haxtheweb/hax-body/lib/hax-cancel-dialog.js","hax-context-item-textop":"@haxtheweb/hax-body/lib/hax-context-item-textop.js","hax-context-item":"@haxtheweb/hax-body/lib/hax-context-item.js","hax-element-demo":"@haxtheweb/hax-body/lib/hax-element-demo.js","hax-export-dialog":"@haxtheweb/hax-body/lib/hax-export-dialog.js","hax-gizmo-browser":"@haxtheweb/hax-body/lib/hax-gizmo-browser.js","hax-map":"@haxtheweb/hax-body/lib/hax-map.js","hax-picker":"@haxtheweb/hax-body/lib/hax-picker.js","hax-plate-context":"@haxtheweb/hax-body/lib/hax-plate-context.js","hax-preferences-dialog":"@haxtheweb/hax-body/lib/hax-preferences-dialog.js","hax-stax-browser":"@haxtheweb/hax-body/lib/hax-stax-browser.js","hax-store":"@haxtheweb/hax-body/lib/hax-store.js","hax-text-editor-button":"@haxtheweb/hax-body/lib/hax-text-editor-button.js","hax-text-editor-paste-button":"@haxtheweb/hax-body/lib/hax-text-editor-paste-button.js","hax-text-editor-toolbar":"@haxtheweb/hax-body/lib/hax-text-editor-toolbar.js","hax-text-editor":"@haxtheweb/hax-body/lib/hax-text-editor.js","hax-toolbar-item":"@haxtheweb/hax-body/lib/hax-toolbar-item.js","hax-toolbar-menu":"@haxtheweb/hax-body/lib/hax-toolbar-menu.js","hax-toolbar":"@haxtheweb/hax-body/lib/hax-toolbar.js","hax-tray-button":"@haxtheweb/hax-body/lib/hax-tray-button.js","hax-tray-upload":"@haxtheweb/hax-body/lib/hax-tray-upload.js","hax-tray":"@haxtheweb/hax-body/lib/hax-tray.js","hax-ui-styles":"@haxtheweb/hax-body/lib/hax-ui-styles.js","hax-upload-field":"@haxtheweb/hax-body/lib/hax-upload-field.js","hax-view-source":"@haxtheweb/hax-body/lib/hax-view-source.js","hax-cloud":"@haxtheweb/hax-cloud/hax-cloud.js","hax-logo":"@haxtheweb/hax-logo/hax-logo.js","haxcms-backend-beaker":"@haxtheweb/haxcms-elements/lib/core/backends/haxcms-backend-beaker.js","haxcms-backend-demo":"@haxtheweb/haxcms-elements/lib/core/backends/haxcms-backend-demo.js","haxcms-backend-nodejs":"@haxtheweb/haxcms-elements/lib/core/backends/haxcms-backend-nodejs.js","haxcms-backend-php":"@haxtheweb/haxcms-elements/lib/core/backends/haxcms-backend-php.js","haxcms-backend-userfs":"@haxtheweb/haxcms-elements/lib/core/backends/haxcms-backend-userfs.js","haxcms-darkmode-toggle":"@haxtheweb/haxcms-elements/lib/core/haxcms-darkmode-toggle.js","haxcms-editor-builder":"@haxtheweb/haxcms-elements/lib/core/haxcms-editor-builder.js","haxcms-outline-editor-dialog":"@haxtheweb/haxcms-elements/lib/core/haxcms-outline-editor-dialog.js","haxcms-share-dialog":"@haxtheweb/haxcms-elements/lib/core/haxcms-share-dialog.js","haxcms-site-builder":"@haxtheweb/haxcms-elements/lib/core/haxcms-site-builder.js","haxcms-site-dashboard":"@haxtheweb/haxcms-elements/lib/core/haxcms-site-dashboard.js","haxcms-site-editor-ui":"@haxtheweb/haxcms-elements/lib/core/haxcms-site-editor-ui.js","haxcms-site-editor":"@haxtheweb/haxcms-elements/lib/core/haxcms-site-editor.js","haxcms-site-insights":"@haxtheweb/haxcms-elements/lib/core/haxcms-site-insights.js","haxcms-site-router":"@haxtheweb/haxcms-elements/lib/core/haxcms-site-router.js","haxcms-site-store":"@haxtheweb/haxcms-elements/lib/core/haxcms-site-store.js","haxcms-toast":"@haxtheweb/haxcms-elements/lib/core/haxcms-toast.js","haxcms-button-add":"@haxtheweb/haxcms-elements/lib/core/micros/haxcms-button-add.js","haxcms-basic-theme":"@haxtheweb/haxcms-elements/lib/core/themes/haxcms-basic-theme.js","haxcms-blank-theme":"@haxtheweb/haxcms-elements/lib/core/themes/haxcms-blank-theme.js","haxcms-minimalist-theme":"@haxtheweb/haxcms-elements/lib/core/themes/haxcms-minimalist-theme.js","haxcms-print-theme":"@haxtheweb/haxcms-elements/lib/core/themes/haxcms-print-theme.js","haxcms-slide-theme":"@haxtheweb/haxcms-elements/lib/core/themes/haxcms-slide-theme.js","haxcms-page-get-started":"@haxtheweb/haxcms-elements/lib/core/ui/haxcms-page-get-started.js","haxcms-dev-theme":"@haxtheweb/haxcms-elements/lib/development/haxcms-dev-theme.js","haxcms-theme-developer":"@haxtheweb/haxcms-elements/lib/development/haxcms-theme-developer.js","site-active-fields":"@haxtheweb/haxcms-elements/lib/ui-components/active-item/site-active-fields.js","site-active-media-banner":"@haxtheweb/haxcms-elements/lib/ui-components/active-item/site-active-media-banner.js","site-active-tags":"@haxtheweb/haxcms-elements/lib/ui-components/active-item/site-active-tags.js","site-active-title":"@haxtheweb/haxcms-elements/lib/ui-components/active-item/site-active-title.js","site-git-corner":"@haxtheweb/haxcms-elements/lib/ui-components/active-item/site-git-corner.js","site-share-widget":"@haxtheweb/haxcms-elements/lib/ui-components/active-item/site-share-widget.js","site-children-block":"@haxtheweb/haxcms-elements/lib/ui-components/blocks/site-children-block.js","site-outline-block":"@haxtheweb/haxcms-elements/lib/ui-components/blocks/site-outline-block.js","site-recent-content-block":"@haxtheweb/haxcms-elements/lib/ui-components/blocks/site-recent-content-block.js","site-drawer":"@haxtheweb/haxcms-elements/lib/ui-components/layout/site-drawer.js","site-footer":"@haxtheweb/haxcms-elements/lib/ui-components/layout/site-footer.js","site-modal":"@haxtheweb/haxcms-elements/lib/ui-components/layout/site-modal.js","site-region":"@haxtheweb/haxcms-elements/lib/ui-components/layout/site-region.js","active-when-visible":"@haxtheweb/haxcms-elements/lib/ui-components/magic/active-when-visible.js","site-ai-chat":"@haxtheweb/haxcms-elements/lib/ui-components/magic/site-ai-chat.js","site-collection-list":"@haxtheweb/haxcms-elements/lib/ui-components/magic/site-collection-list.js","site-view":"@haxtheweb/haxcms-elements/lib/ui-components/magic/site-view.js","site-breadcrumb":"@haxtheweb/haxcms-elements/lib/ui-components/navigation/site-breadcrumb.js","site-dot-indicator":"@haxtheweb/haxcms-elements/lib/ui-components/navigation/site-dot-indicator.js","site-menu-button":"@haxtheweb/haxcms-elements/lib/ui-components/navigation/site-menu-button.js","site-menu-content":"@haxtheweb/haxcms-elements/lib/ui-components/navigation/site-menu-content.js","site-menu":"@haxtheweb/haxcms-elements/lib/ui-components/navigation/site-menu.js","site-top-menu":"@haxtheweb/haxcms-elements/lib/ui-components/navigation/site-top-menu.js","site-query-menu-slice":"@haxtheweb/haxcms-elements/lib/ui-components/query/site-query-menu-slice.js","site-query":"@haxtheweb/haxcms-elements/lib/ui-components/query/site-query.js","site-render-query":"@haxtheweb/haxcms-elements/lib/ui-components/query/site-render-query.js","site-tags-route":"@haxtheweb/haxcms-elements/lib/ui-components/routes/site-tags-route.js","site-views-route":"@haxtheweb/haxcms-elements/lib/ui-components/routes/site-views-route.js","site-print-button":"@haxtheweb/haxcms-elements/lib/ui-components/site/site-print-button.js","site-remote-content":"@haxtheweb/haxcms-elements/lib/ui-components/site/site-remote-content.js","site-rss-button":"@haxtheweb/haxcms-elements/lib/ui-components/site/site-rss-button.js","site-search":"@haxtheweb/haxcms-elements/lib/ui-components/site/site-search.js","site-title":"@haxtheweb/haxcms-elements/lib/ui-components/site/site-title.js","site-uuid-link":"@haxtheweb/haxcms-elements/lib/ui-components/site/site-uuid-link.js","basic-template":"@haxtheweb/haxcms-elements/lib/ui-components/templates/basic-template.js","minimalist-template":"@haxtheweb/haxcms-elements/lib/ui-components/templates/minimalist-template.js","haxor-slevin":"@haxtheweb/haxor-slevin/haxor-slevin.js","hex-picker":"@haxtheweb/hex-picker/hex-picker.js","hexagon-loader":"@haxtheweb/hexagon-loader/hexagon-loader.js","hex-a-gon":"@haxtheweb/hexagon-loader/lib/hex-a-gon.js","html-block":"@haxtheweb/html-block/html-block.js","i18n-manager":"@haxtheweb/i18n-manager/i18n-manager.js","iframe-loader":"@haxtheweb/iframe-loader/iframe-loader.js","loading-indicator":"@haxtheweb/iframe-loader/lib/loading-indicator.js","image-compare-slider":"@haxtheweb/image-compare-slider/image-compare-slider.js","image-inspector":"@haxtheweb/image-inspector/image-inspector.js","img-pan-zoom":"@haxtheweb/img-pan-zoom/img-pan-zoom.js","img-loader":"@haxtheweb/img-pan-zoom/lib/img-loader.js","img-view-modal":"@haxtheweb/img-view-modal/img-view-modal.js","img-view-viewer":"@haxtheweb/img-view-modal/lib/img-view-viewer.js","inline-audio":"@haxtheweb/inline-audio/inline-audio.js","journey-theme":"@haxtheweb/journey-theme/journey-theme.js","journey-sidebar-theme":"@haxtheweb/journey-theme/lib/journey-sidebar-theme.js","journey-topbar-theme":"@haxtheweb/journey-theme/lib/journey-topbar-theme.js","json-editor":"@haxtheweb/json-editor/json-editor.js","json-outline-schema":"@haxtheweb/json-outline-schema/json-outline-schema.js","jos-render":"@haxtheweb/json-outline-schema/lib/jos-render.js","jwt-login":"@haxtheweb/jwt-login/jwt-login.js","la-tex":"@haxtheweb/la-tex/la-tex.js","lazy-image":"@haxtheweb/lazy-image-helpers/lazy-image-helpers.js","lazy-import-discover":"@haxtheweb/lazy-import-discover/lazy-import-discover.js","learn-two-theme":"@haxtheweb/learn-two-theme/learn-two-theme.js","lesson-overview":"@haxtheweb/lesson-overview/lesson-overview.js","lesson-highlight":"@haxtheweb/lesson-overview/lib/lesson-highlight.js","license-element":"@haxtheweb/license-element/license-element.js","lorem-data":"@haxtheweb/lorem-data/lorem-data.js","lrn-gitgraph":"@haxtheweb/lrn-gitgraph/lrn-gitgraph.js","lrn-math":"@haxtheweb/lrn-math/lrn-math.js","lrn-table":"@haxtheweb/lrn-table/lrn-table.js","lrn-vocab":"@haxtheweb/lrn-vocab/lrn-vocab.js","lrndesign-avatar":"@haxtheweb/lrndesign-avatar/lrndesign-avatar.js","lrndesign-bar":"@haxtheweb/lrndesign-chart/lib/lrndesign-bar.js","lrndesign-line":"@haxtheweb/lrndesign-chart/lib/lrndesign-line.js","lrndesign-pie":"@haxtheweb/lrndesign-chart/lib/lrndesign-pie.js","lrndesign-imagemap-hotspot":"@haxtheweb/lrndesign-imagemap/lib/lrndesign-imagemap-hotspot.js","lrndesign-imagemap":"@haxtheweb/lrndesign-imagemap/lrndesign-imagemap.js","lrndesign-sidenote":"@haxtheweb/lrndesign-sidenote/lrndesign-sidenote.js","lrndesign-timeline":"@haxtheweb/lrndesign-timeline/lrndesign-timeline.js","lrs-bridge-haxcms":"@haxtheweb/lrs-elements/lib/lrs-bridge-haxcms.js","lrs-bridge":"@haxtheweb/lrs-elements/lib/lrs-bridge.js","lrs-emitter":"@haxtheweb/lrs-elements/lib/lrs-emitter.js","lunr-search":"@haxtheweb/lunr-search/lunr-search.js","map-menu-builder":"@haxtheweb/map-menu/lib/map-menu-builder.js","map-menu-container":"@haxtheweb/map-menu/lib/map-menu-container.js","map-menu-header":"@haxtheweb/map-menu/lib/map-menu-header.js","map-menu-item":"@haxtheweb/map-menu/lib/map-menu-item.js","map-menu-submenu":"@haxtheweb/map-menu/lib/map-menu-submenu.js","map-menu":"@haxtheweb/map-menu/map-menu.js","mark-the-words":"@haxtheweb/mark-the-words/mark-the-words.js","matching-question":"@haxtheweb/matching-question/matching-question.js","md-block":"@haxtheweb/md-block/md-block.js","media-image":"@haxtheweb/media-image/media-image.js","media-quote":"@haxtheweb/media-quote/media-quote.js","meme-maker":"@haxtheweb/meme-maker/meme-maker.js","badge-sticker":"@haxtheweb/merit-badge/lib/badge-sticker.js","date-title":"@haxtheweb/merit-badge/lib/date-title.js","locked-badge":"@haxtheweb/merit-badge/lib/locked-badge.js","merit-badge":"@haxtheweb/merit-badge/merit-badge.js","micro-frontend-registry":"@haxtheweb/micro-frontend-registry/micro-frontend-registry.js","moar-sarcasm":"@haxtheweb/moar-sarcasm/moar-sarcasm.js","moment-element":"@haxtheweb/moment-element/moment-element.js","confetti-container":"@haxtheweb/multiple-choice/lib/confetti-container.js","short-answer-question":"@haxtheweb/multiple-choice/lib/short-answer-question.js","true-false-question":"@haxtheweb/multiple-choice/lib/true-false-question.js","multiple-choice":"@haxtheweb/multiple-choice/multiple-choice.js","midi-player":"@haxtheweb/music-player/lib/html-midi-player.js","music-player":"@haxtheweb/music-player/music-player.js","mutation-observer-import":"@haxtheweb/mutation-observer-import-mixin/mutation-observer-import-mixin.js","oer-schema":"@haxtheweb/oer-schema/oer-schema.js","outline-designer":"@haxtheweb/outline-designer/outline-designer.js","outline-player":"@haxtheweb/outline-player/outline-player.js","page-anchor":"@haxtheweb/page-break/lib/page-anchor.js","page-break-manager":"@haxtheweb/page-break/lib/page-break-manager.js","page-break-outline":"@haxtheweb/page-break/lib/page-break-outline.js","page-break":"@haxtheweb/page-break/page-break.js","page-contents-menu":"@haxtheweb/page-contents-menu/page-contents-menu.js","page-flag-comment":"@haxtheweb/page-flag/lib/page-flag-comment.js","page-flag":"@haxtheweb/page-flag/page-flag.js","page-scroll-position":"@haxtheweb/page-scroll-position/page-scroll-position.js","page-section":"@haxtheweb/page-section/page-section.js","paper-avatar":"@haxtheweb/paper-avatar/paper-avatar.js","paper-input-flagged":"@haxtheweb/paper-input-flagged/paper-input-flagged.js","paper-icon-step":"@haxtheweb/paper-stepper/lib/paper-icon-step.js","paper-icon-stepper":"@haxtheweb/paper-stepper/lib/paper-icon-stepper.js","paper-step":"@haxtheweb/paper-stepper/lib/paper-step.js","paper-stepper":"@haxtheweb/paper-stepper/paper-stepper.js","parallax-image":"@haxtheweb/parallax-image/parallax-image.js","pdf-browser-viewer":"@haxtheweb/pdf-browser-viewer/pdf-browser-viewer.js","person-testimonial":"@haxtheweb/person-testimonial/person-testimonial.js","place-holder":"@haxtheweb/place-holder/place-holder.js","play-list":"@haxtheweb/play-list/play-list.js","polaris-cta":"@haxtheweb/polaris-theme/lib/polaris-cta.js","polaris-flex-sidebar":"@haxtheweb/polaris-theme/lib/polaris-flex-sidebar.js","polaris-flex-theme":"@haxtheweb/polaris-theme/lib/polaris-flex-theme.js","polaris-invent-theme":"@haxtheweb/polaris-theme/lib/polaris-invent-theme.js","polaris-mark":"@haxtheweb/polaris-theme/lib/polaris-mark.js","polaris-story-card":"@haxtheweb/polaris-theme/lib/polaris-story-card.js","polaris-tile":"@haxtheweb/polaris-theme/lib/polaris-tile.js","polaris-theme":"@haxtheweb/polaris-theme/polaris-theme.js","portal-launcher":"@haxtheweb/portal-launcher/portal-launcher.js","post-card-photo":"@haxtheweb/post-card/lib/PostCardPhoto.js","post-card-postmark":"@haxtheweb/post-card/lib/PostCardPostmark.js","post-card-stamp":"@haxtheweb/post-card/lib/PostCardStamp.js","post-card":"@haxtheweb/post-card/post-card.js","pouch-db":"@haxtheweb/pouch-db/pouch-db.js","course-card":"@haxtheweb/product-card/lib/course-card.js","hax-element-card-list":"@haxtheweb/product-card/lib/hax-element-card-list.js","hax-element-list-selector":"@haxtheweb/product-card/lib/hax-element-list-selector.js","product-banner":"@haxtheweb/product-card/lib/product-banner.js","product-card":"@haxtheweb/product-card/product-card.js","product-glance":"@haxtheweb/product-glance/product-glance.js","product-offering":"@haxtheweb/product-offering/product-offering.js","progress-donut":"@haxtheweb/progress-donut/progress-donut.js","promise-progress-lite":"@haxtheweb/promise-progress/lib/promise-progress-lite.js","wc-preload-progress":"@haxtheweb/promise-progress/lib/wc-preload-progress.js","promise-progress":"@haxtheweb/promise-progress/promise-progress.js","qr-code":"@haxtheweb/q-r/lib/qr-code.js","q-r":"@haxtheweb/q-r/q-r.js","relative-heading-lite":"@haxtheweb/relative-heading/lib/relative-heading-lite.js","relative-heading-state-manager":"@haxtheweb/relative-heading/lib/relative-heading-state-manager.js","relative-heading":"@haxtheweb/relative-heading/relative-heading.js","performance-detect":"@haxtheweb/replace-tag/lib/PerformanceDetect.js","replace-tag":"@haxtheweb/replace-tag/replace-tag.js","responsive-grid-clear":"@haxtheweb/responsive-grid/lib/responsive-grid-clear.js","responsive-grid-col":"@haxtheweb/responsive-grid/lib/responsive-grid-col.js","responsive-grid-row":"@haxtheweb/responsive-grid/lib/responsive-grid-row.js","responsive-utility-element":"@haxtheweb/responsive-utility/lib/responsive-utility-element.js","responsive-utility":"@haxtheweb/responsive-utility/responsive-utility.js","retro-card":"@haxtheweb/retro-card/retro-card.js","rich-text-editor-button":"@haxtheweb/rich-text-editor/lib/buttons/rich-text-editor-button.js","rich-text-editor-emoji-picker":"@haxtheweb/rich-text-editor/lib/buttons/rich-text-editor-emoji-picker.js","rich-text-editor-heading-picker":"@haxtheweb/rich-text-editor/lib/buttons/rich-text-editor-heading-picker.js","rich-text-editor-icon-picker":"@haxtheweb/rich-text-editor/lib/buttons/rich-text-editor-icon-picker.js","rich-text-editor-image":"@haxtheweb/rich-text-editor/lib/buttons/rich-text-editor-image.js","rich-text-editor-link":"@haxtheweb/rich-text-editor/lib/buttons/rich-text-editor-link.js","rich-text-editor-picker":"@haxtheweb/rich-text-editor/lib/buttons/rich-text-editor-picker.js","rich-text-editor-prompt-button":"@haxtheweb/rich-text-editor/lib/buttons/rich-text-editor-prompt-button.js","rich-text-editor-source-code":"@haxtheweb/rich-text-editor/lib/buttons/rich-text-editor-source-code.js","rich-text-editor-symbol-picker":"@haxtheweb/rich-text-editor/lib/buttons/rich-text-editor-symbol-picker.js","rich-text-editor-underline":"@haxtheweb/rich-text-editor/lib/buttons/rich-text-editor-underline.js","rich-text-editor-unlink":"@haxtheweb/rich-text-editor/lib/buttons/rich-text-editor-unlink.js","link-preview-card":"@haxtheweb/rich-text-editor/lib/open-apis/link-preview-card.js","rich-text-editor-clipboard":"@haxtheweb/rich-text-editor/lib/singletons/rich-text-editor-clipboard.js","rich-text-editor-highlight":"@haxtheweb/rich-text-editor/lib/singletons/rich-text-editor-highlight.js","rich-text-editor-prompt":"@haxtheweb/rich-text-editor/lib/singletons/rich-text-editor-prompt.js","rich-text-editor-source":"@haxtheweb/rich-text-editor/lib/singletons/rich-text-editor-source.js","rich-text-editor-breadcrumbs":"@haxtheweb/rich-text-editor/lib/toolbars/rich-text-editor-breadcrumbs.js","rich-text-editor-toolbar-full":"@haxtheweb/rich-text-editor/lib/toolbars/rich-text-editor-toolbar-full.js","rich-text-editor-toolbar-mini":"@haxtheweb/rich-text-editor/lib/toolbars/rich-text-editor-toolbar-mini.js","rich-text-editor-toolbar":"@haxtheweb/rich-text-editor/lib/toolbars/rich-text-editor-toolbar.js","rich-text-editor":"@haxtheweb/rich-text-editor/rich-text-editor.js","rpg-character":"@haxtheweb/rpg-character/rpg-character.js","runkit-embed":"@haxtheweb/runkit-embed/runkit-embed.js","scroll-button":"@haxtheweb/scroll-button/scroll-button.js","self-check":"@haxtheweb/self-check/self-check.js","shadow-style":"@haxtheweb/shadow-style/shadow-style.js","simple-autocomplete-text-trigger":"@haxtheweb/simple-autocomplete/lib/simple-autocomplete-text-trigger.js","simple-autocomplete":"@haxtheweb/simple-autocomplete/simple-autocomplete.js","simple-blog-card":"@haxtheweb/simple-blog-card/simple-blog-card.js","simple-blog-footer":"@haxtheweb/simple-blog/lib/simple-blog-footer.js","simple-blog-header":"@haxtheweb/simple-blog/lib/simple-blog-header.js","simple-blog-listing":"@haxtheweb/simple-blog/lib/simple-blog-listing.js","simple-blog-overview":"@haxtheweb/simple-blog/lib/simple-blog-overview.js","simple-blog-post":"@haxtheweb/simple-blog/lib/simple-blog-post.js","simple-blog":"@haxtheweb/simple-blog/simple-blog.js","simple-colors-shared-styles":"@haxtheweb/simple-colors-shared-styles/simple-colors-shared-styles.js","simple-colors-swatch-info":"@haxtheweb/simple-colors/lib/demo/simple-colors-swatch-info.js","simple-colors-swatches":"@haxtheweb/simple-colors/lib/demo/simple-colors-swatches.js","simple-colors-picker":"@haxtheweb/simple-colors/lib/simple-colors-picker.js","simple-colors-polymer":"@haxtheweb/simple-colors/lib/simple-colors-polymer.js","simple-colors":"@haxtheweb/simple-colors/simple-colors.js","simple-cta":"@haxtheweb/simple-cta/simple-cta.js","simple-datetime":"@haxtheweb/simple-datetime/simple-datetime.js","simple-emoji":"@haxtheweb/simple-emoji/simple-emoji.js","simple-fields-array":"@haxtheweb/simple-fields/lib/simple-fields-array.js","simple-fields-code":"@haxtheweb/simple-fields/lib/simple-fields-code.js","simple-fields-combo":"@haxtheweb/simple-fields/lib/simple-fields-combo.js","simple-fields-container":"@haxtheweb/simple-fields/lib/simple-fields-container.js","simple-fields-field":"@haxtheweb/simple-fields/lib/simple-fields-field.js","simple-fields-fieldset":"@haxtheweb/simple-fields/lib/simple-fields-fieldset.js","simple-fields-form-lite":"@haxtheweb/simple-fields/lib/simple-fields-form-lite.js","simple-fields-form":"@haxtheweb/simple-fields/lib/simple-fields-form.js","simple-fields-html-block":"@haxtheweb/simple-fields/lib/simple-fields-html-block.js","simple-fields-lite":"@haxtheweb/simple-fields/lib/simple-fields-lite.js","simple-fields-tab":"@haxtheweb/simple-fields/lib/simple-fields-tab.js","simple-fields-tabs":"@haxtheweb/simple-fields/lib/simple-fields-tabs.js","simple-fields-tag-list":"@haxtheweb/simple-fields/lib/simple-fields-tag-list.js","simple-fields-upload":"@haxtheweb/simple-fields/lib/simple-fields-upload.js","simple-fields-url-combo-item":"@haxtheweb/simple-fields/lib/simple-fields-url-combo-item.js","simple-fields-url-combo":"@haxtheweb/simple-fields/lib/simple-fields-url-combo.js","simple-tag-lite":"@haxtheweb/simple-fields/lib/simple-tag-lite.js","simple-tag":"@haxtheweb/simple-fields/lib/simple-tag.js","simple-tags":"@haxtheweb/simple-fields/lib/simple-tags.js","simple-fields":"@haxtheweb/simple-fields/simple-fields.js","simple-icon-picker":"@haxtheweb/simple-icon-picker/simple-icon-picker.js","simple-icon-button-lite":"@haxtheweb/simple-icon/lib/simple-icon-button-lite.js","simple-icon-button":"@haxtheweb/simple-icon/lib/simple-icon-button.js","simple-icon-lite":"@haxtheweb/simple-icon/lib/simple-icon-lite.js","simple-iconset-demo":"@haxtheweb/simple-icon/lib/simple-iconset-demo.js","simple-iconset":"@haxtheweb/simple-icon/lib/simple-iconset.js","simple-icon":"@haxtheweb/simple-icon/simple-icon.js","simple-img":"@haxtheweb/simple-img/simple-img.js","simple-camera-snap":"@haxtheweb/simple-login/lib/simple-camera-snap.js","simple-login-avatar":"@haxtheweb/simple-login/lib/simple-login-avatar.js","simple-login-camera":"@haxtheweb/simple-login/lib/simple-login-camera.js","simple-login":"@haxtheweb/simple-login/simple-login.js","simple-modal-template":"@haxtheweb/simple-modal/lib/simple-modal-template.js","simple-modal":"@haxtheweb/simple-modal/simple-modal.js","simple-emoji-picker":"@haxtheweb/simple-picker/lib/simple-emoji-picker.js","simple-picker-option":"@haxtheweb/simple-picker/lib/simple-picker-option.js","simple-symbol-picker":"@haxtheweb/simple-picker/lib/simple-symbol-picker.js","simple-picker":"@haxtheweb/simple-picker/simple-picker.js","simple-popover-manager":"@haxtheweb/simple-popover/lib/simple-popover-manager.js","simple-popover-selection":"@haxtheweb/simple-popover/lib/simple-popover-selection.js","simple-tour":"@haxtheweb/simple-popover/lib/simple-tour.js","simple-popover":"@haxtheweb/simple-popover/simple-popover.js","simple-progress":"@haxtheweb/simple-progress/simple-progress.js","simple-range-input":"@haxtheweb/simple-range-input/simple-range-input.js","simple-search-content":"@haxtheweb/simple-search/lib/simple-search-content.js","simple-search-match":"@haxtheweb/simple-search/lib/simple-search-match.js","simple-search":"@haxtheweb/simple-search/simple-search.js","simple-toast-el":"@haxtheweb/simple-toast/lib/simple-toast-el.js","simple-toast":"@haxtheweb/simple-toast/simple-toast.js","simple-button-grid":"@haxtheweb/simple-toolbar/lib/simple-button-grid.js","simple-toolbar-button-group":"@haxtheweb/simple-toolbar/lib/simple-toolbar-button-group.js","simple-toolbar-button":"@haxtheweb/simple-toolbar/lib/simple-toolbar-button.js","simple-toolbar-field":"@haxtheweb/simple-toolbar/lib/simple-toolbar-field.js","simple-toolbar-menu-item":"@haxtheweb/simple-toolbar/lib/simple-toolbar-menu-item.js","simple-toolbar-menu":"@haxtheweb/simple-toolbar/lib/simple-toolbar-menu.js","simple-toolbar-more-button":"@haxtheweb/simple-toolbar/lib/simple-toolbar-more-button.js","simple-toolbar":"@haxtheweb/simple-toolbar/simple-toolbar.js","simple-tooltip":"@haxtheweb/simple-tooltip/simple-tooltip.js","social-share-link":"@haxtheweb/social-share-link/social-share-link.js","sorting-option":"@haxtheweb/sorting-question/lib/sorting-option.js","sorting-question":"@haxtheweb/sorting-question/sorting-question.js","spotify-embed":"@haxtheweb/spotify-embed/spotify-embed.js","star-rating":"@haxtheweb/star-rating/star-rating.js","stop-note":"@haxtheweb/stop-note/stop-note.js","super-daemon-row":"@haxtheweb/super-daemon/lib/super-daemon-row.js","super-daemon-search":"@haxtheweb/super-daemon/lib/super-daemon-search.js","super-daemon-toast":"@haxtheweb/super-daemon/lib/super-daemon-toast.js","super-daemon-ui":"@haxtheweb/super-daemon/lib/super-daemon-ui.js","super-daemon":"@haxtheweb/super-daemon/super-daemon.js","tagging-question":"@haxtheweb/tagging-question/tagging-question.js","terrible-best-themes":"@haxtheweb/terrible-themes/lib/terrible-best-themes.js","terrible-outlet-themes":"@haxtheweb/terrible-themes/lib/terrible-outlet-themes.js","terrible-productionz-themes":"@haxtheweb/terrible-themes/lib/terrible-productionz-themes.js","terrible-resume-themes":"@haxtheweb/terrible-themes/lib/terrible-resume-themes.js","terrible-themes":"@haxtheweb/terrible-themes/terrible-themes.js","training-button":"@haxtheweb/training-theme/lib/training-button.js","training-top":"@haxtheweb/training-theme/lib/training-top.js","training-theme":"@haxtheweb/training-theme/training-theme.js","twitter-embed-vanilla":"@haxtheweb/twitter-embed/lib/twitter-embed-vanilla.js","twitter-embed":"@haxtheweb/twitter-embed/twitter-embed.js","type-writer":"@haxtheweb/type-writer/type-writer.js","un-sdg":"@haxtheweb/un-sdg/un-sdg.js","undo-manager":"@haxtheweb/undo-manager/undo-manager.js","unity-webgl":"@haxtheweb/unity-webgl/unity-webgl.js","user-action":"@haxtheweb/user-action/user-action.js","user-scaffold":"@haxtheweb/user-scaffold/user-scaffold.js","lecture-anchor":"@haxtheweb/video-player/lib/lecture-anchor.js","lecture-player":"@haxtheweb/video-player/lib/lecture-player.js","video-player":"@haxtheweb/video-player/video-player.js","vocab-term":"@haxtheweb/vocab-term/vocab-term.js","voice-recorder":"@haxtheweb/voice-recorder/voice-recorder.js","wc-registry":"@haxtheweb/wc-autoload/wc-autoload.js","web-container-doc-player":"@haxtheweb/web-container/lib/web-container-doc-player.js","web-container-wc-registry-docs":"@haxtheweb/web-container/lib/web-container-wc-registry-docs.js","web-container":"@haxtheweb/web-container/web-container.js","wikipedia-query":"@haxtheweb/wikipedia-query/wikipedia-query.js","word-count":"@haxtheweb/word-count/word-count.js","wysiwyg-hax":"@haxtheweb/wysiwyg-hax/wysiwyg-hax.js","lit-virtualizer":"@lit-labs/virtualizer/lit-virtualizer.js","app-box":"@polymer/app-layout/app-box/app-box.js","app-drawer-layout":"@polymer/app-layout/app-drawer-layout/app-drawer-layout.js","app-drawer":"@polymer/app-layout/app-drawer/app-drawer.js","app-header-layout":"@polymer/app-layout/app-header-layout/app-header-layout.js","app-header":"@polymer/app-layout/app-header/app-header.js","x-container":"@polymer/app-layout/app-scroll-effects/test/x-container.js","app-toolbar":"@polymer/app-layout/app-toolbar/app-toolbar.js","iron-a11y-announcer":"@polymer/iron-a11y-announcer/iron-a11y-announcer.js","iron-a11y-keys":"@polymer/iron-a11y-keys/iron-a11y-keys.js","iron-ajax":"@polymer/iron-ajax/iron-ajax.js","iron-request":"@polymer/iron-ajax/iron-request.js","iron-autogrow-textarea":"@polymer/iron-autogrow-textarea/iron-autogrow-textarea.js","iron-component-page":"@polymer/iron-component-page/iron-component-page.js","demo-snippet":"@polymer/iron-demo-helpers/demo-snippet.js","url-bar":"@polymer/iron-demo-helpers/url-bar.js","iron-doc-api":"@polymer/iron-doc-viewer/iron-doc-api.js","iron-doc-behavior":"@polymer/iron-doc-viewer/iron-doc-behavior.js","iron-doc-class":"@polymer/iron-doc-viewer/iron-doc-class.js","iron-doc-demo":"@polymer/iron-doc-viewer/iron-doc-demo.js","iron-doc-element":"@polymer/iron-doc-viewer/iron-doc-element.js","iron-doc-function":"@polymer/iron-doc-viewer/iron-doc-function.js","iron-doc-hide-bar":"@polymer/iron-doc-viewer/iron-doc-hide-bar.js","iron-doc-mixin":"@polymer/iron-doc-viewer/iron-doc-mixin.js","iron-doc-module":"@polymer/iron-doc-viewer/iron-doc-module.js","iron-doc-namespace":"@polymer/iron-doc-viewer/iron-doc-namespace.js","iron-doc-nav":"@polymer/iron-doc-viewer/iron-doc-nav.js","iron-doc-property":"@polymer/iron-doc-viewer/iron-doc-property.js","iron-doc-summary":"@polymer/iron-doc-viewer/iron-doc-summary.js","iron-doc-viewer":"@polymer/iron-doc-viewer/iron-doc-viewer.js","iron-icon":"@polymer/iron-icon/iron-icon.js","iron-iconset-svg":"@polymer/iron-iconset-svg/iron-iconset-svg.js","iron-image":"@polymer/iron-image/iron-image.js","iron-input":"@polymer/iron-input/iron-input.js","iron-list":"@polymer/iron-list/iron-list.js","iron-location":"@polymer/iron-location/iron-location.js","iron-query-params":"@polymer/iron-location/iron-query-params.js","iron-media-query":"@polymer/iron-media-query/iron-media-query.js","iron-meta":"@polymer/iron-meta/iron-meta.js","iron-overlay-backdrop":"@polymer/iron-overlay-behavior/iron-overlay-backdrop.js","iron-pages":"@polymer/iron-pages/iron-pages.js","x-app":"@polymer/iron-resizable-behavior/demo/src/x-app.js","x-puck":"@polymer/iron-resizable-behavior/demo/src/x-puck.js","iron-selector":"@polymer/iron-selector/iron-selector.js","marked-element":"@polymer/marked-element/marked-element.js","cascaded-animation":"@polymer/neon-animation/animations/cascaded-animation.js","fade-in-animation":"@polymer/neon-animation/animations/fade-in-animation.js","fade-out-animation":"@polymer/neon-animation/animations/fade-out-animation.js","hero-animation":"@polymer/neon-animation/animations/hero-animation.js","opaque-animation":"@polymer/neon-animation/animations/opaque-animation.js","reverse-ripple-animation":"@polymer/neon-animation/animations/reverse-ripple-animation.js","ripple-animation":"@polymer/neon-animation/animations/ripple-animation.js","scale-down-animation":"@polymer/neon-animation/animations/scale-down-animation.js","scale-up-animation":"@polymer/neon-animation/animations/scale-up-animation.js","slide-down-animation":"@polymer/neon-animation/animations/slide-down-animation.js","slide-from-bottom-animation":"@polymer/neon-animation/animations/slide-from-bottom-animation.js","slide-from-left-animation":"@polymer/neon-animation/animations/slide-from-left-animation.js","slide-from-right-animation":"@polymer/neon-animation/animations/slide-from-right-animation.js","slide-from-top-animation":"@polymer/neon-animation/animations/slide-from-top-animation.js","slide-left-animation":"@polymer/neon-animation/animations/slide-left-animation.js","slide-right-animation":"@polymer/neon-animation/animations/slide-right-animation.js","slide-up-animation":"@polymer/neon-animation/animations/slide-up-animation.js","transform-animation":"@polymer/neon-animation/animations/transform-animation.js","x-card":"@polymer/neon-animation/demo/card/x-card.js","x-cards-list":"@polymer/neon-animation/demo/card/x-cards-list.js","my-animatable":"@polymer/neon-animation/demo/doc/my-animatable.js","my-dialog":"@polymer/neon-animation/demo/doc/my-dialog.js","animated-dropdown":"@polymer/neon-animation/demo/dropdown/animated-dropdown.js","animated-grid":"@polymer/neon-animation/demo/load/animated-grid.js","fullsize-page-with-card":"@polymer/neon-animation/demo/grid/fullsize-page-with-card.js","full-view":"@polymer/neon-animation/demo/list/full-view.js","list-demo":"@polymer/neon-animation/demo/list/list-demo.js","list-view":"@polymer/neon-animation/demo/list/list-view.js","full-page":"@polymer/neon-animation/demo/load/full-page.js","circles-page":"@polymer/neon-animation/demo/tiles/circles-page.js","squares-page":"@polymer/neon-animation/demo/tiles/squares-page.js","neon-animatable":"@polymer/neon-animation/neon-animatable.js","neon-animated-pages":"@polymer/neon-animation/neon-animated-pages.js","paper-card":"@polymer/paper-card/paper-card.js","paper-dialog-scrollable":"@polymer/paper-dialog-scrollable/paper-dialog-scrollable.js","paper-dialog":"@polymer/paper-dialog/paper-dialog.js","paper-icon-button-light":"@polymer/paper-icon-button/paper-icon-button-light.js","paper-icon-button":"@polymer/paper-icon-button/paper-icon-button.js","paper-input-char-counter":"@polymer/paper-input/paper-input-char-counter.js","paper-input-container":"@polymer/paper-input/paper-input-container.js","paper-input-error":"@polymer/paper-input/paper-input-error.js","paper-input":"@polymer/paper-input/paper-input.js","paper-textarea":"@polymer/paper-input/paper-textarea.js","paper-icon-item":"@polymer/paper-item/paper-icon-item.js","paper-item-body":"@polymer/paper-item/paper-item-body.js","paper-item":"@polymer/paper-item/paper-item.js","paper-progress":"@polymer/paper-progress/paper-progress.js","paper-ripple":"@polymer/paper-ripple/paper-ripple.js","paper-spinner-lite":"@polymer/paper-spinner/paper-spinner-lite.js","paper-spinner":"@polymer/paper-spinner/paper-spinner.js","paper-toast":"@polymer/paper-toast/paper-toast.js","array-selector":"@polymer/polymer/lib/elements/array-selector.js","custom-style":"@polymer/polymer/lib/elements/custom-style.js","dom-bind":"@polymer/polymer/lib/elements/dom-bind.js","dom-if":"@polymer/polymer/lib/elements/dom-if.js","dom-module":"@polymer/polymer/lib/elements/dom-module.js","dom-repeat":"@polymer/polymer/lib/elements/dom-repeat.js","prism-highlighter":"@polymer/prism-element/prism-highlighter.js","vaadin-button":"@vaadin/vaadin-button/src/vaadin-button.js","vaadin-checkbox-group":"@vaadin/vaadin-checkbox/src/vaadin-checkbox-group.js","vaadin-checkbox":"@vaadin/vaadin-checkbox/src/vaadin-checkbox.js","vaadin-grid-column-group":"@vaadin/vaadin-grid/src/vaadin-grid-column-group.js","vaadin-grid-column":"@vaadin/vaadin-grid/src/vaadin-grid-column.js","vaadin-grid-filter-column":"@vaadin/vaadin-grid/src/vaadin-grid-filter-column.js","vaadin-grid-filter":"@vaadin/vaadin-grid/src/vaadin-grid-filter.js","vaadin-grid-scroller":"@vaadin/vaadin-grid/src/vaadin-grid-scroller.js","vaadin-grid-selection-column":"@vaadin/vaadin-grid/src/vaadin-grid-selection-column.js","vaadin-grid-sort-column":"@vaadin/vaadin-grid/src/vaadin-grid-sort-column.js","vaadin-grid-sorter":"@vaadin/vaadin-grid/src/vaadin-grid-sorter.js","vaadin-grid-templatizer":"@vaadin/vaadin-grid/src/vaadin-grid-templatizer.js","vaadin-grid-tree-column":"@vaadin/vaadin-grid/src/vaadin-grid-tree-column.js","vaadin-grid-tree-toggle":"@vaadin/vaadin-grid/src/vaadin-grid-tree-toggle.js","vaadin-grid":"@vaadin/vaadin-grid/src/vaadin-grid.js","vaadin-lumo-styles":"@vaadin/vaadin-lumo-styles/version.js","vaadin-material-styles":"@vaadin/vaadin-material-styles/version.js","vaadin-progress-bar":"@vaadin/vaadin-progress-bar/src/vaadin-progress-bar.js","vaadin-email-field":"@vaadin/vaadin-text-field/src/vaadin-email-field.js","vaadin-integer-field":"@vaadin/vaadin-text-field/src/vaadin-integer-field.js","vaadin-number-field":"@vaadin/vaadin-text-field/src/vaadin-number-field.js","vaadin-password-field":"@vaadin/vaadin-text-field/src/vaadin-password-field.js","vaadin-text-area":"@vaadin/vaadin-text-field/src/vaadin-text-area.js","vaadin-text-field":"@vaadin/vaadin-text-field/src/vaadin-text-field.js","vaadin-upload-file":"@vaadin/vaadin-upload/src/vaadin-upload-file.js","vaadin-upload":"@vaadin/vaadin-upload/src/vaadin-upload.js","scrollable-component":"scrollable-component/index.js","web-dialog":"web-dialog/web-dialog.js"}
    \ No newline at end of file
    +{"focus-trap":"@a11y/focus-trap/focus-trap.js","local-time":"@github/time-elements/dist/local-time-element.js","relative-time":"@github/time-elements/dist/relative-time-element.js","time-ago":"@github/time-elements/dist/time-ago-element.js","time-until":"@github/time-elements/dist/time-until-element.js","model-viewer":"@google/model-viewer/dist/model-viewer.js","a11y-carousel":"@haxtheweb/a11y-carousel/a11y-carousel.js","a11y-carousel-button":"@haxtheweb/a11y-carousel/lib/a11y-carousel-button.js","a11y-collapse":"@haxtheweb/a11y-collapse/a11y-collapse.js","a11y-collapse-group":"@haxtheweb/a11y-collapse/lib/a11y-collapse-group.js","a11y-compare-image":"@haxtheweb/a11y-compare-image/a11y-compare-image.js","a11y-details":"@haxtheweb/a11y-details/a11y-details.js","a11y-figure":"@haxtheweb/a11y-figure/a11y-figure.js","a11y-gif-player":"@haxtheweb/a11y-gif-player/a11y-gif-player.js","a11y-media-player":"@haxtheweb/a11y-media-player/a11y-media-player.js","a11y-media-button":"@haxtheweb/a11y-media-player/lib/a11y-media-button.js","a11y-media-play-button":"@haxtheweb/a11y-media-player/lib/a11y-media-play-button.js","a11y-media-state-manager":"@haxtheweb/a11y-media-player/lib/a11y-media-state-manager.js","a11y-media-transcript-cue":"@haxtheweb/a11y-media-player/lib/a11y-media-transcript-cue.js","a11y-media-youtube":"@haxtheweb/a11y-media-player/lib/a11y-media-youtube.js","a11y-menu-button":"@haxtheweb/a11y-menu-button/a11y-menu-button.js","a11y-menu-button-item":"@haxtheweb/a11y-menu-button/lib/a11y-menu-button-item.js","a11y-tabs":"@haxtheweb/a11y-tabs/a11y-tabs.js","a11y-tab":"@haxtheweb/a11y-tabs/lib/a11y-tab.js","absolute-position-behavior":"@haxtheweb/absolute-position-behavior/absolute-position-behavior.js","absolute-position-state-manager":"@haxtheweb/absolute-position-behavior/lib/absolute-position-state-manager.js","accent-card":"@haxtheweb/accent-card/accent-card.js","aframe-player":"@haxtheweb/aframe-player/aframe-player.js","air-horn":"@haxtheweb/air-horn/air-horn.js","app-hax":"@haxtheweb/app-hax/app-hax.js","app-hax-theme":"@haxtheweb/app-hax/lib/app-hax-theme.js","random-word":"@haxtheweb/app-hax/lib/random-word/random-word.js","rpg-character-toast":"@haxtheweb/app-hax/lib/rpg-character-toast/rpg-character-toast.js","app-hax-button":"@haxtheweb/app-hax/lib/v1/app-hax-button.js","app-hax-hat-progress":"@haxtheweb/app-hax/lib/v1/app-hax-hat-progress.js","app-hax-label":"@haxtheweb/app-hax/lib/v1/app-hax-label.js","app-hax-search-bar":"@haxtheweb/app-hax/lib/v1/app-hax-search-bar.js","app-hax-search-results":"@haxtheweb/app-hax/lib/v1/app-hax-search-results.js","app-hax-site-bar":"@haxtheweb/app-hax/lib/v1/app-hax-site-bar.js","app-hax-site-button":"@haxtheweb/app-hax/lib/v1/app-hax-site-button.js","app-hax-site-details":"@haxtheweb/app-hax/lib/v1/app-hax-site-details.js","app-hax-site-login":"@haxtheweb/app-hax/lib/v1/app-hax-site-login.js","app-hax-steps":"@haxtheweb/app-hax/lib/v1/app-hax-steps.js","app-hax-toast":"@haxtheweb/app-hax/lib/v1/app-hax-toast.js","app-hax-top-bar":"@haxtheweb/app-hax/lib/v1/app-hax-top-bar.js","app-hax-user-menu-button":"@haxtheweb/app-hax/lib/v1/app-hax-user-menu-button.js","app-hax-user-menu":"@haxtheweb/app-hax/lib/v1/app-hax-user-menu.js","app-hax-wired-toggle":"@haxtheweb/app-hax/lib/v1/app-hax-wired-toggle.js","app-hax-backend-api":"@haxtheweb/app-hax/lib/v1/AppHaxBackendAPI.js","app-hax-router":"@haxtheweb/app-hax/lib/v1/AppHaxRouter.js","wired-darkmode-toggle":"@haxtheweb/app-hax/lib/wired-darkmode-toggle/wired-darkmode-toggle.js","audio-player":"@haxtheweb/audio-player/audio-player.js","awesome-explosion":"@haxtheweb/awesome-explosion/awesome-explosion.js","b-r":"@haxtheweb/b-r/b-r.js","barcode-reader":"@haxtheweb/barcode-reader/barcode-reader.js","beaker-broker":"@haxtheweb/beaker-broker/beaker-broker.js","bootstrap-theme":"@haxtheweb/bootstrap-theme/bootstrap-theme.js","bootstrap-breadcrumb":"@haxtheweb/bootstrap-theme/lib/BootstrapBreadcrumb.js","bootstrap-footer":"@haxtheweb/bootstrap-theme/lib/BootstrapFooter.js","bootstrap-search":"@haxtheweb/bootstrap-theme/lib/BootstrapSearch.js","chartist-render":"@haxtheweb/chartist-render/chartist-render.js","chat-agent":"@haxtheweb/chat-agent/chat-agent.js","chat-button":"@haxtheweb/chat-agent/lib/chat-button.js","chat-control-bar":"@haxtheweb/chat-agent/lib/chat-control-bar.js","chat-developer-panel":"@haxtheweb/chat-agent/lib/chat-developer-panel.js","chat-input":"@haxtheweb/chat-agent/lib/chat-input.js","chat-interface":"@haxtheweb/chat-agent/lib/chat-interface.js","chat-message":"@haxtheweb/chat-agent/lib/chat-message.js","chat-suggestion":"@haxtheweb/chat-agent/lib/chat-suggestion.js","check-it-out":"@haxtheweb/check-it-out/check-it-out.js","citation-element":"@haxtheweb/citation-element/citation-element.js","clean-one":"@haxtheweb/clean-one/clean-one.js","clean-one-search-box":"@haxtheweb/clean-one/lib/clean-one-search-box.js","clean-portfolio-theme":"@haxtheweb/clean-portfolio-theme/clean-portfolio-theme.js","clean-two":"@haxtheweb/clean-two/clean-two.js","cms-hax":"@haxtheweb/cms-hax/cms-hax.js","cms-block":"@haxtheweb/cms-hax/lib/cms-block.js","cms-entity":"@haxtheweb/cms-hax/lib/cms-entity.js","cms-token":"@haxtheweb/cms-hax/lib/cms-token.js","cms-views":"@haxtheweb/cms-hax/lib/cms-views.js","code-editor":"@haxtheweb/code-editor/code-editor.js","code-pen-button":"@haxtheweb/code-editor/lib/code-pen-button.js","monaco-element":"@haxtheweb/code-editor/lib/monaco-element/monaco-element.js","code-sample":"@haxtheweb/code-sample/code-sample.js","collection-list":"@haxtheweb/collection-list/collection-list.js","collection-item":"@haxtheweb/collection-list/lib/collection-item.js","collection-row":"@haxtheweb/collection-list/lib/collection-row.js","collections-theme-banner":"@haxtheweb/collection-list/lib/collections-theme-banner.js","collections-theme":"@haxtheweb/collection-list/lib/collections-theme.js","count-up":"@haxtheweb/count-up/count-up.js","course-design":"@haxtheweb/course-design/course-design.js","activity-box":"@haxtheweb/course-design/lib/activity-box.js","block-quote":"@haxtheweb/course-design/lib/block-quote.js","course-intro-header":"@haxtheweb/course-design/lib/course-intro-header.js","course-intro-lesson-plan":"@haxtheweb/course-design/lib/course-intro-lesson-plan.js","course-intro-lesson-plans":"@haxtheweb/course-design/lib/course-intro-lesson-plans.js","course-intro":"@haxtheweb/course-design/lib/course-intro.js","ebook-button":"@haxtheweb/course-design/lib/ebook-button.js","learning-component":"@haxtheweb/course-design/lib/learning-component.js","lrn-h5p":"@haxtheweb/course-design/lib/lrn-h5p.js","responsive-iframe":"@haxtheweb/course-design/lib/responsive-iframe.js","worksheet-download":"@haxtheweb/course-design/lib/worksheet-download.js","course-model":"@haxtheweb/course-model/course-model.js","model-info":"@haxtheweb/course-model/lib/model-info.js","model-option":"@haxtheweb/course-model/lib/model-option.js","csv-render":"@haxtheweb/csv-render/csv-render.js","d-d-d":"@haxtheweb/d-d-d/d-d-d.js","ddd-brochure-theme":"@haxtheweb/d-d-d/lib/ddd-brochure-theme.js","ddd-card":"@haxtheweb/d-d-d/lib/ddd-card.js","ddd-steps-list-item":"@haxtheweb/d-d-d/lib/ddd-steps-list-item.js","ddd-steps-list":"@haxtheweb/d-d-d/lib/ddd-steps-list.js","design-system":"@haxtheweb/d-d-d/lib/DesignSystemManager.js","mini-map":"@haxtheweb/d-d-d/lib/mini-map.js","d-d-docs":"@haxtheweb/d-d-docs/d-d-docs.js","data-viz":"@haxtheweb/data-viz/data-viz.js","date-card":"@haxtheweb/date-card/date-card.js","date-chip":"@haxtheweb/date-card/lib/date-chip.js","discord-embed":"@haxtheweb/discord-embed/discord-embed.js","disqus-embed":"@haxtheweb/disqus-embed/disqus-embed.js","haxcms-site-disqus":"@haxtheweb/disqus-embed/lib/haxcms-site-disqus.js","documentation-player":"@haxtheweb/documentation-player/documentation-player.js","dynamic-import-registry":"@haxtheweb/dynamic-import-registry/dynamic-import-registry.js","editable-outline":"@haxtheweb/editable-outline/editable-outline.js","editable-table":"@haxtheweb/editable-table/editable-table.js","editable-table-display":"@haxtheweb/editable-table/lib/editable-table-display.js","editable-table-edit":"@haxtheweb/editable-table/lib/editable-table-edit.js","editable-table-editor-rowcol":"@haxtheweb/editable-table/lib/editable-table-editor-rowcol.js","editable-table-filter":"@haxtheweb/editable-table/lib/editable-table-filter.js","editable-table-sort":"@haxtheweb/editable-table/lib/editable-table-sort.js","elmsln-loading":"@haxtheweb/elmsln-loading/elmsln-loading.js","enhanced-text":"@haxtheweb/enhanced-text/enhanced-text.js","event-badge":"@haxtheweb/event-badge/event-badge.js","example-hax-element":"@haxtheweb/example-hax-element/example-hax-element.js","example-haxcms-theme":"@haxtheweb/example-haxcms-theme/example-haxcms-theme.js","figure-label":"@haxtheweb/figure-label/figure-label.js","file-system-broker":"@haxtheweb/file-system-broker/file-system-broker.js","docx-file-system-broker":"@haxtheweb/file-system-broker/lib/docx-file-system-broker.js","xlsx-file-system-broker":"@haxtheweb/file-system-broker/lib/xlsx-file-system-broker.js","fill-in-the-blanks":"@haxtheweb/fill-in-the-blanks/fill-in-the-blanks.js","flash-card":"@haxtheweb/flash-card/flash-card.js","flash-card-answer-box":"@haxtheweb/flash-card/lib/flash-card-answer-box.js","flash-card-image-prompt":"@haxtheweb/flash-card/lib/flash-card-prompt-img.js","flash-card-set":"@haxtheweb/flash-card/lib/flash-card-set.js","fluid-type":"@haxtheweb/fluid-type/fluid-type.js","full-width-image":"@haxtheweb/full-width-image/full-width-image.js","fullscreen-behaviors":"@haxtheweb/fullscreen-behaviors/fullscreen-behaviors.js","future-terminal-text":"@haxtheweb/future-terminal-text/future-terminal-text.js","future-terminal-text-lite":"@haxtheweb/future-terminal-text/lib/future-terminal-text-lite.js","git-corner":"@haxtheweb/git-corner/git-corner.js","github-preview":"@haxtheweb/github-preview/github-preview.js","github-rpg-contributors":"@haxtheweb/github-preview/lib/github-rpg-contributors.js","wc-markdown":"@haxtheweb/github-preview/lib/wc-markdown.js","glossy-portfolio-theme":"@haxtheweb/glossy-portfolio-theme/glossy-portfolio-theme.js","glossy-portfolio-about":"@haxtheweb/glossy-portfolio-theme/lib/glossy-portfolio-about.js","glossy-portfolio-breadcrumb":"@haxtheweb/glossy-portfolio-theme/lib/glossy-portfolio-breadcrumb.js","glossy-portfolio-card":"@haxtheweb/glossy-portfolio-theme/lib/glossy-portfolio-card.js","glossy-portfolio-footer":"@haxtheweb/glossy-portfolio-theme/lib/glossy-portfolio-footer.js","glossy-portfolio-grid":"@haxtheweb/glossy-portfolio-theme/lib/glossy-portfolio-grid.js","glossy-portfolio-header":"@haxtheweb/glossy-portfolio-theme/lib/glossy-portfolio-header.js","glossy-portfolio-home":"@haxtheweb/glossy-portfolio-theme/lib/glossy-portfolio-home.js","grade-book":"@haxtheweb/grade-book/grade-book.js","grade-book-lite":"@haxtheweb/grade-book/lib/grade-book-lite.js","grade-book-pop-up":"@haxtheweb/grade-book/lib/grade-book-pop-up.js","grade-book-store":"@haxtheweb/grade-book/lib/grade-book-store.js","grade-book-student-block":"@haxtheweb/grade-book/lib/grade-book-student-block.js","grade-book-table":"@haxtheweb/grade-book/lib/grade-book-table.js","letter-grade-picker":"@haxtheweb/grade-book/lib/letter-grade-picker.js","letter-grade":"@haxtheweb/grade-book/lib/letter-grade.js","grid-plate":"@haxtheweb/grid-plate/grid-plate.js","h-a-x":"@haxtheweb/h-a-x/h-a-x.js","h5p-element":"@haxtheweb/h5p-element/h5p-element.js","h5p-wrapped-element":"@haxtheweb/h5p-element/lib/h5p-wrapped-element.js","hal-9000":"@haxtheweb/hal-9000/hal-9000.js","hal-9000-ui":"@haxtheweb/hal-9000/lib/hal-9000-ui/hal-9000-ui.js","hax-body":"@haxtheweb/hax-body/hax-body.js","hax-app-picker":"@haxtheweb/hax-body/lib/hax-app-picker.js","hax-app-search":"@haxtheweb/hax-body/lib/hax-app-search.js","hax-app":"@haxtheweb/hax-body/lib/hax-app.js","hax-autoloader":"@haxtheweb/hax-body/lib/hax-autoloader.js","hax-cancel-dialog":"@haxtheweb/hax-body/lib/hax-cancel-dialog.js","hax-context-item-textop":"@haxtheweb/hax-body/lib/hax-context-item-textop.js","hax-context-item":"@haxtheweb/hax-body/lib/hax-context-item.js","hax-element-demo":"@haxtheweb/hax-body/lib/hax-element-demo.js","hax-export-dialog":"@haxtheweb/hax-body/lib/hax-export-dialog.js","hax-gizmo-browser":"@haxtheweb/hax-body/lib/hax-gizmo-browser.js","hax-map":"@haxtheweb/hax-body/lib/hax-map.js","hax-picker":"@haxtheweb/hax-body/lib/hax-picker.js","hax-plate-context":"@haxtheweb/hax-body/lib/hax-plate-context.js","hax-preferences-dialog":"@haxtheweb/hax-body/lib/hax-preferences-dialog.js","hax-stax-browser":"@haxtheweb/hax-body/lib/hax-stax-browser.js","hax-store":"@haxtheweb/hax-body/lib/hax-store.js","hax-text-editor-button":"@haxtheweb/hax-body/lib/hax-text-editor-button.js","hax-text-editor-paste-button":"@haxtheweb/hax-body/lib/hax-text-editor-paste-button.js","hax-text-editor-toolbar":"@haxtheweb/hax-body/lib/hax-text-editor-toolbar.js","hax-text-editor":"@haxtheweb/hax-body/lib/hax-text-editor.js","hax-toolbar-item":"@haxtheweb/hax-body/lib/hax-toolbar-item.js","hax-toolbar-menu":"@haxtheweb/hax-body/lib/hax-toolbar-menu.js","hax-toolbar":"@haxtheweb/hax-body/lib/hax-toolbar.js","hax-tray-button":"@haxtheweb/hax-body/lib/hax-tray-button.js","hax-tray-upload":"@haxtheweb/hax-body/lib/hax-tray-upload.js","hax-tray":"@haxtheweb/hax-body/lib/hax-tray.js","hax-ui-styles":"@haxtheweb/hax-body/lib/hax-ui-styles.js","hax-upload-field":"@haxtheweb/hax-body/lib/hax-upload-field.js","hax-view-source":"@haxtheweb/hax-body/lib/hax-view-source.js","hax-cloud":"@haxtheweb/hax-cloud/hax-cloud.js","hax-logo":"@haxtheweb/hax-logo/hax-logo.js","haxcms-backend-beaker":"@haxtheweb/haxcms-elements/lib/core/backends/haxcms-backend-beaker.js","haxcms-backend-demo":"@haxtheweb/haxcms-elements/lib/core/backends/haxcms-backend-demo.js","haxcms-backend-nodejs":"@haxtheweb/haxcms-elements/lib/core/backends/haxcms-backend-nodejs.js","haxcms-backend-php":"@haxtheweb/haxcms-elements/lib/core/backends/haxcms-backend-php.js","haxcms-backend-userfs":"@haxtheweb/haxcms-elements/lib/core/backends/haxcms-backend-userfs.js","haxcms-darkmode-toggle":"@haxtheweb/haxcms-elements/lib/core/haxcms-darkmode-toggle.js","haxcms-editor-builder":"@haxtheweb/haxcms-elements/lib/core/haxcms-editor-builder.js","haxcms-outline-editor-dialog":"@haxtheweb/haxcms-elements/lib/core/haxcms-outline-editor-dialog.js","haxcms-share-dialog":"@haxtheweb/haxcms-elements/lib/core/haxcms-share-dialog.js","haxcms-site-builder":"@haxtheweb/haxcms-elements/lib/core/haxcms-site-builder.js","haxcms-site-dashboard":"@haxtheweb/haxcms-elements/lib/core/haxcms-site-dashboard.js","haxcms-site-editor-ui":"@haxtheweb/haxcms-elements/lib/core/haxcms-site-editor-ui.js","haxcms-site-editor":"@haxtheweb/haxcms-elements/lib/core/haxcms-site-editor.js","haxcms-site-insights":"@haxtheweb/haxcms-elements/lib/core/haxcms-site-insights.js","haxcms-site-router":"@haxtheweb/haxcms-elements/lib/core/haxcms-site-router.js","haxcms-site-store":"@haxtheweb/haxcms-elements/lib/core/haxcms-site-store.js","haxcms-toast":"@haxtheweb/haxcms-elements/lib/core/haxcms-toast.js","haxcms-button-add":"@haxtheweb/haxcms-elements/lib/core/micros/haxcms-button-add.js","haxcms-basic-theme":"@haxtheweb/haxcms-elements/lib/core/themes/haxcms-basic-theme.js","haxcms-blank-theme":"@haxtheweb/haxcms-elements/lib/core/themes/haxcms-blank-theme.js","haxcms-minimalist-theme":"@haxtheweb/haxcms-elements/lib/core/themes/haxcms-minimalist-theme.js","haxcms-print-theme":"@haxtheweb/haxcms-elements/lib/core/themes/haxcms-print-theme.js","haxcms-slide-theme":"@haxtheweb/haxcms-elements/lib/core/themes/haxcms-slide-theme.js","haxcms-page-get-started":"@haxtheweb/haxcms-elements/lib/core/ui/haxcms-page-get-started.js","haxcms-dev-theme":"@haxtheweb/haxcms-elements/lib/development/haxcms-dev-theme.js","haxcms-theme-developer":"@haxtheweb/haxcms-elements/lib/development/haxcms-theme-developer.js","site-active-fields":"@haxtheweb/haxcms-elements/lib/ui-components/active-item/site-active-fields.js","site-active-media-banner":"@haxtheweb/haxcms-elements/lib/ui-components/active-item/site-active-media-banner.js","site-active-tags":"@haxtheweb/haxcms-elements/lib/ui-components/active-item/site-active-tags.js","site-active-title":"@haxtheweb/haxcms-elements/lib/ui-components/active-item/site-active-title.js","site-git-corner":"@haxtheweb/haxcms-elements/lib/ui-components/active-item/site-git-corner.js","site-share-widget":"@haxtheweb/haxcms-elements/lib/ui-components/active-item/site-share-widget.js","site-children-block":"@haxtheweb/haxcms-elements/lib/ui-components/blocks/site-children-block.js","site-outline-block":"@haxtheweb/haxcms-elements/lib/ui-components/blocks/site-outline-block.js","site-recent-content-block":"@haxtheweb/haxcms-elements/lib/ui-components/blocks/site-recent-content-block.js","site-drawer":"@haxtheweb/haxcms-elements/lib/ui-components/layout/site-drawer.js","site-footer":"@haxtheweb/haxcms-elements/lib/ui-components/layout/site-footer.js","site-modal":"@haxtheweb/haxcms-elements/lib/ui-components/layout/site-modal.js","site-region":"@haxtheweb/haxcms-elements/lib/ui-components/layout/site-region.js","active-when-visible":"@haxtheweb/haxcms-elements/lib/ui-components/magic/active-when-visible.js","site-ai-chat":"@haxtheweb/haxcms-elements/lib/ui-components/magic/site-ai-chat.js","site-collection-list":"@haxtheweb/haxcms-elements/lib/ui-components/magic/site-collection-list.js","site-view":"@haxtheweb/haxcms-elements/lib/ui-components/magic/site-view.js","site-breadcrumb":"@haxtheweb/haxcms-elements/lib/ui-components/navigation/site-breadcrumb.js","site-dot-indicator":"@haxtheweb/haxcms-elements/lib/ui-components/navigation/site-dot-indicator.js","site-menu-button":"@haxtheweb/haxcms-elements/lib/ui-components/navigation/site-menu-button.js","site-menu-content":"@haxtheweb/haxcms-elements/lib/ui-components/navigation/site-menu-content.js","site-menu":"@haxtheweb/haxcms-elements/lib/ui-components
    ... [truncated]
    

Vulnerability mechanics

Generated on May 9, 2026. Inputs: CWE entries + fix-commit diffs from this CVE's patches. Citations validated against bundle.

References

4

News mentions

0

No linked articles in our index yet.