@e280/shiny 0.1.0-13 → 0.1.0-15

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.
Files changed (41) hide show
  1. package/README.md +12 -8
  2. package/package.json +5 -5
  3. package/s/components/button/showcase.ts +1 -1
  4. package/s/components/copy/showcase.ts +1 -1
  5. package/s/components/drawer/component.ts +2 -2
  6. package/s/components/drawer/showcase.ts +19 -1
  7. package/s/components/drawer/style.css.ts +2 -0
  8. package/s/components/example/component.ts +2 -2
  9. package/s/components/example/showcase.ts +32 -0
  10. package/s/components/tabs/showcase.ts +7 -2
  11. package/s/demo/views/exhibit/style.css.ts +3 -0
  12. package/s/themes/aura.css.ts +5 -5
  13. package/x/components/button/showcase.js +1 -1
  14. package/x/components/copy/showcase.js +1 -1
  15. package/x/components/drawer/component.js +2 -2
  16. package/x/components/drawer/component.js.map +1 -1
  17. package/x/components/drawer/showcase.js +19 -1
  18. package/x/components/drawer/showcase.js.map +1 -1
  19. package/x/components/drawer/style.css.js +2 -0
  20. package/x/components/drawer/style.css.js.map +1 -1
  21. package/x/components/example/component.d.ts +1 -1
  22. package/x/components/example/component.js +2 -2
  23. package/x/components/example/component.js.map +1 -1
  24. package/x/components/example/showcase.d.ts +1 -0
  25. package/x/components/example/showcase.js +30 -0
  26. package/x/components/example/showcase.js.map +1 -0
  27. package/x/components/tabs/showcase.js +7 -2
  28. package/x/components/tabs/showcase.js.map +1 -1
  29. package/x/demo/demo.bundle.min.js +106 -78
  30. package/x/demo/demo.bundle.min.js.map +4 -4
  31. package/x/demo/views/exhibit/style.css.js +3 -0
  32. package/x/demo/views/exhibit/style.css.js.map +1 -1
  33. package/x/demo/views/exhibit/view.d.ts +1 -1
  34. package/x/demo/viewsets.d.ts +1 -1
  35. package/x/index.html +2 -2
  36. package/x/install/aura.bundle.min.js +32 -30
  37. package/x/install/aura.bundle.min.js.map +4 -4
  38. package/x/install/plain.bundle.min.js +28 -26
  39. package/x/install/plain.bundle.min.js.map +4 -4
  40. package/x/shiny.d.ts +2 -2
  41. package/x/themes/aura.css.js +5 -5
@@ -1,6 +1,6 @@
1
- var vt=globalThis,wt=vt.ShadowRoot&&(vt.ShadyCSS===void 0||vt.ShadyCSS.nativeShadow)&&"adoptedStyleSheets"in Document.prototype&&"replace"in CSSStyleSheet.prototype,oe=Symbol(),ke=new WeakMap,nt=class{constructor(t,e,s){if(this._$cssResult$=!0,s!==oe)throw Error("CSSResult is not constructable. Use `unsafeCSS` or `css` instead.");this.cssText=t,this.t=e}get styleSheet(){let t=this.o,e=this.t;if(wt&&t===void 0){let s=e!==void 0&&e.length===1;s&&(t=ke.get(e)),t===void 0&&((this.o=t=new CSSStyleSheet).replaceSync(this.cssText),s&&ke.set(e,t))}return t}toString(){return this.cssText}},$t=r=>new nt(typeof r=="string"?r:r+"",void 0,oe),c=(r,...t)=>{let e=r.length===1?r[0]:t.reduce(((s,o,n)=>s+(i=>{if(i._$cssResult$===!0)return i.cssText;if(typeof i=="number")return i;throw Error("Value passed to 'css' function must be a 'css' function result: "+i+". Use 'unsafeCSS' to pass non-literal values, but take care to ensure page security.")})(o)+r[n+1]),r[0]);return new nt(e,r,oe)},_t=(r,t)=>{if(wt)r.adoptedStyleSheets=t.map((e=>e instanceof CSSStyleSheet?e:e.styleSheet));else for(let e of t){let s=document.createElement("style"),o=vt.litNonce;o!==void 0&&s.setAttribute("nonce",o),s.textContent=e.cssText,r.appendChild(s)}},W=wt?r=>r:r=>r instanceof CSSStyleSheet?(t=>{let e="";for(let s of t.cssRules)e+=s.cssText;return $t(e)})(r):r;var{is:zr,defineProperty:Pr,getOwnPropertyDescriptor:Or,getOwnPropertyNames:Rr,getOwnPropertySymbols:Mr,getPrototypeOf:Br}=Object,At=globalThis,Ce=At.trustedTypes,Nr=Ce?Ce.emptyScript:"",Hr=At.reactiveElementPolyfillSupport,it=(r,t)=>r,ne={toAttribute(r,t){switch(t){case Boolean:r=r?Nr:null;break;case Object:case Array:r=r==null?r:JSON.stringify(r)}return r},fromAttribute(r,t){let e=r;switch(t){case Boolean:e=r!==null;break;case Number:e=r===null?null:Number(r);break;case Object:case Array:try{e=JSON.parse(r)}catch{e=null}}return e}},Te=(r,t)=>!zr(r,t),Ee={attribute:!0,type:String,converter:ne,reflect:!1,useDefault:!1,hasChanged:Te};Symbol.metadata??=Symbol("metadata"),At.litPropertyMetadata??=new WeakMap;var z=class extends HTMLElement{static addInitializer(t){this._$Ei(),(this.l??=[]).push(t)}static get observedAttributes(){return this.finalize(),this._$Eh&&[...this._$Eh.keys()]}static createProperty(t,e=Ee){if(e.state&&(e.attribute=!1),this._$Ei(),this.prototype.hasOwnProperty(t)&&((e=Object.create(e)).wrapped=!0),this.elementProperties.set(t,e),!e.noAccessor){let s=Symbol(),o=this.getPropertyDescriptor(t,s,e);o!==void 0&&Pr(this.prototype,t,o)}}static getPropertyDescriptor(t,e,s){let{get:o,set:n}=Or(this.prototype,t)??{get(){return this[e]},set(i){this[e]=i}};return{get:o,set(i){let l=o?.call(this);n?.call(this,i),this.requestUpdate(t,l,s)},configurable:!0,enumerable:!0}}static getPropertyOptions(t){return this.elementProperties.get(t)??Ee}static _$Ei(){if(this.hasOwnProperty(it("elementProperties")))return;let t=Br(this);t.finalize(),t.l!==void 0&&(this.l=[...t.l]),this.elementProperties=new Map(t.elementProperties)}static finalize(){if(this.hasOwnProperty(it("finalized")))return;if(this.finalized=!0,this._$Ei(),this.hasOwnProperty(it("properties"))){let e=this.properties,s=[...Rr(e),...Mr(e)];for(let o of s)this.createProperty(o,e[o])}let t=this[Symbol.metadata];if(t!==null){let e=litPropertyMetadata.get(t);if(e!==void 0)for(let[s,o]of e)this.elementProperties.set(s,o)}this._$Eh=new Map;for(let[e,s]of this.elementProperties){let o=this._$Eu(e,s);o!==void 0&&this._$Eh.set(o,e)}this.elementStyles=this.finalizeStyles(this.styles)}static finalizeStyles(t){let e=[];if(Array.isArray(t)){let s=new Set(t.flat(1/0).reverse());for(let o of s)e.unshift(W(o))}else t!==void 0&&e.push(W(t));return e}static _$Eu(t,e){let s=e.attribute;return s===!1?void 0:typeof s=="string"?s:typeof t=="string"?t.toLowerCase():void 0}constructor(){super(),this._$Ep=void 0,this.isUpdatePending=!1,this.hasUpdated=!1,this._$Em=null,this._$Ev()}_$Ev(){this._$ES=new Promise((t=>this.enableUpdating=t)),this._$AL=new Map,this._$E_(),this.requestUpdate(),this.constructor.l?.forEach((t=>t(this)))}addController(t){(this._$EO??=new Set).add(t),this.renderRoot!==void 0&&this.isConnected&&t.hostConnected?.()}removeController(t){this._$EO?.delete(t)}_$E_(){let t=new Map,e=this.constructor.elementProperties;for(let s of e.keys())this.hasOwnProperty(s)&&(t.set(s,this[s]),delete this[s]);t.size>0&&(this._$Ep=t)}createRenderRoot(){let t=this.shadowRoot??this.attachShadow(this.constructor.shadowRootOptions);return _t(t,this.constructor.elementStyles),t}connectedCallback(){this.renderRoot??=this.createRenderRoot(),this.enableUpdating(!0),this._$EO?.forEach((t=>t.hostConnected?.()))}enableUpdating(t){}disconnectedCallback(){this._$EO?.forEach((t=>t.hostDisconnected?.()))}attributeChangedCallback(t,e,s){this._$AK(t,s)}_$ET(t,e){let s=this.constructor.elementProperties.get(t),o=this.constructor._$Eu(t,s);if(o!==void 0&&s.reflect===!0){let n=(s.converter?.toAttribute!==void 0?s.converter:ne).toAttribute(e,s.type);this._$Em=t,n==null?this.removeAttribute(o):this.setAttribute(o,n),this._$Em=null}}_$AK(t,e){let s=this.constructor,o=s._$Eh.get(t);if(o!==void 0&&this._$Em!==o){let n=s.getPropertyOptions(o),i=typeof n.converter=="function"?{fromAttribute:n.converter}:n.converter?.fromAttribute!==void 0?n.converter:ne;this._$Em=o;let l=i.fromAttribute(e,n.type);this[o]=l??this._$Ej?.get(o)??l,this._$Em=null}}requestUpdate(t,e,s){if(t!==void 0){let o=this.constructor,n=this[t];if(s??=o.getPropertyOptions(t),!((s.hasChanged??Te)(n,e)||s.useDefault&&s.reflect&&n===this._$Ej?.get(t)&&!this.hasAttribute(o._$Eu(t,s))))return;this.C(t,e,s)}this.isUpdatePending===!1&&(this._$ES=this._$EP())}C(t,e,{useDefault:s,reflect:o,wrapped:n},i){s&&!(this._$Ej??=new Map).has(t)&&(this._$Ej.set(t,i??e??this[t]),n!==!0||i!==void 0)||(this._$AL.has(t)||(this.hasUpdated||s||(e=void 0),this._$AL.set(t,e)),o===!0&&this._$Em!==t&&(this._$Eq??=new Set).add(t))}async _$EP(){this.isUpdatePending=!0;try{await this._$ES}catch(e){Promise.reject(e)}let t=this.scheduleUpdate();return t!=null&&await t,!this.isUpdatePending}scheduleUpdate(){return this.performUpdate()}performUpdate(){if(!this.isUpdatePending)return;if(!this.hasUpdated){if(this.renderRoot??=this.createRenderRoot(),this._$Ep){for(let[o,n]of this._$Ep)this[o]=n;this._$Ep=void 0}let s=this.constructor.elementProperties;if(s.size>0)for(let[o,n]of s){let{wrapped:i}=n,l=this[o];i!==!0||this._$AL.has(o)||l===void 0||this.C(o,void 0,n,l)}}let t=!1,e=this._$AL;try{t=this.shouldUpdate(e),t?(this.willUpdate(e),this._$EO?.forEach((s=>s.hostUpdate?.())),this.update(e)):this._$EM()}catch(s){throw t=!1,this._$EM(),s}t&&this._$AE(e)}willUpdate(t){}_$AE(t){this._$EO?.forEach((e=>e.hostUpdated?.())),this.hasUpdated||(this.hasUpdated=!0,this.firstUpdated(t)),this.updated(t)}_$EM(){this._$AL=new Map,this.isUpdatePending=!1}get updateComplete(){return this.getUpdateComplete()}getUpdateComplete(){return this._$ES}shouldUpdate(t){return!0}update(t){this._$Eq&&=this._$Eq.forEach((e=>this._$ET(e,this[e]))),this._$EM()}updated(t){}firstUpdated(t){}};z.elementStyles=[],z.shadowRootOptions={mode:"open"},z[it("elementProperties")]=new Map,z[it("finalized")]=new Map,Hr?.({ReactiveElement:z}),(At.reactiveElementVersions??=[]).push("2.1.1");var ae=globalThis,St=ae.trustedTypes,ze=St?St.createPolicy("lit-html",{createHTML:r=>r}):void 0,le="$lit$",P=`lit$${Math.random().toFixed(9).slice(2)}$`,pe="?"+P,Ur=`<${pe}>`,D=document,lt=()=>D.createComment(""),pt=r=>r===null||typeof r!="object"&&typeof r!="function",ce=Array.isArray,Ne=r=>ce(r)||typeof r?.[Symbol.iterator]=="function",ie=`[
2
- \f\r]`,at=/<(?:(!--|\/[^a-zA-Z])|(\/?[a-zA-Z][^>\s]*)|(\/?$))/g,Pe=/-->/g,Oe=/>/g,U=RegExp(`>|${ie}(?:([^\\s"'>=/]+)(${ie}*=${ie}*(?:[^
3
- \f\r"'\`<>=]|("|')|))|$)`,"g"),Re=/'/g,Me=/"/g,He=/^(?:script|style|textarea|title)$/i,he=r=>(t,...e)=>({_$litType$:r,strings:t,values:e}),h=he(1),C=he(2),ds=he(3),q=Symbol.for("lit-noChange"),x=Symbol.for("lit-nothing"),Be=new WeakMap,j=D.createTreeWalker(D,129);function Ue(r,t){if(!ce(r)||!r.hasOwnProperty("raw"))throw Error("invalid template strings array");return ze!==void 0?ze.createHTML(t):t}var je=(r,t)=>{let e=r.length-1,s=[],o,n=t===2?"<svg>":t===3?"<math>":"",i=at;for(let l=0;l<e;l++){let a=r[l],u,g,p=-1,b=0;for(;b<a.length&&(i.lastIndex=b,g=i.exec(a),g!==null);)b=i.lastIndex,i===at?g[1]==="!--"?i=Pe:g[1]!==void 0?i=Oe:g[2]!==void 0?(He.test(g[2])&&(o=RegExp("</"+g[2],"g")),i=U):g[3]!==void 0&&(i=U):i===U?g[0]===">"?(i=o??at,p=-1):g[1]===void 0?p=-2:(p=i.lastIndex-g[2].length,u=g[1],i=g[3]===void 0?U:g[3]==='"'?Me:Re):i===Me||i===Re?i=U:i===Pe||i===Oe?i=at:(i=U,o=void 0);let w=i===U&&r[l+1].startsWith("/>")?" ":"";n+=i===at?a+Ur:p>=0?(s.push(u),a.slice(0,p)+le+a.slice(p)+P+w):a+P+(p===-2?l:w)}return[Ue(r,n+(r[e]||"<?>")+(t===2?"</svg>":t===3?"</math>":"")),s]},ct=class r{constructor({strings:t,_$litType$:e},s){let o;this.parts=[];let n=0,i=0,l=t.length-1,a=this.parts,[u,g]=je(t,e);if(this.el=r.createElement(u,s),j.currentNode=this.el.content,e===2||e===3){let p=this.el.content.firstChild;p.replaceWith(...p.childNodes)}for(;(o=j.nextNode())!==null&&a.length<l;){if(o.nodeType===1){if(o.hasAttributes())for(let p of o.getAttributeNames())if(p.endsWith(le)){let b=g[i++],w=o.getAttribute(p).split(P),k=/([.?@])?(.*)/.exec(b);a.push({type:1,index:n,name:k[2],strings:w,ctor:k[1]==="."?Ct:k[1]==="?"?Et:k[1]==="@"?Tt:V}),o.removeAttribute(p)}else p.startsWith(P)&&(a.push({type:6,index:n}),o.removeAttribute(p));if(He.test(o.tagName)){let p=o.textContent.split(P),b=p.length-1;if(b>0){o.textContent=St?St.emptyScript:"";for(let w=0;w<b;w++)o.append(p[w],lt()),j.nextNode(),a.push({type:2,index:++n});o.append(p[b],lt())}}}else if(o.nodeType===8)if(o.data===pe)a.push({type:2,index:n});else{let p=-1;for(;(p=o.data.indexOf(P,p+1))!==-1;)a.push({type:7,index:n}),p+=P.length-1}n++}}static createElement(t,e){let s=D.createElement("template");return s.innerHTML=t,s}};function L(r,t,e=r,s){if(t===q)return t;let o=s!==void 0?e._$Co?.[s]:e._$Cl,n=pt(t)?void 0:t._$litDirective$;return o?.constructor!==n&&(o?._$AO?.(!1),n===void 0?o=void 0:(o=new n(r),o._$AT(r,e,s)),s!==void 0?(e._$Co??=[])[s]=o:e._$Cl=o),o!==void 0&&(t=L(r,o._$AS(r,t.values),o,s)),t}var kt=class{constructor(t,e){this._$AV=[],this._$AN=void 0,this._$AD=t,this._$AM=e}get parentNode(){return this._$AM.parentNode}get _$AU(){return this._$AM._$AU}u(t){let{el:{content:e},parts:s}=this._$AD,o=(t?.creationScope??D).importNode(e,!0);j.currentNode=o;let n=j.nextNode(),i=0,l=0,a=s[0];for(;a!==void 0;){if(i===a.index){let u;a.type===2?u=new F(n,n.nextSibling,this,t):a.type===1?u=new a.ctor(n,a.name,a.strings,this,t):a.type===6&&(u=new zt(n,this,t)),this._$AV.push(u),a=s[++l]}i!==a?.index&&(n=j.nextNode(),i++)}return j.currentNode=D,o}p(t){let e=0;for(let s of this._$AV)s!==void 0&&(s.strings!==void 0?(s._$AI(t,s,e),e+=s.strings.length-2):s._$AI(t[e])),e++}},F=class r{get _$AU(){return this._$AM?._$AU??this._$Cv}constructor(t,e,s,o){this.type=2,this._$AH=x,this._$AN=void 0,this._$AA=t,this._$AB=e,this._$AM=s,this.options=o,this._$Cv=o?.isConnected??!0}get parentNode(){let t=this._$AA.parentNode,e=this._$AM;return e!==void 0&&t?.nodeType===11&&(t=e.parentNode),t}get startNode(){return this._$AA}get endNode(){return this._$AB}_$AI(t,e=this){t=L(this,t,e),pt(t)?t===x||t==null||t===""?(this._$AH!==x&&this._$AR(),this._$AH=x):t!==this._$AH&&t!==q&&this._(t):t._$litType$!==void 0?this.$(t):t.nodeType!==void 0?this.T(t):Ne(t)?this.k(t):this._(t)}O(t){return this._$AA.parentNode.insertBefore(t,this._$AB)}T(t){this._$AH!==t&&(this._$AR(),this._$AH=this.O(t))}_(t){this._$AH!==x&&pt(this._$AH)?this._$AA.nextSibling.data=t:this.T(D.createTextNode(t)),this._$AH=t}$(t){let{values:e,_$litType$:s}=t,o=typeof s=="number"?this._$AC(t):(s.el===void 0&&(s.el=ct.createElement(Ue(s.h,s.h[0]),this.options)),s);if(this._$AH?._$AD===o)this._$AH.p(e);else{let n=new kt(o,this),i=n.u(this.options);n.p(e),this.T(i),this._$AH=n}}_$AC(t){let e=Be.get(t.strings);return e===void 0&&Be.set(t.strings,e=new ct(t)),e}k(t){ce(this._$AH)||(this._$AH=[],this._$AR());let e=this._$AH,s,o=0;for(let n of t)o===e.length?e.push(s=new r(this.O(lt()),this.O(lt()),this,this.options)):s=e[o],s._$AI(n),o++;o<e.length&&(this._$AR(s&&s._$AB.nextSibling,o),e.length=o)}_$AR(t=this._$AA.nextSibling,e){for(this._$AP?.(!1,!0,e);t!==this._$AB;){let s=t.nextSibling;t.remove(),t=s}}setConnected(t){this._$AM===void 0&&(this._$Cv=t,this._$AP?.(t))}},V=class{get tagName(){return this.element.tagName}get _$AU(){return this._$AM._$AU}constructor(t,e,s,o,n){this.type=1,this._$AH=x,this._$AN=void 0,this.element=t,this.name=e,this._$AM=o,this.options=n,s.length>2||s[0]!==""||s[1]!==""?(this._$AH=Array(s.length-1).fill(new String),this.strings=s):this._$AH=x}_$AI(t,e=this,s,o){let n=this.strings,i=!1;if(n===void 0)t=L(this,t,e,0),i=!pt(t)||t!==this._$AH&&t!==q,i&&(this._$AH=t);else{let l=t,a,u;for(t=n[0],a=0;a<n.length-1;a++)u=L(this,l[s+a],e,a),u===q&&(u=this._$AH[a]),i||=!pt(u)||u!==this._$AH[a],u===x?t=x:t!==x&&(t+=(u??"")+n[a+1]),this._$AH[a]=u}i&&!o&&this.j(t)}j(t){t===x?this.element.removeAttribute(this.name):this.element.setAttribute(this.name,t??"")}},Ct=class extends V{constructor(){super(...arguments),this.type=3}j(t){this.element[this.name]=t===x?void 0:t}},Et=class extends V{constructor(){super(...arguments),this.type=4}j(t){this.element.toggleAttribute(this.name,!!t&&t!==x)}},Tt=class extends V{constructor(t,e,s,o,n){super(t,e,s,o,n),this.type=5}_$AI(t,e=this){if((t=L(this,t,e,0)??x)===q)return;let s=this._$AH,o=t===x&&s!==x||t.capture!==s.capture||t.once!==s.once||t.passive!==s.passive,n=t!==x&&(s===x||o);o&&this.element.removeEventListener(this.name,this,s),n&&this.element.addEventListener(this.name,this,t),this._$AH=t}handleEvent(t){typeof this._$AH=="function"?this._$AH.call(this.options?.host??this.element,t):this._$AH.handleEvent(t)}},zt=class{constructor(t,e,s){this.element=t,this.type=6,this._$AN=void 0,this._$AM=e,this.options=s}get _$AU(){return this._$AM._$AU}_$AI(t){L(this,t)}},De={M:le,P,A:pe,C:1,L:je,R:kt,D:Ne,V:L,I:F,H:V,N:Et,U:Tt,B:Ct,F:zt},jr=ae.litHtmlPolyfillSupport;jr?.(ct,F),(ae.litHtmlVersions??=[]).push("3.3.1");var ht=(r,t,e)=>{let s=e?.renderBefore??t,o=s._$litPart$;if(o===void 0){let n=e?.renderBefore??null;s._$litPart$=o=new F(t.insertBefore(lt(),n),n,void 0,e??{})}return o._$AI(r),o};var ue=globalThis,X=class extends z{constructor(){super(...arguments),this.renderOptions={host:this},this._$Do=void 0}createRenderRoot(){let t=super.createRenderRoot();return this.renderOptions.renderBefore??=t.firstChild,t}update(t){let e=this.render();this.hasUpdated||(this.renderOptions.isConnected=this.isConnected),super.update(t),this._$Do=ht(e,this.renderRoot,this.renderOptions)}connectedCallback(){super.connectedCallback(),this._$Do?.setConnected(!0)}disconnectedCallback(){super.disconnectedCallback(),this._$Do?.setConnected(!1)}render(){return q}};X._$litElement$=!0,X.finalized=!0,ue.litElementHydrateSupport?.({LitElement:X});var Dr=ue.litElementPolyfillSupport;Dr?.({LitElement:X});(ue.litElementVersions??=[]).push("4.2.1");var Y=c`
1
+ var $t=globalThis,_t=$t.ShadowRoot&&($t.ShadyCSS===void 0||$t.ShadyCSS.nativeShadow)&&"adoptedStyleSheets"in Document.prototype&&"replace"in CSSStyleSheet.prototype,ie=Symbol(),Ee=new WeakMap,pt=class{constructor(t,e,o){if(this._$cssResult$=!0,o!==ie)throw Error("CSSResult is not constructable. Use `unsafeCSS` or `css` instead.");this.cssText=t,this.t=e}get styleSheet(){let t=this.o,e=this.t;if(_t&&t===void 0){let o=e!==void 0&&e.length===1;o&&(t=Ee.get(e)),t===void 0&&((this.o=t=new CSSStyleSheet).replaceSync(this.cssText),o&&Ee.set(e,t))}return t}toString(){return this.cssText}},At=r=>new pt(typeof r=="string"?r:r+"",void 0,ie),c=(r,...t)=>{let e=r.length===1?r[0]:t.reduce(((o,s,n)=>o+(i=>{if(i._$cssResult$===!0)return i.cssText;if(typeof i=="number")return i;throw Error("Value passed to 'css' function must be a 'css' function result: "+i+". Use 'unsafeCSS' to pass non-literal values, but take care to ensure page security.")})(s)+r[n+1]),r[0]);return new pt(e,r,ie)},St=(r,t)=>{if(_t)r.adoptedStyleSheets=t.map((e=>e instanceof CSSStyleSheet?e:e.styleSheet));else for(let e of t){let o=document.createElement("style"),s=$t.litNonce;s!==void 0&&o.setAttribute("nonce",s),o.textContent=e.cssText,r.appendChild(o)}},F=_t?r=>r:r=>r instanceof CSSStyleSheet?(t=>{let e="";for(let o of t.cssRules)e+=o.cssText;return At(e)})(r):r;var{is:Mr,defineProperty:Br,getOwnPropertyDescriptor:Nr,getOwnPropertyNames:Hr,getOwnPropertySymbols:qr,getPrototypeOf:jr}=Object,kt=globalThis,Te=kt.trustedTypes,Ur=Te?Te.emptyScript:"",Dr=kt.reactiveElementPolyfillSupport,ct=(r,t)=>r,ae={toAttribute(r,t){switch(t){case Boolean:r=r?Ur:null;break;case Object:case Array:r=r==null?r:JSON.stringify(r)}return r},fromAttribute(r,t){let e=r;switch(t){case Boolean:e=r!==null;break;case Number:e=r===null?null:Number(r);break;case Object:case Array:try{e=JSON.parse(r)}catch{e=null}}return e}},Oe=(r,t)=>!Mr(r,t),ze={attribute:!0,type:String,converter:ae,reflect:!1,useDefault:!1,hasChanged:Oe};Symbol.metadata??=Symbol("metadata"),kt.litPropertyMetadata??=new WeakMap;var O=class extends HTMLElement{static addInitializer(t){this._$Ei(),(this.l??=[]).push(t)}static get observedAttributes(){return this.finalize(),this._$Eh&&[...this._$Eh.keys()]}static createProperty(t,e=ze){if(e.state&&(e.attribute=!1),this._$Ei(),this.prototype.hasOwnProperty(t)&&((e=Object.create(e)).wrapped=!0),this.elementProperties.set(t,e),!e.noAccessor){let o=Symbol(),s=this.getPropertyDescriptor(t,o,e);s!==void 0&&Br(this.prototype,t,s)}}static getPropertyDescriptor(t,e,o){let{get:s,set:n}=Nr(this.prototype,t)??{get(){return this[e]},set(i){this[e]=i}};return{get:s,set(i){let l=s?.call(this);n?.call(this,i),this.requestUpdate(t,l,o)},configurable:!0,enumerable:!0}}static getPropertyOptions(t){return this.elementProperties.get(t)??ze}static _$Ei(){if(this.hasOwnProperty(ct("elementProperties")))return;let t=jr(this);t.finalize(),t.l!==void 0&&(this.l=[...t.l]),this.elementProperties=new Map(t.elementProperties)}static finalize(){if(this.hasOwnProperty(ct("finalized")))return;if(this.finalized=!0,this._$Ei(),this.hasOwnProperty(ct("properties"))){let e=this.properties,o=[...Hr(e),...qr(e)];for(let s of o)this.createProperty(s,e[s])}let t=this[Symbol.metadata];if(t!==null){let e=litPropertyMetadata.get(t);if(e!==void 0)for(let[o,s]of e)this.elementProperties.set(o,s)}this._$Eh=new Map;for(let[e,o]of this.elementProperties){let s=this._$Eu(e,o);s!==void 0&&this._$Eh.set(s,e)}this.elementStyles=this.finalizeStyles(this.styles)}static finalizeStyles(t){let e=[];if(Array.isArray(t)){let o=new Set(t.flat(1/0).reverse());for(let s of o)e.unshift(F(s))}else t!==void 0&&e.push(F(t));return e}static _$Eu(t,e){let o=e.attribute;return o===!1?void 0:typeof o=="string"?o:typeof t=="string"?t.toLowerCase():void 0}constructor(){super(),this._$Ep=void 0,this.isUpdatePending=!1,this.hasUpdated=!1,this._$Em=null,this._$Ev()}_$Ev(){this._$ES=new Promise((t=>this.enableUpdating=t)),this._$AL=new Map,this._$E_(),this.requestUpdate(),this.constructor.l?.forEach((t=>t(this)))}addController(t){(this._$EO??=new Set).add(t),this.renderRoot!==void 0&&this.isConnected&&t.hostConnected?.()}removeController(t){this._$EO?.delete(t)}_$E_(){let t=new Map,e=this.constructor.elementProperties;for(let o of e.keys())this.hasOwnProperty(o)&&(t.set(o,this[o]),delete this[o]);t.size>0&&(this._$Ep=t)}createRenderRoot(){let t=this.shadowRoot??this.attachShadow(this.constructor.shadowRootOptions);return St(t,this.constructor.elementStyles),t}connectedCallback(){this.renderRoot??=this.createRenderRoot(),this.enableUpdating(!0),this._$EO?.forEach((t=>t.hostConnected?.()))}enableUpdating(t){}disconnectedCallback(){this._$EO?.forEach((t=>t.hostDisconnected?.()))}attributeChangedCallback(t,e,o){this._$AK(t,o)}_$ET(t,e){let o=this.constructor.elementProperties.get(t),s=this.constructor._$Eu(t,o);if(s!==void 0&&o.reflect===!0){let n=(o.converter?.toAttribute!==void 0?o.converter:ae).toAttribute(e,o.type);this._$Em=t,n==null?this.removeAttribute(s):this.setAttribute(s,n),this._$Em=null}}_$AK(t,e){let o=this.constructor,s=o._$Eh.get(t);if(s!==void 0&&this._$Em!==s){let n=o.getPropertyOptions(s),i=typeof n.converter=="function"?{fromAttribute:n.converter}:n.converter?.fromAttribute!==void 0?n.converter:ae;this._$Em=s;let l=i.fromAttribute(e,n.type);this[s]=l??this._$Ej?.get(s)??l,this._$Em=null}}requestUpdate(t,e,o){if(t!==void 0){let s=this.constructor,n=this[t];if(o??=s.getPropertyOptions(t),!((o.hasChanged??Oe)(n,e)||o.useDefault&&o.reflect&&n===this._$Ej?.get(t)&&!this.hasAttribute(s._$Eu(t,o))))return;this.C(t,e,o)}this.isUpdatePending===!1&&(this._$ES=this._$EP())}C(t,e,{useDefault:o,reflect:s,wrapped:n},i){o&&!(this._$Ej??=new Map).has(t)&&(this._$Ej.set(t,i??e??this[t]),n!==!0||i!==void 0)||(this._$AL.has(t)||(this.hasUpdated||o||(e=void 0),this._$AL.set(t,e)),s===!0&&this._$Em!==t&&(this._$Eq??=new Set).add(t))}async _$EP(){this.isUpdatePending=!0;try{await this._$ES}catch(e){Promise.reject(e)}let t=this.scheduleUpdate();return t!=null&&await t,!this.isUpdatePending}scheduleUpdate(){return this.performUpdate()}performUpdate(){if(!this.isUpdatePending)return;if(!this.hasUpdated){if(this.renderRoot??=this.createRenderRoot(),this._$Ep){for(let[s,n]of this._$Ep)this[s]=n;this._$Ep=void 0}let o=this.constructor.elementProperties;if(o.size>0)for(let[s,n]of o){let{wrapped:i}=n,l=this[s];i!==!0||this._$AL.has(s)||l===void 0||this.C(s,void 0,n,l)}}let t=!1,e=this._$AL;try{t=this.shouldUpdate(e),t?(this.willUpdate(e),this._$EO?.forEach((o=>o.hostUpdate?.())),this.update(e)):this._$EM()}catch(o){throw t=!1,this._$EM(),o}t&&this._$AE(e)}willUpdate(t){}_$AE(t){this._$EO?.forEach((e=>e.hostUpdated?.())),this.hasUpdated||(this.hasUpdated=!0,this.firstUpdated(t)),this.updated(t)}_$EM(){this._$AL=new Map,this.isUpdatePending=!1}get updateComplete(){return this.getUpdateComplete()}getUpdateComplete(){return this._$ES}shouldUpdate(t){return!0}update(t){this._$Eq&&=this._$Eq.forEach((e=>this._$ET(e,this[e]))),this._$EM()}updated(t){}firstUpdated(t){}};O.elementStyles=[],O.shadowRootOptions={mode:"open"},O[ct("elementProperties")]=new Map,O[ct("finalized")]=new Map,Dr?.({ReactiveElement:O}),(kt.reactiveElementVersions??=[]).push("2.1.1");var pe=globalThis,Ct=pe.trustedTypes,Pe=Ct?Ct.createPolicy("lit-html",{createHTML:r=>r}):void 0,ce="$lit$",P=`lit$${Math.random().toFixed(9).slice(2)}$`,he="?"+P,Lr=`<${he}>`,D=document,ut=()=>D.createComment(""),dt=r=>r===null||typeof r!="object"&&typeof r!="function",ue=Array.isArray,qe=r=>ue(r)||typeof r?.[Symbol.iterator]=="function",le=`[
2
+ \f\r]`,ht=/<(?:(!--|\/[^a-zA-Z])|(\/?[a-zA-Z][^>\s]*)|(\/?$))/g,Re=/-->/g,Me=/>/g,j=RegExp(`>|${le}(?:([^\\s"'>=/]+)(${le}*=${le}*(?:[^
3
+ \f\r"'\`<>=]|("|')|))|$)`,"g"),Be=/'/g,Ne=/"/g,je=/^(?:script|style|textarea|title)$/i,de=r=>(t,...e)=>({_$litType$:r,strings:t,values:e}),h=de(1),C=de(2),bo=de(3),L=Symbol.for("lit-noChange"),x=Symbol.for("lit-nothing"),He=new WeakMap,U=D.createTreeWalker(D,129);function Ue(r,t){if(!ue(r)||!r.hasOwnProperty("raw"))throw Error("invalid template strings array");return Pe!==void 0?Pe.createHTML(t):t}var De=(r,t)=>{let e=r.length-1,o=[],s,n=t===2?"<svg>":t===3?"<math>":"",i=ht;for(let l=0;l<e;l++){let a=r[l],d,g,p=-1,b=0;for(;b<a.length&&(i.lastIndex=b,g=i.exec(a),g!==null);)b=i.lastIndex,i===ht?g[1]==="!--"?i=Re:g[1]!==void 0?i=Me:g[2]!==void 0?(je.test(g[2])&&(s=RegExp("</"+g[2],"g")),i=j):g[3]!==void 0&&(i=j):i===j?g[0]===">"?(i=s??ht,p=-1):g[1]===void 0?p=-2:(p=i.lastIndex-g[2].length,d=g[1],i=g[3]===void 0?j:g[3]==='"'?Ne:Be):i===Ne||i===Be?i=j:i===Re||i===Me?i=ht:(i=j,s=void 0);let $=i===j&&r[l+1].startsWith("/>")?" ":"";n+=i===ht?a+Lr:p>=0?(o.push(d),a.slice(0,p)+ce+a.slice(p)+P+$):a+P+(p===-2?l:$)}return[Ue(r,n+(r[e]||"<?>")+(t===2?"</svg>":t===3?"</math>":"")),o]},mt=class r{constructor({strings:t,_$litType$:e},o){let s;this.parts=[];let n=0,i=0,l=t.length-1,a=this.parts,[d,g]=De(t,e);if(this.el=r.createElement(d,o),U.currentNode=this.el.content,e===2||e===3){let p=this.el.content.firstChild;p.replaceWith(...p.childNodes)}for(;(s=U.nextNode())!==null&&a.length<l;){if(s.nodeType===1){if(s.hasAttributes())for(let p of s.getAttributeNames())if(p.endsWith(ce)){let b=g[i++],$=s.getAttribute(p).split(P),k=/([.?@])?(.*)/.exec(b);a.push({type:1,index:n,name:k[2],strings:$,ctor:k[1]==="."?Tt:k[1]==="?"?zt:k[1]==="@"?Ot:I}),s.removeAttribute(p)}else p.startsWith(P)&&(a.push({type:6,index:n}),s.removeAttribute(p));if(je.test(s.tagName)){let p=s.textContent.split(P),b=p.length-1;if(b>0){s.textContent=Ct?Ct.emptyScript:"";for(let $=0;$<b;$++)s.append(p[$],ut()),U.nextNode(),a.push({type:2,index:++n});s.append(p[b],ut())}}}else if(s.nodeType===8)if(s.data===he)a.push({type:2,index:n});else{let p=-1;for(;(p=s.data.indexOf(P,p+1))!==-1;)a.push({type:7,index:n}),p+=P.length-1}n++}}static createElement(t,e){let o=D.createElement("template");return o.innerHTML=t,o}};function V(r,t,e=r,o){if(t===L)return t;let s=o!==void 0?e._$Co?.[o]:e._$Cl,n=dt(t)?void 0:t._$litDirective$;return s?.constructor!==n&&(s?._$AO?.(!1),n===void 0?s=void 0:(s=new n(r),s._$AT(r,e,o)),o!==void 0?(e._$Co??=[])[o]=s:e._$Cl=s),s!==void 0&&(t=V(r,s._$AS(r,t.values),s,o)),t}var Et=class{constructor(t,e){this._$AV=[],this._$AN=void 0,this._$AD=t,this._$AM=e}get parentNode(){return this._$AM.parentNode}get _$AU(){return this._$AM._$AU}u(t){let{el:{content:e},parts:o}=this._$AD,s=(t?.creationScope??D).importNode(e,!0);U.currentNode=s;let n=U.nextNode(),i=0,l=0,a=o[0];for(;a!==void 0;){if(i===a.index){let d;a.type===2?d=new X(n,n.nextSibling,this,t):a.type===1?d=new a.ctor(n,a.name,a.strings,this,t):a.type===6&&(d=new Pt(n,this,t)),this._$AV.push(d),a=o[++l]}i!==a?.index&&(n=U.nextNode(),i++)}return U.currentNode=D,s}p(t){let e=0;for(let o of this._$AV)o!==void 0&&(o.strings!==void 0?(o._$AI(t,o,e),e+=o.strings.length-2):o._$AI(t[e])),e++}},X=class r{get _$AU(){return this._$AM?._$AU??this._$Cv}constructor(t,e,o,s){this.type=2,this._$AH=x,this._$AN=void 0,this._$AA=t,this._$AB=e,this._$AM=o,this.options=s,this._$Cv=s?.isConnected??!0}get parentNode(){let t=this._$AA.parentNode,e=this._$AM;return e!==void 0&&t?.nodeType===11&&(t=e.parentNode),t}get startNode(){return this._$AA}get endNode(){return this._$AB}_$AI(t,e=this){t=V(this,t,e),dt(t)?t===x||t==null||t===""?(this._$AH!==x&&this._$AR(),this._$AH=x):t!==this._$AH&&t!==L&&this._(t):t._$litType$!==void 0?this.$(t):t.nodeType!==void 0?this.T(t):qe(t)?this.k(t):this._(t)}O(t){return this._$AA.parentNode.insertBefore(t,this._$AB)}T(t){this._$AH!==t&&(this._$AR(),this._$AH=this.O(t))}_(t){this._$AH!==x&&dt(this._$AH)?this._$AA.nextSibling.data=t:this.T(D.createTextNode(t)),this._$AH=t}$(t){let{values:e,_$litType$:o}=t,s=typeof o=="number"?this._$AC(t):(o.el===void 0&&(o.el=mt.createElement(Ue(o.h,o.h[0]),this.options)),o);if(this._$AH?._$AD===s)this._$AH.p(e);else{let n=new Et(s,this),i=n.u(this.options);n.p(e),this.T(i),this._$AH=n}}_$AC(t){let e=He.get(t.strings);return e===void 0&&He.set(t.strings,e=new mt(t)),e}k(t){ue(this._$AH)||(this._$AH=[],this._$AR());let e=this._$AH,o,s=0;for(let n of t)s===e.length?e.push(o=new r(this.O(ut()),this.O(ut()),this,this.options)):o=e[s],o._$AI(n),s++;s<e.length&&(this._$AR(o&&o._$AB.nextSibling,s),e.length=s)}_$AR(t=this._$AA.nextSibling,e){for(this._$AP?.(!1,!0,e);t!==this._$AB;){let o=t.nextSibling;t.remove(),t=o}}setConnected(t){this._$AM===void 0&&(this._$Cv=t,this._$AP?.(t))}},I=class{get tagName(){return this.element.tagName}get _$AU(){return this._$AM._$AU}constructor(t,e,o,s,n){this.type=1,this._$AH=x,this._$AN=void 0,this.element=t,this.name=e,this._$AM=s,this.options=n,o.length>2||o[0]!==""||o[1]!==""?(this._$AH=Array(o.length-1).fill(new String),this.strings=o):this._$AH=x}_$AI(t,e=this,o,s){let n=this.strings,i=!1;if(n===void 0)t=V(this,t,e,0),i=!dt(t)||t!==this._$AH&&t!==L,i&&(this._$AH=t);else{let l=t,a,d;for(t=n[0],a=0;a<n.length-1;a++)d=V(this,l[o+a],e,a),d===L&&(d=this._$AH[a]),i||=!dt(d)||d!==this._$AH[a],d===x?t=x:t!==x&&(t+=(d??"")+n[a+1]),this._$AH[a]=d}i&&!s&&this.j(t)}j(t){t===x?this.element.removeAttribute(this.name):this.element.setAttribute(this.name,t??"")}},Tt=class extends I{constructor(){super(...arguments),this.type=3}j(t){this.element[this.name]=t===x?void 0:t}},zt=class extends I{constructor(){super(...arguments),this.type=4}j(t){this.element.toggleAttribute(this.name,!!t&&t!==x)}},Ot=class extends I{constructor(t,e,o,s,n){super(t,e,o,s,n),this.type=5}_$AI(t,e=this){if((t=V(this,t,e,0)??x)===L)return;let o=this._$AH,s=t===x&&o!==x||t.capture!==o.capture||t.once!==o.once||t.passive!==o.passive,n=t!==x&&(o===x||s);s&&this.element.removeEventListener(this.name,this,o),n&&this.element.addEventListener(this.name,this,t),this._$AH=t}handleEvent(t){typeof this._$AH=="function"?this._$AH.call(this.options?.host??this.element,t):this._$AH.handleEvent(t)}},Pt=class{constructor(t,e,o){this.element=t,this.type=6,this._$AN=void 0,this._$AM=e,this.options=o}get _$AU(){return this._$AM._$AU}_$AI(t){V(this,t)}},Le={M:ce,P,A:he,C:1,L:De,R:Et,D:qe,V,I:X,H:I,N:zt,U:Ot,B:Tt,F:Pt},Vr=pe.litHtmlPolyfillSupport;Vr?.(mt,X),(pe.litHtmlVersions??=[]).push("3.3.1");var R=(r,t,e)=>{let o=e?.renderBefore??t,s=o._$litPart$;if(s===void 0){let n=e?.renderBefore??null;o._$litPart$=s=new X(t.insertBefore(ut(),n),n,void 0,e??{})}return s._$AI(r),s};var me=globalThis,G=class extends O{constructor(){super(...arguments),this.renderOptions={host:this},this._$Do=void 0}createRenderRoot(){let t=super.createRenderRoot();return this.renderOptions.renderBefore??=t.firstChild,t}update(t){let e=this.render();this.hasUpdated||(this.renderOptions.isConnected=this.isConnected),super.update(t),this._$Do=R(e,this.renderRoot,this.renderOptions)}connectedCallback(){super.connectedCallback(),this._$Do?.setConnected(!0)}disconnectedCallback(){super.disconnectedCallback(),this._$Do?.setConnected(!1)}render(){return L}};G._$litElement$=!0,G.finalized=!0,me.litElementHydrateSupport?.({LitElement:G});var Ir=me.litElementPolyfillSupport;Ir?.({LitElement:G});(me.litElementVersions??=[]).push("4.2.1");var Y=c`
4
4
  @layer reset {
5
5
  * {
6
6
  margin: 0;
@@ -16,19 +16,19 @@ var vt=globalThis,wt=vt.ShadowRoot&&(vt.ShadyCSS===void 0||vt.ShadyCSS.nativeSha
16
16
  ::-webkit-scrollbar-thumb { background: #333; border-radius: 1em; }
17
17
  ::-webkit-scrollbar-thumb:hover { background: #444; }
18
18
  }
19
- `;function O(r,t){let e,s,o=[];function n(){e=[],s&&clearTimeout(s),s=void 0,o=[]}return n(),((...i)=>{e=i,s&&clearTimeout(s);let l=new Promise((a,u)=>{o.push({resolve:a,reject:u})});return s=setTimeout(()=>{Promise.resolve().then(()=>t(...e)).then(a=>{for(let{resolve:u}of o)u(a);n()}).catch(a=>{for(let{reject:u}of o)u(a);n()})},r),l})}function qr(r){let t,e=!1,s=()=>{e=!0,clearTimeout(t)},o=async()=>{e||(await r(s),!e&&(t=setTimeout(o,0)))};return o(),s}var qe=qr;function ut(){let r,t,e=new Promise((o,n)=>{r=o,t=n});function s(o){return o.then(r).catch(t),e}return{promise:e,resolve:r,reject:t,entangle:s}}var Pt=class{getRefill;#t=[];constructor(t){this.getRefill=t,this.#e()}get currentStock(){return[...this.#t]}#e(){if(this.#t.length===0&&(this.#t=[...this.getRefill()]),this.#t.length===0)throw new Error("dispenser's getRefill returned an empty array")}takeAll(){let t=this.#t;return this.#t=[...this.getRefill()],t}takeRandom(){this.#e();let t=Math.floor(Math.random()*this.#t.length),[e]=this.#t.splice(t,1);return e}takeFirst(){return this.#e(),this.#t.shift()}takeLast(){return this.#e(),this.#t.pop()}shift=this.takeFirst.bind(this);pop=this.takeLast.bind(this)};var Z=class r extends Map{static require(t,e){if(t.has(e))return t.get(e);throw new Error(`required key not found: "${e}"`)}static guarantee(t,e,s){if(t.has(e))return t.get(e);{let o=s();return t.set(e,o),o}}array(){return[...this]}require(t){return r.require(this,t)}guarantee(t,e){return r.guarantee(this,t,e)}};var Le=(r=0)=>new Promise(t=>setTimeout(t,r));function Ot(r){return{map:t=>Ve(r,t),filter:t=>Ie(r,t)}}Ot.pipe=Object.freeze({map:r=>(t=>Ve(t,r)),filter:r=>(t=>Ie(t,r))});var Ve=(r,t)=>Object.fromEntries(Object.entries(r).map(([e,s])=>[e,t(s,e)])),Ie=(r,t)=>Object.fromEntries(Object.entries(r).filter(([e,s])=>t(s,e)));function We(){let r=new Set;async function t(...a){await Promise.all([...r].map(u=>u(...a)))}function e(a){return r.add(a),()=>{r.delete(a)}}async function s(...a){return t(...a)}function o(a){return e(a)}async function n(a){let{promise:u,resolve:g}=ut(),p=o(async(...b)=>{a&&await a(...b),g(b),p()});return u}function i(){r.clear()}let l={pub:s,sub:o,publish:t,subscribe:e,on:e,next:n,clear:i};return Object.assign(o,l),Object.assign(s,l),l}function Rt(r){let t=We();return r&&t.sub(r),t.sub}function de(r){let t=We();return r&&t.sub(r),t.pub}function Fe(r){let t=r.split(/\r|\n/),e;for(let o of t)if(!/^\s+$/.test(o)){let i=o.match(/^(\t+).+/);if(i){let l=i[1].length;if(e=e===void 0||l<e?l:e,e===0)break}}let s=new RegExp(`^\\t{${e}}`);return t.map(o=>/^\s+$/.test(o)?"":o).map(o=>o.replace(s,"")).join(`
20
- `)}function Lr(r,t,e){e==null?r.removeAttribute(t):typeof e=="string"?r.setAttribute(t,e):typeof e=="number"?r.setAttribute(t,e.toString()):typeof e=="boolean"?e===!0?r.setAttribute(t,""):r.removeAttribute(t):console.warn(`invalid attribute "${t}" type is "${typeof e}"`)}function Mt(r,t){for(let[e,s]of t)Lr(r,e,s)}function Xe(r,t){let e=document.createElement(r);return Mt(e,Object.entries(t)),e}function Ye(r,t){let e=new MutationObserver(t);return e.observe(r,{attributes:!0}),()=>e.disconnect()}var $={get:{string:(r,t)=>r.getAttribute(t)??void 0,number:(r,t)=>{let e=r.getAttribute(t);return e===null||!e?void 0:Number(e)},boolean:(r,t)=>r.getAttribute(t)!==null},set:{string:(r,t,e)=>(e===void 0?r.removeAttribute(t):r.setAttribute(t,e),!0),number:(r,t,e)=>(e===void 0?r.removeAttribute(t):r.setAttribute(t,e.toString()),!0),boolean:(r,t,e)=>(e?r.setAttribute(t,""):r.removeAttribute(t),!0)}};var Ze=(r,t)=>new Proxy(t,{get:(e,s)=>{switch(t[s]){case String:return $.get.string(r,s);case Number:return $.get.number(r,s);case Boolean:return $.get.boolean(r,s);default:throw new Error(`invalid attribute type for "${s}"`)}},set:(e,s,o)=>{switch(t[s]){case String:return $.set.string(r,s,o);case Number:return $.set.number(r,s,o);case Boolean:return $.set.boolean(r,s,o);default:throw new Error(`invalid attribute type for "${s}"`)}}});var Bt=class{element;constructor(t){this.element=t}strings=new Proxy({},{get:(t,e)=>$.get.string(this.element,e),set:(t,e,s)=>$.set.string(this.element,e,s)});numbers=new Proxy({},{get:(t,e)=>$.get.number(this.element,e),set:(t,e,s)=>$.set.number(this.element,e,s)});booleans=new Proxy({},{get:(t,e)=>$.get.boolean(this.element,e),set:(t,e,s)=>$.set.boolean(this.element,e,s)})};function dt(r){let t=new Bt(r);return{strings:t.strings,numbers:t.numbers,booleans:t.booleans,on:e=>Ye(r,e),spec:e=>Ze(r,e)}}dt.get=$.get;dt.set=$.set;function me(r,t){let e=[];for(let[s,o]of Object.entries(t))if(typeof o=="function")r.addEventListener(s,o),e.push(()=>r.removeEventListener(s,o));else{let[n,i]=o;r.addEventListener(s,i,n),e.push(()=>r.removeEventListener(s,i))}return()=>e.forEach(s=>s())}function Je(r){return r.replace(/([a-zA-Z])(?=[A-Z])/g,"$1-").toLowerCase()}function Ke(r,t={}){let{soft:e=!1,upgrade:s=!0}=t;for(let[o,n]of Object.entries(r)){let i=Je(o),l=customElements.get(i);e&&l||(customElements.define(i,n),s&&document.querySelectorAll(i).forEach(a=>{a.constructor===HTMLElement&&customElements.upgrade(a)}))}}function Qe(r,t){let e=r.querySelector(t);if(!e)throw new Error(`element not found (${t})`);return e}var Nt=class r{element;constructor(t){this.element=t}in(t){return new r(typeof t=="string"?Qe(this.element,t):t)}require(t){let e=this.element.querySelector(t);if(!e)throw new Error(`element not found (${t})`);return e}maybe(t){return this.element.querySelector(t)}all(t){return Array.from(this.element.querySelectorAll(t))}render(...t){return ht(t,this.element)}attrs(){return dt(this.element)}events(t){return me(this.element,t)}};function d(r){return typeof r=="string"?Qe(document,r):new Nt(r)}var R=new Nt(document);d.in=R.in.bind(R);d.require=R.require.bind(R);d.maybe=R.maybe.bind(R);d.all=R.all.bind(R);d.el=Xe;d.events=me;d.attrs=dt;d.register=Ke;d.render=(r,...t)=>ht(t,r);var fe=class{#t=[];#e=new WeakMap;#r=[];#s=new Set;notifyRead(t){this.#t.at(-1)?.add(t)}async notifyWrite(t){if(this.#s.has(t))throw new Error("circularity forbidden");let e=this.#o(t).pub();return this.#r.at(-1)?.add(e),e}observe(t){this.#t.push(new Set);let e=t();return{seen:this.#t.pop(),result:e}}subscribe(t,e){return this.#o(t)(async()=>{let s=new Set;this.#r.push(s),this.#s.add(t),s.add(e()),this.#s.delete(t),await Promise.all(s),this.#r.pop()})}#o(t){let e=this.#e.get(t);return e||(e=Rt(),this.#e.set(t,e)),e}},_=globalThis[Symbol.for("e280.tracker")]??=new fe;var J=class{sneak;constructor(t){this.sneak=t}get(){return _.notifyRead(this),this.sneak}get value(){return this.get()}};var K=class extends J{on=Rt();dispose(){this.on.clear()}};function Ht(r,t=r){let{seen:e,result:s}=_.observe(r),o=O(0,t),n=[],i=()=>n.forEach(l=>l());for(let l of e){let a=_.subscribe(l,o);n.push(a)}return{result:s,dispose:i}}function Q(r,t){return r===t}var Ut=class extends K{#t;constructor(t,e){let s=e?.compare??Q,{result:o,dispose:n}=Ht(t,async()=>{let i=t();!s(this.sneak,i)&&(this.sneak=i,await Promise.all([_.notifyWrite(this),this.on.pub(i)]))});super(o),this.#t=n}toString(){return`(derived "${String(this.get())}")`}dispose(){super.dispose(),this.#t()}get core(){return this}fn(){let t=this;function e(){return t.get()}return e.core=t,e.get=t.get.bind(t),e.on=t.on,e.dispose=t.dispose.bind(t),e.fn=t.fn.bind(t),Object.defineProperty(e,"value",{get:()=>t.value}),Object.defineProperty(e,"sneak",{get:()=>t.sneak}),e}};var jt=class extends J{#t;#e;#r=!1;#s;constructor(t,e){super(void 0),this.#t=t,this.#e=e?.compare??Q}toString(){return`($lazy "${String(this.get())}")`}get(){if(!this.#s){let{result:t,dispose:e}=Ht(this.#t,()=>this.#r=!0);this.#s=e,this.sneak=t}if(this.#r){this.#r=!1;let t=this.#t();!this.#e(this.sneak,t)&&(this.sneak=t,_.notifyWrite(this))}return super.get()}dispose(){this.#s&&this.#s()}get core(){return this}fn(){let t=this;function e(){return t.get()}return e.core=t,e.get=t.get.bind(t),e.dispose=t.dispose.bind(t),e.fn=t.fn.bind(t),Object.defineProperty(e,"value",{get:()=>t.value}),Object.defineProperty(e,"sneak",{get:()=>t.sneak}),e}};var Dt=class extends K{#t=!1;#e;constructor(t,e){super(t),this.#e=e?.compare??Q}toString(){return`($signal "${String(this.get())}")`}async set(t,e=!1){let s=this.sneak;return this.sneak=t,(e||!this.#e(s,t))&&await this.publish(),t}get value(){return this.get()}set value(t){this.set(t)}async publish(){if(this.#t)throw new Error("forbid circularity");let t=this.sneak,e=Promise.resolve();try{this.#t=!0,e=Promise.all([_.notifyWrite(this),this.on.publish(t)])}finally{this.#t=!1}return await e,t}get core(){return this}fn(){let t=this;function e(s){return arguments.length===0?t.get():t.set(arguments[0])}return e.core=t,e.get=t.get.bind(t),e.set=t.set.bind(t),e.on=t.on,e.dispose=t.dispose.bind(t),e.publish=t.publish.bind(t),e.fn=t.fn.bind(t),Object.defineProperty(e,"value",{get:()=>t.value,set:s=>t.value=s}),Object.defineProperty(e,"sneak",{get:()=>t.sneak,set:s=>t.sneak=s}),e}};function Vr(r,t){return new jt(r,t).fn()}function Ge(r,t){return new Ut(r,t).fn()}function v(r,t){return new Dt(r,t).fn()}v.lazy=Vr;v.derived=Ge;var M=class{#t=new Z;effect(t,e){let{seen:s,result:o}=_.observe(t);for(let n of s)this.#t.guarantee(n,()=>_.subscribe(n,e));for(let[n,i]of this.#t)s.has(n)||(i(),this.#t.delete(n));return o}clear(){for(let t of this.#t.values())t();this.#t.clear()}};var G=class{element;response;#t;constructor(t,e){this.element=t,this.response=e}start(){this.#t||(this.#t=d.attrs(this.element).on(this.response))}stop(){this.#t&&this.#t(),this.#t=void 0}};function qt(r,t){_t(r,Wr(t))}function Wr(r){let t=[];if(Array.isArray(r)){let e=new Set(r.flat(1/0).reverse());for(let s of e)t.unshift(W(s))}else r!==void 0&&t.push(W(r));return t}var I={status:r=>r[0],value:r=>r[0]==="ready"?r[1]:void 0,error:r=>r[0]==="error"?r[1]:void 0,select:(r,t)=>{switch(r[0]){case"loading":return t.loading();case"error":return t.error(r[1]);case"ready":return t.ready(r[1]);default:throw new Error("unknown op status")}},morph:(r,t)=>I.select(r,{loading:()=>["loading"],error:e=>["error",e],ready:e=>["ready",t(e)]}),all:(...r)=>{let t=[],e=[],s=0;for(let o of r)switch(o[0]){case"loading":s++;break;case"ready":t.push(o[1]);break;case"error":e.push(o[1]);break}return e.length>0?["error",e]:s===0?["ready",t]:["loading"]}};var tt=class{static loading(){return new this}static ready(t){return new this(["ready",t])}static error(t){return new this(["error",t])}static promise(t){let e=new this;return e.promise(t),e}static load(t){return this.promise(t())}static all(...t){let e=t.map(s=>s.pod);return I.all(...e)}signal;#t=0;#e=de();#r=de();constructor(t=["loading"]){this.signal=v(t)}get wait(){return new Promise((t,e)=>{this.#e.next().then(([s])=>t(s)),this.#r.next().then(([s])=>e(s))})}get then(){return this.wait.then.bind(this.wait)}get catch(){return this.wait.catch.bind(this.wait)}get finally(){return this.wait.finally.bind(this.wait)}async setLoading(){await this.signal.set(["loading"])}async setReady(t){await this.signal.set(["ready",t]),await this.#e(t)}async setError(t){await this.signal.set(["error",t]),await this.#r(t)}async promise(t){let e=++this.#t;await this.setLoading();try{let s=await t;return e===this.#t&&await this.setReady(s),s}catch(s){console.error(s),e===this.#t&&await this.setError(s)}}async load(t){return this.promise(t())}get pod(){return this.signal.get()}set pod(t){this.signal.set(t)}get status(){return this.signal.get()[0]}get value(){return I.value(this.signal.get())}get error(){return I.error(this.signal.get())}get isLoading(){return this.status==="loading"}get isReady(){return this.status==="ready"}get isError(){return this.status==="error"}require(){let t=this.signal.get();if(t[0]!=="ready")throw new Error("required value not ready");return t[1]}select(t){return I.select(this.signal.get(),t)}morph(t){return I.morph(this.pod,t)}};var Lt=class{#t=[];#e=[];mount(t){this.#t.push(t),this.#e.push(t())}unmountAll(){for(let t of this.#e)t();this.#e=[]}remountAll(){for(let t of this.#t)this.#e.push(t())}};var Vt=class{#t;#e;constructor(t){this.#t=t,this.#e=d.attrs(t.element)}get strings(){return this.#e.strings}get numbers(){return this.#e.numbers}get booleans(){return this.#e.booleans}spec(t){return this.#t.once(()=>this.#e.spec(t))}on(t){return this.#t.mount(()=>this.#e.on(t))}};var mt=Symbol(),ft=Symbol(),bt=Symbol(),et=class{element;shadow;renderNow;render;attrs;#t=0;#e=0;#r=new Z;#s=ut();#o=new Lt;[mt](t){this.#t++,this.#e=0,this.#s=ut();let e=t();return this.#s.resolve(),e}[ft](){this.#o.unmountAll()}[bt](){this.#o.remountAll()}constructor(t,e,s,o){this.element=t,this.shadow=e,this.renderNow=s,this.render=o,this.attrs=new Vt(this)}get renderCount(){return this.#t}get rendered(){return this.#s.promise}name(t){this.once(()=>this.element.setAttribute("view",t))}styles(...t){this.once(()=>qt(this.shadow,t))}css(...t){return this.styles(...t)}once(t){return this.#r.guarantee(this.#e++,t)}mount(t){return this.once(()=>this.#o.mount(t))}life(t){let e;return this.mount(()=>{let[s,o]=t();return e=s,o}),e}wake(t){return this.life(()=>[t(),()=>{}])}op=(()=>{let t=this;function e(s){return t.once(()=>tt.load(s))}return e.load=e,e.promise=s=>this.once(()=>tt.promise(s)),e})();signal=(()=>{let t=this;function e(s,o){return t.once(()=>v(s,o))}return e.derived=function(o,n){return t.once(()=>v.derived(o,n))},e.lazy=function(o,n){return t.once(()=>v.lazy(o,n))},e})();derived(t,e){return this.once(()=>v.derived(t,e))}lazy(t,e){return this.once(()=>v.lazy(t,e))}};var B=class extends HTMLElement{static styles;shadow;#t;#e=0;#r=new M;#s=new G(this,()=>this.update());createShadow(){return this.attachShadow({mode:"open"})}constructor(){super(),this.shadow=this.createShadow(),this.#t=new et(this,this.shadow,this.updateNow,this.update)}render(t){}updateNow=()=>{this.#t[mt](()=>{d.render(this.shadow,this.#r.effect(()=>this.render(this.#t),this.update))})};update=O(0,this.updateNow);connectedCallback(){if(this.#e===0){let t=this.constructor.styles;t&&qt(this.shadow,t),this.updateNow()}else this.#t[bt]();this.#s.start(),this.#e++}disconnectedCallback(){this.#t[ft](),this.#r.clear(),this.#s.stop()}};var It=class{#t;#e;constructor(t,e){this.#e=t,this.#t=e}attr(t,e=!0){return this.#e.attrs.set(t,e),this}attrs(t){for(let[e,s]of Object.entries(t))this.#e.attrs.set(e,s);return this}children(...t){return this.#e.children.push(...t),this}render(){return this.#t(this.#e)}};var gt=class{props;attrs=new Map;children=[];constructor(t){this.props=t}};function tr(r,t,e,s){return class extends t{static view=rt(s,r);#t=new M;createShadow(){return this.attachShadow(r)}render(n){return s(n)(...this.#t.effect(()=>e(this),()=>this.update()))}}}var{I:wi}=De;var er=r=>r.strings===void 0;var rr={ATTRIBUTE:1,CHILD:2,PROPERTY:3,BOOLEAN_ATTRIBUTE:4,EVENT:5,ELEMENT:6},be=r=>(...t)=>({_$litDirective$:r,values:t}),Wt=class{constructor(t){}get _$AU(){return this._$AM._$AU}_$AT(t,e,s){this._$Ct=t,this._$AM=e,this._$Ci=s}_$AS(t,e){return this.update(t,e)}update(t,e){return this.render(...e)}};var yt=(r,t)=>{let e=r._$AN;if(e===void 0)return!1;for(let s of e)s._$AO?.(t,!1),yt(s,t);return!0},Ft=r=>{let t,e;do{if((t=r._$AM)===void 0)break;e=t._$AN,e.delete(r),r=t}while(e?.size===0)},sr=r=>{for(let t;t=r._$AM;r=t){let e=t._$AN;if(e===void 0)t._$AN=e=new Set;else if(e.has(r))break;e.add(r),Yr(t)}};function Fr(r){this._$AN!==void 0?(Ft(this),this._$AM=r,sr(this)):this._$AM=r}function Xr(r,t=!1,e=0){let s=this._$AH,o=this._$AN;if(o!==void 0&&o.size!==0)if(t)if(Array.isArray(s))for(let n=e;n<s.length;n++)yt(s[n],!1),Ft(s[n]);else s!=null&&(yt(s,!1),Ft(s));else yt(this,r)}var Yr=r=>{r.type==rr.CHILD&&(r._$AP??=Xr,r._$AQ??=Fr)},Xt=class extends Wt{constructor(){super(...arguments),this._$AN=void 0}_$AT(t,e,s){super._$AT(t,e,s),sr(this),this.isConnected=t._$AU}_$AO(t,e=!0){t!==this.isConnected&&(this.isConnected=t,t?this.reconnected?.():this.disconnected?.()),e&&(yt(this,t),Ft(this))}setValue(t){if(er(this._$Ct))this._$Ct._$AI(t,this);else{let e=[...this._$Ct._$AH];e[this._$Ci]=t,this._$Ct._$AI(e,this,0)}}disconnected(){}reconnected(){}};var Yt=class r extends HTMLElement{static#t=!1;static make(){return this.#t||(d.register({SlyView:r},{soft:!0,upgrade:!0}),this.#t=!0),document.createElement("sly-view")}};var Zt=class{viewFn;settings;#t=Yt.make();#e=new M;#r;#s;#o;#n=new G(this.#t,()=>this.#a());constructor(t,e){this.viewFn=t,this.settings=e,this.#s=this.#t.attachShadow(this.settings),this.#r=new et(this.#t,this.#s,this.#i,this.#a)}update(t){return this.#o=t,this.#i(),this.#t}#i=()=>{this.#r[mt](()=>{let t=this.#e.effect(()=>this.viewFn(this.#r)(...this.#o.props),()=>this.#a());Mt(this.#t,[...this.#o.attrs]),d.render(this.#s,t),d.render(this.#t,this.#o.children),this.#n.start()})};#a=O(0,this.#i);disconnected(){this.#r[ft](),this.#e.clear(),this.#n.stop()}reconnected(){this.#r[bt](),this.#n.start()}};function or(r,t){return be(class extends Xt{#t=new Zt(r,t);render(s){return this.#t.update(s)}disconnected(){this.#t.disconnected()}reconnected(){this.#t.reconnected()}})}function rt(r,t){let e=or(r,t);function s(...o){return e(new gt(o))}return s.props=(...o)=>new It(new gt(o),e),s.transmute=o=>rt(i=>{let l=r(i);return(...a)=>l(...o(...a))},t),s.component=(o=B)=>({props:n=>tr(t,o,n,r)}),s}function f(r){return rt(r,{mode:"open"})}f.settings=r=>({render:t=>rt(t,r)});f.render=f;f.component=r=>f(t=>()=>r(t)).component(B).props(()=>[]);function m(r,t){return()=>Zr({hz:r,frames:t})}var Zr=f(r=>({hz:t,frames:e})=>{r.name("loading"),r.styles(Y,Jr);let s=r.signal(0);return r.mount(()=>qe(async()=>{await Le(1e3/t);let o=s.get()+1;s.set(o>=e.length?0:o)})),e.at(s.get())}),Jr=c`
19
+ `;function M(r,t){let e,o,s=[];function n(){e=[],o&&clearTimeout(o),o=void 0,s=[]}return n(),((...i)=>{e=i,o&&clearTimeout(o);let l=new Promise((a,d)=>{s.push({resolve:a,reject:d})});return o=setTimeout(()=>{Promise.resolve().then(()=>t(...e)).then(a=>{for(let{resolve:d}of s)d(a);n()}).catch(a=>{for(let{reject:d}of s)d(a);n()})},r),l})}function Ve(r){let t,e=!1,o=()=>{e=!0,clearTimeout(t)},s=async()=>{e||(await r(o),!e&&(t=setTimeout(s,0)))};return s(),o}function ft(){let r,t,e=new Promise((s,n)=>{r=s,t=n});function o(s){return s.then(r).catch(t),e}return{promise:e,resolve:r,reject:t,entangle:o}}var Rt=class{getRefill;#t=[];constructor(t){this.getRefill=t,this.#e()}get currentStock(){return[...this.#t]}#e(){if(this.#t.length===0&&(this.#t=[...this.getRefill()]),this.#t.length===0)throw new Error("dispenser's getRefill returned an empty array")}takeAll(){let t=this.#t;return this.#t=[...this.getRefill()],t}takeRandom(){this.#e();let t=Math.floor(Math.random()*this.#t.length),[e]=this.#t.splice(t,1);return e}takeFirst(){return this.#e(),this.#t.shift()}takeLast(){return this.#e(),this.#t.pop()}shift=this.takeFirst.bind(this);pop=this.takeLast.bind(this)};var Z=class r extends Map{static require(t,e){if(t.has(e))return t.get(e);throw new Error(`required key not found: "${e}"`)}static guarantee(t,e,o){if(t.has(e))return t.get(e);{let s=o();return t.set(e,s),s}}array(){return[...this]}require(t){return r.require(this,t)}guarantee(t,e){return r.guarantee(this,t,e)}};var Ie=(r=0)=>new Promise(t=>setTimeout(t,r));function Mt(r){return{map:t=>We(r,t),filter:t=>Fe(r,t)}}Mt.pipe=Object.freeze({map:r=>(t=>We(t,r)),filter:r=>(t=>Fe(t,r))});var We=(r,t)=>Object.fromEntries(Object.entries(r).map(([e,o])=>[e,t(o,e)])),Fe=(r,t)=>Object.fromEntries(Object.entries(r).filter(([e,o])=>t(o,e)));function Xe(){let r=new Set;async function t(...a){await Promise.all([...r].map(d=>d(...a)))}function e(a){return r.add(a),()=>{r.delete(a)}}async function o(...a){return t(...a)}function s(a){return e(a)}async function n(a){let{promise:d,resolve:g}=ft(),p=s(async(...b)=>{a&&await a(...b),g(b),p()});return d}function i(){r.clear()}let l={pub:o,sub:s,publish:t,subscribe:e,on:e,next:n,clear:i};return Object.assign(s,l),Object.assign(o,l),l}function Bt(r){let t=Xe();return r&&t.sub(r),t.sub}function fe(r){let t=Xe();return r&&t.sub(r),t.pub}function Ge(r){let t=r.split(/\r|\n/),e;for(let s of t)if(!/^\s+$/.test(s)){let i=s.match(/^(\t+).+/);if(i){let l=i[1].length;if(e=e===void 0||l<e?l:e,e===0)break}}let o=new RegExp(`^\\t{${e}}`);return t.map(s=>/^\s+$/.test(s)?"":s).map(s=>s.replace(o,"")).join(`
20
+ `)}var E={string:(r,t)=>r.getAttribute(t)??void 0,number:(r,t)=>{let e=r.getAttribute(t);return e===null||!e?void 0:Number(e)},boolean:(r,t)=>r.getAttribute(t)!==null},v={string:(r,t,e)=>(e===void 0?r.removeAttribute(t):r.setAttribute(t,e),!0),number:(r,t,e)=>(e===void 0?r.removeAttribute(t):r.setAttribute(t,e.toString()),!0),boolean:(r,t,e)=>(e?r.setAttribute(t,""):r.removeAttribute(t),!0),any:(r,t,e)=>{e==null?r.removeAttribute(t):typeof e=="string"?r.setAttribute(t,e):typeof e=="number"?r.setAttribute(t,e.toString()):typeof e=="boolean"?e===!0?r.setAttribute(t,""):r.removeAttribute(t):console.warn(`invalid attribute "${t}" type is "${typeof e}"`)},entries:(r,t)=>{for(let[e,o]of t)v.any(r,e,o)},record:(r,t)=>v.entries(r,Object.entries(t))};function Ye(r,t={}){let e=document.createElement(r);return v.record(e,t),e}function Ze(r){let t=document.createDocumentFragment();return R(r,t),t.firstElementChild}function J(r,t){let e=[];for(let[o,s]of Object.entries(t))if(typeof s=="function")r.addEventListener(o,s),e.push(()=>r.removeEventListener(o,s));else{let[n,i]=s;r.addEventListener(o,i,n),e.push(()=>r.removeEventListener(o,i))}return()=>e.forEach(o=>o())}function Je(r,t){let e=new MutationObserver(t);return e.observe(r,{attributes:!0}),()=>e.disconnect()}var Ke=(r,t)=>new Proxy(t,{get:(e,o)=>{switch(t[o]){case String:return E.string(r,o);case Number:return E.number(r,o);case Boolean:return E.boolean(r,o);default:throw new Error(`invalid attribute type for "${o}"`)}},set:(e,o,s)=>{switch(t[o]){case String:return v.string(r,o,s);case Number:return v.number(r,o,s);case Boolean:return v.boolean(r,o,s);default:throw new Error(`invalid attribute type for "${o}"`)}}});var Nt=class{element;constructor(t){this.element=t}strings=new Proxy({},{get:(t,e)=>E.string(this.element,e),set:(t,e,o)=>v.string(this.element,e,o)});numbers=new Proxy({},{get:(t,e)=>E.number(this.element,e),set:(t,e,o)=>v.number(this.element,e,o)});booleans=new Proxy({},{get:(t,e)=>E.boolean(this.element,e),set:(t,e,o)=>v.boolean(this.element,e,o)})};function K(r){let t=new Nt(r);return{strings:t.strings,numbers:t.numbers,booleans:t.booleans,on:e=>Je(r,e),spec:e=>Ke(r,e)}}K.get=E;K.set=v;function Qe(r){return new be(r)}var be=class{tagName;#t=new Map;#e=[];constructor(t){this.tagName=t}attr(t,e=!0){return this.#t.set(t,e),this}attrs(t){for(let[e,o]of Object.entries(t))this.attr(e,o);return this}children(...t){return this.#e.push(...t),this}done(){let t=document.createElement(this.tagName);return v.entries(t,this.#t),t.append(...this.#e),t}};function Q(r,t=document){let e=t.querySelector(r);if(!e)throw new Error(`element not found (${r})`);return e}function Ht(r,t=document){return t.querySelector(r)}function qt(r,t=document){return Array.from(t.querySelectorAll(r))}var jt=class r{element;#t;constructor(t){this.element=t}in(t){return new r(typeof t=="string"?Q(t,this.element):t)}require(t){return Q(t,this.element)}maybe(t){return Ht(t,this.element)}all(t){return qt(t,this.element)}render(...t){return R(t,this.element)}get attrs(){return this.#t??=K(this.element)}events(t){return J(this.element,t)}};function tr(r){return r.replace(/([a-zA-Z])(?=[A-Z])/g,"$1-").toLowerCase()}function er(r,t={}){let{soft:e=!1,upgrade:o=!0}=t;for(let[s,n]of Object.entries(r)){let i=tr(s),l=customElements.get(i);e&&l||(customElements.define(i,n),o&&document.querySelectorAll(i).forEach(a=>{a.constructor===HTMLElement&&customElements.upgrade(a)}))}}function u(r,t=document){return Q(r,t)}u.in=(r,t=document)=>new jt(t).in(r);u.require=Q;u.maybe=Ht;u.all=qt;u.el=Ye;u.elmer=Qe;u.mk=Ze;u.events=J;u.attrs=K;u.register=er;u.render=(r,...t)=>R(t,r);var ge=class{#t=[];#e=new WeakMap;#r=[];#o=new Set;notifyRead(t){this.#t.at(-1)?.add(t)}async notifyWrite(t){if(this.#o.has(t))throw new Error("circularity forbidden");let e=this.#s(t).pub();return this.#r.at(-1)?.add(e),e}observe(t){this.#t.push(new Set);let e=t();return{seen:this.#t.pop(),result:e}}subscribe(t,e){return this.#s(t)(async()=>{let o=new Set;this.#r.push(o),this.#o.add(t),o.add(e()),this.#o.delete(t),await Promise.all(o),this.#r.pop()})}#s(t){let e=this.#e.get(t);return e||(e=Bt(),this.#e.set(t,e)),e}},_=globalThis[Symbol.for("e280.tracker")]??=new ge;var tt=class{sneak;constructor(t){this.sneak=t}get(){return _.notifyRead(this),this.sneak}get value(){return this.get()}};var et=class extends tt{on=Bt();dispose(){this.on.clear()}};function Ut(r,t=r){let{seen:e,result:o}=_.observe(r),s=M(0,t),n=[],i=()=>n.forEach(l=>l());for(let l of e){let a=_.subscribe(l,s);n.push(a)}return{result:o,dispose:i}}function rt(r,t){return r===t}var Dt=class extends et{#t;constructor(t,e){let o=e?.compare??rt,{result:s,dispose:n}=Ut(t,async()=>{let i=t();!o(this.sneak,i)&&(this.sneak=i,await Promise.all([_.notifyWrite(this),this.on.pub(i)]))});super(s),this.#t=n}toString(){return`(derived "${String(this.get())}")`}dispose(){super.dispose(),this.#t()}get core(){return this}fn(){let t=this;function e(){return t.get()}return e.core=t,e.get=t.get.bind(t),e.on=t.on,e.dispose=t.dispose.bind(t),e.fn=t.fn.bind(t),Object.defineProperty(e,"value",{get:()=>t.value}),Object.defineProperty(e,"sneak",{get:()=>t.sneak}),e}};var Lt=class extends tt{#t;#e;#r=!1;#o;constructor(t,e){super(void 0),this.#t=t,this.#e=e?.compare??rt}toString(){return`($lazy "${String(this.get())}")`}get(){if(!this.#o){let{result:t,dispose:e}=Ut(this.#t,()=>this.#r=!0);this.#o=e,this.sneak=t}if(this.#r){this.#r=!1;let t=this.#t();!this.#e(this.sneak,t)&&(this.sneak=t,_.notifyWrite(this))}return super.get()}dispose(){this.#o&&this.#o()}get core(){return this}fn(){let t=this;function e(){return t.get()}return e.core=t,e.get=t.get.bind(t),e.dispose=t.dispose.bind(t),e.fn=t.fn.bind(t),Object.defineProperty(e,"value",{get:()=>t.value}),Object.defineProperty(e,"sneak",{get:()=>t.sneak}),e}};var Vt=class extends et{#t=!1;#e;constructor(t,e){super(t),this.#e=e?.compare??rt}toString(){return`($signal "${String(this.get())}")`}async set(t,e=!1){let o=this.sneak;return this.sneak=t,(e||!this.#e(o,t))&&await this.publish(),t}get value(){return this.get()}set value(t){this.set(t)}async publish(){if(this.#t)throw new Error("forbid circularity");let t=this.sneak,e=Promise.resolve();try{this.#t=!0,e=Promise.all([_.notifyWrite(this),this.on.publish(t)])}finally{this.#t=!1}return await e,t}get core(){return this}fn(){let t=this;function e(o){return arguments.length===0?t.get():t.set(arguments[0])}return e.core=t,e.get=t.get.bind(t),e.set=t.set.bind(t),e.on=t.on,e.dispose=t.dispose.bind(t),e.publish=t.publish.bind(t),e.fn=t.fn.bind(t),Object.defineProperty(e,"value",{get:()=>t.value,set:o=>t.value=o}),Object.defineProperty(e,"sneak",{get:()=>t.sneak,set:o=>t.sneak=o}),e}};function Wr(r,t){return new Lt(r,t).fn()}function rr(r,t){return new Dt(r,t).fn()}function w(r,t){return new Vt(r,t).fn()}w.lazy=Wr;w.derived=rr;var B=class{#t=new Z;effect(t,e){let{seen:o,result:s}=_.observe(t);for(let n of o)this.#t.guarantee(n,()=>_.subscribe(n,e));for(let[n,i]of this.#t)o.has(n)||(i(),this.#t.delete(n));return s}clear(){for(let t of this.#t.values())t();this.#t.clear()}};var ot=class{element;response;#t;constructor(t,e){this.element=t,this.response=e}start(){this.#t||(this.#t=u.attrs(this.element).on(this.response))}stop(){this.#t&&this.#t(),this.#t=void 0}};function It(r,t){St(r,Xr(t))}function Xr(r){let t=[];if(Array.isArray(r)){let e=new Set(r.flat(1/0).reverse());for(let o of e)t.unshift(F(o))}else r!==void 0&&t.push(F(r));return t}var W={status:r=>r[0],value:r=>r[0]==="ready"?r[1]:void 0,error:r=>r[0]==="error"?r[1]:void 0,select:(r,t)=>{switch(r[0]){case"loading":return t.loading();case"error":return t.error(r[1]);case"ready":return t.ready(r[1]);default:throw new Error("unknown op status")}},morph:(r,t)=>W.select(r,{loading:()=>["loading"],error:e=>["error",e],ready:e=>["ready",t(e)]}),all:(...r)=>{let t=[],e=[],o=0;for(let s of r)switch(s[0]){case"loading":o++;break;case"ready":t.push(s[1]);break;case"error":e.push(s[1]);break}return e.length>0?["error",e]:o===0?["ready",t]:["loading"]}};var st=class{static loading(){return new this}static ready(t){return new this(["ready",t])}static error(t){return new this(["error",t])}static promise(t){let e=new this;return e.promise(t),e}static load(t){return this.promise(t())}static all(...t){let e=t.map(o=>o.pod);return W.all(...e)}signal;#t=0;#e=fe();#r=fe();constructor(t=["loading"]){this.signal=w(t)}get wait(){return new Promise((t,e)=>{this.#e.next().then(([o])=>t(o)),this.#r.next().then(([o])=>e(o))})}get then(){return this.wait.then.bind(this.wait)}get catch(){return this.wait.catch.bind(this.wait)}get finally(){return this.wait.finally.bind(this.wait)}async setLoading(){await this.signal.set(["loading"])}async setReady(t){await this.signal.set(["ready",t]),await this.#e(t)}async setError(t){await this.signal.set(["error",t]),await this.#r(t)}async promise(t){let e=++this.#t;await this.setLoading();try{let o=await t;return e===this.#t&&await this.setReady(o),o}catch(o){console.error(o),e===this.#t&&await this.setError(o)}}async load(t){return this.promise(t())}get pod(){return this.signal.get()}set pod(t){this.signal.set(t)}get status(){return this.signal.get()[0]}get value(){return W.value(this.signal.get())}get error(){return W.error(this.signal.get())}get isLoading(){return this.status==="loading"}get isReady(){return this.status==="ready"}get isError(){return this.status==="error"}require(){let t=this.signal.get();if(t[0]!=="ready")throw new Error("required value not ready");return t[1]}select(t){return W.select(this.signal.get(),t)}morph(t){return W.morph(this.pod,t)}};var Wt=class{#t=[];#e=[];mount(t){this.#t.push(t),this.#e.push(t())}unmountAll(){for(let t of this.#e)t();this.#e=[]}remountAll(){for(let t of this.#t)this.#e.push(t())}};function or(r){let t=u.attrs(r.element);function e(o){return r.once(()=>t.spec(o))}return e.strings=t.strings,e.numbers=t.numbers,e.booleans=t.booleans,e.spec=o=>r.once(()=>t.spec(o)),e.on=o=>r.mount(()=>t.on(o)),e}var bt=Symbol(),gt=Symbol(),yt=Symbol(),nt=class{element;shadow;renderNow;render;attrs;#t=0;#e=0;#r=new Z;#o=ft();#s=new Wt;[bt](t){this.#t++,this.#e=0,this.#o=ft();let e=t();return this.#o.resolve(),e}[gt](){this.#s.unmountAll()}[yt](){this.#s.remountAll()}constructor(t,e,o,s){this.element=t,this.shadow=e,this.renderNow=o,this.render=s,this.attrs=or(this)}get renderCount(){return this.#t}get rendered(){return this.#o.promise}name(t){this.once(()=>this.element.setAttribute("view",t))}styles(...t){this.once(()=>It(this.shadow,t))}css(...t){return this.styles(...t)}once(t){return this.#r.guarantee(this.#e++,t)}mount(t){return this.once(()=>this.#s.mount(t))}life(t){let e;return this.mount(()=>{let[o,s]=t();return e=o,s}),e}wake(t){return this.life(()=>[t(),()=>{}])}events(t){return this.mount(()=>J(this.element,t))}op=(()=>{let t=this;function e(o){return t.once(()=>st.load(o))}return e.load=e,e.promise=o=>this.once(()=>st.promise(o)),e})();signal=(()=>{let t=this;function e(o,s){return t.once(()=>w(o,s))}return e.derived=function(s,n){return t.once(()=>w.derived(s,n))},e.lazy=function(s,n){return t.once(()=>w.lazy(s,n))},e})();derived(t,e){return this.once(()=>w.derived(t,e))}lazy(t,e){return this.once(()=>w.lazy(t,e))}};var N=class extends HTMLElement{static styles;shadow;#t;#e=0;#r=new B;#o=new ot(this,()=>this.update());createShadow(){return this.attachShadow({mode:"open"})}constructor(){super(),this.shadow=this.createShadow(),this.#t=new nt(this,this.shadow,this.updateNow,this.update)}render(t){}updateNow=()=>{this.#t[bt](()=>{u.render(this.shadow,this.#r.effect(()=>this.render(this.#t),this.update))})};update=M(0,this.updateNow);connectedCallback(){if(this.#e===0){let t=this.constructor.styles;t&&It(this.shadow,t),this.updateNow()}else this.#t[yt]();this.#o.start(),this.#e++}disconnectedCallback(){this.#t[gt](),this.#r.clear(),this.#o.stop()}};var Ft=class{#t;#e;constructor(t,e){this.#e=t,this.#t=e}attr(t,e=!0){return this.#e.attrs.set(t,e),this}attrs(t){for(let[e,o]of Object.entries(t))this.#e.attrs.set(e,o);return this}children(...t){return this.#e.children.push(...t),this}render(){return this.#t(this.#e)}};var xt=class{props;attrs=new Map;children=[];constructor(t){this.props=t}};function sr(r,t,e,o){return class extends t{static view=it(o,r);#t=new B;createShadow(){return this.attachShadow(r)}render(n){return o(n)(...this.#t.effect(()=>e(this),()=>this.update()))}}}var{I:Hi}=Le;var nr=r=>r.strings===void 0;var ir={ATTRIBUTE:1,CHILD:2,PROPERTY:3,BOOLEAN_ATTRIBUTE:4,EVENT:5,ELEMENT:6},ye=r=>(...t)=>({_$litDirective$:r,values:t}),Xt=class{constructor(t){}get _$AU(){return this._$AM._$AU}_$AT(t,e,o){this._$Ct=t,this._$AM=e,this._$Ci=o}_$AS(t,e){return this.update(t,e)}update(t,e){return this.render(...e)}};var vt=(r,t)=>{let e=r._$AN;if(e===void 0)return!1;for(let o of e)o._$AO?.(t,!1),vt(o,t);return!0},Gt=r=>{let t,e;do{if((t=r._$AM)===void 0)break;e=t._$AN,e.delete(r),r=t}while(e?.size===0)},ar=r=>{for(let t;t=r._$AM;r=t){let e=t._$AN;if(e===void 0)t._$AN=e=new Set;else if(e.has(r))break;e.add(r),Zr(t)}};function Gr(r){this._$AN!==void 0?(Gt(this),this._$AM=r,ar(this)):this._$AM=r}function Yr(r,t=!1,e=0){let o=this._$AH,s=this._$AN;if(s!==void 0&&s.size!==0)if(t)if(Array.isArray(o))for(let n=e;n<o.length;n++)vt(o[n],!1),Gt(o[n]);else o!=null&&(vt(o,!1),Gt(o));else vt(this,r)}var Zr=r=>{r.type==ir.CHILD&&(r._$AP??=Yr,r._$AQ??=Gr)},Yt=class extends Xt{constructor(){super(...arguments),this._$AN=void 0}_$AT(t,e,o){super._$AT(t,e,o),ar(this),this.isConnected=t._$AU}_$AO(t,e=!0){t!==this.isConnected&&(this.isConnected=t,t?this.reconnected?.():this.disconnected?.()),e&&(vt(this,t),Gt(this))}setValue(t){if(nr(this._$Ct))this._$Ct._$AI(t,this);else{let e=[...this._$Ct._$AH];e[this._$Ci]=t,this._$Ct._$AI(e,this,0)}}disconnected(){}reconnected(){}};var Zt=class r extends HTMLElement{static#t=!1;static make(){return this.#t||(u.register({SlyView:r},{soft:!0,upgrade:!0}),this.#t=!0),document.createElement("sly-view")}};var Jt=class{viewFn;settings;#t=Zt.make();#e=new B;#r;#o;#s;#n=new ot(this.#t,()=>this.#a());constructor(t,e){this.viewFn=t,this.settings=e,this.#o=this.#t.attachShadow(this.settings),this.#r=new nt(this.#t,this.#o,this.#i,this.#a)}update(t){return this.#s=t,this.#i(),this.#t}#i=()=>{this.#r[bt](()=>{let t=this.#e.effect(()=>this.viewFn(this.#r)(...this.#s.props),()=>this.#a());v.entries(this.#t,this.#s.attrs),u.render(this.#o,t),u.render(this.#t,this.#s.children),this.#n.start()})};#a=M(0,this.#i);disconnected(){this.#r[gt](),this.#e.clear(),this.#n.stop()}reconnected(){this.#r[yt](),this.#n.start()}};function lr(r,t){return ye(class extends Yt{#t=new Jt(r,t);render(o){return this.#t.update(o)}disconnected(){this.#t.disconnected()}reconnected(){this.#t.reconnected()}})}function it(r,t){let e=lr(r,t);function o(...s){return e(new xt(s))}return o.props=(...s)=>new Ft(new xt(s),e),o.transmute=s=>it(i=>{let l=r(i);return(...a)=>l(...s(...a))},t),o.component=(s=N)=>({props:n=>sr(t,s,n,r)}),o}function f(r){return it(r,{mode:"open"})}f.settings=r=>({render:t=>it(t,r)});f.render=f;f.component=r=>f(t=>()=>r(t)).component(N).props(()=>[]);function m(r,t){return()=>Jr({hz:r,frames:t})}var Jr=f(r=>({hz:t,frames:e})=>{r.name("loading"),r.styles(Y,Kr);let o=r.signal(0);return r.mount(()=>Ve(async()=>{await Ie(1e3/t);let s=o.get()+1;o.set(s>=e.length?0:s)})),e.at(o.get())}),Kr=c`
21
21
  :host {
22
22
  font-family: monospace;
23
23
  white-space: pre;
24
24
  user-select: none;
25
25
  }
26
- `;var y=20,st=10,ot=4,na=m(y,["|","/","-","\\"]),ia=m(y,["\u2808","\u2810","\u2820","\u2880","\u2840","\u2804","\u2802","\u2801"]),aa=m(y,["\u2B06\uFE0F","\u2197\uFE0F","\u27A1\uFE0F","\u2198\uFE0F","\u2B07\uFE0F","\u2199\uFE0F","\u2B05\uFE0F","\u2196\uFE0F"]),la=m(y,["\u25B0\u25B1\u25B1\u25B1\u25B1","\u25B0\u25B1\u25B1\u25B1\u25B1","\u25B1\u25B0\u25B1\u25B1\u25B1","\u25B1\u25B1\u25B0\u25B1\u25B1","\u25B1\u25B1\u25B1\u25B0\u25B1","\u25B1\u25B1\u25B1\u25B1\u25B0","\u25B1\u25B1\u25B1\u25B1\u25B0","\u25B1\u25B1\u25B1\u25B0\u25B1","\u25B1\u25B1\u25B0\u25B1\u25B1","\u25B1\u25B0\u25B1\u25B1\u25B1"]),pa=m(y,["\u25B1\u25B1\u25B0\u25B1\u25B1","\u25B1\u25B1\u25B1\u25B0\u25B1","\u25B1\u25B1\u25B1\u25B0\u25B0","\u25B1\u25B1\u25B1\u25B0\u25B0","\u25B1\u25B1\u25B1\u25B1\u25B0","\u25B1\u25B1\u25B1\u25B1\u25B0","\u25B1\u25B1\u25B1\u25B1\u25B0","\u25B1\u25B1\u25B1\u25B0\u25B0","\u25B1\u25B1\u25B1\u25B0\u25B0","\u25B1\u25B1\u25B1\u25B0\u25B1","\u25B1\u25B1\u25B0\u25B1\u25B1","\u25B1\u25B0\u25B1\u25B1\u25B1","\u25B0\u25B0\u25B1\u25B1\u25B1","\u25B0\u25B0\u25B1\u25B1\u25B1","\u25B0\u25B1\u25B1\u25B1\u25B1","\u25B0\u25B1\u25B1\u25B1\u25B1","\u25B0\u25B1\u25B1\u25B1\u25B1","\u25B0\u25B0\u25B1\u25B1\u25B1","\u25B0\u25B0\u25B1\u25B1\u25B1","\u25B1\u25B0\u25B1\u25B1\u25B1"]),ca=m(y,["\u25B0\u25B1\u25B1\u25B1\u25B1","\u25B0\u25B1\u25B1\u25B1\u25B1","\u25B0\u25B0\u25B1\u25B1\u25B1","\u25B0\u25B0\u25B0\u25B1\u25B1","\u25B1\u25B0\u25B0\u25B0\u25B1","\u25B1\u25B1\u25B0\u25B0\u25B0","\u25B1\u25B1\u25B1\u25B0\u25B0","\u25B1\u25B1\u25B1\u25B1\u25B0","\u25B1\u25B1\u25B1\u25B1\u25B0","\u25B1\u25B1\u25B1\u25B0\u25B0","\u25B1\u25B1\u25B0\u25B0\u25B0","\u25B1\u25B0\u25B0\u25B0\u25B1","\u25B0\u25B0\u25B0\u25B1\u25B1","\u25B0\u25B0\u25B1\u25B1\u25B1"]),ha=m(y,["\u25B1\u25B1\u25B1\u25B1\u25B1","\u25B1\u25B1\u25B1\u25B1\u25B1","\u25B0\u25B1\u25B1\u25B1\u25B1","\u25B0\u25B0\u25B1\u25B1\u25B1","\u25B0\u25B0\u25B0\u25B1\u25B1","\u25B0\u25B0\u25B0\u25B0\u25B1","\u25B0\u25B0\u25B0\u25B0\u25B0","\u25B0\u25B0\u25B0\u25B0\u25B0","\u25B1\u25B0\u25B0\u25B0\u25B0","\u25B1\u25B1\u25B0\u25B0\u25B0","\u25B1\u25B1\u25B1\u25B0\u25B0","\u25B1\u25B1\u25B1\u25B1\u25B0"]),ua=m(y,["\u2581\u2581\u2581\u2581\u2581","\u2581\u2581\u2581\u2581\u2581","\u2588\u2581\u2581\u2581\u2581","\u2588\u2588\u2581\u2581\u2581","\u2588\u2588\u2588\u2581\u2581","\u2588\u2588\u2588\u2588\u2581","\u2588\u2588\u2588\u2588\u2588","\u2588\u2588\u2588\u2588\u2588","\u2581\u2588\u2588\u2588\u2588","\u2581\u2581\u2588\u2588\u2588","\u2581\u2581\u2581\u2588\u2588","\u2581\u2581\u2581\u2581\u2588"]),da=m(y,["\u2588\u2581\u2581\u2581\u2581","\u2588\u2581\u2581\u2581\u2581","\u2588\u2588\u2581\u2581\u2581","\u2588\u2588\u2588\u2581\u2581","\u2588\u2588\u2588\u2588\u2581","\u2588\u2588\u2588\u2588\u2588","\u2588\u2588\u2588\u2588\u2588","\u2581\u2588\u2588\u2588\u2588","\u2581\u2581\u2588\u2588\u2588","\u2581\u2581\u2581\u2588\u2588","\u2581\u2581\u2581\u2581\u2588","\u2581\u2581\u2581\u2581\u2588","\u2581\u2581\u2581\u2588\u2588","\u2581\u2581\u2588\u2588\u2588","\u2581\u2588\u2588\u2588\u2588","\u2588\u2588\u2588\u2588\u2588","\u2588\u2588\u2588\u2588\u2588","\u2588\u2588\u2588\u2588\u2581","\u2588\u2588\u2588\u2581\u2581","\u2588\u2588\u2581\u2581\u2581"]),ma=m(ot,["\u{1F6B6}","\u{1F3C3}"]),fa=m(st,["\u25F7","\u25F6","\u25F5","\u25F4"]),ba=m(y,["=----","-=---","--=--","---=-","----=","----=","---=-","--=--","-=---","=----"]),ga=m(y,["o----","-o---","--o--","---o-","----o","----o","---o-","--o--","-o---","o----"]),ya=m(st,["[ ]","[ ]","[= ]","[== ]","[===]","[ ==]","[ =]"]),xa=m(st,["[ ]","[ ]","[= ]","[== ]","[===]","[ ==]","[ =]","[ ]","[ ]","[ =]","[ ==]","[===]","[== ]","[= ]"]),va=m(st,[" "," ",". ",".. ","..."," .."," ."]),wa=m(y,[". ",". ",".. ","..."," .."," ."," ."," ..","...",".. "]),$a=m(y,[".....",".....",":....","::...",":::..","::::.",":::::",":::::",".::::","..:::","...::","....:"]),_a=m(y,[":....",":....","::...",".::..","..::.","...::","....:","....:","...::","..::.",".::..","::..."]),Aa=m(y,[".....",".....","..:..",".:::.",".:::.",":::::",":::::","::.::",":...:"]),Sa=m(y,[".....",".....","..:..",".:::.",".:::.",":::::",":::::","::.::",":...:",".....",".....",":...:","::.::",":::::",":::::",".:::.",".:::.","..:.."]),ka=m(y,["000","100","110","111","011","001"]),Ca=m(y,["11111","01111","00111","10011","11001","01100","00110","10011","11001","11100","11110"]),Ea=m(y,["11111","01111","10111","11011","11101","11110","11111","11110","11101","11011","10111","01111"]),Ta=m(ot,["\u{1F539}","\u{1F535}"]),za=m(st,["\u{1F642}","\u{1F642}","\u{1F617}","\u{1F619}","\u{1F618}","\u{1F618}","\u{1F619}"]),Pa=m(y,["\u{1F550}","\u{1F551}","\u{1F552}","\u{1F553}","\u{1F554}","\u{1F555}","\u{1F556}","\u{1F557}","\u{1F558}","\u{1F559}","\u{1F55A}","\u{1F55B}"]),Oa=m(y,["\u{1F91C} \u{1F91B}","\u{1F91C} \u{1F91B}","\u{1F91C} \u{1F91B}"," \u{1F91C} \u{1F91B} "," \u{1F91C}\u{1F91B} "," \u{1F91C}\u{1F91B} "," \u{1F91C}\u{1F4A5}\u{1F91B} ","\u{1F91C} \u{1F4A5} \u{1F91B}","\u{1F91C} \u2728 \u{1F91B}","\u{1F91C} \u2728 \u{1F91B}"]),Kr=m(ot,["\u{1F30E}","\u{1F30F}","\u{1F30D}"]),Ra=m(ot,["\u{1F513}","\u{1F512}"]),Ma=m(ot,["\u{1F505}","\u{1F506}"]),Ba=m(ot,["\u{1F508}","\u{1F508}","\u{1F509}","\u{1F50A}","\u{1F50A}","\u{1F509}"]),Na=m(st,["\u{1F311}","\u{1F311}","\u{1F311}","\u{1F318}","\u{1F317}","\u{1F316}","\u{1F315}","\u{1F314}","\u{1F313}","\u{1F312}"]);var Gr=f(r=>t=>(r.name("error"),r.styles(Y,ts),typeof t=="string"?t:t instanceof Error?h`<strong>${t.name}:</strong> <span>${t.message}</span>`:"error")),ts=c`
26
+ `;var y=20,at=10,lt=4,wa=m(y,["|","/","-","\\"]),$a=m(y,["\u2808","\u2810","\u2820","\u2880","\u2840","\u2804","\u2802","\u2801"]),_a=m(y,["\u2B06\uFE0F","\u2197\uFE0F","\u27A1\uFE0F","\u2198\uFE0F","\u2B07\uFE0F","\u2199\uFE0F","\u2B05\uFE0F","\u2196\uFE0F"]),Aa=m(y,["\u25B0\u25B1\u25B1\u25B1\u25B1","\u25B0\u25B1\u25B1\u25B1\u25B1","\u25B1\u25B0\u25B1\u25B1\u25B1","\u25B1\u25B1\u25B0\u25B1\u25B1","\u25B1\u25B1\u25B1\u25B0\u25B1","\u25B1\u25B1\u25B1\u25B1\u25B0","\u25B1\u25B1\u25B1\u25B1\u25B0","\u25B1\u25B1\u25B1\u25B0\u25B1","\u25B1\u25B1\u25B0\u25B1\u25B1","\u25B1\u25B0\u25B1\u25B1\u25B1"]),Sa=m(y,["\u25B1\u25B1\u25B0\u25B1\u25B1","\u25B1\u25B1\u25B1\u25B0\u25B1","\u25B1\u25B1\u25B1\u25B0\u25B0","\u25B1\u25B1\u25B1\u25B0\u25B0","\u25B1\u25B1\u25B1\u25B1\u25B0","\u25B1\u25B1\u25B1\u25B1\u25B0","\u25B1\u25B1\u25B1\u25B1\u25B0","\u25B1\u25B1\u25B1\u25B0\u25B0","\u25B1\u25B1\u25B1\u25B0\u25B0","\u25B1\u25B1\u25B1\u25B0\u25B1","\u25B1\u25B1\u25B0\u25B1\u25B1","\u25B1\u25B0\u25B1\u25B1\u25B1","\u25B0\u25B0\u25B1\u25B1\u25B1","\u25B0\u25B0\u25B1\u25B1\u25B1","\u25B0\u25B1\u25B1\u25B1\u25B1","\u25B0\u25B1\u25B1\u25B1\u25B1","\u25B0\u25B1\u25B1\u25B1\u25B1","\u25B0\u25B0\u25B1\u25B1\u25B1","\u25B0\u25B0\u25B1\u25B1\u25B1","\u25B1\u25B0\u25B1\u25B1\u25B1"]),ka=m(y,["\u25B0\u25B1\u25B1\u25B1\u25B1","\u25B0\u25B1\u25B1\u25B1\u25B1","\u25B0\u25B0\u25B1\u25B1\u25B1","\u25B0\u25B0\u25B0\u25B1\u25B1","\u25B1\u25B0\u25B0\u25B0\u25B1","\u25B1\u25B1\u25B0\u25B0\u25B0","\u25B1\u25B1\u25B1\u25B0\u25B0","\u25B1\u25B1\u25B1\u25B1\u25B0","\u25B1\u25B1\u25B1\u25B1\u25B0","\u25B1\u25B1\u25B1\u25B0\u25B0","\u25B1\u25B1\u25B0\u25B0\u25B0","\u25B1\u25B0\u25B0\u25B0\u25B1","\u25B0\u25B0\u25B0\u25B1\u25B1","\u25B0\u25B0\u25B1\u25B1\u25B1"]),Ca=m(y,["\u25B1\u25B1\u25B1\u25B1\u25B1","\u25B1\u25B1\u25B1\u25B1\u25B1","\u25B0\u25B1\u25B1\u25B1\u25B1","\u25B0\u25B0\u25B1\u25B1\u25B1","\u25B0\u25B0\u25B0\u25B1\u25B1","\u25B0\u25B0\u25B0\u25B0\u25B1","\u25B0\u25B0\u25B0\u25B0\u25B0","\u25B0\u25B0\u25B0\u25B0\u25B0","\u25B1\u25B0\u25B0\u25B0\u25B0","\u25B1\u25B1\u25B0\u25B0\u25B0","\u25B1\u25B1\u25B1\u25B0\u25B0","\u25B1\u25B1\u25B1\u25B1\u25B0"]),Ea=m(y,["\u2581\u2581\u2581\u2581\u2581","\u2581\u2581\u2581\u2581\u2581","\u2588\u2581\u2581\u2581\u2581","\u2588\u2588\u2581\u2581\u2581","\u2588\u2588\u2588\u2581\u2581","\u2588\u2588\u2588\u2588\u2581","\u2588\u2588\u2588\u2588\u2588","\u2588\u2588\u2588\u2588\u2588","\u2581\u2588\u2588\u2588\u2588","\u2581\u2581\u2588\u2588\u2588","\u2581\u2581\u2581\u2588\u2588","\u2581\u2581\u2581\u2581\u2588"]),Ta=m(y,["\u2588\u2581\u2581\u2581\u2581","\u2588\u2581\u2581\u2581\u2581","\u2588\u2588\u2581\u2581\u2581","\u2588\u2588\u2588\u2581\u2581","\u2588\u2588\u2588\u2588\u2581","\u2588\u2588\u2588\u2588\u2588","\u2588\u2588\u2588\u2588\u2588","\u2581\u2588\u2588\u2588\u2588","\u2581\u2581\u2588\u2588\u2588","\u2581\u2581\u2581\u2588\u2588","\u2581\u2581\u2581\u2581\u2588","\u2581\u2581\u2581\u2581\u2588","\u2581\u2581\u2581\u2588\u2588","\u2581\u2581\u2588\u2588\u2588","\u2581\u2588\u2588\u2588\u2588","\u2588\u2588\u2588\u2588\u2588","\u2588\u2588\u2588\u2588\u2588","\u2588\u2588\u2588\u2588\u2581","\u2588\u2588\u2588\u2581\u2581","\u2588\u2588\u2581\u2581\u2581"]),za=m(lt,["\u{1F6B6}","\u{1F3C3}"]),Oa=m(at,["\u25F7","\u25F6","\u25F5","\u25F4"]),Pa=m(y,["=----","-=---","--=--","---=-","----=","----=","---=-","--=--","-=---","=----"]),Ra=m(y,["o----","-o---","--o--","---o-","----o","----o","---o-","--o--","-o---","o----"]),Ma=m(at,["[ ]","[ ]","[= ]","[== ]","[===]","[ ==]","[ =]"]),Ba=m(at,["[ ]","[ ]","[= ]","[== ]","[===]","[ ==]","[ =]","[ ]","[ ]","[ =]","[ ==]","[===]","[== ]","[= ]"]),Na=m(at,[" "," ",". ",".. ","..."," .."," ."]),Ha=m(y,[". ",". ",".. ","..."," .."," ."," ."," ..","...",".. "]),qa=m(y,[".....",".....",":....","::...",":::..","::::.",":::::",":::::",".::::","..:::","...::","....:"]),ja=m(y,[":....",":....","::...",".::..","..::.","...::","....:","....:","...::","..::.",".::..","::..."]),Ua=m(y,[".....",".....","..:..",".:::.",".:::.",":::::",":::::","::.::",":...:"]),Da=m(y,[".....",".....","..:..",".:::.",".:::.",":::::",":::::","::.::",":...:",".....",".....",":...:","::.::",":::::",":::::",".:::.",".:::.","..:.."]),La=m(y,["000","100","110","111","011","001"]),Va=m(y,["11111","01111","00111","10011","11001","01100","00110","10011","11001","11100","11110"]),Ia=m(y,["11111","01111","10111","11011","11101","11110","11111","11110","11101","11011","10111","01111"]),Wa=m(lt,["\u{1F539}","\u{1F535}"]),Fa=m(at,["\u{1F642}","\u{1F642}","\u{1F617}","\u{1F619}","\u{1F618}","\u{1F618}","\u{1F619}"]),Xa=m(y,["\u{1F550}","\u{1F551}","\u{1F552}","\u{1F553}","\u{1F554}","\u{1F555}","\u{1F556}","\u{1F557}","\u{1F558}","\u{1F559}","\u{1F55A}","\u{1F55B}"]),Ga=m(y,["\u{1F91C} \u{1F91B}","\u{1F91C} \u{1F91B}","\u{1F91C} \u{1F91B}"," \u{1F91C} \u{1F91B} "," \u{1F91C}\u{1F91B} "," \u{1F91C}\u{1F91B} "," \u{1F91C}\u{1F4A5}\u{1F91B} ","\u{1F91C} \u{1F4A5} \u{1F91B}","\u{1F91C} \u2728 \u{1F91B}","\u{1F91C} \u2728 \u{1F91B}"]),Qr=m(lt,["\u{1F30E}","\u{1F30F}","\u{1F30D}"]),Ya=m(lt,["\u{1F513}","\u{1F512}"]),Za=m(lt,["\u{1F505}","\u{1F506}"]),Ja=m(lt,["\u{1F508}","\u{1F508}","\u{1F509}","\u{1F50A}","\u{1F50A}","\u{1F509}"]),Ka=m(at,["\u{1F311}","\u{1F311}","\u{1F311}","\u{1F318}","\u{1F317}","\u{1F316}","\u{1F315}","\u{1F314}","\u{1F313}","\u{1F312}"]);var eo=f(r=>t=>(r.name("error"),r.styles(Y,ro),typeof t=="string"?t:t instanceof Error?h`<strong>${t.name}:</strong> <span>${t.message}</span>`:"error")),ro=c`
27
27
  :host {
28
28
  font-family: monospace;
29
29
  color: red;
30
30
  }
31
- `;function os(r,t){return t.transmute((...e)=>[r,...e])}function ir(r){return Ot(r).map(t=>t.view)}function ar(r,t){return Ot(t).map(e=>class extends e{context=r;static view=os(r,super.view)})}var lr=()=>new Pt(()=>["lorem kettlebell dolor sit amet, mountain squats consectetur trail-running. adipiscing deadlift elit, sed do 45lb turkish get-up eiusmod tempor incididunt ut hike magna aliqua. ut enim ad minim clean & press, quis nostrud exercitation lunges ullamco kettlebell snatch trailhead nisi ut aliquip ex dolore summit irure dolor.","lorem protein dolor sit amet, creatine scoop elit shaker bottle tempor. grilled steak magna keto-fasting culpa, carb-loading perspiciatis cheat day. whey isolate dolor sit macros elit, intermittent fasting tempor electrolyte magna; barefoot shoes culpa, liver perspiciatis ancestral squat rack gospel. lorem bulking dolor sit cut elit, tdee tracker tempor calorie deficit magna; chicken breast culpa gatorade perspiciatis meal prep.","lorem caffeine dolor sit amet, double espresso elit cold brew tempor jitter. adderall magna focus culpa, lion\u2019s mane perspiciatis nootropic. nicotine gum dolor sit vape elit, dopamine hit tempor buzz magna; lsd microdosing culpa, productivity perspiciatis agile sprint. lorem latte dolor sit drip elit, french press tempor aeropress magna; insomnia culpa, circadian rhythm perspiciatis blue light filter.","lorem arch dolor sit amet, pacman -Syu elit rolling release tempor breakage. i3-gaps commodo tiling, bspwm magna culpa xinitrc. alias neovim configs in .dotfiles forest, r/unixporn veniam rice showcase perspiciatis.","lorem authlocal dolor sit amet, user-sovereign identity elit, cryptographic tempor signatures. ed25519 magna keypair culpa, elliptic perspiciatis handshake ut zero-knowledge proof. decentralized login elit mnemonic seed tempor recovery phrase. did magna alias culpa federation, lorem oauth2 perspiciatis antiquated.","lorem webgpu dolor sit amet, fragment shader elit vertex buffer tempor pipeline; bindgroup magna sampler culpa, wgsl perspiciatis alignment bug. compute pass workgroup barrier magna, mipmap cascade culpa drawcall instancing overflow. spir-v dolor sit wasm elit, canvas context lost magna; fallback webgl2 perspiciatis, polyfill slowpath dolore, glsl antique culpa extension hell 144hz tearing. command encoder perspiciatis out-of-memory, chromium nightly.","lorem sedentary dolor sit amet, infinite scroll elit chair-bound tempor. commit marathon magna carpal tunnel culpa, caffeine perspiciatis heartbeat irregular. lorem backlog dolor sit ticket elit, jira sprint tempor sedentary slump magna; gym membership culpa expired, standing desk perspiciatis unused. lorem procrastination dolor sit youtube elit, keyboard crumbs tempor pizza box magna; cardio avoidant culpa, hike someday perspiciatis maybe."]);var ge=lr(),N=()=>ge.takeFirst();var pr=c`@layer view {
31
+ `;function io(r,t){return t.transmute((...e)=>[r,...e])}function cr(r){return Mt(r).map(t=>t.view)}function hr(r,t){return Mt(t).map(e=>class extends e{context=r;static view=io(r,super.view)})}var ur=()=>new Rt(()=>["lorem kettlebell dolor sit amet, mountain squats consectetur trail-running. adipiscing deadlift elit, sed do 45lb turkish get-up eiusmod tempor incididunt ut hike magna aliqua. ut enim ad minim clean & press, quis nostrud exercitation lunges ullamco kettlebell snatch trailhead nisi ut aliquip ex dolore summit irure dolor.","lorem protein dolor sit amet, creatine scoop elit shaker bottle tempor. grilled steak magna keto-fasting culpa, carb-loading perspiciatis cheat day. whey isolate dolor sit macros elit, intermittent fasting tempor electrolyte magna; barefoot shoes culpa, liver perspiciatis ancestral squat rack gospel. lorem bulking dolor sit cut elit, tdee tracker tempor calorie deficit magna; chicken breast culpa gatorade perspiciatis meal prep.","lorem caffeine dolor sit amet, double espresso elit cold brew tempor jitter. adderall magna focus culpa, lion\u2019s mane perspiciatis nootropic. nicotine gum dolor sit vape elit, dopamine hit tempor buzz magna; lsd microdosing culpa, productivity perspiciatis agile sprint. lorem latte dolor sit drip elit, french press tempor aeropress magna; insomnia culpa, circadian rhythm perspiciatis blue light filter.","lorem arch dolor sit amet, pacman -Syu elit rolling release tempor breakage. i3-gaps commodo tiling, bspwm magna culpa xinitrc. alias neovim configs in .dotfiles forest, r/unixporn veniam rice showcase perspiciatis.","lorem authlocal dolor sit amet, user-sovereign identity elit, cryptographic tempor signatures. ed25519 magna keypair culpa, elliptic perspiciatis handshake ut zero-knowledge proof. decentralized login elit mnemonic seed tempor recovery phrase. did magna alias culpa federation, lorem oauth2 perspiciatis antiquated.","lorem webgpu dolor sit amet, fragment shader elit vertex buffer tempor pipeline; bindgroup magna sampler culpa, wgsl perspiciatis alignment bug. compute pass workgroup barrier magna, mipmap cascade culpa drawcall instancing overflow. spir-v dolor sit wasm elit, canvas context lost magna; fallback webgl2 perspiciatis, polyfill slowpath dolore, glsl antique culpa extension hell 144hz tearing. command encoder perspiciatis out-of-memory, chromium nightly.","lorem sedentary dolor sit amet, infinite scroll elit chair-bound tempor. commit marathon magna carpal tunnel culpa, caffeine perspiciatis heartbeat irregular. lorem backlog dolor sit ticket elit, jira sprint tempor sedentary slump magna; gym membership culpa expired, standing desk perspiciatis unused. lorem procrastination dolor sit youtube elit, keyboard crumbs tempor pizza box magna; cardio avoidant culpa, hike someday perspiciatis maybe."]);var xe=ur(),H=()=>xe.takeFirst();var dr=c`@layer view {
32
32
 
33
33
  :host {
34
34
  position: relative;
@@ -77,11 +77,11 @@ header {
77
77
  }
78
78
  }
79
79
 
80
- }`;function Jt(){return{bg:"#111",alpha:"#def",lame:"#8888",angry:"#f50",zesty:"#cf0",happy:"#0fa",calm:"#0af",sad:"#74f",quirky:"#f49","inactive-opacity":"0.5","anim-duration":"300ms"}}function Kt(r){return $t(Object.entries(r).map(([t,e])=>`--${t}: var(--shiny-${t}, ${e});`).join(`
81
- `))}var cr=c`@layer overlay {
80
+ }`;function Kt(){return{bg:"#111",alpha:"#def",lame:"#8888",angry:"#f50",zesty:"#cf0",happy:"#0fa",calm:"#0af",sad:"#74f",quirky:"#f49","inactive-opacity":"0.5","anim-duration":"300ms"}}function Qt(r){return At(Object.entries(r).map(([t,e])=>`--${t}: var(--shiny-${t}, ${e});`).join(`
81
+ `))}var mr=c`@layer overlay {
82
82
 
83
83
  :host {
84
- ${Kt({...Jt()})}
84
+ ${Qt({...Kt()})}
85
85
  }
86
86
 
87
87
  :host([view="shiny-button"]:not([plain])) {
@@ -134,14 +134,14 @@ header {
134
134
 
135
135
  :host([view="shiny-drawer"]:not([plain])) {
136
136
  display: block;
137
+ --slate-bg: linear-gradient(
138
+ to top right,
139
+ color-mix(in oklab, var(--calm), #222 50%),
140
+ color-mix(in oklab, var(--calm), #888 50%)
141
+ );
137
142
 
138
143
  &::part(slate) {
139
144
  padding: 1em;
140
- background: linear-gradient(
141
- to top right,
142
- #00a9dd69,
143
- #70ffd77a
144
- );
145
145
  }
146
146
  }
147
147
 
@@ -157,13 +157,13 @@ header {
157
157
  }
158
158
  }
159
159
 
160
- }`;var hr=c`@layer overlay {
160
+ }`;var fr=c`@layer overlay {
161
161
 
162
162
  :host {
163
- ${Kt(Jt())}
163
+ ${Qt(Kt())}
164
164
  }
165
165
 
166
- }`;var ur=c`@layer view {
166
+ }`;var br=c`@layer view {
167
167
 
168
168
  :host {
169
169
  opacity: 0.8;
@@ -232,14 +232,14 @@ ${Y}
232
232
  [hidden] { display: none !important; }
233
233
  }
234
234
 
235
- `;var S=class extends B{context};var Qt=class extends f(t=>(e,s)=>{t.name("shiny-button"),t.styles(A,e.theme,ur);let o=t.attrs.spec({disabled:Boolean,hidden:Boolean});return h`
235
+ `;var S=class extends N{context};var te=class extends f(t=>(e,o)=>{t.name("shiny-button"),t.styles(A,e.theme,br);let s=t.attrs.spec({disabled:Boolean,hidden:Boolean});return h`
236
236
  <button
237
237
  part=button
238
- ?disabled="${o.disabled}"
239
- ?hidden="${o.hidden}">
240
- <slot>${s}</slot>
238
+ ?disabled="${s.disabled}"
239
+ ?hidden="${s.hidden}">
240
+ <slot>${o}</slot>
241
241
  </button>
242
- `}).component(S).props(t=>[t.context]){};var dr=c`@layer view {
242
+ `}).component(S).props(t=>[t.context]){};var gr=c`@layer view {
243
243
 
244
244
  button {
245
245
  background: transparent;
@@ -281,16 +281,17 @@ svg {
281
281
  height: 1em;
282
282
  }
283
283
 
284
- }`;var ye=C`<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="icon icon-tabler icons-tabler-outline icon-tabler-clipboard"><path stroke="none" d="M0 0h24v24H0z" fill="none"/><path d="M9 5h-2a2 2 0 0 0 -2 2v12a2 2 0 0 0 2 2h10a2 2 0 0 0 2 -2v-12a2 2 0 0 0 -2 -2h-2" /><path d="M9 3m0 2a2 2 0 0 1 2 -2h2a2 2 0 0 1 2 2v0a2 2 0 0 1 -2 2h-2a2 2 0 0 1 -2 -2z" /></svg>`;var mr=C`<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="currentColor" class="icon icon-tabler icons-tabler-filled icon-tabler-clipboard-x"><path stroke="none" d="M0 0h24v24H0z" fill="none"/><path d="M17.997 4.17a3 3 0 0 1 2.003 2.83v12a3 3 0 0 1 -3 3h-10a3 3 0 0 1 -3 -3v-12a3 3 0 0 1 2.003 -2.83a4 4 0 0 0 3.997 3.83h4a4 4 0 0 0 3.98 -3.597zm-7.29 7.123a1 1 0 0 0 -1.414 0l-.083 .094a1 1 0 0 0 .083 1.32l1.292 1.293l-1.292 1.293a1 1 0 0 0 0 1.414l.094 .083a1 1 0 0 0 1.32 -.083l1.293 -1.293l1.293 1.293a1 1 0 0 0 1.414 0l.083 -.094a1 1 0 0 0 -.083 -1.32l-1.293 -1.293l1.293 -1.293a1 1 0 0 0 0 -1.414l-.094 -.083a1 1 0 0 0 -1.32 .083l-1.293 1.292zm3.293 -9.293a2 2 0 1 1 0 4h-4a2 2 0 1 1 0 -4z" /></svg>`;var fr=C`<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="currentColor" class="icon icon-tabler icons-tabler-filled icon-tabler-clipboard-check"><path stroke="none" d="M0 0h24v24H0z" fill="none"/><path d="M17.997 4.17a3 3 0 0 1 2.003 2.83v12a3 3 0 0 1 -3 3h-10a3 3 0 0 1 -3 -3v-12a3 3 0 0 1 2.003 -2.83a4 4 0 0 0 3.997 3.83h4a4 4 0 0 0 3.98 -3.597zm-3.704 7.123l-3.293 3.292l-1.293 -1.292a1 1 0 1 0 -1.414 1.414l2 2a1 1 0 0 0 1.414 0l4 -4a1 1 0 0 0 -1.414 -1.414m-.293 -9.293a2 2 0 1 1 0 4h-4a2 2 0 1 1 0 -4z" /></svg>`;var Gt=class extends f(t=>(e,s,o=1e3)=>{t.name("shiny-copy"),t.styles(A,e.theme,dr);let n=()=>s===void 0?"invalid":"neutral",i=t.signal(n()),l=t.once(()=>O(o,()=>i.set(n()))),a=t.once(()=>async p=>{await i.set(p),await l()});async function u(){if(s!==void 0)try{if(t.attrs.booleans.fail)throw new Error("copy failed on purpose for testing purposes");await navigator.clipboard.writeText(s),await a("good")}catch(p){console.error(p),await a("bad")}}let g=(()=>{switch(i.get()){case"neutral":return ye;case"invalid":return ye;case"good":return fr;case"bad":return mr;default:throw new Error("unknown copy status")}})();return h`
285
- <button data-status="${i.get()}" @click="${u}">
284
+ }`;var ve=C`<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="icon icon-tabler icons-tabler-outline icon-tabler-clipboard"><path stroke="none" d="M0 0h24v24H0z" fill="none"/><path d="M9 5h-2a2 2 0 0 0 -2 2v12a2 2 0 0 0 2 2h10a2 2 0 0 0 2 -2v-12a2 2 0 0 0 -2 -2h-2" /><path d="M9 3m0 2a2 2 0 0 1 2 -2h2a2 2 0 0 1 2 2v0a2 2 0 0 1 -2 2h-2a2 2 0 0 1 -2 -2z" /></svg>`;var yr=C`<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="currentColor" class="icon icon-tabler icons-tabler-filled icon-tabler-clipboard-x"><path stroke="none" d="M0 0h24v24H0z" fill="none"/><path d="M17.997 4.17a3 3 0 0 1 2.003 2.83v12a3 3 0 0 1 -3 3h-10a3 3 0 0 1 -3 -3v-12a3 3 0 0 1 2.003 -2.83a4 4 0 0 0 3.997 3.83h4a4 4 0 0 0 3.98 -3.597zm-7.29 7.123a1 1 0 0 0 -1.414 0l-.083 .094a1 1 0 0 0 .083 1.32l1.292 1.293l-1.292 1.293a1 1 0 0 0 0 1.414l.094 .083a1 1 0 0 0 1.32 -.083l1.293 -1.293l1.293 1.293a1 1 0 0 0 1.414 0l.083 -.094a1 1 0 0 0 -.083 -1.32l-1.293 -1.293l1.293 -1.293a1 1 0 0 0 0 -1.414l-.094 -.083a1 1 0 0 0 -1.32 .083l-1.293 1.292zm3.293 -9.293a2 2 0 1 1 0 4h-4a2 2 0 1 1 0 -4z" /></svg>`;var xr=C`<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="currentColor" class="icon icon-tabler icons-tabler-filled icon-tabler-clipboard-check"><path stroke="none" d="M0 0h24v24H0z" fill="none"/><path d="M17.997 4.17a3 3 0 0 1 2.003 2.83v12a3 3 0 0 1 -3 3h-10a3 3 0 0 1 -3 -3v-12a3 3 0 0 1 2.003 -2.83a4 4 0 0 0 3.997 3.83h4a4 4 0 0 0 3.98 -3.597zm-3.704 7.123l-3.293 3.292l-1.293 -1.292a1 1 0 1 0 -1.414 1.414l2 2a1 1 0 0 0 1.414 0l4 -4a1 1 0 0 0 -1.414 -1.414m-.293 -9.293a2 2 0 1 1 0 4h-4a2 2 0 1 1 0 -4z" /></svg>`;var ee=class extends f(t=>(e,o,s=1e3)=>{t.name("shiny-copy"),t.styles(A,e.theme,gr);let n=()=>o===void 0?"invalid":"neutral",i=t.signal(n()),l=t.once(()=>M(s,()=>i.set(n()))),a=t.once(()=>async p=>{await i.set(p),await l()});async function d(){if(o!==void 0)try{if(t.attrs.booleans.fail)throw new Error("copy failed on purpose for testing purposes");await navigator.clipboard.writeText(o),await a("good")}catch(p){console.error(p),await a("bad")}}let g=(()=>{switch(i.get()){case"neutral":return ve;case"invalid":return ve;case"good":return xr;case"bad":return yr;default:throw new Error("unknown copy status")}})();return h`
285
+ <button data-status="${i.get()}" @click="${d}">
286
286
  ${g}
287
287
  </button>
288
- `}).component(class extends S{#t=d.attrs(this).spec({text:String,ms:Number});get text(){return this.#t.text}set text(t){this.#t.text=t}get ms(){return this.#t.ms}set ms(t){this.#t.ms=t}}).props(t=>[t.context,t.text,t.ms]){};var br=c`@layer view {
288
+ `}).component(class extends S{#t=u.attrs(this).spec({text:String,ms:Number});get text(){return this.#t.text}set text(t){this.#t.text=t}get ms(){return this.#t.ms}set ms(t){this.#t.ms=t}}).props(t=>[t.context,t.text,t.ms]){};var vr=c`@layer view {
289
289
 
290
290
  :host {
291
291
  display: block;
292
292
  width: 100%;
293
293
  height: 100%;
294
+ --slate-bg: transparent;
294
295
  --button-size: 2em;
295
296
  --blanket-backdrop-filter: blur(0.5em);
296
297
  --slate-hidden-opacity: 1;
@@ -349,6 +350,7 @@ svg {
349
350
  display: block;
350
351
  height: 100%;
351
352
  overflow-y: auto;
353
+ background: var(--slate-bg);
352
354
  }
353
355
 
354
356
  > button {
@@ -406,15 +408,15 @@ svg {
406
408
  }
407
409
  }
408
410
 
409
- }`;var xt=class{$open=v(!1);constructor(t=!1){t&&this.$open.set(!0)}get isOpen(){return this.$open.get()}async setOpen(t){return this.$open.set(t)}open=async()=>{await this.setOpen(!0)};close=async()=>{await this.setOpen(!1)};toggle=async()=>this.setOpen(!this.isOpen)};var te=class{#t;constructor(t){this.#t=t.attachInternals().states}assign(...t){this.#t.forEach(e=>this.#t.delete(e));for(let e of t)this.#t.add(e);return this}};var gr=C`<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="icon icon-tabler icons-tabler-outline icon-tabler-x"><path stroke="none" d="M0 0h24v24H0z" fill="none"/><path d="M18 6l-12 12" /><path d="M6 6l12 12" /></svg>`;var yr=C`<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="icon icon-tabler icons-tabler-outline icon-tabler-menu-2"><path stroke="none" d="M0 0h24v24H0z" fill="none"/><path d="M4 6l16 0" /><path d="M4 12l16 0" /><path d="M4 18l16 0" /></svg>`;var ee=class extends f(t=>(e,s)=>{t.name("shiny-drawer"),t.styles(A,e.theme,br);let o=t.once(()=>new te(t.element)),n=s.button??t.attrs.booleans.button,i=s.side??(t.attrs.strings.side==="right"?"right":"left"),l=t.once(()=>s.control??new xt);o.assign(i),t.mount(()=>d.events(window,{keydown:u=>{u.code==="Escape"&&l.close()}})),d.attrs(t.element).booleans.open=l.isOpen;function a(){return h`
410
- <button @click="${l.toggle}">
411
+ }`;var wt=class{$open=w(!1);constructor(t=!1){t&&this.$open.set(!0)}get isOpen(){return this.$open.get()}async setOpen(t){return this.$open.set(t)}open=async()=>{await this.setOpen(!0)};close=async()=>{await this.setOpen(!1)};toggle=async()=>this.setOpen(!this.isOpen)};var re=class{#t;constructor(t){this.#t=t.attachInternals().states}assign(...t){this.#t.forEach(e=>this.#t.delete(e));for(let e of t)this.#t.add(e);return this}};var wr=C`<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="icon icon-tabler icons-tabler-outline icon-tabler-x"><path stroke="none" d="M0 0h24v24H0z" fill="none"/><path d="M18 6l-12 12" /><path d="M6 6l12 12" /></svg>`;var $r=C`<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="icon icon-tabler icons-tabler-outline icon-tabler-menu-2"><path stroke="none" d="M0 0h24v24H0z" fill="none"/><path d="M4 6l16 0" /><path d="M4 12l16 0" /><path d="M4 18l16 0" /></svg>`;var oe=class extends f(t=>(e,o)=>{t.name("shiny-drawer"),t.styles(A,e.theme,vr);let s=t.once(()=>new re(t.element)),n=o.button??t.attrs.booleans.button,i=o.side??(t.attrs.strings.side==="right"?"right":"left"),l=t.once(()=>o.control??new wt);s.assign(i,l.isOpen?"opened":"closed"),t.mount(()=>u.events(window,{keydown:d=>{d.code==="Escape"&&l.close()}})),u.attrs(t.element).booleans.open=l.isOpen;function a(){return h`
412
+ <button part=button @click="${l.toggle}">
411
413
  ${l.isOpen?h`
412
414
  <slot name=button-x>
413
- ${gr}
415
+ ${wr}
414
416
  </slot>
415
417
  `:h`
416
418
  <slot name=button>
417
- ${yr}
419
+ ${$r}
418
420
  </slot>
419
421
  `}
420
422
  </button>
@@ -431,18 +433,18 @@ svg {
431
433
  </div>
432
434
  </div>
433
435
  </div>
434
- `}).component(class extends S{#t=d.attrs(this).spec({open:Boolean,button:Boolean,side:String});get button(){return this.#t.button}set button(t){this.#t.button=t}get side(){return this.#t.side==="right"?"right":"left"}set side(t){this.#t.side=t}control=new xt(this.#t.open);get isOpen(){return this.control.isOpen}get toggle(){return this.control.toggle}get open(){return this.control.open}get close(){return this.control.close}}).props(t=>[t.context,{control:t.control}]){};var xr=c`@layer view {
436
+ `}).component(class extends S{#t=u.attrs(this).spec({open:Boolean,button:Boolean,side:String});get button(){return this.#t.button}set button(t){this.#t.button=t}get side(){return this.#t.side==="right"?"right":"left"}set side(t){this.#t.side=t}control=new wt(this.#t.open);get isOpen(){return this.control.isOpen}get toggle(){return this.control.toggle}get open(){return this.control.open}get close(){return this.control.close}}).props(t=>[t.context,{control:t.control}]){};var _r=c`@layer view {
435
437
 
436
438
  button {
437
439
  padding: 1em;
438
440
  min-width: 4em;
439
441
  }
440
442
 
441
- }`;var re=class extends f(t=>(e,s)=>{t.name("shiny-example"),t.styles(A,e.theme,xr);let o=t.signal(s);return h`
442
- <button @click="${()=>{o.value++}}">
443
- ${o()}
443
+ }`;var se=class extends f(t=>(e,o=1)=>{t.name("shiny-example"),t.styles(A,e.theme,_r);let s=t.signal(o);return h`
444
+ <button @click="${()=>{s.value++}}">
445
+ ${s()}
444
446
  </button>
445
- `}).component(class extends S{attrs=d.attrs(this).spec({start:Number})}).props(t=>[t.context,t.attrs.start??1]){};var vr=c`@layer view {
447
+ `}).component(class extends S{attrs=u.attrs(this).spec({start:Number})}).props(t=>[t.context,t.attrs.start]){};var Ar=c`@layer view {
446
448
 
447
449
  :host {
448
450
  display: inline-flex;
@@ -484,10 +486,10 @@ slot[part="tabs"] {
484
486
  }
485
487
  }
486
488
 
487
- } `;var E=class{length=1;$index=v(0);constructor(t=0){this.$index.value=t}clamp(t){return t=Math.min(t,this.length-1),t=Math.max(t,0),t}get index(){return this.clamp(this.$index.get())}async setIndex(t){return this.$index.set(t)}async shimmy(t){let e=this.clamp(this.index+t);return this.setIndex(e)}};var se=class extends f(t=>(e,s)=>{t.name("shiny-tabs"),t.styles(A,e.theme,vr);let o=t.attrs.spec({index:Number}),n=t.once(()=>s??new E(o.index??0)),i=t.signal([]),l=t.signal([]);async function a(p){let b=p.currentTarget;await i.set(b.assignedElements())}async function u(p){let b=p.currentTarget;await l.set(b.assignedElements())}o.index=n.$index(),n.length=i().length;function g(p,b){let w=n.clamp(p+b);return w===p?!1:w===n.index}for(let[p,b]of i().entries()){let w=p===n.index,k=d.attrs(b);k.booleans.disabled=w,k.booleans["data-active"]=w,k.booleans["data-first"]=p===0,k.booleans["data-last"]=p===n.length-1,k.booleans["data-next-is-active"]=g(p,1),k.booleans["data-previous-is-active"]=g(p,-1),b.onclick=()=>n.setIndex(p)}for(let[p,b]of l().entries()){let w=p===n.index;d.attrs(b).booleans.active=w,d.attrs(b).booleans.hidden=!w}return h`
489
+ } `;var T=class{length=1;$index=w(0);constructor(t=0){this.$index.value=t}clamp(t){return t=Math.min(t,this.length-1),t=Math.max(t,0),t}get index(){return this.clamp(this.$index.get())}async setIndex(t){return this.$index.set(t)}async shimmy(t){let e=this.clamp(this.index+t);return this.setIndex(e)}};var ne=class extends f(t=>(e,o)=>{t.name("shiny-tabs"),t.styles(A,e.theme,Ar);let s=t.attrs.spec({index:Number}),n=t.once(()=>o??new T(s.index??0)),i=t.signal([]),l=t.signal([]);async function a(p){let b=p.currentTarget;await i.set(b.assignedElements())}async function d(p){let b=p.currentTarget;await l.set(b.assignedElements())}s.index=n.$index(),n.length=i().length;function g(p,b){let $=n.clamp(p+b);return $===p?!1:$===n.index}for(let[p,b]of i().entries()){let $=p===n.index,k=u.attrs(b);k.booleans.disabled=$,k.booleans["data-active"]=$,k.booleans["data-first"]=p===0,k.booleans["data-last"]=p===n.length-1,k.booleans["data-next-is-active"]=g(p,1),k.booleans["data-previous-is-active"]=g(p,-1),b.onclick=()=>n.setIndex(p)}for(let[p,b]of l().entries()){let $=p===n.index;u.attrs(b).booleans.active=$,u.attrs(b).booleans.hidden=!$}return h`
488
490
  <slot part=tabs @slotchange="${a}"></slot>
489
- <slot part=panels name=panel @slotchange="${u}"></slot>
490
- `}).component(class extends S{control=new E;get index(){return this.control.index}get length(){return this.control.length}setIndex=this.control.setIndex.bind(this.control);shimmy=this.control.shimmy.bind(this.control)}).props(t=>[t.context,t.control]){};var wr={ShinyButton:Qt,ShinyCopy:Gt,ShinyDrawer:ee,ShinyExample:re,ShinyTabs:se};function xe(r){let t=ar(r,wr),e=ir(t);return{components:t,views:e}}var T=xe({theme:cr}).views,ve=[["aura",T],["plain",xe({theme:hr}).views]];var $r=c`@layer view {
491
+ <slot part=panels name=panel @slotchange="${d}"></slot>
492
+ `}).component(class extends S{control=new T;get index(){return this.control.index}get length(){return this.control.length}setIndex=this.control.setIndex.bind(this.control);shimmy=this.control.shimmy.bind(this.control)}).props(t=>[t.context,t.control]){};var Sr={ShinyButton:te,ShinyCopy:ee,ShinyDrawer:oe,ShinyExample:se,ShinyTabs:ne};function we(r){let t=hr(r,Sr),e=cr(t);return{components:t,views:e}}var z=we({theme:mr}).views,$e=[["aura",z],["plain",we({theme:fr}).views]];var kr=c`@layer view {
491
493
 
492
494
  :host {
493
495
  display: flex;
@@ -503,6 +505,7 @@ slot[part="tabs"] {
503
505
  .meta {
504
506
  display: flex;
505
507
  flex-direction: column;
508
+ justify-content: space-between;
506
509
  gap: 1em;
507
510
  }
508
511
 
@@ -512,6 +515,7 @@ slot[part="tabs"] {
512
515
  flex-direction: column;
513
516
  gap: 0.5em;
514
517
  padding: 0.5em;
518
+ max-height: 20em;
515
519
 
516
520
  background: #0002;
517
521
  box-shadow: inset 0.2em 0.3em 2em #0004;
@@ -531,6 +535,7 @@ slot[part="tabs"] {
531
535
  }
532
536
 
533
537
  > code {
538
+ flex: 1 1 auto;
534
539
  display: block;
535
540
 
536
541
  white-space: pre;
@@ -565,14 +570,14 @@ slot[part="tabs"] {
565
570
  }
566
571
  }
567
572
 
568
- }`;var _r=f(r=>(t,e,s)=>{r.name(`exhibit-${t.label}`),r.styles(A,$r,s,t.style);let o=r.once(()=>new E),n=t.snippets.at(o.index),i=n?Fe(n.code).trim():"";return h`
573
+ }`;var Cr=f(r=>(t,e,o)=>{r.name(`exhibit-${t.label}`),r.styles(A,kr,o,t.style);let s=r.once(()=>new T),n=t.snippets.at(s.index),i=n?Ge(n.code).trim():"";return h`
569
574
  <div class=meta>
570
575
  ${t.explain}
571
576
 
572
577
  <div class=snippet>
573
578
  <header>
574
- ${T.ShinyTabs.props(o).attr("snug").children(t.snippets.map(l=>T.ShinyButton.props().attr("plain").children(l.label).render())).render()}
575
- ${T.ShinyCopy(i)}
579
+ ${z.ShinyTabs.props(s).attr("snug").children(t.snippets.map(l=>z.ShinyButton.props().attr("plain").children(l.label).render())).render()}
580
+ ${z.ShinyCopy(i)}
576
581
  </header>
577
582
  <code>${i}</code>
578
583
  </div>
@@ -581,37 +586,42 @@ slot[part="tabs"] {
581
586
  <div class=box>
582
587
  ${t.presentation(e)}
583
588
  </div>
584
- `});var H=f(r=>t=>{r.name(`showcase-${t.name}`),r.styles(A,pr);let e=r.once(()=>new E),s=r.once(()=>new E),o=ve.at(s.index)[1],n=t.exhibits.at(e.index);return h`
589
+ `});var q=f(r=>t=>{r.name(`showcase-${t.name}`),r.styles(A,dr);let e=r.once(()=>new T),o=r.once(()=>new T),s=$e.at(o.index)[1],n=t.exhibits.at(e.index);return h`
585
590
  <header>
586
591
  <h2>✨shiny-${t.name}✨</h2>
587
- ${T.ShinyTabs.props(e).attr("snug").children(t.exhibits.map(i=>T.ShinyButton.props().attr("sad").children(i.label).render())).render()}
588
- ${T.ShinyTabs.props(s).attr("snug").children(ve.map(([i])=>T.ShinyButton.props().children(i).render())).render()}
592
+ ${z.ShinyTabs.props(e).attr("snug").children(t.exhibits.map(i=>z.ShinyButton.props().attr("sad").children(i.label).render())).render()}
593
+ ${z.ShinyTabs.props(o).attr("snug").children($e.map(([i])=>z.ShinyButton.props().children(i).render())).render()}
589
594
  </header>
590
595
 
591
- ${_r(n,o,t.style)}
592
- `});var Ar=`
593
- shiny-copy {
596
+ ${Cr(n,s,t.style)}
597
+ `});var Er=`
598
+ [view="shiny-copy"] {
594
599
  font-size: 1em;
595
600
  --happy: #0fa;
596
601
  --angry: #f50;
597
602
  --lame: #8888;
598
603
  --inactive-opacity: 0.5;
599
604
  }
600
- `,Sr=()=>H({name:"copy",style:c`
605
+ `,Tr=()=>q({name:"copy",style:c`
601
606
  .box {
602
607
  > * { font-size: 4em; }
603
608
  }
604
- `,exhibits:[{label:"succeed",explain:h`<p>click-to-copy text button.</p>`,snippets:[{label:"html",code:'<shiny-copy text="hello world"></shiny-button>'},{label:"view",code:'ShinyCopy("hello world")'},{label:"css",code:Ar}],style:c``,presentation:r=>h`
609
+ `,exhibits:[{label:"succeed",explain:h`<p>click-to-copy text button.</p>`,snippets:[{label:"html",code:'<shiny-copy text="hello world"></shiny-button>'},{label:"view",code:'ShinyCopy("hello world")'},{label:"css",code:Er}],style:c``,presentation:r=>h`
605
610
  ${r.ShinyCopy("hello world")}
606
- `},{label:"fail",explain:h`<p>copy text button, deliberately fails so you can see.</p>`,snippets:[{label:"html",code:"<shiny-copy fail></shiny-button>"},{label:"view",code:'ShinyCopy.props("").attr("fail").render()'},{label:"css",code:Ar}],style:c``,presentation:r=>h`
611
+ `},{label:"fail",explain:h`<p>copy text button, deliberately fails so you can see.</p>`,snippets:[{label:"html",code:"<shiny-copy fail></shiny-button>"},{label:"view",code:'ShinyCopy.props("").attr("fail").render()'},{label:"css",code:Er}],style:c``,presentation:r=>h`
607
612
  ${r.ShinyCopy.props("").attr("fail").render()}
608
- `}]});var we=N(),$e=N(),_e=N(),Ae=`
609
- shiny-tabs {
613
+ `}]});var _e=H(),Ae=H(),Se=H(),ke=`
614
+ [view="shiny-tabs"] {
610
615
  &::part(tabs) {}
611
616
  &::part(panels) {}
612
- > shiny-button {}
617
+
618
+ /* buttons */
619
+ > :not([slot="panel"]) {}
620
+
621
+ /* panels */
622
+ > [slot="panel"] {}
613
623
  }
614
- `,kr=()=>H({name:"tabs",style:c`
624
+ `,zr=()=>q({name:"tabs",style:c`
615
625
  .box {
616
626
  place-content: start start;
617
627
  p { margin-top: 0.5em; }
@@ -639,14 +649,14 @@ slot[part="tabs"] {
639
649
  <div slot=panel>panel3</div>
640
650
  \`)
641
651
  .render()
642
- `},{label:"css",code:Ae}],style:c``,presentation:r=>h`
652
+ `},{label:"css",code:ke}],style:c``,presentation:r=>h`
643
653
  ${r.ShinyTabs.props().attr("snug").children(h`
644
654
  ${r.ShinyButton.props().children("tab1").render()}
645
655
  ${r.ShinyButton.props().children("tab2").render()}
646
656
  ${r.ShinyButton.props().children("tab3").render()}
647
- <p slot=panel class=lipsum>${we}</p>
648
- <p slot=panel class=lipsum>${$e}</p>
649
657
  <p slot=panel class=lipsum>${_e}</p>
658
+ <p slot=panel class=lipsum>${Ae}</p>
659
+ <p slot=panel class=lipsum>${Se}</p>
650
660
  `).render()}
651
661
  `},{label:"regular",explain:h`<p>button bar. panels optional.</p>`,snippets:[{label:"html",code:`
652
662
  <shiny-tabs>
@@ -669,14 +679,14 @@ slot[part="tabs"] {
669
679
  <div slot=panel>panel3</div>
670
680
  \`)
671
681
  .render()
672
- `},{label:"css",code:Ae}],style:c``,presentation:r=>h`
682
+ `},{label:"css",code:ke}],style:c``,presentation:r=>h`
673
683
  ${r.ShinyTabs.props().children(h`
674
684
  <button>tab1</button>
675
685
  <button>tab2</button>
676
686
  <button>tab3</button>
677
- <p slot=panel class=lipsum>${we}</p>
678
- <p slot=panel class=lipsum>${$e}</p>
679
687
  <p slot=panel class=lipsum>${_e}</p>
688
+ <p slot=panel class=lipsum>${Ae}</p>
689
+ <p slot=panel class=lipsum>${Se}</p>
680
690
  `).render()}
681
691
  `},{label:"regular snug",explain:h`<p>button bar. panels optional.</p>`,snippets:[{label:"html",code:`
682
692
  <shiny-tabs snug>
@@ -700,34 +710,34 @@ slot[part="tabs"] {
700
710
  <div slot=panel>panel3</div>
701
711
  \`)
702
712
  .render()
703
- `},{label:"css",code:Ae}],style:c``,presentation:r=>h`
713
+ `},{label:"css",code:ke}],style:c``,presentation:r=>h`
704
714
  ${r.ShinyTabs.props().attr("snug").children(h`
705
715
  <button>tab1</button>
706
716
  <button>tab2</button>
707
717
  <button>tab3</button>
708
- <p slot=panel class=lipsum>${we}</p>
709
- <p slot=panel class=lipsum>${$e}</p>
710
718
  <p slot=panel class=lipsum>${_e}</p>
719
+ <p slot=panel class=lipsum>${Ae}</p>
720
+ <p slot=panel class=lipsum>${Se}</p>
711
721
  `).render()}
712
- `}]});var Se=`
713
- shiny-button {
722
+ `}]});var Ce=`
723
+ [view="shiny-button"] {
714
724
  --padding: 0.3em;
715
725
  font-size: 1em;
716
726
  color: currentColor;
717
727
  background: transparent;
718
728
  }
719
- `,Cr=()=>H({name:"button",style:c`
729
+ `,Or=()=>q({name:"button",style:c`
720
730
  .box {
721
731
  > * { font-size: 1.5em; }
722
732
  }
723
- `,exhibits:[{label:"basic",explain:h`<p>clicky-clacky pressy button.</p>`,snippets:[{label:"html",code:"<shiny-button>button</shiny-button>"},{label:"view",code:'ShinyButton("button")'},{label:"css",code:Se}],style:c``,presentation:r=>h`
733
+ `,exhibits:[{label:"basic",explain:h`<p>clicky-clacky pressy button.</p>`,snippets:[{label:"html",code:"<shiny-button>button</shiny-button>"},{label:"view",code:'ShinyButton("button")'},{label:"css",code:Ce}],style:c``,presentation:r=>h`
724
734
  ${r.ShinyButton.props().children("button").render()}
725
735
  `},{label:"gradient",explain:h`<p>added <code>gradient</code> attribute.</p>`,snippets:[{label:"html",code:"<shiny-button gradient>button</shiny-button>"},{label:"view",code:`
726
736
  ShinyButton
727
737
  .props("button")
728
738
  .attr("gradient")
729
739
  .render()
730
- `},{label:"css",code:Se}],style:c``,presentation:r=>h`
740
+ `},{label:"css",code:Ce}],style:c``,presentation:r=>h`
731
741
  ${r.ShinyButton.props().attr("gradient").children("button").render()}
732
742
  `},{label:"catalog",explain:h`<p>clicky-clacky pressy buttons.</p>`,snippets:[{label:"html",code:`
733
743
  <shiny-button calm gradient>calm</shiny-button>
@@ -747,8 +757,8 @@ slot[part="tabs"] {
747
757
  ShinyButton.props().attr("quirky").attr("gradient").children("quirky").render(),
748
758
  ShinyButton.props().attr("plain").children("plain").render(),
749
759
  ]
750
- `},{label:"css",code:Se}],style:c``,presentation:r=>[r.ShinyButton.props().attr("calm").attr("gradient").children("calm").render(),r.ShinyButton.props().attr("angry").attr("gradient").children("angry").render(),r.ShinyButton.props().attr("happy").attr("gradient").children("happy").render(),r.ShinyButton.props().attr("zesty").attr("gradient").children("zesty").render(),r.ShinyButton.props().attr("sad").attr("gradient").children("sad").render(),r.ShinyButton.props().attr("quirky").attr("gradient").children("quirky").render(),r.ShinyButton.props().attr("plain").children("plain").render()]}]});var ns=N(),is=N(),as=N(),ls=`
751
- shiny-drawer {
760
+ `},{label:"css",code:Ce}],style:c``,presentation:r=>[r.ShinyButton.props().attr("calm").attr("gradient").children("calm").render(),r.ShinyButton.props().attr("angry").attr("gradient").children("angry").render(),r.ShinyButton.props().attr("happy").attr("gradient").children("happy").render(),r.ShinyButton.props().attr("zesty").attr("gradient").children("zesty").render(),r.ShinyButton.props().attr("sad").attr("gradient").children("sad").render(),r.ShinyButton.props().attr("quirky").attr("gradient").children("quirky").render(),r.ShinyButton.props().attr("plain").children("plain").render()]}]});var ao=H(),lo=H(),po=H(),co=`
761
+ [view="shiny-drawer"] {
752
762
  --button-size: 2em;
753
763
  --anim-duration: 200ms;
754
764
  --slate-hidden-opacity: 1;
@@ -758,8 +768,26 @@ slot[part="tabs"] {
758
768
  transparent,
759
769
  var(--bg)
760
770
  );
771
+ --slate-bg: linear-gradient(
772
+ to top right,
773
+ color-mix(in oklab, var(--calm), #222 50%),
774
+ color-mix(in oklab, var(--calm), #888 50%)
775
+ );
776
+
777
+ &:state(opened) {}
778
+ &:state(closed) {}
779
+
780
+ &:state(left) {}
781
+ &:state(right) {}
782
+
783
+ &::part(tray) {}
784
+ &::part(blanket) {}
785
+ &::part(button) {}
786
+ &::part(slate) {}
787
+
788
+ &::part(plate) {}
761
789
  }
762
- `,Er=r=>({label:r,explain:h`<p>slide-out panel. button optional.</p>`,snippets:[{label:"html",code:`
790
+ `,Pr=r=>({label:r,explain:h`<p>slide-out panel. button optional.</p>`,snippets:[{label:"html",code:`
763
791
  <shiny-drawer button side=${r}>
764
792
  <header>example</header>
765
793
  <section slot=plate>lorem kettlebell..</section>
@@ -772,19 +800,19 @@ slot[part="tabs"] {
772
800
  <section slot=plate>lorem kettlebell..</section>
773
801
  \`)
774
802
  .render()
775
- `},{label:"css",code:ls}],style:c``,presentation:t=>h`
803
+ `},{label:"css",code:co}],style:c``,presentation:t=>h`
776
804
  ${t.ShinyDrawer.props({button:!0,side:r}).children(h`
777
805
  <header>
778
806
  <h2>example drawer</h2>
779
807
  <p>you can put any content in here.</p>
780
- <p class=lipsum>${ns}</p>
808
+ <p class=lipsum>${ao}</p>
781
809
  </header>
782
810
  <section slot=plate>
783
- <p class=lipsum>${is}</p>
784
- <p class=lipsum>${as}</p>
811
+ <p class=lipsum>${lo}</p>
812
+ <p class=lipsum>${po}</p>
785
813
  </section>
786
814
  `).render()}
787
- `}),Tr=()=>H({name:"drawer",style:c`
815
+ `}),Rr=()=>q({name:"drawer",style:c`
788
816
  .box sly-view {
789
817
  border-radius: 0.5em;
790
818
  overflow: hidden;
@@ -804,7 +832,7 @@ slot[part="tabs"] {
804
832
  > * + * { margin-top: 0.5em; }
805
833
  }
806
834
  }
807
- `,exhibits:[Er("left"),Er("right")]});d.register({ShinyDemo:f.component(r=>(r.styles(c`
835
+ `,exhibits:[Pr("left"),Pr("right")]});u.register({ShinyDemo:f.component(r=>(r.styles(c`
808
836
  :host {
809
837
  display: flex;
810
838
  flex-direction: column;
@@ -827,7 +855,7 @@ slot[part="tabs"] {
827
855
  display: flex;
828
856
  }
829
857
  }
830
- `),ge.takeAll(),[Cr(),Sr(),Tr(),kr()]))});console.log("\u2728shiny\u2728");
858
+ `),xe.takeAll(),[Or(),Tr(),Rr(),zr()]))});console.log("\u2728shiny\u2728");
831
859
  /*! Bundled license information:
832
860
 
833
861
  @lit/reactive-element/css-tag.js: