@e280/sly 0.2.1 → 0.2.2
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/package.json +2 -2
- package/s/view/types.ts +6 -0
- package/s/view/utils/make-view.ts +12 -2
- package/s/view/utils/parts/capsule.ts +5 -3
- package/s/view/utils/parts/directive.ts +4 -1
- package/s/view/utils/parts/naked.ts +74 -0
- package/s/view/utils/parts/sly-view.ts +6 -1
- package/x/demo/demo.bundle.min.js +15 -15
- package/x/demo/demo.bundle.min.js.map +4 -4
- package/x/index.html +2 -2
- package/x/view/types.d.ts +5 -0
- package/x/view/utils/make-view.js +9 -1
- package/x/view/utils/make-view.js.map +1 -1
- package/x/view/utils/parts/capsule.d.ts +2 -3
- package/x/view/utils/parts/capsule.js +5 -4
- package/x/view/utils/parts/capsule.js.map +1 -1
- package/x/view/utils/parts/directive.js +3 -1
- package/x/view/utils/parts/directive.js.map +1 -1
- package/x/view/utils/parts/naked.d.ts +18 -0
- package/x/view/utils/parts/naked.js +57 -0
- package/x/view/utils/parts/naked.js.map +1 -0
- package/x/view/utils/parts/sly-view.d.ts +1 -0
- package/x/view/utils/parts/sly-view.js +4 -1
- package/x/view/utils/parts/sly-view.js.map +1 -1
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@e280/sly",
|
|
3
|
-
"version": "0.2.
|
|
3
|
+
"version": "0.2.2",
|
|
4
4
|
"description": "web shadow views",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"type": "module",
|
|
@@ -23,7 +23,7 @@
|
|
|
23
23
|
"lit": "^3.3.1"
|
|
24
24
|
},
|
|
25
25
|
"dependencies": {
|
|
26
|
-
"@e280/strata": "^0.2.
|
|
26
|
+
"@e280/strata": "^0.2.4",
|
|
27
27
|
"@e280/stz": "^0.2.14"
|
|
28
28
|
},
|
|
29
29
|
"devDependencies": {
|
package/s/view/types.ts
CHANGED
|
@@ -24,6 +24,7 @@ export type View<Props extends any[]> = {
|
|
|
24
24
|
ComponentClass<B, Props>
|
|
25
25
|
)
|
|
26
26
|
}
|
|
27
|
+
naked: (host: HTMLElement) => NakedView<Props>
|
|
27
28
|
}
|
|
28
29
|
|
|
29
30
|
export type ViewProps<V extends View<any>> = (
|
|
@@ -37,3 +38,8 @@ export type ComponentClass<B extends Constructor<BaseElement>, Props extends any
|
|
|
37
38
|
new(): InstanceType<B>
|
|
38
39
|
} & B
|
|
39
40
|
|
|
41
|
+
export type NakedView<Props extends any[]> = {
|
|
42
|
+
host: HTMLElement
|
|
43
|
+
render: (...props: Props) => void
|
|
44
|
+
}
|
|
45
|
+
|
|
@@ -1,12 +1,14 @@
|
|
|
1
1
|
|
|
2
2
|
import {Constructor} from "@e280/stz"
|
|
3
3
|
import {DirectiveResult} from "lit/async-directive.js"
|
|
4
|
-
|
|
4
|
+
|
|
5
|
+
import {NakedView, View, ViewFn} from "../types.js"
|
|
5
6
|
import {ViewChain} from "./parts/chain.js"
|
|
6
|
-
import {BaseElement} from "../../base/element.js"
|
|
7
7
|
import {ViewContext} from "./parts/context.js"
|
|
8
|
+
import {BaseElement} from "../../base/element.js"
|
|
8
9
|
import {makeComponent} from "./make-component.js"
|
|
9
10
|
import {makeViewDirective} from "./parts/directive.js"
|
|
11
|
+
import {NakedContext, NakedCapsule} from "./parts/naked.js"
|
|
10
12
|
|
|
11
13
|
export function makeView<Props extends any[]>(
|
|
12
14
|
viewFn: ViewFn<Props>,
|
|
@@ -43,6 +45,14 @@ export function makeView<Props extends any[]>(
|
|
|
43
45
|
)
|
|
44
46
|
})
|
|
45
47
|
|
|
48
|
+
v.naked = (host: HTMLElement): NakedView<Props> => {
|
|
49
|
+
const naked = new NakedCapsule(host, viewFn, settings)
|
|
50
|
+
return {
|
|
51
|
+
host,
|
|
52
|
+
render: (...props: Props) => naked.update(new NakedContext(props)),
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
|
|
46
56
|
return v
|
|
47
57
|
}
|
|
48
58
|
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
|
|
2
2
|
import {debounce} from "@e280/stz"
|
|
3
3
|
import {ViewFn} from "../../types.js"
|
|
4
|
-
import {SlyView} from "./sly-view.js"
|
|
5
4
|
import {dom} from "../../../dom/dom.js"
|
|
6
5
|
import {ViewContext} from "./context.js"
|
|
7
6
|
import {Reactor} from "../../../base/utils/reactor.js"
|
|
@@ -11,18 +10,20 @@ import {_disconnect, _reconnect, _wrap, Use} from "../../../base/use.js"
|
|
|
11
10
|
|
|
12
11
|
/** controls the rendering of view context into an element. */
|
|
13
12
|
export class ViewCapsule<Props extends any[]> {
|
|
14
|
-
#element
|
|
13
|
+
#element: HTMLElement
|
|
15
14
|
#reactor = new Reactor()
|
|
16
15
|
|
|
17
16
|
#use: Use
|
|
18
17
|
#shadow: ShadowRoot
|
|
19
18
|
#context!: ViewContext<Props>
|
|
20
|
-
#attrWatcher
|
|
19
|
+
#attrWatcher: AttrWatcher
|
|
21
20
|
|
|
22
21
|
constructor(
|
|
22
|
+
host: HTMLElement,
|
|
23
23
|
private viewFn: ViewFn<Props>,
|
|
24
24
|
private settings: ShadowRootInit,
|
|
25
25
|
) {
|
|
26
|
+
this.#element = host
|
|
26
27
|
this.#shadow = this.#element.attachShadow(this.settings)
|
|
27
28
|
this.#use = new Use(
|
|
28
29
|
this.#element,
|
|
@@ -30,6 +31,7 @@ export class ViewCapsule<Props extends any[]> {
|
|
|
30
31
|
this.#renderNow,
|
|
31
32
|
this.#renderDebounced,
|
|
32
33
|
)
|
|
34
|
+
this.#attrWatcher = new AttrWatcher(this.#element, () => this.#renderDebounced())
|
|
33
35
|
}
|
|
34
36
|
|
|
35
37
|
update(context: ViewContext<Props>) {
|
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
|
|
2
2
|
import {AsyncDirective, directive, DirectiveResult} from "lit/async-directive.js"
|
|
3
|
+
|
|
4
|
+
import {SlyView} from "./sly-view.js"
|
|
3
5
|
import {ViewFn} from "../../types.js"
|
|
4
6
|
import {ViewCapsule} from "./capsule.js"
|
|
5
7
|
import {ViewContext} from "./context.js"
|
|
@@ -11,7 +13,8 @@ export function makeViewDirective<Props extends any[]>(
|
|
|
11
13
|
) {
|
|
12
14
|
|
|
13
15
|
return directive(class ViewDirective extends AsyncDirective {
|
|
14
|
-
#
|
|
16
|
+
#host = SlyView.make()
|
|
17
|
+
#capsule = new ViewCapsule(this.#host, viewFn, settings)
|
|
15
18
|
|
|
16
19
|
render(context: ViewContext<Props>) {
|
|
17
20
|
return this.#capsule.update(context)
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
|
|
2
|
+
import {debounce} from "@e280/stz"
|
|
3
|
+
import {ViewFn} from "../../types.js"
|
|
4
|
+
import {dom} from "../../../dom/dom.js"
|
|
5
|
+
import {AttrValue} from "../../../dom/types.js"
|
|
6
|
+
import {Reactor} from "../../../base/utils/reactor.js"
|
|
7
|
+
import {attrSet} from "../../../dom/attrs/parts/attr-fns.js"
|
|
8
|
+
import {AttrWatcher} from "../../../base/utils/attr-watcher.js"
|
|
9
|
+
import {_disconnect, _reconnect, _wrap, Use} from "../../../base/use.js"
|
|
10
|
+
|
|
11
|
+
/** the information we need to render a view. */
|
|
12
|
+
export class NakedContext<Props extends any[]> {
|
|
13
|
+
attrs = new Map<string, AttrValue>()
|
|
14
|
+
constructor(public props: Props) {}
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
/** controls the rendering of view context into an element. */
|
|
18
|
+
export class NakedCapsule<Props extends any[]> {
|
|
19
|
+
#element: HTMLElement
|
|
20
|
+
#reactor = new Reactor()
|
|
21
|
+
|
|
22
|
+
#use: Use
|
|
23
|
+
#shadow: ShadowRoot
|
|
24
|
+
#context!: NakedContext<Props>
|
|
25
|
+
#attrWatcher: AttrWatcher
|
|
26
|
+
|
|
27
|
+
constructor(
|
|
28
|
+
host: HTMLElement,
|
|
29
|
+
private viewFn: ViewFn<Props>,
|
|
30
|
+
private settings: ShadowRootInit,
|
|
31
|
+
) {
|
|
32
|
+
this.#element = host
|
|
33
|
+
this.#shadow = this.#element.attachShadow(this.settings)
|
|
34
|
+
this.#use = new Use(
|
|
35
|
+
this.#element,
|
|
36
|
+
this.#shadow,
|
|
37
|
+
this.#renderNow,
|
|
38
|
+
this.#renderDebounced,
|
|
39
|
+
)
|
|
40
|
+
this.#attrWatcher = new AttrWatcher(this.#element, () => this.#renderDebounced())
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
update(context: NakedContext<Props>) {
|
|
44
|
+
this.#context = context
|
|
45
|
+
this.#renderNow()
|
|
46
|
+
return this.#element
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
#renderNow = () => {
|
|
50
|
+
this.#use[_wrap](() => {
|
|
51
|
+
const content = this.#reactor.effect(
|
|
52
|
+
() => this.viewFn(this.#use)(...this.#context.props),
|
|
53
|
+
() => this.#renderDebounced(),
|
|
54
|
+
)
|
|
55
|
+
attrSet.entries(this.#element, this.#context.attrs)
|
|
56
|
+
dom.render(this.#shadow, content)
|
|
57
|
+
this.#attrWatcher.start()
|
|
58
|
+
})
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
#renderDebounced = debounce(0, this.#renderNow)
|
|
62
|
+
|
|
63
|
+
disconnected() {
|
|
64
|
+
this.#use[_disconnect]()
|
|
65
|
+
this.#reactor.clear()
|
|
66
|
+
this.#attrWatcher.stop()
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
reconnected() {
|
|
70
|
+
this.#use[_reconnect]()
|
|
71
|
+
this.#attrWatcher.start()
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
|
|
@@ -4,11 +4,16 @@ import {dom} from "../../../dom/dom.js"
|
|
|
4
4
|
/** <sly-view> element that views are rendered into. */
|
|
5
5
|
export class SlyView extends HTMLElement {
|
|
6
6
|
static #registered = false
|
|
7
|
-
|
|
7
|
+
|
|
8
|
+
static register() {
|
|
8
9
|
if (!this.#registered) {
|
|
9
10
|
dom.register({SlyView}, {soft: true, upgrade: true})
|
|
10
11
|
this.#registered = true
|
|
11
12
|
}
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
static make() {
|
|
16
|
+
this.register()
|
|
12
17
|
return document.createElement("sly-view") as SlyView
|
|
13
18
|
}
|
|
14
19
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
var
|
|
2
|
-
\f\r]`,
|
|
3
|
-
\f\r"'\`<>=]|("|')|))|$)`,"g"),Ce=/'/g,ke=/"/g,Oe=/^(?:script|style|textarea|title)$/i,he=s=>(t,...e)=>({_$litType$:s,strings:t,values:e}),_=he(1),hr=he(2),ur=he(3),L=Symbol.for("lit-noChange"),g=Symbol.for("lit-nothing"),Pe=new WeakMap,N=j.createTreeWalker(j,129);function Te(s,t){if(!ce(s)||!s.hasOwnProperty("raw"))throw Error("invalid template strings array");return ve!==void 0?ve.createHTML(t):t}var Me=(s,t)=>{let e=s.length-1,r=[],o,i=t===2?"<svg>":t===3?"<math>":"",n=nt;for(let c=0;c<e;c++){let a=s[c],u,d,l=-1,w=0;for(;w<a.length&&(n.lastIndex=w,d=n.exec(a),d!==null);)w=n.lastIndex,n===nt?d[1]==="!--"?n=Se:d[1]!==void 0?n=Ee:d[2]!==void 0?(Oe.test(d[2])&&(o=RegExp("</"+d[2],"g")),n=M):d[3]!==void 0&&(n=M):n===M?d[0]===">"?(n=o??nt,l=-1):d[1]===void 0?l=-2:(l=n.lastIndex-d[2].length,u=d[1],n=d[3]===void 0?M:d[3]==='"'?ke:Ce):n===ke||n===Ce?n=M:n===Se||n===Ee?n=nt:(n=M,o=void 0);let R=n===M&&s[c+1].startsWith("/>")?" ":"";i+=n===nt?a+as:l>=0?(r.push(u),a.slice(0,l)+ne+a.slice(l)+k+R):a+k+(l===-2?c:R)}return[Te(s,i+(s[e]||"<?>")+(t===2?"</svg>":t===3?"</math>":"")),r]},ht=class s{constructor({strings:t,_$litType$:e},r){let o;this.parts=[];let i=0,n=0,c=t.length-1,a=this.parts,[u,d]=Me(t,e);if(this.el=s.createElement(u,r),N.currentNode=this.el.content,e===2||e===3){let l=this.el.content.firstChild;l.replaceWith(...l.childNodes)}for(;(o=N.nextNode())!==null&&a.length<c;){if(o.nodeType===1){if(o.hasAttributes())for(let l of o.getAttributeNames())if(l.endsWith(ne)){let w=d[n++],R=o.getAttribute(l).split(k),bt=/([.?@])?(.*)/.exec(w);a.push({type:1,index:i,name:bt[2],strings:R,ctor:bt[1]==="."?St:bt[1]==="?"?Et:bt[1]==="@"?Ct:H}),o.removeAttribute(l)}else l.startsWith(k)&&(a.push({type:6,index:i}),o.removeAttribute(l));if(Oe.test(o.tagName)){let l=o.textContent.split(k),w=l.length-1;if(w>0){o.textContent=At?At.emptyScript:"";for(let R=0;R<w;R++)o.append(l[R],at()),N.nextNode(),a.push({type:2,index:++i});o.append(l[w],at())}}}else if(o.nodeType===8)if(o.data===ae)a.push({type:2,index:i});else{let l=-1;for(;(l=o.data.indexOf(k,l+1))!==-1;)a.push({type:7,index:i}),l+=k.length-1}i++}}static createElement(t,e){let r=j.createElement("template");return r.innerHTML=t,r}};function U(s,t,e=s,r){if(t===L)return t;let o=r!==void 0?e._$Co?.[r]:e._$Cl,i=ct(t)?void 0:t._$litDirective$;return o?.constructor!==i&&(o?._$AO?.(!1),i===void 0?o=void 0:(o=new i(s),o._$AT(s,e,r)),r!==void 0?(e._$Co??=[])[r]=o:e._$Cl=o),o!==void 0&&(t=U(s,o._$AS(s,t.values),o,r)),t}var vt=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:r}=this._$AD,o=(t?.creationScope??j).importNode(e,!0);N.currentNode=o;let i=N.nextNode(),n=0,c=0,a=r[0];for(;a!==void 0;){if(n===a.index){let u;a.type===2?u=new I(i,i.nextSibling,this,t):a.type===1?u=new a.ctor(i,a.name,a.strings,this,t):a.type===6&&(u=new kt(i,this,t)),this._$AV.push(u),a=r[++c]}n!==a?.index&&(i=N.nextNode(),n++)}return N.currentNode=j,o}p(t){let e=0;for(let r of this._$AV)r!==void 0&&(r.strings!==void 0?(r._$AI(t,r,e),e+=r.strings.length-2):r._$AI(t[e])),e++}},I=class s{get _$AU(){return this._$AM?._$AU??this._$Cv}constructor(t,e,r,o){this.type=2,this._$AH=g,this._$AN=void 0,this._$AA=t,this._$AB=e,this._$AM=r,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=U(this,t,e),ct(t)?t===g||t==null||t===""?(this._$AH!==g&&this._$AR(),this._$AH=g):t!==this._$AH&&t!==L&&this._(t):t._$litType$!==void 0?this.$(t):t.nodeType!==void 0?this.T(t):Re(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!==g&&ct(this._$AH)?this._$AA.nextSibling.data=t:this.T(j.createTextNode(t)),this._$AH=t}$(t){let{values:e,_$litType$:r}=t,o=typeof r=="number"?this._$AC(t):(r.el===void 0&&(r.el=ht.createElement(Te(r.h,r.h[0]),this.options)),r);if(this._$AH?._$AD===o)this._$AH.p(e);else{let i=new vt(o,this),n=i.u(this.options);i.p(e),this.T(n),this._$AH=i}}_$AC(t){let e=Pe.get(t.strings);return e===void 0&&Pe.set(t.strings,e=new ht(t)),e}k(t){ce(this._$AH)||(this._$AH=[],this._$AR());let e=this._$AH,r,o=0;for(let i of t)o===e.length?e.push(r=new s(this.O(at()),this.O(at()),this,this.options)):r=e[o],r._$AI(i),o++;o<e.length&&(this._$AR(r&&r._$AB.nextSibling,o),e.length=o)}_$AR(t=this._$AA.nextSibling,e){for(this._$AP?.(!1,!0,e);t!==this._$AB;){let r=t.nextSibling;t.remove(),t=r}}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,r,o,i){this.type=1,this._$AH=g,this._$AN=void 0,this.element=t,this.name=e,this._$AM=o,this.options=i,r.length>2||r[0]!==""||r[1]!==""?(this._$AH=Array(r.length-1).fill(new String),this.strings=r):this._$AH=g}_$AI(t,e=this,r,o){let i=this.strings,n=!1;if(i===void 0)t=U(this,t,e,0),n=!ct(t)||t!==this._$AH&&t!==L,n&&(this._$AH=t);else{let c=t,a,u;for(t=i[0],a=0;a<i.length-1;a++)u=U(this,c[r+a],e,a),u===L&&(u=this._$AH[a]),n||=!ct(u)||u!==this._$AH[a],u===g?t=g:t!==g&&(t+=(u??"")+i[a+1]),this._$AH[a]=u}n&&!o&&this.j(t)}j(t){t===g?this.element.removeAttribute(this.name):this.element.setAttribute(this.name,t??"")}},St=class extends H{constructor(){super(...arguments),this.type=3}j(t){this.element[this.name]=t===g?void 0:t}},Et=class extends H{constructor(){super(...arguments),this.type=4}j(t){this.element.toggleAttribute(this.name,!!t&&t!==g)}},Ct=class extends H{constructor(t,e,r,o,i){super(t,e,r,o,i),this.type=5}_$AI(t,e=this){if((t=U(this,t,e,0)??g)===L)return;let r=this._$AH,o=t===g&&r!==g||t.capture!==r.capture||t.once!==r.once||t.passive!==r.passive,i=t!==g&&(r===g||o);o&&this.element.removeEventListener(this.name,this,r),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)}},kt=class{constructor(t,e,r){this.element=t,this.type=6,this._$AN=void 0,this._$AM=e,this.options=r}get _$AU(){return this._$AM._$AU}_$AI(t){U(this,t)}},Ne={M:ne,P:k,A:ae,C:1,L:Me,R:vt,D:Re,V:U,I,H,N:Et,U:Ct,B:St,F:kt},cs=ie.litHtmlPolyfillSupport;cs?.(ht,I),(ie.litHtmlVersions??=[]).push("3.3.1");var O=(s,t,e)=>{let r=e?.renderBefore??t,o=r._$litPart$;if(o===void 0){let i=e?.renderBefore??null;r._$litPart$=o=new I(t.insertBefore(at(),i),i,void 0,e??{})}return o._$AI(s),o};var ue=globalThis,V=class extends C{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=O(e,this.renderRoot,this.renderOptions)}connectedCallback(){super.connectedCallback(),this._$Do?.setConnected(!0)}disconnectedCallback(){super.disconnectedCallback(),this._$Do?.setConnected(!1)}render(){return L}};V._$litElement$=!0,V.finalized=!0,ue.litElementHydrateSupport?.({LitElement:V});var hs=ue.litElementPolyfillSupport;hs?.({LitElement:V});(ue.litElementVersions??=[]).push("4.2.1");var A={string:(s,t)=>s.getAttribute(t)??void 0,number:(s,t)=>{let e=s.getAttribute(t);return e===null||!e?void 0:Number(e)},boolean:(s,t)=>s.getAttribute(t)!==null},y={string:(s,t,e)=>(e===void 0?s.removeAttribute(t):s.setAttribute(t,e),!0),number:(s,t,e)=>(e===void 0?s.removeAttribute(t):s.setAttribute(t,e.toString()),!0),boolean:(s,t,e)=>(e?s.setAttribute(t,""):s.removeAttribute(t),!0),any:(s,t,e)=>{e==null?s.removeAttribute(t):typeof e=="string"?s.setAttribute(t,e):typeof e=="number"?s.setAttribute(t,e.toString()):typeof e=="boolean"?e===!0?s.setAttribute(t,""):s.removeAttribute(t):console.warn(`invalid attribute "${t}" type is "${typeof e}"`)},entries:(s,t)=>{for(let[e,r]of t)y.any(s,e,r)},record:(s,t)=>y.entries(s,Object.entries(t))};function je(s,t={}){let e=document.createElement(s);return y.record(e,t),e}function Le(s){let t=document.createDocumentFragment();return O(s,t),t.firstElementChild}function W(s,t){let e=[];for(let[r,o]of Object.entries(t))if(typeof o=="function")s.addEventListener(r,o),e.push(()=>s.removeEventListener(r,o));else{let[i,n]=o;s.addEventListener(r,n,i),e.push(()=>s.removeEventListener(r,n))}return()=>e.forEach(r=>r())}function Ue(s,t){let e=new MutationObserver(t);return e.observe(s,{attributes:!0}),()=>e.disconnect()}var He=(s,t)=>new Proxy(t,{get:(e,r)=>{switch(t[r]){case String:return A.string(s,r);case Number:return A.number(s,r);case Boolean:return A.boolean(s,r);default:throw new Error(`invalid attribute type for "${r}"`)}},set:(e,r,o)=>{switch(t[r]){case String:return y.string(s,r,o);case Number:return y.number(s,r,o);case Boolean:return y.boolean(s,r,o);default:throw new Error(`invalid attribute type for "${r}"`)}}});var Pt=class{element;constructor(t){this.element=t}strings=new Proxy({},{get:(t,e)=>A.string(this.element,e),set:(t,e,r)=>y.string(this.element,e,r)});numbers=new Proxy({},{get:(t,e)=>A.number(this.element,e),set:(t,e,r)=>y.number(this.element,e,r)});booleans=new Proxy({},{get:(t,e)=>A.boolean(this.element,e),set:(t,e,r)=>y.boolean(this.element,e,r)})};function G(s){let t=new Pt(s);return{strings:t.strings,numbers:t.numbers,booleans:t.booleans,on:e=>Ue(s,e),spec:e=>He(s,e)}}G.get=A;G.set=y;function ze(s){return new pe(s)}var pe=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,r]of Object.entries(t))this.attr(e,r);return this}children(...t){return this.#e.push(...t),this}done(){let t=document.createElement(this.tagName);return y.entries(t,this.#t),t.append(...this.#e),t}};function F(s,t=document){let e=t.querySelector(s);if(!e)throw new Error(`element not found (${s})`);return e}function Rt(s,t=document){return t.querySelector(s)}function Ot(s,t=document){return Array.from(t.querySelectorAll(s))}var Tt=class s{element;#t;constructor(t){this.element=t}in(t){return new s(typeof t=="string"?F(t,this.element):t)}require(t){return F(t,this.element)}maybe(t){return Rt(t,this.element)}all(t){return Ot(t,this.element)}render(...t){return O(t,this.element)}get attrs(){return this.#t??=G(this.element)}events(t){return W(this.element,t)}};function De(s){return s.replace(/([a-zA-Z])(?=[A-Z])/g,"$1-").toLowerCase()}function qe(s,t={}){let{soft:e=!1,upgrade:r=!0}=t;for(let[o,i]of Object.entries(s)){let n=De(o),c=customElements.get(n);e&&c||(customElements.define(n,i),r&&document.querySelectorAll(n).forEach(a=>{a.constructor===HTMLElement&&customElements.upgrade(a)}))}}function p(s,t=document){return F(s,t)}p.in=(s,t=document)=>new Tt(t).in(s);p.require=F;p.maybe=Rt;p.all=Ot;p.el=je;p.elmer=ze;p.mk=Le;p.events=W;p.attrs=G;p.register=qe;p.render=(s,...t)=>O(t,s);var Mt=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,r]of Object.entries(t))this.#e.attrs.set(e,r);return this}children(...t){return this.#e.children.push(...t),this}render(){return this.#t(this.#e)}};function Nt(s,t){let e,r,o=[];function i(){e=[],r&&clearTimeout(r),r=void 0,o=[]}return i(),((...n)=>{e=n,r&&clearTimeout(r);let c=new Promise((a,u)=>{o.push({resolve:a,reject:u})});return r=setTimeout(()=>{Promise.resolve().then(()=>t(...e)).then(a=>{for(let{resolve:u}of o)u(a);i()}).catch(a=>{for(let{reject:u}of o)u(a);i()})},s),c})}function z(){let s,t,e=new Promise((o,i)=>{s=o,t=i});function r(o){return o.then(s).catch(t),e}return{promise:e,resolve:s,reject:t,entangle:r}}function jt(s){let t=null;return((...e)=>(t?t.params=e:(t={params:e,deferred:z()},queueMicrotask(()=>{let{params:r,deferred:o}=t;t=null,Promise.resolve(s(...r)).then(o.resolve).catch(o.reject)})),t.deferred.promise))}var P={};ee(P,{clone:()=>ut,equal:()=>us,freeze:()=>ps});function ut(s,t=new Set){if(t.has(s))throw new Error("cannot clone circular reference");let e;return typeof s=="function"||s!==null&&typeof s=="object"?(t.add(s),Array.isArray(s)?e=s.map(r=>ut(r,new Set(t))):s.constructor===Object?e=Object.fromEntries(Object.entries(s).map(([r,o])=>[r,ut(o,new Set(t))])):s instanceof Map?e=new Map(Array.from(s,([r,o])=>[r,ut(o,new Set(t))])):s instanceof Set?e=new Set(Array.from(s,r=>ut(r,new Set(t)))):s instanceof Date?e=new Date(s.getTime()):e=s,t.delete(s)):e=s,e}var pt=Object.freeze({happy:s=>s!=null,sad:s=>s==null,boolean:s=>typeof s=="boolean",number:s=>typeof s=="number",string:s=>typeof s=="string",bigint:s=>typeof s=="bigint",object:s=>typeof s=="object"&&s!==null,array:s=>Array.isArray(s),fn:s=>typeof s=="function",symbol:s=>typeof s=="symbol"});var us=(s,t)=>{function e(r,o,i){if(!pt.object(r)||!pt.object(o))return r===o;if(i.includes(r))throw new Error("forbidden circularity detected in deep equal comparison");let n=[...i,r];if(r instanceof Map&&o instanceof Map){if(r.size!==o.size)return!1;for(let[c,a]of r)if(!o.has(c)||!e(a,o.get(c),n))return!1}else if(r instanceof Set&&o instanceof Set){if(r.size!==o.size)return!1;for(let c of r)if(!Array.from(o).some(a=>e(c,a,n)))return!1}else{let c=Object.keys(r),a=Object.keys(o);if(c.length!==a.length)return!1;for(let u of c)if(!a.includes(u)||!e(r[u],o[u],n))return!1}return!0}return e(s,t,[])};function ps(s){function t(e,r){if(!pt.object(e)||r.includes(e))return e;let o=[...r,e];if(e instanceof Map)for(let i of e.entries())for(let n of i)t(n,o);else if(e instanceof Set)for(let i of e)t(i,o);else if(Array.isArray(e))for(let i of e)t(i,o);else for(let i of Object.values(e))t(i,o);return Object.freeze(e)}return t(s,[])}var J=class s 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,r){if(t.has(e))return t.get(e);{let o=r();return t.set(e,o),o}}array(){return[...this]}require(t){return s.require(this,t)}guarantee(t,e){return s.guarantee(this,t,e)}};function Lt(s){let t,e=!1,r=()=>{e=!0,clearTimeout(t)},o=async()=>{e||(await s(r),!e&&(t=setTimeout(o,0)))};return o(),r}var Ut=(s=0)=>new Promise(t=>setTimeout(t,s));function Be(){let s=new Set;async function t(...a){await Promise.all([...s].map(u=>u(...a)))}function e(a){return s.add(a),()=>{s.delete(a)}}async function r(...a){return t(...a)}function o(a){return e(a)}async function i(a){let{promise:u,resolve:d}=z(),l=o(async(...w)=>{a&&await a(...w),d(w),l()});return u}function n(){s.clear()}let c={pub:r,sub:o,publish:t,subscribe:e,on:e,next:i,clear:n};return Object.assign(o,c),Object.assign(r,c),c}function Z(s){let t=Be();return s&&t.sub(s),t.sub}function le(s){let t=Be();return s&&t.sub(s),t.pub}function Ie(s){return P.freeze(P.clone(s))}var me=class{#t=[];#e=new WeakMap;#s=[];#r=new Set;notifyRead(t){this.#t.at(-1)?.add(t)}async notifyWrite(t){if(this.#r.has(t))throw new Error("circularity forbidden");let e=this.#o(t).pub();return this.#s.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 r=new Set;this.#s.push(r),this.#r.add(t),r.add(e()),this.#r.delete(t),await Promise.all(r),this.#s.pop()})}#o(t){let e=this.#e.get(t);return e||(e=Z(),this.#e.set(t,e)),e}},f=globalThis[Symbol.for("e280.tracker")]??=new me;var v=Symbol("optic");var Ht=class{calculate;#t=!1;#e;constructor(t){this.calculate=t,this.#e=t()}get(){return this.#t&&(this.#t=!1,this.#e=this.calculate()),this.#e}invalidate(){this.#t=!0}};var zt=class s{on=Z();[v];#t;#e;#s=jt(()=>this.on.publish(this.state));constructor(t){this[v]=t,this.#t=P.clone(t.getState()),this.#e=new Ht(()=>Ie(t.getState()))}async update(){let t=this[v].getState();!P.equal(t,this.#t)&&(this.#e.invalidate(),this.#t=P.clone(t),this.#s(),await f.notifyWrite(this))}get state(){return f.notifyRead(this),this.#e.get()}async mutate(t){return this[v].mutate(t)}lens(t){let e=new s({getState:()=>t(this[v].getState()),mutate:r=>this[v].mutate(o=>r(t(o))),registerLens:this[v].registerLens});return this[v].registerLens(e),e}};var K=class{sneak;constructor(t){this.sneak=t}get(){return f.notifyRead(this),this.sneak}get value(){return this.get()}};var Q=class extends K{on=Z();dispose(){this.on.clear()}};function Dt(s,t=s){let{seen:e,result:r}=f.observe(s),o=jt(t),i=[],n=()=>i.forEach(c=>c());for(let c of e){let a=f.subscribe(c,o);i.push(a)}return{result:r,dispose:n}}function Y(s,t){return s===t}var qt=class extends Q{#t;constructor(t,e){let r=e?.compare??Y,{result:o,dispose:i}=Dt(t,async()=>{let n=t();!r(this.sneak,n)&&(this.sneak=n,await Promise.all([f.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 Bt=class extends K{#t;#e;#s=!1;#r;constructor(t,e){super(void 0),this.#t=t,this.#e=e?.compare??Y}toString(){return`($lazy "${String(this.get())}")`}get(){if(!this.#r){let{result:t,dispose:e}=Dt(this.#t,()=>this.#s=!0);this.#r=e,this.sneak=t}if(this.#s){this.#s=!1;let t=this.#t();!this.#e(this.sneak,t)&&(this.sneak=t,f.notifyWrite(this))}return super.get()}dispose(){this.#r&&this.#r()}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 It=class extends Q{#t=!1;#e;constructor(t,e){super(t),this.#e=e?.compare??Y}toString(){return`($signal "${String(this.get())}")`}async set(t,e=!1){let r=this.sneak;return this.sneak=t,(e||!this.#e(r,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([f.notifyWrite(this),this.on.publish(t)])}finally{this.#t=!1}return await e,t}get core(){return this}fn(){let t=this;function e(r){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:r=>t.value=r}),Object.defineProperty(e,"sneak",{get:()=>t.sneak,set:r=>t.sneak=r}),e}};function ls(s,t){return new Bt(s,t).fn()}function ms(s,t){return new qt(s,t).fn()}function x(s,t){return new It(s,t).fn()}x.lazy=ls;x.derived=ms;var T=class{#t=new J;effect(t,e){let{seen:r,result:o}=f.observe(t);for(let i of r)this.#t.guarantee(i,()=>f.subscribe(i,e));for(let[i,n]of this.#t)r.has(i)||(n(),this.#t.delete(i));return o}clear(){for(let t of this.#t.values())t();this.#t.clear()}};var X=class{element;response;#t;constructor(t,e){this.element=t,this.response=e}start(){this.#t||(this.#t=p.attrs(this.element).on(this.response))}stop(){this.#t&&this.#t(),this.#t=void 0}};function Vt(s,t){xt(s,ds(t))}function ds(s){let t=[];if(Array.isArray(s)){let e=new Set(s.flat(1/0).reverse());for(let r of e)t.unshift(B(r))}else s!==void 0&&t.push(B(s));return t}var D={status:s=>s[0],value:s=>s[0]==="ready"?s[1]:void 0,error:s=>s[0]==="error"?s[1]:void 0,select:(s,t)=>{switch(s[0]){case"loading":return t.loading();case"error":return t.error(s[1]);case"ready":return t.ready(s[1]);default:throw new Error("unknown op status")}},morph:(s,t)=>D.select(s,{loading:()=>["loading"],error:e=>["error",e],ready:e=>["ready",t(e)]}),all:(...s)=>{let t=[],e=[],r=0;for(let o of s)switch(o[0]){case"loading":r++;break;case"ready":t.push(o[1]);break;case"error":e.push(o[1]);break}return e.length>0?["error",e]:r===0?["ready",t]:["loading"]}};var q=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(r=>r.pod);return D.all(...e)}signal;#t=0;#e=le();#s=le();constructor(t=["loading"]){this.signal=x(t)}get wait(){return new Promise((t,e)=>{this.#e.next().then(([r])=>t(r)),this.#s.next().then(([r])=>e(r))})}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.#s(t)}async promise(t){let e=++this.#t;await this.setLoading();try{let r=await t;return e===this.#t&&await this.setReady(r),r}catch(r){console.error(r),e===this.#t&&await this.setError(r)}}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 D.value(this.signal.get())}get error(){return D.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 D.select(this.signal.get(),t)}morph(t){return D.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())}};var Gt=class{#t;constructor(t){this.#t=t.attachInternals().states}[Symbol.iterator](){return this.#t.values()}values(){return this.#t.values()}forEach(t){return this.#t.forEach(t),this}get size(){return this.#t.size}has(t){return this.#t.has(t)}add(...t){for(let e of t)this.#t.add(e);return this}delete(...t){for(let e of t)this.#t.delete(e);return this}clear(){return this.#t.clear(),this}assign(...t){return this.clear().add(...t)}};function Ve(s){let t=p.attrs(s.element);function e(r){return s.once(()=>t.spec(r))}return e.strings=t.strings,e.numbers=t.numbers,e.booleans=t.booleans,e.spec=r=>s.once(()=>t.spec(r)),e.on=r=>s.mount(()=>t.on(r)),e}var lt=Symbol(),mt=Symbol(),ft=Symbol(),tt=class{element;shadow;renderNow;render;attrs;#t=0;#e=0;#s=new J;#r=z();#o=new Wt;[lt](t){this.#t++,this.#e=0,this.#r=z();let e=t();return this.#r.resolve(),e}[mt](){this.#o.unmountAll()}[ft](){this.#o.remountAll()}constructor(t,e,r,o){this.element=t,this.shadow=e,this.renderNow=r,this.render=o,this.attrs=Ve(this)}get renderCount(){return this.#t}get rendered(){return this.#r.promise}name(t){this.once(()=>this.element.setAttribute("view",t))}styles(...t){this.once(()=>Vt(this.shadow,t))}css(...t){return this.styles(...t)}once(t){return this.#s.guarantee(this.#e++,t)}mount(t){return this.once(()=>this.#o.mount(t))}life(t){let e;return this.mount(()=>{let[r,o]=t();return e=r,o}),e}wake(t){return this.life(()=>[t(),()=>{}])}events(t){return this.mount(()=>W(this.element,t))}states(){return this.once(()=>new Gt(this.element))}op=(()=>{let t=this;function e(r){return t.once(()=>q.load(r))}return e.load=e,e.promise=r=>this.once(()=>q.promise(r)),e})();signal=(()=>{let t=this;function e(r,o){return t.once(()=>x(r,o))}return e.derived=function(o,i){return t.once(()=>x.derived(o,i))},e.lazy=function(o,i){return t.once(()=>x.lazy(o,i))},e})();derived(t,e){return this.once(()=>x.derived(t,e))}lazy(t,e){return this.once(()=>x.lazy(t,e))}};var S=class extends HTMLElement{static styles;shadow;#t;#e=0;#s=new T;#r=new X(this,()=>this.update());createShadow(){return this.attachShadow({mode:"open"})}constructor(){super(),this.shadow=this.createShadow(),this.#t=new tt(this,this.shadow,this.updateNow,this.update)}render(t){}updateNow=()=>{this.#t[lt](()=>{p.render(this.shadow,this.#s.effect(()=>this.render(this.#t),this.update))})};update=Nt(0,this.updateNow);connectedCallback(){if(this.#e===0){let t=this.constructor.styles;t&&Vt(this.shadow,t),this.updateNow()}else this.#t[ft]();this.#r.start(),this.#e++}disconnectedCallback(){this.#t[mt](),this.#s.clear(),this.#r.stop()}};var dt=class{props;attrs=new Map;children=[];constructor(t){this.props=t}};function We(s,t,e,r){return class extends t{static view=et(r,s);#t=new T;createShadow(){return this.attachShadow(s)}render(i){return r(i)(...this.#t.effect(()=>e(this),()=>this.update()))}}}var{I:la}=Ne;var Ge=s=>s.strings===void 0;var Fe={ATTRIBUTE:1,CHILD:2,PROPERTY:3,BOOLEAN_ATTRIBUTE:4,EVENT:5,ELEMENT:6},fe=s=>(...t)=>({_$litDirective$:s,values:t}),Ft=class{constructor(t){}get _$AU(){return this._$AM._$AU}_$AT(t,e,r){this._$Ct=t,this._$AM=e,this._$Ci=r}_$AS(t,e){return this.update(t,e)}update(t,e){return this.render(...e)}};var gt=(s,t)=>{let e=s._$AN;if(e===void 0)return!1;for(let r of e)r._$AO?.(t,!1),gt(r,t);return!0},Jt=s=>{let t,e;do{if((t=s._$AM)===void 0)break;e=t._$AN,e.delete(s),s=t}while(e?.size===0)},Je=s=>{for(let t;t=s._$AM;s=t){let e=t._$AN;if(e===void 0)t._$AN=e=new Set;else if(e.has(s))break;e.add(s),bs(t)}};function gs(s){this._$AN!==void 0?(Jt(this),this._$AM=s,Je(this)):this._$AM=s}function ys(s,t=!1,e=0){let r=this._$AH,o=this._$AN;if(o!==void 0&&o.size!==0)if(t)if(Array.isArray(r))for(let i=e;i<r.length;i++)gt(r[i],!1),Jt(r[i]);else r!=null&&(gt(r,!1),Jt(r));else gt(this,s)}var bs=s=>{s.type==Fe.CHILD&&(s._$AP??=ys,s._$AQ??=gs)},Zt=class extends Ft{constructor(){super(...arguments),this._$AN=void 0}_$AT(t,e,r){super._$AT(t,e,r),Je(this),this.isConnected=t._$AU}_$AO(t,e=!0){t!==this.isConnected&&(this.isConnected=t,t?this.reconnected?.():this.disconnected?.()),e&&(gt(this,t),Jt(this))}setValue(t){if(Ge(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 Kt=class s extends HTMLElement{static#t=!1;static make(){return this.#t||(p.register({SlyView:s},{soft:!0,upgrade:!0}),this.#t=!0),document.createElement("sly-view")}};var Qt=class{viewFn;settings;#t=Kt.make();#e=new T;#s;#r;#o;#i=new X(this.#t,()=>this.#a());constructor(t,e){this.viewFn=t,this.settings=e,this.#r=this.#t.attachShadow(this.settings),this.#s=new tt(this.#t,this.#r,this.#n,this.#a)}update(t){return this.#o=t,this.#n(),this.#t}#n=()=>{this.#s[lt](()=>{let t=this.#e.effect(()=>this.viewFn(this.#s)(...this.#o.props),()=>this.#a());y.entries(this.#t,this.#o.attrs),p.render(this.#r,t),p.render(this.#t,this.#o.children),this.#i.start()})};#a=Nt(0,this.#n);disconnected(){this.#s[mt](),this.#e.clear(),this.#i.stop()}reconnected(){this.#s[ft](),this.#i.start()}};function Ze(s,t){return fe(class extends Zt{#t=new Qt(s,t);render(r){return this.#t.update(r)}disconnected(){this.#t.disconnected()}reconnected(){this.#t.reconnected()}})}function et(s,t){let e=Ze(s,t);function r(...o){return e(new dt(o))}return r.props=(...o)=>new Mt(new dt(o),e),r.transmute=o=>et(n=>{let c=s(n);return(...a)=>c(...o(...a))},t),r.component=(o=S)=>({props:i=>We(t,o,i,s)}),r}function $(s){return et(s,{mode:"open"})}$.settings=s=>({render:t=>et(t,s)});$.render=$;$.component=s=>$(t=>()=>s(t)).component(S).props(()=>[]);var E=b`
|
|
1
|
+
var ts=Object.defineProperty;var re=(s,t)=>{for(var e in t)ts(s,e,{get:t[e],enumerable:!0})};var $t=globalThis,xt=$t.ShadowRoot&&($t.ShadyCSS===void 0||$t.ShadyCSS.nativeShadow)&&"adoptedStyleSheets"in Document.prototype&&"replace"in CSSStyleSheet.prototype,oe=Symbol(),xe=new WeakMap,ct=class{constructor(t,e,r){if(this._$cssResult$=!0,r!==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(xt&&t===void 0){let r=e!==void 0&&e.length===1;r&&(t=xe.get(e)),t===void 0&&((this.o=t=new CSSStyleSheet).replaceSync(this.cssText),r&&xe.set(e,t))}return t}toString(){return this.cssText}},_e=s=>new ct(typeof s=="string"?s:s+"",void 0,oe),b=(s,...t)=>{let e=s.length===1?s[0]:t.reduce(((r,o,i)=>r+(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)+s[i+1]),s[0]);return new ct(e,s,oe)},_t=(s,t)=>{if(xt)s.adoptedStyleSheets=t.map((e=>e instanceof CSSStyleSheet?e:e.styleSheet));else for(let e of t){let r=document.createElement("style"),o=$t.litNonce;o!==void 0&&r.setAttribute("nonce",o),r.textContent=e.cssText,s.appendChild(r)}},G=xt?s=>s:s=>s instanceof CSSStyleSheet?(t=>{let e="";for(let r of t.cssRules)e+=r.cssText;return _e(e)})(s):s;var{is:es,defineProperty:ss,getOwnPropertyDescriptor:rs,getOwnPropertyNames:os,getOwnPropertySymbols:is,getPrototypeOf:ns}=Object,At=globalThis,Ae=At.trustedTypes,as=Ae?Ae.emptyScript:"",cs=At.reactiveElementPolyfillSupport,ht=(s,t)=>s,ie={toAttribute(s,t){switch(t){case Boolean:s=s?as:null;break;case Object:case Array:s=s==null?s:JSON.stringify(s)}return s},fromAttribute(s,t){let e=s;switch(t){case Boolean:e=s!==null;break;case Number:e=s===null?null:Number(s);break;case Object:case Array:try{e=JSON.parse(s)}catch{e=null}}return e}},Se=(s,t)=>!es(s,t),ve={attribute:!0,type:String,converter:ie,reflect:!1,useDefault:!1,hasChanged:Se};Symbol.metadata??=Symbol("metadata"),At.litPropertyMetadata??=new WeakMap;var k=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=ve){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 r=Symbol(),o=this.getPropertyDescriptor(t,r,e);o!==void 0&&ss(this.prototype,t,o)}}static getPropertyDescriptor(t,e,r){let{get:o,set:i}=rs(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,r)},configurable:!0,enumerable:!0}}static getPropertyOptions(t){return this.elementProperties.get(t)??ve}static _$Ei(){if(this.hasOwnProperty(ht("elementProperties")))return;let t=ns(this);t.finalize(),t.l!==void 0&&(this.l=[...t.l]),this.elementProperties=new Map(t.elementProperties)}static finalize(){if(this.hasOwnProperty(ht("finalized")))return;if(this.finalized=!0,this._$Ei(),this.hasOwnProperty(ht("properties"))){let e=this.properties,r=[...os(e),...is(e)];for(let o of r)this.createProperty(o,e[o])}let t=this[Symbol.metadata];if(t!==null){let e=litPropertyMetadata.get(t);if(e!==void 0)for(let[r,o]of e)this.elementProperties.set(r,o)}this._$Eh=new Map;for(let[e,r]of this.elementProperties){let o=this._$Eu(e,r);o!==void 0&&this._$Eh.set(o,e)}this.elementStyles=this.finalizeStyles(this.styles)}static finalizeStyles(t){let e=[];if(Array.isArray(t)){let r=new Set(t.flat(1/0).reverse());for(let o of r)e.unshift(G(o))}else t!==void 0&&e.push(G(t));return e}static _$Eu(t,e){let r=e.attribute;return r===!1?void 0:typeof r=="string"?r: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 r of e.keys())this.hasOwnProperty(r)&&(t.set(r,this[r]),delete this[r]);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,r){this._$AK(t,r)}_$ET(t,e){let r=this.constructor.elementProperties.get(t),o=this.constructor._$Eu(t,r);if(o!==void 0&&r.reflect===!0){let i=(r.converter?.toAttribute!==void 0?r.converter:ie).toAttribute(e,r.type);this._$Em=t,i==null?this.removeAttribute(o):this.setAttribute(o,i),this._$Em=null}}_$AK(t,e){let r=this.constructor,o=r._$Eh.get(t);if(o!==void 0&&this._$Em!==o){let i=r.getPropertyOptions(o),n=typeof i.converter=="function"?{fromAttribute:i.converter}:i.converter?.fromAttribute!==void 0?i.converter:ie;this._$Em=o;let c=n.fromAttribute(e,i.type);this[o]=c??this._$Ej?.get(o)??c,this._$Em=null}}requestUpdate(t,e,r){if(t!==void 0){let o=this.constructor,i=this[t];if(r??=o.getPropertyOptions(t),!((r.hasChanged??Se)(i,e)||r.useDefault&&r.reflect&&i===this._$Ej?.get(t)&&!this.hasAttribute(o._$Eu(t,r))))return;this.C(t,e,r)}this.isUpdatePending===!1&&(this._$ES=this._$EP())}C(t,e,{useDefault:r,reflect:o,wrapped:i},n){r&&!(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||r||(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 r=this.constructor.elementProperties;if(r.size>0)for(let[o,i]of r){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((r=>r.hostUpdate?.())),this.update(e)):this._$EM()}catch(r){throw t=!1,this._$EM(),r}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){}};k.elementStyles=[],k.shadowRootOptions={mode:"open"},k[ht("elementProperties")]=new Map,k[ht("finalized")]=new Map,cs?.({ReactiveElement:k}),(At.reactiveElementVersions??=[]).push("2.1.1");var ae=globalThis,vt=ae.trustedTypes,Ee=vt?vt.createPolicy("lit-html",{createHTML:s=>s}):void 0,ce="$lit$",P=`lit$${Math.random().toFixed(9).slice(2)}$`,he="?"+P,hs=`<${he}>`,U=document,pt=()=>U.createComment(""),lt=s=>s===null||typeof s!="object"&&typeof s!="function",ue=Array.isArray,Te=s=>ue(s)||typeof s?.[Symbol.iterator]=="function",ne=`[
|
|
2
|
+
\f\r]`,ut=/<(?:(!--|\/[^a-zA-Z])|(\/?[a-zA-Z][^>\s]*)|(\/?$))/g,Ce=/-->/g,ke=/>/g,j=RegExp(`>|${ne}(?:([^\\s"'>=/]+)(${ne}*=${ne}*(?:[^
|
|
3
|
+
\f\r"'\`<>=]|("|')|))|$)`,"g"),Pe=/'/g,Re=/"/g,Me=/^(?:script|style|textarea|title)$/i,pe=s=>(t,...e)=>({_$litType$:s,strings:t,values:e}),_=pe(1),pr=pe(2),lr=pe(3),H=Symbol.for("lit-noChange"),y=Symbol.for("lit-nothing"),Oe=new WeakMap,L=U.createTreeWalker(U,129);function Ne(s,t){if(!ue(s)||!s.hasOwnProperty("raw"))throw Error("invalid template strings array");return Ee!==void 0?Ee.createHTML(t):t}var je=(s,t)=>{let e=s.length-1,r=[],o,i=t===2?"<svg>":t===3?"<math>":"",n=ut;for(let c=0;c<e;c++){let a=s[c],u,g,l=-1,$=0;for(;$<a.length&&(n.lastIndex=$,g=n.exec(a),g!==null);)$=n.lastIndex,n===ut?g[1]==="!--"?n=Ce:g[1]!==void 0?n=ke:g[2]!==void 0?(Me.test(g[2])&&(o=RegExp("</"+g[2],"g")),n=j):g[3]!==void 0&&(n=j):n===j?g[0]===">"?(n=o??ut,l=-1):g[1]===void 0?l=-2:(l=n.lastIndex-g[2].length,u=g[1],n=g[3]===void 0?j:g[3]==='"'?Re:Pe):n===Re||n===Pe?n=j:n===Ce||n===ke?n=ut:(n=j,o=void 0);let O=n===j&&s[c+1].startsWith("/>")?" ":"";i+=n===ut?a+hs:l>=0?(r.push(u),a.slice(0,l)+ce+a.slice(l)+P+O):a+P+(l===-2?c:O)}return[Ne(s,i+(s[e]||"<?>")+(t===2?"</svg>":t===3?"</math>":"")),r]},mt=class s{constructor({strings:t,_$litType$:e},r){let o;this.parts=[];let i=0,n=0,c=t.length-1,a=this.parts,[u,g]=je(t,e);if(this.el=s.createElement(u,r),L.currentNode=this.el.content,e===2||e===3){let l=this.el.content.firstChild;l.replaceWith(...l.childNodes)}for(;(o=L.nextNode())!==null&&a.length<c;){if(o.nodeType===1){if(o.hasAttributes())for(let l of o.getAttributeNames())if(l.endsWith(ce)){let $=g[n++],O=o.getAttribute(l).split(P),wt=/([.?@])?(.*)/.exec($);a.push({type:1,index:i,name:wt[2],strings:O,ctor:wt[1]==="."?Et:wt[1]==="?"?Ct:wt[1]==="@"?kt:D}),o.removeAttribute(l)}else l.startsWith(P)&&(a.push({type:6,index:i}),o.removeAttribute(l));if(Me.test(o.tagName)){let l=o.textContent.split(P),$=l.length-1;if($>0){o.textContent=vt?vt.emptyScript:"";for(let O=0;O<$;O++)o.append(l[O],pt()),L.nextNode(),a.push({type:2,index:++i});o.append(l[$],pt())}}}else if(o.nodeType===8)if(o.data===he)a.push({type:2,index:i});else{let l=-1;for(;(l=o.data.indexOf(P,l+1))!==-1;)a.push({type:7,index:i}),l+=P.length-1}i++}}static createElement(t,e){let r=U.createElement("template");return r.innerHTML=t,r}};function z(s,t,e=s,r){if(t===H)return t;let o=r!==void 0?e._$Co?.[r]:e._$Cl,i=lt(t)?void 0:t._$litDirective$;return o?.constructor!==i&&(o?._$AO?.(!1),i===void 0?o=void 0:(o=new i(s),o._$AT(s,e,r)),r!==void 0?(e._$Co??=[])[r]=o:e._$Cl=o),o!==void 0&&(t=z(s,o._$AS(s,t.values),o,r)),t}var St=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:r}=this._$AD,o=(t?.creationScope??U).importNode(e,!0);L.currentNode=o;let i=L.nextNode(),n=0,c=0,a=r[0];for(;a!==void 0;){if(n===a.index){let u;a.type===2?u=new J(i,i.nextSibling,this,t):a.type===1?u=new a.ctor(i,a.name,a.strings,this,t):a.type===6&&(u=new Pt(i,this,t)),this._$AV.push(u),a=r[++c]}n!==a?.index&&(i=L.nextNode(),n++)}return L.currentNode=U,o}p(t){let e=0;for(let r of this._$AV)r!==void 0&&(r.strings!==void 0?(r._$AI(t,r,e),e+=r.strings.length-2):r._$AI(t[e])),e++}},J=class s{get _$AU(){return this._$AM?._$AU??this._$Cv}constructor(t,e,r,o){this.type=2,this._$AH=y,this._$AN=void 0,this._$AA=t,this._$AB=e,this._$AM=r,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=z(this,t,e),lt(t)?t===y||t==null||t===""?(this._$AH!==y&&this._$AR(),this._$AH=y):t!==this._$AH&&t!==H&&this._(t):t._$litType$!==void 0?this.$(t):t.nodeType!==void 0?this.T(t):Te(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!==y&<(this._$AH)?this._$AA.nextSibling.data=t:this.T(U.createTextNode(t)),this._$AH=t}$(t){let{values:e,_$litType$:r}=t,o=typeof r=="number"?this._$AC(t):(r.el===void 0&&(r.el=mt.createElement(Ne(r.h,r.h[0]),this.options)),r);if(this._$AH?._$AD===o)this._$AH.p(e);else{let i=new St(o,this),n=i.u(this.options);i.p(e),this.T(n),this._$AH=i}}_$AC(t){let e=Oe.get(t.strings);return e===void 0&&Oe.set(t.strings,e=new mt(t)),e}k(t){ue(this._$AH)||(this._$AH=[],this._$AR());let e=this._$AH,r,o=0;for(let i of t)o===e.length?e.push(r=new s(this.O(pt()),this.O(pt()),this,this.options)):r=e[o],r._$AI(i),o++;o<e.length&&(this._$AR(r&&r._$AB.nextSibling,o),e.length=o)}_$AR(t=this._$AA.nextSibling,e){for(this._$AP?.(!1,!0,e);t!==this._$AB;){let r=t.nextSibling;t.remove(),t=r}}setConnected(t){this._$AM===void 0&&(this._$Cv=t,this._$AP?.(t))}},D=class{get tagName(){return this.element.tagName}get _$AU(){return this._$AM._$AU}constructor(t,e,r,o,i){this.type=1,this._$AH=y,this._$AN=void 0,this.element=t,this.name=e,this._$AM=o,this.options=i,r.length>2||r[0]!==""||r[1]!==""?(this._$AH=Array(r.length-1).fill(new String),this.strings=r):this._$AH=y}_$AI(t,e=this,r,o){let i=this.strings,n=!1;if(i===void 0)t=z(this,t,e,0),n=!lt(t)||t!==this._$AH&&t!==H,n&&(this._$AH=t);else{let c=t,a,u;for(t=i[0],a=0;a<i.length-1;a++)u=z(this,c[r+a],e,a),u===H&&(u=this._$AH[a]),n||=!lt(u)||u!==this._$AH[a],u===y?t=y:t!==y&&(t+=(u??"")+i[a+1]),this._$AH[a]=u}n&&!o&&this.j(t)}j(t){t===y?this.element.removeAttribute(this.name):this.element.setAttribute(this.name,t??"")}},Et=class extends D{constructor(){super(...arguments),this.type=3}j(t){this.element[this.name]=t===y?void 0:t}},Ct=class extends D{constructor(){super(...arguments),this.type=4}j(t){this.element.toggleAttribute(this.name,!!t&&t!==y)}},kt=class extends D{constructor(t,e,r,o,i){super(t,e,r,o,i),this.type=5}_$AI(t,e=this){if((t=z(this,t,e,0)??y)===H)return;let r=this._$AH,o=t===y&&r!==y||t.capture!==r.capture||t.once!==r.once||t.passive!==r.passive,i=t!==y&&(r===y||o);o&&this.element.removeEventListener(this.name,this,r),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)}},Pt=class{constructor(t,e,r){this.element=t,this.type=6,this._$AN=void 0,this._$AM=e,this.options=r}get _$AU(){return this._$AM._$AU}_$AI(t){z(this,t)}},Le={M:ce,P,A:he,C:1,L:je,R:St,D:Te,V:z,I:J,H:D,N:Ct,U:kt,B:Et,F:Pt},us=ae.litHtmlPolyfillSupport;us?.(mt,J),(ae.litHtmlVersions??=[]).push("3.3.1");var T=(s,t,e)=>{let r=e?.renderBefore??t,o=r._$litPart$;if(o===void 0){let i=e?.renderBefore??null;r._$litPart$=o=new J(t.insertBefore(pt(),i),i,void 0,e??{})}return o._$AI(s),o};var le=globalThis,Z=class extends k{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=T(e,this.renderRoot,this.renderOptions)}connectedCallback(){super.connectedCallback(),this._$Do?.setConnected(!0)}disconnectedCallback(){super.disconnectedCallback(),this._$Do?.setConnected(!1)}render(){return H}};Z._$litElement$=!0,Z.finalized=!0,le.litElementHydrateSupport?.({LitElement:Z});var ps=le.litElementPolyfillSupport;ps?.({LitElement:Z});(le.litElementVersions??=[]).push("4.2.1");var A={string:(s,t)=>s.getAttribute(t)??void 0,number:(s,t)=>{let e=s.getAttribute(t);return e===null||!e?void 0:Number(e)},boolean:(s,t)=>s.getAttribute(t)!==null},d={string:(s,t,e)=>(e===void 0?s.removeAttribute(t):s.setAttribute(t,e),!0),number:(s,t,e)=>(e===void 0?s.removeAttribute(t):s.setAttribute(t,e.toString()),!0),boolean:(s,t,e)=>(e?s.setAttribute(t,""):s.removeAttribute(t),!0),any:(s,t,e)=>{e==null?s.removeAttribute(t):typeof e=="string"?s.setAttribute(t,e):typeof e=="number"?s.setAttribute(t,e.toString()):typeof e=="boolean"?e===!0?s.setAttribute(t,""):s.removeAttribute(t):console.warn(`invalid attribute "${t}" type is "${typeof e}"`)},entries:(s,t)=>{for(let[e,r]of t)d.any(s,e,r)},record:(s,t)=>d.entries(s,Object.entries(t))};function Ue(s,t={}){let e=document.createElement(s);return d.record(e,t),e}function He(s){let t=document.createDocumentFragment();return T(s,t),t.firstElementChild}function K(s,t){let e=[];for(let[r,o]of Object.entries(t))if(typeof o=="function")s.addEventListener(r,o),e.push(()=>s.removeEventListener(r,o));else{let[i,n]=o;s.addEventListener(r,n,i),e.push(()=>s.removeEventListener(r,n))}return()=>e.forEach(r=>r())}function ze(s,t){let e=new MutationObserver(t);return e.observe(s,{attributes:!0}),()=>e.disconnect()}var De=(s,t)=>new Proxy(t,{get:(e,r)=>{switch(t[r]){case String:return A.string(s,r);case Number:return A.number(s,r);case Boolean:return A.boolean(s,r);default:throw new Error(`invalid attribute type for "${r}"`)}},set:(e,r,o)=>{switch(t[r]){case String:return d.string(s,r,o);case Number:return d.number(s,r,o);case Boolean:return d.boolean(s,r,o);default:throw new Error(`invalid attribute type for "${r}"`)}}});var Rt=class{element;constructor(t){this.element=t}strings=new Proxy({},{get:(t,e)=>A.string(this.element,e),set:(t,e,r)=>d.string(this.element,e,r)});numbers=new Proxy({},{get:(t,e)=>A.number(this.element,e),set:(t,e,r)=>d.number(this.element,e,r)});booleans=new Proxy({},{get:(t,e)=>A.boolean(this.element,e),set:(t,e,r)=>d.boolean(this.element,e,r)})};function Q(s){let t=new Rt(s);return{strings:t.strings,numbers:t.numbers,booleans:t.booleans,on:e=>ze(s,e),spec:e=>De(s,e)}}Q.get=A;Q.set=d;function qe(s){return new me(s)}var me=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,r]of Object.entries(t))this.attr(e,r);return this}children(...t){return this.#e.push(...t),this}done(){let t=document.createElement(this.tagName);return d.entries(t,this.#t),t.append(...this.#e),t}};function Y(s,t=document){let e=t.querySelector(s);if(!e)throw new Error(`element not found (${s})`);return e}function Ot(s,t=document){return t.querySelector(s)}function Tt(s,t=document){return Array.from(t.querySelectorAll(s))}var Mt=class s{element;#t;constructor(t){this.element=t}in(t){return new s(typeof t=="string"?Y(t,this.element):t)}require(t){return Y(t,this.element)}maybe(t){return Ot(t,this.element)}all(t){return Tt(t,this.element)}render(...t){return T(t,this.element)}get attrs(){return this.#t??=Q(this.element)}events(t){return K(this.element,t)}};function Be(s){return s.replace(/([a-zA-Z])(?=[A-Z])/g,"$1-").toLowerCase()}function We(s,t={}){let{soft:e=!1,upgrade:r=!0}=t;for(let[o,i]of Object.entries(s)){let n=Be(o),c=customElements.get(n);e&&c||(customElements.define(n,i),r&&document.querySelectorAll(n).forEach(a=>{a.constructor===HTMLElement&&customElements.upgrade(a)}))}}function p(s,t=document){return Y(s,t)}p.in=(s,t=document)=>new Mt(t).in(s);p.require=Y;p.maybe=Ot;p.all=Tt;p.el=Ue;p.elmer=qe;p.mk=He;p.events=K;p.attrs=Q;p.register=We;p.render=(s,...t)=>T(t,s);var Nt=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,r]of Object.entries(t))this.#e.attrs.set(e,r);return this}children(...t){return this.#e.children.push(...t),this}render(){return this.#t(this.#e)}};var ft=class{props;attrs=new Map;children=[];constructor(t){this.props=t}};function X(s,t){let e,r,o=[];function i(){e=[],r&&clearTimeout(r),r=void 0,o=[]}return i(),((...n)=>{e=n,r&&clearTimeout(r);let c=new Promise((a,u)=>{o.push({resolve:a,reject:u})});return r=setTimeout(()=>{Promise.resolve().then(()=>t(...e)).then(a=>{for(let{resolve:u}of o)u(a);i()}).catch(a=>{for(let{reject:u}of o)u(a);i()})},s),c})}function q(){let s,t,e=new Promise((o,i)=>{s=o,t=i});function r(o){return o.then(s).catch(t),e}return{promise:e,resolve:s,reject:t,entangle:r}}function jt(s){let t=null;return((...e)=>(t?t.params=e:(t={params:e,deferred:q()},queueMicrotask(()=>{let{params:r,deferred:o}=t;t=null,Promise.resolve(s(...r)).then(o.resolve).catch(o.reject)})),t.deferred.promise))}var R={};re(R,{clone:()=>dt,equal:()=>ls,freeze:()=>ms});function dt(s,t=new Set){if(t.has(s))throw new Error("cannot clone circular reference");let e;return typeof s=="function"||s!==null&&typeof s=="object"?(t.add(s),Array.isArray(s)?e=s.map(r=>dt(r,new Set(t))):s.constructor===Object?e=Object.fromEntries(Object.entries(s).map(([r,o])=>[r,dt(o,new Set(t))])):s instanceof Map?e=new Map(Array.from(s,([r,o])=>[r,dt(o,new Set(t))])):s instanceof Set?e=new Set(Array.from(s,r=>dt(r,new Set(t)))):s instanceof Date?e=new Date(s.getTime()):e=s,t.delete(s)):e=s,e}var gt=Object.freeze({happy:s=>s!=null,sad:s=>s==null,boolean:s=>typeof s=="boolean",number:s=>typeof s=="number",string:s=>typeof s=="string",bigint:s=>typeof s=="bigint",object:s=>typeof s=="object"&&s!==null,array:s=>Array.isArray(s),fn:s=>typeof s=="function",symbol:s=>typeof s=="symbol"});var ls=(s,t)=>{function e(r,o,i){if(!gt.object(r)||!gt.object(o))return r===o;if(i.includes(r))throw new Error("forbidden circularity detected in deep equal comparison");let n=[...i,r];if(r instanceof Map&&o instanceof Map){if(r.size!==o.size)return!1;for(let[c,a]of r)if(!o.has(c)||!e(a,o.get(c),n))return!1}else if(r instanceof Set&&o instanceof Set){if(r.size!==o.size)return!1;for(let c of r)if(!Array.from(o).some(a=>e(c,a,n)))return!1}else{let c=Object.keys(r),a=Object.keys(o);if(c.length!==a.length)return!1;for(let u of c)if(!a.includes(u)||!e(r[u],o[u],n))return!1}return!0}return e(s,t,[])};function ms(s){function t(e,r){if(!gt.object(e)||r.includes(e))return e;let o=[...r,e];if(e instanceof Map)for(let i of e.entries())for(let n of i)t(n,o);else if(e instanceof Set)for(let i of e)t(i,o);else if(Array.isArray(e))for(let i of e)t(i,o);else for(let i of Object.values(e))t(i,o);return Object.freeze(e)}return t(s,[])}var tt=class s 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,r){if(t.has(e))return t.get(e);{let o=r();return t.set(e,o),o}}array(){return[...this]}require(t){return s.require(this,t)}guarantee(t,e){return s.guarantee(this,t,e)}};function Lt(s){let t,e=!1,r=()=>{e=!0,clearTimeout(t)},o=async()=>{e||(await s(r),!e&&(t=setTimeout(o,0)))};return o(),r}var Ut=(s=0)=>new Promise(t=>setTimeout(t,s));function Ie(){let s=new Set;async function t(...a){await Promise.all([...s].map(u=>u(...a)))}function e(a){return s.add(a),()=>{s.delete(a)}}async function r(...a){return t(...a)}function o(a){return e(a)}async function i(a){let{promise:u,resolve:g}=q(),l=o(async(...$)=>{a&&await a(...$),g($),l()});return u}function n(){s.clear()}let c={pub:r,sub:o,publish:t,subscribe:e,on:e,next:i,clear:n};return Object.assign(o,c),Object.assign(r,c),c}function et(s){let t=Ie();return s&&t.sub(s),t.sub}function fe(s){let t=Ie();return s&&t.sub(s),t.pub}function Ve(s){return R.freeze(R.clone(s))}var de=class{#t=[];#e=new WeakMap;#s=[];#r=new Set;notifyRead(t){this.#t.at(-1)?.add(t)}async notifyWrite(t){if(this.#r.has(t))throw new Error("circularity forbidden");let e=this.#o(t).pub();return this.#s.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 r=new Set;this.#s.push(r),this.#r.add(t),r.add(e()),this.#r.delete(t),await Promise.all(r),this.#s.pop()})}#o(t){let e=this.#e.get(t);return e||(e=et(),this.#e.set(t,e)),e}},m=globalThis[Symbol.for("e280.tracker")]??=new de;var v=Symbol("optic");var Ht=class{calculate;#t=!1;#e;constructor(t){this.calculate=t,this.#e=t()}get(){return this.#t&&(this.#t=!1,this.#e=this.calculate()),this.#e}invalidate(){this.#t=!0}};var zt=class s{on=et();[v];#t;#e;#s=jt(()=>this.on.publish(this.state));constructor(t){this[v]=t,this.#t=R.clone(t.getState()),this.#e=new Ht(()=>Ve(t.getState()))}async update(){let t=this[v].getState();!R.equal(t,this.#t)&&(this.#e.invalidate(),this.#t=R.clone(t),this.#s(),await m.notifyWrite(this))}get state(){return m.notifyRead(this),this.#e.get()}async mutate(t){return this[v].mutate(t)}lens(t){let e=new s({getState:()=>t(this[v].getState()),mutate:r=>this[v].mutate(o=>r(t(o))),registerLens:this[v].registerLens});return this[v].registerLens(e),e}};var st=class{sneak;constructor(t){this.sneak=t}get(){return m.notifyRead(this),this.sneak}get value(){return this.get()}};var rt=class extends st{on=et();dispose(){this.on.clear()}};function Dt(s,t=s){let{seen:e,result:r}=m.observe(s),o=jt(t),i=[],n=()=>i.forEach(c=>c());for(let c of e){let a=m.subscribe(c,o);i.push(a)}return{result:r,dispose:n}}function ot(s,t){return s===t}var qt=class extends rt{#t;constructor(t,e){let r=e?.compare??ot,{result:o,dispose:i}=Dt(t,async()=>{let n=t();!r(this.sneak,n)&&(this.sneak=n,await Promise.all([m.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 Bt=class extends st{#t;#e;#s=!1;#r;constructor(t,e){super(void 0),this.#t=t,this.#e=e?.compare??ot}toString(){return`($lazy "${String(this.get())}")`}get(){if(!this.#r){let{result:t,dispose:e}=Dt(this.#t,()=>this.#s=!0);this.#r=e,this.sneak=t}if(this.#s){this.#s=!1;let t=this.#t();!this.#e(this.sneak,t)&&(this.sneak=t,m.notifyWrite(this))}return super.get()}dispose(){this.#r&&this.#r()}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 Wt=class extends rt{#t=!1;#e;constructor(t,e){super(t),this.#e=e?.compare??ot}toString(){return`($signal "${String(this.get())}")`}async set(t,e=!1){let r=this.sneak;return this.sneak=t,(e||!this.#e(r,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([m.notifyWrite(this),this.on.publish(t)])}finally{this.#t=!1}return await e,t}get core(){return this}fn(){let t=this;function e(r){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:r=>t.value=r}),Object.defineProperty(e,"sneak",{get:()=>t.sneak,set:r=>t.sneak=r}),e}};function fs(s,t){return new Bt(s,t).fn()}function ds(s,t){return new qt(s,t).fn()}function x(s,t){return new Wt(s,t).fn()}x.lazy=fs;x.derived=ds;var S=class{#t=new tt;effect(t,e){let{seen:r,result:o}=m.observe(t);for(let i of r)this.#t.guarantee(i,()=>m.subscribe(i,e));for(let[i,n]of this.#t)r.has(i)||(n(),this.#t.delete(i));return o}clear(){for(let t of this.#t.values())t();this.#t.clear()}};var M=class{element;response;#t;constructor(t,e){this.element=t,this.response=e}start(){this.#t||(this.#t=p.attrs(this.element).on(this.response))}stop(){this.#t&&this.#t(),this.#t=void 0}};function It(s,t){_t(s,ys(t))}function ys(s){let t=[];if(Array.isArray(s)){let e=new Set(s.flat(1/0).reverse());for(let r of e)t.unshift(G(r))}else s!==void 0&&t.push(G(s));return t}var B={status:s=>s[0],value:s=>s[0]==="ready"?s[1]:void 0,error:s=>s[0]==="error"?s[1]:void 0,select:(s,t)=>{switch(s[0]){case"loading":return t.loading();case"error":return t.error(s[1]);case"ready":return t.ready(s[1]);default:throw new Error("unknown op status")}},morph:(s,t)=>B.select(s,{loading:()=>["loading"],error:e=>["error",e],ready:e=>["ready",t(e)]}),all:(...s)=>{let t=[],e=[],r=0;for(let o of s)switch(o[0]){case"loading":r++;break;case"ready":t.push(o[1]);break;case"error":e.push(o[1]);break}return e.length>0?["error",e]:r===0?["ready",t]:["loading"]}};var W=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(r=>r.pod);return B.all(...e)}signal;#t=0;#e=fe();#s=fe();constructor(t=["loading"]){this.signal=x(t)}get wait(){return new Promise((t,e)=>{this.#e.next().then(([r])=>t(r)),this.#s.next().then(([r])=>e(r))})}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.#s(t)}async promise(t){let e=++this.#t;await this.setLoading();try{let r=await t;return e===this.#t&&await this.setReady(r),r}catch(r){console.error(r),e===this.#t&&await this.setError(r)}}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 B.value(this.signal.get())}get error(){return B.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 B.select(this.signal.get(),t)}morph(t){return B.morph(this.pod,t)}};var Vt=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 Ft=class{#t;constructor(t){this.#t=t.attachInternals().states}[Symbol.iterator](){return this.#t.values()}values(){return this.#t.values()}forEach(t){return this.#t.forEach(t),this}get size(){return this.#t.size}has(t){return this.#t.has(t)}add(...t){for(let e of t)this.#t.add(e);return this}delete(...t){for(let e of t)this.#t.delete(e);return this}clear(){return this.#t.clear(),this}assign(...t){return this.clear().add(...t)}};function Fe(s){let t=p.attrs(s.element);function e(r){return s.once(()=>t.spec(r))}return e.strings=t.strings,e.numbers=t.numbers,e.booleans=t.booleans,e.spec=r=>s.once(()=>t.spec(r)),e.on=r=>s.mount(()=>t.on(r)),e}var I=Symbol(),V=Symbol(),F=Symbol(),N=class{element;shadow;renderNow;render;attrs;#t=0;#e=0;#s=new tt;#r=q();#o=new Vt;[I](t){this.#t++,this.#e=0,this.#r=q();let e=t();return this.#r.resolve(),e}[V](){this.#o.unmountAll()}[F](){this.#o.remountAll()}constructor(t,e,r,o){this.element=t,this.shadow=e,this.renderNow=r,this.render=o,this.attrs=Fe(this)}get renderCount(){return this.#t}get rendered(){return this.#r.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.#s.guarantee(this.#e++,t)}mount(t){return this.once(()=>this.#o.mount(t))}life(t){let e;return this.mount(()=>{let[r,o]=t();return e=r,o}),e}wake(t){return this.life(()=>[t(),()=>{}])}events(t){return this.mount(()=>K(this.element,t))}states(){return this.once(()=>new Ft(this.element))}op=(()=>{let t=this;function e(r){return t.once(()=>W.load(r))}return e.load=e,e.promise=r=>this.once(()=>W.promise(r)),e})();signal=(()=>{let t=this;function e(r,o){return t.once(()=>x(r,o))}return e.derived=function(o,i){return t.once(()=>x.derived(o,i))},e.lazy=function(o,i){return t.once(()=>x.lazy(o,i))},e})();derived(t,e){return this.once(()=>x.derived(t,e))}lazy(t,e){return this.once(()=>x.lazy(t,e))}};var E=class extends HTMLElement{static styles;shadow;#t;#e=0;#s=new S;#r=new M(this,()=>this.update());createShadow(){return this.attachShadow({mode:"open"})}constructor(){super(),this.shadow=this.createShadow(),this.#t=new N(this,this.shadow,this.updateNow,this.update)}render(t){}updateNow=()=>{this.#t[I](()=>{p.render(this.shadow,this.#s.effect(()=>this.render(this.#t),this.update))})};update=X(0,this.updateNow);connectedCallback(){if(this.#e===0){let t=this.constructor.styles;t&&It(this.shadow,t),this.updateNow()}else this.#t[F]();this.#r.start(),this.#e++}disconnectedCallback(){this.#t[V](),this.#s.clear(),this.#r.stop()}};function Ge(s,t,e,r){return class extends t{static view=it(r,s);#t=new S;createShadow(){return this.attachShadow(s)}render(i){return r(i)(...this.#t.effect(()=>e(this),()=>this.update()))}}}var{I:da}=Le;var Je=s=>s.strings===void 0;var Ze={ATTRIBUTE:1,CHILD:2,PROPERTY:3,BOOLEAN_ATTRIBUTE:4,EVENT:5,ELEMENT:6},ge=s=>(...t)=>({_$litDirective$:s,values:t}),Gt=class{constructor(t){}get _$AU(){return this._$AM._$AU}_$AT(t,e,r){this._$Ct=t,this._$AM=e,this._$Ci=r}_$AS(t,e){return this.update(t,e)}update(t,e){return this.render(...e)}};var yt=(s,t)=>{let e=s._$AN;if(e===void 0)return!1;for(let r of e)r._$AO?.(t,!1),yt(r,t);return!0},Jt=s=>{let t,e;do{if((t=s._$AM)===void 0)break;e=t._$AN,e.delete(s),s=t}while(e?.size===0)},Ke=s=>{for(let t;t=s._$AM;s=t){let e=t._$AN;if(e===void 0)t._$AN=e=new Set;else if(e.has(s))break;e.add(s),$s(t)}};function bs(s){this._$AN!==void 0?(Jt(this),this._$AM=s,Ke(this)):this._$AM=s}function ws(s,t=!1,e=0){let r=this._$AH,o=this._$AN;if(o!==void 0&&o.size!==0)if(t)if(Array.isArray(r))for(let i=e;i<r.length;i++)yt(r[i],!1),Jt(r[i]);else r!=null&&(yt(r,!1),Jt(r));else yt(this,s)}var $s=s=>{s.type==Ze.CHILD&&(s._$AP??=ws,s._$AQ??=bs)},Zt=class extends Gt{constructor(){super(...arguments),this._$AN=void 0}_$AT(t,e,r){super._$AT(t,e,r),Ke(this),this.isConnected=t._$AU}_$AO(t,e=!0){t!==this.isConnected&&(this.isConnected=t,t?this.reconnected?.():this.disconnected?.()),e&&(yt(this,t),Jt(this))}setValue(t){if(Je(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 Kt=class s extends HTMLElement{static#t=!1;static register(){this.#t||(p.register({SlyView:s},{soft:!0,upgrade:!0}),this.#t=!0)}static make(){return this.register(),document.createElement("sly-view")}};var Qt=class{viewFn;settings;#t;#e=new S;#s;#r;#o;#i;constructor(t,e,r){this.viewFn=e,this.settings=r,this.#t=t,this.#r=this.#t.attachShadow(this.settings),this.#s=new N(this.#t,this.#r,this.#n,this.#a),this.#i=new M(this.#t,()=>this.#a())}update(t){return this.#o=t,this.#n(),this.#t}#n=()=>{this.#s[I](()=>{let t=this.#e.effect(()=>this.viewFn(this.#s)(...this.#o.props),()=>this.#a());d.entries(this.#t,this.#o.attrs),p.render(this.#r,t),p.render(this.#t,this.#o.children),this.#i.start()})};#a=X(0,this.#n);disconnected(){this.#s[V](),this.#e.clear(),this.#i.stop()}reconnected(){this.#s[F](),this.#i.start()}};function Qe(s,t){return ge(class extends Zt{#t=Kt.make();#e=new Qt(this.#t,s,t);render(r){return this.#e.update(r)}disconnected(){this.#e.disconnected()}reconnected(){this.#e.reconnected()}})}var Yt=class{props;attrs=new Map;constructor(t){this.props=t}},Xt=class{viewFn;settings;#t;#e=new S;#s;#r;#o;#i;constructor(t,e,r){this.viewFn=e,this.settings=r,this.#t=t,this.#r=this.#t.attachShadow(this.settings),this.#s=new N(this.#t,this.#r,this.#n,this.#a),this.#i=new M(this.#t,()=>this.#a())}update(t){return this.#o=t,this.#n(),this.#t}#n=()=>{this.#s[I](()=>{let t=this.#e.effect(()=>this.viewFn(this.#s)(...this.#o.props),()=>this.#a());d.entries(this.#t,this.#o.attrs),p.render(this.#r,t),this.#i.start()})};#a=X(0,this.#n);disconnected(){this.#s[V](),this.#e.clear(),this.#i.stop()}reconnected(){this.#s[F](),this.#i.start()}};function it(s,t){let e=Qe(s,t);function r(...o){return e(new ft(o))}return r.props=(...o)=>new Nt(new ft(o),e),r.transmute=o=>it(n=>{let c=s(n);return(...a)=>c(...o(...a))},t),r.component=(o=E)=>({props:i=>Ge(t,o,i,s)}),r.naked=o=>{let i=new Xt(o,s,t);return{host:o,render:(...n)=>i.update(new Yt(n))}},r}function w(s){return it(s,{mode:"open"})}w.settings=s=>({render:t=>it(t,s)});w.render=w;w.component=s=>w(t=>()=>s(t)).component(E).props(()=>[]);var C=b`
|
|
4
4
|
@layer reset {
|
|
5
5
|
* {
|
|
6
6
|
margin: 0;
|
|
@@ -16,7 +16,7 @@ var Ye=Object.defineProperty;var ee=(s,t)=>{for(var e in t)Ye(s,e,{get:t[e],enum
|
|
|
16
16
|
::-webkit-scrollbar-thumb { background: #333; border-radius: 1em; }
|
|
17
17
|
::-webkit-scrollbar-thumb:hover { background: #444; }
|
|
18
18
|
}
|
|
19
|
-
`;var
|
|
19
|
+
`;var ye=w(s=>(t,e)=>{s.name("counter"),s.styles(C,xs);let r=s.signal(t),o=()=>{r.value+=e};return _`
|
|
20
20
|
<slot></slot>
|
|
21
21
|
<div>
|
|
22
22
|
<span>${r()}</span>
|
|
@@ -24,7 +24,7 @@ var Ye=Object.defineProperty;var ee=(s,t)=>{for(var e in t)Ye(s,e,{get:t[e],enum
|
|
|
24
24
|
<div>
|
|
25
25
|
<button @click="${o}">++</button>
|
|
26
26
|
</div>
|
|
27
|
-
`}),
|
|
27
|
+
`}),te=class extends ye.component(class extends E{attrs=p.attrs(this).spec({start:Number,step:Number})}).props(t=>[t.attrs.start??0,t.attrs.step??1]){},xs=b`
|
|
28
28
|
:host {
|
|
29
29
|
display: flex;
|
|
30
30
|
justify-content: center;
|
|
@@ -34,23 +34,23 @@ var Ye=Object.defineProperty;var ee=(s,t)=>{for(var e in t)Ye(s,e,{get:t[e],enum
|
|
|
34
34
|
button {
|
|
35
35
|
padding: 0.2em 0.5em;
|
|
36
36
|
}
|
|
37
|
-
`;var
|
|
37
|
+
`;var bt={};re(bt,{AsciiAnim:()=>Ye,ErrorDisplay:()=>$e,anims:()=>we,make:()=>sr,makeAsciiAnim:()=>h,mock:()=>rr});var we={};re(we,{arrow:()=>Ss,bar:()=>Es,bar2:()=>Cs,bar3:()=>ks,bar4:()=>Ps,bin:()=>Is,binary:()=>Vs,binary2:()=>Fs,block:()=>Rs,block2:()=>Os,brackets:()=>Ls,brackets2:()=>Us,braille:()=>vs,bright:()=>Ys,clock:()=>Zs,cylon:()=>Ns,dots:()=>Hs,dots2:()=>zs,earth:()=>be,fistbump:()=>Ks,kiss:()=>Js,lock:()=>Qs,moon:()=>tr,pie:()=>Ms,pulseblue:()=>Gs,runner:()=>Ts,slider:()=>js,speaker:()=>Xs,spinner:()=>As,wave:()=>Ds,wavepulse:()=>Bs,wavepulse2:()=>Ws,wavescrub:()=>qs});function h(s,t){return()=>Ye({hz:s,frames:t})}var Ye=w(s=>({hz:t,frames:e})=>{s.name("loading"),s.styles(C,_s);let r=s.signal(0);return s.mount(()=>Lt(async()=>{await Ut(1e3/t);let o=r.get()+1;r.set(o>=e.length?0:o)})),e.at(r.get())}),_s=b`
|
|
38
38
|
:host {
|
|
39
39
|
font-family: monospace;
|
|
40
40
|
white-space: pre;
|
|
41
41
|
user-select: none;
|
|
42
42
|
}
|
|
43
|
-
`;var
|
|
43
|
+
`;var f=20,nt=10,at=4,As=h(f,["|","/","-","\\"]),vs=h(f,["\u2808","\u2810","\u2820","\u2880","\u2840","\u2804","\u2802","\u2801"]),Ss=h(f,["\u2B06\uFE0F","\u2197\uFE0F","\u27A1\uFE0F","\u2198\uFE0F","\u2B07\uFE0F","\u2199\uFE0F","\u2B05\uFE0F","\u2196\uFE0F"]),Es=h(f,["\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"]),Cs=h(f,["\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"]),ks=h(f,["\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"]),Ps=h(f,["\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"]),Rs=h(f,["\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"]),Os=h(f,["\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"]),Ts=h(at,["\u{1F6B6}","\u{1F3C3}"]),Ms=h(nt,["\u25F7","\u25F6","\u25F5","\u25F4"]),Ns=h(f,["=----","-=---","--=--","---=-","----=","----=","---=-","--=--","-=---","=----"]),js=h(f,["o----","-o---","--o--","---o-","----o","----o","---o-","--o--","-o---","o----"]),Ls=h(nt,["[ ]","[ ]","[= ]","[== ]","[===]","[ ==]","[ =]"]),Us=h(nt,["[ ]","[ ]","[= ]","[== ]","[===]","[ ==]","[ =]","[ ]","[ ]","[ =]","[ ==]","[===]","[== ]","[= ]"]),Hs=h(nt,[" "," ",". ",".. ","..."," .."," ."]),zs=h(f,[". ",". ",".. ","..."," .."," ."," ."," ..","...",".. "]),Ds=h(f,[".....",".....",":....","::...",":::..","::::.",":::::",":::::",".::::","..:::","...::","....:"]),qs=h(f,[":....",":....","::...",".::..","..::.","...::","....:","....:","...::","..::.",".::..","::..."]),Bs=h(f,[".....",".....","..:..",".:::.",".:::.",":::::",":::::","::.::",":...:"]),Ws=h(f,[".....",".....","..:..",".:::.",".:::.",":::::",":::::","::.::",":...:",".....",".....",":...:","::.::",":::::",":::::",".:::.",".:::.","..:.."]),Is=h(f,["000","100","110","111","011","001"]),Vs=h(f,["11111","01111","00111","10011","11001","01100","00110","10011","11001","11100","11110"]),Fs=h(f,["11111","01111","10111","11011","11101","11110","11111","11110","11101","11011","10111","01111"]),Gs=h(at,["\u{1F539}","\u{1F535}"]),Js=h(nt,["\u{1F642}","\u{1F642}","\u{1F617}","\u{1F619}","\u{1F618}","\u{1F618}","\u{1F619}"]),Zs=h(f,["\u{1F550}","\u{1F551}","\u{1F552}","\u{1F553}","\u{1F554}","\u{1F555}","\u{1F556}","\u{1F557}","\u{1F558}","\u{1F559}","\u{1F55A}","\u{1F55B}"]),Ks=h(f,["\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}"]),be=h(at,["\u{1F30E}","\u{1F30F}","\u{1F30D}"]),Qs=h(at,["\u{1F513}","\u{1F512}"]),Ys=h(at,["\u{1F505}","\u{1F506}"]),Xs=h(at,["\u{1F508}","\u{1F508}","\u{1F509}","\u{1F50A}","\u{1F50A}","\u{1F509}"]),tr=h(nt,["\u{1F311}","\u{1F311}","\u{1F311}","\u{1F318}","\u{1F317}","\u{1F316}","\u{1F315}","\u{1F314}","\u{1F313}","\u{1F312}"]);var $e=w(s=>t=>(s.name("error"),s.styles(C,er),typeof t=="string"?t:t instanceof Error?_`<strong>${t.name}:</strong> <span>${t.message}</span>`:"error")),er=b`
|
|
44
44
|
:host {
|
|
45
45
|
font-family: monospace;
|
|
46
46
|
color: red;
|
|
47
47
|
}
|
|
48
|
-
`;function
|
|
48
|
+
`;function sr(s=be,t=e=>$e(e)){return(e,r)=>e.select({loading:s,ready:r,error:t})}function rr(){return(s,t)=>s.select({ready:t,loading:()=>"[loading]",error:()=>"[error]"})}var Xe=w(s=>()=>{s.name("loaders"),s.styles(C,or);let t=s.once(()=>W.loading());return s.once(()=>Object.entries(bt.anims).map(([r,o])=>({key:r,loader:bt.make(o)}))).map(({key:r,loader:o})=>_`
|
|
49
49
|
<div data-anim="${r}">
|
|
50
50
|
<span>${r}</span>
|
|
51
51
|
<span>${o(t,()=>null)}</span>
|
|
52
52
|
</div>
|
|
53
|
-
`)}),
|
|
53
|
+
`)}),or=b`
|
|
54
54
|
:host {
|
|
55
55
|
display: flex;
|
|
56
56
|
flex-direction: row;
|
|
@@ -91,19 +91,19 @@ div {
|
|
|
91
91
|
min-height: 2.5em;
|
|
92
92
|
}
|
|
93
93
|
}
|
|
94
|
-
`;var
|
|
95
|
-
${
|
|
96
|
-
${
|
|
97
|
-
`)){},
|
|
94
|
+
`;var ee=class extends w.component(t=>(t.name("demo"),t.styles(C,ir),_`
|
|
95
|
+
${ye.props(768,3).children("view").render()}
|
|
96
|
+
${Xe()}
|
|
97
|
+
`)){},ir=b`
|
|
98
98
|
:host {
|
|
99
99
|
display: flex;
|
|
100
100
|
flex-direction: column;
|
|
101
101
|
align-items: center;
|
|
102
102
|
gap: 1em;
|
|
103
103
|
}
|
|
104
|
-
`;var
|
|
104
|
+
`;var se=class extends E{static styles=b`span{color:orange}`;attrs=p.attrs(this).spec({value:Number});something={whatever:"rofl"};render(t){let{value:e=1}=this.attrs,r=t.signal(0);return t.mount(()=>Lt(async()=>{await Ut(10),await r(r()+1)})),_`
|
|
105
105
|
<span>${r()*e}</span>
|
|
106
|
-
`}};p.register({DemoComponent:
|
|
106
|
+
`}};p.register({DemoComponent:ee,CounterComponent:te,FastcountElement:se});console.log("\u{1F99D} sly");
|
|
107
107
|
/*! Bundled license information:
|
|
108
108
|
|
|
109
109
|
@lit/reactive-element/css-tag.js:
|