analog-clock-components 0.2.2 → 0.2.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1 @@
1
- import{p as e,b as a}from"./p-dac57ec6.js";export{s as setNonce}from"./p-dac57ec6.js";import{g as o}from"./p-e1255160.js";(()=>{const a=import.meta.url,o={};return""!==a&&(o.resourcesUrl=new URL(".",a).href),e(o)})().then((async e=>(await o(),a([["p-08fb2d5a",[[1,"analog-clock",{size:[2],timeZone:[2,"time-zone"],time:[32]}]]]],e))));
1
+ import{p as a,b as e}from"./p-af0a6fac.js";export{s as setNonce}from"./p-af0a6fac.js";import{g as o}from"./p-e1255160.js";(()=>{const e=import.meta.url,o={};return""!==e&&(o.resourcesUrl=new URL(".",e).href),a(o)})().then((async a=>(await o(),e([["p-0331c920",[[1,"analog-clock",{size:[2],timeZone:[2,"time-zone"],time:[32]}]]]],a))));
@@ -1 +1 @@
1
- import{r as e,h as t}from"./p-dac57ec6.js";const c=class{constructor(t){e(this,t),this.size=void 0,this.timeZone=0,this.time=Date.now()}componentDidLoad(){this.timer=window.setInterval((()=>{this.time=Date.now()}),250)}disconnectedCallback(){clearInterval(this.timer)}get hour(){return new Date(this.time).getHours()}get minute(){return new Date(this.time).getMinutes()}get second(){return new Date(this.time).getSeconds()}hourToDegrees(){const e=this.hour+this.timeZone;return Math.floor(this.minute/2)+30*e}minuteToDegrees(){return Math.floor(this.second/10)+6*this.minute}secondToDegrees(){return 6*this.second}render(){return t("svg",{key:"39e3465d3bf04035966b00bb15186d1f712163cd",class:"clock",viewBox:"0 0 200 200",width:this.size,height:this.size},t("circle",{key:"e4c4288aa0efc9cf98027eef1f5bd7c550c23a18",id:"circle",cx:"100",cy:"100",r:"95","stroke-width":"10",fill:"transparent"}),t("line",{key:"296fb8ac19749103439f2ce1878db5ccfb214c20",id:"hour",transform:`rotate(${this.hourToDegrees()}, 100, 100)`,x1:"100",y1:"100",x2:"100",y2:"60","stroke-width":"10","stroke-linecap":"round"}),t("line",{key:"acbe2c6ebdf05ff46e06144839dec43c45e8b40d",id:"minute",transform:`rotate(${this.minuteToDegrees()}, 100, 100)`,x1:"100",y1:"100",x2:"100",y2:"30","stroke-width":"8","stroke-linecap":"round"}),t("line",{key:"f275abf7169379b2f61c9cdd185068f5e2373d4a",id:"second",transform:`rotate(${this.secondToDegrees()}, 100, 100)`,x1:"100",y1:"100",x2:"100",y2:"20","stroke-width":"2","stroke-linecap":"round"}))}};c.style=".clock #circle{stroke:var(--clock-circle-color, black)}.clock #hour{stroke:var(--clock-hour-color, black)}.clock #minute{stroke:var(--clock-minute-color, black)}.clock #second{stroke:var(--clock-second-color, black)}";export{c as analog_clock}
1
+ import{r as e,h as t}from"./p-af0a6fac.js";const c=class{constructor(t){e(this,t),this.size=void 0,this.timeZone=0,this.time=Date.now()}componentDidLoad(){this.timer=window.setInterval((()=>{this.time=Date.now()}),250)}disconnectedCallback(){clearInterval(this.timer)}get hour(){return new Date(this.time).getHours()}get minute(){return new Date(this.time).getMinutes()}get second(){return new Date(this.time).getSeconds()}hourToDegrees(){const e=this.hour+this.timeZone;return Math.floor(this.minute/2)+30*e}minuteToDegrees(){return Math.floor(this.second/10)+6*this.minute}secondToDegrees(){return 6*this.second}render(){return t("svg",{key:"39e3465d3bf04035966b00bb15186d1f712163cd",class:"clock",viewBox:"0 0 200 200",width:this.size,height:this.size},t("circle",{key:"e4c4288aa0efc9cf98027eef1f5bd7c550c23a18",id:"circle",cx:"100",cy:"100",r:"95","stroke-width":"10",fill:"transparent"}),t("line",{key:"296fb8ac19749103439f2ce1878db5ccfb214c20",id:"hour",transform:`rotate(${this.hourToDegrees()}, 100, 100)`,x1:"100",y1:"100",x2:"100",y2:"60","stroke-width":"10","stroke-linecap":"round"}),t("line",{key:"acbe2c6ebdf05ff46e06144839dec43c45e8b40d",id:"minute",transform:`rotate(${this.minuteToDegrees()}, 100, 100)`,x1:"100",y1:"100",x2:"100",y2:"30","stroke-width":"8","stroke-linecap":"round"}),t("line",{key:"f275abf7169379b2f61c9cdd185068f5e2373d4a",id:"second",transform:`rotate(${this.secondToDegrees()}, 100, 100)`,x1:"100",y1:"100",x2:"100",y2:"20","stroke-width":"2","stroke-linecap":"round"}))}};c.style=".clock #circle{stroke:var(--clock-circle-color, black)}.clock #hour{stroke:var(--clock-hour-color, black)}.clock #minute{stroke:var(--clock-minute-color, black)}.clock #second{stroke:var(--clock-second-color, black)}";export{c as analog_clock}
@@ -0,0 +1,2 @@
1
+ var e=Object.defineProperty,t=e=>{if(e.__stencil__getHostRef)return e.__stencil__getHostRef()},n=(e,t)=>{e.__stencil__getHostRef=()=>t,t.t=e},o=(e,t)=>(0,console.error)(e,t),l=new Map,i=new Map,s="slot-fb{display:contents}slot-fb[hidden]{display:none}",r="undefined"!=typeof window?window:{},c={o:0,l:"",jmp:e=>e(),raf:e=>requestAnimationFrame(e),ael:(e,t,n,o)=>e.addEventListener(t,n,o),rel:(e,t,n,o)=>e.removeEventListener(t,n,o),ce:(e,t)=>new CustomEvent(e,t)},u=e=>Promise.resolve(e),a=(()=>{try{return new CSSStyleSheet,"function"==typeof(new CSSStyleSheet).replaceSync}catch(e){}return!1})(),f=!1,d=[],h=[],p=(e,t)=>n=>{e.push(n),f||(f=!0,t&&4&c.o?y(v):c.raf(v))},m=e=>{for(let t=0;t<e.length;t++)try{e[t](performance.now())}catch(e){o(e)}e.length=0},v=()=>{m(d),m(h),(f=d.length>0)&&c.raf(v)},y=e=>u().then(e),w=p(h,!0),b=e=>"object"==(e=typeof e)||"function"===e;function $(e){var t,n,o;return null!=(o=null==(n=null==(t=e.head)?void 0:t.querySelector('meta[name="csp-nonce"]'))?void 0:n.getAttribute("content"))?o:void 0}((t,n)=>{for(var o in n)e(t,o,{get:n[o],enumerable:!0})})({},{err:()=>S,map:()=>j,ok:()=>g,unwrap:()=>k,unwrapErr:()=>E});var g=e=>({isOk:!0,isErr:!1,value:e}),S=e=>({isOk:!1,isErr:!0,value:e});function j(e,t){if(e.isOk){const n=t(e.value);return n instanceof Promise?n.then((e=>g(e))):g(n)}if(e.isErr)return S(e.value);throw"should never get here"}var O,k=e=>{if(e.isOk)return e.value;throw e.value},E=e=>{if(e.isErr)return e.value;throw e.value},C=(e,t,...n)=>{let o=null,l=null,i=!1,s=!1;const r=[],c=t=>{for(let n=0;n<t.length;n++)o=t[n],Array.isArray(o)?c(o):null!=o&&"boolean"!=typeof o&&((i="function"!=typeof e&&!b(o))&&(o+=""),i&&s?r[r.length-1].i+=o:r.push(i?M(null,o):o),s=i)};if(c(n),t){t.key&&(l=t.key);{const e=t.className||t.class;e&&(t.class="object"!=typeof e?e:Object.keys(e).filter((t=>e[t])).join(" "))}}const u=M(e,null);return u.u=t,r.length>0&&(u.h=r),u.p=l,u},M=(e,t)=>({o:0,m:e,i:t,v:null,h:null,u:null,p:null}),P={},x=(e,t)=>null==e||b(e)?e:2&t?parseFloat(e):e,D=new WeakMap,U=e=>"sc-"+e.$,W=(e,t,n,o,l,i)=>{if(n===o)return;let s=((e,t)=>t in e)(e,t);if(t.toLowerCase(),"class"===t){const t=e.classList,l=N(n);let i=N(o);t.remove(...l.filter((e=>e&&!i.includes(e)))),t.add(...i.filter((e=>e&&!l.includes(e))))}else if("key"===t);else{const r=b(o);if((s||r&&null!==o)&&!l)try{if(e.tagName.includes("-"))e[t]!==o&&(e[t]=o);else{const l=null==o?"":o;"list"===t?s=!1:null!=n&&e[t]==l||("function"==typeof e.__lookupSetter__(t)?e[t]=l:e.setAttribute(t,l))}}catch(e){}null==o||!1===o?!1===o&&""!==e.getAttribute(t)||e.removeAttribute(t):(!s||4&i||l)&&!r&&1===e.nodeType&&e.setAttribute(t,o=!0===o?"":o)}},A=/\s/,N=e=>("object"==typeof e&&e&&"baseVal"in e&&(e=e.baseVal),e&&"string"==typeof e?e.split(A):[]),R=(e,t,n)=>{const o=11===t.v.nodeType&&t.v.host?t.v.host:t.v,l=e&&e.u||{},i=t.u||{};for(const e of L(Object.keys(l)))e in i||W(o,e,l[e],void 0,n,t.o);for(const e of L(Object.keys(i)))W(o,e,l[e],i[e],n,t.o)};function L(e){return e.includes("ref")?[...e.filter((e=>"ref"!==e)),"ref"]:e}var T=!1,F=(e,t,n)=>{const o=t.h[n];let l,i,s=0;if(T||(T="svg"===o.m),!r.document)throw Error("You are trying to render a Stencil component in an environment that doesn't support the DOM. Make sure to populate the [`window`](https://developer.mozilla.org/en-US/docs/Web/API/Window/window) object before rendering a component.");if(l=o.v=r.document.createElementNS(T?"http://www.w3.org/2000/svg":"http://www.w3.org/1999/xhtml",o.m),T&&"foreignObject"===o.m&&(T=!1),R(null,o,T),o.h)for(s=0;s<o.h.length;++s)i=F(e,o,s),i&&l.appendChild(i);return"svg"===o.m?T=!1:"foreignObject"===l.tagName&&(T=!0),l["s-hn"]=O,l},H=(e,t,n,o,l,i)=>{let s,r=e;for(r.shadowRoot&&r.tagName===O&&(r=r.shadowRoot);l<=i;++l)o[l]&&(s=F(null,n,l),s&&(o[l].v=s,G(r,s,t)))},z=(e,t,n)=>{for(let o=t;o<=n;++o){const t=e[o];if(t){const e=t.v;e&&e.remove()}}},V=(e,t,n=!1)=>e.m===t.m&&(n?(n&&!e.p&&t.p&&(e.p=t.p),!0):e.p===t.p),q=(e,t,n=!1)=>{const o=t.v=e.v,l=e.h,i=t.h,s=t.m;R(e,t,T="svg"===s||"foreignObject"!==s&&T),null!==l&&null!==i?((e,t,n,o,l=!1)=>{let i,s,r=0,c=0,u=0,a=0,f=t.length-1,d=t[0],h=t[f],p=o.length-1,m=o[0],v=o[p];for(;r<=f&&c<=p;)if(null==d)d=t[++r];else if(null==h)h=t[--f];else if(null==m)m=o[++c];else if(null==v)v=o[--p];else if(V(d,m,l))q(d,m,l),d=t[++r],m=o[++c];else if(V(h,v,l))q(h,v,l),h=t[--f],v=o[--p];else if(V(d,v,l))q(d,v,l),G(e,d.v,h.v.nextSibling),d=t[++r],v=o[--p];else if(V(h,m,l))q(h,m,l),G(e,h.v,d.v),h=t[--f],m=o[++c];else{for(u=-1,a=r;a<=f;++a)if(t[a]&&null!==t[a].p&&t[a].p===m.p){u=a;break}u>=0?(s=t[u],s.m!==m.m?i=F(t&&t[c],n,u):(q(s,m,l),t[u]=void 0,i=s.v),m=o[++c]):(i=F(t&&t[c],n,c),m=o[++c]),i&&G(d.v.parentNode,i,d.v)}r>f?H(e,null==o[p+1]?null:o[p+1].v,n,o,c,p):c>p&&z(t,r,f)})(o,l,t,i,n):null!==i?H(o,null,t,i,0,i.length-1):!n&&null!==l&&z(l,0,l.length-1),T&&"svg"===s&&(T=!1)},G=(e,t,n)=>null==e?void 0:e.insertBefore(t,n),I=(e,t)=>{if(t&&!e.S&&t["s-p"]){const n=t["s-p"].push(new Promise((o=>e.S=()=>{t["s-p"].splice(n-1,1),o()})))}},Y=(e,t)=>{if(e.o|=16,!(4&e.o))return I(e,e.j),w((()=>_(e,t)));e.o|=512},_=(e,t)=>{const n=e.$hostElement$,o=e.t;if(!o)throw Error(`Can't render component <${n.tagName.toLowerCase()} /> with invalid Stencil runtime! Make sure this imported component is compiled with a \`externalRuntime: true\` flag. For more information, please refer to https://stenciljs.com/docs/custom-elements#externalruntime`);let l;return l=ee(o,t?"componentWillLoad":"componentWillUpdate",void 0,n),l=B(l,(()=>ee(o,"componentWillRender",void 0,n))),B(l,(()=>K(e,o,t)))},B=(e,t)=>J(e)?e.then(t).catch((e=>{console.error(e),t()})):t(),J=e=>e instanceof Promise||e&&e.then&&"function"==typeof e.then,K=async(e,t,n)=>{var o;const l=e.$hostElement$,u=l["s-rc"];n&&(e=>{const t=e.O,n=e.$hostElement$,o=t.o,l=((e,t)=>{var n;const o=U(t),l=i.get(o);if(!r.document)return o;if(e=11===e.nodeType?e:r.document,l)if("string"==typeof l){let i,u=D.get(e=e.head||e);if(u||D.set(e,u=new Set),!u.has(o)){{i=document.querySelector(`[sty-id="${o}"]`)||r.document.createElement("style"),i.innerHTML=l;const s=null!=(n=c.k)?n:$(r.document);if(null!=s&&i.setAttribute("nonce",s),!(1&t.o))if("HEAD"===e.nodeName){const t=e.querySelectorAll("link[rel=preconnect]"),n=t.length>0?t[t.length-1].nextSibling:e.querySelector("style");e.insertBefore(i,(null==n?void 0:n.parentNode)===e?n:null)}else if("host"in e)if(a){const t=new CSSStyleSheet;t.replaceSync(l),e.adoptedStyleSheets=[t,...e.adoptedStyleSheets]}else{const t=e.querySelector("style");t?t.innerHTML=l+t.innerHTML:e.prepend(i)}else e.append(i);1&t.o&&e.insertBefore(i,null)}4&t.o&&(i.innerHTML+=s),u&&u.add(o)}}else e.adoptedStyleSheets.includes(l)||(e.adoptedStyleSheets=[...e.adoptedStyleSheets,l]);return o})(n.shadowRoot?n.shadowRoot:n.getRootNode(),t);(10&o&&2&o||128&o)&&(n["s-sc"]=l,n.classList.add(l+"-h"))})(e);Q(e,t,l,n),u&&(u.map((e=>e())),l["s-rc"]=void 0);{const t=null!=(o=l["s-p"])?o:[],n=()=>X(e);0===t.length?n():(Promise.all(t).then(n),e.o|=4,t.length=0)}},Q=(e,t,n,l)=>{try{t=t.render(),e.o&=-17,e.o|=2,((e,t,n=!1)=>{const o=e.$hostElement$,l=e.O,i=e.C||M(null,null),s=(e=>e&&e.m===P)(t)?t:C(null,null,t);if(O=o.tagName,n&&s.u)for(const e of Object.keys(s.u))o.hasAttribute(e)&&!["key","ref","style","class"].includes(e)&&(s.u[e]=o[e]);s.m=null,s.o|=4,e.C=s,s.v=i.v=o.shadowRoot||o,q(i,s,n)})(e,t,l)}catch(t){o(t,e.$hostElement$)}return null},X=e=>{const t=e.$hostElement$,n=e.t,o=e.j;ee(n,"componentDidRender",void 0,t),64&e.o?ee(n,"componentDidUpdate",void 0,t):(e.o|=64,te(t),ee(n,"componentDidLoad",void 0,t),e.M(t),o||Z()),e.S&&(e.S(),e.S=void 0),512&e.o&&y((()=>Y(e,!1))),e.o&=-517},Z=()=>{y((()=>(e=>{const t=c.ce("appload",{detail:{namespace:"analog-clock"}});return e.dispatchEvent(t),t})(r)))},ee=(e,t,n,l)=>{if(e&&e[t])try{return e[t](n)}catch(e){o(e,l)}},te=e=>e.classList.add("hydrated"),ne=(e,n,o,l)=>{const i=t(e);if(!i)throw Error(`Couldn't find host element for "${l.$}" as it is unknown to this Stencil runtime. This usually happens when integrating a 3rd party Stencil component with another Stencil component or application. Please reach out to the maintainers of the 3rd party Stencil component or report this on the Stencil Discord server (https://chat.stenciljs.com) or comment on this similar [GitHub issue](https://github.com/ionic-team/stencil/issues/5457).`);const s=i.P.get(n),r=i.o,c=i.t;if(o=x(o,l.D[n][0]),(!(8&r)||void 0===s)&&o!==s&&(!Number.isNaN(s)||!Number.isNaN(o))&&(i.P.set(n,o),c&&2==(18&r))){if(c.componentShouldUpdate&&!1===c.componentShouldUpdate(o,s,n))return;Y(i,!1)}},oe=(e,n,o)=>{var l,i;const s=e.prototype;if(n.D){const r=Object.entries(null!=(l=n.D)?l:{});if(r.map((([e,[l]])=>{if(31&l||2&o&&32&l){const{get:i,set:r}=Object.getOwnPropertyDescriptor(s,e)||{};i&&(n.D[e][0]|=2048),r&&(n.D[e][0]|=4096),(1&o||!i)&&Object.defineProperty(s,e,{get(){{if(!(2048&n.D[e][0]))return((e,n)=>t(this).P.get(n))(0,e);const o=t(this),l=o?o.t:s;if(!l)return;return l[e]}},configurable:!0,enumerable:!0}),Object.defineProperty(s,e,{set(i){const s=t(this);if(r){const t=32&l?this[e]:s.$hostElement$[e];return void 0===t&&s.P.get(e)?i=s.P.get(e):!s.P.get(e)&&t&&s.P.set(e,t),r.call(this,x(i,l)),void ne(this,e,i=32&l?this[e]:s.$hostElement$[e],n)}{if(!(1&o&&4096&n.D[e][0]))return ne(this,e,i,n),void(1&o&&!s.t&&s.U.then((()=>{4096&n.D[e][0]&&s.t[e]!==s.P.get(e)&&(s.t[e]=i)})));const t=()=>{const t=s.t[e];!s.P.get(e)&&t&&s.P.set(e,t),s.t[e]=x(i,l),ne(this,e,s.t[e],n)};s.t?t():s.U.then((()=>t()))}}})}})),1&o){const o=new Map;s.attributeChangedCallback=function(e,l,i){c.jmp((()=>{var r;const c=o.get(e);if(this.hasOwnProperty(c))i=this[c],delete this[c];else{if(s.hasOwnProperty(c)&&"number"==typeof this[c]&&this[c]==i)return;if(null==c){const o=t(this),s=null==o?void 0:o.o;if(s&&!(8&s)&&128&s&&i!==l){const t=o.t,s=null==(r=n.W)?void 0:r[e];null==s||s.forEach((n=>{null!=t[n]&&t[n].call(t,i,l,e)}))}return}}const u=Object.getOwnPropertyDescriptor(s,c);(i=(null!==i||"boolean"!=typeof this[c])&&i)===this[c]||u.get&&!u.set||(this[c]=i)}))},e.observedAttributes=Array.from(new Set([...Object.keys(null!=(i=n.W)?i:{}),...r.filter((([e,t])=>15&t[0])).map((([e,t])=>{const n=t[1]||e;return o.set(n,e),n}))]))}}return e},le=(e,t)=>{ee(e,"connectedCallback",void 0,t)},ie=(e,t)=>{ee(e,"disconnectedCallback",void 0,t||e)},se=(e,n={})=>{var u;if(!r.document)return void console.warn("Stencil: No document found. Skipping bootstrapping lazy components.");const f=[],d=n.exclude||[],h=r.customElements,p=r.document.head,m=p.querySelector("meta[charset]"),v=r.document.createElement("style"),y=[];let w,b=!0;Object.assign(c,n),c.l=new URL(n.resourcesUrl||"./",r.document.baseURI).href;let g=!1;if(e.map((e=>{e[1].map((n=>{const s={o:n[0],$:n[1],D:n[2],A:n[3]};4&s.o&&(g=!0),s.D=n[2];const r=s.$,u=class extends HTMLElement{constructor(e){if(super(e),this.hasRegisteredEventListeners=!1,((e,t)=>{const n={o:0,$hostElement$:e,O:t,P:new Map};n.U=new Promise((e=>n.M=e)),e["s-p"]=[],e["s-rc"]=[];const o=n;e.__stencil__getHostRef=()=>o})(e=this,s),1&s.o)if(e.shadowRoot){if("open"!==e.shadowRoot.mode)throw Error(`Unable to re-use existing shadow root for ${s.$}! Mode is set to ${e.shadowRoot.mode} but Stencil only supports open shadow roots.`)}else e.attachShadow({mode:"open"})}connectedCallback(){this.hasRegisteredEventListeners||(this.hasRegisteredEventListeners=!0),w&&(clearTimeout(w),w=null),b?y.push(this):c.jmp((()=>(e=>{if(!(1&c.o)){const n=t(e),s=n.O,r=()=>{};if(1&n.o)(null==n?void 0:n.t)?le(n.t,e):(null==n?void 0:n.U)&&n.U.then((()=>le(n.t,e)));else{n.o|=1;{let t=e;for(;t=t.parentNode||t.host;)if(t["s-p"]){I(n,n.j=t);break}}s.D&&Object.entries(s.D).map((([t,[n]])=>{if(31&n&&e.hasOwnProperty(t)){const n=e[t];delete e[t],e[t]=n}})),(async(e,t,n)=>{let s;if(!(32&t.o)){if(t.o|=32,n.N){const i=((e,t)=>{const n=e.$.replace(/-/g,"_"),i=e.N;if(!i)return;const s=l.get(i);return s?s[n]:import(`./${i}.entry.js`).then((e=>(l.set(i,e),e[n])),(e=>{o(e,t.$hostElement$)}))
2
+ /*!__STENCIL_STATIC_IMPORT_SWITCH__*/})(n,t);if(i&&"then"in i){const e=()=>{};s=await i,e()}else s=i;if(!s)throw Error(`Constructor for "${n.$}#${t.R}" was not found`);s.isProxied||(oe(s,n,2),s.isProxied=!0);const r=()=>{};t.o|=8;try{new s(t)}catch(t){o(t,e)}t.o&=-9,r(),le(t.t,e)}else s=e.constructor,customElements.whenDefined(e.localName).then((()=>t.o|=128));if(s&&s.style){let e;"string"==typeof s.style&&(e=s.style);const t=U(n);if(!i.has(t)){const o=()=>{};((e,t,n)=>{let o=i.get(e);a&&n?(o=o||new CSSStyleSheet,"string"==typeof o?o=t:o.replaceSync(t)):o=t,i.set(e,o)})(t,e,!!(1&n.o)),o()}}}const r=t.j,c=()=>Y(t,!0);r&&r["s-rc"]?r["s-rc"].push(c):c()})(e,n,s)}r()}})(this)))}disconnectedCallback(){c.jmp((()=>(async e=>{if(!(1&c.o)){const n=t(e);(null==n?void 0:n.t)?ie(n.t,e):(null==n?void 0:n.U)&&n.U.then((()=>ie(n.t,e)))}D.has(e)&&D.delete(e),e.shadowRoot&&D.has(e.shadowRoot)&&D.delete(e.shadowRoot)})(this))),c.raf((()=>{var e;const n=t(this),o=y.findIndex((e=>e===this));o>-1&&y.splice(o,1),(null==(e=null==n?void 0:n.C)?void 0:e.v)instanceof Node&&!n.C.v.isConnected&&delete n.C.v}))}componentOnReady(){return t(this).U}};s.N=e[0],d.includes(r)||h.get(r)||(f.push(r),h.define(r,oe(u,s,1)))}))})),f.length>0&&(g&&(v.textContent+=s),v.textContent+=f.sort()+"{visibility:hidden}.hydrated{visibility:inherit}",v.innerHTML.length)){v.setAttribute("data-styles","");const e=null!=(u=c.k)?u:$(r.document);null!=e&&v.setAttribute("nonce",e),p.insertBefore(v,m?m.nextSibling:p.firstChild)}b=!1,y.length?y.map((e=>e.connectedCallback())):c.jmp((()=>w=setTimeout(Z,30)))},re=e=>c.k=e;export{se as b,C as h,u as p,n as r,re as s}
@@ -2,7 +2,7 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- const index = require('./index-15cfd0dd.js');
5
+ const index = require('./index-9b85945d.js');
6
6
 
7
7
  const analogClockCss = ".clock #circle{stroke:var(--clock-circle-color, black)}.clock #hour{stroke:var(--clock-hour-color, black)}.clock #minute{stroke:var(--clock-minute-color, black)}.clock #second{stroke:var(--clock-second-color, black)}";
8
8
  const AnalogClockStyle0 = analogClockCss;
@@ -2,11 +2,11 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- const index = require('./index-15cfd0dd.js');
5
+ const index = require('./index-9b85945d.js');
6
6
  const appGlobals = require('./app-globals-3a1e7e63.js');
7
7
 
8
8
  /*
9
- Stencil Client Patch Browser v4.26.0 | MIT Licensed | https://stenciljs.com
9
+ Stencil Client Patch Browser v4.27.1 | MIT Licensed | https://stenciljs.com
10
10
  */
11
11
  var patchBrowser = () => {
12
12
  const importMeta = (typeof document === 'undefined' ? new (require('u' + 'rl').URL)('file:' + __filename).href : (document.currentScript && document.currentScript.src || new URL('analog-clock.cjs.js', document.baseURI).href));
@@ -21,10 +21,10 @@ function _interopNamespace(e) {
21
21
  }
22
22
 
23
23
  const NAMESPACE = 'analog-clock';
24
- const BUILD = /* analog-clock */ { allRenderFn: true, appendChildSlotFix: false, asyncLoading: true, asyncQueue: false, attachStyles: true, cloneNodeFix: false, cmpDidLoad: true, cmpDidRender: false, cmpDidUnload: false, cmpDidUpdate: false, cmpShouldUpdate: false, cmpWillLoad: false, cmpWillRender: false, cmpWillUpdate: false, connectedCallback: false, constructableCSS: true, cssAnnotations: true, devTools: false, disconnectedCallback: true, element: false, event: false, experimentalScopedSlotChanges: false, experimentalSlotFixes: false, formAssociated: false, hasRenderFn: true, hostListener: false, hostListenerTarget: false, hostListenerTargetBody: false, hostListenerTargetDocument: false, hostListenerTargetParent: false, hostListenerTargetWindow: false, hotModuleReplacement: false, hydrateClientSide: false, hydrateServerSide: false, hydratedAttribute: false, hydratedClass: true, hydratedSelectorName: "hydrated", initializeNextTick: false, invisiblePrehydration: true, isDebug: false, isDev: false, isTesting: false, lazyLoad: true, lifecycle: true, lifecycleDOMEvents: false, member: true, method: false, mode: false, modernPropertyDecls: false, observeAttribute: true, profile: false, prop: true, propBoolean: false, propMutable: false, propNumber: true, propString: false, reflect: false, scoped: false, scopedSlotTextContentFix: false, scriptDataOpts: false, shadowDelegatesFocus: false, shadowDom: true, slot: false, slotChildNodesFix: false, slotRelocation: false, state: true, style: true, svg: true, taskQueue: true, transformTagName: false, updatable: true, vdomAttribute: true, vdomClass: true, vdomFunctional: false, vdomKey: true, vdomListener: false, vdomPropOrAttr: true, vdomRef: false, vdomRender: true, vdomStyle: false, vdomText: false, vdomXlink: false, watchCallback: false };
24
+ const BUILD = /* analog-clock */ { allRenderFn: true, appendChildSlotFix: false, asyncLoading: true, asyncQueue: false, attachStyles: true, cloneNodeFix: false, constructableCSS: true, cssAnnotations: true, devTools: false, element: false, event: false, experimentalScopedSlotChanges: false, experimentalSlotFixes: false, formAssociated: false, hasRenderFn: true, hostListener: false, hostListenerTarget: false, hostListenerTargetBody: false, hostListenerTargetDocument: false, hostListenerTargetParent: false, hostListenerTargetWindow: false, hotModuleReplacement: false, hydrateClientSide: false, hydrateServerSide: false, hydratedAttribute: false, hydratedClass: true, hydratedSelectorName: "hydrated", initializeNextTick: false, invisiblePrehydration: true, isDebug: false, isDev: false, isTesting: false, lazyLoad: true, lifecycle: true, lifecycleDOMEvents: false, member: true, method: false, mode: false, modernPropertyDecls: false, observeAttribute: true, profile: false, prop: true, propBoolean: false, propMutable: false, propNumber: true, propString: false, reflect: false, scoped: false, scopedSlotTextContentFix: false, scriptDataOpts: false, shadowDelegatesFocus: false, shadowDom: true, slot: false, slotChildNodesFix: false, slotRelocation: false, state: true, style: true, svg: true, taskQueue: true, transformTagName: false, updatable: true, vdomAttribute: true, vdomClass: true, vdomFunctional: false, vdomKey: true, vdomListener: false, vdomPropOrAttr: true, vdomRef: false, vdomRender: true, vdomStyle: false, vdomText: false, vdomXlink: false, watchCallback: false };
25
25
 
26
26
  /*
27
- Stencil Client Platform v4.26.0 | MIT Licensed | https://stenciljs.com
27
+ Stencil Client Platform v4.27.1 | MIT Licensed | https://stenciljs.com
28
28
  */
29
29
  var __defProp = Object.defineProperty;
30
30
  var __export = (target, all) => {
@@ -37,10 +37,15 @@ var SVG_NS = "http://www.w3.org/2000/svg";
37
37
  var HTML_NS = "http://www.w3.org/1999/xhtml";
38
38
 
39
39
  // src/client/client-host-ref.ts
40
- var hostRefs = /* @__PURE__ */ new WeakMap();
41
- var getHostRef = (ref) => hostRefs.get(ref);
40
+ var getHostRef = (ref) => {
41
+ if (ref.__stencil__getHostRef) {
42
+ return ref.__stencil__getHostRef();
43
+ }
44
+ return void 0;
45
+ };
42
46
  var registerInstance = (lazyInstance, hostRef) => {
43
- hostRefs.set(hostRef.$lazyInstance$ = lazyInstance, hostRef);
47
+ lazyInstance.__stencil__getHostRef = () => hostRef;
48
+ hostRef.$lazyInstance$ = lazyInstance;
44
49
  };
45
50
  var registerHost = (hostElement, cmpMeta) => {
46
51
  const hostRef = {
@@ -54,7 +59,8 @@ var registerHost = (hostElement, cmpMeta) => {
54
59
  hostElement["s-p"] = [];
55
60
  hostElement["s-rc"] = [];
56
61
  }
57
- const ref = hostRefs.set(hostElement, hostRef);
62
+ const ref = hostRef;
63
+ hostElement.__stencil__getHostRef = () => ref;
58
64
  return ref;
59
65
  };
60
66
  var isMemberInElement = (elm, memberName) => memberName in elm;
@@ -98,7 +104,6 @@ var HYDRATED_STYLE_ID = "sty-id";
98
104
  var HYDRATED_CSS = "{visibility:hidden}.hydrated{visibility:inherit}";
99
105
  var SLOT_FB_CSS = "slot-fb{display:contents}slot-fb[hidden]{display:none}";
100
106
  var win = typeof window !== "undefined" ? window : {};
101
- var doc = win.document || { head: {} };
102
107
  var plt = {
103
108
  $flags$: 0,
104
109
  $resourcesUrl$: "",
@@ -158,9 +163,9 @@ var isComplexType = (o) => {
158
163
  };
159
164
 
160
165
  // src/utils/query-nonce-meta-tag-content.ts
161
- function queryNonceMetaTagContent(doc2) {
166
+ function queryNonceMetaTagContent(doc) {
162
167
  var _a, _b, _c;
163
- return (_c = (_b = (_a = doc2.head) == null ? void 0 : _a.querySelector('meta[name="csp-nonce"]')) == null ? void 0 : _b.getAttribute("content")) != null ? _c : void 0;
168
+ return (_c = (_b = (_a = doc.head) == null ? void 0 : _a.querySelector('meta[name="csp-nonce"]')) == null ? void 0 : _b.getAttribute("content")) != null ? _c : void 0;
164
169
  }
165
170
 
166
171
  // src/utils/result.ts
@@ -322,7 +327,10 @@ var addStyle = (styleContainerNode, cmpMeta, mode) => {
322
327
  var _a;
323
328
  const scopeId2 = getScopeId(cmpMeta);
324
329
  const style = styles.get(scopeId2);
325
- styleContainerNode = styleContainerNode.nodeType === 11 /* DocumentFragment */ ? styleContainerNode : doc;
330
+ if (!win.document) {
331
+ return scopeId2;
332
+ }
333
+ styleContainerNode = styleContainerNode.nodeType === 11 /* DocumentFragment */ ? styleContainerNode : win.document;
326
334
  if (style) {
327
335
  if (typeof style === "string") {
328
336
  styleContainerNode = styleContainerNode.head || styleContainerNode;
@@ -333,9 +341,9 @@ var addStyle = (styleContainerNode, cmpMeta, mode) => {
333
341
  }
334
342
  if (!appliedStyles.has(scopeId2)) {
335
343
  {
336
- styleElm = document.querySelector(`[${HYDRATED_STYLE_ID}="${scopeId2}"]`) || doc.createElement("style");
344
+ styleElm = document.querySelector(`[${HYDRATED_STYLE_ID}="${scopeId2}"]`) || win.document.createElement("style");
337
345
  styleElm.innerHTML = style;
338
- const nonce = (_a = plt.$nonce$) != null ? _a : queryNonceMetaTagContent(doc);
346
+ const nonce = (_a = plt.$nonce$) != null ? _a : queryNonceMetaTagContent(win.document);
339
347
  if (nonce != null) {
340
348
  styleElm.setAttribute("nonce", nonce);
341
349
  }
@@ -397,50 +405,51 @@ var attachStyles = (hostRef) => {
397
405
  };
398
406
  var getScopeId = (cmp, mode) => "sc-" + (cmp.$tagName$);
399
407
  var setAccessor = (elm, memberName, oldValue, newValue, isSvg, flags, initialRender) => {
400
- if (oldValue !== newValue) {
401
- let isProp = isMemberInElement(elm, memberName);
402
- memberName.toLowerCase();
403
- if (memberName === "class") {
404
- const classList = elm.classList;
405
- const oldClasses = parseClassList(oldValue);
406
- let newClasses = parseClassList(newValue);
407
- {
408
- classList.remove(...oldClasses.filter((c) => c && !newClasses.includes(c)));
409
- classList.add(...newClasses.filter((c) => c && !oldClasses.includes(c)));
410
- }
411
- } else if (memberName === "key") ; else {
412
- const isComplex = isComplexType(newValue);
413
- if ((isProp || isComplex && newValue !== null) && !isSvg) {
414
- try {
415
- if (!elm.tagName.includes("-")) {
416
- const n = newValue == null ? "" : newValue;
417
- if (memberName === "list") {
418
- isProp = false;
419
- } else if (oldValue == null || elm[memberName] != n) {
420
- if (typeof elm.__lookupSetter__(memberName) === "function") {
421
- elm[memberName] = n;
422
- } else {
423
- elm.setAttribute(memberName, n);
424
- }
408
+ if (oldValue === newValue) {
409
+ return;
410
+ }
411
+ let isProp = isMemberInElement(elm, memberName);
412
+ memberName.toLowerCase();
413
+ if (memberName === "class") {
414
+ const classList = elm.classList;
415
+ const oldClasses = parseClassList(oldValue);
416
+ let newClasses = parseClassList(newValue);
417
+ {
418
+ classList.remove(...oldClasses.filter((c) => c && !newClasses.includes(c)));
419
+ classList.add(...newClasses.filter((c) => c && !oldClasses.includes(c)));
420
+ }
421
+ } else if (memberName === "key") ; else {
422
+ const isComplex = isComplexType(newValue);
423
+ if ((isProp || isComplex && newValue !== null) && !isSvg) {
424
+ try {
425
+ if (!elm.tagName.includes("-")) {
426
+ const n = newValue == null ? "" : newValue;
427
+ if (memberName === "list") {
428
+ isProp = false;
429
+ } else if (oldValue == null || elm[memberName] != n) {
430
+ if (typeof elm.__lookupSetter__(memberName) === "function") {
431
+ elm[memberName] = n;
432
+ } else {
433
+ elm.setAttribute(memberName, n);
425
434
  }
426
- } else if (elm[memberName] !== newValue) {
427
- elm[memberName] = newValue;
428
435
  }
429
- } catch (e) {
436
+ } else if (elm[memberName] !== newValue) {
437
+ elm[memberName] = newValue;
430
438
  }
439
+ } catch (e) {
431
440
  }
432
- if (newValue == null || newValue === false) {
433
- if (newValue !== false || elm.getAttribute(memberName) === "") {
434
- {
435
- elm.removeAttribute(memberName);
436
- }
437
- }
438
- } else if ((!isProp || flags & 4 /* isHost */ || isSvg) && !isComplex) {
439
- newValue = newValue === true ? "" : newValue;
441
+ }
442
+ if (newValue == null || newValue === false) {
443
+ if (newValue !== false || elm.getAttribute(memberName) === "") {
440
444
  {
441
- elm.setAttribute(memberName, newValue);
445
+ elm.removeAttribute(memberName);
442
446
  }
443
447
  }
448
+ } else if ((!isProp || flags & 4 /* isHost */ || isSvg) && !isComplex && elm.nodeType === 1 /* ElementNode */) {
449
+ newValue = newValue === true ? "" : newValue;
450
+ {
451
+ elm.setAttribute(memberName, newValue);
452
+ }
444
453
  }
445
454
  }
446
455
  };
@@ -504,7 +513,12 @@ var createElm = (oldParentVNode, newParentVNode, childIndex) => {
504
513
  if (!isSvgMode) {
505
514
  isSvgMode = newVNode2.$tag$ === "svg";
506
515
  }
507
- elm = newVNode2.$elm$ = doc.createElementNS(
516
+ if (!win.document) {
517
+ throw new Error(
518
+ "You are trying to render a Stencil component in an environment that doesn't support the DOM. Make sure to populate the [`window`](https://developer.mozilla.org/en-US/docs/Web/API/Window/window) object before rendering a component."
519
+ );
520
+ }
521
+ elm = newVNode2.$elm$ = win.document.createElementNS(
508
522
  isSvgMode ? SVG_NS : HTML_NS,
509
523
  !useNativeShadowDom && BUILD.slotRelocation && newVNode2.$flags$ & 2 /* isSlotFallback */ ? "slot-fb" : newVNode2.$tag$
510
524
  ) ;
@@ -666,9 +680,7 @@ var patch = (oldVNode, newVNode2, isInitialRender = false) => {
666
680
  isSvgMode = tag === "svg" ? true : tag === "foreignObject" ? false : isSvgMode;
667
681
  }
668
682
  {
669
- {
670
- updateElement(oldVNode, newVNode2, isSvgMode);
671
- }
683
+ updateElement(oldVNode, newVNode2, isSvgMode);
672
684
  }
673
685
  if (oldChildren !== null && newChildren !== null) {
674
686
  updateChildren(elm, oldChildren, newVNode2, newChildren, isInitialRender);
@@ -746,6 +758,12 @@ var dispatchHooks = (hostRef, isInitialLoad) => {
746
758
  );
747
759
  }
748
760
  let maybePromise;
761
+ if (isInitialLoad) {
762
+ maybePromise = safeCall(instance, "componentWillLoad", void 0, elm);
763
+ } else {
764
+ maybePromise = safeCall(instance, "componentWillUpdate", void 0, elm);
765
+ }
766
+ maybePromise = enqueue(maybePromise, () => safeCall(instance, "componentWillRender", void 0, elm));
749
767
  endSchedule();
750
768
  return enqueue(maybePromise, () => updateComponent(hostRef, instance, isInitialLoad));
751
769
  };
@@ -811,14 +829,13 @@ var postUpdateComponent = (hostRef) => {
811
829
  const endPostUpdate = createTime("postUpdate", tagName);
812
830
  const instance = hostRef.$lazyInstance$ ;
813
831
  const ancestorComponent = hostRef.$ancestorComponent$;
832
+ safeCall(instance, "componentDidRender", void 0, elm);
814
833
  if (!(hostRef.$flags$ & 64 /* hasLoadedComponent */)) {
815
834
  hostRef.$flags$ |= 64 /* hasLoadedComponent */;
816
835
  {
817
836
  addHydratedFlag(elm);
818
837
  }
819
- {
820
- safeCall(instance, "componentDidLoad", void 0, elm);
821
- }
838
+ safeCall(instance, "componentDidLoad", void 0, elm);
822
839
  endPostUpdate();
823
840
  {
824
841
  hostRef.$onReadyResolve$(elm);
@@ -827,6 +844,7 @@ var postUpdateComponent = (hostRef) => {
827
844
  }
828
845
  }
829
846
  } else {
847
+ safeCall(instance, "componentDidUpdate", void 0, elm);
830
848
  endPostUpdate();
831
849
  }
832
850
  {
@@ -877,6 +895,11 @@ var setValue = (ref, propName, newVal, cmpMeta) => {
877
895
  hostRef.$instanceValues$.set(propName, newVal);
878
896
  if (instance) {
879
897
  if ((flags & (2 /* hasRendered */ | 16 /* isQueuedForUpdate */)) === 2 /* hasRendered */) {
898
+ if (instance.componentShouldUpdate) {
899
+ if (instance.componentShouldUpdate(newVal, oldVal, propName) === false) {
900
+ return;
901
+ }
902
+ }
880
903
  scheduleUpdate(hostRef, false);
881
904
  }
882
905
  }
@@ -1039,6 +1062,7 @@ var initializeComponent = async (elm, hostRef, cmpMeta, hmrVersionId) => {
1039
1062
  hostRef.$flags$ &= ~8 /* isConstructingInstance */;
1040
1063
  }
1041
1064
  endNewInstance();
1065
+ fireConnectedCallback(hostRef.$lazyInstance$, elm);
1042
1066
  } else {
1043
1067
  Cstr = elm.constructor;
1044
1068
  const cmpTag = elm.localName;
@@ -1066,6 +1090,9 @@ var initializeComponent = async (elm, hostRef, cmpMeta, hmrVersionId) => {
1066
1090
  }
1067
1091
  };
1068
1092
  var fireConnectedCallback = (instance, elm) => {
1093
+ {
1094
+ safeCall(instance, "connectedCallback", void 0, elm);
1095
+ }
1069
1096
  };
1070
1097
 
1071
1098
  // src/runtime/connected-callback.ts
@@ -1098,8 +1125,10 @@ var connectedCallback = (elm) => {
1098
1125
  initializeComponent(elm, hostRef, cmpMeta);
1099
1126
  }
1100
1127
  } else {
1101
- if (hostRef == null ? void 0 : hostRef.$lazyInstance$) ; else if (hostRef == null ? void 0 : hostRef.$onReadyPromise$) {
1102
- hostRef.$onReadyPromise$.then(() => fireConnectedCallback());
1128
+ if (hostRef == null ? void 0 : hostRef.$lazyInstance$) {
1129
+ fireConnectedCallback(hostRef.$lazyInstance$, elm);
1130
+ } else if (hostRef == null ? void 0 : hostRef.$onReadyPromise$) {
1131
+ hostRef.$onReadyPromise$.then(() => fireConnectedCallback(hostRef.$lazyInstance$, elm));
1103
1132
  }
1104
1133
  }
1105
1134
  endConnected();
@@ -1130,18 +1159,22 @@ var disconnectedCallback = async (elm) => {
1130
1159
  // src/runtime/bootstrap-lazy.ts
1131
1160
  var bootstrapLazy = (lazyBundles, options = {}) => {
1132
1161
  var _a;
1162
+ if (!win.document) {
1163
+ console.warn("Stencil: No document found. Skipping bootstrapping lazy components.");
1164
+ return;
1165
+ }
1133
1166
  const endBootstrap = createTime();
1134
1167
  const cmpTags = [];
1135
1168
  const exclude = options.exclude || [];
1136
1169
  const customElements2 = win.customElements;
1137
- const head = doc.head;
1170
+ const head = win.document.head;
1138
1171
  const metaCharset = /* @__PURE__ */ head.querySelector("meta[charset]");
1139
- const dataStyles = /* @__PURE__ */ doc.createElement("style");
1172
+ const dataStyles = /* @__PURE__ */ win.document.createElement("style");
1140
1173
  const deferredConnectedCallbacks = [];
1141
1174
  let appLoadFallback;
1142
1175
  let isBootstrapping = true;
1143
1176
  Object.assign(plt, options);
1144
- plt.$resourcesUrl$ = new URL(options.resourcesUrl || "./", doc.baseURI).href;
1177
+ plt.$resourcesUrl$ = new URL(options.resourcesUrl || "./", win.document.baseURI).href;
1145
1178
  let hasSlotRelocation = false;
1146
1179
  lazyBundles.map((lazyBundle) => {
1147
1180
  lazyBundle[1].map((compactMeta) => {
@@ -1233,7 +1266,7 @@ var bootstrapLazy = (lazyBundles, options = {}) => {
1233
1266
  }
1234
1267
  if (dataStyles.innerHTML.length) {
1235
1268
  dataStyles.setAttribute("data-styles", "");
1236
- const nonce = (_a = plt.$nonce$) != null ? _a : queryNonceMetaTagContent(doc);
1269
+ const nonce = (_a = plt.$nonce$) != null ? _a : queryNonceMetaTagContent(win.document);
1237
1270
  if (nonce != null) {
1238
1271
  dataStyles.setAttribute("nonce", nonce);
1239
1272
  }
@@ -2,7 +2,7 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- const index = require('./index-15cfd0dd.js');
5
+ const index = require('./index-9b85945d.js');
6
6
  const appGlobals = require('./app-globals-3a1e7e63.js');
7
7
 
8
8
  const defineCustomElements = async (win, options) => {
@@ -4,7 +4,7 @@
4
4
  ],
5
5
  "compiler": {
6
6
  "name": "@stencil/core",
7
- "version": "4.26.0",
7
+ "version": "4.27.1",
8
8
  "typescriptVersion": "5.5.4"
9
9
  },
10
10
  "collections": [],
@@ -1,4 +1,4 @@
1
- import { r as registerInstance, h } from './index-1ed6ca7f.js';
1
+ import { r as registerInstance, h } from './index-a57e6c9c.js';
2
2
 
3
3
  const analogClockCss = ".clock #circle{stroke:var(--clock-circle-color, black)}.clock #hour{stroke:var(--clock-hour-color, black)}.clock #minute{stroke:var(--clock-minute-color, black)}.clock #second{stroke:var(--clock-second-color, black)}";
4
4
  const AnalogClockStyle0 = analogClockCss;
@@ -1,9 +1,9 @@
1
- import { p as promiseResolve, b as bootstrapLazy } from './index-1ed6ca7f.js';
2
- export { s as setNonce } from './index-1ed6ca7f.js';
1
+ import { p as promiseResolve, b as bootstrapLazy } from './index-a57e6c9c.js';
2
+ export { s as setNonce } from './index-a57e6c9c.js';
3
3
  import { g as globalScripts } from './app-globals-0f993ce5.js';
4
4
 
5
5
  /*
6
- Stencil Client Patch Browser v4.26.0 | MIT Licensed | https://stenciljs.com
6
+ Stencil Client Patch Browser v4.27.1 | MIT Licensed | https://stenciljs.com
7
7
  */
8
8
  var patchBrowser = () => {
9
9
  const importMeta = import.meta.url;
@@ -1,8 +1,8 @@
1
1
  const NAMESPACE = 'analog-clock';
2
- const BUILD = /* analog-clock */ { allRenderFn: true, appendChildSlotFix: false, asyncLoading: true, asyncQueue: false, attachStyles: true, cloneNodeFix: false, cmpDidLoad: true, cmpDidRender: false, cmpDidUnload: false, cmpDidUpdate: false, cmpShouldUpdate: false, cmpWillLoad: false, cmpWillRender: false, cmpWillUpdate: false, connectedCallback: false, constructableCSS: true, cssAnnotations: true, devTools: false, disconnectedCallback: true, element: false, event: false, experimentalScopedSlotChanges: false, experimentalSlotFixes: false, formAssociated: false, hasRenderFn: true, hostListener: false, hostListenerTarget: false, hostListenerTargetBody: false, hostListenerTargetDocument: false, hostListenerTargetParent: false, hostListenerTargetWindow: false, hotModuleReplacement: false, hydrateClientSide: false, hydrateServerSide: false, hydratedAttribute: false, hydratedClass: true, hydratedSelectorName: "hydrated", initializeNextTick: false, invisiblePrehydration: true, isDebug: false, isDev: false, isTesting: false, lazyLoad: true, lifecycle: true, lifecycleDOMEvents: false, member: true, method: false, mode: false, modernPropertyDecls: false, observeAttribute: true, profile: false, prop: true, propBoolean: false, propMutable: false, propNumber: true, propString: false, reflect: false, scoped: false, scopedSlotTextContentFix: false, scriptDataOpts: false, shadowDelegatesFocus: false, shadowDom: true, slot: false, slotChildNodesFix: false, slotRelocation: false, state: true, style: true, svg: true, taskQueue: true, transformTagName: false, updatable: true, vdomAttribute: true, vdomClass: true, vdomFunctional: false, vdomKey: true, vdomListener: false, vdomPropOrAttr: true, vdomRef: false, vdomRender: true, vdomStyle: false, vdomText: false, vdomXlink: false, watchCallback: false };
2
+ const BUILD = /* analog-clock */ { allRenderFn: true, appendChildSlotFix: false, asyncLoading: true, asyncQueue: false, attachStyles: true, cloneNodeFix: false, constructableCSS: true, cssAnnotations: true, devTools: false, element: false, event: false, experimentalScopedSlotChanges: false, experimentalSlotFixes: false, formAssociated: false, hasRenderFn: true, hostListener: false, hostListenerTarget: false, hostListenerTargetBody: false, hostListenerTargetDocument: false, hostListenerTargetParent: false, hostListenerTargetWindow: false, hotModuleReplacement: false, hydrateClientSide: false, hydrateServerSide: false, hydratedAttribute: false, hydratedClass: true, hydratedSelectorName: "hydrated", initializeNextTick: false, invisiblePrehydration: true, isDebug: false, isDev: false, isTesting: false, lazyLoad: true, lifecycle: true, lifecycleDOMEvents: false, member: true, method: false, mode: false, modernPropertyDecls: false, observeAttribute: true, profile: false, prop: true, propBoolean: false, propMutable: false, propNumber: true, propString: false, reflect: false, scoped: false, scopedSlotTextContentFix: false, scriptDataOpts: false, shadowDelegatesFocus: false, shadowDom: true, slot: false, slotChildNodesFix: false, slotRelocation: false, state: true, style: true, svg: true, taskQueue: true, transformTagName: false, updatable: true, vdomAttribute: true, vdomClass: true, vdomFunctional: false, vdomKey: true, vdomListener: false, vdomPropOrAttr: true, vdomRef: false, vdomRender: true, vdomStyle: false, vdomText: false, vdomXlink: false, watchCallback: false };
3
3
 
4
4
  /*
5
- Stencil Client Platform v4.26.0 | MIT Licensed | https://stenciljs.com
5
+ Stencil Client Platform v4.27.1 | MIT Licensed | https://stenciljs.com
6
6
  */
7
7
  var __defProp = Object.defineProperty;
8
8
  var __export = (target, all) => {
@@ -15,10 +15,15 @@ var SVG_NS = "http://www.w3.org/2000/svg";
15
15
  var HTML_NS = "http://www.w3.org/1999/xhtml";
16
16
 
17
17
  // src/client/client-host-ref.ts
18
- var hostRefs = /* @__PURE__ */ new WeakMap();
19
- var getHostRef = (ref) => hostRefs.get(ref);
18
+ var getHostRef = (ref) => {
19
+ if (ref.__stencil__getHostRef) {
20
+ return ref.__stencil__getHostRef();
21
+ }
22
+ return void 0;
23
+ };
20
24
  var registerInstance = (lazyInstance, hostRef) => {
21
- hostRefs.set(hostRef.$lazyInstance$ = lazyInstance, hostRef);
25
+ lazyInstance.__stencil__getHostRef = () => hostRef;
26
+ hostRef.$lazyInstance$ = lazyInstance;
22
27
  };
23
28
  var registerHost = (hostElement, cmpMeta) => {
24
29
  const hostRef = {
@@ -32,7 +37,8 @@ var registerHost = (hostElement, cmpMeta) => {
32
37
  hostElement["s-p"] = [];
33
38
  hostElement["s-rc"] = [];
34
39
  }
35
- const ref = hostRefs.set(hostElement, hostRef);
40
+ const ref = hostRef;
41
+ hostElement.__stencil__getHostRef = () => ref;
36
42
  return ref;
37
43
  };
38
44
  var isMemberInElement = (elm, memberName) => memberName in elm;
@@ -76,7 +82,6 @@ var HYDRATED_STYLE_ID = "sty-id";
76
82
  var HYDRATED_CSS = "{visibility:hidden}.hydrated{visibility:inherit}";
77
83
  var SLOT_FB_CSS = "slot-fb{display:contents}slot-fb[hidden]{display:none}";
78
84
  var win = typeof window !== "undefined" ? window : {};
79
- var doc = win.document || { head: {} };
80
85
  var plt = {
81
86
  $flags$: 0,
82
87
  $resourcesUrl$: "",
@@ -136,9 +141,9 @@ var isComplexType = (o) => {
136
141
  };
137
142
 
138
143
  // src/utils/query-nonce-meta-tag-content.ts
139
- function queryNonceMetaTagContent(doc2) {
144
+ function queryNonceMetaTagContent(doc) {
140
145
  var _a, _b, _c;
141
- return (_c = (_b = (_a = doc2.head) == null ? void 0 : _a.querySelector('meta[name="csp-nonce"]')) == null ? void 0 : _b.getAttribute("content")) != null ? _c : void 0;
146
+ return (_c = (_b = (_a = doc.head) == null ? void 0 : _a.querySelector('meta[name="csp-nonce"]')) == null ? void 0 : _b.getAttribute("content")) != null ? _c : void 0;
142
147
  }
143
148
 
144
149
  // src/utils/result.ts
@@ -300,7 +305,10 @@ var addStyle = (styleContainerNode, cmpMeta, mode) => {
300
305
  var _a;
301
306
  const scopeId2 = getScopeId(cmpMeta);
302
307
  const style = styles.get(scopeId2);
303
- styleContainerNode = styleContainerNode.nodeType === 11 /* DocumentFragment */ ? styleContainerNode : doc;
308
+ if (!win.document) {
309
+ return scopeId2;
310
+ }
311
+ styleContainerNode = styleContainerNode.nodeType === 11 /* DocumentFragment */ ? styleContainerNode : win.document;
304
312
  if (style) {
305
313
  if (typeof style === "string") {
306
314
  styleContainerNode = styleContainerNode.head || styleContainerNode;
@@ -311,9 +319,9 @@ var addStyle = (styleContainerNode, cmpMeta, mode) => {
311
319
  }
312
320
  if (!appliedStyles.has(scopeId2)) {
313
321
  {
314
- styleElm = document.querySelector(`[${HYDRATED_STYLE_ID}="${scopeId2}"]`) || doc.createElement("style");
322
+ styleElm = document.querySelector(`[${HYDRATED_STYLE_ID}="${scopeId2}"]`) || win.document.createElement("style");
315
323
  styleElm.innerHTML = style;
316
- const nonce = (_a = plt.$nonce$) != null ? _a : queryNonceMetaTagContent(doc);
324
+ const nonce = (_a = plt.$nonce$) != null ? _a : queryNonceMetaTagContent(win.document);
317
325
  if (nonce != null) {
318
326
  styleElm.setAttribute("nonce", nonce);
319
327
  }
@@ -375,50 +383,51 @@ var attachStyles = (hostRef) => {
375
383
  };
376
384
  var getScopeId = (cmp, mode) => "sc-" + (cmp.$tagName$);
377
385
  var setAccessor = (elm, memberName, oldValue, newValue, isSvg, flags, initialRender) => {
378
- if (oldValue !== newValue) {
379
- let isProp = isMemberInElement(elm, memberName);
380
- memberName.toLowerCase();
381
- if (memberName === "class") {
382
- const classList = elm.classList;
383
- const oldClasses = parseClassList(oldValue);
384
- let newClasses = parseClassList(newValue);
385
- {
386
- classList.remove(...oldClasses.filter((c) => c && !newClasses.includes(c)));
387
- classList.add(...newClasses.filter((c) => c && !oldClasses.includes(c)));
388
- }
389
- } else if (memberName === "key") ; else {
390
- const isComplex = isComplexType(newValue);
391
- if ((isProp || isComplex && newValue !== null) && !isSvg) {
392
- try {
393
- if (!elm.tagName.includes("-")) {
394
- const n = newValue == null ? "" : newValue;
395
- if (memberName === "list") {
396
- isProp = false;
397
- } else if (oldValue == null || elm[memberName] != n) {
398
- if (typeof elm.__lookupSetter__(memberName) === "function") {
399
- elm[memberName] = n;
400
- } else {
401
- elm.setAttribute(memberName, n);
402
- }
386
+ if (oldValue === newValue) {
387
+ return;
388
+ }
389
+ let isProp = isMemberInElement(elm, memberName);
390
+ memberName.toLowerCase();
391
+ if (memberName === "class") {
392
+ const classList = elm.classList;
393
+ const oldClasses = parseClassList(oldValue);
394
+ let newClasses = parseClassList(newValue);
395
+ {
396
+ classList.remove(...oldClasses.filter((c) => c && !newClasses.includes(c)));
397
+ classList.add(...newClasses.filter((c) => c && !oldClasses.includes(c)));
398
+ }
399
+ } else if (memberName === "key") ; else {
400
+ const isComplex = isComplexType(newValue);
401
+ if ((isProp || isComplex && newValue !== null) && !isSvg) {
402
+ try {
403
+ if (!elm.tagName.includes("-")) {
404
+ const n = newValue == null ? "" : newValue;
405
+ if (memberName === "list") {
406
+ isProp = false;
407
+ } else if (oldValue == null || elm[memberName] != n) {
408
+ if (typeof elm.__lookupSetter__(memberName) === "function") {
409
+ elm[memberName] = n;
410
+ } else {
411
+ elm.setAttribute(memberName, n);
403
412
  }
404
- } else if (elm[memberName] !== newValue) {
405
- elm[memberName] = newValue;
406
413
  }
407
- } catch (e) {
414
+ } else if (elm[memberName] !== newValue) {
415
+ elm[memberName] = newValue;
408
416
  }
417
+ } catch (e) {
409
418
  }
410
- if (newValue == null || newValue === false) {
411
- if (newValue !== false || elm.getAttribute(memberName) === "") {
412
- {
413
- elm.removeAttribute(memberName);
414
- }
415
- }
416
- } else if ((!isProp || flags & 4 /* isHost */ || isSvg) && !isComplex) {
417
- newValue = newValue === true ? "" : newValue;
419
+ }
420
+ if (newValue == null || newValue === false) {
421
+ if (newValue !== false || elm.getAttribute(memberName) === "") {
418
422
  {
419
- elm.setAttribute(memberName, newValue);
423
+ elm.removeAttribute(memberName);
420
424
  }
421
425
  }
426
+ } else if ((!isProp || flags & 4 /* isHost */ || isSvg) && !isComplex && elm.nodeType === 1 /* ElementNode */) {
427
+ newValue = newValue === true ? "" : newValue;
428
+ {
429
+ elm.setAttribute(memberName, newValue);
430
+ }
422
431
  }
423
432
  }
424
433
  };
@@ -482,7 +491,12 @@ var createElm = (oldParentVNode, newParentVNode, childIndex) => {
482
491
  if (!isSvgMode) {
483
492
  isSvgMode = newVNode2.$tag$ === "svg";
484
493
  }
485
- elm = newVNode2.$elm$ = doc.createElementNS(
494
+ if (!win.document) {
495
+ throw new Error(
496
+ "You are trying to render a Stencil component in an environment that doesn't support the DOM. Make sure to populate the [`window`](https://developer.mozilla.org/en-US/docs/Web/API/Window/window) object before rendering a component."
497
+ );
498
+ }
499
+ elm = newVNode2.$elm$ = win.document.createElementNS(
486
500
  isSvgMode ? SVG_NS : HTML_NS,
487
501
  !useNativeShadowDom && BUILD.slotRelocation && newVNode2.$flags$ & 2 /* isSlotFallback */ ? "slot-fb" : newVNode2.$tag$
488
502
  ) ;
@@ -644,9 +658,7 @@ var patch = (oldVNode, newVNode2, isInitialRender = false) => {
644
658
  isSvgMode = tag === "svg" ? true : tag === "foreignObject" ? false : isSvgMode;
645
659
  }
646
660
  {
647
- {
648
- updateElement(oldVNode, newVNode2, isSvgMode);
649
- }
661
+ updateElement(oldVNode, newVNode2, isSvgMode);
650
662
  }
651
663
  if (oldChildren !== null && newChildren !== null) {
652
664
  updateChildren(elm, oldChildren, newVNode2, newChildren, isInitialRender);
@@ -724,6 +736,12 @@ var dispatchHooks = (hostRef, isInitialLoad) => {
724
736
  );
725
737
  }
726
738
  let maybePromise;
739
+ if (isInitialLoad) {
740
+ maybePromise = safeCall(instance, "componentWillLoad", void 0, elm);
741
+ } else {
742
+ maybePromise = safeCall(instance, "componentWillUpdate", void 0, elm);
743
+ }
744
+ maybePromise = enqueue(maybePromise, () => safeCall(instance, "componentWillRender", void 0, elm));
727
745
  endSchedule();
728
746
  return enqueue(maybePromise, () => updateComponent(hostRef, instance, isInitialLoad));
729
747
  };
@@ -789,14 +807,13 @@ var postUpdateComponent = (hostRef) => {
789
807
  const endPostUpdate = createTime("postUpdate", tagName);
790
808
  const instance = hostRef.$lazyInstance$ ;
791
809
  const ancestorComponent = hostRef.$ancestorComponent$;
810
+ safeCall(instance, "componentDidRender", void 0, elm);
792
811
  if (!(hostRef.$flags$ & 64 /* hasLoadedComponent */)) {
793
812
  hostRef.$flags$ |= 64 /* hasLoadedComponent */;
794
813
  {
795
814
  addHydratedFlag(elm);
796
815
  }
797
- {
798
- safeCall(instance, "componentDidLoad", void 0, elm);
799
- }
816
+ safeCall(instance, "componentDidLoad", void 0, elm);
800
817
  endPostUpdate();
801
818
  {
802
819
  hostRef.$onReadyResolve$(elm);
@@ -805,6 +822,7 @@ var postUpdateComponent = (hostRef) => {
805
822
  }
806
823
  }
807
824
  } else {
825
+ safeCall(instance, "componentDidUpdate", void 0, elm);
808
826
  endPostUpdate();
809
827
  }
810
828
  {
@@ -855,6 +873,11 @@ var setValue = (ref, propName, newVal, cmpMeta) => {
855
873
  hostRef.$instanceValues$.set(propName, newVal);
856
874
  if (instance) {
857
875
  if ((flags & (2 /* hasRendered */ | 16 /* isQueuedForUpdate */)) === 2 /* hasRendered */) {
876
+ if (instance.componentShouldUpdate) {
877
+ if (instance.componentShouldUpdate(newVal, oldVal, propName) === false) {
878
+ return;
879
+ }
880
+ }
858
881
  scheduleUpdate(hostRef, false);
859
882
  }
860
883
  }
@@ -1017,6 +1040,7 @@ var initializeComponent = async (elm, hostRef, cmpMeta, hmrVersionId) => {
1017
1040
  hostRef.$flags$ &= ~8 /* isConstructingInstance */;
1018
1041
  }
1019
1042
  endNewInstance();
1043
+ fireConnectedCallback(hostRef.$lazyInstance$, elm);
1020
1044
  } else {
1021
1045
  Cstr = elm.constructor;
1022
1046
  const cmpTag = elm.localName;
@@ -1044,6 +1068,9 @@ var initializeComponent = async (elm, hostRef, cmpMeta, hmrVersionId) => {
1044
1068
  }
1045
1069
  };
1046
1070
  var fireConnectedCallback = (instance, elm) => {
1071
+ {
1072
+ safeCall(instance, "connectedCallback", void 0, elm);
1073
+ }
1047
1074
  };
1048
1075
 
1049
1076
  // src/runtime/connected-callback.ts
@@ -1076,8 +1103,10 @@ var connectedCallback = (elm) => {
1076
1103
  initializeComponent(elm, hostRef, cmpMeta);
1077
1104
  }
1078
1105
  } else {
1079
- if (hostRef == null ? void 0 : hostRef.$lazyInstance$) ; else if (hostRef == null ? void 0 : hostRef.$onReadyPromise$) {
1080
- hostRef.$onReadyPromise$.then(() => fireConnectedCallback());
1106
+ if (hostRef == null ? void 0 : hostRef.$lazyInstance$) {
1107
+ fireConnectedCallback(hostRef.$lazyInstance$, elm);
1108
+ } else if (hostRef == null ? void 0 : hostRef.$onReadyPromise$) {
1109
+ hostRef.$onReadyPromise$.then(() => fireConnectedCallback(hostRef.$lazyInstance$, elm));
1081
1110
  }
1082
1111
  }
1083
1112
  endConnected();
@@ -1108,18 +1137,22 @@ var disconnectedCallback = async (elm) => {
1108
1137
  // src/runtime/bootstrap-lazy.ts
1109
1138
  var bootstrapLazy = (lazyBundles, options = {}) => {
1110
1139
  var _a;
1140
+ if (!win.document) {
1141
+ console.warn("Stencil: No document found. Skipping bootstrapping lazy components.");
1142
+ return;
1143
+ }
1111
1144
  const endBootstrap = createTime();
1112
1145
  const cmpTags = [];
1113
1146
  const exclude = options.exclude || [];
1114
1147
  const customElements2 = win.customElements;
1115
- const head = doc.head;
1148
+ const head = win.document.head;
1116
1149
  const metaCharset = /* @__PURE__ */ head.querySelector("meta[charset]");
1117
- const dataStyles = /* @__PURE__ */ doc.createElement("style");
1150
+ const dataStyles = /* @__PURE__ */ win.document.createElement("style");
1118
1151
  const deferredConnectedCallbacks = [];
1119
1152
  let appLoadFallback;
1120
1153
  let isBootstrapping = true;
1121
1154
  Object.assign(plt, options);
1122
- plt.$resourcesUrl$ = new URL(options.resourcesUrl || "./", doc.baseURI).href;
1155
+ plt.$resourcesUrl$ = new URL(options.resourcesUrl || "./", win.document.baseURI).href;
1123
1156
  let hasSlotRelocation = false;
1124
1157
  lazyBundles.map((lazyBundle) => {
1125
1158
  lazyBundle[1].map((compactMeta) => {
@@ -1211,7 +1244,7 @@ var bootstrapLazy = (lazyBundles, options = {}) => {
1211
1244
  }
1212
1245
  if (dataStyles.innerHTML.length) {
1213
1246
  dataStyles.setAttribute("data-styles", "");
1214
- const nonce = (_a = plt.$nonce$) != null ? _a : queryNonceMetaTagContent(doc);
1247
+ const nonce = (_a = plt.$nonce$) != null ? _a : queryNonceMetaTagContent(win.document);
1215
1248
  if (nonce != null) {
1216
1249
  dataStyles.setAttribute("nonce", nonce);
1217
1250
  }
@@ -1,5 +1,5 @@
1
- import { b as bootstrapLazy } from './index-1ed6ca7f.js';
2
- export { s as setNonce } from './index-1ed6ca7f.js';
1
+ import { b as bootstrapLazy } from './index-a57e6c9c.js';
2
+ export { s as setNonce } from './index-a57e6c9c.js';
3
3
  import { g as globalScripts } from './app-globals-0f993ce5.js';
4
4
 
5
5
  const defineCustomElements = async (win, options) => {
@@ -9,6 +9,10 @@ export namespace Components {
9
9
  interface AnalogClock {
10
10
  "size": number;
11
11
  "timeZone": number;
12
+ /**
13
+ * @deprecated use camelCase instead. Support for dash-casing will be removed in Stencil v5.
14
+ */
15
+ "time-zone"?: number;
12
16
  }
13
17
  }
14
18
  declare global {
@@ -26,6 +30,10 @@ declare namespace LocalJSX {
26
30
  interface AnalogClock {
27
31
  "size"?: number;
28
32
  "timeZone"?: number;
33
+ /**
34
+ * @deprecated use camelCase instead. Support for dash-casing will be removed in Stencil v5.
35
+ */
36
+ "time-zone"?: number;
29
37
  }
30
38
  interface IntrinsicElements {
31
39
  "analog-clock": AnalogClock;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "analog-clock-components",
3
- "version": "0.2.2",
3
+ "version": "0.2.4",
4
4
  "description": "Stencil Component Starter",
5
5
  "main": "dist/index.cjs.js",
6
6
  "module": "dist/index.js",
@@ -25,13 +25,13 @@
25
25
  "format": "prettier --write src"
26
26
  },
27
27
  "dependencies": {
28
- "@stencil/core": "4.26.0"
28
+ "@stencil/core": "4.27.1"
29
29
  },
30
30
  "license": "MIT",
31
31
  "devDependencies": {
32
- "cspell": "8.17.4",
32
+ "cspell": "8.17.5",
33
33
  "eslint": "9.21.0",
34
- "prettier": "3.5.1",
34
+ "prettier": "3.5.2",
35
35
  "typescript": "5.7.3"
36
36
  }
37
37
  }
@@ -1,2 +0,0 @@
1
- var t=Object.defineProperty,e=new WeakMap,n=t=>e.get(t),o=(t,n)=>{e.set(n.t=t,n)},l=(t,e)=>(0,console.error)(t,e),s=new Map,i=new Map,r="slot-fb{display:contents}slot-fb[hidden]{display:none}",c="undefined"!=typeof window?window:{},u=c.document||{head:{}},a={o:0,l:"",jmp:t=>t(),raf:t=>requestAnimationFrame(t),ael:(t,e,n,o)=>t.addEventListener(e,n,o),rel:(t,e,n,o)=>t.removeEventListener(e,n,o),ce:(t,e)=>new CustomEvent(t,e)},f=t=>Promise.resolve(t),h=(()=>{try{return new CSSStyleSheet,"function"==typeof(new CSSStyleSheet).replaceSync}catch(t){}return!1})(),d=!1,p=[],m=[],y=(t,e)=>n=>{t.push(n),d||(d=!0,e&&4&a.o?b(w):a.raf(w))},v=t=>{for(let e=0;e<t.length;e++)try{t[e](performance.now())}catch(t){l(t)}t.length=0},w=()=>{v(p),v(m),(d=p.length>0)&&a.raf(w)},b=t=>f().then(t),$=y(m,!0),g=t=>"object"==(t=typeof t)||"function"===t;function S(t){var e,n,o;return null!=(o=null==(n=null==(e=t.head)?void 0:e.querySelector('meta[name="csp-nonce"]'))?void 0:n.getAttribute("content"))?o:void 0}((e,n)=>{for(var o in n)t(e,o,{get:n[o],enumerable:!0})})({},{err:()=>O,map:()=>k,ok:()=>j,unwrap:()=>C,unwrapErr:()=>M});var j=t=>({isOk:!0,isErr:!1,value:t}),O=t=>({isOk:!1,isErr:!0,value:t});function k(t,e){if(t.isOk){const n=e(t.value);return n instanceof Promise?n.then((t=>j(t))):j(n)}if(t.isErr)return O(t.value);throw"should never get here"}var E,C=t=>{if(t.isOk)return t.value;throw t.value},M=t=>{if(t.isErr)return t.value;throw t.value},x=(t,e,...n)=>{let o=null,l=null,s=!1,i=!1;const r=[],c=e=>{for(let n=0;n<e.length;n++)o=e[n],Array.isArray(o)?c(o):null!=o&&"boolean"!=typeof o&&((s="function"!=typeof t&&!g(o))&&(o+=""),s&&i?r[r.length-1].i+=o:r.push(s?P(null,o):o),i=s)};if(c(n),e){e.key&&(l=e.key);{const t=e.className||e.class;t&&(e.class="object"!=typeof t?t:Object.keys(t).filter((e=>t[e])).join(" "))}}const u=P(t,null);return u.u=e,r.length>0&&(u.h=r),u.p=l,u},P=(t,e)=>({o:0,m:t,i:e,v:null,h:null,u:null,p:null}),A={},N=(t,e)=>null==t||g(t)?t:2&e?parseFloat(t):t,T=new WeakMap,D=t=>"sc-"+t.$,F=(t,e,n,o,l,s)=>{if(n!==o){let i=((t,e)=>e in t)(t,e);if(e.toLowerCase(),"class"===e){const e=t.classList,l=L(n);let s=L(o);e.remove(...l.filter((t=>t&&!s.includes(t)))),e.add(...s.filter((t=>t&&!l.includes(t))))}else if("key"===e);else{const r=g(o);if((i||r&&null!==o)&&!l)try{if(t.tagName.includes("-"))t[e]!==o&&(t[e]=o);else{const l=null==o?"":o;"list"===e?i=!1:null!=n&&t[e]==l||("function"==typeof t.__lookupSetter__(e)?t[e]=l:t.setAttribute(e,l))}}catch(t){}null==o||!1===o?!1===o&&""!==t.getAttribute(e)||t.removeAttribute(e):(!i||4&s||l)&&!r&&t.setAttribute(e,o=!0===o?"":o)}}},H=/\s/,L=t=>("object"==typeof t&&t&&"baseVal"in t&&(t=t.baseVal),t&&"string"==typeof t?t.split(H):[]),R=(t,e,n)=>{const o=11===e.v.nodeType&&e.v.host?e.v.host:e.v,l=t&&t.u||{},s=e.u||{};for(const t of U(Object.keys(l)))t in s||F(o,t,l[t],void 0,n,e.o);for(const t of U(Object.keys(s)))F(o,t,l[t],s[t],n,e.o)};function U(t){return t.includes("ref")?[...t.filter((t=>"ref"!==t)),"ref"]:t}var V=!1,W=(t,e,n)=>{const o=e.h[n];let l,s,i=0;if(V||(V="svg"===o.m),l=o.v=u.createElementNS(V?"http://www.w3.org/2000/svg":"http://www.w3.org/1999/xhtml",o.m),V&&"foreignObject"===o.m&&(V=!1),R(null,o,V),o.h)for(i=0;i<o.h.length;++i)s=W(t,o,i),s&&l.appendChild(s);return"svg"===o.m?V=!1:"foreignObject"===l.tagName&&(V=!0),l["s-hn"]=E,l},q=(t,e,n,o,l,s)=>{let i,r=t;for(r.shadowRoot&&r.tagName===E&&(r=r.shadowRoot);l<=s;++l)o[l]&&(i=W(null,n,l),i&&(o[l].v=i,B(r,i,e)))},G=(t,e,n)=>{for(let o=e;o<=n;++o){const e=t[o];if(e){const t=e.v;t&&t.remove()}}},_=(t,e,n=!1)=>t.m===e.m&&(n?(n&&!t.p&&e.p&&(t.p=e.p),!0):t.p===e.p),z=(t,e,n=!1)=>{const o=e.v=t.v,l=t.h,s=e.h,i=e.m;R(t,e,V="svg"===i||"foreignObject"!==i&&V),null!==l&&null!==s?((t,e,n,o,l=!1)=>{let s,i,r=0,c=0,u=0,a=0,f=e.length-1,h=e[0],d=e[f],p=o.length-1,m=o[0],y=o[p];for(;r<=f&&c<=p;)if(null==h)h=e[++r];else if(null==d)d=e[--f];else if(null==m)m=o[++c];else if(null==y)y=o[--p];else if(_(h,m,l))z(h,m,l),h=e[++r],m=o[++c];else if(_(d,y,l))z(d,y,l),d=e[--f],y=o[--p];else if(_(h,y,l))z(h,y,l),B(t,h.v,d.v.nextSibling),h=e[++r],y=o[--p];else if(_(d,m,l))z(d,m,l),B(t,d.v,h.v),d=e[--f],m=o[++c];else{for(u=-1,a=r;a<=f;++a)if(e[a]&&null!==e[a].p&&e[a].p===m.p){u=a;break}u>=0?(i=e[u],i.m!==m.m?s=W(e&&e[c],n,u):(z(i,m,l),e[u]=void 0,s=i.v),m=o[++c]):(s=W(e&&e[c],n,c),m=o[++c]),s&&B(h.v.parentNode,s,h.v)}r>f?q(t,null==o[p+1]?null:o[p+1].v,n,o,c,p):c>p&&G(e,r,f)})(o,l,e,s,n):null!==s?q(o,null,e,s,0,s.length-1):!n&&null!==l&&G(l,0,l.length-1),V&&"svg"===i&&(V=!1)},B=(t,e,n)=>null==t?void 0:t.insertBefore(e,n),I=(t,e)=>{if(e&&!t.S&&e["s-p"]){const n=e["s-p"].push(new Promise((o=>t.S=()=>{e["s-p"].splice(n-1,1),o()})))}},J=(t,e)=>{if(t.o|=16,!(4&t.o))return I(t,t.j),$((()=>K(t,e)));t.o|=512},K=(t,e)=>{const n=t.t;if(!n)throw Error(`Can't render component <${t.$hostElement$.tagName.toLowerCase()} /> with invalid Stencil runtime! Make sure this imported component is compiled with a \`externalRuntime: true\` flag. For more information, please refer to https://stenciljs.com/docs/custom-elements#externalruntime`);return Q(void 0,(()=>Y(t,n,e)))},Q=(t,e)=>X(t)?t.then(e).catch((t=>{console.error(t),e()})):e(),X=t=>t instanceof Promise||t&&t.then&&"function"==typeof t.then,Y=async(t,e,n)=>{var o;const l=t.$hostElement$,s=l["s-rc"];n&&(t=>{const e=t.O,n=t.$hostElement$,o=e.o,l=((t,e)=>{var n;const o=D(e),l=i.get(o);if(t=11===t.nodeType?t:u,l)if("string"==typeof l){let s,i=T.get(t=t.head||t);if(i||T.set(t,i=new Set),!i.has(o)){{s=document.querySelector(`[sty-id="${o}"]`)||u.createElement("style"),s.innerHTML=l;const i=null!=(n=a.k)?n:S(u);if(null!=i&&s.setAttribute("nonce",i),!(1&e.o))if("HEAD"===t.nodeName){const e=t.querySelectorAll("link[rel=preconnect]"),n=e.length>0?e[e.length-1].nextSibling:t.querySelector("style");t.insertBefore(s,(null==n?void 0:n.parentNode)===t?n:null)}else if("host"in t)if(h){const e=new CSSStyleSheet;e.replaceSync(l),t.adoptedStyleSheets=[e,...t.adoptedStyleSheets]}else{const e=t.querySelector("style");e?e.innerHTML=l+e.innerHTML:t.prepend(s)}else t.append(s);1&e.o&&t.insertBefore(s,null)}4&e.o&&(s.innerHTML+=r),i&&i.add(o)}}else t.adoptedStyleSheets.includes(l)||(t.adoptedStyleSheets=[...t.adoptedStyleSheets,l]);return o})(n.shadowRoot?n.shadowRoot:n.getRootNode(),e);(10&o&&2&o||128&o)&&(n["s-sc"]=l,n.classList.add(l+"-h"))})(t);Z(t,e,l,n),s&&(s.map((t=>t())),l["s-rc"]=void 0);{const e=null!=(o=l["s-p"])?o:[],n=()=>tt(t);0===e.length?n():(Promise.all(e).then(n),t.o|=4,e.length=0)}},Z=(t,e,n,o)=>{try{e=e.render(),t.o&=-17,t.o|=2,((t,e,n=!1)=>{const o=t.$hostElement$,l=t.O,s=t.C||P(null,null),i=(t=>t&&t.m===A)(e)?e:x(null,null,e);if(E=o.tagName,n&&i.u)for(const t of Object.keys(i.u))o.hasAttribute(t)&&!["key","ref","style","class"].includes(t)&&(i.u[t]=o[t]);i.m=null,i.o|=4,t.C=i,i.v=s.v=o.shadowRoot||o,z(s,i,n)})(t,e,o)}catch(e){l(e,t.$hostElement$)}return null},tt=t=>{const e=t.$hostElement$,n=t.t,o=t.j;64&t.o||(t.o|=64,ot(e),nt(n,"componentDidLoad",void 0,e),t.M(e),o||et()),t.S&&(t.S(),t.S=void 0),512&t.o&&b((()=>J(t,!1))),t.o&=-517},et=()=>{b((()=>(t=>{const e=a.ce("appload",{detail:{namespace:"analog-clock"}});return t.dispatchEvent(e),e})(c)))},nt=(t,e,n,o)=>{if(t&&t[e])try{return t[e](n)}catch(t){l(t,o)}},ot=t=>t.classList.add("hydrated"),lt=(t,e,o,l)=>{const s=n(t);if(!s)throw Error(`Couldn't find host element for "${l.$}" as it is unknown to this Stencil runtime. This usually happens when integrating a 3rd party Stencil component with another Stencil component or application. Please reach out to the maintainers of the 3rd party Stencil component or report this on the Stencil Discord server (https://chat.stenciljs.com) or comment on this similar [GitHub issue](https://github.com/ionic-team/stencil/issues/5457).`);const i=s.P.get(e),r=s.o,c=s.t;o=N(o,l.A[e][0]),8&r&&void 0!==i||o===i||Number.isNaN(i)&&Number.isNaN(o)||(s.P.set(e,o),c&&2==(18&r)&&J(s,!1))},st=(t,e,o)=>{var l,s;const i=t.prototype;if(e.A){const r=Object.entries(null!=(l=e.A)?l:{});if(r.map((([t,[l]])=>{if(31&l||2&o&&32&l){const{get:s,set:r}=Object.getOwnPropertyDescriptor(i,t)||{};s&&(e.A[t][0]|=2048),r&&(e.A[t][0]|=4096),(1&o||!s)&&Object.defineProperty(i,t,{get(){{if(!(2048&e.A[t][0]))return((t,e)=>n(this).P.get(e))(0,t);const o=n(this),l=o?o.t:i;if(!l)return;return l[t]}},configurable:!0,enumerable:!0}),Object.defineProperty(i,t,{set(s){const i=n(this);if(r){const n=32&l?this[t]:i.$hostElement$[t];return void 0===n&&i.P.get(t)?s=i.P.get(t):!i.P.get(t)&&n&&i.P.set(t,n),r.call(this,N(s,l)),void lt(this,t,s=32&l?this[t]:i.$hostElement$[t],e)}{if(!(1&o&&4096&e.A[t][0]))return lt(this,t,s,e),void(1&o&&!i.t&&i.N.then((()=>{4096&e.A[t][0]&&i.t[t]!==i.P.get(t)&&(i.t[t]=s)})));const n=()=>{const n=i.t[t];!i.P.get(t)&&n&&i.P.set(t,n),i.t[t]=N(s,l),lt(this,t,i.t[t],e)};i.t?n():i.N.then((()=>n()))}}})}})),1&o){const o=new Map;i.attributeChangedCallback=function(t,l,s){a.jmp((()=>{var r;const c=o.get(t);if(this.hasOwnProperty(c))s=this[c],delete this[c];else{if(i.hasOwnProperty(c)&&"number"==typeof this[c]&&this[c]==s)return;if(null==c){const o=n(this),i=null==o?void 0:o.o;if(i&&!(8&i)&&128&i&&s!==l){const n=o.t,i=null==(r=e.T)?void 0:r[t];null==i||i.forEach((e=>{null!=n[e]&&n[e].call(n,s,l,t)}))}return}}const u=Object.getOwnPropertyDescriptor(i,c);(s=(null!==s||"boolean"!=typeof this[c])&&s)===this[c]||u.get&&!u.set||(this[c]=s)}))},t.observedAttributes=Array.from(new Set([...Object.keys(null!=(s=e.T)?s:{}),...r.filter((([t,e])=>15&e[0])).map((([t,e])=>{const n=e[1]||t;return o.set(n,t),n}))]))}}return t},it=(t,e)=>{nt(t,"disconnectedCallback",void 0,e||t)},rt=(t,o={})=>{var f;const d=[],p=o.exclude||[],m=c.customElements,y=u.head,v=y.querySelector("meta[charset]"),w=u.createElement("style"),b=[];let $,g=!0;Object.assign(a,o),a.l=new URL(o.resourcesUrl||"./",u.baseURI).href;let j=!1;if(t.map((t=>{t[1].map((o=>{const r={o:o[0],$:o[1],A:o[2],D:o[3]};4&r.o&&(j=!0),r.A=o[2];const c=r.$,u=class extends HTMLElement{constructor(t){if(super(t),this.hasRegisteredEventListeners=!1,((t,n)=>{const o={o:0,$hostElement$:t,O:n,P:new Map};o.N=new Promise((t=>o.M=t)),t["s-p"]=[],t["s-rc"]=[],e.set(t,o)})(t=this,r),1&r.o)if(t.shadowRoot){if("open"!==t.shadowRoot.mode)throw Error(`Unable to re-use existing shadow root for ${r.$}! Mode is set to ${t.shadowRoot.mode} but Stencil only supports open shadow roots.`)}else t.attachShadow({mode:"open"})}connectedCallback(){this.hasRegisteredEventListeners||(this.hasRegisteredEventListeners=!0),$&&(clearTimeout($),$=null),g?b.push(this):a.jmp((()=>(t=>{if(!(1&a.o)){const e=n(t),o=e.O,r=()=>{};if(1&e.o)(null==e?void 0:e.t)||(null==e?void 0:e.N)&&e.N.then((()=>{}));else{e.o|=1;{let n=t;for(;n=n.parentNode||n.host;)if(n["s-p"]){I(e,e.j=n);break}}o.A&&Object.entries(o.A).map((([e,[n]])=>{if(31&n&&t.hasOwnProperty(e)){const n=t[e];delete t[e],t[e]=n}})),(async(t,e,n)=>{let o;if(!(32&e.o)){if(e.o|=32,n.F){const i=((t,e)=>{const n=t.$.replace(/-/g,"_"),o=t.F;if(!o)return;const i=s.get(o);return i?i[n]:import(`./${o}.entry.js`).then((t=>(s.set(o,t),t[n])),(t=>{l(t,e.$hostElement$)}))
2
- /*!__STENCIL_STATIC_IMPORT_SWITCH__*/})(n,e);if(i&&"then"in i){const t=()=>{};o=await i,t()}else o=i;if(!o)throw Error(`Constructor for "${n.$}#${e.H}" was not found`);o.isProxied||(st(o,n,2),o.isProxied=!0);const r=()=>{};e.o|=8;try{new o(e)}catch(e){l(e,t)}e.o&=-9,r()}else o=t.constructor,customElements.whenDefined(t.localName).then((()=>e.o|=128));if(o&&o.style){let t;"string"==typeof o.style&&(t=o.style);const e=D(n);if(!i.has(e)){const o=()=>{};((t,e,n)=>{let o=i.get(t);h&&n?(o=o||new CSSStyleSheet,"string"==typeof o?o=e:o.replaceSync(e)):o=e,i.set(t,o)})(e,t,!!(1&n.o)),o()}}}const r=e.j,c=()=>J(e,!0);r&&r["s-rc"]?r["s-rc"].push(c):c()})(t,e,o)}r()}})(this)))}disconnectedCallback(){a.jmp((()=>(async t=>{if(!(1&a.o)){const e=n(t);(null==e?void 0:e.t)?it(e.t,t):(null==e?void 0:e.N)&&e.N.then((()=>it(e.t,t)))}T.has(t)&&T.delete(t),t.shadowRoot&&T.has(t.shadowRoot)&&T.delete(t.shadowRoot)})(this))),a.raf((()=>{var t;const e=n(this),o=b.findIndex((t=>t===this));o>-1&&b.splice(o,1),(null==(t=null==e?void 0:e.C)?void 0:t.v)instanceof Node&&!e.C.v.isConnected&&delete e.C.v}))}componentOnReady(){return n(this).N}};r.F=t[0],p.includes(c)||m.get(c)||(d.push(c),m.define(c,st(u,r,1)))}))})),d.length>0&&(j&&(w.textContent+=r),w.textContent+=d.sort()+"{visibility:hidden}.hydrated{visibility:inherit}",w.innerHTML.length)){w.setAttribute("data-styles","");const t=null!=(f=a.k)?f:S(u);null!=t&&w.setAttribute("nonce",t),y.insertBefore(w,v?v.nextSibling:y.firstChild)}g=!1,b.length?b.map((t=>t.connectedCallback())):a.jmp((()=>$=setTimeout(et,30)))},ct=t=>a.k=t;export{rt as b,x as h,f as p,o as r,ct as s}