sinho 0.3.4 → 0.3.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/bundle.d.ts CHANGED
@@ -496,36 +496,35 @@ interface HtmlProps<in E> extends DomProps<E> {
496
496
  [name: string]: any;
497
497
  }
498
498
  interface SvgProps<in E> extends HtmlProps<E> {
499
- accentHeight?: MaybeSignal<number | string | undefined>;
499
+ "accent-height"?: MaybeSignal<number | string | undefined>;
500
500
  accumulate?: MaybeSignal<"none" | "sum" | undefined>;
501
501
  additive?: MaybeSignal<"replace" | "sum" | undefined>;
502
- alignmentBaseline?: MaybeSignal<"auto" | "baseline" | "before-edge" | "text-before-edge" | "middle" | "central" | "after-edge" | "text-after-edge" | "ideographic" | "alphabetic" | "hanging" | "mathematical" | "inherit" | undefined>;
503
- allowReorder?: MaybeSignal<"no" | "yes" | undefined>;
502
+ "alignment-baseline"?: MaybeSignal<"auto" | "baseline" | "before-edge" | "text-before-edge" | "middle" | "central" | "after-edge" | "text-after-edge" | "ideographic" | "alphabetic" | "hanging" | "mathematical" | "inherit" | undefined>;
503
+ "allow-reorder"?: MaybeSignal<"no" | "yes" | undefined>;
504
504
  alphabetic?: MaybeSignal<number | string | undefined>;
505
505
  amplitude?: MaybeSignal<number | string | undefined>;
506
- arabicForm?: MaybeSignal<"initial" | "medial" | "terminal" | "isolated" | undefined>;
506
+ "arabic-form"?: MaybeSignal<"initial" | "medial" | "terminal" | "isolated" | undefined>;
507
507
  ascent?: MaybeSignal<number | string | undefined>;
508
508
  attributeName?: MaybeSignal<string | undefined>;
509
509
  attributeType?: MaybeSignal<string | undefined>;
510
- autoReverse?: MaybeSignal<number | string | undefined>;
511
510
  azimuth?: MaybeSignal<number | string | undefined>;
512
511
  baseFrequency?: MaybeSignal<number | string | undefined>;
513
- baselineShift?: MaybeSignal<number | string | undefined>;
512
+ "baseline-shift"?: MaybeSignal<number | string | undefined>;
514
513
  baseProfile?: MaybeSignal<number | string | undefined>;
515
514
  bbox?: MaybeSignal<number | string | undefined>;
516
515
  begin?: MaybeSignal<number | string | undefined>;
517
516
  bias?: MaybeSignal<number | string | undefined>;
518
517
  by?: MaybeSignal<number | string | undefined>;
519
518
  calcMode?: MaybeSignal<number | string | undefined>;
520
- capHeight?: MaybeSignal<number | string | undefined>;
519
+ "cap-height"?: MaybeSignal<number | string | undefined>;
521
520
  clip?: MaybeSignal<number | string | undefined>;
522
- clipPath?: MaybeSignal<string | undefined>;
521
+ "clip-path"?: MaybeSignal<string | undefined>;
523
522
  clipPathUnits?: MaybeSignal<number | string | undefined>;
524
- clipRule?: MaybeSignal<number | string | undefined>;
525
- colorInterpolation?: MaybeSignal<number | string | undefined>;
526
- colorInterpolationFilters?: MaybeSignal<"auto" | "sRGB" | "linearRGB" | "inherit" | undefined>;
527
- colorProfile?: MaybeSignal<number | string | undefined>;
528
- colorRendering?: MaybeSignal<number | string | undefined>;
523
+ "clip-rule"?: MaybeSignal<number | string | undefined>;
524
+ "color-interpolation"?: MaybeSignal<number | string | undefined>;
525
+ "color-interpolation-filters"?: MaybeSignal<"auto" | "sRGB" | "linearRGB" | "inherit" | undefined>;
526
+ "color-profile"?: MaybeSignal<number | string | undefined>;
527
+ "color-rendering"?: MaybeSignal<number | string | undefined>;
529
528
  contentScriptType?: MaybeSignal<number | string | undefined>;
530
529
  contentStyleType?: MaybeSignal<number | string | undefined>;
531
530
  cursor?: MaybeSignal<number | string | undefined>;
@@ -538,49 +537,49 @@ interface SvgProps<in E> extends HtmlProps<E> {
538
537
  direction?: MaybeSignal<number | string | undefined>;
539
538
  display?: MaybeSignal<number | string | undefined>;
540
539
  divisor?: MaybeSignal<number | string | undefined>;
541
- dominantBaseline?: MaybeSignal<number | string | undefined>;
540
+ "dominant-baseline"?: MaybeSignal<number | string | undefined>;
542
541
  dur?: MaybeSignal<number | string | undefined>;
543
542
  dx?: MaybeSignal<number | string | undefined>;
544
543
  dy?: MaybeSignal<number | string | undefined>;
545
544
  edgeMode?: MaybeSignal<number | string | undefined>;
546
545
  elevation?: MaybeSignal<number | string | undefined>;
547
- enableBackground?: MaybeSignal<number | string | undefined>;
546
+ "enable-background"?: MaybeSignal<number | string | undefined>;
548
547
  end?: MaybeSignal<number | string | undefined>;
549
548
  exponent?: MaybeSignal<number | string | undefined>;
550
549
  externalResourcesRequired?: MaybeSignal<number | string | undefined>;
551
550
  fill?: MaybeSignal<string | undefined>;
552
- fillOpacity?: MaybeSignal<number | string | undefined>;
553
- fillRule?: MaybeSignal<"nonzero" | "evenodd" | "inherit" | undefined>;
551
+ "fill-opacity"?: MaybeSignal<number | string | undefined>;
552
+ "fill-rule"?: MaybeSignal<"nonzero" | "evenodd" | "inherit" | undefined>;
554
553
  filter?: MaybeSignal<string | undefined>;
555
554
  filterRes?: MaybeSignal<number | string | undefined>;
556
555
  filterUnits?: MaybeSignal<number | string | undefined>;
557
- floodColor?: MaybeSignal<number | string | undefined>;
558
- floodOpacity?: MaybeSignal<number | string | undefined>;
556
+ "flood-color"?: MaybeSignal<number | string | undefined>;
557
+ "flood-opacity"?: MaybeSignal<number | string | undefined>;
559
558
  focusable?: MaybeSignal<number | string | undefined>;
560
- fontFamily?: MaybeSignal<string | undefined>;
561
- fontSize?: MaybeSignal<number | string | undefined>;
562
- fontSizeAdjust?: MaybeSignal<number | string | undefined>;
563
- fontStretch?: MaybeSignal<number | string | undefined>;
564
- fontStyle?: MaybeSignal<number | string | undefined>;
565
- fontVariant?: MaybeSignal<number | string | undefined>;
566
- fontWeight?: MaybeSignal<number | string | undefined>;
559
+ "font-family"?: MaybeSignal<string | undefined>;
560
+ "font-size"?: MaybeSignal<number | string | undefined>;
561
+ "font-size-adjust"?: MaybeSignal<number | string | undefined>;
562
+ "font-stretch"?: MaybeSignal<number | string | undefined>;
563
+ "font-style"?: MaybeSignal<number | string | undefined>;
564
+ "font-variant"?: MaybeSignal<number | string | undefined>;
565
+ "font-weight"?: MaybeSignal<number | string | undefined>;
567
566
  format?: MaybeSignal<number | string | undefined>;
568
567
  from?: MaybeSignal<number | string | undefined>;
569
568
  fx?: MaybeSignal<number | string | undefined>;
570
569
  fy?: MaybeSignal<number | string | undefined>;
571
570
  g1?: MaybeSignal<number | string | undefined>;
572
571
  g2?: MaybeSignal<number | string | undefined>;
573
- glyphName?: MaybeSignal<number | string | undefined>;
574
- glyphOrientationHorizontal?: MaybeSignal<number | string | undefined>;
575
- glyphOrientationVertical?: MaybeSignal<number | string | undefined>;
572
+ "glyph-name"?: MaybeSignal<number | string | undefined>;
573
+ "glyph-orientation-horizontal"?: MaybeSignal<number | string | undefined>;
574
+ "glyph-orientation-vertical"?: MaybeSignal<number | string | undefined>;
576
575
  glyphRef?: MaybeSignal<number | string | undefined>;
577
576
  gradientTransform?: MaybeSignal<string | undefined>;
578
577
  gradientUnits?: MaybeSignal<string | undefined>;
579
578
  hanging?: MaybeSignal<number | string | undefined>;
580
- horizAdvX?: MaybeSignal<number | string | undefined>;
581
- horizOriginX?: MaybeSignal<number | string | undefined>;
579
+ "horiz-adv-x"?: MaybeSignal<number | string | undefined>;
580
+ "horiz-origin-x"?: MaybeSignal<number | string | undefined>;
582
581
  ideographic?: MaybeSignal<number | string | undefined>;
583
- imageRendering?: MaybeSignal<number | string | undefined>;
582
+ "image-rendering"?: MaybeSignal<number | string | undefined>;
584
583
  in2?: MaybeSignal<number | string | undefined>;
585
584
  in?: MaybeSignal<string | undefined>;
586
585
  intercept?: MaybeSignal<number | string | undefined>;
@@ -596,14 +595,14 @@ interface SvgProps<in E> extends HtmlProps<E> {
596
595
  keySplines?: MaybeSignal<number | string | undefined>;
597
596
  keyTimes?: MaybeSignal<number | string | undefined>;
598
597
  lengthAdjust?: MaybeSignal<number | string | undefined>;
599
- letterSpacing?: MaybeSignal<number | string | undefined>;
600
- lightingColor?: MaybeSignal<number | string | undefined>;
598
+ "letter-spacing"?: MaybeSignal<number | string | undefined>;
599
+ "lighting-color"?: MaybeSignal<number | string | undefined>;
601
600
  limitingConeAngle?: MaybeSignal<number | string | undefined>;
602
601
  local?: MaybeSignal<number | string | undefined>;
603
- markerEnd?: MaybeSignal<string | undefined>;
602
+ "marker-end"?: MaybeSignal<string | undefined>;
604
603
  markerHeight?: MaybeSignal<number | string | undefined>;
605
- markerMid?: MaybeSignal<string | undefined>;
606
- markerStart?: MaybeSignal<string | undefined>;
604
+ "marker-mid"?: MaybeSignal<string | undefined>;
605
+ "marker-start"?: MaybeSignal<string | undefined>;
607
606
  markerUnits?: MaybeSignal<number | string | undefined>;
608
607
  markerWidth?: MaybeSignal<number | string | undefined>;
609
608
  mask?: MaybeSignal<string | undefined>;
@@ -620,15 +619,15 @@ interface SvgProps<in E> extends HtmlProps<E> {
620
619
  orientation?: MaybeSignal<number | string | undefined>;
621
620
  origin?: MaybeSignal<number | string | undefined>;
622
621
  overflow?: MaybeSignal<number | string | undefined>;
623
- overlinePosition?: MaybeSignal<number | string | undefined>;
624
- overlineThickness?: MaybeSignal<number | string | undefined>;
625
- paintOrder?: MaybeSignal<number | string | undefined>;
626
- panose1?: MaybeSignal<number | string | undefined>;
622
+ "overline-position"?: MaybeSignal<number | string | undefined>;
623
+ "overline-thickness"?: MaybeSignal<number | string | undefined>;
624
+ "paint-order"?: MaybeSignal<number | string | undefined>;
625
+ "panose-1"?: MaybeSignal<number | string | undefined>;
627
626
  pathLength?: MaybeSignal<number | string | undefined>;
628
627
  patternContentUnits?: MaybeSignal<string | undefined>;
629
628
  patternTransform?: MaybeSignal<number | string | undefined>;
630
629
  patternUnits?: MaybeSignal<string | undefined>;
631
- pointerEvents?: MaybeSignal<number | string | undefined>;
630
+ "pointer-events"?: MaybeSignal<number | string | undefined>;
632
631
  points?: MaybeSignal<string | undefined>;
633
632
  pointsAtX?: MaybeSignal<number | string | undefined>;
634
633
  pointsAtY?: MaybeSignal<number | string | undefined>;
@@ -640,7 +639,7 @@ interface SvgProps<in E> extends HtmlProps<E> {
640
639
  radius?: MaybeSignal<number | string | undefined>;
641
640
  refX?: MaybeSignal<number | string | undefined>;
642
641
  refY?: MaybeSignal<number | string | undefined>;
643
- renderingIntent?: MaybeSignal<number | string | undefined>;
642
+ "rendering-intent"?: MaybeSignal<number | string | undefined>;
644
643
  repeatCount?: MaybeSignal<number | string | undefined>;
645
644
  repeatDur?: MaybeSignal<number | string | undefined>;
646
645
  requiredExtensions?: MaybeSignal<number | string | undefined>;
@@ -652,7 +651,7 @@ interface SvgProps<in E> extends HtmlProps<E> {
652
651
  ry?: MaybeSignal<number | string | undefined>;
653
652
  scale?: MaybeSignal<number | string | undefined>;
654
653
  seed?: MaybeSignal<number | string | undefined>;
655
- shapeRendering?: MaybeSignal<number | string | undefined>;
654
+ "shape-rendering"?: MaybeSignal<number | string | undefined>;
656
655
  slope?: MaybeSignal<number | string | undefined>;
657
656
  spacing?: MaybeSignal<number | string | undefined>;
658
657
  specularConstant?: MaybeSignal<number | string | undefined>;
@@ -664,19 +663,19 @@ interface SvgProps<in E> extends HtmlProps<E> {
664
663
  stemh?: MaybeSignal<number | string | undefined>;
665
664
  stemv?: MaybeSignal<number | string | undefined>;
666
665
  stitchTiles?: MaybeSignal<number | string | undefined>;
667
- stopColor?: MaybeSignal<string | undefined>;
668
- stopOpacity?: MaybeSignal<number | string | undefined>;
669
- strikethroughPosition?: MaybeSignal<number | string | undefined>;
670
- strikethroughThickness?: MaybeSignal<number | string | undefined>;
666
+ "stop-color"?: MaybeSignal<string | undefined>;
667
+ "stop-opacity"?: MaybeSignal<number | string | undefined>;
668
+ "strikethrough-position"?: MaybeSignal<number | string | undefined>;
669
+ "strikethrough-thickness"?: MaybeSignal<number | string | undefined>;
671
670
  string?: MaybeSignal<number | string | undefined>;
672
671
  stroke?: MaybeSignal<string | undefined>;
673
- strokeDasharray?: MaybeSignal<number | string | undefined>;
674
- strokeDashoffset?: MaybeSignal<number | string | undefined>;
675
- strokeLinecap?: MaybeSignal<"butt" | "round" | "square" | "inherit" | undefined>;
676
- strokeLinejoin?: MaybeSignal<"miter" | "round" | "bevel" | "inherit" | undefined>;
677
- strokeMiterlimit?: MaybeSignal<number | string | undefined>;
678
- strokeOpacity?: MaybeSignal<number | string | undefined>;
679
- strokeWidth?: MaybeSignal<number | string | undefined>;
672
+ "stroke-dasharray"?: MaybeSignal<number | string | undefined>;
673
+ "stroke-dashoffset"?: MaybeSignal<number | string | undefined>;
674
+ "stroke-linecap"?: MaybeSignal<"butt" | "round" | "square" | "inherit" | undefined>;
675
+ "stroke-linejoin"?: MaybeSignal<"miter" | "round" | "bevel" | "inherit" | undefined>;
676
+ "stroke-miterlimit"?: MaybeSignal<number | string | undefined>;
677
+ "stroke-opacity"?: MaybeSignal<number | string | undefined>;
678
+ "stroke-width"?: MaybeSignal<number | string | undefined>;
680
679
  surfaceScale?: MaybeSignal<number | string | undefined>;
681
680
  systemLanguage?: MaybeSignal<number | string | undefined>;
682
681
  tableValues?: MaybeSignal<number | string | undefined>;
@@ -688,47 +687,36 @@ interface SvgProps<in E> extends HtmlProps<E> {
688
687
  textRendering?: MaybeSignal<number | string | undefined>;
689
688
  to?: MaybeSignal<number | string | undefined>;
690
689
  transform?: MaybeSignal<string | undefined>;
690
+ "transform-origin"?: MaybeSignal<string | undefined>;
691
691
  u1?: MaybeSignal<number | string | undefined>;
692
692
  u2?: MaybeSignal<number | string | undefined>;
693
- underlinePosition?: MaybeSignal<number | string | undefined>;
694
- underlineThickness?: MaybeSignal<number | string | undefined>;
693
+ "underline-position"?: MaybeSignal<number | string | undefined>;
694
+ "underline-thickness"?: MaybeSignal<number | string | undefined>;
695
695
  unicode?: MaybeSignal<number | string | undefined>;
696
- unicodeBidi?: MaybeSignal<number | string | undefined>;
697
- unicodeRange?: MaybeSignal<number | string | undefined>;
698
- unitsPerEm?: MaybeSignal<number | string | undefined>;
699
- vAlphabetic?: MaybeSignal<number | string | undefined>;
696
+ "unicode-bidi"?: MaybeSignal<number | string | undefined>;
697
+ "unicode-range"?: MaybeSignal<number | string | undefined>;
698
+ "units-per-em"?: MaybeSignal<number | string | undefined>;
699
+ "v-alphabetic"?: MaybeSignal<number | string | undefined>;
700
700
  values?: MaybeSignal<string | undefined>;
701
701
  vectorEffect?: MaybeSignal<number | string | undefined>;
702
702
  version?: MaybeSignal<string | undefined>;
703
- vertAdvY?: MaybeSignal<number | string | undefined>;
704
- vertOriginX?: MaybeSignal<number | string | undefined>;
705
- vertOriginY?: MaybeSignal<number | string | undefined>;
706
- vHanging?: MaybeSignal<number | string | undefined>;
707
- vIdeographic?: MaybeSignal<number | string | undefined>;
703
+ "vert-adv-y"?: MaybeSignal<number | string | undefined>;
704
+ "vert-origin-x"?: MaybeSignal<number | string | undefined>;
705
+ "vert-origin-y"?: MaybeSignal<number | string | undefined>;
706
+ "v-hanging"?: MaybeSignal<number | string | undefined>;
707
+ "v-ideographic"?: MaybeSignal<number | string | undefined>;
708
708
  viewBox?: MaybeSignal<string | undefined>;
709
709
  viewTarget?: MaybeSignal<number | string | undefined>;
710
710
  visibility?: MaybeSignal<number | string | undefined>;
711
- vMathematical?: MaybeSignal<number | string | undefined>;
711
+ "v-mathematical"?: MaybeSignal<number | string | undefined>;
712
712
  widths?: MaybeSignal<number | string | undefined>;
713
- wordSpacing?: MaybeSignal<number | string | undefined>;
713
+ "word-spacing"?: MaybeSignal<number | string | undefined>;
714
714
  writingMode?: MaybeSignal<number | string | undefined>;
715
715
  x1?: MaybeSignal<number | string | undefined>;
716
716
  x2?: MaybeSignal<number | string | undefined>;
717
717
  x?: MaybeSignal<number | string | undefined>;
718
718
  xChannelSelector?: MaybeSignal<string | undefined>;
719
- xHeight?: MaybeSignal<number | string | undefined>;
720
- xlinkActuate?: MaybeSignal<string | undefined>;
721
- xlinkArcrole?: MaybeSignal<string | undefined>;
722
- xlinkHref?: MaybeSignal<string | undefined>;
723
- xlinkRole?: MaybeSignal<string | undefined>;
724
- xlinkShow?: MaybeSignal<string | undefined>;
725
- xlinkTitle?: MaybeSignal<string | undefined>;
726
- xlinkType?: MaybeSignal<string | undefined>;
727
- xmlBase?: MaybeSignal<string | undefined>;
728
- xmlLang?: MaybeSignal<string | undefined>;
729
- xmlns?: MaybeSignal<string | undefined>;
730
- xmlnsXlink?: MaybeSignal<string | undefined>;
731
- xmlSpace?: MaybeSignal<string | undefined>;
719
+ "x-height"?: MaybeSignal<number | string | undefined>;
732
720
  y1?: MaybeSignal<number | string | undefined>;
733
721
  y2?: MaybeSignal<number | string | undefined>;
734
722
  y?: MaybeSignal<number | string | undefined>;
@@ -739,7 +727,9 @@ interface SvgProps<in E> extends HtmlProps<E> {
739
727
 
740
728
  type RemoveOn<S extends string> = S extends `on${infer R}` ? Uncapitalize<R> : never;
741
729
  type CamelCaseToKebabCase<S extends string> = S extends `${infer F}${infer R}` ? F extends Lowercase<F> ? `${F}${CamelCaseToKebabCase<R>}` : `-${Lowercase<F>}${CamelCaseToKebabCase<R>}` : Lowercase<S>;
730
+ type KebabCaseToCamelCase<S extends string> = S extends `${infer F}-${infer R}` ? `${F}${Capitalize<KebabCaseToCamelCase<R>>}` : Capitalize<S>;
742
731
  type JsxPropNameToEventName<S extends string> = CamelCaseToKebabCase<RemoveOn<S>>;
732
+ type EventNameToJsxProp<S extends string> = `on${Capitalize<KebabCaseToCamelCase<S>>}`;
743
733
 
744
734
  declare const contextSym: unique symbol;
745
735
  /**
@@ -938,8 +928,8 @@ declare abstract class ComponentInner<M extends Metadata> {
938
928
  connectedCallback(): void;
939
929
  disconnectedCallback(): void;
940
930
  attributeChangedCallback(name: string, oldValue: string | null, value: string | null): void;
941
- addEventListener<K extends keyof Events<M> & string>(type: JsxPropNameToEventName<K>, listener: (event: InstanceType<Events<M>[K]>) => void, options?: boolean | AddEventListenerOptions): void;
942
- removeEventListener<K extends keyof Events<M> & string>(type: JsxPropNameToEventName<K>, listener: (event: InstanceType<Events<M>[K]>) => void, options?: boolean | EventListenerOptions): void;
931
+ addEventListener<K extends JsxPropNameToEventName<keyof Events<M> & string>>(type: K, listener: (event: InstanceType<Events<M>[Extract<EventNameToJsxProp<K>, keyof Events<M>>]>) => void, options?: boolean | AddEventListenerOptions): void;
932
+ removeEventListener<K extends JsxPropNameToEventName<keyof Events<M> & string>>(type: K, listener: (event: InstanceType<Events<M>[Extract<EventNameToJsxProp<K>, keyof Events<M>>]>) => void, options?: boolean | EventListenerOptions): void;
943
933
  abstract render(): Template;
944
934
  }
945
935
  interface ComponentConstructor<M extends Metadata = {}> {
@@ -969,7 +959,7 @@ interface ComponentOptions {
969
959
  */
970
960
  declare const useMountEffect: (fn: () => Cleanup, deps?: SignalLike<unknown>[]) => void;
971
961
  type Component<M extends Metadata = {}> = {
972
- -readonly [K in keyof Props<M>]: Props<M>[K] extends Signal<infer T> ? T : never;
962
+ -readonly [K in keyof Props<M>]: Props<M>[K] extends Signal<infer T> ? T | undefined : never;
973
963
  } & ComponentInner<M> & HTMLElement;
974
964
  /**
975
965
  * Creates a new web component class.
package/dist/bundle.js CHANGED
@@ -547,7 +547,9 @@ const Component = ((tagNameOrMetadata, metadataOrOpts, optsParam) => {
547
547
  }
548
548
  Object.defineProperty(this, name, {
549
549
  get: getter.peek,
550
- set: (value) => setter(() => value, { force: true }),
550
+ set: (value) => setter(() => !context && value === undefined
551
+ ? meta._defaultOrContext
552
+ : value, { force: true }),
551
553
  });
552
554
  }
553
555
  else if (meta._tag == "e" && name.startsWith("on")) {
@@ -588,9 +590,7 @@ const Component = ((tagNameOrMetadata, metadataOrOpts, optsParam) => {
588
590
  this[prop.name] =
589
591
  value != null
590
592
  ? prop.meta.attribute.transform.call(this, value)
591
- : isContext(prop.meta._defaultOrContext)
592
- ? undefined
593
- : prop.meta._defaultOrContext;
593
+ : undefined;
594
594
  }
595
595
  }
596
596
  }
@@ -1 +1 @@
1
- const t=t=>({t:t,o:new Set,i:new Set,l:{...t?.l},u(t){const n=o;o=this;try{return t()}finally{o=n}},h(){[...this.i].forEach((t,n,e)=>{e[e.length-1-n].h()}),this.i=new Set,[...this.o].forEach((t,n,e)=>{const o=e[e.length-1-n];o.p?.(),o.u=()=>{},o._.forEach(t=>t.o.delete(o)),o._.clear()}),this.o=new Set}});let n,e,o=t(),s=!1;const r=()=>o,c=(t,o)=>{const r=()=>(!s&&n&&(n._.add(r),r.o.add(n)),r.peek());r.o=new Set,r.peek=()=>t;const c=(n,s)=>{const l={...o,...s};if(l.equals??=(t,n)=>t===n,e){const o="function"==typeof n?n(r.peek()):n;!l?.force&&l.equals(o,r.peek())||(l?.force?t=o:e.m.push(()=>t=o),l?.silent||r.o.forEach(t=>{t.v?e.S.add(t):e.o.add(t)}))}else i(()=>c(n,l))};return[r,c]},i=t=>{if(e)return t();e={m:[],o:new Set,S:new Set};try{const n=t();return l(),n}finally{e=void 0}},l=()=>{for(;e&&e.m.length+e.o.size+e.S.size>0;){e.o.forEach(t=>t.p?.()),e.m.forEach(t=>t()),e.m=[];const t=e.S.values().next().value??e.o.values().next().value;t&&(t.u(),e.S.delete(t),e.o.delete(t))}};let u=!1;const f=(t,e)=>{const r=!!e,c={M:o,v:u,_:new Set,u(){const o=n,c=s;n=this;try{this._.forEach(t=>t.o.delete(this)),this._.clear(),e&&(s=!1,e.forEach(t=>t())),s=r,this.p?.();const n=this.M.u(()=>i(t));this.p=n?()=>{this.M.u(()=>i(n)),this.p=null}:null}finally{n=o,s=c}}};o.o.add(c),c.u(),c._.size||c.p||o.o.delete(c)},a=(t,n)=>{const[e,o]=c(void 0,n);let s=!0;u=!0;try{f(()=>{o(t,s?{force:!0}:{}),s=!1})}finally{u=!1}return e},d=(n,s)=>{const r=e;e=void 0;const c=o,i=t(c);Object.assign(i.l,s?.details);try{c.i.add(i);return[i.u(n),()=>{c.i.delete(i),i.h()}]}finally{e=r}},h=(t,n)=>{const[e,o]=c(t,n);return e.set=o,e},p={upgrade:t=>()=>p.get(t),get:t=>"function"==typeof t?t():t,peek(t){const n=s;s=!0;try{return this.get(t)}finally{s=n}}},_=(t={})=>({k:[],C(t){return this.N?.next().value??t()},...t}),y=()=>{const t=r();return t.l.j??=_()},m=(t,n)=>{const e=y(),o=_({...e,...t}),[s,r]=d(n,{details:{j:o}});return f(()=>r),s},w=t=>(t[0]??"").toLowerCase()+t.slice(1).replace(/[A-Z]/g,t=>"-"+t.toLowerCase()),b=t=>t.startsWith("on:")?t.slice(3):w(t.slice(2)),g=Symbol(),v=(t,n)=>({[g]:Math.random().toString(36).slice(2),A:t,H:n}),S=t=>!!t?.[g],x=(t,n,e)=>{n.addEventListener(t[g],t=>{const n=p.get(e);void 0!==n&&(t.stopPropagation(),t.detail(n))})},M=t=>{const n=y();return a(()=>{let e=t.A;return n.L?.dispatchEvent(new CustomEvent(t[g],{detail:t=>e=t,bubbles:!0,composed:!0})),e})};var k;!function(t){t.forEach=(n,e)=>n.forEach(n=>Array.isArray(n)?t.forEach(n,e):e(n)),t.last=(n,e=n.length-1)=>{if(n.length)for(let o=e;o>=0;o--){const e=n[o];if(!Array.isArray(e))return e;const s=t.last(e);if(s)return s}}}(k||(k={}));const C=t=>({build(){const n=t();return n.build?.()??n}}),E=(t,n)=>({O:"p",T:t,...n}),N=(t=CustomEvent)=>({O:"e",D:t}),j=Symbol();let A;const H=(t,n)=>{A?A.push([t,n]):f(t,n)},L=(t,n,e)=>{const o="string"==typeof t?t:null,s="string"==typeof t?n:t,i=("string"==typeof t?e:n)??{},l=[],u=new Map;for(const t in s){const n=s[t];if("p"==n.O&&n.attribute){"function"==typeof n.attribute&&(n.attribute={transform:n.attribute});const e=n.attribute={name:w(t),static:!1,transform:t=>t,...n.attribute};u.set(e.name,{name:t,meta:n}),e.static||l.push(e.name)}}i.shadow??={mode:"open"};class a extends HTMLElement{static[j]={I:o};static observedAttributes=l;props={};events={};[j]={};constructor(){super();for(const t in s){const n=s[t];if("p"==n.O){const e=S(n.T)?n.T:null,[o,s]=c(e?void 0:n.T);this.props[t]=o,e&&x(e,this,o),Object.defineProperty(this,t,{get:o.peek,set:t=>s(()=>t,{force:!0})})}else if("e"==n.O&&t.startsWith("on")){const e=b(t);this.events[t]=t=>this.dispatchEvent(new n.D(e,t))}}}connectedCallback(){const t=(n=this,i.shadow?n.shadowRoot??n.attachShadow(i.shadow):n);var n;this[j].$=d(()=>m({P:!1,L:this,N:t.childNodes.values()},()=>{this[j].M=r();const n=A;A=[];try{k.forEach(this.render().build(),n=>{t.append(n)}),A.forEach(([t,n])=>f(t,n))}finally{A=n}}))[1]}disconnectedCallback(){this[j].$?.()}attributeChangedCallback(t,n,e){const o=u.get(t);o&&(this[o.name]=null!=e?o.meta.attribute.transform.call(this,e):S(o.meta.T)?void 0:o.meta.T)}}return a},O=t=>!!t?.[j],T=(...t)=>{const[n,e]="string"==typeof t[0]?[t[0],t.slice(1)]:["",t];for(const t of e)customElements.define(n+(t[j].I??w(t.name)),t)},D=/acit|ex(?:s|g|n|p|$)|rph|grid|ows|mnc|ntw|ine[ch]|zoo|^ord|itera/i,I=(t,n,e)=>{"-"==n[0]?t.style.setProperty(n,""+e):t.style[n]=null==e?"":"number"!=typeof e||D.test(n)?""+e:e+"px"},$=(t,n,e,o)=>{const s=null==e||!1===e&&!n.includes("-");if(n.startsWith("prop:"))t[n.slice(5)]=e;else if(n.startsWith("attr:"))n=n.slice(5),s?t.removeAttribute(n):t.setAttribute(n,e);else if(!["innerHTML","outerHTML"].includes(n)){if(!["tabIndex","role",...o?["width","height","href","list","form","download","rowSpan","colSpan"]:[]].includes(n)&&n in t)try{return void(t[n]=e)}catch(t){}"function"==typeof e||(s?t.removeAttribute(n):t.setAttribute(n,e))}},z=({text:t,marker:n})=>C(()=>{const e=y(),o=n&&e.C(()=>document.createComment("")),s=e.C(()=>document.createTextNode(""));return f(()=>{const n=""+(p.get(t)??"");s.textContent!=n&&(s.textContent=n)}),o?[o,s]:[s]}),P=({children:t})=>C(()=>Array.isArray(t)?t.flatMap(t=>P({children:t}).build()):null==t?[]:["object"==typeof t?t.build():z({text:t}).build()]),V=(t,n,e,o)=>{const{ref:s,style:c,children:l,dangerouslySetInnerHTML:u,...a}=e;for(const n in c??{}){const e=c[n];f(()=>{I(t,n,p.get(e))})}for(const n in a){const e=a[n];if(n.startsWith("on")){const o=r(),s=t=>{o.u(()=>i(()=>e(t)))},c=b(n);f(()=>(t.addEventListener(c,s),()=>t.removeEventListener(c,s)))}else f(()=>{$(t,n,p.get(e),o)})}return u&&f(()=>{const n=p.get(u).__html;t.innerHTML!=n&&(t.innerHTML=n)}),s&&f(()=>(s.set(t),()=>s.set(void 0))),null!=e.children&&k.forEach(m({P:n,N:t.childNodes.values()},()=>P({children:e.children}).build()),n=>t.append(n)),t},Z=(t,n={},e)=>(null!=e&&(n.children=e),O(t)?((t,n)=>C(()=>{const e=y().C(()=>new t);return customElements.upgrade(e),V(e,!1,n),[e]}))(t,n):"function"==typeof t?C(()=>t(n)):((t,n={})=>C(()=>{const e=y(),o="svg"==t||!!e.P;return[V(e.C(()=>o?document.createElementNS("http://www.w3.org/2000/svg",t):document.createElement(t)),(!o||"foreignObject"!==t)&&o,n,!0)]}))(t,n)),q=new Proxy(Z,{get:(t,n)=>(e,o)=>t(n,e,o)}),B=(t,n)=>{const[e,o]=c({V:[],Z:new Map},{force:!0});let s=new Map;return f(()=>{const e=[],r=s,c=((t,n)=>{const e=new Map;for(let o=0;o<t.length;o++){const s=n(t[o],o);if(e.has(s))throw Error(`Duplicate key '${s}'`);e.set(s,o)}return e})(t(),n),i=(t=NaN)=>e.map(t=>"r"==t.q?n=>n<t.B?n:n==t.B?NaN:n-1:"a"==t.q?n=>n<t.B?n:n+1:"m"==t.q?n=>t.F<=n&&n<t.G?n+1:n==t.G?t.F:n:t=>t).reduce((t,n)=>n(t),t);for(const t of r.keys()){const n=i(r.get(t));c.has(t)||e.push({q:"r",J:t,B:n})}for(let o=0;o<t().length;o++){const s=n(t()[o],o),c=i(r.get(s));isNaN(c)?e.push({q:"a",J:s,B:o}):c!=o&&e.push({q:"m",J:s,G:c,F:o})}e.length>0&&o({V:e,Z:c}),s=c}),e},F=t=>C(()=>{const n=y(),e=p.upgrade(t.each??[]),o=n.C(()=>document.createComment("")),s=t.key??((t,n)=>n),r=[o,[]],i=new Map,l=B(e,s),u=t=>k.last(r[1],t-1)??o;return f(()=>{for(const n of l().V)if("r"==n.q){const{K:t,$:e}=i.get(n.J)??{};e?.(),r[1].splice(n.B,1),k.forEach(t??[],t=>t.parentNode?.removeChild(t)),i.delete(n.J)}else if("a"==n.q){let o;const[,s]=d(()=>{const[s,i]=c(n.B),[a,d]=c(e()[n.B]);f(()=>{0<=s()&&s()<e().length&&d(()=>e()[s()])}),f(()=>{const t=l().Z.get(n.J);null!=t&&i(t)}),o=t.children?.(a,s,e).build()??[],r[1].splice(n.B,0,o);let h=u(n.B);k.forEach(o,t=>{h.parentNode?.insertBefore(t,h.nextSibling),h=t})});i.set(n.J,{K:o,$:s})}else if("m"==n.q){const{K:t}=i.get(n.J)??{};r[1].splice(n.G,1),r[1].splice(n.F,0,t??[]);let e=u(n.F);k.forEach(t??[],t=>{e.parentNode?.insertBefore(t,e.nextSibling),e=t})}},[l]),r}),G=t=>(y().k=[],J({condition:t.condition,children:t.children})),J=t=>{const n=y(),e=n.k,o=p.upgrade(t.condition),s=a(()=>e.every(t=>!t())&&o());return n.k=[...e,o],C(()=>m({k:[]},()=>{const e=n.C(()=>document.createComment("")),o=[e,[]],r=a(()=>s()?P({children:t.children}):null);let c=[];return f(()=>{k.forEach(c,t=>t.parentNode?.removeChild(t)),o[1]=[];const[,t]=d(()=>{c=r()?.build()??[],o[1]=c;let t=e;k.forEach(c,n=>{t.parentNode?.insertBefore(n,t.nextSibling),t=n})});return t},[r]),o}))},K=({children:t})=>J({condition:!0,children:t}),Q=({mount:t,children:n})=>C(()=>m({N:void 0},()=>{const e=P({children:n}).build();return f(()=>(k.forEach(e,n=>t.appendChild(n)),()=>{k.forEach(e,t=>t.parentNode?.removeChild(t))}),[]),[]})),R=Symbol(),U=new Map,W=t=>{const n=t.children;if("function"==typeof n){const e=Z("style",{},z({text:n,marker:!1}));return t.light?Q({mount:document.head,children:e}):e}if(n){const o=y(),s=t.light?document:o.L?.shadowRoot??document,r=((t,n,e)=>{if(!U.has(n)){const t=new CSSStyleSheet;t.replaceSync(n),U.set(n,{R:t,U:0})}const o=U.get(n);o.U++,t.has(n)||t.set(n,{R:o.R,U:0});const s=t.get(n);return s.U++,f(()=>()=>{--s.U||(t.delete(n),e()),--o.U||U.delete(n)}),s.R})((e=s,e[R]??=new Map),n,()=>{s.adoptedStyleSheets=s.adoptedStyleSheets.filter(t=>t!=r)});s.adoptedStyleSheets.push(r)}var e;return P({})},X=(t,...n)=>{const e=()=>t.reduce((t,e,o)=>t+e+(p.get(n[o])??""),"");return n.some(t=>"function"==typeof t)?e:e()},Y=(t,n,e)=>(n&&null!=e&&(n.key=e),Z(t,n));export{L as Component,K as Else,J as ElseIf,F as For,P as Fragment,G as If,p as MaybeSignal,Q as Portal,W as Style,k as TemplateNodes,v as createContext,Z as createElement,X as css,T as defineComponents,N as event,l as flushBatch,q as h,O as isComponent,Y as jsx,Y as jsxDEV,Y as jsxs,E as prop,i as useBatch,M as useContext,H as useEffect,a as useMemo,h as useRef,c as useSignal,d as useSubscope};
1
+ const t=t=>({t:t,o:new Set,i:new Set,l:{...t?.l},u(t){const n=o;o=this;try{return t()}finally{o=n}},h(){[...this.i].forEach((t,n,e)=>{e[e.length-1-n].h()}),this.i=new Set,[...this.o].forEach((t,n,e)=>{const o=e[e.length-1-n];o.p?.(),o.u=()=>{},o._.forEach(t=>t.o.delete(o)),o._.clear()}),this.o=new Set}});let n,e,o=t(),s=!1;const r=()=>o,c=(t,o)=>{const r=()=>(!s&&n&&(n._.add(r),r.o.add(n)),r.peek());r.o=new Set,r.peek=()=>t;const c=(n,s)=>{const l={...o,...s};if(l.equals??=(t,n)=>t===n,e){const o="function"==typeof n?n(r.peek()):n;!l?.force&&l.equals(o,r.peek())||(l?.force?t=o:e.m.push(()=>t=o),l?.silent||r.o.forEach(t=>{t.v?e.S.add(t):e.o.add(t)}))}else i(()=>c(n,l))};return[r,c]},i=t=>{if(e)return t();e={m:[],o:new Set,S:new Set};try{const n=t();return l(),n}finally{e=void 0}},l=()=>{for(;e&&e.m.length+e.o.size+e.S.size>0;){e.o.forEach(t=>t.p?.()),e.m.forEach(t=>t()),e.m=[];const t=e.S.values().next().value??e.o.values().next().value;t&&(t.u(),e.S.delete(t),e.o.delete(t))}};let u=!1;const f=(t,e)=>{const r=!!e,c={M:o,v:u,_:new Set,u(){const o=n,c=s;n=this;try{this._.forEach(t=>t.o.delete(this)),this._.clear(),e&&(s=!1,e.forEach(t=>t())),s=r,this.p?.();const n=this.M.u(()=>i(t));this.p=n?()=>{this.M.u(()=>i(n)),this.p=null}:null}finally{n=o,s=c}}};o.o.add(c),c.u(),c._.size||c.p||o.o.delete(c)},a=(t,n)=>{const[e,o]=c(void 0,n);let s=!0;u=!0;try{f(()=>{o(t,s?{force:!0}:{}),s=!1})}finally{u=!1}return e},d=(n,s)=>{const r=e;e=void 0;const c=o,i=t(c);Object.assign(i.l,s?.details);try{c.i.add(i);return[i.u(n),()=>{c.i.delete(i),i.h()}]}finally{e=r}},h=(t,n)=>{const[e,o]=c(t,n);return e.set=o,e},p={upgrade:t=>()=>p.get(t),get:t=>"function"==typeof t?t():t,peek(t){const n=s;s=!0;try{return this.get(t)}finally{s=n}}},_=(t={})=>({k:[],C(t){return this.N?.next().value??t()},...t}),y=()=>{const t=r();return t.l.j??=_()},m=(t,n)=>{const e=y(),o=_({...e,...t}),[s,r]=d(n,{details:{j:o}});return f(()=>r),s},w=t=>(t[0]??"").toLowerCase()+t.slice(1).replace(/[A-Z]/g,t=>"-"+t.toLowerCase()),b=t=>t.startsWith("on:")?t.slice(3):w(t.slice(2)),g=Symbol(),v=(t,n)=>({[g]:Math.random().toString(36).slice(2),A:t,H:n}),S=t=>!!t?.[g],x=(t,n,e)=>{n.addEventListener(t[g],t=>{const n=p.get(e);void 0!==n&&(t.stopPropagation(),t.detail(n))})},M=t=>{const n=y();return a(()=>{let e=t.A;return n.L?.dispatchEvent(new CustomEvent(t[g],{detail:t=>e=t,bubbles:!0,composed:!0})),e})};var k;!function(t){t.forEach=(n,e)=>n.forEach(n=>Array.isArray(n)?t.forEach(n,e):e(n)),t.last=(n,e=n.length-1)=>{if(n.length)for(let o=e;o>=0;o--){const e=n[o];if(!Array.isArray(e))return e;const s=t.last(e);if(s)return s}}}(k||(k={}));const C=t=>({build(){const n=t();return n.build?.()??n}}),E=(t,n)=>({O:"p",T:t,...n}),N=(t=CustomEvent)=>({O:"e",D:t}),j=Symbol();let A;const H=(t,n)=>{A?A.push([t,n]):f(t,n)},L=(t,n,e)=>{const o="string"==typeof t?t:null,s="string"==typeof t?n:t,i=("string"==typeof t?e:n)??{},l=[],u=new Map;for(const t in s){const n=s[t];if("p"==n.O&&n.attribute){"function"==typeof n.attribute&&(n.attribute={transform:n.attribute});const e=n.attribute={name:w(t),static:!1,transform:t=>t,...n.attribute};u.set(e.name,{name:t,meta:n}),e.static||l.push(e.name)}}i.shadow??={mode:"open"};class a extends HTMLElement{static[j]={I:o};static observedAttributes=l;props={};events={};[j]={};constructor(){super();for(const t in s){const n=s[t];if("p"==n.O){const e=S(n.T)?n.T:null,[o,s]=c(e?void 0:n.T);this.props[t]=o,e&&x(e,this,o),Object.defineProperty(this,t,{get:o.peek,set:t=>s(()=>e||void 0!==t?t:n.T,{force:!0})})}else if("e"==n.O&&t.startsWith("on")){const e=b(t);this.events[t]=t=>this.dispatchEvent(new n.D(e,t))}}}connectedCallback(){const t=(n=this,i.shadow?n.shadowRoot??n.attachShadow(i.shadow):n);var n;this[j].$=d(()=>m({P:!1,L:this,N:t.childNodes.values()},()=>{this[j].M=r();const n=A;A=[];try{k.forEach(this.render().build(),n=>{t.append(n)}),A.forEach(([t,n])=>f(t,n))}finally{A=n}}))[1]}disconnectedCallback(){this[j].$?.()}attributeChangedCallback(t,n,e){const o=u.get(t);o&&(this[o.name]=null!=e?o.meta.attribute.transform.call(this,e):void 0)}}return a},O=t=>!!t?.[j],T=(...t)=>{const[n,e]="string"==typeof t[0]?[t[0],t.slice(1)]:["",t];for(const t of e)customElements.define(n+(t[j].I??w(t.name)),t)},D=/acit|ex(?:s|g|n|p|$)|rph|grid|ows|mnc|ntw|ine[ch]|zoo|^ord|itera/i,I=(t,n,e)=>{"-"==n[0]?t.style.setProperty(n,""+e):t.style[n]=null==e?"":"number"!=typeof e||D.test(n)?""+e:e+"px"},$=(t,n,e,o)=>{const s=null==e||!1===e&&!n.includes("-");if(n.startsWith("prop:"))t[n.slice(5)]=e;else if(n.startsWith("attr:"))n=n.slice(5),s?t.removeAttribute(n):t.setAttribute(n,e);else if(!["innerHTML","outerHTML"].includes(n)){if(!["tabIndex","role",...o?["width","height","href","list","form","download","rowSpan","colSpan"]:[]].includes(n)&&n in t)try{return void(t[n]=e)}catch(t){}"function"==typeof e||(s?t.removeAttribute(n):t.setAttribute(n,e))}},z=({text:t,marker:n})=>C(()=>{const e=y(),o=n&&e.C(()=>document.createComment("")),s=e.C(()=>document.createTextNode(""));return f(()=>{const n=""+(p.get(t)??"");s.textContent!=n&&(s.textContent=n)}),o?[o,s]:[s]}),P=({children:t})=>C(()=>Array.isArray(t)?t.flatMap(t=>P({children:t}).build()):null==t?[]:["object"==typeof t?t.build():z({text:t}).build()]),V=(t,n,e,o)=>{const{ref:s,style:c,children:l,dangerouslySetInnerHTML:u,...a}=e;for(const n in c??{}){const e=c[n];f(()=>{I(t,n,p.get(e))})}for(const n in a){const e=a[n];if(n.startsWith("on")){const o=r(),s=t=>{o.u(()=>i(()=>e(t)))},c=b(n);f(()=>(t.addEventListener(c,s),()=>t.removeEventListener(c,s)))}else f(()=>{$(t,n,p.get(e),o)})}return u&&f(()=>{const n=p.get(u).__html;t.innerHTML!=n&&(t.innerHTML=n)}),s&&f(()=>(s.set(t),()=>s.set(void 0))),null!=e.children&&k.forEach(m({P:n,N:t.childNodes.values()},()=>P({children:e.children}).build()),n=>t.append(n)),t},Z=(t,n={},e)=>(null!=e&&(n.children=e),O(t)?((t,n)=>C(()=>{const e=y().C(()=>new t);return customElements.upgrade(e),V(e,!1,n),[e]}))(t,n):"function"==typeof t?C(()=>t(n)):((t,n={})=>C(()=>{const e=y(),o="svg"==t||!!e.P;return[V(e.C(()=>o?document.createElementNS("http://www.w3.org/2000/svg",t):document.createElement(t)),(!o||"foreignObject"!==t)&&o,n,!0)]}))(t,n)),q=new Proxy(Z,{get:(t,n)=>(e,o)=>t(n,e,o)}),B=(t,n)=>{const[e,o]=c({V:[],Z:new Map},{force:!0});let s=new Map;return f(()=>{const e=[],r=s,c=((t,n)=>{const e=new Map;for(let o=0;o<t.length;o++){const s=n(t[o],o);if(e.has(s))throw Error(`Duplicate key '${s}'`);e.set(s,o)}return e})(t(),n),i=(t=NaN)=>e.map(t=>"r"==t.q?n=>n<t.B?n:n==t.B?NaN:n-1:"a"==t.q?n=>n<t.B?n:n+1:"m"==t.q?n=>t.F<=n&&n<t.G?n+1:n==t.G?t.F:n:t=>t).reduce((t,n)=>n(t),t);for(const t of r.keys()){const n=i(r.get(t));c.has(t)||e.push({q:"r",J:t,B:n})}for(let o=0;o<t().length;o++){const s=n(t()[o],o),c=i(r.get(s));isNaN(c)?e.push({q:"a",J:s,B:o}):c!=o&&e.push({q:"m",J:s,G:c,F:o})}e.length>0&&o({V:e,Z:c}),s=c}),e},F=t=>C(()=>{const n=y(),e=p.upgrade(t.each??[]),o=n.C(()=>document.createComment("")),s=t.key??((t,n)=>n),r=[o,[]],i=new Map,l=B(e,s),u=t=>k.last(r[1],t-1)??o;return f(()=>{for(const n of l().V)if("r"==n.q){const{K:t,$:e}=i.get(n.J)??{};e?.(),r[1].splice(n.B,1),k.forEach(t??[],t=>t.parentNode?.removeChild(t)),i.delete(n.J)}else if("a"==n.q){let o;const[,s]=d(()=>{const[s,i]=c(n.B),[a,d]=c(e()[n.B]);f(()=>{0<=s()&&s()<e().length&&d(()=>e()[s()])}),f(()=>{const t=l().Z.get(n.J);null!=t&&i(t)}),o=t.children?.(a,s,e).build()??[],r[1].splice(n.B,0,o);let h=u(n.B);k.forEach(o,t=>{h.parentNode?.insertBefore(t,h.nextSibling),h=t})});i.set(n.J,{K:o,$:s})}else if("m"==n.q){const{K:t}=i.get(n.J)??{};r[1].splice(n.G,1),r[1].splice(n.F,0,t??[]);let e=u(n.F);k.forEach(t??[],t=>{e.parentNode?.insertBefore(t,e.nextSibling),e=t})}},[l]),r}),G=t=>(y().k=[],J({condition:t.condition,children:t.children})),J=t=>{const n=y(),e=n.k,o=p.upgrade(t.condition),s=a(()=>e.every(t=>!t())&&o());return n.k=[...e,o],C(()=>m({k:[]},()=>{const e=n.C(()=>document.createComment("")),o=[e,[]],r=a(()=>s()?P({children:t.children}):null);let c=[];return f(()=>{k.forEach(c,t=>t.parentNode?.removeChild(t)),o[1]=[];const[,t]=d(()=>{c=r()?.build()??[],o[1]=c;let t=e;k.forEach(c,n=>{t.parentNode?.insertBefore(n,t.nextSibling),t=n})});return t},[r]),o}))},K=({children:t})=>J({condition:!0,children:t}),Q=({mount:t,children:n})=>C(()=>m({N:void 0},()=>{const e=P({children:n}).build();return f(()=>(k.forEach(e,n=>t.appendChild(n)),()=>{k.forEach(e,t=>t.parentNode?.removeChild(t))}),[]),[]})),R=Symbol(),U=new Map,W=t=>{const n=t.children;if("function"==typeof n){const e=Z("style",{},z({text:n,marker:!1}));return t.light?Q({mount:document.head,children:e}):e}if(n){const o=y(),s=t.light?document:o.L?.shadowRoot??document,r=((t,n,e)=>{if(!U.has(n)){const t=new CSSStyleSheet;t.replaceSync(n),U.set(n,{R:t,U:0})}const o=U.get(n);o.U++,t.has(n)||t.set(n,{R:o.R,U:0});const s=t.get(n);return s.U++,f(()=>()=>{--s.U||(t.delete(n),e()),--o.U||U.delete(n)}),s.R})((e=s,e[R]??=new Map),n,()=>{s.adoptedStyleSheets=s.adoptedStyleSheets.filter(t=>t!=r)});s.adoptedStyleSheets.push(r)}var e;return P({})},X=(t,...n)=>{const e=()=>t.reduce((t,e,o)=>t+e+(p.get(n[o])??""),"");return n.some(t=>"function"==typeof t)?e:e()},Y=(t,n,e)=>(n&&null!=e&&(n.key=e),Z(t,n));export{L as Component,K as Else,J as ElseIf,F as For,P as Fragment,G as If,p as MaybeSignal,Q as Portal,W as Style,k as TemplateNodes,v as createContext,Z as createElement,X as css,T as defineComponents,N as event,l as flushBatch,q as h,O as isComponent,Y as jsx,Y as jsxDEV,Y as jsxs,E as prop,i as useBatch,M as useContext,H as useEffect,a as useMemo,h as useRef,c as useSignal,d as useSubscope};
@@ -1,6 +1,6 @@
1
1
  import { Cleanup, MaybeSignal, Signal, SignalLike } from "./scope.js";
2
2
  import type { DomEventProps, DomProps } from "./dom.js";
3
- import { JsxPropNameToEventName } from "./utils.js";
3
+ import { EventNameToJsxProp, JsxPropNameToEventName } from "./utils.js";
4
4
  import { useScope } from "./scope.js";
5
5
  import { Context } from "./context.js";
6
6
  import { Template } from "./template.js";
@@ -168,12 +168,12 @@ declare abstract class ComponentInner<M extends Metadata> {
168
168
  connectedCallback(): void;
169
169
  disconnectedCallback(): void;
170
170
  attributeChangedCallback(name: string, oldValue: string | null, value: string | null): void;
171
- addEventListener<K extends keyof Events<M> & string>(type: JsxPropNameToEventName<K>, listener: (event: InstanceType<Events<M>[K]>) => void, options?: boolean | AddEventListenerOptions): void;
172
- removeEventListener<K extends keyof Events<M> & string>(type: JsxPropNameToEventName<K>, listener: (event: InstanceType<Events<M>[K]>) => void, options?: boolean | EventListenerOptions): void;
171
+ addEventListener<K extends JsxPropNameToEventName<keyof Events<M> & string>>(type: K, listener: (event: InstanceType<Events<M>[Extract<EventNameToJsxProp<K>, keyof Events<M>>]>) => void, options?: boolean | AddEventListenerOptions): void;
172
+ removeEventListener<K extends JsxPropNameToEventName<keyof Events<M> & string>>(type: K, listener: (event: InstanceType<Events<M>[Extract<EventNameToJsxProp<K>, keyof Events<M>>]>) => void, options?: boolean | EventListenerOptions): void;
173
173
  abstract render(): Template;
174
174
  }
175
175
  export type Component<M extends Metadata = {}> = {
176
- -readonly [K in keyof Props<M>]: Props<M>[K] extends Signal<infer T> ? T : never;
176
+ -readonly [K in keyof Props<M>]: Props<M>[K] extends Signal<infer T> ? T | undefined : never;
177
177
  } & ComponentInner<M> & HTMLElement;
178
178
  export interface ComponentConstructor<M extends Metadata = {}> {
179
179
  /** @ignore */
package/dist/component.js CHANGED
@@ -198,7 +198,9 @@ export const Component = ((tagNameOrMetadata, metadataOrOpts, optsParam) => {
198
198
  }
199
199
  Object.defineProperty(this, name, {
200
200
  get: getter.peek,
201
- set: (value) => setter(() => value, { force: true }),
201
+ set: (value) => setter(() => !context && value === undefined
202
+ ? meta._defaultOrContext
203
+ : value, { force: true }),
202
204
  });
203
205
  }
204
206
  else if (meta._tag == "e" && name.startsWith("on")) {
@@ -239,9 +241,7 @@ export const Component = ((tagNameOrMetadata, metadataOrOpts, optsParam) => {
239
241
  this[prop.name] =
240
242
  value != null
241
243
  ? prop.meta.attribute.transform.call(this, value)
242
- : isContext(prop.meta._defaultOrContext)
243
- ? undefined
244
- : prop.meta._defaultOrContext;
244
+ : undefined;
245
245
  }
246
246
  }
247
247
  }
@@ -1 +1 @@
1
- {"version":3,"file":"component.js","sourceRoot":"","sources":["../src/component.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"component.js","sourceRoot":"","sources":["../src/component.ts"],"names":[],"mappings":"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"}