@threadlabs/looma 0.39.1 → 0.39.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1115,6 +1115,8 @@ svg,.arc {
1115
1115
  /* A count is an adornment, not another line of label text. Keep the standard control height
1116
1116
  with enough inset for a 24px mark; large content can still grow the button naturally. */
1117
1117
 
1118
+ /* Trim the text line itself: an anonymous flex item retains font-metric space in some fonts. */
1119
+
1118
1120
  /* Short numeric and icon actions share a minimum box; large values remain readable. */
1119
1121
 
1120
1122
  /* Card actions inherit Button's palette and behavior; only their shared layout changes.
@@ -1204,6 +1206,7 @@ svg,.arc {
1204
1206
  }
1205
1207
  :scope:where([data-hn-ui-button]) {
1206
1208
  --_button-square-size: var(--ui-button-min-block-size, var(--ui-control-size-md));
1209
+ box-sizing: border-box !important;
1207
1210
  appearance: none;
1208
1211
  min-block-size: var(--ui-button-min-block-size, var(--ui-control-size-md));
1209
1212
  border-style: solid;
@@ -1244,6 +1247,18 @@ svg,.arc {
1244
1247
  :scope:not([data-appearance="link"]):has(.badge:not(:empty)):where([data-hn-ui-button]) {
1245
1248
  padding-block: var(--ui-space-0-5) !important;
1246
1249
  }
1250
+ .label:where([data-hn-ui-button]) {
1251
+ display: block !important;
1252
+ align-content: center !important;
1253
+ min-inline-size: 0 !important;
1254
+ min-block-size: 1lh !important;
1255
+ }
1256
+ .label:has(svg):where([data-hn-ui-button]) {
1257
+ display: inline-flex !important;
1258
+ align-items: center !important;
1259
+ gap: var(--ui-space-2) !important;
1260
+ text-box-trim: none;
1261
+ }
1247
1262
  .badge:where([data-hn-ui-button]) {
1248
1263
  display: inline-flex !important;
1249
1264
  align-items: center !important;
@@ -1253,7 +1268,7 @@ svg,.arc {
1253
1268
  display: none !important;
1254
1269
  }
1255
1270
  @supports (text-box-trim: trim-both) {
1256
- :scope:where([data-hn-ui-button]) {
1271
+ .label:not(:has(svg)):where([data-hn-ui-button]) {
1257
1272
  text-box-trim: trim-both;
1258
1273
  text-box-edge: cap alphabetic;
1259
1274
  }
@@ -1545,6 +1560,10 @@ html[data-ui-input-modality="touch"]
1545
1560
  color var(--ui-motion-fast) var(--ui-motion-ease),
1546
1561
  text-decoration-color var(--ui-motion-fast) var(--ui-motion-ease);
1547
1562
  }
1563
+ :scope[data-appearance="link"] .label:where([data-hn-ui-button]) {
1564
+ display: inline !important;
1565
+ text-box-trim: none;
1566
+ }
1548
1567
  :scope[data-appearance="link"]:hover:not(:disabled, [aria-disabled="true"]):where([data-hn-ui-button]) {
1549
1568
  color: var(--ui-button-link-hover-text, var(--ui-text-primary));
1550
1569
  text-decoration-color: currentColor;
@@ -1908,19 +1927,20 @@ html[data-ui-input-modality="touch"]
1908
1927
 
1909
1928
  /* The label, and under it an optional line saying what the choice means. */
1910
1929
 
1911
- /* Centre the tick's box and lift it slightly for the rotated check shape. */
1912
- @keyframes ui-checkbox-check-d551a32f {
1930
+ /* The SVG's painted bounds are centred in its viewBox, including its round stroke.
1931
+ Centre that box directly; rotated border boxes do not centre the visible check. */
1932
+ @keyframes ui-checkbox-check-570a9f0b {
1913
1933
  from {
1914
1934
  opacity: 0;
1915
- transform: translateY(calc(var(--_ui-checkbox-size) * -0.09 / 1.125)) rotate(45deg) scale(0.55);
1935
+ scale: 0.55;
1916
1936
  }
1917
1937
  65% {
1918
1938
  opacity: 1;
1919
- transform: translateY(calc(var(--_ui-checkbox-size) * -0.09 / 1.125)) rotate(45deg) scale(1.12);
1939
+ scale: 1.12;
1920
1940
  }
1921
1941
  to {
1922
1942
  opacity: 1;
1923
- transform: translateY(calc(var(--_ui-checkbox-size) * -0.09 / 1.125)) rotate(45deg) scale(1);
1943
+ scale: 1;
1924
1944
  }
1925
1945
  }
1926
1946
 
@@ -2008,7 +2028,8 @@ input:where([data-hn-ui-checkbox]) {
2008
2028
  }
2009
2029
  input:where([data-hn-ui-checkbox])::after {
2010
2030
  content: "";
2011
- position: absolute;
2031
+ position: absolute !important;
2032
+ transform: none !important;
2012
2033
  opacity: 0;
2013
2034
  transition: opacity var(--ui-motion-fast) var(--ui-motion-ease);
2014
2035
  }
@@ -2019,27 +2040,26 @@ input:checked:where([data-hn-ui-checkbox]),input:indeterminate:where([data-hn-ui
2019
2040
  box-shadow: var(--ui-control-inset);
2020
2041
  }
2021
2042
  input:checked:where([data-hn-ui-checkbox])::after {
2022
- inset: 0;
2023
- margin: auto !important;
2024
- inline-size: calc(var(--_ui-checkbox-size) * 0.28 / 1.125);
2025
- block-size: calc(var(--_ui-checkbox-size) * 0.5 / 1.125);
2026
- /* Longhands, not `border: solid var(...)`: lowering drops a shorthand that omits a
2027
- component, which left the tick with no style and no colour. */
2028
- border-style: solid;
2029
- border-color: var(--ui-text-on-accent);
2030
- border-width: 0 calc(var(--_ui-checkbox-size) * 0.125 / 1.125)
2031
- calc(var(--_ui-checkbox-size) * 0.125 / 1.125) 0;
2043
+ inset: 50% auto auto 50% !important;
2044
+ inline-size: calc(var(--_ui-checkbox-size) * 0.7) !important;
2045
+ block-size: calc(var(--_ui-checkbox-size) * 0.7) !important;
2046
+ background: var(--ui-text-on-accent);
2047
+ mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m5 11.5 5 5 9-9'/%3E%3C/svg%3E")
2048
+ center / contain no-repeat;
2032
2049
  opacity: 1;
2033
- transform: translateY(calc(var(--_ui-checkbox-size) * -0.09 / 1.125)) rotate(45deg);
2034
- animation: ui-checkbox-check-d551a32f var(--ui-motion-base) var(--ui-motion-ease-out, cubic-bezier(0.16, 1, 0.3, 1)) both;
2050
+ translate: -50% -50% !important;
2051
+ animation: ui-checkbox-check-570a9f0b var(--ui-motion-base) var(--ui-motion-ease-out, cubic-bezier(0.16, 1, 0.3, 1)) both;
2035
2052
  }
2036
2053
  input:indeterminate:where([data-hn-ui-checkbox])::after {
2037
- inset: 50% calc(var(--_ui-checkbox-size) * 0.23 / 1.125) auto;
2038
- block-size: calc(var(--_ui-checkbox-size) * 0.125 / 1.125);
2054
+ mask: none;
2055
+ animation: none;
2056
+ inset: 50% calc(var(--_ui-checkbox-size) * 0.23 / 1.125) auto !important;
2057
+ inline-size: auto !important;
2058
+ block-size: calc(var(--_ui-checkbox-size) * 0.125 / 1.125) !important;
2039
2059
  border-radius: var(--ui-radius-round);
2040
2060
  background: var(--ui-text-on-accent);
2041
2061
  opacity: 1;
2042
- transform: translateY(-50%);
2062
+ translate: 0 -50% !important;
2043
2063
  }
2044
2064
  @media (prefers-reduced-motion: reduce) {
2045
2065
  input:where([data-hn-ui-checkbox])::after {
@@ -2047,6 +2067,17 @@ input:where([data-hn-ui-checkbox])::after {
2047
2067
  animation: none;
2048
2068
  }
2049
2069
  }
2070
+ @media (forced-colors: active) {
2071
+ input:checked:where([data-hn-ui-checkbox]),input:indeterminate:where([data-hn-ui-checkbox]) {
2072
+ forced-color-adjust: none;
2073
+ background: Highlight;
2074
+ border-color: Highlight;
2075
+ }
2076
+ input:checked:where([data-hn-ui-checkbox])::after,input:indeterminate:where([data-hn-ui-checkbox])::after {
2077
+ forced-color-adjust: none;
2078
+ background: HighlightText;
2079
+ }
2080
+ }
2050
2081
  input:hover:enabled:where([data-hn-ui-checkbox]) {
2051
2082
  border-color: var(--ui-accent-solid);
2052
2083
  }
@@ -8746,6 +8777,122 @@ path:where([data-hn-ui-light-editor]) {
8746
8777
  }
8747
8778
  }
8748
8779
  }
8780
+ @scope ([data-slotted~="ui-light-editor"]:not([data-hn])) to ([data-hn], [data-slotted]) {
8781
+ :where(.ui-light-editor):where(:scope, :not([data-hn], [data-slotted]:not([data-slotted~="ui-light-editor"]))):where([data-hn-ui-light-editor]) {
8782
+ display: grid !important;
8783
+ gap: var(--ui-space-3) !important;
8784
+ min-inline-size: 0;
8785
+ padding: 0 !important;
8786
+ margin: 0 !important;
8787
+ }
8788
+ .stage:where(:scope, :scope *):where([data-hn-ui-light-editor]) {
8789
+ box-sizing: border-box !important;
8790
+ display: block !important;
8791
+ block-size: 13rem;
8792
+ padding: calc(var(--ui-control-min-block-size) / 2) !important;
8793
+ border: var(--ui-border-width) solid var(--ui-control-border);
8794
+ border-radius: var(--ui-field-radius, var(--ui-radius-md));
8795
+ background: var(--ui-neutral-surface, var(--ui-surface));
8796
+ }
8797
+ .plane:where(:scope, :scope *):where([data-hn-ui-light-editor]) {
8798
+ position: relative;
8799
+ display: block !important;
8800
+ inline-size: 100%;
8801
+ block-size: 100%;
8802
+ }
8803
+ svg:where(:scope, :scope *):where([data-hn-ui-light-editor]) {
8804
+ inline-size: 100%;
8805
+ block-size: 100%;
8806
+ overflow: visible;
8807
+ }
8808
+ path:where(:scope, :scope *):where([data-hn-ui-light-editor]) {
8809
+ fill: none;
8810
+ stroke: var(--ui-border);
8811
+ stroke-width: 1;
8812
+ vector-effect: non-scaling-stroke;
8813
+ }
8814
+ .specimen:where(:scope, :scope *):where([data-hn-ui-light-editor]) {
8815
+ position: absolute;
8816
+ inset: 0;
8817
+ display: grid !important;
8818
+ place-items: center !important;
8819
+ }
8820
+ .source:where(:scope, :scope *):where([data-hn-ui-light-editor]) {
8821
+ position: absolute;
8822
+ left: 50%;
8823
+ top: 0;
8824
+ translate: -50% -50%;
8825
+ display: grid !important;
8826
+ place-items: center !important;
8827
+ inline-size: max(2rem, var(--ui-control-min-block-size));
8828
+ block-size: max(2rem, var(--ui-control-min-block-size));
8829
+ padding: 0 !important;
8830
+ margin: 0 !important;
8831
+ border: 0;
8832
+ border-radius: 50%;
8833
+ background: transparent;
8834
+ cursor: grab;
8835
+ touch-action: none;
8836
+ }
8837
+ .source-glyph:where(:scope, :scope *):where([data-hn-ui-light-editor]) {
8838
+ position: relative;
8839
+ z-index: 1;
8840
+ display: inline-flex !important;
8841
+ color: var(--ui-accent);
8842
+ font-size: var(--ui-font-size-lg);
8843
+ }
8844
+ .source:where(:not([data-hn], [data-slotted]:not([data-slotted~="ui-light-editor"]))):where(:scope, :scope
8845
+ *):where([data-hn-ui-light-editor])::after {
8846
+ content: "";
8847
+ position: absolute;
8848
+ inline-size: 2rem;
8849
+ block-size: 2rem;
8850
+ border: var(--ui-border-width) solid var(--ui-accent);
8851
+ border-radius: 50%;
8852
+ background: var(--ui-surface-raised);
8853
+ box-shadow:
8854
+ 0 0 0 var(--ui-space-2) color-mix(in srgb, var(--ui-accent) 12%, transparent),
8855
+ var(--ui-shadow-sm);
8856
+ }
8857
+ .source:active:where(:scope, :scope *):where([data-hn-ui-light-editor]) {
8858
+ cursor: grabbing;
8859
+ }
8860
+ .source:focus-visible:where(:scope, :scope *):where([data-hn-ui-light-editor]) {
8861
+ outline: var(--ui-focus-width) solid var(--ui-focus-ring);
8862
+ outline-offset: var(--ui-space-1);
8863
+ }
8864
+ .source:disabled:where(:scope, :scope *):where([data-hn-ui-light-editor]) {
8865
+ cursor: not-allowed;
8866
+ }
8867
+ .source:disabled:where(:not([data-hn], [data-slotted]:not([data-slotted~="ui-light-editor"]))):where(:scope, :scope
8868
+ *):where([data-hn-ui-light-editor])::after {
8869
+ background: var(--ui-disabled-surface);
8870
+ border-color: var(--ui-disabled-border);
8871
+ box-shadow: none;
8872
+ }
8873
+ .coordinates:where(:scope, :scope *):where([data-hn-ui-light-editor]) {
8874
+ display: grid !important;
8875
+ grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
8876
+ gap: var(--ui-space-2) !important;
8877
+ }
8878
+ .hint:where(:scope, :scope *):where([data-hn-ui-light-editor]) {
8879
+ font-size: var(--ui-font-size-sm);
8880
+ color: var(--ui-text-secondary);
8881
+ }
8882
+ @media (forced-colors: active) {
8883
+ .source-glyph:where(:scope, :scope *):where([data-hn-ui-light-editor]) {
8884
+ color: CanvasText;
8885
+ }
8886
+ .source:where(:not([data-hn], [data-slotted]:not([data-slotted~="ui-light-editor"]))):where(:scope, :scope
8887
+ *):where([data-hn-ui-light-editor])::after {
8888
+ background: Canvas;
8889
+ border-color: CanvasText;
8890
+ }
8891
+ .source:focus-visible:where(:scope, :scope *):where([data-hn-ui-light-editor]) {
8892
+ outline-color: Highlight;
8893
+ }
8894
+ }
8895
+ }
8749
8896
 
8750
8897
  /* This component's hooks style the element they are set on, and never a nested one. */
8751
8898
  @property --ui-list-gap {
@@ -13714,6 +13861,7 @@ html[data-ui-input-modality="touch"]
13714
13861
 
13715
13862
  :scope:where([data-component~="ui-button"]) {
13716
13863
  --_button-square-size: var(--ui-button-min-block-size, var(--ui-control-size-md));
13864
+ box-sizing: border-box !important;
13717
13865
  appearance: none;
13718
13866
  min-block-size: var(--ui-button-min-block-size, var(--ui-control-size-md));
13719
13867
  border-style: solid;
@@ -13760,6 +13908,21 @@ html[data-ui-input-modality="touch"]
13760
13908
  padding-block: var(--ui-space-0-5) !important;
13761
13909
  }
13762
13910
 
13911
+ /* Trim the text line itself: an anonymous flex item retains font-metric space in some fonts. */
13912
+ .label {
13913
+ display: block !important;
13914
+ align-content: center !important;
13915
+ min-inline-size: 0 !important;
13916
+ min-block-size: 1lh !important;
13917
+ }
13918
+
13919
+ .label:has(svg) {
13920
+ display: inline-flex !important;
13921
+ align-items: center !important;
13922
+ gap: var(--ui-space-2) !important;
13923
+ text-box-trim: none;
13924
+ }
13925
+
13763
13926
  .badge {
13764
13927
  display: inline-flex !important;
13765
13928
  align-items: center !important;
@@ -13771,7 +13934,7 @@ html[data-ui-input-modality="touch"]
13771
13934
  }
13772
13935
 
13773
13936
  @supports (text-box-trim: trim-both) {
13774
- :scope:where([data-component~="ui-button"]) {
13937
+ .label:not(:has(svg)) {
13775
13938
  text-box-trim: trim-both;
13776
13939
  text-box-edge: cap alphabetic;
13777
13940
  }
@@ -14099,6 +14262,11 @@ html[data-ui-input-modality="touch"]
14099
14262
  transition: color var(--ui-motion-fast) var(--ui-motion-ease), text-decoration-color var(--ui-motion-fast) var(--ui-motion-ease);
14100
14263
  }
14101
14264
 
14265
+ :scope:where([data-component~="ui-button"])[data-appearance="link"] .label {
14266
+ display: inline !important;
14267
+ text-box-trim: none;
14268
+ }
14269
+
14102
14270
  :scope:where([data-component~="ui-button"])[data-appearance="link"]:hover:not(:disabled, [aria-disabled="true"]) {
14103
14271
  color: var(--ui-button-link-hover-text, var(--ui-text-primary));
14104
14272
  text-decoration-color: currentColor;
@@ -14136,6 +14304,8 @@ html[data-ui-input-modality="touch"]
14136
14304
  /* A count is an adornment, not another line of label text. Keep the standard control height
14137
14305
  with enough inset for a 24px mark; large content can still grow the button naturally. */
14138
14306
 
14307
+ /* Trim the text line itself: an anonymous flex item retains font-metric space in some fonts. */
14308
+
14139
14309
  @supports (text-box-trim: trim-both) {
14140
14310
  }
14141
14311
 
@@ -16474,7 +16644,8 @@ html[data-ui-input-modality="touch"]
16474
16644
 
16475
16645
  input:where(:not([data-component], [data-slotted]))::after {
16476
16646
  content: "";
16477
- position: absolute;
16647
+ position: absolute !important;
16648
+ transform: none !important;
16478
16649
  opacity: 0;
16479
16650
  transition: opacity var(--ui-motion-fast) var(--ui-motion-ease);
16480
16651
  }
@@ -16487,43 +16658,44 @@ html[data-ui-input-modality="touch"]
16487
16658
  box-shadow: var(--ui-control-inset);
16488
16659
  }
16489
16660
 
16490
- /* Centre the tick's box and lift it slightly for the rotated check shape. */
16661
+ /* The SVG's painted bounds are centred in its viewBox, including its round stroke.
16662
+ Centre that box directly; rotated border boxes do not centre the visible check. */
16491
16663
  input:checked:where(:not([data-component], [data-slotted]))::after {
16492
- inset: 0;
16493
- margin: auto !important;
16494
- inline-size: calc(var(--_ui-checkbox-size) * 0.28 / 1.125);
16495
- block-size: calc(var(--_ui-checkbox-size) * 0.5 / 1.125);
16496
- /* Longhands, not `border: solid var(...)`: lowering drops a shorthand that omits a
16497
- component, which left the tick with no style and no colour. */
16498
- border-style: solid;
16499
- border-color: var(--ui-text-on-accent);
16500
- border-width: 0 calc(var(--_ui-checkbox-size) * 0.125 / 1.125) calc(var(--_ui-checkbox-size) * 0.125 / 1.125) 0;
16664
+ inset: 50% auto auto 50% !important;
16665
+ inline-size: calc(var(--_ui-checkbox-size) * 0.7) !important;
16666
+ block-size: calc(var(--_ui-checkbox-size) * 0.7) !important;
16667
+ background: var(--ui-text-on-accent);
16668
+ mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m5 11.5 5 5 9-9'/%3E%3C/svg%3E")
16669
+ center / contain no-repeat;
16501
16670
  opacity: 1;
16502
- transform: translateY(calc(var(--_ui-checkbox-size) * -0.09 / 1.125)) rotate(45deg);
16671
+ translate: -50% -50% !important;
16503
16672
  animation: ui-checkbox-check var(--ui-motion-base) var(--ui-motion-ease-out, cubic-bezier(0.16, 1, 0.3, 1)) both;
16504
16673
  }
16505
16674
 
16506
16675
  input:indeterminate:where(:not([data-component], [data-slotted]))::after {
16507
- inset: 50% calc(var(--_ui-checkbox-size) * 0.23 / 1.125) auto;
16508
- block-size: calc(var(--_ui-checkbox-size) * 0.125 / 1.125);
16676
+ mask: none;
16677
+ animation: none;
16678
+ inset: 50% calc(var(--_ui-checkbox-size) * 0.23 / 1.125) auto !important;
16679
+ inline-size: auto !important;
16680
+ block-size: calc(var(--_ui-checkbox-size) * 0.125 / 1.125) !important;
16509
16681
  border-radius: var(--ui-radius-round);
16510
16682
  background: var(--ui-text-on-accent);
16511
16683
  opacity: 1;
16512
- transform: translateY(-50%);
16684
+ translate: 0 -50% !important;
16513
16685
  }
16514
16686
 
16515
16687
  @keyframes ui-checkbox-check {
16516
16688
  from {
16517
16689
  opacity: 0;
16518
- transform: translateY(calc(var(--_ui-checkbox-size) * -0.09 / 1.125)) rotate(45deg) scale(0.55);
16690
+ scale: 0.55;
16519
16691
  }
16520
16692
  65% {
16521
16693
  opacity: 1;
16522
- transform: translateY(calc(var(--_ui-checkbox-size) * -0.09 / 1.125)) rotate(45deg) scale(1.12);
16694
+ scale: 1.12;
16523
16695
  }
16524
16696
  to {
16525
16697
  opacity: 1;
16526
- transform: translateY(calc(var(--_ui-checkbox-size) * -0.09 / 1.125)) rotate(45deg) scale(1);
16698
+ scale: 1;
16527
16699
  }
16528
16700
  }
16529
16701
 
@@ -16534,6 +16706,20 @@ html[data-ui-input-modality="touch"]
16534
16706
  }
16535
16707
  }
16536
16708
 
16709
+ @media (forced-colors: active) {
16710
+ input:checked,
16711
+ input:indeterminate {
16712
+ forced-color-adjust: none;
16713
+ background: Highlight;
16714
+ border-color: Highlight;
16715
+ }
16716
+ input:checked:where(:not([data-component], [data-slotted]))::after,
16717
+ input:indeterminate:where(:not([data-component], [data-slotted]))::after {
16718
+ forced-color-adjust: none;
16719
+ background: HighlightText;
16720
+ }
16721
+ }
16722
+
16537
16723
  input:hover:enabled {
16538
16724
  border-color: var(--ui-accent-solid);
16539
16725
  }
@@ -16591,11 +16777,15 @@ html[data-ui-input-modality="touch"]
16591
16777
 
16592
16778
  /* The label, and under it an optional line saying what the choice means. */
16593
16779
 
16594
- /* Centre the tick's box and lift it slightly for the rotated check shape. */
16780
+ /* The SVG's painted bounds are centred in its viewBox, including its round stroke.
16781
+ Centre that box directly; rotated border boxes do not centre the visible check. */
16595
16782
 
16596
16783
  @media (prefers-reduced-motion: reduce) {
16597
16784
  }
16598
16785
 
16786
+ @media (forced-colors: active) {
16787
+ }
16788
+
16599
16789
  /* A sized choice keeps its box and aligns instead: the label takes that size's field type size,
16600
16790
  and the first line centres in that control height, so the label shares a row's baseline.
16601
16791
  Multi-line labels and descriptions still grow downward from that first line. */
@@ -3418,7 +3418,11 @@ var T12$1 = [
3418
3418
  "\n ",
3419
3419
  1,
3420
3420
  "\n ",
3421
- 4,
3421
+ [
3422
+ "span",
3423
+ ["class", "label"],
3424
+ 4
3425
+ ],
3422
3426
  "\n ",
3423
3427
  [
3424
3428
  "span",
@@ -3440,7 +3444,11 @@ var T16$1 = [
3440
3444
  "\n ",
3441
3445
  1,
3442
3446
  "\n ",
3443
- 4,
3447
+ [
3448
+ "span",
3449
+ ["class", "label"],
3450
+ 4
3451
+ ],
3444
3452
  "\n ",
3445
3453
  [
3446
3454
  "span",
@@ -4325,7 +4333,8 @@ function createUiButton(options = {}, html) {
4325
4333
  n.append((P12$1 ??= buildTemplate(T12$1)).cloneNode(true));
4326
4334
  const t0 = n.firstChild.nextSibling;
4327
4335
  const t1 = t0.nextSibling.nextSibling.nextSibling;
4328
- const t2 = t1.nextSibling.nextSibling.nextSibling.firstChild;
4336
+ const t2 = t1.firstChild;
4337
+ const t3 = t1.nextSibling.nextSibling.firstChild;
4329
4338
  const r = {
4330
4339
  n,
4331
4340
  v0: void 0,
@@ -4340,12 +4349,12 @@ function createUiButton(options = {}, html) {
4340
4349
  a1: t0,
4341
4350
  e0: t0.nextSibling,
4342
4351
  b0: void 0,
4343
- a2: t1,
4344
- e1: t1.nextSibling,
4352
+ a2: t2,
4353
+ e1: t2.nextSibling,
4345
4354
  b1: void 0,
4346
4355
  f1: void 0,
4347
- a3: t2,
4348
- e2: t2.nextSibling,
4356
+ a3: t3,
4357
+ e2: t3.nextSibling,
4349
4358
  b2: void 0,
4350
4359
  f2: void 0
4351
4360
  };
@@ -4439,18 +4448,6 @@ function createUiButton(options = {}, html) {
4439
4448
  r.e0.before(r.b0.n);
4440
4449
  }
4441
4450
  } else if (r.b0 !== void 0) r.b0;
4442
- if (r.f2 === void 0) {
4443
- r.f2 = 1;
4444
- const at = fillSlot(r.a3, r.e2, "badge", J, false, void 0, d);
4445
- if (Array.isArray(at)) (r.z ??= []).push(() => {
4446
- at[0].l.delete(at[1]);
4447
- dispose(at[1]);
4448
- });
4449
- else if (at !== void 0) {
4450
- r.b2 = m15(d);
4451
- at.before(r.b2.n);
4452
- }
4453
- } else if (r.b2 !== void 0) r.b2;
4454
4451
  if (r.f1 === void 0) {
4455
4452
  r.f1 = 1;
4456
4453
  const at = fillSlot(r.a2, r.e1, "", J, false, void 0, d);
@@ -4463,12 +4460,25 @@ function createUiButton(options = {}, html) {
4463
4460
  at.before(r.b1.n);
4464
4461
  }
4465
4462
  } else if (r.b1 !== void 0) r.b1;
4463
+ if (r.f2 === void 0) {
4464
+ r.f2 = 1;
4465
+ const at = fillSlot(r.a3, r.e2, "badge", J, false, void 0, d);
4466
+ if (Array.isArray(at)) (r.z ??= []).push(() => {
4467
+ at[0].l.delete(at[1]);
4468
+ dispose(at[1]);
4469
+ });
4470
+ else if (at !== void 0) {
4471
+ r.b2 = m15(d);
4472
+ at.before(r.b2.n);
4473
+ }
4474
+ } else if (r.b2 !== void 0) r.b2;
4466
4475
  };
4467
4476
  const m16 = (n, d) => {
4468
4477
  n.append((P16$1 ??= buildTemplate(T16$1)).cloneNode(true));
4469
4478
  const t0 = n.firstChild.nextSibling;
4470
4479
  const t1 = t0.nextSibling.nextSibling.nextSibling;
4471
- const t2 = t1.nextSibling.nextSibling.nextSibling.firstChild;
4480
+ const t2 = t1.firstChild;
4481
+ const t3 = t1.nextSibling.nextSibling.firstChild;
4472
4482
  const r = {
4473
4483
  n,
4474
4484
  v0: void 0,
@@ -4481,12 +4491,12 @@ function createUiButton(options = {}, html) {
4481
4491
  a1: t0,
4482
4492
  e0: t0.nextSibling,
4483
4493
  b0: void 0,
4484
- a2: t1,
4485
- e1: t1.nextSibling,
4494
+ a2: t2,
4495
+ e1: t2.nextSibling,
4486
4496
  b1: void 0,
4487
4497
  f1: void 0,
4488
- a3: t2,
4489
- e2: t2.nextSibling,
4498
+ a3: t3,
4499
+ e2: t3.nextSibling,
4490
4500
  b2: void 0,
4491
4501
  f2: void 0
4492
4502
  };
@@ -4560,18 +4570,6 @@ function createUiButton(options = {}, html) {
4560
4570
  r.e0.before(r.b0.n);
4561
4571
  }
4562
4572
  } else if (r.b0 !== void 0) r.b0;
4563
- if (r.f2 === void 0) {
4564
- r.f2 = 1;
4565
- const at = fillSlot(r.a3, r.e2, "badge", J, false, void 0, d);
4566
- if (Array.isArray(at)) (r.z ??= []).push(() => {
4567
- at[0].l.delete(at[1]);
4568
- dispose(at[1]);
4569
- });
4570
- else if (at !== void 0) {
4571
- r.b2 = m19(d);
4572
- at.before(r.b2.n);
4573
- }
4574
- } else if (r.b2 !== void 0) r.b2;
4575
4573
  if (r.f1 === void 0) {
4576
4574
  r.f1 = 1;
4577
4575
  const at = fillSlot(r.a2, r.e1, "", J, false, void 0, d);
@@ -4584,6 +4582,18 @@ function createUiButton(options = {}, html) {
4584
4582
  at.before(r.b1.n);
4585
4583
  }
4586
4584
  } else if (r.b1 !== void 0) r.b1;
4585
+ if (r.f2 === void 0) {
4586
+ r.f2 = 1;
4587
+ const at = fillSlot(r.a3, r.e2, "badge", J, false, void 0, d);
4588
+ if (Array.isArray(at)) (r.z ??= []).push(() => {
4589
+ at[0].l.delete(at[1]);
4590
+ dispose(at[1]);
4591
+ });
4592
+ else if (at !== void 0) {
4593
+ r.b2 = m19(d);
4594
+ at.before(r.b2.n);
4595
+ }
4596
+ } else if (r.b2 !== void 0) r.b2;
4587
4597
  };
4588
4598
  const M = [
4589
4599
  m0,