@e280/shiny 0.1.0-1
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.
- package/LICENSE +22 -0
- package/README.md +10 -0
- package/package.json +62 -0
- package/s/demo/demo.bundle.ts +42 -0
- package/s/demo/demo.css +120 -0
- package/s/demo/views/demonstration/style.css.ts +108 -0
- package/s/demo/views/demonstration/view.ts +49 -0
- package/s/icons/tabler/ABOUT.md +7 -0
- package/s/icons/tabler/LICENSE +23 -0
- package/s/icons/tabler/clipboard-check-filled.svg.ts +4 -0
- package/s/icons/tabler/clipboard-x-filled.svg.ts +4 -0
- package/s/icons/tabler/clipboard.svg.ts +4 -0
- package/s/icons/tabler/copy.svg.ts +4 -0
- package/s/index.html.ts +37 -0
- package/s/index.ts +7 -0
- package/s/tests.test.ts +5 -0
- package/s/themes/basic.css.ts +18 -0
- package/s/themes/index.barrel.ts +3 -0
- package/s/themes/index.ts +3 -0
- package/s/tools/untab.ts +30 -0
- package/s/ui/components.ts +9 -0
- package/s/ui/copy/component.ts +66 -0
- package/s/ui/copy/style.css.ts +46 -0
- package/s/ui/example/component.ts +25 -0
- package/s/ui/example/style.css.ts +11 -0
- package/s/ui/framework.ts +8 -0
- package/s/ui/themers.ts +28 -0
- package/x/demo/demo.bundle.d.ts +1 -0
- package/x/demo/demo.bundle.js +37 -0
- package/x/demo/demo.bundle.js.map +1 -0
- package/x/demo/demo.bundle.min.js +277 -0
- package/x/demo/demo.bundle.min.js.map +7 -0
- package/x/demo/demo.css +120 -0
- package/x/demo/views/demonstration/style.css.d.ts +2 -0
- package/x/demo/views/demonstration/style.css.js +107 -0
- package/x/demo/views/demonstration/style.css.js.map +1 -0
- package/x/demo/views/demonstration/view.d.ts +10 -0
- package/x/demo/views/demonstration/view.js +36 -0
- package/x/demo/views/demonstration/view.js.map +1 -0
- package/x/icons/tabler/clipboard-check-filled.svg.d.ts +2 -0
- package/x/icons/tabler/clipboard-check-filled.svg.js +3 -0
- package/x/icons/tabler/clipboard-check-filled.svg.js.map +1 -0
- package/x/icons/tabler/clipboard-x-filled.svg.d.ts +2 -0
- package/x/icons/tabler/clipboard-x-filled.svg.js +3 -0
- package/x/icons/tabler/clipboard-x-filled.svg.js.map +1 -0
- package/x/icons/tabler/clipboard.svg.d.ts +2 -0
- package/x/icons/tabler/clipboard.svg.js +3 -0
- package/x/icons/tabler/clipboard.svg.js.map +1 -0
- package/x/icons/tabler/copy.svg.d.ts +2 -0
- package/x/icons/tabler/copy.svg.js +3 -0
- package/x/icons/tabler/copy.svg.js.map +1 -0
- package/x/index.d.ts +5 -0
- package/x/index.html +157 -0
- package/x/index.html.d.ts +2 -0
- package/x/index.html.js +33 -0
- package/x/index.html.js.map +1 -0
- package/x/index.js +6 -0
- package/x/index.js.map +1 -0
- package/x/tests.test.d.ts +1 -0
- package/x/tests.test.js +3 -0
- package/x/tests.test.js.map +1 -0
- package/x/themes/basic.css.d.ts +1 -0
- package/x/themes/basic.css.js +17 -0
- package/x/themes/basic.css.js.map +1 -0
- package/x/themes/index.barrel.d.ts +1 -0
- package/x/themes/index.barrel.js +2 -0
- package/x/themes/index.barrel.js.map +1 -0
- package/x/themes/index.d.ts +1 -0
- package/x/themes/index.js +2 -0
- package/x/themes/index.js.map +1 -0
- package/x/tools/untab.d.ts +1 -0
- package/x/tools/untab.js +26 -0
- package/x/tools/untab.js.map +1 -0
- package/x/ui/components.d.ts +6 -0
- package/x/ui/components.js +7 -0
- package/x/ui/components.js.map +1 -0
- package/x/ui/copy/component.d.ts +372 -0
- package/x/ui/copy/component.js +56 -0
- package/x/ui/copy/component.js.map +1 -0
- package/x/ui/copy/style.css.d.ts +2 -0
- package/x/ui/copy/style.css.js +45 -0
- package/x/ui/copy/style.css.js.map +1 -0
- package/x/ui/example/component.d.ts +371 -0
- package/x/ui/example/component.js +20 -0
- package/x/ui/example/component.js.map +1 -0
- package/x/ui/example/style.css.d.ts +2 -0
- package/x/ui/example/style.css.js +10 -0
- package/x/ui/example/style.css.js.map +1 -0
- package/x/ui/framework.d.ts +4 -0
- package/x/ui/framework.js +6 -0
- package/x/ui/framework.js.map +1 -0
- package/x/ui/themers.d.ts +8 -0
- package/x/ui/themers.js +12 -0
- package/x/ui/themers.js.map +1 -0
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
|
|
2
|
+
import {css} from "lit"
|
|
3
|
+
export default css`
|
|
4
|
+
|
|
5
|
+
button {
|
|
6
|
+
background: transparent;
|
|
7
|
+
border: none;
|
|
8
|
+
font-size: inherit;
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
button {
|
|
12
|
+
opacity: 0.5;
|
|
13
|
+
cursor: pointer;
|
|
14
|
+
cursor: copy;
|
|
15
|
+
|
|
16
|
+
color: inherit;
|
|
17
|
+
transition: all 300ms linear;
|
|
18
|
+
|
|
19
|
+
&:is(:hover, :focus-visible) {
|
|
20
|
+
opacity: 1;
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
[data-status="invalid"] {
|
|
25
|
+
color: var(--invalid);
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
[data-status="good"] {
|
|
29
|
+
opacity: 1;
|
|
30
|
+
color: var(--good);
|
|
31
|
+
filter: drop-shadow(0 0 0.3em color-mix(in oklab, transparent, currentColor 50%));
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
[data-status="bad"] {
|
|
35
|
+
opacity: 1;
|
|
36
|
+
color: var(--bad);
|
|
37
|
+
filter: drop-shadow(0 0 0.3em color-mix(in oklab, transparent, currentColor 50%));
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
svg {
|
|
41
|
+
width: 1em;
|
|
42
|
+
height: 1em;
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
`
|
|
46
|
+
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
|
|
2
|
+
import {dom, view} from "@e280/sly"
|
|
3
|
+
import {CSSResult, html} from "lit"
|
|
4
|
+
import styleCss from "./style.css.js"
|
|
5
|
+
import {ShinyElement} from "../framework.js"
|
|
6
|
+
|
|
7
|
+
export class ShinyExample extends (
|
|
8
|
+
view(use => (theme: CSSResult, start: number) => {
|
|
9
|
+
use.styles(theme, styleCss)
|
|
10
|
+
|
|
11
|
+
const $count = use.signal(start)
|
|
12
|
+
const increment = () => { $count.value++ }
|
|
13
|
+
|
|
14
|
+
return html`
|
|
15
|
+
<button @click="${increment}">
|
|
16
|
+
${$count()}
|
|
17
|
+
</button>
|
|
18
|
+
`
|
|
19
|
+
})
|
|
20
|
+
.component(class extends ShinyElement {
|
|
21
|
+
attrs = dom.attrs(this).spec({start: Number})
|
|
22
|
+
})
|
|
23
|
+
.props(el => [el.theme, el.attrs.start ?? 1] as const)
|
|
24
|
+
) {}
|
|
25
|
+
|
package/s/ui/themers.ts
ADDED
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
|
|
2
|
+
import {CSSResult} from "lit"
|
|
3
|
+
import {DropFirst, ob} from "@e280/stz"
|
|
4
|
+
import {ComponentClass, View, ViewProps} from "@e280/sly"
|
|
5
|
+
|
|
6
|
+
import {components} from "./components.js"
|
|
7
|
+
import {ShinyElement} from "./framework.js"
|
|
8
|
+
|
|
9
|
+
export function themeComponents(theme: CSSResult) {
|
|
10
|
+
return ob(components).map(C => class extends C {
|
|
11
|
+
theme = theme
|
|
12
|
+
static view = super.view.transmute((...props: any[]) => [theme, ...props] as any) as any
|
|
13
|
+
}) as {
|
|
14
|
+
[K in keyof typeof components]: ComponentClass<
|
|
15
|
+
typeof ShinyElement,
|
|
16
|
+
DropFirst<ViewProps<(typeof components)[K]["view"]>>
|
|
17
|
+
>
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
export function themeViews(theme: CSSResult) {
|
|
22
|
+
return ob(themeComponents(theme)).map(C => C.view) as {
|
|
23
|
+
[K in keyof typeof components]: View<DropFirst<ViewProps<(typeof components)[K]["view"]>>>
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
export type ShinyViews = ReturnType<typeof themeViews>
|
|
28
|
+
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import { css, html } from "lit";
|
|
2
|
+
import { dom, view } from "@e280/sly";
|
|
3
|
+
import { themes } from "../themes/index.js";
|
|
4
|
+
import { themeViews } from "../ui/themers.js";
|
|
5
|
+
import { Demonstration } from "./views/demonstration/view.js";
|
|
6
|
+
const views = themeViews(themes.basic);
|
|
7
|
+
dom.register({ ShinyDemo: view.component(use => {
|
|
8
|
+
use.styles(css `
|
|
9
|
+
:host {
|
|
10
|
+
display: flex;
|
|
11
|
+
flex-direction: column;
|
|
12
|
+
gap: 1em;
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
[view="shiny-copy"]::part(content) {
|
|
16
|
+
font-size: 4em;
|
|
17
|
+
}
|
|
18
|
+
`);
|
|
19
|
+
return [
|
|
20
|
+
Demonstration({
|
|
21
|
+
views,
|
|
22
|
+
name: "shiny-copy",
|
|
23
|
+
explain: html `
|
|
24
|
+
<p>button for click-to-copy text</p>
|
|
25
|
+
`,
|
|
26
|
+
exampleView: `
|
|
27
|
+
ShinyCopy("hello world")
|
|
28
|
+
`,
|
|
29
|
+
exampleComponent: `
|
|
30
|
+
<shiny-copy text="hello world"></shiny-copy>
|
|
31
|
+
`,
|
|
32
|
+
content: views.ShinyCopy("hello world"),
|
|
33
|
+
}),
|
|
34
|
+
];
|
|
35
|
+
}) });
|
|
36
|
+
console.log("✨ shiny");
|
|
37
|
+
//# sourceMappingURL=demo.bundle.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"demo.bundle.js","sourceRoot":"","sources":["../../s/demo/demo.bundle.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,GAAG,EAAE,IAAI,EAAC,MAAM,KAAK,CAAA;AAC7B,OAAO,EAAC,GAAG,EAAE,IAAI,EAAC,MAAM,WAAW,CAAA;AACnC,OAAO,EAAC,MAAM,EAAC,MAAM,oBAAoB,CAAA;AACzC,OAAO,EAAC,UAAU,EAAC,MAAM,kBAAkB,CAAA;AAC3C,OAAO,EAAC,aAAa,EAAC,MAAM,+BAA+B,CAAA;AAE3D,MAAM,KAAK,GAAG,UAAU,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;AAEtC,GAAG,CAAC,QAAQ,CAAC,EAAC,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE;QAC7C,GAAG,CAAC,MAAM,CAAC,GAAG,CAAA;;;;;;;;;;EAUb,CAAC,CAAA;QAEF,OAAO;YACN,aAAa,CAAC;gBACb,KAAK;gBACL,IAAI,EAAE,YAAY;gBAClB,OAAO,EAAE,IAAI,CAAA;;IAEZ;gBACD,WAAW,EAAE;;IAEZ;gBACD,gBAAgB,EAAE;;IAEjB;gBACD,OAAO,EAAE,KAAK,CAAC,SAAS,CAAC,aAAa,CAAC;aACvC,CAAC;SACF,CAAA;IACF,CAAC,CAAC,EAAC,CAAC,CAAA;AAEJ,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,CAAA"}
|
|
@@ -0,0 +1,277 @@
|
|
|
1
|
+
var Je=Object.defineProperty;var Ke=(r,t)=>{for(var e in t)Je(r,e,{get:t[e],enumerable:!0})};var ft=globalThis,gt=ft.ShadowRoot&&(ft.ShadyCSS===void 0||ft.ShadyCSS.nativeShadow)&&"adoptedStyleSheets"in Document.prototype&&"replace"in CSSStyleSheet.prototype,Ft=Symbol(),ne=new WeakMap,G=class{constructor(t,e,s){if(this._$cssResult$=!0,s!==Ft)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(gt&&t===void 0){let s=e!==void 0&&e.length===1;s&&(t=ne.get(e)),t===void 0&&((this.o=t=new CSSStyleSheet).replaceSync(this.cssText),s&&ne.set(e,t))}return t}toString(){return this.cssText}},ae=r=>new G(typeof r=="string"?r:r+"",void 0,Ft),g=(r,...t)=>{let e=r.length===1?r[0]:t.reduce(((s,o,i)=>s+(n=>{if(n._$cssResult$===!0)return n.cssText;if(typeof n=="number")return n;throw Error("Value passed to 'css' function must be a 'css' function result: "+n+". Use 'unsafeCSS' to pass non-literal values, but take care to ensure page security.")})(o)+r[i+1]),r[0]);return new G(e,r,Ft)},bt=(r,t)=>{if(gt)r.adoptedStyleSheets=t.map((e=>e instanceof CSSStyleSheet?e:e.styleSheet));else for(let e of t){let s=document.createElement("style"),o=ft.litNonce;o!==void 0&&s.setAttribute("nonce",o),s.textContent=e.cssText,r.appendChild(s)}},U=gt?r=>r:r=>r instanceof CSSStyleSheet?(t=>{let e="";for(let s of t.cssRules)e+=s.cssText;return ae(e)})(r):r;var{is:Qe,defineProperty:Ge,getOwnPropertyDescriptor:tr,getOwnPropertyNames:er,getOwnPropertySymbols:rr,getPrototypeOf:sr}=Object,yt=globalThis,ce=yt.trustedTypes,or=ce?ce.emptyScript:"",ir=yt.reactiveElementPolyfillSupport,tt=(r,t)=>r,Xt={toAttribute(r,t){switch(t){case Boolean:r=r?or: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}},le=(r,t)=>!Qe(r,t),he={attribute:!0,type:String,converter:Xt,reflect:!1,useDefault:!1,hasChanged:le};Symbol.metadata??=Symbol("metadata"),yt.litPropertyMetadata??=new WeakMap;var _=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=he){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&&Ge(this.prototype,t,o)}}static getPropertyDescriptor(t,e,s){let{get:o,set:i}=tr(this.prototype,t)??{get(){return this[e]},set(n){this[e]=n}};return{get:o,set(n){let c=o?.call(this);i?.call(this,n),this.requestUpdate(t,c,s)},configurable:!0,enumerable:!0}}static getPropertyOptions(t){return this.elementProperties.get(t)??he}static _$Ei(){if(this.hasOwnProperty(tt("elementProperties")))return;let t=sr(this);t.finalize(),t.l!==void 0&&(this.l=[...t.l]),this.elementProperties=new Map(t.elementProperties)}static finalize(){if(this.hasOwnProperty(tt("finalized")))return;if(this.finalized=!0,this._$Ei(),this.hasOwnProperty(tt("properties"))){let e=this.properties,s=[...er(e),...rr(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(U(o))}else t!==void 0&&e.push(U(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 bt(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 i=(s.converter?.toAttribute!==void 0?s.converter:Xt).toAttribute(e,s.type);this._$Em=t,i==null?this.removeAttribute(o):this.setAttribute(o,i),this._$Em=null}}_$AK(t,e){let s=this.constructor,o=s._$Eh.get(t);if(o!==void 0&&this._$Em!==o){let i=s.getPropertyOptions(o),n=typeof i.converter=="function"?{fromAttribute:i.converter}:i.converter?.fromAttribute!==void 0?i.converter:Xt;this._$Em=o;let c=n.fromAttribute(e,i.type);this[o]=c??this._$Ej?.get(o)??c,this._$Em=null}}requestUpdate(t,e,s){if(t!==void 0){let o=this.constructor,i=this[t];if(s??=o.getPropertyOptions(t),!((s.hasChanged??le)(i,e)||s.useDefault&&s.reflect&&i===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:i},n){s&&!(this._$Ej??=new Map).has(t)&&(this._$Ej.set(t,n??e??this[t]),i!==!0||n!==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,i]of this._$Ep)this[o]=i;this._$Ep=void 0}let s=this.constructor.elementProperties;if(s.size>0)for(let[o,i]of s){let{wrapped:n}=i,c=this[o];n!==!0||this._$AL.has(o)||c===void 0||this.C(o,void 0,i,c)}}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){}};_.elementStyles=[],_.shadowRootOptions={mode:"open"},_[tt("elementProperties")]=new Map,_[tt("finalized")]=new Map,ir?.({ReactiveElement:_}),(yt.reactiveElementVersions??=[]).push("2.1.1");var Zt=globalThis,xt=Zt.trustedTypes,pe=xt?xt.createPolicy("lit-html",{createHTML:r=>r}):void 0,Jt="$lit$",A=`lit$${Math.random().toFixed(9).slice(2)}$`,Kt="?"+A,nr=`<${Kt}>`,O=document,rt=()=>O.createComment(""),st=r=>r===null||typeof r!="object"&&typeof r!="function",Qt=Array.isArray,be=r=>Qt(r)||typeof r?.[Symbol.iterator]=="function",Yt=`[
|
|
2
|
+
\f\r]`,et=/<(?:(!--|\/[^a-zA-Z])|(\/?[a-zA-Z][^>\s]*)|(\/?$))/g,ue=/-->/g,de=/>/g,T=RegExp(`>|${Yt}(?:([^\\s"'>=/]+)(${Yt}*=${Yt}*(?:[^
|
|
3
|
+
\f\r"'\`<>=]|("|')|))|$)`,"g"),me=/'/g,fe=/"/g,ye=/^(?:script|style|textarea|title)$/i,Gt=r=>(t,...e)=>({_$litType$:r,strings:t,values:e}),v=Gt(1),j=Gt(2),Rr=Gt(3),M=Symbol.for("lit-noChange"),f=Symbol.for("lit-nothing"),ge=new WeakMap,R=O.createTreeWalker(O,129);function xe(r,t){if(!Qt(r)||!r.hasOwnProperty("raw"))throw Error("invalid template strings array");return pe!==void 0?pe.createHTML(t):t}var $e=(r,t)=>{let e=r.length-1,s=[],o,i=t===2?"<svg>":t===3?"<math>":"",n=et;for(let c=0;c<e;c++){let a=r[c],l,m,p=-1,w=0;for(;w<a.length&&(n.lastIndex=w,m=n.exec(a),m!==null);)w=n.lastIndex,n===et?m[1]==="!--"?n=ue:m[1]!==void 0?n=de:m[2]!==void 0?(ye.test(m[2])&&(o=RegExp("</"+m[2],"g")),n=T):m[3]!==void 0&&(n=T):n===T?m[0]===">"?(n=o??et,p=-1):m[1]===void 0?p=-2:(p=n.lastIndex-m[2].length,l=m[1],n=m[3]===void 0?T:m[3]==='"'?fe:me):n===fe||n===me?n=T:n===ue||n===de?n=et:(n=T,o=void 0);let S=n===T&&r[c+1].startsWith("/>")?" ":"";i+=n===et?a+nr:p>=0?(s.push(l),a.slice(0,p)+Jt+a.slice(p)+A+S):a+A+(p===-2?c:S)}return[xe(r,i+(r[e]||"<?>")+(t===2?"</svg>":t===3?"</math>":"")),s]},ot=class r{constructor({strings:t,_$litType$:e},s){let o;this.parts=[];let i=0,n=0,c=t.length-1,a=this.parts,[l,m]=$e(t,e);if(this.el=r.createElement(l,s),R.currentNode=this.el.content,e===2||e===3){let p=this.el.content.firstChild;p.replaceWith(...p.childNodes)}for(;(o=R.nextNode())!==null&&a.length<c;){if(o.nodeType===1){if(o.hasAttributes())for(let p of o.getAttributeNames())if(p.endsWith(Jt)){let w=m[n++],S=o.getAttribute(p).split(A),mt=/([.?@])?(.*)/.exec(w);a.push({type:1,index:i,name:mt[2],strings:S,ctor:mt[1]==="."?wt:mt[1]==="?"?vt:mt[1]==="@"?_t:H}),o.removeAttribute(p)}else p.startsWith(A)&&(a.push({type:6,index:i}),o.removeAttribute(p));if(ye.test(o.tagName)){let p=o.textContent.split(A),w=p.length-1;if(w>0){o.textContent=xt?xt.emptyScript:"";for(let S=0;S<w;S++)o.append(p[S],rt()),R.nextNode(),a.push({type:2,index:++i});o.append(p[w],rt())}}}else if(o.nodeType===8)if(o.data===Kt)a.push({type:2,index:i});else{let p=-1;for(;(p=o.data.indexOf(A,p+1))!==-1;)a.push({type:7,index:i}),p+=A.length-1}i++}}static createElement(t,e){let s=O.createElement("template");return s.innerHTML=t,s}};function N(r,t,e=r,s){if(t===M)return t;let o=s!==void 0?e._$Co?.[s]:e._$Cl,i=st(t)?void 0:t._$litDirective$;return o?.constructor!==i&&(o?._$AO?.(!1),i===void 0?o=void 0:(o=new i(r),o._$AT(r,e,s)),s!==void 0?(e._$Co??=[])[s]=o:e._$Cl=o),o!==void 0&&(t=N(r,o._$AS(r,t.values),o,s)),t}var $t=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??O).importNode(e,!0);R.currentNode=o;let i=R.nextNode(),n=0,c=0,a=s[0];for(;a!==void 0;){if(n===a.index){let l;a.type===2?l=new D(i,i.nextSibling,this,t):a.type===1?l=new a.ctor(i,a.name,a.strings,this,t):a.type===6&&(l=new At(i,this,t)),this._$AV.push(l),a=s[++c]}n!==a?.index&&(i=R.nextNode(),n++)}return R.currentNode=O,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++}},D=class r{get _$AU(){return this._$AM?._$AU??this._$Cv}constructor(t,e,s,o){this.type=2,this._$AH=f,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=N(this,t,e),st(t)?t===f||t==null||t===""?(this._$AH!==f&&this._$AR(),this._$AH=f):t!==this._$AH&&t!==M&&this._(t):t._$litType$!==void 0?this.$(t):t.nodeType!==void 0?this.T(t):be(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!==f&&st(this._$AH)?this._$AA.nextSibling.data=t:this.T(O.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=ot.createElement(xe(s.h,s.h[0]),this.options)),s);if(this._$AH?._$AD===o)this._$AH.p(e);else{let i=new $t(o,this),n=i.u(this.options);i.p(e),this.T(n),this._$AH=i}}_$AC(t){let e=ge.get(t.strings);return e===void 0&&ge.set(t.strings,e=new ot(t)),e}k(t){Qt(this._$AH)||(this._$AH=[],this._$AR());let e=this._$AH,s,o=0;for(let i of t)o===e.length?e.push(s=new r(this.O(rt()),this.O(rt()),this,this.options)):s=e[o],s._$AI(i),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))}},H=class{get tagName(){return this.element.tagName}get _$AU(){return this._$AM._$AU}constructor(t,e,s,o,i){this.type=1,this._$AH=f,this._$AN=void 0,this.element=t,this.name=e,this._$AM=o,this.options=i,s.length>2||s[0]!==""||s[1]!==""?(this._$AH=Array(s.length-1).fill(new String),this.strings=s):this._$AH=f}_$AI(t,e=this,s,o){let i=this.strings,n=!1;if(i===void 0)t=N(this,t,e,0),n=!st(t)||t!==this._$AH&&t!==M,n&&(this._$AH=t);else{let c=t,a,l;for(t=i[0],a=0;a<i.length-1;a++)l=N(this,c[s+a],e,a),l===M&&(l=this._$AH[a]),n||=!st(l)||l!==this._$AH[a],l===f?t=f:t!==f&&(t+=(l??"")+i[a+1]),this._$AH[a]=l}n&&!o&&this.j(t)}j(t){t===f?this.element.removeAttribute(this.name):this.element.setAttribute(this.name,t??"")}},wt=class extends H{constructor(){super(...arguments),this.type=3}j(t){this.element[this.name]=t===f?void 0:t}},vt=class extends H{constructor(){super(...arguments),this.type=4}j(t){this.element.toggleAttribute(this.name,!!t&&t!==f)}},_t=class extends H{constructor(t,e,s,o,i){super(t,e,s,o,i),this.type=5}_$AI(t,e=this){if((t=N(this,t,e,0)??f)===M)return;let s=this._$AH,o=t===f&&s!==f||t.capture!==s.capture||t.once!==s.once||t.passive!==s.passive,i=t!==f&&(s===f||o);o&&this.element.removeEventListener(this.name,this,s),i&&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)}},At=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){N(this,t)}},we={M:Jt,P:A,A:Kt,C:1,L:$e,R:$t,D:be,V:N,I:D,H,N:vt,U:_t,B:wt,F:At},ar=Zt.litHtmlPolyfillSupport;ar?.(ot,D),(Zt.litHtmlVersions??=[]).push("3.3.1");var it=(r,t,e)=>{let s=e?.renderBefore??t,o=s._$litPart$;if(o===void 0){let i=e?.renderBefore??null;s._$litPart$=o=new D(t.insertBefore(rt(),i),i,void 0,e??{})}return o._$AI(r),o};var te=globalThis,L=class extends _{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=it(e,this.renderRoot,this.renderOptions)}connectedCallback(){super.connectedCallback(),this._$Do?.setConnected(!0)}disconnectedCallback(){super.disconnectedCallback(),this._$Do?.setConnected(!1)}render(){return M}};L._$litElement$=!0,L.finalized=!0,te.litElementHydrateSupport?.({LitElement:L});var cr=te.litElementPolyfillSupport;cr?.({LitElement:L});(te.litElementVersions??=[]).push("4.2.1");var B=g`
|
|
4
|
+
@layer reset {
|
|
5
|
+
* {
|
|
6
|
+
margin: 0;
|
|
7
|
+
padding: 0;
|
|
8
|
+
box-sizing: border-box;
|
|
9
|
+
|
|
10
|
+
scrollbar-width: thin;
|
|
11
|
+
scrollbar-color: #888 transparent;
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
::-webkit-scrollbar { width: 8px; }
|
|
15
|
+
::-webkit-scrollbar-track { background: transparent; }
|
|
16
|
+
::-webkit-scrollbar-thumb { background: #333; border-radius: 1em; }
|
|
17
|
+
::-webkit-scrollbar-thumb:hover { background: #444; }
|
|
18
|
+
}
|
|
19
|
+
`;function E(r,t){let e,s,o=[];function i(){e=[],s&&clearTimeout(s),s=void 0,o=[]}return i(),((...n)=>{e=n,s&&clearTimeout(s);let c=new Promise((a,l)=>{o.push({resolve:a,reject:l})});return s=setTimeout(()=>{Promise.resolve().then(()=>t(...e)).then(a=>{for(let{resolve:l}of o)l(a);i()}).catch(a=>{for(let{reject:l}of o)l(a);i()})},r),c})}function nt(){let r,t,e=new Promise((o,i)=>{r=o,t=i});function s(o){return o.then(r).catch(t),e}return{promise:e,resolve:r,reject:t,entangle:s}}var q=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 ve=(r=0)=>new Promise(t=>setTimeout(t,r));function St(r){return{map:t=>_e(r,t),filter:t=>Ae(r,t)}}St.pipe=Object.freeze({map:r=>(t=>_e(t,r)),filter:r=>(t=>Ae(t,r))});var _e=(r,t)=>Object.fromEntries(Object.entries(r).map(([e,s])=>[e,t(s,e)])),Ae=(r,t)=>Object.fromEntries(Object.entries(r).filter(([e,s])=>t(s,e)));function Se(){let r=new Set;async function t(...a){await Promise.all([...r].map(l=>l(...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 i(a){let{promise:l,resolve:m}=nt(),p=o(async(...w)=>{a&&await a(...w),m(w),p()});return l}function n(){r.clear()}let c={pub:s,sub:o,publish:t,subscribe:e,on:e,next:i,clear:n};return Object.assign(o,c),Object.assign(s,c),c}function Et(r){let t=Se();return r&&t.sub(r),t.sub}function ee(r){let t=Se();return r&&t.sub(r),t.pub}function Ee(r){let t,e=!1,s=()=>{e=!0,clearTimeout(t)},o=async()=>{e||(await r(s),!e&&(t=setTimeout(o,0)))};return o(),s}function hr(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 Ct(r,t){for(let[e,s]of t)hr(r,e,s)}function Ce(r,t){let e=document.createElement(r);return Ct(e,Object.entries(t)),e}function ke(r,t){let e=new MutationObserver(t);return e.observe(r,{attributes:!0}),()=>e.disconnect()}var b={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 Pe=(r,t)=>new Proxy(t,{get:(e,s)=>{switch(t[s]){case String:return b.get.string(r,s);case Number:return b.get.number(r,s);case Boolean:return b.get.boolean(r,s);default:throw new Error(`invalid attribute type for "${s}"`)}},set:(e,s,o)=>{switch(t[s]){case String:return b.set.string(r,s,o);case Number:return b.set.number(r,s,o);case Boolean:return b.set.boolean(r,s,o);default:throw new Error(`invalid attribute type for "${s}"`)}}});var kt=class{element;constructor(t){this.element=t}strings=new Proxy({},{get:(t,e)=>b.get.string(this.element,e),set:(t,e,s)=>b.set.string(this.element,e,s)});numbers=new Proxy({},{get:(t,e)=>b.get.number(this.element,e),set:(t,e,s)=>b.set.number(this.element,e,s)});booleans=new Proxy({},{get:(t,e)=>b.get.boolean(this.element,e),set:(t,e,s)=>b.set.boolean(this.element,e,s)})};function at(r){let t=new kt(r);return{strings:t.strings,numbers:t.numbers,booleans:t.booleans,on:e=>ke(r,e),spec:e=>Pe(r,e)}}at.get=b.get;at.set=b.set;function re(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[i,n]=o;r.addEventListener(s,n,i),e.push(()=>r.removeEventListener(s,n))}return()=>e.forEach(s=>s())}function Te(r){return r.replace(/([a-zA-Z])(?=[A-Z])/g,"$1-").toLowerCase()}function Re(r,t={}){let{soft:e=!1,upgrade:s=!0}=t;for(let[o,i]of Object.entries(r)){let n=Te(o),c=customElements.get(n);e&&c||(customElements.define(n,i),s&&document.querySelectorAll(n).forEach(a=>{a.constructor===HTMLElement&&customElements.upgrade(a)}))}}function Oe(r,t){let e=r.querySelector(t);if(!e)throw new Error(`element not found (${t})`);return e}var Pt=class r{element;constructor(t){this.element=t}in(t){return new r(typeof t=="string"?Oe(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 it(t,this.element)}attrs(){return at(this.element)}events(t){return re(this.element,t)}};function u(r){return typeof r=="string"?Oe(document,r):new Pt(r)}var C=new Pt(document);u.in=C.in.bind(C);u.require=C.require.bind(C);u.maybe=C.maybe.bind(C);u.all=C.all.bind(C);u.el=Ce;u.events=re;u.attrs=at;u.register=Re;u.render=(r,...t)=>it(t,r);var se=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=Et(),this.#e.set(t,e)),e}},x=globalThis[Symbol.for("e280.tracker")]??=new se;var V=class{sneak;constructor(t){this.sneak=t}get(){return x.notifyRead(this),this.sneak}get value(){return this.get()}};var W=class extends V{on=Et();dispose(){this.on.clear()}};function Tt(r,t=r){let{seen:e,result:s}=x.observe(r),o=E(0,t),i=[],n=()=>i.forEach(c=>c());for(let c of e){let a=x.subscribe(c,o);i.push(a)}return{result:s,dispose:n}}function I(r,t){return r===t}var Rt=class extends W{#t;constructor(t,e){let s=e?.compare??I,{result:o,dispose:i}=Tt(t,async()=>{let n=t();!s(this.sneak,n)&&(this.sneak=n,await Promise.all([x.notifyWrite(this),this.on.pub(n)]))});super(o),this.#t=i}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 Ot=class extends V{#t;#e;#r=!1;#s;constructor(t,e){super(void 0),this.#t=t,this.#e=e?.compare??I}toString(){return`($lazy "${String(this.get())}")`}get(){if(!this.#s){let{result:t,dispose:e}=Tt(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,x.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 Mt=class extends W{#t=!1;#e;constructor(t,e){super(t),this.#e=e?.compare??I}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([x.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 lr(r,t){return new Ot(r,t).fn()}function Me(r,t){return new Rt(r,t).fn()}function $(r,t){return new Mt(r,t).fn()}$.lazy=lr;$.derived=Me;var k=class{#t=new q;effect(t,e){let{seen:s,result:o}=x.observe(t);for(let i of s)this.#t.guarantee(i,()=>x.subscribe(i,e));for(let[i,n]of this.#t)s.has(i)||(n(),this.#t.delete(i));return o}clear(){for(let t of this.#t.values())t();this.#t.clear()}};var F=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 Nt(r,t){bt(r,ur(t))}function ur(r){let t=[];if(Array.isArray(r)){let e=new Set(r.flat(1/0).reverse());for(let s of e)t.unshift(U(s))}else r!==void 0&&t.push(U(r));return t}var z={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)=>z.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 X=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 z.all(...e)}signal;#t=0;#e=ee();#r=ee();constructor(t=["loading"]){this.signal=$(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 z.value(this.signal.get())}get error(){return z.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 z.select(this.signal.get(),t)}morph(t){return z.morph(this.pod,t)}};var Ht=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 zt=class{#t;#e;constructor(t){this.#t=t,this.#e=u.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 ct=Symbol(),ht=Symbol(),lt=Symbol(),Y=class{element;shadow;renderNow;render;attrs;#t=0;#e=0;#r=new q;#s=nt();#o=new Ht;[ct](t){this.#t++,this.#e=0,this.#s=nt();let e=t();return this.#s.resolve(),e}[ht](){this.#o.unmountAll()}[lt](){this.#o.remountAll()}constructor(t,e,s,o){this.element=t,this.shadow=e,this.renderNow=s,this.render=o,this.attrs=new zt(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(()=>Nt(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(()=>X.load(s))}return e.load=e,e.promise=s=>this.once(()=>X.promise(s)),e})();signal=(()=>{let t=this;function e(s,o){return t.once(()=>$(s,o))}return e.derived=function(o,i){return t.once(()=>$.derived(o,i))},e.lazy=function(o,i){return t.once(()=>$.lazy(o,i))},e})();derived(t,e){return this.once(()=>$.derived(t,e))}lazy(t,e){return this.once(()=>$.lazy(t,e))}};var P=class extends HTMLElement{static styles;shadow;#t;#e=0;#r=new k;#s=new F(this,()=>this.update());createShadow(){return this.attachShadow({mode:"open"})}constructor(){super(),this.shadow=this.createShadow(),this.#t=new Y(this,this.shadow,this.updateNow,this.update)}render(t){}updateNow=()=>{this.#t[ct](()=>{u.render(this.shadow,this.#r.effect(()=>this.render(this.#t),this.update))})};update=E(0,this.updateNow);connectedCallback(){if(this.#e===0){let t=this.constructor.styles;t&&Nt(this.shadow,t),this.updateNow()}else this.#t[lt]();this.#s.start(),this.#e++}disconnectedCallback(){this.#t[ht](),this.#r.clear(),this.#s.stop()}};var Ut=class{#t;#e;constructor(t,e){this.#e=t,this.#t=e}attr(t,e){return this.#e.attrs.set(t,e),this}children(...t){return this.#e.children.push(...t),this}render(){return this.#t(this.#e)}};var pt=class{props;attrs=new Map;children=[];constructor(t){this.props=t}};function Ne(r,t,e,s){return class extends t{static view=Z(s,r);#t=new k;createShadow(){return this.attachShadow(r)}render(i){return s(i)(...this.#t.effect(()=>e(this),()=>this.update()))}}}var{I:zi}=we;var He=r=>r.strings===void 0;var ze={ATTRIBUTE:1,CHILD:2,PROPERTY:3,BOOLEAN_ATTRIBUTE:4,EVENT:5,ELEMENT:6},oe=r=>(...t)=>({_$litDirective$:r,values:t}),Dt=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 ut=(r,t)=>{let e=r._$AN;if(e===void 0)return!1;for(let s of e)s._$AO?.(t,!1),ut(s,t);return!0},jt=r=>{let t,e;do{if((t=r._$AM)===void 0)break;e=t._$AN,e.delete(r),r=t}while(e?.size===0)},Ue=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),fr(t)}};function dr(r){this._$AN!==void 0?(jt(this),this._$AM=r,Ue(this)):this._$AM=r}function mr(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 i=e;i<s.length;i++)ut(s[i],!1),jt(s[i]);else s!=null&&(ut(s,!1),jt(s));else ut(this,r)}var fr=r=>{r.type==ze.CHILD&&(r._$AP??=mr,r._$AQ??=dr)},Lt=class extends Dt{constructor(){super(...arguments),this._$AN=void 0}_$AT(t,e,s){super._$AT(t,e,s),Ue(this),this.isConnected=t._$AU}_$AO(t,e=!0){t!==this.isConnected&&(this.isConnected=t,t?this.reconnected?.():this.disconnected?.()),e&&(ut(this,t),jt(this))}setValue(t){if(He(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 Bt=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 qt=class{viewFn;settings;#t=Bt.make();#e=new k;#r;#s;#o;#i=new F(this.#t,()=>this.#a());constructor(t,e){this.viewFn=t,this.settings=e,this.#s=this.#t.attachShadow(this.settings),this.#r=new Y(this.#t,this.#s,this.#n,this.#a)}update(t){return this.#o=t,this.#n(),this.#t}#n=()=>{this.#r[ct](()=>{let t=this.#e.effect(()=>this.viewFn(this.#r)(...this.#o.props),()=>this.#a());Ct(this.#t,[...this.#o.attrs]),u.render(this.#s,t),u.render(this.#t,this.#o.children),this.#i.start()})};#a=E(0,this.#n);disconnected(){this.#r[ht](),this.#e.clear(),this.#i.stop()}reconnected(){this.#r[lt](),this.#i.start()}};function De(r,t){return oe(class extends Lt{#t=new qt(r,t);render(s){return this.#t.update(s)}disconnected(){this.#t.disconnected()}reconnected(){this.#t.reconnected()}})}function Z(r,t){let e=De(r,t);function s(...o){return e(new pt(o))}return s.props=(...o)=>new Ut(new pt(o),e),s.transmute=o=>Z(n=>{let c=r(n);return(...a)=>c(...o(...a))},t),s.component=(o=P)=>({props:i=>Ne(t,o,i,r)}),s}function y(r){return Z(r,{mode:"open"})}y.settings=r=>({render:t=>Z(t,r)});y.render=y;y.component=r=>y(t=>()=>r(t)).component(P).props(()=>[]);function h(r,t){return()=>gr({hz:r,frames:t})}var gr=y(r=>({hz:t,frames:e})=>{r.name("loading"),r.styles(B,br);let s=r.signal(0);return r.mount(()=>Ee(async()=>{await ve(1e3/t);let o=s.get()+1;s.set(o>=e.length?0:o)})),e.at(s.get())}),br=g`
|
|
20
|
+
:host {
|
|
21
|
+
font-family: monospace;
|
|
22
|
+
white-space: pre;
|
|
23
|
+
user-select: none;
|
|
24
|
+
}
|
|
25
|
+
`;var d=20,J=10,K=4,wn=h(d,["|","/","-","\\"]),vn=h(d,["\u2808","\u2810","\u2820","\u2880","\u2840","\u2804","\u2802","\u2801"]),_n=h(d,["\u2B06\uFE0F","\u2197\uFE0F","\u27A1\uFE0F","\u2198\uFE0F","\u2B07\uFE0F","\u2199\uFE0F","\u2B05\uFE0F","\u2196\uFE0F"]),An=h(d,["\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"]),Sn=h(d,["\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"]),En=h(d,["\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"]),Cn=h(d,["\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"]),kn=h(d,["\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"]),Pn=h(d,["\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"]),Tn=h(K,["\u{1F6B6}","\u{1F3C3}"]),Rn=h(J,["\u25F7","\u25F6","\u25F5","\u25F4"]),On=h(d,["=----","-=---","--=--","---=-","----=","----=","---=-","--=--","-=---","=----"]),Mn=h(d,["o----","-o---","--o--","---o-","----o","----o","---o-","--o--","-o---","o----"]),Nn=h(J,["[ ]","[ ]","[= ]","[== ]","[===]","[ ==]","[ =]"]),Hn=h(J,["[ ]","[ ]","[= ]","[== ]","[===]","[ ==]","[ =]","[ ]","[ ]","[ =]","[ ==]","[===]","[== ]","[= ]"]),zn=h(J,[" "," ",". ",".. ","..."," .."," ."]),Un=h(d,[". ",". ",".. ","..."," .."," ."," ."," ..","...",".. "]),Dn=h(d,[".....",".....",":....","::...",":::..","::::.",":::::",":::::",".::::","..:::","...::","....:"]),jn=h(d,[":....",":....","::...",".::..","..::.","...::","....:","....:","...::","..::.",".::..","::..."]),Ln=h(d,[".....",".....","..:..",".:::.",".:::.",":::::",":::::","::.::",":...:"]),Bn=h(d,[".....",".....","..:..",".:::.",".:::.",":::::",":::::","::.::",":...:",".....",".....",":...:","::.::",":::::",":::::",".:::.",".:::.","..:.."]),qn=h(d,["000","100","110","111","011","001"]),Vn=h(d,["11111","01111","00111","10011","11001","01100","00110","10011","11001","11100","11110"]),Wn=h(d,["11111","01111","10111","11011","11101","11110","11111","11110","11101","11011","10111","01111"]),In=h(K,["\u{1F539}","\u{1F535}"]),Fn=h(J,["\u{1F642}","\u{1F642}","\u{1F617}","\u{1F619}","\u{1F618}","\u{1F618}","\u{1F619}"]),Xn=h(d,["\u{1F550}","\u{1F551}","\u{1F552}","\u{1F553}","\u{1F554}","\u{1F555}","\u{1F556}","\u{1F557}","\u{1F558}","\u{1F559}","\u{1F55A}","\u{1F55B}"]),Yn=h(d,["\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}"]),yr=h(K,["\u{1F30E}","\u{1F30F}","\u{1F30D}"]),Zn=h(K,["\u{1F513}","\u{1F512}"]),Jn=h(K,["\u{1F505}","\u{1F506}"]),Kn=h(K,["\u{1F508}","\u{1F508}","\u{1F509}","\u{1F50A}","\u{1F50A}","\u{1F509}"]),Qn=h(J,["\u{1F311}","\u{1F311}","\u{1F311}","\u{1F318}","\u{1F317}","\u{1F316}","\u{1F315}","\u{1F314}","\u{1F313}","\u{1F312}"]);var $r=y(r=>t=>(r.name("error"),r.styles(B,wr),typeof t=="string"?t:t instanceof Error?v`<strong>${t.name}:</strong> <span>${t.message}</span>`:"error")),wr=g`
|
|
26
|
+
:host {
|
|
27
|
+
font-family: monospace;
|
|
28
|
+
color: red;
|
|
29
|
+
}
|
|
30
|
+
`;var Vt={};Ke(Vt,{basic:()=>dt});var dt=g`
|
|
31
|
+
|
|
32
|
+
${B}
|
|
33
|
+
|
|
34
|
+
:host {
|
|
35
|
+
display: block;
|
|
36
|
+
--bg: var(--shiny-bg, #111);
|
|
37
|
+
--alpha: var(--shiny-alpha, #afa);
|
|
38
|
+
--good: var(--shiny-good, #0f4);
|
|
39
|
+
--bad: var(--shiny-bad, #f40);
|
|
40
|
+
--invalid: var(--shiny-invalid, #8888);
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
`;var Le=g`
|
|
44
|
+
|
|
45
|
+
button {
|
|
46
|
+
background: transparent;
|
|
47
|
+
border: none;
|
|
48
|
+
font-size: inherit;
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
button {
|
|
52
|
+
opacity: 0.5;
|
|
53
|
+
cursor: pointer;
|
|
54
|
+
cursor: copy;
|
|
55
|
+
|
|
56
|
+
color: inherit;
|
|
57
|
+
transition: all 300ms linear;
|
|
58
|
+
|
|
59
|
+
&:is(:hover, :focus-visible) {
|
|
60
|
+
opacity: 1;
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
[data-status="invalid"] {
|
|
65
|
+
color: var(--invalid);
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
[data-status="good"] {
|
|
69
|
+
opacity: 1;
|
|
70
|
+
color: var(--good);
|
|
71
|
+
filter: drop-shadow(0 0 0.3em color-mix(in oklab, transparent, currentColor 50%));
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
[data-status="bad"] {
|
|
75
|
+
opacity: 1;
|
|
76
|
+
color: var(--bad);
|
|
77
|
+
filter: drop-shadow(0 0 0.3em color-mix(in oklab, transparent, currentColor 50%));
|
|
78
|
+
}
|
|
79
|
+
|
|
80
|
+
svg {
|
|
81
|
+
width: 1em;
|
|
82
|
+
height: 1em;
|
|
83
|
+
}
|
|
84
|
+
|
|
85
|
+
`;var Q=class extends P{theme=dt};var ie=j`<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 Be=j`<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 qe=j`<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 Wt=class extends y(t=>(e,s,o=1e3)=>{t.name("shiny-copy"),t.styles(e,Le);let i=()=>s===void 0?"invalid":"neutral",n=t.signal(i()),c=t.once(()=>E(o,()=>n.set(i()))),a=t.once(()=>async p=>{await n.set(p),await c()});async function l(){if(s!==void 0)try{await navigator.clipboard.writeText(s),await a("good")}catch(p){console.error(p),await a("bad")}}let m=(()=>{switch(n.get()){case"neutral":return ie;case"invalid":return ie;case"good":return qe;case"bad":return Be;default:throw new Error("invalid copy status")}})();return v`
|
|
86
|
+
<button data-status="${n.get()}" @click="${l}">
|
|
87
|
+
${m}
|
|
88
|
+
</button>
|
|
89
|
+
`}).component(class extends Q{attrs=u.attrs(this).spec({text:String,ms:Number})}).props(t=>[t.theme,t.attrs.text,t.attrs.ms]){};var Ve=g`
|
|
90
|
+
|
|
91
|
+
button {
|
|
92
|
+
padding: 1em;
|
|
93
|
+
min-width: 4em;
|
|
94
|
+
}
|
|
95
|
+
|
|
96
|
+
`;var It=class extends y(t=>(e,s)=>{t.styles(e,Ve);let o=t.signal(s);return v`
|
|
97
|
+
<button @click="${()=>{o.value++}}">
|
|
98
|
+
${o()}
|
|
99
|
+
</button>
|
|
100
|
+
`}).component(class extends Q{attrs=u.attrs(this).spec({start:Number})}).props(t=>[t.theme,t.attrs.start??1]){};var We={ShinyCopy:Wt,ShinyExample:It};function Sr(r){return St(We).map(t=>class extends t{theme=r;static view=super.view.transmute((...e)=>[r,...e])})}function Ie(r){return St(Sr(r)).map(t=>t.view)}var Fe=g`
|
|
101
|
+
|
|
102
|
+
:host {
|
|
103
|
+
position: relative;
|
|
104
|
+
|
|
105
|
+
display: flex;
|
|
106
|
+
flex-wrap: wrap;
|
|
107
|
+
|
|
108
|
+
padding: 1em;
|
|
109
|
+
border-radius: 0.5em;
|
|
110
|
+
gap: 1em;
|
|
111
|
+
|
|
112
|
+
background: linear-gradient(to right top, #252dd985, #aa6affbd);
|
|
113
|
+
backdrop-filter: blur(0.5em);
|
|
114
|
+
|
|
115
|
+
box-shadow: 0 0 5em #5d1fadaa;
|
|
116
|
+
border-top: 2px solid #fff4;
|
|
117
|
+
|
|
118
|
+
&::before {
|
|
119
|
+
content: "";
|
|
120
|
+
display: block;
|
|
121
|
+
position: absolute;
|
|
122
|
+
inset: 0;
|
|
123
|
+
border-radius: 0.5em;
|
|
124
|
+
background: #0007;
|
|
125
|
+
width: calc(100% - 0.3em);
|
|
126
|
+
height: calc(100% - 0.3em);
|
|
127
|
+
margin: auto;
|
|
128
|
+
z-index: 0;
|
|
129
|
+
}
|
|
130
|
+
|
|
131
|
+
> * {
|
|
132
|
+
position: relative;
|
|
133
|
+
z-index: 1;
|
|
134
|
+
}
|
|
135
|
+
}
|
|
136
|
+
|
|
137
|
+
.meta {
|
|
138
|
+
flex: 1 1 10em;
|
|
139
|
+
display: flex;
|
|
140
|
+
flex-direction: column;
|
|
141
|
+
gap: 0.5em;
|
|
142
|
+
|
|
143
|
+
h2 {
|
|
144
|
+
color: var(--prime);
|
|
145
|
+
}
|
|
146
|
+
|
|
147
|
+
.codes {
|
|
148
|
+
display: flex;
|
|
149
|
+
flex-direction: column;
|
|
150
|
+
gap: 0.2em;
|
|
151
|
+
}
|
|
152
|
+
|
|
153
|
+
.codeblock {
|
|
154
|
+
display: flex;
|
|
155
|
+
background: #0002;
|
|
156
|
+
border-radius: 0.3em;
|
|
157
|
+
border-bottom: 1px solid #fff2;
|
|
158
|
+
box-shadow: inset 0.2em 0.3em 2em #0004;
|
|
159
|
+
|
|
160
|
+
.zone {
|
|
161
|
+
flex: 1 1 auto;
|
|
162
|
+
display: flex;
|
|
163
|
+
flex-direction: column;
|
|
164
|
+
padding: 0.5em;
|
|
165
|
+
|
|
166
|
+
h3 {
|
|
167
|
+
opacity: 0.4;
|
|
168
|
+
font-size: 0.7em;
|
|
169
|
+
font-weight: normal;
|
|
170
|
+
font-style: italic;
|
|
171
|
+
}
|
|
172
|
+
|
|
173
|
+
code {
|
|
174
|
+
display: block;
|
|
175
|
+
white-space: pre;
|
|
176
|
+
text-wrap: wrap;
|
|
177
|
+
tab-size: 2;
|
|
178
|
+
|
|
179
|
+
font-size: 0.8em;
|
|
180
|
+
font-family: monospace;
|
|
181
|
+
color: #8f8;
|
|
182
|
+
}
|
|
183
|
+
}
|
|
184
|
+
|
|
185
|
+
[view="shiny-copy"] {
|
|
186
|
+
flex: 0 0 0;
|
|
187
|
+
padding: 0.2em;
|
|
188
|
+
}
|
|
189
|
+
}
|
|
190
|
+
}
|
|
191
|
+
|
|
192
|
+
.content {
|
|
193
|
+
flex: 1 1 10rem;
|
|
194
|
+
display: flex;
|
|
195
|
+
flex-direction: column;
|
|
196
|
+
justify-content: center;
|
|
197
|
+
align-items: center;
|
|
198
|
+
|
|
199
|
+
padding: 1rem;
|
|
200
|
+
border-radius: 0.5rem;
|
|
201
|
+
border: 1px dashed #fff4;
|
|
202
|
+
}
|
|
203
|
+
|
|
204
|
+
`;function Xe(r){let t=r.split(/\r|\n/),e;for(let o of t)if(!/^\s+$/.test(o)){let n=o.match(/^(\t+).+/);if(n){let c=n[1].length;if(e=e===void 0||c<e?c:e,e===0)break}}let s=new RegExp(`^\\t{${e}}`);return t.map(o=>/^\s+$/.test(o)?"":o).map(o=>o.replace(s,"")).join(`
|
|
205
|
+
`)}var Ye=y(r=>t=>{r.name(t.name),r.styles(dt,Fe);function e(s,o){let i=Xe(o).trim();return v`
|
|
206
|
+
<div class=codeblock>
|
|
207
|
+
<div class=zone>
|
|
208
|
+
<h3>${s}</h3>
|
|
209
|
+
<code>${i}</code>
|
|
210
|
+
</div>
|
|
211
|
+
${t.views.ShinyCopy(i)}
|
|
212
|
+
</div>
|
|
213
|
+
`}return v`
|
|
214
|
+
<div class=meta>
|
|
215
|
+
<h2>✨ ${t.name}</h2>
|
|
216
|
+
<div class=explain>${t.explain}</div>
|
|
217
|
+
<div class=codes>
|
|
218
|
+
${e("sly view",t.exampleView)}
|
|
219
|
+
${e("html web component",t.exampleComponent)}
|
|
220
|
+
</div>
|
|
221
|
+
</div>
|
|
222
|
+
|
|
223
|
+
<div class=content part=content>
|
|
224
|
+
${t.content}
|
|
225
|
+
</div>
|
|
226
|
+
`});var Ze=Ie(Vt.basic);u.register({ShinyDemo:y.component(r=>(r.styles(g`
|
|
227
|
+
:host {
|
|
228
|
+
display: flex;
|
|
229
|
+
flex-direction: column;
|
|
230
|
+
gap: 1em;
|
|
231
|
+
}
|
|
232
|
+
|
|
233
|
+
[view="shiny-copy"]::part(content) {
|
|
234
|
+
font-size: 4em;
|
|
235
|
+
}
|
|
236
|
+
`),[Ye({views:Ze,name:"shiny-copy",explain:v`
|
|
237
|
+
<p>button for click-to-copy text</p>
|
|
238
|
+
`,exampleView:`
|
|
239
|
+
ShinyCopy("hello world")
|
|
240
|
+
`,exampleComponent:`
|
|
241
|
+
<shiny-copy text="hello world"></shiny-copy>
|
|
242
|
+
`,content:Ze.ShinyCopy("hello world")})]))});console.log("\u2728 shiny");
|
|
243
|
+
/*! Bundled license information:
|
|
244
|
+
|
|
245
|
+
@lit/reactive-element/css-tag.js:
|
|
246
|
+
(**
|
|
247
|
+
* @license
|
|
248
|
+
* Copyright 2019 Google LLC
|
|
249
|
+
* SPDX-License-Identifier: BSD-3-Clause
|
|
250
|
+
*)
|
|
251
|
+
|
|
252
|
+
@lit/reactive-element/reactive-element.js:
|
|
253
|
+
lit-html/lit-html.js:
|
|
254
|
+
lit-element/lit-element.js:
|
|
255
|
+
lit-html/directive.js:
|
|
256
|
+
lit-html/async-directive.js:
|
|
257
|
+
(**
|
|
258
|
+
* @license
|
|
259
|
+
* Copyright 2017 Google LLC
|
|
260
|
+
* SPDX-License-Identifier: BSD-3-Clause
|
|
261
|
+
*)
|
|
262
|
+
|
|
263
|
+
lit-html/is-server.js:
|
|
264
|
+
(**
|
|
265
|
+
* @license
|
|
266
|
+
* Copyright 2022 Google LLC
|
|
267
|
+
* SPDX-License-Identifier: BSD-3-Clause
|
|
268
|
+
*)
|
|
269
|
+
|
|
270
|
+
lit-html/directive-helpers.js:
|
|
271
|
+
(**
|
|
272
|
+
* @license
|
|
273
|
+
* Copyright 2020 Google LLC
|
|
274
|
+
* SPDX-License-Identifier: BSD-3-Clause
|
|
275
|
+
*)
|
|
276
|
+
*/
|
|
277
|
+
//# sourceMappingURL=demo.bundle.min.js.map
|