@e280/sly 0.2.0-26 → 0.2.0-28

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (74) hide show
  1. package/README.md +88 -24
  2. package/package.json +4 -4
  3. package/s/base/use.ts +7 -2
  4. package/s/base/utils/use-attrs.ts +23 -14
  5. package/s/demo/views/fastcount.ts +2 -2
  6. package/s/dom/attrs/attrs.ts +3 -3
  7. package/s/dom/attrs/parts/attr-fns.ts +64 -34
  8. package/s/dom/attrs/parts/attr-proxies.ts +7 -7
  9. package/s/dom/attrs/parts/attr-spec.ts +7 -7
  10. package/s/dom/dom.ts +15 -61
  11. package/s/dom/parts/dom-scope.ts +46 -0
  12. package/s/dom/parts/el.ts +4 -4
  13. package/s/dom/parts/elmer.ts +38 -0
  14. package/s/dom/parts/mk.ts +9 -0
  15. package/s/dom/parts/queries.ts +26 -0
  16. package/s/dom/types.ts +5 -0
  17. package/s/loaders/parts/ascii-anim.ts +2 -2
  18. package/s/view/types.ts +0 -1
  19. package/s/view/utils/parts/capsule.ts +2 -2
  20. package/s/view/utils/parts/chain.ts +3 -2
  21. package/s/view/utils/parts/context.ts +2 -1
  22. package/x/base/use.d.ts +2 -0
  23. package/x/base/use.js +6 -2
  24. package/x/base/use.js.map +1 -1
  25. package/x/base/utils/use-attrs.d.ts +9 -9
  26. package/x/base/utils/use-attrs.js +14 -15
  27. package/x/base/utils/use-attrs.js.map +1 -1
  28. package/x/demo/demo.bundle.min.js +15 -15
  29. package/x/demo/demo.bundle.min.js.map +4 -4
  30. package/x/demo/views/fastcount.js +2 -2
  31. package/x/demo/views/fastcount.js.map +1 -1
  32. package/x/dom/attrs/attrs.d.ts +3 -0
  33. package/x/dom/attrs/attrs.js +3 -3
  34. package/x/dom/attrs/attrs.js.map +1 -1
  35. package/x/dom/attrs/parts/attr-fns.d.ts +15 -12
  36. package/x/dom/attrs/parts/attr-fns.js +60 -38
  37. package/x/dom/attrs/parts/attr-fns.js.map +1 -1
  38. package/x/dom/attrs/parts/attr-proxies.js +7 -7
  39. package/x/dom/attrs/parts/attr-proxies.js.map +1 -1
  40. package/x/dom/attrs/parts/attr-spec.js +7 -7
  41. package/x/dom/attrs/parts/attr-spec.js.map +1 -1
  42. package/x/dom/dom.d.ts +11 -27
  43. package/x/dom/dom.js +15 -48
  44. package/x/dom/dom.js.map +1 -1
  45. package/x/dom/parts/dom-scope.d.ts +15 -0
  46. package/x/dom/parts/dom-scope.js +35 -0
  47. package/x/dom/parts/dom-scope.js.map +1 -0
  48. package/x/dom/parts/el.d.ts +2 -2
  49. package/x/dom/parts/el.js +3 -3
  50. package/x/dom/parts/el.js.map +1 -1
  51. package/x/dom/parts/elmer.d.ts +11 -0
  52. package/x/dom/parts/elmer.js +32 -0
  53. package/x/dom/parts/elmer.js.map +1 -0
  54. package/x/dom/parts/mk.d.ts +2 -0
  55. package/x/dom/parts/mk.js +7 -0
  56. package/x/dom/parts/mk.js.map +1 -0
  57. package/x/dom/parts/queries.d.ts +4 -0
  58. package/x/dom/parts/queries.js +13 -0
  59. package/x/dom/parts/queries.js.map +1 -0
  60. package/x/dom/types.d.ts +3 -0
  61. package/x/index.html +2 -2
  62. package/x/loaders/parts/ascii-anim.js +2 -2
  63. package/x/loaders/parts/ascii-anim.js.map +1 -1
  64. package/x/view/types.d.ts +0 -1
  65. package/x/view/utils/parts/capsule.js +2 -2
  66. package/x/view/utils/parts/capsule.js.map +1 -1
  67. package/x/view/utils/parts/chain.d.ts +3 -2
  68. package/x/view/utils/parts/chain.js.map +1 -1
  69. package/x/view/utils/parts/context.d.ts +2 -1
  70. package/x/view/utils/parts/context.js.map +1 -1
  71. package/s/view/utils/parts/set-attrs.ts +0 -33
  72. package/x/view/utils/parts/set-attrs.d.ts +0 -3
  73. package/x/view/utils/parts/set-attrs.js +0 -21
  74. package/x/view/utils/parts/set-attrs.js.map +0 -1
package/s/dom/parts/el.ts CHANGED
@@ -1,14 +1,14 @@
1
1
 
2
- import {AttrValue} from "../../view/types.js"
3
- import {setAttrs} from "../../view/utils/parts/set-attrs.js"
2
+ import {AttrValue} from "../types.js"
3
+ import {attrSet} from "../attrs/parts/attr-fns.js"
4
4
 
5
5
  export function el<E extends HTMLElement>(
6
6
  tagName: string,
7
- attrs: Record<string, AttrValue>,
7
+ attrs: Record<string, AttrValue> = {},
8
8
  ) {
9
9
 
10
10
  const element = document.createElement(tagName) as E
11
- setAttrs(element, Object.entries(attrs))
11
+ attrSet.record(element, attrs)
12
12
  return element
13
13
  }
14
14
 
@@ -0,0 +1,38 @@
1
+
2
+ import {AttrValue} from "../types.js"
3
+ import {attrSet} from "../attrs/parts/attr-fns.js"
4
+
5
+ export function elmer<E extends HTMLElement = HTMLElement>(tagName: string) {
6
+ return new Elmer<E>(tagName)
7
+ }
8
+
9
+ export class Elmer<E extends HTMLElement = HTMLElement> {
10
+ #attrs = new Map<string, AttrValue>()
11
+ #children: (Node | string)[] = []
12
+
13
+ constructor(public tagName: string) {}
14
+
15
+ attr(key: string, value: AttrValue = true) {
16
+ this.#attrs.set(key, value)
17
+ return this
18
+ }
19
+
20
+ attrs(record: Record<string, AttrValue>) {
21
+ for (const [key, value] of Object.entries(record))
22
+ this.attr(key, value)
23
+ return this
24
+ }
25
+
26
+ children(...elements: (Node | string)[]) {
27
+ this.#children.push(...elements)
28
+ return this
29
+ }
30
+
31
+ done() {
32
+ const element = document.createElement(this.tagName)
33
+ attrSet.entries(element, this.#attrs)
34
+ element.append(...this.#children)
35
+ return element as E
36
+ }
37
+ }
38
+
@@ -0,0 +1,9 @@
1
+
2
+ import {render, TemplateResult} from "lit"
3
+
4
+ export function mk<E extends Element = HTMLElement>(template: TemplateResult) {
5
+ const fragment = document.createDocumentFragment()
6
+ render(template, fragment)
7
+ return fragment.firstElementChild as E
8
+ }
9
+
@@ -0,0 +1,26 @@
1
+
2
+ import {Queryable} from "../types.js"
3
+
4
+ export function queryRequire<E extends Element>(
5
+ selector: string,
6
+ container: Queryable = document,
7
+ ) {
8
+ const e = container.querySelector<E>(selector)
9
+ if (!e) throw new Error(`element not found (${selector})`)
10
+ return e
11
+ }
12
+
13
+ export function queryMaybe<E extends Element>(
14
+ selector: string,
15
+ container: Queryable = document,
16
+ ) {
17
+ return container.querySelector<E>(selector)
18
+ }
19
+
20
+ export function queryAll<E extends Element>(
21
+ selector: string,
22
+ container: Queryable = document,
23
+ ) {
24
+ return Array.from(container.querySelectorAll<E>(selector))
25
+ }
26
+
package/s/dom/types.ts CHANGED
@@ -1,8 +1,13 @@
1
1
 
2
2
  import {attrs} from "./attrs/attrs.js"
3
3
 
4
+ export type Renderable = HTMLElement | ShadowRoot | DocumentFragment
5
+ export type Queryable = HTMLElement | ShadowRoot | Element | Document | DocumentFragment
6
+
4
7
  // attrs
5
8
 
9
+ export type AttrValue = string | boolean | number | undefined | null | void
10
+
6
11
  export type AttrKind = (
7
12
  | typeof String
8
13
  | typeof Number
@@ -1,6 +1,6 @@
1
1
 
2
2
  import {css} from "lit"
3
- import {nap, repeat} from "@e280/stz"
3
+ import {nap, cycle} from "@e280/stz"
4
4
 
5
5
  import {view} from "../../view/view.js"
6
6
  import {Content} from "../../view/types.js"
@@ -20,7 +20,7 @@ export const AsciiAnim = view(use => ({hz, frames}: {
20
20
 
21
21
  const frame = use.signal(0)
22
22
 
23
- use.mount(() => repeat(async() => {
23
+ use.mount(() => cycle(async() => {
24
24
  await nap(1000 / hz)
25
25
  const next = frame.get() + 1
26
26
  frame.set(next >= frames.length ? 0 : next)
package/s/view/types.ts CHANGED
@@ -8,7 +8,6 @@ import {BaseElement} from "../base/element.js"
8
8
  import {ViewChain} from "./utils/parts/chain.js"
9
9
 
10
10
  export type Content = TemplateResult | DirectiveResult | HTMLElement | string | null | undefined | void | Content[]
11
- export type AttrValue = string | boolean | number | undefined | null | void
12
11
 
13
12
  export type ViewFn<Props extends any[]> = (
14
13
  (use: Use) =>
@@ -3,9 +3,9 @@ import {debounce} from "@e280/stz"
3
3
  import {ViewFn} from "../../types.js"
4
4
  import {SlyView} from "./sly-view.js"
5
5
  import {dom} from "../../../dom/dom.js"
6
- import {setAttrs} from "./set-attrs.js"
7
6
  import {ViewContext} from "./context.js"
8
7
  import {Reactor} from "../../../base/utils/reactor.js"
8
+ import {attrSet} from "../../../dom/attrs/parts/attr-fns.js"
9
9
  import {AttrWatcher} from "../../../base/utils/attr-watcher.js"
10
10
  import {_disconnect, _reconnect, _wrap, Use} from "../../../base/use.js"
11
11
 
@@ -44,7 +44,7 @@ export class ViewCapsule<Props extends any[]> {
44
44
  () => this.viewFn(this.#use)(...this.#context.props),
45
45
  () => this.#renderDebounced(),
46
46
  )
47
- setAttrs(this.#element, [...this.#context.attrs])
47
+ attrSet.entries(this.#element, this.#context.attrs)
48
48
  dom.render(this.#shadow, content)
49
49
  dom.render(this.#element, this.#context.children)
50
50
  this.#attrWatcher.start()
@@ -1,7 +1,8 @@
1
1
 
2
- import {DirectiveResult} from "lit/async-directive.js"
2
+ import {Content} from "../../types.js"
3
3
  import {ViewContext} from "./context.js"
4
- import {AttrValue, Content} from "../../types.js"
4
+ import {AttrValue} from "../../../dom/types.js"
5
+ import {DirectiveResult} from "lit/async-directive.js"
5
6
 
6
7
  /** provides fluent chaining interface for adding context to rendering a view, think view.props().attr().children().render() */
7
8
  export class ViewChain<Props extends any[]> {
@@ -1,5 +1,6 @@
1
1
 
2
- import {AttrValue, Content} from "../../types.js"
2
+ import {Content} from "../../types.js"
3
+ import {AttrValue} from "../../../dom/types.js"
3
4
 
4
5
  /** the information we need to render a view. */
5
6
  export class ViewContext<Props extends any[]> {
package/x/base/use.d.ts CHANGED
@@ -1,6 +1,7 @@
1
1
  import { CSSResultGroup } from "lit";
2
2
  import { SignalOptions } from "@e280/strata/signals";
3
3
  import { Op } from "../ops/op.js";
4
+ import { EveSpec } from "../dom/parts/eve.js";
4
5
  import { UseAttrs } from "./utils/use-attrs.js";
5
6
  export declare const _wrap: unique symbol;
6
7
  export declare const _disconnect: unique symbol;
@@ -26,6 +27,7 @@ export declare class Use {
26
27
  mount(fn: () => () => void): void;
27
28
  life<V>(fn: () => [result: V, dispose: () => void]): V;
28
29
  wake<V>(fn: () => V): V;
30
+ events(spec: EveSpec): void;
29
31
  op: {
30
32
  <V>(f: () => Promise<V>): Op<V>;
31
33
  load: <V>(f: () => Promise<V>) => Op<V>;
package/x/base/use.js CHANGED
@@ -2,8 +2,9 @@ import { defer, MapG } from "@e280/stz";
2
2
  import { signal } from "@e280/strata/signals";
3
3
  import { Op } from "../ops/op.js";
4
4
  import { Mounts } from "./utils/mounts.js";
5
- import { UseAttrs } from "./utils/use-attrs.js";
5
+ import { eve } from "../dom/parts/eve.js";
6
6
  import { applyStyles } from "./utils/apply-styles.js";
7
+ import { useAttrs } from "./utils/use-attrs.js";
7
8
  export const _wrap = Symbol();
8
9
  export const _disconnect = Symbol();
9
10
  export const _reconnect = Symbol();
@@ -39,7 +40,7 @@ export class Use {
39
40
  this.shadow = shadow;
40
41
  this.renderNow = renderNow;
41
42
  this.render = render;
42
- this.attrs = new UseAttrs(this);
43
+ this.attrs = useAttrs(this);
43
44
  }
44
45
  get renderCount() {
45
46
  return this.#runs;
@@ -75,6 +76,9 @@ export class Use {
75
76
  wake(fn) {
76
77
  return this.life(() => [fn(), () => { }]);
77
78
  }
79
+ events(spec) {
80
+ return this.mount(() => eve(this.element, spec));
81
+ }
78
82
  op = (() => {
79
83
  const that = this;
80
84
  function op(f) {
package/x/base/use.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"use.js","sourceRoot":"","sources":["../../s/base/use.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"use.js","sourceRoot":"","sources":["../../s/base/use.ts"],"names":[],"mappings":"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"}
@@ -1,11 +1,11 @@
1
1
  import { Use } from "../use.js";
2
- import { AttrSpec } from "../../dom/types.js";
3
- export declare class UseAttrs {
4
- #private;
5
- constructor(use: Use);
6
- get strings(): Record<string, string | undefined>;
7
- get numbers(): Record<string, number | undefined>;
8
- get booleans(): Record<string, boolean | undefined>;
9
- spec<A extends AttrSpec>(spec: A): import("../../dom/types.js").AttrTypes<A>;
2
+ import { AttrSpec, AttrTypes } from "../../dom/types.js";
3
+ export type UseAttrs = {
4
+ <A extends AttrSpec>(spec: A): AttrTypes<A>;
5
+ strings: Record<string, undefined | string>;
6
+ numbers: Record<string, undefined | number>;
7
+ booleans: Record<string, undefined | boolean>;
8
+ spec<A extends AttrSpec>(spec: A): AttrTypes<A>;
10
9
  on(fn: () => void): void;
11
- }
10
+ };
11
+ export declare function useAttrs(use: Use): UseAttrs;
@@ -1,19 +1,18 @@
1
1
  import { dom } from "../../dom/dom.js";
2
- export class UseAttrs {
3
- #use;
4
- #attrs;
5
- constructor(use) {
6
- this.#use = use;
7
- this.#attrs = dom.attrs(use.element);
8
- }
9
- get strings() { return this.#attrs.strings; }
10
- get numbers() { return this.#attrs.numbers; }
11
- get booleans() { return this.#attrs.booleans; }
12
- spec(spec) {
13
- return this.#use.once(() => this.#attrs.spec(spec));
14
- }
15
- on(fn) {
16
- return this.#use.mount(() => this.#attrs.on(fn));
2
+ export function useAttrs(use) {
3
+ const attrs = dom.attrs(use.element);
4
+ function attrsFn(spec) {
5
+ return use.once(() => attrs.spec(spec));
17
6
  }
7
+ attrsFn.strings = attrs.strings;
8
+ attrsFn.numbers = attrs.numbers;
9
+ attrsFn.booleans = attrs.booleans;
10
+ attrsFn.spec = (spec) => {
11
+ return use.once(() => attrs.spec(spec));
12
+ };
13
+ attrsFn.on = (fn) => {
14
+ return use.mount(() => attrs.on(fn));
15
+ };
16
+ return attrsFn;
18
17
  }
19
18
  //# sourceMappingURL=use-attrs.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"use-attrs.js","sourceRoot":"","sources":["../../../s/base/utils/use-attrs.ts"],"names":[],"mappings":"AAEA,OAAO,EAAC,GAAG,EAAC,MAAM,kBAAkB,CAAA;AAGpC,MAAM,OAAO,QAAQ;IACpB,IAAI,CAAK;IACT,MAAM,CAAO;IAEb,YAAY,GAAQ;QACnB,IAAI,CAAC,IAAI,GAAG,GAAG,CAAA;QACf,IAAI,CAAC,MAAM,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,CAAA;IACrC,CAAC;IAED,IAAI,OAAO,KAAK,OAAO,IAAI,CAAC,MAAM,CAAC,OAAO,CAAA,CAAC,CAAC;IAC5C,IAAI,OAAO,KAAK,OAAO,IAAI,CAAC,MAAM,CAAC,OAAO,CAAA,CAAC,CAAC;IAC5C,IAAI,QAAQ,KAAK,OAAO,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAA,CAAC,CAAC;IAE9C,IAAI,CAAqB,IAAO;QAC/B,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA;IACpD,CAAC;IAED,EAAE,CAAC,EAAc;QAChB,OAAO,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAA;IACjD,CAAC;CACD"}
1
+ {"version":3,"file":"use-attrs.js","sourceRoot":"","sources":["../../../s/base/utils/use-attrs.ts"],"names":[],"mappings":"AAEA,OAAO,EAAC,GAAG,EAAC,MAAM,kBAAkB,CAAA;AAYpC,MAAM,UAAU,QAAQ,CAAC,GAAQ;IAChC,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,CAAA;IAEpC,SAAS,OAAO,CAAqB,IAAO;QAC3C,OAAO,GAAG,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,IAAI,CAAI,IAAI,CAAC,CAAC,CAAA;IAC3C,CAAC;IAED,OAAO,CAAC,OAAO,GAAG,KAAK,CAAC,OAAO,CAAA;IAC/B,OAAO,CAAC,OAAO,GAAG,KAAK,CAAC,OAAO,CAAA;IAC/B,OAAO,CAAC,QAAQ,GAAG,KAAK,CAAC,QAAQ,CAAA;IAEjC,OAAO,CAAC,IAAI,GAAG,CAAqB,IAAO,EAAE,EAAE;QAC9C,OAAO,GAAG,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,IAAI,CAAI,IAAI,CAAC,CAAC,CAAA;IAC3C,CAAC,CAAA;IAED,OAAO,CAAC,EAAE,GAAG,CAAC,EAAc,EAAE,EAAE;QAC/B,OAAO,GAAG,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAA;IACrC,CAAC,CAAA;IAED,OAAO,OAAO,CAAA;AACf,CAAC"}
@@ -1,6 +1,6 @@
1
- var ze=Object.defineProperty;var ce=(r,t)=>{for(var e in t)ze(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,Wt=Symbol(),he=new WeakMap,G=class{constructor(t,e,s){if(this._$cssResult$=!0,s!==Wt)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=he.get(e)),t===void 0&&((this.o=t=new CSSStyleSheet).replaceSync(this.cssText),s&&he.set(e,t))}return t}toString(){return this.cssText}},pe=r=>new G(typeof r=="string"?r:r+"",void 0,Wt),$=(r,...t)=>{let e=r.length===1?r[0]:t.reduce(((s,o,i)=>s+(n=>{if(n._$cssResult$===!0)return n.cssText;if(typeof n=="number")return n;throw Error("Value passed to 'css' function must be a 'css' function result: "+n+". Use 'unsafeCSS' to pass non-literal values, but take care to ensure page security.")})(o)+r[i+1]),r[0]);return new G(e,r,Wt)},ft=(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)}},j=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:Be,defineProperty:qe,getOwnPropertyDescriptor:Ve,getOwnPropertyNames:Ie,getOwnPropertySymbols:We,getPrototypeOf:Fe}=Object,gt=globalThis,ue=gt.trustedTypes,Ze=ue?ue.emptyScript:"",Je=gt.reactiveElementPolyfillSupport,Y=(r,t)=>r,Ft={toAttribute(r,t){switch(t){case Boolean:r=r?Ze: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)=>!Be(r,t),le={attribute:!0,type:String,converter:Ft,reflect:!1,useDefault:!1,hasChanged:de};Symbol.metadata??=Symbol("metadata"),gt.litPropertyMetadata??=new WeakMap;var S=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=le){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&&qe(this.prototype,t,o)}}static getPropertyDescriptor(t,e,s){let{get:o,set:i}=Ve(this.prototype,t)??{get(){return this[e]},set(n){this[e]=n}};return{get:o,set(n){let h=o?.call(this);i?.call(this,n),this.requestUpdate(t,h,s)},configurable:!0,enumerable:!0}}static getPropertyOptions(t){return this.elementProperties.get(t)??le}static _$Ei(){if(this.hasOwnProperty(Y("elementProperties")))return;let t=Fe(this);t.finalize(),t.l!==void 0&&(this.l=[...t.l]),this.elementProperties=new Map(t.elementProperties)}static finalize(){if(this.hasOwnProperty(Y("finalized")))return;if(this.finalized=!0,this._$Ei(),this.hasOwnProperty(Y("properties"))){let e=this.properties,s=[...Ie(e),...We(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(j(o))}else t!==void 0&&e.push(j(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 ft(t,this.constructor.elementStyles),t}connectedCallback(){this.renderRoot??=this.createRenderRoot(),this.enableUpdating(!0),this._$EO?.forEach((t=>t.hostConnected?.()))}enableUpdating(t){}disconnectedCallback(){this._$EO?.forEach((t=>t.hostDisconnected?.()))}attributeChangedCallback(t,e,s){this._$AK(t,s)}_$ET(t,e){let s=this.constructor.elementProperties.get(t),o=this.constructor._$Eu(t,s);if(o!==void 0&&s.reflect===!0){let i=(s.converter?.toAttribute!==void 0?s.converter:Ft).toAttribute(e,s.type);this._$Em=t,i==null?this.removeAttribute(o):this.setAttribute(o,i),this._$Em=null}}_$AK(t,e){let s=this.constructor,o=s._$Eh.get(t);if(o!==void 0&&this._$Em!==o){let i=s.getPropertyOptions(o),n=typeof i.converter=="function"?{fromAttribute:i.converter}:i.converter?.fromAttribute!==void 0?i.converter:Ft;this._$Em=o,this[o]=n.fromAttribute(e,i.type)??this._$Ej?.get(o)??null,this._$Em=null}}requestUpdate(t,e,s){if(t!==void 0){let o=this.constructor,i=this[t];if(s??=o.getPropertyOptions(t),!((s.hasChanged??de)(i,e)||s.useDefault&&s.reflect&&i===this._$Ej?.get(t)&&!this.hasAttribute(o._$Eu(t,s))))return;this.C(t,e,s)}this.isUpdatePending===!1&&(this._$ES=this._$EP())}C(t,e,{useDefault:s,reflect:o,wrapped:i},n){s&&!(this._$Ej??=new Map).has(t)&&(this._$Ej.set(t,n??e??this[t]),i!==!0||n!==void 0)||(this._$AL.has(t)||(this.hasUpdated||s||(e=void 0),this._$AL.set(t,e)),o===!0&&this._$Em!==t&&(this._$Eq??=new Set).add(t))}async _$EP(){this.isUpdatePending=!0;try{await this._$ES}catch(e){Promise.reject(e)}let t=this.scheduleUpdate();return t!=null&&await t,!this.isUpdatePending}scheduleUpdate(){return this.performUpdate()}performUpdate(){if(!this.isUpdatePending)return;if(!this.hasUpdated){if(this.renderRoot??=this.createRenderRoot(),this._$Ep){for(let[o,i]of this._$Ep)this[o]=i;this._$Ep=void 0}let s=this.constructor.elementProperties;if(s.size>0)for(let[o,i]of s){let{wrapped:n}=i,h=this[o];n!==!0||this._$AL.has(o)||h===void 0||this.C(o,void 0,i,h)}}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){}};S.elementStyles=[],S.shadowRootOptions={mode:"open"},S[Y("elementProperties")]=new Map,S[Y("finalized")]=new Map,Je?.({ReactiveElement:S}),(gt.reactiveElementVersions??=[]).push("2.1.0");var Jt=globalThis,yt=Jt.trustedTypes,me=yt?yt.createPolicy("lit-html",{createHTML:r=>r}):void 0,Kt="$lit$",E=`lit$${Math.random().toFixed(9).slice(2)}$`,Qt="?"+E,Ke=`<${Qt}>`,N=document,tt=()=>N.createComment(""),et=r=>r===null||typeof r!="object"&&typeof r!="function",Gt=Array.isArray,we=r=>Gt(r)||typeof r?.[Symbol.iterator]=="function",Zt=`[
2
- \f\r]`,X=/<(?:(!--|\/[^a-zA-Z])|(\/?[a-zA-Z][^>\s]*)|(\/?$))/g,fe=/-->/g,ge=/>/g,T=RegExp(`>|${Zt}(?:([^\\s"'>=/]+)(${Zt}*=${Zt}*(?:[^
3
- \f\r"'\`<>=]|("|')|))|$)`,"g"),ye=/'/g,$e=/"/g,_e=/^(?:script|style|textarea|title)$/i,Yt=r=>(t,...e)=>({_$litType$:r,strings:t,values:e}),x=Yt(1),Qr=Yt(2),Gr=Yt(3),O=Symbol.for("lit-noChange"),f=Symbol.for("lit-nothing"),be=new WeakMap,R=N.createTreeWalker(N,129);function xe(r,t){if(!Gt(r)||!r.hasOwnProperty("raw"))throw Error("invalid template strings array");return me!==void 0?me.createHTML(t):t}var Ae=(r,t)=>{let e=r.length-1,s=[],o,i=t===2?"<svg>":t===3?"<math>":"",n=X;for(let h=0;h<e;h++){let a=r[h],p,m,u=-1,w=0;for(;w<a.length&&(n.lastIndex=w,m=n.exec(a),m!==null);)w=n.lastIndex,n===X?m[1]==="!--"?n=fe:m[1]!==void 0?n=ge:m[2]!==void 0?(_e.test(m[2])&&(o=RegExp("</"+m[2],"g")),n=T):m[3]!==void 0&&(n=T):n===T?m[0]===">"?(n=o??X,u=-1):m[1]===void 0?u=-2:(u=n.lastIndex-m[2].length,p=m[1],n=m[3]===void 0?T:m[3]==='"'?$e:ye):n===$e||n===ye?n=T:n===fe||n===ge?n=X:(n=T,o=void 0);let C=n===T&&r[h+1].startsWith("/>")?" ":"";i+=n===X?a+Ke:u>=0?(s.push(p),a.slice(0,u)+Kt+a.slice(u)+E+C):a+E+(u===-2?h:C)}return[xe(r,i+(r[e]||"<?>")+(t===2?"</svg>":t===3?"</math>":"")),s]},rt=class r{constructor({strings:t,_$litType$:e},s){let o;this.parts=[];let i=0,n=0,h=t.length-1,a=this.parts,[p,m]=Ae(t,e);if(this.el=r.createElement(p,s),R.currentNode=this.el.content,e===2||e===3){let u=this.el.content.firstChild;u.replaceWith(...u.childNodes)}for(;(o=R.nextNode())!==null&&a.length<h;){if(o.nodeType===1){if(o.hasAttributes())for(let u of o.getAttributeNames())if(u.endsWith(Kt)){let w=m[n++],C=o.getAttribute(u).split(E),lt=/([.?@])?(.*)/.exec(w);a.push({type:1,index:i,name:lt[2],strings:C,ctor:lt[1]==="."?bt:lt[1]==="?"?wt:lt[1]==="@"?_t:U}),o.removeAttribute(u)}else u.startsWith(E)&&(a.push({type:6,index:i}),o.removeAttribute(u));if(_e.test(o.tagName)){let u=o.textContent.split(E),w=u.length-1;if(w>0){o.textContent=yt?yt.emptyScript:"";for(let C=0;C<w;C++)o.append(u[C],tt()),R.nextNode(),a.push({type:2,index:++i});o.append(u[w],tt())}}}else if(o.nodeType===8)if(o.data===Qt)a.push({type:2,index:i});else{let u=-1;for(;(u=o.data.indexOf(E,u+1))!==-1;)a.push({type:7,index:i}),u+=E.length-1}i++}}static createElement(t,e){let s=N.createElement("template");return s.innerHTML=t,s}};function M(r,t,e=r,s){if(t===O)return t;let o=s!==void 0?e._$Co?.[s]:e._$Cl,i=et(t)?void 0:t._$litDirective$;return o?.constructor!==i&&(o?._$AO?.(!1),i===void 0?o=void 0:(o=new i(r),o._$AT(r,e,s)),s!==void 0?(e._$Co??=[])[s]=o:e._$Cl=o),o!==void 0&&(t=M(r,o._$AS(r,t.values),o,s)),t}var $t=class{constructor(t,e){this._$AV=[],this._$AN=void 0,this._$AD=t,this._$AM=e}get parentNode(){return this._$AM.parentNode}get _$AU(){return this._$AM._$AU}u(t){let{el:{content:e},parts:s}=this._$AD,o=(t?.creationScope??N).importNode(e,!0);R.currentNode=o;let i=R.nextNode(),n=0,h=0,a=s[0];for(;a!==void 0;){if(n===a.index){let p;a.type===2?p=new D(i,i.nextSibling,this,t):a.type===1?p=new a.ctor(i,a.name,a.strings,this,t):a.type===6&&(p=new xt(i,this,t)),this._$AV.push(p),a=s[++h]}n!==a?.index&&(i=R.nextNode(),n++)}return R.currentNode=N,o}p(t){let e=0;for(let s of this._$AV)s!==void 0&&(s.strings!==void 0?(s._$AI(t,s,e),e+=s.strings.length-2):s._$AI(t[e])),e++}},D=class r{get _$AU(){return this._$AM?._$AU??this._$Cv}constructor(t,e,s,o){this.type=2,this._$AH=f,this._$AN=void 0,this._$AA=t,this._$AB=e,this._$AM=s,this.options=o,this._$Cv=o?.isConnected??!0}get parentNode(){let t=this._$AA.parentNode,e=this._$AM;return e!==void 0&&t?.nodeType===11&&(t=e.parentNode),t}get startNode(){return this._$AA}get endNode(){return this._$AB}_$AI(t,e=this){t=M(this,t,e),et(t)?t===f||t==null||t===""?(this._$AH!==f&&this._$AR(),this._$AH=f):t!==this._$AH&&t!==O&&this._(t):t._$litType$!==void 0?this.$(t):t.nodeType!==void 0?this.T(t):we(t)?this.k(t):this._(t)}O(t){return this._$AA.parentNode.insertBefore(t,this._$AB)}T(t){this._$AH!==t&&(this._$AR(),this._$AH=this.O(t))}_(t){this._$AH!==f&&et(this._$AH)?this._$AA.nextSibling.data=t:this.T(N.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=rt.createElement(xe(s.h,s.h[0]),this.options)),s);if(this._$AH?._$AD===o)this._$AH.p(e);else{let i=new $t(o,this),n=i.u(this.options);i.p(e),this.T(n),this._$AH=i}}_$AC(t){let e=be.get(t.strings);return e===void 0&&be.set(t.strings,e=new rt(t)),e}k(t){Gt(this._$AH)||(this._$AH=[],this._$AR());let e=this._$AH,s,o=0;for(let i of t)o===e.length?e.push(s=new r(this.O(tt()),this.O(tt()),this,this.options)):s=e[o],s._$AI(i),o++;o<e.length&&(this._$AR(s&&s._$AB.nextSibling,o),e.length=o)}_$AR(t=this._$AA.nextSibling,e){for(this._$AP?.(!1,!0,e);t&&t!==this._$AB;){let s=t.nextSibling;t.remove(),t=s}}setConnected(t){this._$AM===void 0&&(this._$Cv=t,this._$AP?.(t))}},U=class{get tagName(){return this.element.tagName}get _$AU(){return this._$AM._$AU}constructor(t,e,s,o,i){this.type=1,this._$AH=f,this._$AN=void 0,this.element=t,this.name=e,this._$AM=o,this.options=i,s.length>2||s[0]!==""||s[1]!==""?(this._$AH=Array(s.length-1).fill(new String),this.strings=s):this._$AH=f}_$AI(t,e=this,s,o){let i=this.strings,n=!1;if(i===void 0)t=M(this,t,e,0),n=!et(t)||t!==this._$AH&&t!==O,n&&(this._$AH=t);else{let h=t,a,p;for(t=i[0],a=0;a<i.length-1;a++)p=M(this,h[s+a],e,a),p===O&&(p=this._$AH[a]),n||=!et(p)||p!==this._$AH[a],p===f?t=f:t!==f&&(t+=(p??"")+i[a+1]),this._$AH[a]=p}n&&!o&&this.j(t)}j(t){t===f?this.element.removeAttribute(this.name):this.element.setAttribute(this.name,t??"")}},bt=class extends U{constructor(){super(...arguments),this.type=3}j(t){this.element[this.name]=t===f?void 0:t}},wt=class extends U{constructor(){super(...arguments),this.type=4}j(t){this.element.toggleAttribute(this.name,!!t&&t!==f)}},_t=class extends U{constructor(t,e,s,o,i){super(t,e,s,o,i),this.type=5}_$AI(t,e=this){if((t=M(this,t,e,0)??f)===O)return;let s=this._$AH,o=t===f&&s!==f||t.capture!==s.capture||t.once!==s.once||t.passive!==s.passive,i=t!==f&&(s===f||o);o&&this.element.removeEventListener(this.name,this,s),i&&this.element.addEventListener(this.name,this,t),this._$AH=t}handleEvent(t){typeof this._$AH=="function"?this._$AH.call(this.options?.host??this.element,t):this._$AH.handleEvent(t)}},xt=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){M(this,t)}},ve={M:Kt,P:E,A:Qt,C:1,L:Ae,R:$t,D:we,V:M,I:D,H:U,N:wt,U:_t,B:bt,F:xt},Qe=Jt.litHtmlPolyfillSupport;Qe?.(rt,D),(Jt.litHtmlVersions??=[]).push("3.3.0");var st=(r,t,e)=>{let s=e?.renderBefore??t,o=s._$litPart$;if(o===void 0){let i=e?.renderBefore??null;s._$litPart$=o=new D(t.insertBefore(tt(),i),i,void 0,e??{})}return o._$AI(r),o};var Xt=globalThis,z=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=st(e,this.renderRoot,this.renderOptions)}connectedCallback(){super.connectedCallback(),this._$Do?.setConnected(!0)}disconnectedCallback(){super.disconnectedCallback(),this._$Do?.setConnected(!1)}render(){return O}};z._$litElement$=!0,z.finalized=!0,Xt.litElementHydrateSupport?.({LitElement:z});var Ge=Xt.litElementPolyfillSupport;Ge?.({LitElement:z});(Xt.litElementVersions??=[]).push("4.2.0");function Ye(r,t,e){e==null?r.removeAttribute(t):typeof e=="string"?r.setAttribute(t,e):typeof e=="number"?r.setAttribute(t,e.toString()):typeof e=="boolean"?e===!0?r.setAttribute(t,""):r.removeAttribute(t):console.warn(`invalid attribute "${t}" type is "${typeof e}"`)}function At(r,t){for(let[e,s]of t)Ye(r,e,s)}function Se(r,t){let e=document.createElement(r);return At(e,Object.entries(t)),e}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 Ce=(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 vt=class{element;constructor(t){this.element=t}strings=new Proxy({},{get:(t,e)=>g.get.string(this.element,e),set:(t,e,s)=>g.set.string(this.element,e,s)});numbers=new Proxy({},{get:(t,e)=>g.get.number(this.element,e),set:(t,e,s)=>g.set.number(this.element,e,s)});booleans=new Proxy({},{get:(t,e)=>g.get.boolean(this.element,e),set:(t,e,s)=>g.set.boolean(this.element,e,s)})};function ot(r){let t=new vt(r);return{strings:t.strings,numbers:t.numbers,booleans:t.booleans,on:e=>Ee(r,e),spec:e=>Ce(r,e)}}ot.get=g.get;ot.set=g.set;function te(r,t){let e=[];for(let[s,o]of Object.entries(t))if(typeof o=="function")r.addEventListener(s,o),e.push(()=>r.removeEventListener(s,o));else{let[i,n]=o;r.addEventListener(s,n,i),e.push(()=>r.removeEventListener(s,n))}return()=>e.forEach(s=>s())}function Pe(r){return r.replace(/([a-zA-Z])(?=[A-Z])/g,"$1-").toLowerCase()}function ke(r,t={}){let{soft:e=!1,upgrade:s=!0}=t;for(let[o,i]of Object.entries(r)){let n=Pe(o),h=customElements.get(n);e&&h||(customElements.define(n,i),s&&document.querySelectorAll(n).forEach(a=>{a.constructor===HTMLElement&&customElements.upgrade(a)}))}}function Te(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"?Te(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 st(t,this.element)}attrs(){return ot(this.element)}events(t){return te(this.element,t)}};function l(r){return typeof r=="string"?Te(document,r):new St(r)}var P=new St(document);l.in=P.in.bind(P);l.require=P.require.bind(P);l.maybe=P.maybe.bind(P);l.all=P.all.bind(P);l.el=Se;l.events=te;l.attrs=ot;l.register=ke;l.render=(r,...t)=>st(t,r);var Et=class{#t;#e;constructor(t,e){this.#e=t,this.#t=e}attr(t,e=!0){return this.#e.attrs.set(t,e),this}attrs(t){for(let[e,s]of Object.entries(t))this.#e.attrs.set(e,s);return this}children(...t){return this.#e.children.push(...t),this}render(){return this.#t(this.#e)}};function B(r,t){let e,s,o=[];function i(){e=[],s&&clearTimeout(s),s=void 0,o=[]}return i(),((...n)=>{e=n,s&&clearTimeout(s);let h=new Promise((a,p)=>{o.push({resolve:a,reject:p})});return s=setTimeout(()=>{Promise.resolve().then(()=>t(...e)).then(a=>{for(let{resolve:p}of o)p(a);i()}).catch(a=>{for(let{reject:p}of o)p(a);i()})},r),h})}function Xe(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 Ct=Xe;function it(){let r,t,e=new Promise((o,i)=>{r=o,t=i});function s(o){return o.then(r).catch(t),e}return{promise:e,resolve:r,reject:t,entangle:s}}var q=class r extends Map{static require(t,e){if(t.has(e))return t.get(e);throw new Error(`required key not found: "${e}"`)}static guarantee(t,e,s){if(t.has(e))return t.get(e);{let o=s();return t.set(e,o),o}}array(){return[...this]}require(t){return r.require(this,t)}guarantee(t,e){return r.guarantee(this,t,e)}};var Pt=(r=0)=>new Promise(t=>setTimeout(t,r));function Re(){let r=new Set;async function t(...a){await Promise.all([...r].map(p=>p(...a)))}function e(a){return r.add(a),()=>{r.delete(a)}}async function s(...a){return t(...a)}function o(a){return e(a)}async function i(a){let{promise:p,resolve:m}=it(),u=o(async(...w)=>{a&&await a(...w),m(w),u()});return p}function n(){r.clear()}let h={pub:s,sub:o,publish:t,subscribe:e,on:e,next:i,clear:n};return Object.assign(o,h),Object.assign(s,h),h}function kt(r){let t=Re();return r&&t.sub(r),t.sub}function ee(r){let t=Re();return r&&t.sub(r),t.pub}var re=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=kt(),this.#e.set(t,e)),e}},y=globalThis[Symbol.for("e280.tracker")]??=new re;var V=class{sneak;constructor(t){this.sneak=t}get(){return y.notifyRead(this),this.sneak}get value(){return this.get()}};var I=class extends V{on=kt();dispose(){this.on.clear()}};function Tt(r,t=r){let{seen:e,result:s}=y.observe(r),o=B(0,t),i=[],n=()=>i.forEach(h=>h());for(let h of e){let a=y.subscribe(h,o);i.push(a)}return{result:s,dispose:n}}function W(r,t){return r===t}var Rt=class extends I{#t;constructor(t,e){let s=e?.compare??W,{result:o,dispose:i}=Tt(t,async()=>{let n=t();!s(this.sneak,n)&&(this.sneak=n,await Promise.all([y.notifyWrite(this),this.on.pub(n)]))});super(o),this.#t=i}toString(){return`(derived "${String(this.get())}")`}dispose(){super.dispose(),this.#t()}get core(){return this}fn(){let t=this;function e(){return t.get()}return e.core=t,e.get=t.get.bind(t),e.on=t.on,e.dispose=t.dispose.bind(t),e.fn=t.fn.bind(t),Object.defineProperty(e,"value",{get:()=>t.value}),Object.defineProperty(e,"sneak",{get:()=>t.sneak}),e}};var Nt=class extends V{#t;#e;#r=!1;#s;constructor(t,e){super(void 0),this.#t=t,this.#e=e?.compare??W}toString(){return`($lazy "${String(this.get())}")`}get(){if(!this.#s){let{result:t,dispose:e}=Tt(this.#t,()=>this.#r=!0);this.#s=e,this.sneak=t}if(this.#r){this.#r=!1;let t=this.#t();!this.#e(this.sneak,t)&&(this.sneak=t,y.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 Ot=class extends I{#t=!1;#e;constructor(t,e){super(t),this.#e=e?.compare??W}toString(){return`($signal "${String(this.get())}")`}async set(t,e=!1){let s=this.sneak;return this.sneak=t,(e||!this.#e(s,t))&&await this.publish(),t}get value(){return this.get()}set value(t){this.set(t)}async publish(){if(this.#t)throw new Error("forbid circularity");let t=this.sneak,e=Promise.resolve();try{this.#t=!0,e=Promise.all([y.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 tr(r,t){return new Nt(r,t).fn()}function Ne(r,t){return new Rt(r,t).fn()}function _(r,t){return new Ot(r,t).fn()}_.lazy=tr;_.derived=Ne;var k=class{#t=new q;effect(t,e){let{seen:s,result:o}=y.observe(t);for(let i of s)this.#t.guarantee(i,()=>y.subscribe(i,e));for(let[i,n]of this.#t)s.has(i)||(n(),this.#t.delete(i));return o}clear(){for(let t of this.#t.values())t();this.#t.clear()}};var F=class{element;response;#t;constructor(t,e){this.element=t,this.response=e}start(){this.#t||(this.#t=l.attrs(this.element).on(this.response))}stop(){this.#t&&this.#t(),this.#t=void 0}};function Mt(r,t){ft(r,rr(t))}function rr(r){let t=[];if(Array.isArray(r)){let e=new Set(r.flat(1/0).reverse());for(let s of e)t.unshift(j(s))}else r!==void 0&&t.push(j(r));return t}var H={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)=>H.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 L=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 H.all(...e)}signal;#t=0;#e=ee();#r=ee();constructor(t=["loading"]){this.signal=_(t)}get wait(){return new Promise((t,e)=>{this.#e.next().then(([s])=>t(s)),this.#r.next().then(([s])=>e(s))})}get then(){return this.wait.then.bind(this.wait)}get catch(){return this.wait.catch.bind(this.wait)}get finally(){return this.wait.finally.bind(this.wait)}async setLoading(){await this.signal.set(["loading"])}async setReady(t){await this.signal.set(["ready",t]),await this.#e(t)}async setError(t){await this.signal.set(["error",t]),await this.#r(t)}async promise(t){let e=++this.#t;await this.setLoading();try{let s=await t;return e===this.#t&&await this.setReady(s),s}catch(s){console.error(s),e===this.#t&&await this.setError(s)}}async load(t){return this.promise(t())}get pod(){return this.signal.get()}set pod(t){this.signal.set(t)}get status(){return this.signal.get()[0]}get value(){return H.value(this.signal.get())}get error(){return H.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 H.select(this.signal.get(),t)}morph(t){return H.morph(this.pod,t)}};var Ut=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 Ht=class{#t;#e;constructor(t){this.#t=t,this.#e=l.attrs(t.element)}get strings(){return this.#e.strings}get numbers(){return this.#e.numbers}get booleans(){return this.#e.booleans}spec(t){return this.#t.once(()=>this.#e.spec(t))}on(t){return this.#t.mount(()=>this.#e.on(t))}};var nt=Symbol(),at=Symbol(),ct=Symbol(),Z=class{element;shadow;renderNow;render;attrs;#t=0;#e=0;#r=new q;#s=it();#o=new Ut;[nt](t){this.#t++,this.#e=0,this.#s=it();let e=t();return this.#s.resolve(),e}[at](){this.#o.unmountAll()}[ct](){this.#o.remountAll()}constructor(t,e,s,o){this.element=t,this.shadow=e,this.renderNow=s,this.render=o,this.attrs=new Ht(this)}get renderCount(){return this.#t}get rendered(){return this.#s.promise}name(t){this.once(()=>this.element.setAttribute("view",t))}styles(...t){this.once(()=>Mt(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(()=>L.load(s))}return e.load=e,e.promise=s=>this.once(()=>L.promise(s)),e})();signal=(()=>{let t=this;function e(s,o){return t.once(()=>_(s,o))}return e.derived=function(o,i){return t.once(()=>_.derived(o,i))},e.lazy=function(o,i){return t.once(()=>_.lazy(o,i))},e})();derived(t,e){return this.once(()=>_.derived(t,e))}lazy(t,e){return this.once(()=>_.lazy(t,e))}};var A=class extends HTMLElement{static styles;shadow;#t;#e=0;#r=new k;#s=new F(this,()=>this.update());createShadow(){return this.attachShadow({mode:"open"})}constructor(){super(),this.shadow=this.createShadow(),this.#t=new Z(this,this.shadow,this.updateNow,this.update)}render(t){}updateNow=()=>{this.#t[nt](()=>{l.render(this.shadow,this.#r.effect(()=>this.render(this.#t),this.update))})};update=B(0,this.updateNow);connectedCallback(){if(this.#e===0){let t=this.constructor.styles;t&&Mt(this.shadow,t),this.updateNow()}else this.#t[ct]();this.#s.start(),this.#e++}disconnectedCallback(){this.#t[at](),this.#r.clear(),this.#s.stop()}};var ht=class{props;attrs=new Map;children=[];constructor(t){this.props=t}};function Oe(r,t,e,s){return class extends t{static view=J(s,r);#t=new k;createShadow(){return this.attachShadow(r)}render(i){return s(i)(...this.#t.effect(()=>e(this),()=>this.update()))}}}var{I:Fi}=ve;var Me=r=>r.strings===void 0;var Ue={ATTRIBUTE:1,CHILD:2,PROPERTY:3,BOOLEAN_ATTRIBUTE:4,EVENT:5,ELEMENT:6},se=r=>(...t)=>({_$litDirective$:r,values:t}),Lt=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 pt=(r,t)=>{let e=r._$AN;if(e===void 0)return!1;for(let s of e)s._$AO?.(t,!1),pt(s,t);return!0},jt=r=>{let t,e;do{if((t=r._$AM)===void 0)break;e=t._$AN,e.delete(r),r=t}while(e?.size===0)},He=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),ir(t)}};function sr(r){this._$AN!==void 0?(jt(this),this._$AM=r,He(this)):this._$AM=r}function or(r,t=!1,e=0){let s=this._$AH,o=this._$AN;if(o!==void 0&&o.size!==0)if(t)if(Array.isArray(s))for(let i=e;i<s.length;i++)pt(s[i],!1),jt(s[i]);else s!=null&&(pt(s,!1),jt(s));else pt(this,r)}var ir=r=>{r.type==Ue.CHILD&&(r._$AP??=or,r._$AQ??=sr)},Dt=class extends Lt{constructor(){super(...arguments),this._$AN=void 0}_$AT(t,e,s){super._$AT(t,e,s),He(this),this.isConnected=t._$AU}_$AO(t,e=!0){t!==this.isConnected&&(this.isConnected=t,t?this.reconnected?.():this.disconnected?.()),e&&(pt(this,t),jt(this))}setValue(t){if(Me(this._$Ct))this._$Ct._$AI(t,this);else{let e=[...this._$Ct._$AH];e[this._$Ci]=t,this._$Ct._$AI(e,this,0)}}disconnected(){}reconnected(){}};var zt=class r extends HTMLElement{static#t=!1;static make(){return this.#t||(l.register({SlyView:r},{soft:!0,upgrade:!0}),this.#t=!0),document.createElement("sly-view")}};var Bt=class{viewFn;settings;#t=zt.make();#e=new k;#r;#s;#o;#i=new F(this.#t,()=>this.#a());constructor(t,e){this.viewFn=t,this.settings=e,this.#s=this.#t.attachShadow(this.settings),this.#r=new Z(this.#t,this.#s,this.#n,this.#a)}update(t){return this.#o=t,this.#n(),this.#t}#n=()=>{this.#r[nt](()=>{let t=this.#e.effect(()=>this.viewFn(this.#r)(...this.#o.props),()=>this.#a());At(this.#t,[...this.#o.attrs]),l.render(this.#s,t),l.render(this.#t,this.#o.children),this.#i.start()})};#a=B(0,this.#n);disconnected(){this.#r[at](),this.#e.clear(),this.#i.stop()}reconnected(){this.#r[ct](),this.#i.start()}};function Le(r,t){return se(class extends Dt{#t=new Bt(r,t);render(s){return this.#t.update(s)}disconnected(){this.#t.disconnected()}reconnected(){this.#t.reconnected()}})}function J(r,t){let e=Le(r,t);function s(...o){return e(new ht(o))}return s.props=(...o)=>new Et(new ht(o),e),s.transmute=o=>J(n=>{let h=r(n);return(...a)=>h(...o(...a))},t),s.component=(o=A)=>({props:i=>Oe(t,o,i,r)}),s}function b(r){return J(r,{mode:"open"})}b.settings=r=>({render:t=>J(t,r)});b.render=b;b.component=r=>b(t=>()=>r(t)).component(A).props(()=>[]);var v=$`
1
+ var Ie=Object.defineProperty;var pe=(r,t)=>{for(var e in t)Ie(r,e,{get:t[e],enumerable:!0})};var ft=globalThis,gt=ft.ShadowRoot&&(ft.ShadyCSS===void 0||ft.ShadyCSS.nativeShadow)&&"adoptedStyleSheets"in Document.prototype&&"replace"in CSSStyleSheet.prototype,Gt=Symbol(),ue=new WeakMap,et=class{constructor(t,e,s){if(this._$cssResult$=!0,s!==Gt)throw Error("CSSResult is not constructable. Use `unsafeCSS` or `css` instead.");this.cssText=t,this.t=e}get styleSheet(){let t=this.o,e=this.t;if(gt&&t===void 0){let s=e!==void 0&&e.length===1;s&&(t=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}},le=r=>new et(typeof r=="string"?r:r+"",void 0,Gt),$=(r,...t)=>{let e=r.length===1?r[0]:t.reduce(((s,o,i)=>s+(n=>{if(n._$cssResult$===!0)return n.cssText;if(typeof n=="number")return n;throw Error("Value passed to 'css' function must be a 'css' function result: "+n+". Use 'unsafeCSS' to pass non-literal values, but take care to ensure page security.")})(o)+r[i+1]),r[0]);return new et(e,r,Gt)},yt=(r,t)=>{if(gt)r.adoptedStyleSheets=t.map((e=>e instanceof CSSStyleSheet?e:e.styleSheet));else for(let e of t){let s=document.createElement("style"),o=ft.litNonce;o!==void 0&&s.setAttribute("nonce",o),s.textContent=e.cssText,r.appendChild(s)}},D=gt?r=>r:r=>r instanceof CSSStyleSheet?(t=>{let e="";for(let s of t.cssRules)e+=s.cssText;return le(e)})(r):r;var{is:We,defineProperty:Fe,getOwnPropertyDescriptor:Ge,getOwnPropertyNames:Ze,getOwnPropertySymbols:Je,getPrototypeOf:Ke}=Object,$t=globalThis,me=$t.trustedTypes,Qe=me?me.emptyScript:"",Ye=$t.reactiveElementPolyfillSupport,rt=(r,t)=>r,Zt={toAttribute(r,t){switch(t){case Boolean:r=r?Qe: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}},fe=(r,t)=>!We(r,t),de={attribute:!0,type:String,converter:Zt,reflect:!1,useDefault:!1,hasChanged:fe};Symbol.metadata??=Symbol("metadata"),$t.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=de){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&&Fe(this.prototype,t,o)}}static getPropertyDescriptor(t,e,s){let{get:o,set:i}=Ge(this.prototype,t)??{get(){return this[e]},set(n){this[e]=n}};return{get:o,set(n){let h=o?.call(this);i?.call(this,n),this.requestUpdate(t,h,s)},configurable:!0,enumerable:!0}}static getPropertyOptions(t){return this.elementProperties.get(t)??de}static _$Ei(){if(this.hasOwnProperty(rt("elementProperties")))return;let t=Ke(this);t.finalize(),t.l!==void 0&&(this.l=[...t.l]),this.elementProperties=new Map(t.elementProperties)}static finalize(){if(this.hasOwnProperty(rt("finalized")))return;if(this.finalized=!0,this._$Ei(),this.hasOwnProperty(rt("properties"))){let e=this.properties,s=[...Ze(e),...Je(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(D(o))}else t!==void 0&&e.push(D(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 yt(t,this.constructor.elementStyles),t}connectedCallback(){this.renderRoot??=this.createRenderRoot(),this.enableUpdating(!0),this._$EO?.forEach((t=>t.hostConnected?.()))}enableUpdating(t){}disconnectedCallback(){this._$EO?.forEach((t=>t.hostDisconnected?.()))}attributeChangedCallback(t,e,s){this._$AK(t,s)}_$ET(t,e){let s=this.constructor.elementProperties.get(t),o=this.constructor._$Eu(t,s);if(o!==void 0&&s.reflect===!0){let i=(s.converter?.toAttribute!==void 0?s.converter:Zt).toAttribute(e,s.type);this._$Em=t,i==null?this.removeAttribute(o):this.setAttribute(o,i),this._$Em=null}}_$AK(t,e){let s=this.constructor,o=s._$Eh.get(t);if(o!==void 0&&this._$Em!==o){let i=s.getPropertyOptions(o),n=typeof i.converter=="function"?{fromAttribute:i.converter}:i.converter?.fromAttribute!==void 0?i.converter:Zt;this._$Em=o,this[o]=n.fromAttribute(e,i.type)??this._$Ej?.get(o)??null,this._$Em=null}}requestUpdate(t,e,s){if(t!==void 0){let o=this.constructor,i=this[t];if(s??=o.getPropertyOptions(t),!((s.hasChanged??fe)(i,e)||s.useDefault&&s.reflect&&i===this._$Ej?.get(t)&&!this.hasAttribute(o._$Eu(t,s))))return;this.C(t,e,s)}this.isUpdatePending===!1&&(this._$ES=this._$EP())}C(t,e,{useDefault:s,reflect:o,wrapped:i},n){s&&!(this._$Ej??=new Map).has(t)&&(this._$Ej.set(t,n??e??this[t]),i!==!0||n!==void 0)||(this._$AL.has(t)||(this.hasUpdated||s||(e=void 0),this._$AL.set(t,e)),o===!0&&this._$Em!==t&&(this._$Eq??=new Set).add(t))}async _$EP(){this.isUpdatePending=!0;try{await this._$ES}catch(e){Promise.reject(e)}let t=this.scheduleUpdate();return t!=null&&await t,!this.isUpdatePending}scheduleUpdate(){return this.performUpdate()}performUpdate(){if(!this.isUpdatePending)return;if(!this.hasUpdated){if(this.renderRoot??=this.createRenderRoot(),this._$Ep){for(let[o,i]of this._$Ep)this[o]=i;this._$Ep=void 0}let s=this.constructor.elementProperties;if(s.size>0)for(let[o,i]of s){let{wrapped:n}=i,h=this[o];n!==!0||this._$AL.has(o)||h===void 0||this.C(o,void 0,i,h)}}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[rt("elementProperties")]=new Map,E[rt("finalized")]=new Map,Ye?.({ReactiveElement:E}),($t.reactiveElementVersions??=[]).push("2.1.0");var Kt=globalThis,bt=Kt.trustedTypes,ge=bt?bt.createPolicy("lit-html",{createHTML:r=>r}):void 0,Qt="$lit$",C=`lit$${Math.random().toFixed(9).slice(2)}$`,Yt="?"+C,Xe=`<${Yt}>`,O=document,ot=()=>O.createComment(""),it=r=>r===null||typeof r!="object"&&typeof r!="function",Xt=Array.isArray,xe=r=>Xt(r)||typeof r?.[Symbol.iterator]=="function",Jt=`[
2
+ \f\r]`,st=/<(?:(!--|\/[^a-zA-Z])|(\/?[a-zA-Z][^>\s]*)|(\/?$))/g,ye=/-->/g,$e=/>/g,T=RegExp(`>|${Jt}(?:([^\\s"'>=/]+)(${Jt}*=${Jt}*(?:[^
3
+ \f\r"'\`<>=]|("|')|))|$)`,"g"),be=/'/g,_e=/"/g,Ae=/^(?:script|style|textarea|title)$/i,te=r=>(t,...e)=>({_$litType$:r,strings:t,values:e}),x=te(1),Yr=te(2),Xr=te(3),M=Symbol.for("lit-noChange"),f=Symbol.for("lit-nothing"),we=new WeakMap,N=O.createTreeWalker(O,129);function ve(r,t){if(!Xt(r)||!r.hasOwnProperty("raw"))throw Error("invalid template strings array");return ge!==void 0?ge.createHTML(t):t}var Se=(r,t)=>{let e=r.length-1,s=[],o,i=t===2?"<svg>":t===3?"<math>":"",n=st;for(let h=0;h<e;h++){let a=r[h],p,d,l=-1,_=0;for(;_<a.length&&(n.lastIndex=_,d=n.exec(a),d!==null);)_=n.lastIndex,n===st?d[1]==="!--"?n=ye:d[1]!==void 0?n=$e:d[2]!==void 0?(Ae.test(d[2])&&(o=RegExp("</"+d[2],"g")),n=T):d[3]!==void 0&&(n=T):n===T?d[0]===">"?(n=o??st,l=-1):d[1]===void 0?l=-2:(l=n.lastIndex-d[2].length,p=d[1],n=d[3]===void 0?T:d[3]==='"'?_e:be):n===_e||n===be?n=T:n===ye||n===$e?n=st:(n=T,o=void 0);let P=n===T&&r[h+1].startsWith("/>")?" ":"";i+=n===st?a+Xe:l>=0?(s.push(p),a.slice(0,l)+Qt+a.slice(l)+C+P):a+C+(l===-2?h:P)}return[ve(r,i+(r[e]||"<?>")+(t===2?"</svg>":t===3?"</math>":"")),s]},nt=class r{constructor({strings:t,_$litType$:e},s){let o;this.parts=[];let i=0,n=0,h=t.length-1,a=this.parts,[p,d]=Se(t,e);if(this.el=r.createElement(p,s),N.currentNode=this.el.content,e===2||e===3){let l=this.el.content.firstChild;l.replaceWith(...l.childNodes)}for(;(o=N.nextNode())!==null&&a.length<h;){if(o.nodeType===1){if(o.hasAttributes())for(let l of o.getAttributeNames())if(l.endsWith(Qt)){let _=d[n++],P=o.getAttribute(l).split(C),dt=/([.?@])?(.*)/.exec(_);a.push({type:1,index:i,name:dt[2],strings:P,ctor:dt[1]==="."?wt:dt[1]==="?"?xt:dt[1]==="@"?At:H}),o.removeAttribute(l)}else l.startsWith(C)&&(a.push({type:6,index:i}),o.removeAttribute(l));if(Ae.test(o.tagName)){let l=o.textContent.split(C),_=l.length-1;if(_>0){o.textContent=bt?bt.emptyScript:"";for(let P=0;P<_;P++)o.append(l[P],ot()),N.nextNode(),a.push({type:2,index:++i});o.append(l[_],ot())}}}else if(o.nodeType===8)if(o.data===Yt)a.push({type:2,index:i});else{let l=-1;for(;(l=o.data.indexOf(C,l+1))!==-1;)a.push({type:7,index:i}),l+=C.length-1}i++}}static createElement(t,e){let s=O.createElement("template");return s.innerHTML=t,s}};function U(r,t,e=r,s){if(t===M)return t;let o=s!==void 0?e._$Co?.[s]:e._$Cl,i=it(t)?void 0:t._$litDirective$;return o?.constructor!==i&&(o?._$AO?.(!1),i===void 0?o=void 0:(o=new i(r),o._$AT(r,e,s)),s!==void 0?(e._$Co??=[])[s]=o:e._$Cl=o),o!==void 0&&(t=U(r,o._$AS(r,t.values),o,s)),t}var _t=class{constructor(t,e){this._$AV=[],this._$AN=void 0,this._$AD=t,this._$AM=e}get parentNode(){return this._$AM.parentNode}get _$AU(){return this._$AM._$AU}u(t){let{el:{content:e},parts:s}=this._$AD,o=(t?.creationScope??O).importNode(e,!0);N.currentNode=o;let i=N.nextNode(),n=0,h=0,a=s[0];for(;a!==void 0;){if(n===a.index){let p;a.type===2?p=new q(i,i.nextSibling,this,t):a.type===1?p=new a.ctor(i,a.name,a.strings,this,t):a.type===6&&(p=new vt(i,this,t)),this._$AV.push(p),a=s[++h]}n!==a?.index&&(i=N.nextNode(),n++)}return N.currentNode=O,o}p(t){let e=0;for(let s of this._$AV)s!==void 0&&(s.strings!==void 0?(s._$AI(t,s,e),e+=s.strings.length-2):s._$AI(t[e])),e++}},q=class r{get _$AU(){return this._$AM?._$AU??this._$Cv}constructor(t,e,s,o){this.type=2,this._$AH=f,this._$AN=void 0,this._$AA=t,this._$AB=e,this._$AM=s,this.options=o,this._$Cv=o?.isConnected??!0}get parentNode(){let t=this._$AA.parentNode,e=this._$AM;return e!==void 0&&t?.nodeType===11&&(t=e.parentNode),t}get startNode(){return this._$AA}get endNode(){return this._$AB}_$AI(t,e=this){t=U(this,t,e),it(t)?t===f||t==null||t===""?(this._$AH!==f&&this._$AR(),this._$AH=f):t!==this._$AH&&t!==M&&this._(t):t._$litType$!==void 0?this.$(t):t.nodeType!==void 0?this.T(t):xe(t)?this.k(t):this._(t)}O(t){return this._$AA.parentNode.insertBefore(t,this._$AB)}T(t){this._$AH!==t&&(this._$AR(),this._$AH=this.O(t))}_(t){this._$AH!==f&&it(this._$AH)?this._$AA.nextSibling.data=t:this.T(O.createTextNode(t)),this._$AH=t}$(t){let{values:e,_$litType$:s}=t,o=typeof s=="number"?this._$AC(t):(s.el===void 0&&(s.el=nt.createElement(ve(s.h,s.h[0]),this.options)),s);if(this._$AH?._$AD===o)this._$AH.p(e);else{let i=new _t(o,this),n=i.u(this.options);i.p(e),this.T(n),this._$AH=i}}_$AC(t){let e=we.get(t.strings);return e===void 0&&we.set(t.strings,e=new nt(t)),e}k(t){Xt(this._$AH)||(this._$AH=[],this._$AR());let e=this._$AH,s,o=0;for(let i of t)o===e.length?e.push(s=new r(this.O(ot()),this.O(ot()),this,this.options)):s=e[o],s._$AI(i),o++;o<e.length&&(this._$AR(s&&s._$AB.nextSibling,o),e.length=o)}_$AR(t=this._$AA.nextSibling,e){for(this._$AP?.(!1,!0,e);t&&t!==this._$AB;){let s=t.nextSibling;t.remove(),t=s}}setConnected(t){this._$AM===void 0&&(this._$Cv=t,this._$AP?.(t))}},H=class{get tagName(){return this.element.tagName}get _$AU(){return this._$AM._$AU}constructor(t,e,s,o,i){this.type=1,this._$AH=f,this._$AN=void 0,this.element=t,this.name=e,this._$AM=o,this.options=i,s.length>2||s[0]!==""||s[1]!==""?(this._$AH=Array(s.length-1).fill(new String),this.strings=s):this._$AH=f}_$AI(t,e=this,s,o){let i=this.strings,n=!1;if(i===void 0)t=U(this,t,e,0),n=!it(t)||t!==this._$AH&&t!==M,n&&(this._$AH=t);else{let h=t,a,p;for(t=i[0],a=0;a<i.length-1;a++)p=U(this,h[s+a],e,a),p===M&&(p=this._$AH[a]),n||=!it(p)||p!==this._$AH[a],p===f?t=f:t!==f&&(t+=(p??"")+i[a+1]),this._$AH[a]=p}n&&!o&&this.j(t)}j(t){t===f?this.element.removeAttribute(this.name):this.element.setAttribute(this.name,t??"")}},wt=class extends H{constructor(){super(...arguments),this.type=3}j(t){this.element[this.name]=t===f?void 0:t}},xt=class extends H{constructor(){super(...arguments),this.type=4}j(t){this.element.toggleAttribute(this.name,!!t&&t!==f)}},At=class extends H{constructor(t,e,s,o,i){super(t,e,s,o,i),this.type=5}_$AI(t,e=this){if((t=U(this,t,e,0)??f)===M)return;let s=this._$AH,o=t===f&&s!==f||t.capture!==s.capture||t.once!==s.once||t.passive!==s.passive,i=t!==f&&(s===f||o);o&&this.element.removeEventListener(this.name,this,s),i&&this.element.addEventListener(this.name,this,t),this._$AH=t}handleEvent(t){typeof this._$AH=="function"?this._$AH.call(this.options?.host??this.element,t):this._$AH.handleEvent(t)}},vt=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){U(this,t)}},Ee={M:Qt,P:C,A:Yt,C:1,L:Se,R:_t,D:xe,V:U,I:q,H,N:xt,U:At,B:wt,F:vt},tr=Kt.litHtmlPolyfillSupport;tr?.(nt,q),(Kt.litHtmlVersions??=[]).push("3.3.0");var k=(r,t,e)=>{let s=e?.renderBefore??t,o=s._$litPart$;if(o===void 0){let i=e?.renderBefore??null;s._$litPart$=o=new q(t.insertBefore(ot(),i),i,void 0,e??{})}return o._$AI(r),o};var ee=globalThis,z=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=k(e,this.renderRoot,this.renderOptions)}connectedCallback(){super.connectedCallback(),this._$Do?.setConnected(!0)}disconnectedCallback(){super.disconnectedCallback(),this._$Do?.setConnected(!1)}render(){return M}};z._$litElement$=!0,z.finalized=!0,ee.litElementHydrateSupport?.({LitElement:z});var er=ee.litElementPolyfillSupport;er?.({LitElement:z});(ee.litElementVersions??=[]).push("4.2.0");var A={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},g={string:(r,t,e)=>(e===void 0?r.removeAttribute(t):r.setAttribute(t,e),!0),number:(r,t,e)=>(e===void 0?r.removeAttribute(t):r.setAttribute(t,e.toString()),!0),boolean:(r,t,e)=>(e?r.setAttribute(t,""):r.removeAttribute(t),!0),any:(r,t,e)=>{e==null?r.removeAttribute(t):typeof e=="string"?r.setAttribute(t,e):typeof e=="number"?r.setAttribute(t,e.toString()):typeof e=="boolean"?e===!0?r.setAttribute(t,""):r.removeAttribute(t):console.warn(`invalid attribute "${t}" type is "${typeof e}"`)},entries:(r,t)=>{for(let[e,s]of t)g.any(r,e,s)},record:(r,t)=>g.entries(r,Object.entries(t))};function Ce(r,t={}){let e=document.createElement(r);return g.record(e,t),e}function Pe(r){let t=document.createDocumentFragment();return k(r,t),t.firstElementChild}function B(r,t){let e=[];for(let[s,o]of Object.entries(t))if(typeof o=="function")r.addEventListener(s,o),e.push(()=>r.removeEventListener(s,o));else{let[i,n]=o;r.addEventListener(s,n,i),e.push(()=>r.removeEventListener(s,n))}return()=>e.forEach(s=>s())}function ke(r,t){let e=new MutationObserver(t);return e.observe(r,{attributes:!0}),()=>e.disconnect()}var Re=(r,t)=>new Proxy(t,{get:(e,s)=>{switch(t[s]){case String:return A.string(r,s);case Number:return A.number(r,s);case Boolean:return A.boolean(r,s);default:throw new Error(`invalid attribute type for "${s}"`)}},set:(e,s,o)=>{switch(t[s]){case String:return g.string(r,s,o);case Number:return g.number(r,s,o);case Boolean:return g.boolean(r,s,o);default:throw new Error(`invalid attribute type for "${s}"`)}}});var St=class{element;constructor(t){this.element=t}strings=new Proxy({},{get:(t,e)=>A.string(this.element,e),set:(t,e,s)=>g.string(this.element,e,s)});numbers=new Proxy({},{get:(t,e)=>A.number(this.element,e),set:(t,e,s)=>g.number(this.element,e,s)});booleans=new Proxy({},{get:(t,e)=>A.boolean(this.element,e),set:(t,e,s)=>g.boolean(this.element,e,s)})};function V(r){let t=new St(r);return{strings:t.strings,numbers:t.numbers,booleans:t.booleans,on:e=>ke(r,e),spec:e=>Re(r,e)}}V.get=A;V.set=g;function Te(r){return new re(r)}var re=class{tagName;#t=new Map;#e=[];constructor(t){this.tagName=t}attr(t,e=!0){return this.#t.set(t,e),this}attrs(t){for(let[e,s]of Object.entries(t))this.attr(e,s);return this}children(...t){return this.#e.push(...t),this}done(){let t=document.createElement(this.tagName);return g.entries(t,this.#t),t.append(...this.#e),t}};function I(r,t=document){let e=t.querySelector(r);if(!e)throw new Error(`element not found (${r})`);return e}function Et(r,t=document){return t.querySelector(r)}function Ct(r,t=document){return Array.from(t.querySelectorAll(r))}var Pt=class r{element;#t;constructor(t){this.element=t}in(t){return new r(typeof t=="string"?I(t,this.element):t)}require(t){return I(t,this.element)}maybe(t){return Et(t,this.element)}all(t){return Ct(t,this.element)}render(...t){return k(t,this.element)}get attrs(){return this.#t??=V(this.element)}events(t){return B(this.element,t)}};function Ne(r){return r.replace(/([a-zA-Z])(?=[A-Z])/g,"$1-").toLowerCase()}function Oe(r,t={}){let{soft:e=!1,upgrade:s=!0}=t;for(let[o,i]of Object.entries(r)){let n=Ne(o),h=customElements.get(n);e&&h||(customElements.define(n,i),s&&document.querySelectorAll(n).forEach(a=>{a.constructor===HTMLElement&&customElements.upgrade(a)}))}}function u(r,t=document){return I(r,t)}u.in=(r,t=document)=>new Pt(t).in(r);u.require=I;u.maybe=Et;u.all=Ct;u.el=Ce;u.elmer=Te;u.mk=Pe;u.events=B;u.attrs=V;u.register=Oe;u.render=(r,...t)=>k(t,r);var kt=class{#t;#e;constructor(t,e){this.#e=t,this.#t=e}attr(t,e=!0){return this.#e.attrs.set(t,e),this}attrs(t){for(let[e,s]of Object.entries(t))this.#e.attrs.set(e,s);return this}children(...t){return this.#e.children.push(...t),this}render(){return this.#t(this.#e)}};function W(r,t){let e,s,o=[];function i(){e=[],s&&clearTimeout(s),s=void 0,o=[]}return i(),((...n)=>{e=n,s&&clearTimeout(s);let h=new Promise((a,p)=>{o.push({resolve:a,reject:p})});return s=setTimeout(()=>{Promise.resolve().then(()=>t(...e)).then(a=>{for(let{resolve:p}of o)p(a);i()}).catch(a=>{for(let{reject:p}of o)p(a);i()})},r),h})}function Rt(r){let t,e=!1,s=()=>{e=!0,clearTimeout(t)},o=async()=>{e||(await r(s),!e&&(t=setTimeout(o,0)))};return o(),s}function at(){let r,t,e=new Promise((o,i)=>{r=o,t=i});function s(o){return o.then(r).catch(t),e}return{promise:e,resolve:r,reject:t,entangle:s}}var F=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 Tt=(r=0)=>new Promise(t=>setTimeout(t,r));function Me(){let r=new Set;async function t(...a){await Promise.all([...r].map(p=>p(...a)))}function e(a){return r.add(a),()=>{r.delete(a)}}async function s(...a){return t(...a)}function o(a){return e(a)}async function i(a){let{promise:p,resolve:d}=at(),l=o(async(..._)=>{a&&await a(..._),d(_),l()});return p}function n(){r.clear()}let h={pub:s,sub:o,publish:t,subscribe:e,on:e,next:i,clear:n};return Object.assign(o,h),Object.assign(s,h),h}function Nt(r){let t=Me();return r&&t.sub(r),t.sub}function se(r){let t=Me();return r&&t.sub(r),t.pub}var oe=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=Nt(),this.#e.set(t,e)),e}},y=globalThis[Symbol.for("e280.tracker")]??=new oe;var G=class{sneak;constructor(t){this.sneak=t}get(){return y.notifyRead(this),this.sneak}get value(){return this.get()}};var Z=class extends G{on=Nt();dispose(){this.on.clear()}};function Ot(r,t=r){let{seen:e,result:s}=y.observe(r),o=W(0,t),i=[],n=()=>i.forEach(h=>h());for(let h of e){let a=y.subscribe(h,o);i.push(a)}return{result:s,dispose:n}}function J(r,t){return r===t}var Mt=class extends Z{#t;constructor(t,e){let s=e?.compare??J,{result:o,dispose:i}=Ot(t,async()=>{let n=t();!s(this.sneak,n)&&(this.sneak=n,await Promise.all([y.notifyWrite(this),this.on.pub(n)]))});super(o),this.#t=i}toString(){return`(derived "${String(this.get())}")`}dispose(){super.dispose(),this.#t()}get core(){return this}fn(){let t=this;function e(){return t.get()}return e.core=t,e.get=t.get.bind(t),e.on=t.on,e.dispose=t.dispose.bind(t),e.fn=t.fn.bind(t),Object.defineProperty(e,"value",{get:()=>t.value}),Object.defineProperty(e,"sneak",{get:()=>t.sneak}),e}};var Ut=class extends G{#t;#e;#r=!1;#s;constructor(t,e){super(void 0),this.#t=t,this.#e=e?.compare??J}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,y.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 Ht=class extends Z{#t=!1;#e;constructor(t,e){super(t),this.#e=e?.compare??J}toString(){return`($signal "${String(this.get())}")`}async set(t,e=!1){let s=this.sneak;return this.sneak=t,(e||!this.#e(s,t))&&await this.publish(),t}get value(){return this.get()}set value(t){this.set(t)}async publish(){if(this.#t)throw new Error("forbid circularity");let t=this.sneak,e=Promise.resolve();try{this.#t=!0,e=Promise.all([y.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 rr(r,t){return new Ut(r,t).fn()}function Ue(r,t){return new Mt(r,t).fn()}function w(r,t){return new Ht(r,t).fn()}w.lazy=rr;w.derived=Ue;var R=class{#t=new F;effect(t,e){let{seen:s,result:o}=y.observe(t);for(let i of s)this.#t.guarantee(i,()=>y.subscribe(i,e));for(let[i,n]of this.#t)s.has(i)||(n(),this.#t.delete(i));return o}clear(){for(let t of this.#t.values())t();this.#t.clear()}};var K=class{element;response;#t;constructor(t,e){this.element=t,this.response=e}start(){this.#t||(this.#t=u.attrs(this.element).on(this.response))}stop(){this.#t&&this.#t(),this.#t=void 0}};function Lt(r,t){yt(r,or(t))}function or(r){let t=[];if(Array.isArray(r)){let e=new Set(r.flat(1/0).reverse());for(let s of e)t.unshift(D(s))}else r!==void 0&&t.push(D(r));return t}var L={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)=>L.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 j=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 L.all(...e)}signal;#t=0;#e=se();#r=se();constructor(t=["loading"]){this.signal=w(t)}get wait(){return new Promise((t,e)=>{this.#e.next().then(([s])=>t(s)),this.#r.next().then(([s])=>e(s))})}get then(){return this.wait.then.bind(this.wait)}get catch(){return this.wait.catch.bind(this.wait)}get finally(){return this.wait.finally.bind(this.wait)}async setLoading(){await this.signal.set(["loading"])}async setReady(t){await this.signal.set(["ready",t]),await this.#e(t)}async setError(t){await this.signal.set(["error",t]),await this.#r(t)}async promise(t){let e=++this.#t;await this.setLoading();try{let s=await t;return e===this.#t&&await this.setReady(s),s}catch(s){console.error(s),e===this.#t&&await this.setError(s)}}async load(t){return this.promise(t())}get pod(){return this.signal.get()}set pod(t){this.signal.set(t)}get status(){return this.signal.get()[0]}get value(){return L.value(this.signal.get())}get error(){return L.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 L.select(this.signal.get(),t)}morph(t){return L.morph(this.pod,t)}};var jt=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 He(r){let t=u.attrs(r.element);function e(s){return r.once(()=>t.spec(s))}return e.strings=t.strings,e.numbers=t.numbers,e.booleans=t.booleans,e.spec=s=>r.once(()=>t.spec(s)),e.on=s=>r.mount(()=>t.on(s)),e}var ct=Symbol(),ht=Symbol(),pt=Symbol(),Q=class{element;shadow;renderNow;render;attrs;#t=0;#e=0;#r=new F;#s=at();#o=new jt;[ct](t){this.#t++,this.#e=0,this.#s=at();let e=t();return this.#s.resolve(),e}[ht](){this.#o.unmountAll()}[pt](){this.#o.remountAll()}constructor(t,e,s,o){this.element=t,this.shadow=e,this.renderNow=s,this.render=o,this.attrs=He(this)}get renderCount(){return this.#t}get rendered(){return this.#s.promise}name(t){this.once(()=>this.element.setAttribute("view",t))}styles(...t){this.once(()=>Lt(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(),()=>{}])}events(t){return this.mount(()=>B(this.element,t))}op=(()=>{let t=this;function e(s){return t.once(()=>j.load(s))}return e.load=e,e.promise=s=>this.once(()=>j.promise(s)),e})();signal=(()=>{let t=this;function e(s,o){return t.once(()=>w(s,o))}return e.derived=function(o,i){return t.once(()=>w.derived(o,i))},e.lazy=function(o,i){return t.once(()=>w.lazy(o,i))},e})();derived(t,e){return this.once(()=>w.derived(t,e))}lazy(t,e){return this.once(()=>w.lazy(t,e))}};var v=class extends HTMLElement{static styles;shadow;#t;#e=0;#r=new R;#s=new K(this,()=>this.update());createShadow(){return this.attachShadow({mode:"open"})}constructor(){super(),this.shadow=this.createShadow(),this.#t=new Q(this,this.shadow,this.updateNow,this.update)}render(t){}updateNow=()=>{this.#t[ct](()=>{u.render(this.shadow,this.#r.effect(()=>this.render(this.#t),this.update))})};update=W(0,this.updateNow);connectedCallback(){if(this.#e===0){let t=this.constructor.styles;t&&Lt(this.shadow,t),this.updateNow()}else this.#t[pt]();this.#s.start(),this.#e++}disconnectedCallback(){this.#t[ht](),this.#r.clear(),this.#s.stop()}};var ut=class{props;attrs=new Map;children=[];constructor(t){this.props=t}};function Le(r,t,e,s){return class extends t{static view=Y(s,r);#t=new R;createShadow(){return this.attachShadow(r)}render(i){return s(i)(...this.#t.effect(()=>e(this),()=>this.update()))}}}var{I:hn}=Ee;var je=r=>r.strings===void 0;var De={ATTRIBUTE:1,CHILD:2,PROPERTY:3,BOOLEAN_ATTRIBUTE:4,EVENT:5,ELEMENT:6},ie=r=>(...t)=>({_$litDirective$:r,values:t}),Dt=class{constructor(t){}get _$AU(){return this._$AM._$AU}_$AT(t,e,s){this._$Ct=t,this._$AM=e,this._$Ci=s}_$AS(t,e){return this.update(t,e)}update(t,e){return this.render(...e)}};var 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},qt=r=>{let t,e;do{if((t=r._$AM)===void 0)break;e=t._$AN,e.delete(r),r=t}while(e?.size===0)},qe=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),ar(t)}};function ir(r){this._$AN!==void 0?(qt(this),this._$AM=r,qe(this)):this._$AM=r}function nr(r,t=!1,e=0){let s=this._$AH,o=this._$AN;if(o!==void 0&&o.size!==0)if(t)if(Array.isArray(s))for(let i=e;i<s.length;i++)lt(s[i],!1),qt(s[i]);else s!=null&&(lt(s,!1),qt(s));else lt(this,r)}var ar=r=>{r.type==De.CHILD&&(r._$AP??=nr,r._$AQ??=ir)},zt=class extends Dt{constructor(){super(...arguments),this._$AN=void 0}_$AT(t,e,s){super._$AT(t,e,s),qe(this),this.isConnected=t._$AU}_$AO(t,e=!0){t!==this.isConnected&&(this.isConnected=t,t?this.reconnected?.():this.disconnected?.()),e&&(lt(this,t),qt(this))}setValue(t){if(je(this._$Ct))this._$Ct._$AI(t,this);else{let e=[...this._$Ct._$AH];e[this._$Ci]=t,this._$Ct._$AI(e,this,0)}}disconnected(){}reconnected(){}};var Bt=class r extends HTMLElement{static#t=!1;static make(){return this.#t||(u.register({SlyView:r},{soft:!0,upgrade:!0}),this.#t=!0),document.createElement("sly-view")}};var Vt=class{viewFn;settings;#t=Bt.make();#e=new R;#r;#s;#o;#i=new K(this.#t,()=>this.#a());constructor(t,e){this.viewFn=t,this.settings=e,this.#s=this.#t.attachShadow(this.settings),this.#r=new Q(this.#t,this.#s,this.#n,this.#a)}update(t){return this.#o=t,this.#n(),this.#t}#n=()=>{this.#r[ct](()=>{let t=this.#e.effect(()=>this.viewFn(this.#r)(...this.#o.props),()=>this.#a());g.entries(this.#t,this.#o.attrs),u.render(this.#s,t),u.render(this.#t,this.#o.children),this.#i.start()})};#a=W(0,this.#n);disconnected(){this.#r[ht](),this.#e.clear(),this.#i.stop()}reconnected(){this.#r[pt](),this.#i.start()}};function ze(r,t){return ie(class extends zt{#t=new Vt(r,t);render(s){return this.#t.update(s)}disconnected(){this.#t.disconnected()}reconnected(){this.#t.reconnected()}})}function Y(r,t){let e=ze(r,t);function s(...o){return e(new ut(o))}return s.props=(...o)=>new kt(new ut(o),e),s.transmute=o=>Y(n=>{let h=r(n);return(...a)=>h(...o(...a))},t),s.component=(o=v)=>({props:i=>Le(t,o,i,r)}),s}function b(r){return Y(r,{mode:"open"})}b.settings=r=>({render:t=>Y(t,r)});b.render=b;b.component=r=>b(t=>()=>r(t)).component(v).props(()=>[]);var S=$`
4
4
  @layer reset {
5
5
  * {
6
6
  margin: 0;
@@ -16,7 +16,7 @@ var ze=Object.defineProperty;var ce=(r,t)=>{for(var e in t)ze(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 oe=b(r=>(t,e)=>{r.name("counter"),r.styles(v,nr);let s=r.signal(t),o=()=>{s.value+=e};return x`
19
+ `;var ne=b(r=>(t,e)=>{r.name("counter"),r.styles(S,cr);let s=r.signal(t),o=()=>{s.value+=e};return x`
20
20
  <slot></slot>
21
21
  <div>
22
22
  <span>${s()}</span>
@@ -24,7 +24,7 @@ var ze=Object.defineProperty;var ce=(r,t)=>{for(var e in t)ze(r,e,{get:t[e],enum
24
24
  <div>
25
25
  <button @click="${o}">++</button>
26
26
  </div>
27
- `}),qt=class extends oe.component(class extends A{attrs=l.attrs(this).spec({start:Number,step:Number})}).props(t=>[t.attrs.start??0,t.attrs.step??1]){},nr=$`
27
+ `}),It=class extends ne.component(class extends v{attrs=u.attrs(this).spec({start:Number,step:Number})}).props(t=>[t.attrs.start??0,t.attrs.step??1]){},cr=$`
28
28
  :host {
29
29
  display: flex;
30
30
  justify-content: center;
@@ -34,23 +34,23 @@ var ze=Object.defineProperty;var ce=(r,t)=>{for(var e in t)ze(r,e,{get:t[e],enum
34
34
  button {
35
35
  padding: 0.2em 0.5em;
36
36
  }
37
- `;var ut={};ce(ut,{AsciiAnim:()=>je,ErrorDisplay:()=>ae,anims:()=>ne,make:()=>Br,makeAsciiAnim:()=>c,mock:()=>qr});var ne={};ce(ne,{arrow:()=>pr,bar:()=>ur,bar2:()=>lr,bar3:()=>dr,bar4:()=>mr,bin:()=>kr,binary:()=>Tr,binary2:()=>Rr,block:()=>fr,block2:()=>gr,brackets:()=>_r,brackets2:()=>xr,braille:()=>hr,bright:()=>Lr,clock:()=>Mr,cylon:()=>br,dots:()=>Ar,dots2:()=>vr,earth:()=>ie,fistbump:()=>Ur,kiss:()=>Or,lock:()=>Hr,moon:()=>Dr,pie:()=>$r,pulseblue:()=>Nr,runner:()=>yr,slider:()=>wr,speaker:()=>jr,spinner:()=>cr,wave:()=>Sr,wavepulse:()=>Cr,wavepulse2:()=>Pr,wavescrub:()=>Er});function c(r,t){return()=>je({hz:r,frames:t})}var je=b(r=>({hz:t,frames:e})=>{r.name("loading"),r.styles(v,ar);let s=r.signal(0);return r.mount(()=>Ct(async()=>{await Pt(1e3/t);let o=s.get()+1;s.set(o>=e.length?0:o)})),e.at(s.get())}),ar=$`
37
+ `;var mt={};pe(mt,{AsciiAnim:()=>Be,ErrorDisplay:()=>he,anims:()=>ce,make:()=>Vr,makeAsciiAnim:()=>c,mock:()=>Ir});var ce={};pe(ce,{arrow:()=>lr,bar:()=>mr,bar2:()=>dr,bar3:()=>fr,bar4:()=>gr,bin:()=>Tr,binary:()=>Nr,binary2:()=>Or,block:()=>yr,block2:()=>$r,brackets:()=>Ar,brackets2:()=>vr,braille:()=>ur,bright:()=>Dr,clock:()=>Hr,cylon:()=>wr,dots:()=>Sr,dots2:()=>Er,earth:()=>ae,fistbump:()=>Lr,kiss:()=>Ur,lock:()=>jr,moon:()=>zr,pie:()=>_r,pulseblue:()=>Mr,runner:()=>br,slider:()=>xr,speaker:()=>qr,spinner:()=>pr,wave:()=>Cr,wavepulse:()=>kr,wavepulse2:()=>Rr,wavescrub:()=>Pr});function c(r,t){return()=>Be({hz:r,frames:t})}var Be=b(r=>({hz:t,frames:e})=>{r.name("loading"),r.styles(S,hr);let s=r.signal(0);return r.mount(()=>Rt(async()=>{await Tt(1e3/t);let o=s.get()+1;s.set(o>=e.length?0:o)})),e.at(s.get())}),hr=$`
38
38
  :host {
39
39
  font-family: monospace;
40
40
  white-space: pre;
41
41
  user-select: none;
42
42
  }
43
- `;var d=20,K=10,Q=4,cr=c(d,["|","/","-","\\"]),hr=c(d,["\u2808","\u2810","\u2820","\u2880","\u2840","\u2804","\u2802","\u2801"]),pr=c(d,["\u2B06\uFE0F","\u2197\uFE0F","\u27A1\uFE0F","\u2198\uFE0F","\u2B07\uFE0F","\u2199\uFE0F","\u2B05\uFE0F","\u2196\uFE0F"]),ur=c(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"]),lr=c(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"]),dr=c(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"]),mr=c(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"]),fr=c(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"]),gr=c(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"]),yr=c(Q,["\u{1F6B6}","\u{1F3C3}"]),$r=c(K,["\u25F7","\u25F6","\u25F5","\u25F4"]),br=c(d,["=----","-=---","--=--","---=-","----=","----=","---=-","--=--","-=---","=----"]),wr=c(d,["o----","-o---","--o--","---o-","----o","----o","---o-","--o--","-o---","o----"]),_r=c(K,["[ ]","[ ]","[= ]","[== ]","[===]","[ ==]","[ =]"]),xr=c(K,["[ ]","[ ]","[= ]","[== ]","[===]","[ ==]","[ =]","[ ]","[ ]","[ =]","[ ==]","[===]","[== ]","[= ]"]),Ar=c(K,[" "," ",". ",".. ","..."," .."," ."]),vr=c(d,[". ",". ",".. ","..."," .."," ."," ."," ..","...",".. "]),Sr=c(d,[".....",".....",":....","::...",":::..","::::.",":::::",":::::",".::::","..:::","...::","....:"]),Er=c(d,[":....",":....","::...",".::..","..::.","...::","....:","....:","...::","..::.",".::..","::..."]),Cr=c(d,[".....",".....","..:..",".:::.",".:::.",":::::",":::::","::.::",":...:"]),Pr=c(d,[".....",".....","..:..",".:::.",".:::.",":::::",":::::","::.::",":...:",".....",".....",":...:","::.::",":::::",":::::",".:::.",".:::.","..:.."]),kr=c(d,["000","100","110","111","011","001"]),Tr=c(d,["11111","01111","00111","10011","11001","01100","00110","10011","11001","11100","11110"]),Rr=c(d,["11111","01111","10111","11011","11101","11110","11111","11110","11101","11011","10111","01111"]),Nr=c(Q,["\u{1F539}","\u{1F535}"]),Or=c(K,["\u{1F642}","\u{1F642}","\u{1F617}","\u{1F619}","\u{1F618}","\u{1F618}","\u{1F619}"]),Mr=c(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}"]),Ur=c(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}"]),ie=c(Q,["\u{1F30E}","\u{1F30F}","\u{1F30D}"]),Hr=c(Q,["\u{1F513}","\u{1F512}"]),Lr=c(Q,["\u{1F505}","\u{1F506}"]),jr=c(Q,["\u{1F508}","\u{1F508}","\u{1F509}","\u{1F50A}","\u{1F50A}","\u{1F509}"]),Dr=c(K,["\u{1F311}","\u{1F311}","\u{1F311}","\u{1F318}","\u{1F317}","\u{1F316}","\u{1F315}","\u{1F314}","\u{1F313}","\u{1F312}"]);var ae=b(r=>t=>(r.name("error"),r.styles(v,zr),typeof t=="string"?t:t instanceof Error?x`<strong>${t.name}:</strong> <span>${t.message}</span>`:"error")),zr=$`
43
+ `;var m=20,X=10,tt=4,pr=c(m,["|","/","-","\\"]),ur=c(m,["\u2808","\u2810","\u2820","\u2880","\u2840","\u2804","\u2802","\u2801"]),lr=c(m,["\u2B06\uFE0F","\u2197\uFE0F","\u27A1\uFE0F","\u2198\uFE0F","\u2B07\uFE0F","\u2199\uFE0F","\u2B05\uFE0F","\u2196\uFE0F"]),mr=c(m,["\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"]),dr=c(m,["\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"]),fr=c(m,["\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"]),gr=c(m,["\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"]),yr=c(m,["\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=c(m,["\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"]),br=c(tt,["\u{1F6B6}","\u{1F3C3}"]),_r=c(X,["\u25F7","\u25F6","\u25F5","\u25F4"]),wr=c(m,["=----","-=---","--=--","---=-","----=","----=","---=-","--=--","-=---","=----"]),xr=c(m,["o----","-o---","--o--","---o-","----o","----o","---o-","--o--","-o---","o----"]),Ar=c(X,["[ ]","[ ]","[= ]","[== ]","[===]","[ ==]","[ =]"]),vr=c(X,["[ ]","[ ]","[= ]","[== ]","[===]","[ ==]","[ =]","[ ]","[ ]","[ =]","[ ==]","[===]","[== ]","[= ]"]),Sr=c(X,[" "," ",". ",".. ","..."," .."," ."]),Er=c(m,[". ",". ",".. ","..."," .."," ."," ."," ..","...",".. "]),Cr=c(m,[".....",".....",":....","::...",":::..","::::.",":::::",":::::",".::::","..:::","...::","....:"]),Pr=c(m,[":....",":....","::...",".::..","..::.","...::","....:","....:","...::","..::.",".::..","::..."]),kr=c(m,[".....",".....","..:..",".:::.",".:::.",":::::",":::::","::.::",":...:"]),Rr=c(m,[".....",".....","..:..",".:::.",".:::.",":::::",":::::","::.::",":...:",".....",".....",":...:","::.::",":::::",":::::",".:::.",".:::.","..:.."]),Tr=c(m,["000","100","110","111","011","001"]),Nr=c(m,["11111","01111","00111","10011","11001","01100","00110","10011","11001","11100","11110"]),Or=c(m,["11111","01111","10111","11011","11101","11110","11111","11110","11101","11011","10111","01111"]),Mr=c(tt,["\u{1F539}","\u{1F535}"]),Ur=c(X,["\u{1F642}","\u{1F642}","\u{1F617}","\u{1F619}","\u{1F618}","\u{1F618}","\u{1F619}"]),Hr=c(m,["\u{1F550}","\u{1F551}","\u{1F552}","\u{1F553}","\u{1F554}","\u{1F555}","\u{1F556}","\u{1F557}","\u{1F558}","\u{1F559}","\u{1F55A}","\u{1F55B}"]),Lr=c(m,["\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}"]),ae=c(tt,["\u{1F30E}","\u{1F30F}","\u{1F30D}"]),jr=c(tt,["\u{1F513}","\u{1F512}"]),Dr=c(tt,["\u{1F505}","\u{1F506}"]),qr=c(tt,["\u{1F508}","\u{1F508}","\u{1F509}","\u{1F50A}","\u{1F50A}","\u{1F509}"]),zr=c(X,["\u{1F311}","\u{1F311}","\u{1F311}","\u{1F318}","\u{1F317}","\u{1F316}","\u{1F315}","\u{1F314}","\u{1F313}","\u{1F312}"]);var he=b(r=>t=>(r.name("error"),r.styles(S,Br),typeof t=="string"?t:t instanceof Error?x`<strong>${t.name}:</strong> <span>${t.message}</span>`:"error")),Br=$`
44
44
  :host {
45
45
  font-family: monospace;
46
46
  color: red;
47
47
  }
48
- `;function Br(r=ie,t=e=>ae(e)){return(e,s)=>e.select({loading:r,ready:s,error:t})}function qr(){return(r,t)=>r.select({ready:t,loading:()=>"[loading]",error:()=>"[error]"})}var De=b(r=>()=>{r.name("loaders"),r.styles(v,Vr);let t=r.once(()=>L.loading());return r.once(()=>Object.entries(ut.anims).map(([s,o])=>({key:s,loader:ut.make(o)}))).map(({key:s,loader:o})=>x`
48
+ `;function Vr(r=ae,t=e=>he(e)){return(e,s)=>e.select({loading:r,ready:s,error:t})}function Ir(){return(r,t)=>r.select({ready:t,loading:()=>"[loading]",error:()=>"[error]"})}var Ve=b(r=>()=>{r.name("loaders"),r.styles(S,Wr);let t=r.once(()=>j.loading());return r.once(()=>Object.entries(mt.anims).map(([s,o])=>({key:s,loader:mt.make(o)}))).map(({key:s,loader:o})=>x`
49
49
  <div data-anim="${s}">
50
50
  <span>${s}</span>
51
51
  <span>${o(t,()=>null)}</span>
52
52
  </div>
53
- `)}),Vr=$`
53
+ `)}),Wr=$`
54
54
  :host {
55
55
  display: flex;
56
56
  flex-direction: row;
@@ -91,19 +91,19 @@ div {
91
91
  min-height: 2.5em;
92
92
  }
93
93
  }
94
- `;var Vt=class extends b.component(t=>(t.name("demo"),t.styles(v,Ir),x`
95
- ${oe.props(768,3).children("view").render()}
96
- ${De()}
97
- `)){},Ir=$`
94
+ `;var Wt=class extends b.component(t=>(t.name("demo"),t.styles(S,Fr),x`
95
+ ${ne.props(768,3).children("view").render()}
96
+ ${Ve()}
97
+ `)){},Fr=$`
98
98
  :host {
99
99
  display: flex;
100
100
  flex-direction: column;
101
101
  align-items: center;
102
102
  gap: 1em;
103
103
  }
104
- `;var It=class extends A{static styles=$`span{color:orange}`;attrs=l.attrs(this).spec({value:Number});something={whatever:"rofl"};render(t){let{value:e=1}=this.attrs,s=t.signal(0);return t.mount(()=>Ct(async()=>{await Pt(10),await s(s()+1)})),x`
104
+ `;var Ft=class extends v{static styles=$`span{color:orange}`;attrs=u.attrs(this).spec({value:Number});something={whatever:"rofl"};render(t){let{value:e=1}=this.attrs,s=t.signal(0);return t.mount(()=>Rt(async()=>{await Tt(10),await s(s()+1)})),x`
105
105
  <span>${s()*e}</span>
106
- `}};l.register({DemoComponent:Vt,CounterComponent:qt,FastcountElement:It});console.log("\u{1F99D} sly");
106
+ `}};u.register({DemoComponent:Wt,CounterComponent:It,FastcountElement:Ft});console.log("\u{1F99D} sly");
107
107
  /*! Bundled license information:
108
108
 
109
109
  @lit/reactive-element/css-tag.js: