@e280/sly 0.2.0-11 โ 0.2.0-13
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/README.md +111 -68
- package/package.json +1 -1
- package/s/demo/views/counter.ts +0 -1
- package/s/ui/types.ts +1 -1
- package/s/ui/view/make-view.ts +1 -1
- package/x/demo/demo.bundle.min.js +9 -9
- package/x/demo/demo.bundle.min.js.map +4 -4
- package/x/demo/views/counter.js.map +1 -1
- package/x/index.html +2 -2
- package/x/ui/types.d.ts +1 -1
- package/x/ui/view/make-view.js +2 -1
- package/x/ui/view/make-view.js.map +1 -1
package/README.md
CHANGED
|
@@ -4,13 +4,13 @@
|
|
|
4
4
|
# ๐ฆ sly
|
|
5
5
|
> *mischievous shadow views*
|
|
6
6
|
|
|
7
|
-
[@e280](https://e280.org/)'s shiny new [lit](https://lit.dev/)-based frontend
|
|
7
|
+
[@e280](https://e280.org/)'s shiny new [lit](https://lit.dev/)-based frontend webdev library. *(sly replaces its predecessor, [slate](https://github.com/benevolent-games/slate))*
|
|
8
8
|
|
|
9
|
-
- ๐ [
|
|
10
|
-
- ๐ชต [
|
|
11
|
-
- ๐ช [
|
|
12
|
-
- ๐ซ [
|
|
13
|
-
- ๐ช [
|
|
9
|
+
- ๐ [**#views**](#views) โ shadow-dom'd, hooks-based, componentizable
|
|
10
|
+
- ๐ชต [**#base-element**](#base-element) โ for a more classical experience
|
|
11
|
+
- ๐ช [**#dom**](#dom) โ the "it's not jquery" multitool
|
|
12
|
+
- ๐ซ [**#ops**](#ops) โ tools for async operations and loading spinners
|
|
13
|
+
- ๐ช [**#loot**](#loot) โ drag-and-drop facilities
|
|
14
14
|
- ๐งช testing page โ https://sly.e280.org/
|
|
15
15
|
|
|
16
16
|
|
|
@@ -34,76 +34,77 @@ npm install @e280/sly lit @e280/strata @e280/stz
|
|
|
34
34
|
<br/><br/>
|
|
35
35
|
<a id="views"></a>
|
|
36
36
|
|
|
37
|
-
## ๐ฆ๐ sly views
|
|
38
|
-
> *
|
|
37
|
+
## ๐ฆ๐ sly views
|
|
38
|
+
> *the crown jewel of sly*
|
|
39
39
|
|
|
40
40
|
```ts
|
|
41
41
|
view(use => () => html`<p>hello world</p>`)
|
|
42
42
|
```
|
|
43
43
|
|
|
44
|
-
-
|
|
45
|
-
-
|
|
46
|
-
-
|
|
47
|
-
-
|
|
44
|
+
- ๐ชถ **no compile step** โ just god's honest javascript, via [lit](https://lit.dev/)-html tagged-template-literals
|
|
45
|
+
- ๐ฅท **shadow dom'd** โ each gets its own cozy [shadow](https://developer.mozilla.org/en-US/docs/Web/API/Web_components/Using_shadow_DOM) bubble, and supports [slots](https://developer.mozilla.org/en-US/docs/Web/API/Web_components/Using_templates_and_slots)
|
|
46
|
+
- ๐ช **hooks-based** โ declarative rendering with the [`use.*`](#use) family of ergonomic hooks
|
|
47
|
+
- โก **reactive** โ they auto-rerender whenever any [strata](https://github.com/e280/strata)-compatible state changes
|
|
48
|
+
- ๐ง **not components, per se** โ they're comfy typescript-native ui building blocks [(technically, lit directives)](https://lit.dev/docs/templates/custom-directives/)
|
|
49
|
+
- ๐งฉ **componentizable** โ any view can be magically converted into a proper [web components](https://developer.mozilla.org/en-US/docs/Web/API/Web_components)
|
|
48
50
|
|
|
49
51
|
### ๐ view example
|
|
50
52
|
```ts
|
|
51
53
|
import {view, dom, BaseElement} from "@e280/sly"
|
|
52
54
|
import {html, css} from "lit"
|
|
53
55
|
```
|
|
54
|
-
- **declare
|
|
56
|
+
- **declare view**
|
|
55
57
|
```ts
|
|
56
58
|
export const CounterView = view(use => (start: number) => {
|
|
57
|
-
use.name("counter")
|
|
58
59
|
use.styles(css`p {color: green}`)
|
|
59
60
|
|
|
60
61
|
const $count = use.signal(start)
|
|
61
62
|
const increment = () => $count.value++
|
|
62
63
|
|
|
63
64
|
return html`
|
|
64
|
-
<
|
|
65
|
-
|
|
65
|
+
<button @click="${increment}">
|
|
66
|
+
${$count.value}
|
|
67
|
+
</button>
|
|
66
68
|
`
|
|
67
69
|
})
|
|
68
70
|
```
|
|
69
|
-
-
|
|
70
|
-
- **inject
|
|
71
|
+
- `$count` is a [strata signal](https://github.com/e280/strata#readme) *(we like those)*
|
|
72
|
+
- **inject view into dom**
|
|
71
73
|
```ts
|
|
72
74
|
dom.in(".app").render(html`
|
|
73
75
|
<h1>cool counter demo</h1>
|
|
74
76
|
${CounterView(1)}
|
|
75
77
|
`)
|
|
76
78
|
```
|
|
77
|
-
- ๐คฏ **register
|
|
79
|
+
- ๐คฏ **register view as web component**
|
|
78
80
|
```ts
|
|
79
81
|
dom.register({
|
|
80
82
|
MyCounter: CounterView
|
|
81
|
-
.component(
|
|
82
|
-
.props(
|
|
83
|
+
.component()
|
|
84
|
+
.props(() => [1]),
|
|
83
85
|
})
|
|
84
86
|
```
|
|
85
87
|
```html
|
|
86
|
-
<my-counter
|
|
88
|
+
<my-counter></my-counter>
|
|
87
89
|
```
|
|
88
90
|
|
|
89
|
-
### ๐ view
|
|
90
|
-
-
|
|
91
|
+
### ๐ view settings
|
|
92
|
+
- lame settings for views you should know about
|
|
91
93
|
```ts
|
|
92
94
|
export const CoolView = view
|
|
93
95
|
.settings({mode: "open", delegatesFocus: true})
|
|
94
|
-
.render(use => (greeting: string) => {
|
|
95
|
-
return html`๐ ${greeting} <slot></slot>`
|
|
96
|
-
})
|
|
96
|
+
.render(use => (greeting: string) => html`๐ ${greeting} <slot></slot>`)
|
|
97
97
|
```
|
|
98
98
|
- all [attachShadow params](https://developer.mozilla.org/en-US/docs/Web/API/Element/attachShadow#parameters) (like `mode` and `delegatesFocus`) are valid `settings`
|
|
99
99
|
- note the `<slot></slot>` we'll use in the next example lol
|
|
100
100
|
|
|
101
|
-
### ๐ view
|
|
102
|
-
-
|
|
101
|
+
### ๐ view chain
|
|
102
|
+
- views have this sick chaining syntax for supplying more stuff at the template injection site
|
|
103
103
|
```ts
|
|
104
104
|
dom.in(".app").render(html`
|
|
105
105
|
<h2>cool example</h2>
|
|
106
|
-
${CoolView
|
|
106
|
+
${CoolView
|
|
107
|
+
.props("hello")
|
|
107
108
|
.attr("class", "hero")
|
|
108
109
|
.children(html`<em>spongebob</em>`)
|
|
109
110
|
.render()}
|
|
@@ -111,7 +112,7 @@ import {html, css} from "lit"
|
|
|
111
112
|
```
|
|
112
113
|
- `props` โ provide props and start a view chain
|
|
113
114
|
- `attr` โ set html attributes on the `<sly-view>` host element
|
|
114
|
-
- `children` โ nested
|
|
115
|
+
- `children` โ add nested [slottable](https://developer.mozilla.org/en-US/docs/Web/API/Web_components/Using_templates_and_slots) content
|
|
115
116
|
- `render` โ end the view chain and render the lit directive
|
|
116
117
|
|
|
117
118
|
### ๐ view/component universality
|
|
@@ -120,69 +121,91 @@ import {html, css} from "lit"
|
|
|
120
121
|
export const GreeterView = view(use => (name: string) => {
|
|
121
122
|
return html`<p>hello ${name}</p>`
|
|
122
123
|
})
|
|
123
|
-
|
|
124
|
-
// view usage:
|
|
125
|
-
// GreeterView("pimsley")
|
|
126
124
|
```
|
|
127
|
-
|
|
125
|
+
- view usage
|
|
126
|
+
```ts
|
|
127
|
+
GreeterView("pimsley")
|
|
128
|
+
```
|
|
129
|
+
**then you can convert it to a component.**
|
|
128
130
|
```ts
|
|
129
131
|
export class GreeterComponent extends (
|
|
130
132
|
GreeterView
|
|
131
|
-
.component(
|
|
133
|
+
.component()
|
|
132
134
|
.props(component => [component.getAttribute("name") ?? "unknown"])
|
|
133
135
|
) {}
|
|
134
|
-
|
|
135
|
-
// html usage:
|
|
136
|
-
// <greeter-component name="pimsley"></greeter-component>
|
|
137
136
|
```
|
|
138
|
-
-
|
|
137
|
+
- html usage
|
|
138
|
+
```html
|
|
139
|
+
<greeter-component name="pimsley"></greeter-component>
|
|
140
|
+
```
|
|
139
141
|
- **you can start with a component,**
|
|
140
142
|
```ts
|
|
141
143
|
export class GreeterComponent extends (
|
|
142
144
|
view(use => (name: string) => {
|
|
143
145
|
return html`<p>hello ${name}</p>`
|
|
144
146
|
})
|
|
145
|
-
.component(
|
|
147
|
+
.component()
|
|
146
148
|
.props(component => [component.getAttribute("name") ?? "unknown"])
|
|
147
149
|
) {}
|
|
148
|
-
|
|
149
|
-
// html usage:
|
|
150
|
-
// <greeter-component name="pimsley"></greeter-component>
|
|
151
|
-
```
|
|
152
|
-
then it already has a `.view` ready for you.
|
|
153
|
-
```ts
|
|
154
|
-
// view usage:
|
|
155
|
-
// GreeterComponent.view("pimsley")
|
|
156
150
|
```
|
|
157
|
-
-
|
|
151
|
+
- html usage
|
|
152
|
+
```html
|
|
153
|
+
<greeter-component name="pimsley"></greeter-component>
|
|
154
|
+
```
|
|
155
|
+
**and it already has `.view` ready for you.**
|
|
156
|
+
- view usage
|
|
157
|
+
```ts
|
|
158
|
+
GreeterComponent.view("pimsley")
|
|
159
|
+
```
|
|
160
|
+
- **understanding `.component(BaseElement)` and `.props(fn)`**
|
|
158
161
|
- `.props` takes a fn that is called every render, which returns the props given to the view
|
|
159
162
|
```ts
|
|
160
|
-
.component(BaseElement)
|
|
161
163
|
.props(() => ["pimsley"])
|
|
162
164
|
```
|
|
163
165
|
the props fn receives the component instance, so you can query html attributes or instance properties
|
|
164
166
|
```ts
|
|
165
|
-
.component(BaseElement)
|
|
166
167
|
.props(component => [component.getAttribute("name") ?? "unknown"])
|
|
167
168
|
```
|
|
168
|
-
- `.component` accepts a subclass of `BaseElement`,
|
|
169
|
+
- `.component` accepts a subclass of `BaseElement`, so you can define your own properties and methods for your component class
|
|
169
170
|
```ts
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
171
|
+
const GreeterComponent = GreeterView
|
|
172
|
+
|
|
173
|
+
// declare your own custom class
|
|
174
|
+
.component(class extends BaseElement {
|
|
175
|
+
$name = signal("jim raynor")
|
|
176
|
+
updateName(name: string) {
|
|
177
|
+
this.$name.value = name
|
|
178
|
+
}
|
|
179
|
+
})
|
|
180
|
+
|
|
181
|
+
// props gets the right types on 'component'
|
|
182
|
+
.props(component => [component.$name.value])
|
|
183
|
+
```โ the technical term for a *genuine* web component
|
|
184
|
+
- `.component` provides the devs interacting with your component, with noice typings
|
|
179
185
|
```ts
|
|
180
|
-
dom<GreeterComponent>("
|
|
186
|
+
dom<GreeterComponent>("greeter-component").updateName("mortimer")
|
|
181
187
|
```
|
|
188
|
+
- typescript class wizardry
|
|
189
|
+
- โ smol-brain approach exports class value, but not the typings
|
|
190
|
+
```ts
|
|
191
|
+
export const GreeterComponent = (...)
|
|
192
|
+
```
|
|
193
|
+
- โ
giga-brain approach exports class value AND the typings
|
|
194
|
+
```ts
|
|
195
|
+
export class GreeterComponent extends (...) {}
|
|
196
|
+
```
|
|
182
197
|
- **register web components to the dom**
|
|
183
198
|
```ts
|
|
184
199
|
dom.register({GreeterComponent})
|
|
185
200
|
```
|
|
201
|
+
- **oh and don't miss out on the insta-component shorthand**
|
|
202
|
+
```ts
|
|
203
|
+
dom.register({
|
|
204
|
+
QuickComponent: view.component(use => html`โก incredi`),
|
|
205
|
+
})
|
|
206
|
+
```
|
|
207
|
+
|
|
208
|
+
<a id="use"></a>
|
|
186
209
|
|
|
187
210
|
### ๐ "use" hooks reference
|
|
188
211
|
- ๐ฎ **follow the hooks rules**
|
|
@@ -328,7 +351,27 @@ import {BaseElement, Use, dom} from "@e280/sly"
|
|
|
328
351
|
import {html, css} from "lit"
|
|
329
352
|
```
|
|
330
353
|
|
|
331
|
-
`BaseElement` is an old-timey class-based "
|
|
354
|
+
`BaseElement` is more of an old-timey class-based "boomer" approach to making web components, but with a zoomer twist โ its `render` method gives you the same `use` hooks that views enjoy.
|
|
355
|
+
|
|
356
|
+
๐ฎ a *BaseElement* is not a *View*, and cannot be converted into a *View*.
|
|
357
|
+
|
|
358
|
+
### ๐ชต let's clarify some sly terminology
|
|
359
|
+
- "Element"
|
|
360
|
+
- an html element; any subclass of the browser's HTMLElement
|
|
361
|
+
- all genuine ["web components"](https://developer.mozilla.org/en-US/docs/Web/API/Web_components) are elements
|
|
362
|
+
- "BaseElement"
|
|
363
|
+
- sly's own subclass of the browser-native HTMLElement
|
|
364
|
+
- is a true element and web component (can be registered to the dom)
|
|
365
|
+
- "View"
|
|
366
|
+
- sly's own magic concept that uses a lit-directive to render stuff
|
|
367
|
+
- NOT an element or web component (can NOT be registered to the dom)
|
|
368
|
+
- NOT related to BaseElement
|
|
369
|
+
- can be converted into a Component via `view.component().props(() => [])`
|
|
370
|
+
- "Component"
|
|
371
|
+
- a sly view that has been converted into an element
|
|
372
|
+
- is a true element and web component (can be registered to the dom)
|
|
373
|
+
- actually a subclass of BaseElement
|
|
374
|
+
- actually contains the view on `Component.view`
|
|
332
375
|
|
|
333
376
|
### ๐ชต base element setup
|
|
334
377
|
- **declare your element class**
|
|
@@ -337,7 +380,7 @@ import {html, css} from "lit"
|
|
|
337
380
|
static styles = css`span{color:orange}`
|
|
338
381
|
|
|
339
382
|
// custom property
|
|
340
|
-
start = 10
|
|
383
|
+
$start = signal(10)
|
|
341
384
|
|
|
342
385
|
// custom attributes
|
|
343
386
|
attrs = dom.attrs(this).spec({
|
|
@@ -353,9 +396,9 @@ import {html, css} from "lit"
|
|
|
353
396
|
const $count = use.signal(1)
|
|
354
397
|
const increment = () => $count.value++
|
|
355
398
|
|
|
356
|
-
const {start} = this
|
|
399
|
+
const {$start} = this
|
|
357
400
|
const {multiply = 1} = this.attrs
|
|
358
|
-
const result = start + (multiply * $count())
|
|
401
|
+
const result = $start() + (multiply * $count())
|
|
359
402
|
|
|
360
403
|
return html`
|
|
361
404
|
<span>${result}</span>
|
|
@@ -381,7 +424,7 @@ import {html, css} from "lit"
|
|
|
381
424
|
const myElement = dom<MyElement>("my-element")
|
|
382
425
|
|
|
383
426
|
// js property
|
|
384
|
-
myElement
|
|
427
|
+
myElement.$start(100)
|
|
385
428
|
|
|
386
429
|
// html attributes
|
|
387
430
|
myElement.attrs.multiply = 2
|
package/package.json
CHANGED
package/s/demo/views/counter.ts
CHANGED
package/s/ui/types.ts
CHANGED
|
@@ -19,7 +19,7 @@ export type ViewFn<Props extends any[]> = (
|
|
|
19
19
|
export type View<Props extends any[]> = {
|
|
20
20
|
(...props: Props): DirectiveResult
|
|
21
21
|
props: (...props: Props) => ViewChain<Props>
|
|
22
|
-
component: <B extends Constructor<BaseElement>>(Base
|
|
22
|
+
component: <B extends Constructor<BaseElement>>(Base?: B) => {
|
|
23
23
|
props: (propFn: (component: InstanceType<B>) => Props) => (
|
|
24
24
|
ComponentClass<B, Props>
|
|
25
25
|
)
|
package/s/ui/view/make-view.ts
CHANGED
|
@@ -24,7 +24,7 @@ export function makeView<Props extends any[]>(
|
|
|
24
24
|
renderDirective,
|
|
25
25
|
)
|
|
26
26
|
|
|
27
|
-
v.component = <B extends Constructor<BaseElement>>(Base: B) => ({
|
|
27
|
+
v.component = <B extends Constructor<BaseElement>>(Base: B = BaseElement as any) => ({
|
|
28
28
|
props: (propFn: (component: InstanceType<B>) => Props) => (
|
|
29
29
|
makeComponent<B, Props>(
|
|
30
30
|
settings,
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
var Fe=Object.defineProperty;var Ze=(r,t)=>{for(var e in t)Fe(r,e,{get:t[e],enumerable:!0})};var dt=globalThis,mt=dt.ShadowRoot&&(dt.ShadyCSS===void 0||dt.ShadyCSS.nativeShadow)&&"adoptedStyleSheets"in Document.prototype&&"replace"in CSSStyleSheet.prototype,Ft=Symbol(),ue=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(mt&&t===void 0){let s=e!==void 0&&e.length===1;s&&(t=ue.get(e)),t===void 0&&((this.o=t=new CSSStyleSheet).replaceSync(this.cssText),s&&ue.set(e,t))}return t}toString(){return this.cssText}},pe=r=>new G(typeof r=="string"?r:r+"",void 0,Ft),y=(r,...t)=>{let e=r.length===1?r[0]:t.reduce(((s,o,n)=>s+(i=>{if(i._$cssResult$===!0)return i.cssText;if(typeof i=="number")return i;throw Error("Value passed to 'css' function must be a 'css' function result: "+i+". Use 'unsafeCSS' to pass non-literal values, but take care to ensure page security.")})(o)+r[n+1]),r[0]);return new G(e,r,Ft)},gt=(r,t)=>{if(mt)r.adoptedStyleSheets=t.map((e=>e instanceof CSSStyleSheet?e:e.styleSheet));else for(let e of t){let s=document.createElement("style"),o=dt.litNonce;o!==void 0&&s.setAttribute("nonce",o),s.textContent=e.cssText,r.appendChild(s)}},I=mt?r=>r:r=>r instanceof CSSStyleSheet?(t=>{let e="";for(let s of t.cssRules)e+=s.cssText;return pe(e)})(r):r;var{is:Je,defineProperty:Ke,getOwnPropertyDescriptor:Qe,getOwnPropertyNames:Ye,getOwnPropertySymbols:Ge,getPrototypeOf:Xe}=Object,yt=globalThis,he=yt.trustedTypes,tr=he?he.emptyScript:"",er=yt.reactiveElementPolyfillSupport,X=(r,t)=>r,Zt={toAttribute(r,t){switch(t){case Boolean:r=r?tr: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}},de=(r,t)=>!Je(r,t),fe={attribute:!0,type:String,converter:Zt,reflect:!1,useDefault:!1,hasChanged:de};Symbol.metadata??=Symbol("metadata"),yt.litPropertyMetadata??=new WeakMap;var
|
|
1
|
+
var Fe=Object.defineProperty;var Ze=(r,t)=>{for(var e in t)Fe(r,e,{get:t[e],enumerable:!0})};var dt=globalThis,mt=dt.ShadowRoot&&(dt.ShadyCSS===void 0||dt.ShadyCSS.nativeShadow)&&"adoptedStyleSheets"in Document.prototype&&"replace"in CSSStyleSheet.prototype,Ft=Symbol(),ue=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(mt&&t===void 0){let s=e!==void 0&&e.length===1;s&&(t=ue.get(e)),t===void 0&&((this.o=t=new CSSStyleSheet).replaceSync(this.cssText),s&&ue.set(e,t))}return t}toString(){return this.cssText}},pe=r=>new G(typeof r=="string"?r:r+"",void 0,Ft),y=(r,...t)=>{let e=r.length===1?r[0]:t.reduce(((s,o,n)=>s+(i=>{if(i._$cssResult$===!0)return i.cssText;if(typeof i=="number")return i;throw Error("Value passed to 'css' function must be a 'css' function result: "+i+". Use 'unsafeCSS' to pass non-literal values, but take care to ensure page security.")})(o)+r[n+1]),r[0]);return new G(e,r,Ft)},gt=(r,t)=>{if(mt)r.adoptedStyleSheets=t.map((e=>e instanceof CSSStyleSheet?e:e.styleSheet));else for(let e of t){let s=document.createElement("style"),o=dt.litNonce;o!==void 0&&s.setAttribute("nonce",o),s.textContent=e.cssText,r.appendChild(s)}},I=mt?r=>r:r=>r instanceof CSSStyleSheet?(t=>{let e="";for(let s of t.cssRules)e+=s.cssText;return pe(e)})(r):r;var{is:Je,defineProperty:Ke,getOwnPropertyDescriptor:Qe,getOwnPropertyNames:Ye,getOwnPropertySymbols:Ge,getPrototypeOf:Xe}=Object,yt=globalThis,he=yt.trustedTypes,tr=he?he.emptyScript:"",er=yt.reactiveElementPolyfillSupport,X=(r,t)=>r,Zt={toAttribute(r,t){switch(t){case Boolean:r=r?tr: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}},de=(r,t)=>!Je(r,t),fe={attribute:!0,type:String,converter:Zt,reflect:!1,useDefault:!1,hasChanged:de};Symbol.metadata??=Symbol("metadata"),yt.litPropertyMetadata??=new WeakMap;var E=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=fe){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&&Ke(this.prototype,t,o)}}static getPropertyDescriptor(t,e,s){let{get:o,set:n}=Qe(this.prototype,t)??{get(){return this[e]},set(i){this[e]=i}};return{get:o,set(i){let c=o?.call(this);n?.call(this,i),this.requestUpdate(t,c,s)},configurable:!0,enumerable:!0}}static getPropertyOptions(t){return this.elementProperties.get(t)??fe}static _$Ei(){if(this.hasOwnProperty(X("elementProperties")))return;let t=Xe(this);t.finalize(),t.l!==void 0&&(this.l=[...t.l]),this.elementProperties=new Map(t.elementProperties)}static finalize(){if(this.hasOwnProperty(X("finalized")))return;if(this.finalized=!0,this._$Ei(),this.hasOwnProperty(X("properties"))){let e=this.properties,s=[...Ye(e),...Ge(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(I(o))}else t!==void 0&&e.push(I(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 gt(t,this.constructor.elementStyles),t}connectedCallback(){this.renderRoot??=this.createRenderRoot(),this.enableUpdating(!0),this._$EO?.forEach((t=>t.hostConnected?.()))}enableUpdating(t){}disconnectedCallback(){this._$EO?.forEach((t=>t.hostDisconnected?.()))}attributeChangedCallback(t,e,s){this._$AK(t,s)}_$ET(t,e){let s=this.constructor.elementProperties.get(t),o=this.constructor._$Eu(t,s);if(o!==void 0&&s.reflect===!0){let n=(s.converter?.toAttribute!==void 0?s.converter:Zt).toAttribute(e,s.type);this._$Em=t,n==null?this.removeAttribute(o):this.setAttribute(o,n),this._$Em=null}}_$AK(t,e){let s=this.constructor,o=s._$Eh.get(t);if(o!==void 0&&this._$Em!==o){let n=s.getPropertyOptions(o),i=typeof n.converter=="function"?{fromAttribute:n.converter}:n.converter?.fromAttribute!==void 0?n.converter:Zt;this._$Em=o,this[o]=i.fromAttribute(e,n.type)??this._$Ej?.get(o)??null,this._$Em=null}}requestUpdate(t,e,s){if(t!==void 0){let o=this.constructor,n=this[t];if(s??=o.getPropertyOptions(t),!((s.hasChanged??de)(n,e)||s.useDefault&&s.reflect&&n===this._$Ej?.get(t)&&!this.hasAttribute(o._$Eu(t,s))))return;this.C(t,e,s)}this.isUpdatePending===!1&&(this._$ES=this._$EP())}C(t,e,{useDefault:s,reflect:o,wrapped:n},i){s&&!(this._$Ej??=new Map).has(t)&&(this._$Ej.set(t,i??e??this[t]),n!==!0||i!==void 0)||(this._$AL.has(t)||(this.hasUpdated||s||(e=void 0),this._$AL.set(t,e)),o===!0&&this._$Em!==t&&(this._$Eq??=new Set).add(t))}async _$EP(){this.isUpdatePending=!0;try{await this._$ES}catch(e){Promise.reject(e)}let t=this.scheduleUpdate();return t!=null&&await t,!this.isUpdatePending}scheduleUpdate(){return this.performUpdate()}performUpdate(){if(!this.isUpdatePending)return;if(!this.hasUpdated){if(this.renderRoot??=this.createRenderRoot(),this._$Ep){for(let[o,n]of this._$Ep)this[o]=n;this._$Ep=void 0}let s=this.constructor.elementProperties;if(s.size>0)for(let[o,n]of s){let{wrapped:i}=n,c=this[o];i!==!0||this._$AL.has(o)||c===void 0||this.C(o,void 0,n,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){}};E.elementStyles=[],E.shadowRootOptions={mode:"open"},E[X("elementProperties")]=new Map,E[X("finalized")]=new Map,er?.({ReactiveElement:E}),(yt.reactiveElementVersions??=[]).push("2.1.0");var Kt=globalThis,bt=Kt.trustedTypes,me=bt?bt.createPolicy("lit-html",{createHTML:r=>r}):void 0,Qt="$lit$",B=`lit$${Math.random().toFixed(9).slice(2)}$`,Yt="?"+B,rr=`<${Yt}>`,j=document,et=()=>j.createComment(""),rt=r=>r===null||typeof r!="object"&&typeof r!="function",Gt=Array.isArray,$e=r=>Gt(r)||typeof r?.[Symbol.iterator]=="function",Jt=`[
|
|
2
2
|
\f\r]`,tt=/<(?:(!--|\/[^a-zA-Z])|(\/?[a-zA-Z][^>\s]*)|(\/?$))/g,ge=/-->/g,ye=/>/g,O=RegExp(`>|${Jt}(?:([^\\s"'>=/]+)(${Jt}*=${Jt}*(?:[^
|
|
3
|
-
\f\r"'\`<>=]|("|')|))|$)`,"g"),be=/'/g,xe=/"/g,ve=/^(?:script|style|textarea|title)$/i,Xt=r=>(t,...e)=>({_$litType$:r,strings:t,values:e}),v=Xt(1),rs=Xt(2),ss=Xt(3),M=Symbol.for("lit-noChange"),m=Symbol.for("lit-nothing"),we=new WeakMap,T=j.createTreeWalker(j,129);function Ae(r,t){if(!Gt(r)||!r.hasOwnProperty("raw"))throw Error("invalid template strings array");return me!==void 0?me.createHTML(t):t}var _e=(r,t)=>{let e=r.length-1,s=[],o,n=t===2?"<svg>":t===3?"<math>":"",i=tt;for(let c=0;c<e;c++){let a=r[c],l,h,p=-1,w=0;for(;w<a.length&&(i.lastIndex=w,h=i.exec(a),h!==null);)w=i.lastIndex,i===tt?h[1]==="!--"?i=ge:h[1]!==void 0?i=ye:h[2]!==void 0?(ve.test(h[2])&&(o=RegExp("</"+h[2],"g")),i=O):h[3]!==void 0&&(i=O):i===O?h[0]===">"?(i=o??tt,p=-1):h[1]===void 0?p=-2:(p=i.lastIndex-h[2].length,l=h[1],i=h[3]===void 0?O:h[3]==='"'?xe:be):i===xe||i===be?i=O:i===ge||i===ye?i=tt:(i=O,o=void 0);let B=i===O&&r[c+1].startsWith("/>")?" ":"";n+=i===tt?a+rr:p>=0?(s.push(l),a.slice(0,p)+Qt+a.slice(p)+E+B):a+E+(p===-2?c:B)}return[Ae(r,n+(r[e]||"<?>")+(t===2?"</svg>":t===3?"</math>":"")),s]},st=class r{constructor({strings:t,_$litType$:e},s){let o;this.parts=[];let n=0,i=0,c=t.length-1,a=this.parts,[l,h]=_e(t,e);if(this.el=r.createElement(l,s),T.currentNode=this.el.content,e===2||e===3){let p=this.el.content.firstChild;p.replaceWith(...p.childNodes)}for(;(o=T.nextNode())!==null&&a.length<c;){if(o.nodeType===1){if(o.hasAttributes())for(let p of o.getAttributeNames())if(p.endsWith(Qt)){let w=h[i++],B=o.getAttribute(p).split(E),ft=/([.?@])?(.*)/.exec(w);a.push({type:1,index:n,name:ft[2],strings:B,ctor:ft[1]==="."?wt:ft[1]==="?"?$t:ft[1]==="@"?vt:R}),o.removeAttribute(p)}else p.startsWith(E)&&(a.push({type:6,index:n}),o.removeAttribute(p));if(ve.test(o.tagName)){let p=o.textContent.split(E),w=p.length-1;if(w>0){o.textContent=bt?bt.emptyScript:"";for(let B=0;B<w;B++)o.append(p[B],et()),T.nextNode(),a.push({type:2,index:++n});o.append(p[w],et())}}}else if(o.nodeType===8)if(o.data===Yt)a.push({type:2,index:n});else{let p=-1;for(;(p=o.data.indexOf(E,p+1))!==-1;)a.push({type:7,index:n}),p+=E.length-1}n++}}static createElement(t,e){let s=j.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,n=rt(t)?void 0:t._$litDirective$;return o?.constructor!==n&&(o?._$AO?.(!1),n===void 0?o=void 0:(o=new n(r),o._$AT(r,e,s)),s!==void 0?(e._$Co??=[])[s]=o:e._$Cl=o),o!==void 0&&(t=N(r,o._$AS(r,t.values),o,s)),t}var xt=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??j).importNode(e,!0);T.currentNode=o;let n=T.nextNode(),i=0,c=0,a=s[0];for(;a!==void 0;){if(i===a.index){let l;a.type===2?l=new L(n,n.nextSibling,this,t):a.type===1?l=new a.ctor(n,a.name,a.strings,this,t):a.type===6&&(l=new At(n,this,t)),this._$AV.push(l),a=s[++c]}i!==a?.index&&(n=T.nextNode(),i++)}return T.currentNode=j,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++}},L=class r{get _$AU(){return this._$AM?._$AU??this._$Cv}constructor(t,e,s,o){this.type=2,this._$AH=m,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),rt(t)?t===m||t==null||t===""?(this._$AH!==m&&this._$AR(),this._$AH=m):t!==this._$AH&&t!==M&&this._(t):t._$litType$!==void 0?this.$(t):t.nodeType!==void 0?this.T(t):$e(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!==m&&rt(this._$AH)?this._$AA.nextSibling.data=t:this.T(j.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=st.createElement(Ae(s.h,s.h[0]),this.options)),s);if(this._$AH?._$AD===o)this._$AH.p(e);else{let n=new xt(o,this),i=n.u(this.options);n.p(e),this.T(i),this._$AH=n}}_$AC(t){let e=we.get(t.strings);return e===void 0&&we.set(t.strings,e=new st(t)),e}k(t){Gt(this._$AH)||(this._$AH=[],this._$AR());let e=this._$AH,s,o=0;for(let n of t)o===e.length?e.push(s=new r(this.O(et()),this.O(et()),this,this.options)):s=e[o],s._$AI(n),o++;o<e.length&&(this._$AR(s&&s._$AB.nextSibling,o),e.length=o)}_$AR(t=this._$AA.nextSibling,e){for(this._$AP?.(!1,!0,e);t&&t!==this._$AB;){let s=t.nextSibling;t.remove(),t=s}}setConnected(t){this._$AM===void 0&&(this._$Cv=t,this._$AP?.(t))}},R=class{get tagName(){return this.element.tagName}get _$AU(){return this._$AM._$AU}constructor(t,e,s,o,n){this.type=1,this._$AH=m,this._$AN=void 0,this.element=t,this.name=e,this._$AM=o,this.options=n,s.length>2||s[0]!==""||s[1]!==""?(this._$AH=Array(s.length-1).fill(new String),this.strings=s):this._$AH=m}_$AI(t,e=this,s,o){let n=this.strings,i=!1;if(n===void 0)t=N(this,t,e,0),i=!rt(t)||t!==this._$AH&&t!==M,i&&(this._$AH=t);else{let c=t,a,l;for(t=n[0],a=0;a<n.length-1;a++)l=N(this,c[s+a],e,a),l===M&&(l=this._$AH[a]),i||=!rt(l)||l!==this._$AH[a],l===m?t=m:t!==m&&(t+=(l??"")+n[a+1]),this._$AH[a]=l}i&&!o&&this.j(t)}j(t){t===m?this.element.removeAttribute(this.name):this.element.setAttribute(this.name,t??"")}},wt=class extends R{constructor(){super(...arguments),this.type=3}j(t){this.element[this.name]=t===m?void 0:t}},$t=class extends R{constructor(){super(...arguments),this.type=4}j(t){this.element.toggleAttribute(this.name,!!t&&t!==m)}},vt=class extends R{constructor(t,e,s,o,n){super(t,e,s,o,n),this.type=5}_$AI(t,e=this){if((t=N(this,t,e,0)??m)===M)return;let s=this._$AH,o=t===m&&s!==m||t.capture!==s.capture||t.once!==s.once||t.passive!==s.passive,n=t!==m&&(s===m||o);o&&this.element.removeEventListener(this.name,this,s),n&&this.element.addEventListener(this.name,this,t),this._$AH=t}handleEvent(t){typeof this._$AH=="function"?this._$AH.call(this.options?.host??this.element,t):this._$AH.handleEvent(t)}},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)}},Se={M:Qt,P:E,A:Yt,C:1,L:_e,R:xt,D:$e,V:N,I:L,H:R,N:$t,U:vt,B:wt,F:At},sr=Kt.litHtmlPolyfillSupport;sr?.(st,L),(Kt.litHtmlVersions??=[]).push("3.3.0");var ot=(r,t,e)=>{let s=e?.renderBefore??t,o=s._$litPart$;if(o===void 0){let n=e?.renderBefore??null;s._$litPart$=o=new L(t.insertBefore(et(),n),n,void 0,e??{})}return o._$AI(r),o};var te=globalThis,q=class extends S{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=ot(e,this.renderRoot,this.renderOptions)}connectedCallback(){super.connectedCallback(),this._$Do?.setConnected(!0)}disconnectedCallback(){super.disconnectedCallback(),this._$Do?.setConnected(!1)}render(){return M}};q._$litElement$=!0,q.finalized=!0,te.litElementHydrateSupport?.({LitElement:q});var or=te.litElementPolyfillSupport;or?.({LitElement:q});(te.litElementVersions??=[]).push("4.2.0");function Ee(r,t){let e=new MutationObserver(t);return e.observe(r,{attributes:!0}),()=>e.disconnect()}var g={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 Be=(r,t)=>new Proxy(t,{get:(e,s)=>{switch(t[s]){case String:return g.get.string(r,s);case Number:return g.get.number(r,s);case Boolean:return g.get.boolean(r,s);default:throw new Error(`invalid attribute type for "${s}"`)}},set:(e,s,o)=>{switch(t[s]){case String:return g.set.string(r,s,o);case Number:return g.set.number(r,s,o);case Boolean:return g.set.boolean(r,s,o);default:throw new Error(`invalid attribute type for "${s}"`)}}});var _t=class{element;constructor(t){this.element=t}string=new Proxy({},{get:(t,e)=>g.get.string(this.element,e),set:(t,e,s)=>g.set.string(this.element,e,s)});number=new Proxy({},{get:(t,e)=>g.get.number(this.element,e),set:(t,e,s)=>g.set.number(this.element,e,s)});boolean=new Proxy({},{get:(t,e)=>g.get.boolean(this.element,e),set:(t,e,s)=>g.set.boolean(this.element,e,s)})};function nt(r){let t=new _t(r);return{string:t.string,number:t.number,boolean:t.boolean,on:e=>Ee(r,e),spec:e=>Be(r,e)}}nt.get=g.get;nt.set=g.set;function Ce(r){return r.replace(/([a-zA-Z])(?=[A-Z])/g,"$1-").toLowerCase()}function Pe(r,t={}){let{soft:e=!1,upgrade:s=!0}=t;for(let[o,n]of Object.entries(r)){let i=Ce(o),c=customElements.get(i);e&&c||(customElements.define(i,n),s&&document.querySelectorAll(i).forEach(a=>{a.constructor===HTMLElement&&customElements.upgrade(a)}))}}function ke(r,t){let e=r.querySelector(t);if(!e)throw new Error(`element not found (${t})`);return e}var St=class r{element;constructor(t){this.element=t}in(t){return new r(typeof t=="string"?ke(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 ot(t,this.element)}attrs(){return nt(this.element)}};function f(r){return typeof r=="string"?ke(document,r):new St(r)}var C=new St(document);f.in=C.in.bind(C);f.require=C.require.bind(C);f.maybe=C.maybe.bind(C);f.all=C.all.bind(C);f.attrs=nt;f.register=Pe;f.render=(r,...t)=>ot(t,r);var Et=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 it=class{props;attrs=new Map;children=[];constructor(t){this.props=t}};var A=Object.freeze({eq(r,t){if(r.length!==t.length)return!1;for(let e=0;e<=r.length;e++)if(r.at(e)!==t.at(e))return!1;return!0},random(r){return crypto.getRandomValues(new Uint8Array(r))}});var U=Object.freeze({fromBytes(r){return[...r].map(t=>t.toString(16).padStart(2,"0")).join("")},toBytes(r){if(r.length%2!==0)throw new Error("must have even number of hex characters");let t=new Uint8Array(r.length/2);for(let e=0;e<r.length;e+=2)t[e/2]=parseInt(r.slice(e,e+2),16);return t},random(r=32){return this.fromBytes(A.random(r))},string(r){return U.fromBytes(r)},bytes(r){return U.toBytes(r)}});var ee=58,Bt="123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz",re=Object.freeze({fromBytes(r){let t=BigInt("0x"+U.fromBytes(r)),e="";for(;t>0;){let s=t%BigInt(ee);t=t/BigInt(ee),e=Bt[Number(s)]+e}for(let s of r)if(s===0)e=Bt[0]+e;else break;return e},toBytes(r){let t=BigInt(0);for(let i of r){let c=Bt.indexOf(i);if(c===-1)throw new Error(`Invalid character '${i}' in base58 string`);t=t*BigInt(ee)+BigInt(c)}let e=t.toString(16);e.length%2!==0&&(e="0"+e);let s=U.toBytes(e),o=0;for(let i of r)if(i===Bt[0])o++;else break;let n=new Uint8Array(o+s.length);return n.set(s,o),n},random(r=32){return this.fromBytes(A.random(r))},string(r){return re.fromBytes(r)},bytes(r){return re.toBytes(r)}});var Oe=class{lexicon;static lexicons=Object.freeze({base2:{characters:"01"},hex:{characters:"0123456789abcdef"},base36:{characters:"0123456789abcdefghijklmnopqrstuvwxyz"},base58:{characters:"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"},base62:{characters:"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz"},base64url:{negativePrefix:"~",characters:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_"},base64:{characters:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",padding:{character:"=",size:4}}});lookup;negativePrefix;constructor(t){this.lexicon=t,this.lookup=Object.fromEntries([...t.characters].map((e,s)=>[e,s])),this.negativePrefix=t.negativePrefix??"-"}toBytes(t){let e=Math.log2(this.lexicon.characters.length);if(Number.isInteger(e)){let c=0,a=0,l=[];for(let h of t){if(h===this.lexicon.padding?.character)continue;let p=this.lookup[h];if(p===void 0)throw new Error(`Invalid character: ${h}`);for(c=c<<e|p,a+=e;a>=8;)a-=8,l.push(c>>a&255)}return new Uint8Array(l)}let s=0n,o=BigInt(this.lexicon.characters.length),n=!1;t.startsWith(this.negativePrefix)&&(t=t.slice(this.negativePrefix.length),n=!0);for(let c of t){let a=this.lookup[c];if(a===void 0)throw new Error(`Invalid character: ${c}`);s=s*o+BigInt(a)}let i=[];for(;s>0n;)i.unshift(Number(s%256n)),s=s/256n;return new Uint8Array(i)}fromBytes(t){let e=Math.log2(this.lexicon.characters.length);if(Number.isInteger(e)){let i=0,c=0,a="";for(let l of t)for(i=i<<8|l,c+=8;c>=e;){c-=e;let h=i>>c&(1<<e)-1;a+=this.lexicon.characters[h]}if(c>0){let l=i<<e-c&(1<<e)-1;a+=this.lexicon.characters[l]}if(this.lexicon.padding)for(;a.length%this.lexicon.padding.size!==0;)a+=this.lexicon.padding.character;return a}let s=0n;for(let i of t)s=(s<<8n)+BigInt(i);if(s===0n)return this.lexicon.characters[0];let o=BigInt(this.lexicon.characters.length),n="";for(;s>0n;)n=this.lexicon.characters[Number(s%o)]+n,s=s/o;return n}toInteger(t){if(!t)return 0;let e=0n,s=!1,o=BigInt(this.lexicon.characters.length);t.startsWith(this.negativePrefix)&&(t=t.slice(this.negativePrefix.length),s=!0);for(let n of t){let i=this.lookup[n];if(i===void 0)throw new Error(`Invalid character: ${n}`);e=e*o+BigInt(i)}return Number(s?-e:e)}fromInteger(t){t=Math.floor(t);let e=t<0,s=BigInt(e?-t:t);if(s===0n)return this.lexicon.characters[0];let o=BigInt(this.lexicon.characters.length),n="";for(;s>0n;)n=this.lexicon.characters[Number(s%o)]+n,s=s/o;return e?`${this.negativePrefix}${n}`:n}random(t=32){return this.fromBytes(A.random(t))}};var se=Object.freeze({fromBytes(r){return typeof btoa=="function"?btoa(String.fromCharCode(...r)):Buffer.from(r).toString("base64")},toBytes(r){return typeof atob=="function"?Uint8Array.from(atob(r),t=>t.charCodeAt(0)):Uint8Array.from(Buffer.from(r,"base64"))},random(r=32){return this.fromBytes(A.random(r))},string(r){return se.fromBytes(r)},bytes(r){return se.toBytes(r)}});var Te=Object.freeze({fromBytes(r){return new TextDecoder().decode(r)},toBytes(r){return new TextEncoder().encode(r)},string(r){return Te.fromBytes(r)},bytes(r){return Te.toBytes(r)}});function H(r,t){let e,s,o=[];function n(){e=[],s&&clearTimeout(s),s=void 0,o=[]}return n(),((...i)=>{e=i,s&&clearTimeout(s);let 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);n()}).catch(a=>{for(let{reject:l}of o)l(a);n()})},r),c})}var oe=Object.freeze({happy:r=>r!=null,sad:r=>r==null,boolean:r=>typeof r=="boolean",number:r=>typeof r=="number",string:r=>typeof r=="string",bigint:r=>typeof r=="bigint",object:r=>typeof r=="object"&&r!==null,array:r=>Array.isArray(r),fn:r=>typeof r=="function",symbol:r=>typeof r=="symbol"});function at(){let r,t,e=new Promise((o,n)=>{r=o,t=n});function s(o){return o.then(r).catch(t),e}return{promise:e,resolve:r,reject:t,entangle:s}}var V=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 Ct=(r=0)=>new Promise(t=>setTimeout(t,r));function nr(r){return{map:t=>je(r,t),filter:t=>Me(r,t)}}nr.pipe=Object.freeze({map:r=>(t=>je(t,r)),filter:r=>(t=>Me(t,r))});var je=(r,t)=>Object.fromEntries(Object.entries(r).map(([e,s])=>[e,t(s,e)])),Me=(r,t)=>Object.fromEntries(Object.entries(r).filter(([e,s])=>t(s,e)));function Ne(){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 n(a){let{promise:l,resolve:h}=at(),p=o(async(...w)=>{a&&await a(...w),h(w),p()});return l}function i(){r.clear()}let c={pub:s,sub:o,publish:t,subscribe:e,on:e,next:n,clear:i};return Object.assign(o,c),Object.assign(s,c),c}function Pt(r){let t=Ne();return r&&t.sub(r),t.sub}function ne(r){let t=Ne();return r&&t.sub(r),t.pub}function kt(r){let t,e=!1,s=()=>{e=!0,clearTimeout(t)},o=async()=>{e||(await r(s),!e&&(t=setTimeout(o,0)))};return o(),s}var ie=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=Pt(),this.#e.set(t,e)),e}},x=globalThis[Symbol.for("e280.tracker")]??=new ie;var W=class{sneak;constructor(t){this.sneak=t}get(){return x.notifyRead(this),this.sneak}get value(){return this.get()}};var F=class extends W{on=Pt();dispose(){this.on.clear()}};function Ot(r,t=r){let{seen:e,result:s}=x.observe(r),o=H(0,t),n=[],i=()=>n.forEach(c=>c());for(let c of e){let a=x.subscribe(c,o);n.push(a)}return{result:s,dispose:i}}function Z(r,t){return r===t}var Tt=class extends F{#t;constructor(t,e){let s=e?.compare??Z,{result:o,dispose:n}=Ot(t,async()=>{let i=t();!s(this.sneak,i)&&(this.sneak=i,await Promise.all([x.notifyWrite(this),this.on.pub(i)]))});super(o),this.#t=n}toString(){return`(derived "${String(this.get())}")`}dispose(){super.dispose(),this.#t()}get core(){return this}fn(){let t=this;function e(){return t.get()}return e.core=t,e.get=t.get.bind(t),e.on=t.on,e.dispose=t.dispose.bind(t),e.fn=t.fn.bind(t),Object.defineProperty(e,"value",{get:()=>t.value}),Object.defineProperty(e,"sneak",{get:()=>t.sneak}),e}};var jt=class extends W{#t;#e;#r=!1;#s;constructor(t,e){super(void 0),this.#t=t,this.#e=e?.compare??Z}toString(){return`($lazy "${String(this.get())}")`}get(){if(!this.#s){let{result:t,dispose:e}=Ot(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 F{#t=!1;#e;constructor(t,e){super(t),this.#e=e?.compare??Z}toString(){return`($signal "${String(this.get())}")`}async set(t){return!this.#e(this.sneak,t)&&await this.publish(t),t}get value(){return this.get()}set value(t){this.set(t)}async publish(t=this.sneak){if(this.#t)throw new Error("forbid circularity");let e=Promise.resolve();try{this.#t=!0,this.sneak=t,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 ir(r,t){return new jt(r,t).fn()}function Re(r,t){return new Tt(r,t).fn()}function $(r,t){return new Mt(r,t).fn()}$.lazy=ir;$.derived=Re;var P=class{#t=new V;effect(t,e){let{seen:s,result:o}=x.observe(t);for(let n of s)this.#t.guarantee(n,()=>x.subscribe(n,e));for(let[n,i]of this.#t)s.has(n)||(i(),this.#t.delete(n));return o}clear(){for(let t of this.#t.values())t();this.#t.clear()}};function Ue(r,t,e,s){return class extends t{static view=ct(s,r);#t=new P;createShadow(){return this.attachShadow(r)}render(n){return s(n)(...this.#t.effect(()=>e(this),()=>this.update()))}}}var{I:fa}=Se;var He=r=>r.strings===void 0;var ze={ATTRIBUTE:1,CHILD:2,PROPERTY:3,BOOLEAN_ATTRIBUTE:4,EVENT:5,ELEMENT:6},ae=r=>(...t)=>({_$litDirective$:r,values:t}),Nt=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 lt=(r,t)=>{let e=r._$AN;if(e===void 0)return!1;for(let s of e)s._$AO?.(t,!1),lt(s,t);return!0},Rt=r=>{let t,e;do{if((t=r._$AM)===void 0)break;e=t._$AN,e.delete(r),r=t}while(e?.size===0)},De=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),pr(t)}};function lr(r){this._$AN!==void 0?(Rt(this),this._$AM=r,De(this)):this._$AM=r}function ur(r,t=!1,e=0){let s=this._$AH,o=this._$AN;if(o!==void 0&&o.size!==0)if(t)if(Array.isArray(s))for(let n=e;n<s.length;n++)lt(s[n],!1),Rt(s[n]);else s!=null&&(lt(s,!1),Rt(s));else lt(this,r)}var pr=r=>{r.type==ze.CHILD&&(r._$AP??=ur,r._$AQ??=lr)},Ut=class extends Nt{constructor(){super(...arguments),this._$AN=void 0}_$AT(t,e,s){super._$AT(t,e,s),De(this),this.isConnected=t._$AU}_$AO(t,e=!0){t!==this.isConnected&&(this.isConnected=t,t?this.reconnected?.():this.disconnected?.()),e&&(lt(this,t),Rt(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 Ht=class r extends HTMLElement{static#t=!1;static make(){return this.#t||(f.register({SlyView:r},{soft:!0,upgrade:!0}),this.#t=!0),document.createElement("sly-view")}};function Ie(r,t){for(let[e,s]of t)s==null?r.removeAttribute(e):typeof s=="string"?r.setAttribute(e,s):typeof s=="number"?r.setAttribute(e,s.toString()):typeof s=="boolean"?s===!0?r.setAttribute(e,""):r.removeAttribute(e):console.warn(`invalid attribute "${e}" type is "${typeof s}"`)}var J=class{element;response;#t;constructor(t,e){this.element=t,this.response=e}start(){this.#t||(this.#t=f.attrs(this.element).on(this.response))}stop(){this.#t&&this.#t(),this.#t=void 0}};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 D=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=ne();#r=ne();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){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 zt=class{#t=[];#e=[];mount(t){this.#t.push(t),this.#e.push(t())}unmountAll(){for(let t of this.#e)t();this.#e=[]}remountAll(){for(let t of this.#t)this.#e.push(t())}};function Dt(r,t){gt(r,hr(t))}function hr(r){let t=[];if(Array.isArray(r)){let e=new Set(r.flat(1/0).reverse());for(let s of e)t.unshift(I(s))}else r!==void 0&&t.push(I(r));return t}var ut=Symbol(),pt=Symbol(),ht=Symbol(),K=class{element;shadow;renderNow;render;attrs;#t=0;#e=0;#r=new V;#s=at();#o=new zt;[ut](t){this.#t++,this.#e=0,this.#s=at();let e=t();return this.#s.resolve(),e}[pt](){this.#o.unmountAll()}[ht](){this.#o.remountAll()}constructor(t,e,s,o){this.element=t,this.shadow=e,this.renderNow=s,this.render=o,this.attrs=f.attrs(this.element)}get renderCount(){return this.#t}get rendered(){return this.#s.promise}name(t){this.once(()=>this.element.setAttribute("view",t))}styles(...t){this.once(()=>Dt(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(()=>D.load(s))}return e.load=e,e.promise=s=>this.once(()=>D.promise(s)),e})();signal=(()=>{let t=this;function e(s,o){return t.once(()=>$(s,o))}return e.derived=function(o,n){return t.once(()=>$.derived(o,n))},e.lazy=function(o,n){return t.once(()=>$.lazy(o,n))},e})();derived(t,e){return this.once(()=>$.derived(t,e))}lazy(t,e){return this.once(()=>$.lazy(t,e))}};var It=class{viewFn;settings;#t=Ht.make();#e=new P;#r;#s;#o;#n=new J(this.#t,()=>this.#a());constructor(t,e){this.viewFn=t,this.settings=e,this.#s=this.#t.attachShadow(this.settings),this.#r=new K(this.#t,this.#s,this.#i,this.#a)}update(t){return this.#o=t,this.#i(),this.#t}#i=()=>{this.#r[ut](()=>{let t=this.#e.effect(()=>this.viewFn(this.#r)(...this.#o.props),()=>this.#a());Ie(this.#t,this.#o.attrs),f.render(this.#s,t),f.render(this.#t,this.#o.children),this.#n.start()})};#a=H(0,this.#i);disconnected(){this.#r[pt](),this.#e.clear(),this.#n.stop()}reconnected(){this.#r[ht](),this.#n.start()}};function Le(r,t){return ae(class extends Ut{#t=new It(r,t);render(s){return this.#t.update(s)}disconnected(){this.#t.disconnected()}reconnected(){this.#t.reconnected()}})}function ct(r,t){let e=Le(r,t);function s(...o){return e(new it(o))}return s.props=(...o)=>new Et(new it(o),e),s.component=o=>({props:n=>Ue(t,o,n,r)}),s}var k=class extends HTMLElement{static styles;shadow;#t;#e=0;#r=new P;#s=new J(this,()=>this.update());createShadow(){return this.attachShadow({mode:"open"})}constructor(){super(),this.shadow=this.createShadow(),this.#t=new K(this,this.shadow,this.updateNow,this.update)}render(t){}updateNow=()=>{this.#t[ut](()=>{f.render(this.shadow,this.#r.effect(()=>this.render(this.#t),this.update))})};update=H(0,this.updateNow);connectedCallback(){if(this.#e===0){let t=this.constructor.styles;t&&Dt(this.shadow,t),this.updateNow()}else this.#t[ht]();this.#s.start(),this.#e++}disconnectedCallback(){this.#t[pt](),this.#r.clear(),this.#s.stop()}};function b(r){return ct(r,{mode:"open"})}b.settings=r=>({render:t=>ct(t,r)});b.render=b;b.component=r=>b(t=>()=>r(t)).component(k).props(()=>[]);var _=y`
|
|
3
|
+
\f\r"'\`<>=]|("|')|))|$)`,"g"),be=/'/g,xe=/"/g,ve=/^(?:script|style|textarea|title)$/i,Xt=r=>(t,...e)=>({_$litType$:r,strings:t,values:e}),v=Xt(1),rs=Xt(2),ss=Xt(3),M=Symbol.for("lit-noChange"),m=Symbol.for("lit-nothing"),we=new WeakMap,T=j.createTreeWalker(j,129);function Ae(r,t){if(!Gt(r)||!r.hasOwnProperty("raw"))throw Error("invalid template strings array");return me!==void 0?me.createHTML(t):t}var _e=(r,t)=>{let e=r.length-1,s=[],o,n=t===2?"<svg>":t===3?"<math>":"",i=tt;for(let c=0;c<e;c++){let a=r[c],l,h,p=-1,w=0;for(;w<a.length&&(i.lastIndex=w,h=i.exec(a),h!==null);)w=i.lastIndex,i===tt?h[1]==="!--"?i=ge:h[1]!==void 0?i=ye:h[2]!==void 0?(ve.test(h[2])&&(o=RegExp("</"+h[2],"g")),i=O):h[3]!==void 0&&(i=O):i===O?h[0]===">"?(i=o??tt,p=-1):h[1]===void 0?p=-2:(p=i.lastIndex-h[2].length,l=h[1],i=h[3]===void 0?O:h[3]==='"'?xe:be):i===xe||i===be?i=O:i===ge||i===ye?i=tt:(i=O,o=void 0);let C=i===O&&r[c+1].startsWith("/>")?" ":"";n+=i===tt?a+rr:p>=0?(s.push(l),a.slice(0,p)+Qt+a.slice(p)+B+C):a+B+(p===-2?c:C)}return[Ae(r,n+(r[e]||"<?>")+(t===2?"</svg>":t===3?"</math>":"")),s]},st=class r{constructor({strings:t,_$litType$:e},s){let o;this.parts=[];let n=0,i=0,c=t.length-1,a=this.parts,[l,h]=_e(t,e);if(this.el=r.createElement(l,s),T.currentNode=this.el.content,e===2||e===3){let p=this.el.content.firstChild;p.replaceWith(...p.childNodes)}for(;(o=T.nextNode())!==null&&a.length<c;){if(o.nodeType===1){if(o.hasAttributes())for(let p of o.getAttributeNames())if(p.endsWith(Qt)){let w=h[i++],C=o.getAttribute(p).split(B),ft=/([.?@])?(.*)/.exec(w);a.push({type:1,index:n,name:ft[2],strings:C,ctor:ft[1]==="."?wt:ft[1]==="?"?$t:ft[1]==="@"?vt:R}),o.removeAttribute(p)}else p.startsWith(B)&&(a.push({type:6,index:n}),o.removeAttribute(p));if(ve.test(o.tagName)){let p=o.textContent.split(B),w=p.length-1;if(w>0){o.textContent=bt?bt.emptyScript:"";for(let C=0;C<w;C++)o.append(p[C],et()),T.nextNode(),a.push({type:2,index:++n});o.append(p[w],et())}}}else if(o.nodeType===8)if(o.data===Yt)a.push({type:2,index:n});else{let p=-1;for(;(p=o.data.indexOf(B,p+1))!==-1;)a.push({type:7,index:n}),p+=B.length-1}n++}}static createElement(t,e){let s=j.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,n=rt(t)?void 0:t._$litDirective$;return o?.constructor!==n&&(o?._$AO?.(!1),n===void 0?o=void 0:(o=new n(r),o._$AT(r,e,s)),s!==void 0?(e._$Co??=[])[s]=o:e._$Cl=o),o!==void 0&&(t=N(r,o._$AS(r,t.values),o,s)),t}var xt=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??j).importNode(e,!0);T.currentNode=o;let n=T.nextNode(),i=0,c=0,a=s[0];for(;a!==void 0;){if(i===a.index){let l;a.type===2?l=new L(n,n.nextSibling,this,t):a.type===1?l=new a.ctor(n,a.name,a.strings,this,t):a.type===6&&(l=new At(n,this,t)),this._$AV.push(l),a=s[++c]}i!==a?.index&&(n=T.nextNode(),i++)}return T.currentNode=j,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++}},L=class r{get _$AU(){return this._$AM?._$AU??this._$Cv}constructor(t,e,s,o){this.type=2,this._$AH=m,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),rt(t)?t===m||t==null||t===""?(this._$AH!==m&&this._$AR(),this._$AH=m):t!==this._$AH&&t!==M&&this._(t):t._$litType$!==void 0?this.$(t):t.nodeType!==void 0?this.T(t):$e(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!==m&&rt(this._$AH)?this._$AA.nextSibling.data=t:this.T(j.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=st.createElement(Ae(s.h,s.h[0]),this.options)),s);if(this._$AH?._$AD===o)this._$AH.p(e);else{let n=new xt(o,this),i=n.u(this.options);n.p(e),this.T(i),this._$AH=n}}_$AC(t){let e=we.get(t.strings);return e===void 0&&we.set(t.strings,e=new st(t)),e}k(t){Gt(this._$AH)||(this._$AH=[],this._$AR());let e=this._$AH,s,o=0;for(let n of t)o===e.length?e.push(s=new r(this.O(et()),this.O(et()),this,this.options)):s=e[o],s._$AI(n),o++;o<e.length&&(this._$AR(s&&s._$AB.nextSibling,o),e.length=o)}_$AR(t=this._$AA.nextSibling,e){for(this._$AP?.(!1,!0,e);t&&t!==this._$AB;){let s=t.nextSibling;t.remove(),t=s}}setConnected(t){this._$AM===void 0&&(this._$Cv=t,this._$AP?.(t))}},R=class{get tagName(){return this.element.tagName}get _$AU(){return this._$AM._$AU}constructor(t,e,s,o,n){this.type=1,this._$AH=m,this._$AN=void 0,this.element=t,this.name=e,this._$AM=o,this.options=n,s.length>2||s[0]!==""||s[1]!==""?(this._$AH=Array(s.length-1).fill(new String),this.strings=s):this._$AH=m}_$AI(t,e=this,s,o){let n=this.strings,i=!1;if(n===void 0)t=N(this,t,e,0),i=!rt(t)||t!==this._$AH&&t!==M,i&&(this._$AH=t);else{let c=t,a,l;for(t=n[0],a=0;a<n.length-1;a++)l=N(this,c[s+a],e,a),l===M&&(l=this._$AH[a]),i||=!rt(l)||l!==this._$AH[a],l===m?t=m:t!==m&&(t+=(l??"")+n[a+1]),this._$AH[a]=l}i&&!o&&this.j(t)}j(t){t===m?this.element.removeAttribute(this.name):this.element.setAttribute(this.name,t??"")}},wt=class extends R{constructor(){super(...arguments),this.type=3}j(t){this.element[this.name]=t===m?void 0:t}},$t=class extends R{constructor(){super(...arguments),this.type=4}j(t){this.element.toggleAttribute(this.name,!!t&&t!==m)}},vt=class extends R{constructor(t,e,s,o,n){super(t,e,s,o,n),this.type=5}_$AI(t,e=this){if((t=N(this,t,e,0)??m)===M)return;let s=this._$AH,o=t===m&&s!==m||t.capture!==s.capture||t.once!==s.once||t.passive!==s.passive,n=t!==m&&(s===m||o);o&&this.element.removeEventListener(this.name,this,s),n&&this.element.addEventListener(this.name,this,t),this._$AH=t}handleEvent(t){typeof this._$AH=="function"?this._$AH.call(this.options?.host??this.element,t):this._$AH.handleEvent(t)}},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)}},Se={M:Qt,P:B,A:Yt,C:1,L:_e,R:xt,D:$e,V:N,I:L,H:R,N:$t,U:vt,B:wt,F:At},sr=Kt.litHtmlPolyfillSupport;sr?.(st,L),(Kt.litHtmlVersions??=[]).push("3.3.0");var ot=(r,t,e)=>{let s=e?.renderBefore??t,o=s._$litPart$;if(o===void 0){let n=e?.renderBefore??null;s._$litPart$=o=new L(t.insertBefore(et(),n),n,void 0,e??{})}return o._$AI(r),o};var te=globalThis,q=class extends E{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=ot(e,this.renderRoot,this.renderOptions)}connectedCallback(){super.connectedCallback(),this._$Do?.setConnected(!0)}disconnectedCallback(){super.disconnectedCallback(),this._$Do?.setConnected(!1)}render(){return M}};q._$litElement$=!0,q.finalized=!0,te.litElementHydrateSupport?.({LitElement:q});var or=te.litElementPolyfillSupport;or?.({LitElement:q});(te.litElementVersions??=[]).push("4.2.0");function Ee(r,t){let e=new MutationObserver(t);return e.observe(r,{attributes:!0}),()=>e.disconnect()}var g={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 Be=(r,t)=>new Proxy(t,{get:(e,s)=>{switch(t[s]){case String:return g.get.string(r,s);case Number:return g.get.number(r,s);case Boolean:return g.get.boolean(r,s);default:throw new Error(`invalid attribute type for "${s}"`)}},set:(e,s,o)=>{switch(t[s]){case String:return g.set.string(r,s,o);case Number:return g.set.number(r,s,o);case Boolean:return g.set.boolean(r,s,o);default:throw new Error(`invalid attribute type for "${s}"`)}}});var _t=class{element;constructor(t){this.element=t}string=new Proxy({},{get:(t,e)=>g.get.string(this.element,e),set:(t,e,s)=>g.set.string(this.element,e,s)});number=new Proxy({},{get:(t,e)=>g.get.number(this.element,e),set:(t,e,s)=>g.set.number(this.element,e,s)});boolean=new Proxy({},{get:(t,e)=>g.get.boolean(this.element,e),set:(t,e,s)=>g.set.boolean(this.element,e,s)})};function nt(r){let t=new _t(r);return{string:t.string,number:t.number,boolean:t.boolean,on:e=>Ee(r,e),spec:e=>Be(r,e)}}nt.get=g.get;nt.set=g.set;function Ce(r){return r.replace(/([a-zA-Z])(?=[A-Z])/g,"$1-").toLowerCase()}function Pe(r,t={}){let{soft:e=!1,upgrade:s=!0}=t;for(let[o,n]of Object.entries(r)){let i=Ce(o),c=customElements.get(i);e&&c||(customElements.define(i,n),s&&document.querySelectorAll(i).forEach(a=>{a.constructor===HTMLElement&&customElements.upgrade(a)}))}}function ke(r,t){let e=r.querySelector(t);if(!e)throw new Error(`element not found (${t})`);return e}var St=class r{element;constructor(t){this.element=t}in(t){return new r(typeof t=="string"?ke(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 ot(t,this.element)}attrs(){return nt(this.element)}};function f(r){return typeof r=="string"?ke(document,r):new St(r)}var P=new St(document);f.in=P.in.bind(P);f.require=P.require.bind(P);f.maybe=P.maybe.bind(P);f.all=P.all.bind(P);f.attrs=nt;f.register=Pe;f.render=(r,...t)=>ot(t,r);var Et=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 A=Object.freeze({eq(r,t){if(r.length!==t.length)return!1;for(let e=0;e<=r.length;e++)if(r.at(e)!==t.at(e))return!1;return!0},random(r){return crypto.getRandomValues(new Uint8Array(r))}});var U=Object.freeze({fromBytes(r){return[...r].map(t=>t.toString(16).padStart(2,"0")).join("")},toBytes(r){if(r.length%2!==0)throw new Error("must have even number of hex characters");let t=new Uint8Array(r.length/2);for(let e=0;e<r.length;e+=2)t[e/2]=parseInt(r.slice(e,e+2),16);return t},random(r=32){return this.fromBytes(A.random(r))},string(r){return U.fromBytes(r)},bytes(r){return U.toBytes(r)}});var ee=58,Bt="123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz",re=Object.freeze({fromBytes(r){let t=BigInt("0x"+U.fromBytes(r)),e="";for(;t>0;){let s=t%BigInt(ee);t=t/BigInt(ee),e=Bt[Number(s)]+e}for(let s of r)if(s===0)e=Bt[0]+e;else break;return e},toBytes(r){let t=BigInt(0);for(let i of r){let c=Bt.indexOf(i);if(c===-1)throw new Error(`Invalid character '${i}' in base58 string`);t=t*BigInt(ee)+BigInt(c)}let e=t.toString(16);e.length%2!==0&&(e="0"+e);let s=U.toBytes(e),o=0;for(let i of r)if(i===Bt[0])o++;else break;let n=new Uint8Array(o+s.length);return n.set(s,o),n},random(r=32){return this.fromBytes(A.random(r))},string(r){return re.fromBytes(r)},bytes(r){return re.toBytes(r)}});var Oe=class{lexicon;static lexicons=Object.freeze({base2:{characters:"01"},hex:{characters:"0123456789abcdef"},base36:{characters:"0123456789abcdefghijklmnopqrstuvwxyz"},base58:{characters:"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"},base62:{characters:"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz"},base64url:{negativePrefix:"~",characters:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_"},base64:{characters:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",padding:{character:"=",size:4}}});lookup;negativePrefix;constructor(t){this.lexicon=t,this.lookup=Object.fromEntries([...t.characters].map((e,s)=>[e,s])),this.negativePrefix=t.negativePrefix??"-"}toBytes(t){let e=Math.log2(this.lexicon.characters.length);if(Number.isInteger(e)){let c=0,a=0,l=[];for(let h of t){if(h===this.lexicon.padding?.character)continue;let p=this.lookup[h];if(p===void 0)throw new Error(`Invalid character: ${h}`);for(c=c<<e|p,a+=e;a>=8;)a-=8,l.push(c>>a&255)}return new Uint8Array(l)}let s=0n,o=BigInt(this.lexicon.characters.length),n=!1;t.startsWith(this.negativePrefix)&&(t=t.slice(this.negativePrefix.length),n=!0);for(let c of t){let a=this.lookup[c];if(a===void 0)throw new Error(`Invalid character: ${c}`);s=s*o+BigInt(a)}let i=[];for(;s>0n;)i.unshift(Number(s%256n)),s=s/256n;return new Uint8Array(i)}fromBytes(t){let e=Math.log2(this.lexicon.characters.length);if(Number.isInteger(e)){let i=0,c=0,a="";for(let l of t)for(i=i<<8|l,c+=8;c>=e;){c-=e;let h=i>>c&(1<<e)-1;a+=this.lexicon.characters[h]}if(c>0){let l=i<<e-c&(1<<e)-1;a+=this.lexicon.characters[l]}if(this.lexicon.padding)for(;a.length%this.lexicon.padding.size!==0;)a+=this.lexicon.padding.character;return a}let s=0n;for(let i of t)s=(s<<8n)+BigInt(i);if(s===0n)return this.lexicon.characters[0];let o=BigInt(this.lexicon.characters.length),n="";for(;s>0n;)n=this.lexicon.characters[Number(s%o)]+n,s=s/o;return n}toInteger(t){if(!t)return 0;let e=0n,s=!1,o=BigInt(this.lexicon.characters.length);t.startsWith(this.negativePrefix)&&(t=t.slice(this.negativePrefix.length),s=!0);for(let n of t){let i=this.lookup[n];if(i===void 0)throw new Error(`Invalid character: ${n}`);e=e*o+BigInt(i)}return Number(s?-e:e)}fromInteger(t){t=Math.floor(t);let e=t<0,s=BigInt(e?-t:t);if(s===0n)return this.lexicon.characters[0];let o=BigInt(this.lexicon.characters.length),n="";for(;s>0n;)n=this.lexicon.characters[Number(s%o)]+n,s=s/o;return e?`${this.negativePrefix}${n}`:n}random(t=32){return this.fromBytes(A.random(t))}};var se=Object.freeze({fromBytes(r){return typeof btoa=="function"?btoa(String.fromCharCode(...r)):Buffer.from(r).toString("base64")},toBytes(r){return typeof atob=="function"?Uint8Array.from(atob(r),t=>t.charCodeAt(0)):Uint8Array.from(Buffer.from(r,"base64"))},random(r=32){return this.fromBytes(A.random(r))},string(r){return se.fromBytes(r)},bytes(r){return se.toBytes(r)}});var Te=Object.freeze({fromBytes(r){return new TextDecoder().decode(r)},toBytes(r){return new TextEncoder().encode(r)},string(r){return Te.fromBytes(r)},bytes(r){return Te.toBytes(r)}});function H(r,t){let e,s,o=[];function n(){e=[],s&&clearTimeout(s),s=void 0,o=[]}return n(),((...i)=>{e=i,s&&clearTimeout(s);let 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);n()}).catch(a=>{for(let{reject:l}of o)l(a);n()})},r),c})}var oe=Object.freeze({happy:r=>r!=null,sad:r=>r==null,boolean:r=>typeof r=="boolean",number:r=>typeof r=="number",string:r=>typeof r=="string",bigint:r=>typeof r=="bigint",object:r=>typeof r=="object"&&r!==null,array:r=>Array.isArray(r),fn:r=>typeof r=="function",symbol:r=>typeof r=="symbol"});function it(){let r,t,e=new Promise((o,n)=>{r=o,t=n});function s(o){return o.then(r).catch(t),e}return{promise:e,resolve:r,reject:t,entangle:s}}var V=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 Ct=(r=0)=>new Promise(t=>setTimeout(t,r));function nr(r){return{map:t=>je(r,t),filter:t=>Me(r,t)}}nr.pipe=Object.freeze({map:r=>(t=>je(t,r)),filter:r=>(t=>Me(t,r))});var je=(r,t)=>Object.fromEntries(Object.entries(r).map(([e,s])=>[e,t(s,e)])),Me=(r,t)=>Object.fromEntries(Object.entries(r).filter(([e,s])=>t(s,e)));function Ne(){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 n(a){let{promise:l,resolve:h}=it(),p=o(async(...w)=>{a&&await a(...w),h(w),p()});return l}function i(){r.clear()}let c={pub:s,sub:o,publish:t,subscribe:e,on:e,next:n,clear:i};return Object.assign(o,c),Object.assign(s,c),c}function Pt(r){let t=Ne();return r&&t.sub(r),t.sub}function ne(r){let t=Ne();return r&&t.sub(r),t.pub}function kt(r){let t,e=!1,s=()=>{e=!0,clearTimeout(t)},o=async()=>{e||(await r(s),!e&&(t=setTimeout(o,0)))};return o(),s}var ie=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=Pt(),this.#e.set(t,e)),e}},x=globalThis[Symbol.for("e280.tracker")]??=new ie;var W=class{sneak;constructor(t){this.sneak=t}get(){return x.notifyRead(this),this.sneak}get value(){return this.get()}};var F=class extends W{on=Pt();dispose(){this.on.clear()}};function Ot(r,t=r){let{seen:e,result:s}=x.observe(r),o=H(0,t),n=[],i=()=>n.forEach(c=>c());for(let c of e){let a=x.subscribe(c,o);n.push(a)}return{result:s,dispose:i}}function Z(r,t){return r===t}var Tt=class extends F{#t;constructor(t,e){let s=e?.compare??Z,{result:o,dispose:n}=Ot(t,async()=>{let i=t();!s(this.sneak,i)&&(this.sneak=i,await Promise.all([x.notifyWrite(this),this.on.pub(i)]))});super(o),this.#t=n}toString(){return`(derived "${String(this.get())}")`}dispose(){super.dispose(),this.#t()}get core(){return this}fn(){let t=this;function e(){return t.get()}return e.core=t,e.get=t.get.bind(t),e.on=t.on,e.dispose=t.dispose.bind(t),e.fn=t.fn.bind(t),Object.defineProperty(e,"value",{get:()=>t.value}),Object.defineProperty(e,"sneak",{get:()=>t.sneak}),e}};var jt=class extends W{#t;#e;#r=!1;#s;constructor(t,e){super(void 0),this.#t=t,this.#e=e?.compare??Z}toString(){return`($lazy "${String(this.get())}")`}get(){if(!this.#s){let{result:t,dispose:e}=Ot(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 F{#t=!1;#e;constructor(t,e){super(t),this.#e=e?.compare??Z}toString(){return`($signal "${String(this.get())}")`}async set(t){return!this.#e(this.sneak,t)&&await this.publish(t),t}get value(){return this.get()}set value(t){this.set(t)}async publish(t=this.sneak){if(this.#t)throw new Error("forbid circularity");let e=Promise.resolve();try{this.#t=!0,this.sneak=t,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 ir(r,t){return new jt(r,t).fn()}function Re(r,t){return new Tt(r,t).fn()}function $(r,t){return new Mt(r,t).fn()}$.lazy=ir;$.derived=Re;var k=class{#t=new V;effect(t,e){let{seen:s,result:o}=x.observe(t);for(let n of s)this.#t.guarantee(n,()=>x.subscribe(n,e));for(let[n,i]of this.#t)s.has(n)||(i(),this.#t.delete(n));return o}clear(){for(let t of this.#t.values())t();this.#t.clear()}};var J=class{element;response;#t;constructor(t,e){this.element=t,this.response=e}start(){this.#t||(this.#t=f.attrs(this.element).on(this.response))}stop(){this.#t&&this.#t(),this.#t=void 0}};function Nt(r,t){gt(r,lr(t))}function lr(r){let t=[];if(Array.isArray(r)){let e=new Set(r.flat(1/0).reverse());for(let s of e)t.unshift(I(s))}else r!==void 0&&t.push(I(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 D=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=ne();#r=ne();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){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 Rt=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 at=Symbol(),ct=Symbol(),lt=Symbol(),K=class{element;shadow;renderNow;render;attrs;#t=0;#e=0;#r=new V;#s=it();#o=new Rt;[at](t){this.#t++,this.#e=0,this.#s=it();let e=t();return this.#s.resolve(),e}[ct](){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=f.attrs(this.element)}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(()=>D.load(s))}return e.load=e,e.promise=s=>this.once(()=>D.promise(s)),e})();signal=(()=>{let t=this;function e(s,o){return t.once(()=>$(s,o))}return e.derived=function(o,n){return t.once(()=>$.derived(o,n))},e.lazy=function(o,n){return t.once(()=>$.lazy(o,n))},e})();derived(t,e){return this.once(()=>$.derived(t,e))}lazy(t,e){return this.once(()=>$.lazy(t,e))}};var _=class extends HTMLElement{static styles;shadow;#t;#e=0;#r=new k;#s=new J(this,()=>this.update());createShadow(){return this.attachShadow({mode:"open"})}constructor(){super(),this.shadow=this.createShadow(),this.#t=new K(this,this.shadow,this.updateNow,this.update)}render(t){}updateNow=()=>{this.#t[at](()=>{f.render(this.shadow,this.#r.effect(()=>this.render(this.#t),this.update))})};update=H(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[ct](),this.#r.clear(),this.#s.stop()}};var ut=class{props;attrs=new Map;children=[];constructor(t){this.props=t}};function Ue(r,t,e,s){return class extends t{static view=pt(s,r);#t=new k;createShadow(){return this.attachShadow(r)}render(n){return s(n)(...this.#t.effect(()=>e(this),()=>this.update()))}}}var{I:Ua}=Se;var He=r=>r.strings===void 0;var ze={ATTRIBUTE:1,CHILD:2,PROPERTY:3,BOOLEAN_ATTRIBUTE:4,EVENT:5,ELEMENT:6},ae=r=>(...t)=>({_$litDirective$:r,values:t}),Ut=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 ht=(r,t)=>{let e=r._$AN;if(e===void 0)return!1;for(let s of e)s._$AO?.(t,!1),ht(s,t);return!0},Ht=r=>{let t,e;do{if((t=r._$AM)===void 0)break;e=t._$AN,e.delete(r),r=t}while(e?.size===0)},De=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),hr(t)}};function ur(r){this._$AN!==void 0?(Ht(this),this._$AM=r,De(this)):this._$AM=r}function pr(r,t=!1,e=0){let s=this._$AH,o=this._$AN;if(o!==void 0&&o.size!==0)if(t)if(Array.isArray(s))for(let n=e;n<s.length;n++)ht(s[n],!1),Ht(s[n]);else s!=null&&(ht(s,!1),Ht(s));else ht(this,r)}var hr=r=>{r.type==ze.CHILD&&(r._$AP??=pr,r._$AQ??=ur)},zt=class extends Ut{constructor(){super(...arguments),this._$AN=void 0}_$AT(t,e,s){super._$AT(t,e,s),De(this),this.isConnected=t._$AU}_$AO(t,e=!0){t!==this.isConnected&&(this.isConnected=t,t?this.reconnected?.():this.disconnected?.()),e&&(ht(this,t),Ht(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 Dt=class r extends HTMLElement{static#t=!1;static make(){return this.#t||(f.register({SlyView:r},{soft:!0,upgrade:!0}),this.#t=!0),document.createElement("sly-view")}};function Ie(r,t){for(let[e,s]of t)s==null?r.removeAttribute(e):typeof s=="string"?r.setAttribute(e,s):typeof s=="number"?r.setAttribute(e,s.toString()):typeof s=="boolean"?s===!0?r.setAttribute(e,""):r.removeAttribute(e):console.warn(`invalid attribute "${e}" type is "${typeof s}"`)}var It=class{viewFn;settings;#t=Dt.make();#e=new k;#r;#s;#o;#n=new J(this.#t,()=>this.#a());constructor(t,e){this.viewFn=t,this.settings=e,this.#s=this.#t.attachShadow(this.settings),this.#r=new K(this.#t,this.#s,this.#i,this.#a)}update(t){return this.#o=t,this.#i(),this.#t}#i=()=>{this.#r[at](()=>{let t=this.#e.effect(()=>this.viewFn(this.#r)(...this.#o.props),()=>this.#a());Ie(this.#t,this.#o.attrs),f.render(this.#s,t),f.render(this.#t,this.#o.children),this.#n.start()})};#a=H(0,this.#i);disconnected(){this.#r[ct](),this.#e.clear(),this.#n.stop()}reconnected(){this.#r[lt](),this.#n.start()}};function Le(r,t){return ae(class extends zt{#t=new It(r,t);render(s){return this.#t.update(s)}disconnected(){this.#t.disconnected()}reconnected(){this.#t.reconnected()}})}function pt(r,t){let e=Le(r,t);function s(...o){return e(new ut(o))}return s.props=(...o)=>new Et(new ut(o),e),s.component=(o=_)=>({props:n=>Ue(t,o,n,r)}),s}function b(r){return pt(r,{mode:"open"})}b.settings=r=>({render:t=>pt(t,r)});b.render=b;b.component=r=>b(t=>()=>r(t)).component(_).props(()=>[]);var S=y`
|
|
4
4
|
@layer reset {
|
|
5
5
|
* {
|
|
6
6
|
margin: 0;
|
|
@@ -16,7 +16,7 @@ var Fe=Object.defineProperty;var Ze=(r,t)=>{for(var e in t)Fe(r,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 ce=b(r=>(t,e)=>{r.name("counter"),r.styles(
|
|
19
|
+
`;var ce=b(r=>(t,e)=>{r.name("counter"),r.styles(S,fr);let s=r.signal(t),o=()=>{s.value+=e};return v`
|
|
20
20
|
<slot></slot>
|
|
21
21
|
<div>
|
|
22
22
|
<span>${s()}</span>
|
|
@@ -24,7 +24,7 @@ var Fe=Object.defineProperty;var Ze=(r,t)=>{for(var e in t)Fe(r,e,{get:t[e],enum
|
|
|
24
24
|
<div>
|
|
25
25
|
<button @click="${o}">++</button>
|
|
26
26
|
</div>
|
|
27
|
-
`}),Lt=class extends ce.component(class extends
|
|
27
|
+
`}),Lt=class extends ce.component(class extends _{attrs=f.attrs(this).spec({start:Number,step:Number})}).props(t=>[t.attrs.start??0,t.attrs.step??1]){},fr=y`
|
|
28
28
|
:host {
|
|
29
29
|
display: flex;
|
|
30
30
|
justify-content: center;
|
|
@@ -34,18 +34,18 @@ var Fe=Object.defineProperty;var Ze=(r,t)=>{for(var e in t)Fe(r,e,{get:t[e],enum
|
|
|
34
34
|
button {
|
|
35
35
|
padding: 0.2em 0.5em;
|
|
36
36
|
}
|
|
37
|
-
`;var qt={};Ze(qt,{arrow:()=>br,bar:()=>xr,bar2:()=>wr,bar3:()=>$r,bar4:()=>vr,bin:()=>Ur,binary:()=>Hr,binary2:()=>zr,block:()=>Ar,block2:()=>_r,brackets:()=>Pr,brackets2:()=>kr,braille:()=>yr,bright:()=>Wr,clock:()=>Lr,cylon:()=>Br,dots:()=>Or,dots2:()=>Tr,earth:()=>le,fistbump:()=>qr,kiss:()=>Ir,lock:()=>Vr,moon:()=>Zr,pie:()=>Er,pulseblue:()=>Dr,runner:()=>Sr,slider:()=>Cr,speaker:()=>Fr,spinner:()=>gr,wave:()=>jr,wavepulse:()=>Nr,wavepulse2:()=>Rr,wavescrub:()=>Mr});function u(r,t){return()=>dr({hz:r,frames:t})}var dr=b(r=>({hz:t,frames:e})=>{r.name("loading"),r.styles(
|
|
37
|
+
`;var qt={};Ze(qt,{arrow:()=>br,bar:()=>xr,bar2:()=>wr,bar3:()=>$r,bar4:()=>vr,bin:()=>Ur,binary:()=>Hr,binary2:()=>zr,block:()=>Ar,block2:()=>_r,brackets:()=>Pr,brackets2:()=>kr,braille:()=>yr,bright:()=>Wr,clock:()=>Lr,cylon:()=>Br,dots:()=>Or,dots2:()=>Tr,earth:()=>le,fistbump:()=>qr,kiss:()=>Ir,lock:()=>Vr,moon:()=>Zr,pie:()=>Er,pulseblue:()=>Dr,runner:()=>Sr,slider:()=>Cr,speaker:()=>Fr,spinner:()=>gr,wave:()=>jr,wavepulse:()=>Nr,wavepulse2:()=>Rr,wavescrub:()=>Mr});function u(r,t){return()=>dr({hz:r,frames:t})}var dr=b(r=>({hz:t,frames:e})=>{r.name("loading"),r.styles(S,mr);let s=r.signal(0);return r.mount(()=>kt(async()=>{await Ct(1e3/t);let o=s.get()+1;s.set(o>=e.length?0:o)})),e.at(s.get())}),mr=y`
|
|
38
38
|
:host {
|
|
39
39
|
font-family: monospace;
|
|
40
40
|
white-space: pre;
|
|
41
41
|
user-select: none;
|
|
42
42
|
}
|
|
43
|
-
`;var d=20,Q=10,Y=4,gr=u(d,["|","/","-","\\"]),yr=u(d,["\u2808","\u2810","\u2820","\u2880","\u2840","\u2804","\u2802","\u2801"]),br=u(d,["\u2B06\uFE0F","\u2197\uFE0F","\u27A1\uFE0F","\u2198\uFE0F","\u2B07\uFE0F","\u2199\uFE0F","\u2B05\uFE0F","\u2196\uFE0F"]),xr=u(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"]),wr=u(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"]),$r=u(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"]),vr=u(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"]),Ar=u(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"]),_r=u(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"]),Sr=u(Y,["\u{1F6B6}","\u{1F3C3}"]),Er=u(Q,["\u25F7","\u25F6","\u25F5","\u25F4"]),Br=u(d,["=----","-=---","--=--","---=-","----=","----=","---=-","--=--","-=---","=----"]),Cr=u(d,["o----","-o---","--o--","---o-","----o","----o","---o-","--o--","-o---","o----"]),Pr=u(Q,["[ ]","[ ]","[= ]","[== ]","[===]","[ ==]","[ =]"]),kr=u(Q,["[ ]","[ ]","[= ]","[== ]","[===]","[ ==]","[ =]","[ ]","[ ]","[ =]","[ ==]","[===]","[== ]","[= ]"]),Or=u(Q,[" "," ",". ",".. ","..."," .."," ."]),Tr=u(d,[". ",". ",".. ","..."," .."," ."," ."," ..","...",".. "]),jr=u(d,[".....",".....",":....","::...",":::..","::::.",":::::",":::::",".::::","..:::","...::","....:"]),Mr=u(d,[":....",":....","::...",".::..","..::.","...::","....:","....:","...::","..::.",".::..","::..."]),Nr=u(d,[".....",".....","..:..",".:::.",".:::.",":::::",":::::","::.::",":...:"]),Rr=u(d,[".....",".....","..:..",".:::.",".:::.",":::::",":::::","::.::",":...:",".....",".....",":...:","::.::",":::::",":::::",".:::.",".:::.","..:.."]),Ur=u(d,["000","100","110","111","011","001"]),Hr=u(d,["11111","01111","00111","10011","11001","01100","00110","10011","11001","11100","11110"]),zr=u(d,["11111","01111","10111","11011","11101","11110","11111","11110","11101","11011","10111","01111"]),Dr=u(Y,["\u{1F539}","\u{1F535}"]),Ir=u(Q,["\u{1F642}","\u{1F642}","\u{1F617}","\u{1F619}","\u{1F618}","\u{1F618}","\u{1F619}"]),Lr=u(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}"]),qr=u(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}"]),le=u(Y,["\u{1F30E}","\u{1F30F}","\u{1F30D}"]),Vr=u(Y,["\u{1F513}","\u{1F512}"]),Wr=u(Y,["\u{1F505}","\u{1F506}"]),Fr=u(Y,["\u{1F508}","\u{1F508}","\u{1F509}","\u{1F50A}","\u{1F50A}","\u{1F509}"]),Zr=u(Q,["\u{1F311}","\u{1F311}","\u{1F311}","\u{1F318}","\u{1F317}","\u{1F316}","\u{1F315}","\u{1F314}","\u{1F313}","\u{1F312}"]);var qe=b(r=>t=>(r.name("error"),r.styles(
|
|
43
|
+
`;var d=20,Q=10,Y=4,gr=u(d,["|","/","-","\\"]),yr=u(d,["\u2808","\u2810","\u2820","\u2880","\u2840","\u2804","\u2802","\u2801"]),br=u(d,["\u2B06\uFE0F","\u2197\uFE0F","\u27A1\uFE0F","\u2198\uFE0F","\u2B07\uFE0F","\u2199\uFE0F","\u2B05\uFE0F","\u2196\uFE0F"]),xr=u(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"]),wr=u(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"]),$r=u(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"]),vr=u(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"]),Ar=u(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"]),_r=u(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"]),Sr=u(Y,["\u{1F6B6}","\u{1F3C3}"]),Er=u(Q,["\u25F7","\u25F6","\u25F5","\u25F4"]),Br=u(d,["=----","-=---","--=--","---=-","----=","----=","---=-","--=--","-=---","=----"]),Cr=u(d,["o----","-o---","--o--","---o-","----o","----o","---o-","--o--","-o---","o----"]),Pr=u(Q,["[ ]","[ ]","[= ]","[== ]","[===]","[ ==]","[ =]"]),kr=u(Q,["[ ]","[ ]","[= ]","[== ]","[===]","[ ==]","[ =]","[ ]","[ ]","[ =]","[ ==]","[===]","[== ]","[= ]"]),Or=u(Q,[" "," ",". ",".. ","..."," .."," ."]),Tr=u(d,[". ",". ",".. ","..."," .."," ."," ."," ..","...",".. "]),jr=u(d,[".....",".....",":....","::...",":::..","::::.",":::::",":::::",".::::","..:::","...::","....:"]),Mr=u(d,[":....",":....","::...",".::..","..::.","...::","....:","....:","...::","..::.",".::..","::..."]),Nr=u(d,[".....",".....","..:..",".:::.",".:::.",":::::",":::::","::.::",":...:"]),Rr=u(d,[".....",".....","..:..",".:::.",".:::.",":::::",":::::","::.::",":...:",".....",".....",":...:","::.::",":::::",":::::",".:::.",".:::.","..:.."]),Ur=u(d,["000","100","110","111","011","001"]),Hr=u(d,["11111","01111","00111","10011","11001","01100","00110","10011","11001","11100","11110"]),zr=u(d,["11111","01111","10111","11011","11101","11110","11111","11110","11101","11011","10111","01111"]),Dr=u(Y,["\u{1F539}","\u{1F535}"]),Ir=u(Q,["\u{1F642}","\u{1F642}","\u{1F617}","\u{1F619}","\u{1F618}","\u{1F618}","\u{1F619}"]),Lr=u(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}"]),qr=u(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}"]),le=u(Y,["\u{1F30E}","\u{1F30F}","\u{1F30D}"]),Vr=u(Y,["\u{1F513}","\u{1F512}"]),Wr=u(Y,["\u{1F505}","\u{1F506}"]),Fr=u(Y,["\u{1F508}","\u{1F508}","\u{1F509}","\u{1F50A}","\u{1F50A}","\u{1F509}"]),Zr=u(Q,["\u{1F311}","\u{1F311}","\u{1F311}","\u{1F318}","\u{1F317}","\u{1F316}","\u{1F315}","\u{1F314}","\u{1F313}","\u{1F312}"]);var qe=b(r=>t=>(r.name("error"),r.styles(S,Jr),typeof t=="string"?t:t instanceof Error?v`<strong>${t.name}:</strong> <span>${t.message}</span>`:"error")),Jr=y`
|
|
44
44
|
:host {
|
|
45
45
|
font-family: monospace;
|
|
46
46
|
color: red;
|
|
47
47
|
}
|
|
48
|
-
`;function Ve(r=le,t=e=>qe(e)){return(e,s)=>e.select({loading:r,ready:s,error:t})}var We=b(r=>()=>{r.name("loaders"),r.styles(
|
|
48
|
+
`;function Ve(r=le,t=e=>qe(e)){return(e,s)=>e.select({loading:r,ready:s,error:t})}var We=b(r=>()=>{r.name("loaders"),r.styles(S,Kr);let t=r.once(()=>D.loading());return r.once(()=>Object.entries(qt).map(([s,o])=>({key:s,loader:Ve(o)}))).map(({key:s,loader:o})=>v`
|
|
49
49
|
<div data-anim="${s}">
|
|
50
50
|
<span>${s}</span>
|
|
51
51
|
<span>${o(t,()=>null)}</span>
|
|
@@ -91,7 +91,7 @@ div {
|
|
|
91
91
|
min-height: 2.5em;
|
|
92
92
|
}
|
|
93
93
|
}
|
|
94
|
-
`;var Vt=class extends b.component(t=>(t.name("demo"),t.styles(
|
|
94
|
+
`;var Vt=class extends b.component(t=>(t.name("demo"),t.styles(S,Qr),v`
|
|
95
95
|
${ce.props(768,3).children("view").render()}
|
|
96
96
|
${We()}
|
|
97
97
|
`)){},Qr=y`
|
|
@@ -101,7 +101,7 @@ div {
|
|
|
101
101
|
align-items: center;
|
|
102
102
|
gap: 1em;
|
|
103
103
|
}
|
|
104
|
-
`;var Wt=class extends
|
|
104
|
+
`;var Wt=class extends _{static styles=y`span{color:orange}`;attrs=f.attrs(this).spec({value:Number});something={whatever:"rofl"};render(t){let{value:e=1}=this.attrs,s=t.signal(0);return t.mount(()=>kt(async()=>{await Ct(10),await s(s()+1)})),v`
|
|
105
105
|
<span>${s()*e}</span>
|
|
106
106
|
`}};f.register({DemoComponent:Vt,CounterComponent:Lt,FastcountElement:Wt});console.log("\u{1F99D} sly");
|
|
107
107
|
/*! Bundled license information:
|