@threadlabs/looma 0.1.26 → 0.1.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 (199) hide show
  1. package/dist/{chunk-XRJRF3MM.js → chunk-G5AWV77V.js} +33 -33
  2. package/dist/{chunk-YHXJC5M5.js → chunk-M7FPK6GN.js} +17 -12
  3. package/dist/cjs/{positioning-i0WrCAdF.js → positioning-D5q9DM-0.js} +19 -12
  4. package/dist/cjs/ui-affordance-scope.cjs.entry.js +1 -1
  5. package/dist/cjs/ui-chip_2.cjs.entry.js +7 -7
  6. package/dist/cjs/ui-context-menu.cjs.entry.js +2 -2
  7. package/dist/cjs/ui-dialog.cjs.entry.js +2 -2
  8. package/dist/cjs/ui-disclosure.cjs.entry.js +1 -1
  9. package/dist/cjs/ui-editable.cjs.entry.js +1 -1
  10. package/dist/cjs/ui-floating-action-button.cjs.entry.js +1 -1
  11. package/dist/cjs/ui-form-field.cjs.entry.js +1 -1
  12. package/dist/cjs/ui-icon-button.cjs.entry.js +1 -1
  13. package/dist/cjs/ui-input.cjs.entry.js +1 -1
  14. package/dist/cjs/ui-menu-item.cjs.entry.js +1 -1
  15. package/dist/cjs/ui-menu.cjs.entry.js +3 -3
  16. package/dist/cjs/ui-multi-combobox.cjs.entry.js +2 -2
  17. package/dist/cjs/ui-popover.cjs.entry.js +3 -3
  18. package/dist/cjs/ui-radio-group.cjs.entry.js +1 -1
  19. package/dist/cjs/ui-radio.cjs.entry.js +1 -1
  20. package/dist/cjs/ui-search-result-row.cjs.entry.js +1 -1
  21. package/dist/cjs/ui-search-shell.cjs.entry.js +1 -1
  22. package/dist/cjs/ui-select.cjs.entry.js +1 -1
  23. package/dist/cjs/ui-switch.cjs.entry.js +2 -2
  24. package/dist/cjs/ui-tabs.cjs.entry.js +1 -1
  25. package/dist/cjs/ui-textarea.cjs.entry.js +1 -1
  26. package/dist/cjs/ui-toast-region.cjs.entry.js +2 -2
  27. package/dist/cjs/ui-tooltip.cjs.entry.js +2 -2
  28. package/dist/cjs/ui-top-bar.cjs.entry.js +1 -1
  29. package/dist/cjs/ui-tree-item.cjs.entry.js +2 -2
  30. package/dist/cjs/ui-tree.cjs.entry.js +1 -1
  31. package/dist/collection/components/ui-chip/ui-chip.css +10 -0
  32. package/dist/collection/components/ui-chip/ui-chip.js +1 -1
  33. package/dist/collection/components/ui-combobox/ui-combobox.js +4 -4
  34. package/dist/collection/components/ui-context-menu/ui-context-menu.js +1 -1
  35. package/dist/collection/components/ui-dialog/ui-dialog.css +1 -0
  36. package/dist/collection/components/ui-dialog/ui-dialog.js +1 -1
  37. package/dist/collection/components/ui-disclosure/ui-disclosure.js +1 -1
  38. package/dist/collection/components/ui-editable/ui-editable.js +1 -1
  39. package/dist/collection/components/ui-floating-action-button/ui-floating-action-button.js +1 -1
  40. package/dist/collection/components/ui-form-field/ui-form-field.js +1 -1
  41. package/dist/collection/components/ui-icon-button/ui-icon-button.js +1 -1
  42. package/dist/collection/components/ui-input/ui-input.js +1 -1
  43. package/dist/collection/components/ui-menu/ui-menu.css +7 -2
  44. package/dist/collection/components/ui-menu/ui-menu.js +1 -1
  45. package/dist/collection/components/ui-menu-item/ui-menu-item.js +1 -1
  46. package/dist/collection/components/ui-multi-combobox/ui-multi-combobox.css +5 -1
  47. package/dist/collection/components/ui-multi-combobox/ui-multi-combobox.js +1 -1
  48. package/dist/collection/components/ui-popover/ui-popover.css +6 -2
  49. package/dist/collection/components/ui-popover/ui-popover.js +1 -1
  50. package/dist/collection/components/ui-radio/ui-radio.js +1 -1
  51. package/dist/collection/components/ui-radio-group/ui-radio-group.js +1 -1
  52. package/dist/collection/components/ui-search-result-row/ui-search-result-row.js +1 -1
  53. package/dist/collection/components/ui-search-shell/ui-search-shell.js +1 -1
  54. package/dist/collection/components/ui-select/ui-select.js +1 -1
  55. package/dist/collection/components/ui-switch/ui-switch.js +2 -2
  56. package/dist/collection/components/ui-tabs/ui-tabs.js +1 -1
  57. package/dist/collection/components/ui-textarea/ui-textarea.js +1 -1
  58. package/dist/collection/components/ui-toast-region/ui-toast-region.js +1 -1
  59. package/dist/collection/components/ui-tooltip/ui-tooltip.js +1 -1
  60. package/dist/collection/components/ui-top-bar/ui-top-bar.js +1 -1
  61. package/dist/collection/components/ui-tree/ui-tree.js +1 -1
  62. package/dist/collection/components/ui-tree-item/ui-tree-item.js +2 -2
  63. package/dist/collection/overlay/positioning.js +21 -14
  64. package/dist/components/{p-C6p-ygxq.js → p-B1macZOS.js} +1 -1
  65. package/dist/components/{p-BMgIcOh-.js → p-DiyiodGX.js} +1 -1
  66. package/dist/components/p-Drw41pSY.js +1 -0
  67. package/dist/components/p-Vc4ExHFc.js +1 -0
  68. package/dist/components/p-d5fk1vBI.js +1 -0
  69. package/dist/components/ui-affordance-scope.js +1 -1
  70. package/dist/components/ui-chip.js +1 -1
  71. package/dist/components/ui-combobox.js +1 -1
  72. package/dist/components/ui-context-menu.js +1 -1
  73. package/dist/components/ui-dialog.js +1 -1
  74. package/dist/components/ui-disclosure.js +1 -1
  75. package/dist/components/ui-editable.js +1 -1
  76. package/dist/components/ui-floating-action-button.js +1 -1
  77. package/dist/components/ui-form-field.js +1 -1
  78. package/dist/components/ui-icon-button.js +1 -1
  79. package/dist/components/ui-input.js +1 -1
  80. package/dist/components/ui-menu-item.js +1 -1
  81. package/dist/components/ui-menu.js +1 -1
  82. package/dist/components/ui-multi-combobox.js +1 -1
  83. package/dist/components/ui-popover.js +1 -1
  84. package/dist/components/ui-radio-group.js +1 -1
  85. package/dist/components/ui-radio.js +1 -1
  86. package/dist/components/ui-search-result-row.js +1 -1
  87. package/dist/components/ui-search-shell.js +1 -1
  88. package/dist/components/ui-select.js +1 -1
  89. package/dist/components/ui-switch.js +1 -1
  90. package/dist/components/ui-tabs.js +1 -1
  91. package/dist/components/ui-textarea.js +1 -1
  92. package/dist/components/ui-toast-region.js +1 -1
  93. package/dist/components/ui-tooltip.js +1 -1
  94. package/dist/components/ui-top-bar.js +1 -1
  95. package/dist/components/ui-tree-item.js +1 -1
  96. package/dist/components/ui-tree.js +1 -1
  97. package/dist/esm/{positioning-Bu0dmLBE.js → positioning-Drmwg-C1.js} +19 -12
  98. package/dist/esm/ui-affordance-scope.entry.js +1 -1
  99. package/dist/esm/ui-chip_2.entry.js +7 -7
  100. package/dist/esm/ui-context-menu.entry.js +2 -2
  101. package/dist/esm/ui-dialog.entry.js +2 -2
  102. package/dist/esm/ui-disclosure.entry.js +1 -1
  103. package/dist/esm/ui-editable.entry.js +1 -1
  104. package/dist/esm/ui-floating-action-button.entry.js +1 -1
  105. package/dist/esm/ui-form-field.entry.js +1 -1
  106. package/dist/esm/ui-icon-button.entry.js +1 -1
  107. package/dist/esm/ui-input.entry.js +1 -1
  108. package/dist/esm/ui-menu-item.entry.js +1 -1
  109. package/dist/esm/ui-menu.entry.js +3 -3
  110. package/dist/esm/ui-multi-combobox.entry.js +2 -2
  111. package/dist/esm/ui-popover.entry.js +3 -3
  112. package/dist/esm/ui-radio-group.entry.js +1 -1
  113. package/dist/esm/ui-radio.entry.js +1 -1
  114. package/dist/esm/ui-search-result-row.entry.js +1 -1
  115. package/dist/esm/ui-search-shell.entry.js +1 -1
  116. package/dist/esm/ui-select.entry.js +1 -1
  117. package/dist/esm/ui-switch.entry.js +2 -2
  118. package/dist/esm/ui-tabs.entry.js +1 -1
  119. package/dist/esm/ui-textarea.entry.js +1 -1
  120. package/dist/esm/ui-toast-region.entry.js +2 -2
  121. package/dist/esm/ui-tooltip.entry.js +2 -2
  122. package/dist/esm/ui-top-bar.entry.js +1 -1
  123. package/dist/esm/ui-tree-item.entry.js +2 -2
  124. package/dist/esm/ui-tree.entry.js +1 -1
  125. package/dist/index.cjs +89 -71
  126. package/dist/index.js +26 -13
  127. package/dist/looma/looma.esm.js +1 -1
  128. package/dist/looma/{p-0e1741cb.entry.js → p-071c139c.entry.js} +1 -1
  129. package/dist/looma/{p-e14024bf.entry.js → p-1a12eb5c.entry.js} +1 -1
  130. package/dist/looma/{p-bcb1b47b.entry.js → p-1e1de77f.entry.js} +1 -1
  131. package/dist/looma/{p-0ef4bf13.entry.js → p-20387ffa.entry.js} +1 -1
  132. package/dist/looma/{p-30f01909.entry.js → p-2f3c1b57.entry.js} +1 -1
  133. package/dist/looma/{p-393e3e02.entry.js → p-311e54d4.entry.js} +1 -1
  134. package/dist/looma/{p-72338f53.entry.js → p-32c85198.entry.js} +1 -1
  135. package/dist/looma/{p-78b7e466.entry.js → p-3957f7ef.entry.js} +1 -1
  136. package/dist/looma/p-4a10a875.entry.js +1 -0
  137. package/dist/looma/p-4f68f939.entry.js +1 -0
  138. package/dist/looma/{p-5a7261e1.entry.js → p-4fc9917f.entry.js} +1 -1
  139. package/dist/looma/{p-26d357ae.entry.js → p-607c3056.entry.js} +1 -1
  140. package/dist/looma/p-63a9159f.entry.js +1 -0
  141. package/dist/looma/{p-89e71bbb.entry.js → p-6cc3180b.entry.js} +1 -1
  142. package/dist/looma/p-82de1112.entry.js +1 -0
  143. package/dist/looma/{p-95eb3b58.entry.js → p-88e61cab.entry.js} +1 -1
  144. package/dist/looma/{p-81c533f5.entry.js → p-8a5e3fe1.entry.js} +1 -1
  145. package/dist/looma/{p-87f501cf.entry.js → p-9551ebf6.entry.js} +1 -1
  146. package/dist/looma/{p-dbcb479c.entry.js → p-9a82c523.entry.js} +1 -1
  147. package/dist/looma/p-Drmwg-C1.js +1 -0
  148. package/dist/looma/{p-7eb04f09.entry.js → p-b68762f2.entry.js} +1 -1
  149. package/dist/looma/p-caa37be2.entry.js +1 -0
  150. package/dist/looma/{p-d62da01d.entry.js → p-da6e2d01.entry.js} +1 -1
  151. package/dist/looma/{p-fc180770.entry.js → p-df696cca.entry.js} +1 -1
  152. package/dist/looma/{p-92cd1841.entry.js → p-e07e6ac2.entry.js} +1 -1
  153. package/dist/looma/{p-96ec4d7a.entry.js → p-e406656e.entry.js} +1 -1
  154. package/dist/looma/{p-5780cefa.entry.js → p-e82f104c.entry.js} +1 -1
  155. package/dist/looma/{p-166f8593.entry.js → p-f431dc13.entry.js} +1 -1
  156. package/dist/{ui-affordance-scope.entry-6N4ZQ5FM.js → ui-affordance-scope.entry-X5526PRP.js} +2 -2
  157. package/dist/{ui-avatar-group.entry-FTZVEFGI.js → ui-avatar-group.entry-U72MPB5K.js} +1 -1
  158. package/dist/{ui-avatar.entry-SST735OH.js → ui-avatar.entry-OC4J3LTV.js} +1 -1
  159. package/dist/{ui-badge.entry-DZGS7MUT.js → ui-badge.entry-4MSUQRQV.js} +1 -1
  160. package/dist/{ui-button.entry-5WX56ARJ.js → ui-button.entry-22DESWN4.js} +1 -1
  161. package/dist/{ui-callout.entry-OI5RNRXV.js → ui-callout.entry-LOGODDM5.js} +1 -1
  162. package/dist/{ui-checkbox.entry-HCGIQPSE.js → ui-checkbox.entry-XAGW3BW4.js} +1 -1
  163. package/dist/{ui-chip_2.entry-G2IGWJTL.js → ui-chip_2.entry-JCPHPXAG.js} +9 -9
  164. package/dist/{ui-context-menu.entry-K2LRT2WV.js → ui-context-menu.entry-24YOHF7L.js} +3 -3
  165. package/dist/{ui-dialog.entry-4W2T27R6.js → ui-dialog.entry-XKNYDWOQ.js} +3 -3
  166. package/dist/{ui-disclosure.entry-ONYMXRKR.js → ui-disclosure.entry-2AWCGZ4C.js} +2 -2
  167. package/dist/{ui-editable.entry-4ZHXIOER.js → ui-editable.entry-HLEWO7BN.js} +2 -2
  168. package/dist/{ui-floating-action-button.entry-XU4JO2ZV.js → ui-floating-action-button.entry-2NJDB4YN.js} +2 -2
  169. package/dist/{ui-form-field.entry-BZSEWR4A.js → ui-form-field.entry-FJ5HYCTN.js} +2 -2
  170. package/dist/{ui-icon-button.entry-MHJKL5OZ.js → ui-icon-button.entry-YZHJQ5YR.js} +2 -2
  171. package/dist/{ui-input.entry-BL6EX3GC.js → ui-input.entry-JMBLMNP6.js} +2 -2
  172. package/dist/{ui-menu-item.entry-LERF3A4G.js → ui-menu-item.entry-VBGXM66D.js} +2 -2
  173. package/dist/{ui-menu.entry-WXDYGFJE.js → ui-menu.entry-I2N5H3YC.js} +4 -4
  174. package/dist/{ui-multi-combobox.entry-WSNWVRXE.js → ui-multi-combobox.entry-MEX7MU7P.js} +3 -3
  175. package/dist/{ui-popover.entry-P6STTQVS.js → ui-popover.entry-7JRSJM5S.js} +4 -4
  176. package/dist/{ui-radio-group.entry-GZLHOY2M.js → ui-radio-group.entry-Q2XB7P3B.js} +2 -2
  177. package/dist/{ui-radio.entry-4PXIRDKT.js → ui-radio.entry-NJO4NA4M.js} +2 -2
  178. package/dist/{ui-search-result-row.entry-LHNOT7MK.js → ui-search-result-row.entry-RPMNDSRN.js} +2 -2
  179. package/dist/{ui-search-shell.entry-GQCMEU2Z.js → ui-search-shell.entry-FMIMYD3B.js} +2 -2
  180. package/dist/{ui-select.entry-TZU7XX4U.js → ui-select.entry-7NDBWNAU.js} +2 -2
  181. package/dist/{ui-switch.entry-QFH3YDYP.js → ui-switch.entry-YUCPIZE4.js} +3 -3
  182. package/dist/{ui-tabs.entry-A57JVDT2.js → ui-tabs.entry-FXZWV665.js} +2 -2
  183. package/dist/{ui-textarea.entry-L3RLZIGO.js → ui-textarea.entry-HHLQR5GG.js} +2 -2
  184. package/dist/{ui-toast-region.entry-XKKEY4K7.js → ui-toast-region.entry-PIIBHNYA.js} +3 -3
  185. package/dist/{ui-tooltip.entry-5WQTX7XF.js → ui-tooltip.entry-AQ6UPBUP.js} +3 -3
  186. package/dist/{ui-top-bar.entry-KMJEFYOM.js → ui-top-bar.entry-S2L7ZM4U.js} +2 -2
  187. package/dist/{ui-tree-item.entry-TUBC57FI.js → ui-tree-item.entry-UID7IJPA.js} +3 -3
  188. package/dist/{ui-tree.entry-Y75CRURL.js → ui-tree.entry-UMD3DNG5.js} +2 -2
  189. package/package.json +1 -1
  190. package/styles.css +6 -4
  191. package/dist/components/p-B9CzOHvE.js +0 -1
  192. package/dist/components/p-BVteuP_d.js +0 -1
  193. package/dist/components/p-DOulVJT7.js +0 -1
  194. package/dist/looma/p-05592219.entry.js +0 -1
  195. package/dist/looma/p-262a542c.entry.js +0 -1
  196. package/dist/looma/p-3a44b9f9.entry.js +0 -1
  197. package/dist/looma/p-558d4f5b.entry.js +0 -1
  198. package/dist/looma/p-7319c147.entry.js +0 -1
  199. package/dist/looma/p-Bu0dmLBE.js +0 -1
package/dist/index.cjs CHANGED
@@ -24,7 +24,7 @@ var __copyProps = (to, from, except, desc) => {
24
24
  };
25
25
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
26
26
 
27
- // dist/esm/positioning-Bu0dmLBE.js
27
+ // dist/esm/positioning-Drmwg-C1.js
28
28
  function bindAnchorName(anchor, name) {
29
29
  const binding = anchorBindings.get(anchor) ?? {
30
30
  original: anchor.style.getPropertyValue("anchor-name"),
@@ -96,22 +96,21 @@ function createViewportSurface(surface) {
96
96
  }
97
97
  };
98
98
  }
99
- function fallbackPosition(surface, anchor, placement, gap, viewportGap) {
99
+ function fallbackPosition(surface, anchor, placement, gap, viewportGap, surfaceRect = surface.getBoundingClientRect()) {
100
100
  const owner = surface.ownerDocument.defaultView ?? window;
101
101
  const viewport = getVisualViewportRect(owner);
102
- const rect = surface.getBoundingClientRect();
103
102
  const preferTop = placement.startsWith("top");
104
103
  const preferEnd = placement.endsWith("end");
105
104
  const spaceBelow = viewport.bottom - anchor.bottom - viewportGap;
106
105
  const spaceAbove = anchor.top - viewport.top - viewportGap;
107
- const useTop = preferTop ? !(spaceAbove < rect.height + gap && spaceBelow > spaceAbove) : spaceBelow < rect.height + gap && spaceAbove > spaceBelow;
108
- const unclampedTop = useTop ? anchor.top - rect.height - gap : anchor.bottom + gap;
109
- const unclampedLeft = preferEnd ? anchor.right - rect.width : anchor.left;
106
+ const useTop = preferTop ? !(spaceAbove < surfaceRect.height + gap && spaceBelow > spaceAbove) : spaceBelow < surfaceRect.height + gap && spaceAbove > spaceBelow;
107
+ const unclampedTop = useTop ? anchor.top - surfaceRect.height - gap : anchor.bottom + gap;
108
+ const unclampedLeft = preferEnd ? anchor.right - surfaceRect.width : anchor.left;
110
109
  const shifted = clampRectToViewport({
111
110
  left: unclampedLeft,
112
111
  top: unclampedTop,
113
- width: rect.width,
114
- height: rect.height
112
+ width: surfaceRect.width,
113
+ height: surfaceRect.height
115
114
  }, viewport, viewportGap);
116
115
  surface.style.left = `${Math.round(unclampedLeft + shifted.x)}px`;
117
116
  surface.style.top = `${Math.round(unclampedTop + shifted.y)}px`;
@@ -169,10 +168,16 @@ function createAnchoredSurface(surface, options = {}) {
169
168
  }
170
169
  if (!anchor)
171
170
  return;
172
- if (nativeAnchor)
171
+ let surfaceRect;
172
+ if (nativeAnchor) {
173
173
  positionNative();
174
- else
175
- fallbackPosition(surface, anchor.getBoundingClientRect(), placement, gap, viewportGap);
174
+ const viewport = getVisualViewportRect(owner);
175
+ surfaceRect = surface.getBoundingClientRect();
176
+ const shift = clampRectToViewport(surfaceRect, viewport, viewportGap);
177
+ if (shift.x === 0 && shift.y === 0)
178
+ return;
179
+ }
180
+ fallbackPosition(surface, anchor.getBoundingClientRect(), placement, gap, viewportGap, surfaceRect);
176
181
  };
177
182
  const schedule = () => {
178
183
  if (!open || frame !== null)
@@ -180,7 +185,7 @@ function createAnchoredSurface(surface, options = {}) {
180
185
  frame = owner.requestAnimationFrame(position);
181
186
  };
182
187
  const syncFallbackListeners = () => {
183
- const needsListeners = open && (point !== null || !nativeAnchor);
188
+ const needsListeners = open && (point !== null || anchor !== null);
184
189
  if (!needsListeners) {
185
190
  listenerAbort?.abort();
186
191
  listenerAbort = null;
@@ -356,8 +361,8 @@ function createProximityCoordinator(scope, options = {}) {
356
361
  };
357
362
  }
358
363
  var DEFAULT_AFFORDANCE_NEAR_RADIUS, anchorSequence, anchorBindings;
359
- var init_positioning_Bu0dmLBE = __esm({
360
- "dist/esm/positioning-Bu0dmLBE.js"() {
364
+ var init_positioning_Drmwg_C1 = __esm({
365
+ "dist/esm/positioning-Drmwg-C1.js"() {
361
366
  DEFAULT_AFFORDANCE_NEAR_RADIUS = 16;
362
367
  anchorSequence = 0;
363
368
  anchorBindings = /* @__PURE__ */ new WeakMap();
@@ -373,7 +378,7 @@ var uiAffordanceScopeCss, UIAffordanceScope;
373
378
  var init_ui_affordance_scope_entry = __esm({
374
379
  "dist/esm/ui-affordance-scope.entry.js"() {
375
380
  init_index_8BGiMGQ0();
376
- init_positioning_Bu0dmLBE();
381
+ init_positioning_Drmwg_C1();
377
382
  uiAffordanceScopeCss = () => `:host{display:contents;--ui-affordance-scope-engaged:0}:host([data-ui-interaction='engaged']){--ui-affordance-scope-engaged:1}`;
378
383
  UIAffordanceScope = class {
379
384
  constructor(hostRef) {
@@ -1269,9 +1274,9 @@ var uiChipCss, UIChip, uiComboboxCss, UICombobox;
1269
1274
  var init_ui_chip_2_entry = __esm({
1270
1275
  "dist/esm/ui-chip_2.entry.js"() {
1271
1276
  init_index_8BGiMGQ0();
1272
- init_positioning_Bu0dmLBE();
1277
+ init_positioning_Drmwg_C1();
1273
1278
  init_manager_C_0syqXZ();
1274
- uiChipCss = () => `:host{--ui-chip-surface:var(--ui-surface-subtle);--ui-chip-text:var(--ui-text-secondary);--ui-chip-border:var(--ui-border-default);--ui-chip-font-size:var(--ui-font-size-xs);--ui-chip-font-weight:var(--ui-font-normal);--ui-chip-line-height:var(--ui-line-height-tight);--ui-chip-padding-block:var(--ui-space-0-5);--ui-chip-padding-inline:var(--ui-space-2);--ui-chip-notch:var(--ui-space-1);display:inline-flex;max-width:100%}:host([data-size='sm']){--ui-chip-font-size:var(--ui-font-size-sm)}.chip__surface{display:inline-flex;align-items:center;max-width:100%;padding:var(--ui-chip-padding-block) var(--ui-chip-padding-inline);border:1px solid var(--ui-chip-border);background:var(--ui-chip-surface);color:var(--ui-chip-text) !important;font-family:var(--ui-font-family-sans) !important;font-size:var(--ui-chip-font-size) !important;font-weight:var(--ui-chip-font-weight) !important;line-height:var(--ui-chip-line-height) !important;white-space:nowrap}:host([data-appearance='pill']) .chip__surface{border-radius:var(--ui-radius-round)}:host([data-appearance='tag']) .chip__surface{border:0;padding-inline-end:calc(var(--ui-chip-padding-inline) + var(--ui-chip-notch));clip-path:polygon(0 0, calc(100% - var(--ui-chip-notch)) 0, 100% 50%, calc(100% - var(--ui-chip-notch)) 100%, 0 100%)}`;
1279
+ uiChipCss = () => `:host{--ui-chip-surface:var(--ui-surface-subtle);--ui-chip-text:var(--ui-text-secondary);--ui-chip-border:var(--ui-border-default);--ui-chip-font-size:var(--ui-font-size-xs);--ui-chip-font-weight:var(--ui-font-normal);--ui-chip-line-height:var(--ui-line-height-tight);--ui-chip-padding-block:var(--ui-space-0-5);--ui-chip-padding-inline:var(--ui-space-2);--ui-chip-notch:var(--ui-space-1);display:inline-flex;min-width:0;max-width:100%}:host([data-size='sm']){--ui-chip-font-size:var(--ui-font-size-sm)}.chip__surface{display:inline-flex;align-items:center;box-sizing:border-box;min-width:0;max-width:100%;padding:var(--ui-chip-padding-block) var(--ui-chip-padding-inline);border:1px solid var(--ui-chip-border);background:var(--ui-chip-surface);color:var(--ui-chip-text) !important;font-family:var(--ui-font-family-sans) !important;font-size:var(--ui-chip-font-size) !important;font-weight:var(--ui-chip-font-weight) !important;line-height:var(--ui-chip-line-height) !important}.chip__label{min-width:0;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}:host([data-appearance='pill']) .chip__surface{border-radius:var(--ui-radius-round)}:host([data-appearance='tag']) .chip__surface{border:0;padding-inline-end:calc(var(--ui-chip-padding-inline) + var(--ui-chip-notch));clip-path:polygon(0 0, calc(100% - var(--ui-chip-notch)) 0, 100% 50%, calc(100% - var(--ui-chip-notch)) 100%, 0 100%)}`;
1275
1280
  UIChip = class {
1276
1281
  constructor(hostRef) {
1277
1282
  registerInstance(this, hostRef);
@@ -1281,7 +1286,7 @@ var init_ui_chip_2_entry = __esm({
1281
1286
  /** Compact typography size. */
1282
1287
  size = "xs";
1283
1288
  render() {
1284
- return h(Host, { key: "970cb48cf8d70c47feaab90fe428c09f0d052a03", "data-appearance": this.appearance, "data-size": this.size }, h("span", { key: "6d8c6104d2869520097a2a61bd2a887b363b4912", class: "chip__surface" }, h("slot", { key: "b61c50a8060d8a2684aed6f87dc859b1c9e99858" })));
1289
+ return h(Host, { key: "970cb48cf8d70c47feaab90fe428c09f0d052a03", "data-appearance": this.appearance, "data-size": this.size }, h("span", { key: "6d8c6104d2869520097a2a61bd2a887b363b4912", class: "chip__surface" }, h("span", { key: "638fb68ff5dffa629576c9e1079bb3169f2adb4f", class: "chip__label" }, h("slot", { key: "8b31f2130e202e18d7717aee6add6bc6e7f119b5" }))));
1285
1290
  }
1286
1291
  };
1287
1292
  UIChip.style = uiChipCss();
@@ -1733,23 +1738,23 @@ var init_ui_chip_2_entry = __esm({
1733
1738
  const description = [this.helpOpen ? "help-text" : "", this.validation.issues.length ? "validation" : ""].filter(Boolean).join(" ") || void 0;
1734
1739
  const status = this.loading ? "Loading suggestions\u2026" : this.lookupError || (this.expanded ? `${this.rows.length} suggestions available.` : "");
1735
1740
  const groups = [...new Set(this.rows.map((row) => row.group ?? ""))];
1736
- return h(Host, { key: "a33890c2824f29dfea5e22edddca4480a6d1d032", "data-size": this.size, "data-validation": this.validation.status, onFocusout: this.onFocusOut }, h("label", { key: "c936530cf696c1d14245fd83895e9c58c908df12", htmlFor: "input", part: "label", class: this.labelVisibility === "sr-only" ? "sr-only" : void 0 }, this.label, this.required ? " *" : ""), h("div", { key: "0fe0ed9b15a3e256867e071ca7e4fa3abc66f27c", class: "field", part: "field", ref: (element) => this.field = element, onClick: (event) => {
1741
+ return h(Host, { key: "1f00d9a83729d9c2147ced7e5006b928d1b5e51d", "data-size": this.size, "data-validation": this.validation.status, onFocusout: this.onFocusOut }, h("label", { key: "10353b147cc68ef1d67be0988849af1527fcf9ba", htmlFor: "input", part: "label", class: this.labelVisibility === "sr-only" ? "sr-only" : void 0 }, this.label, this.required ? " *" : ""), h("div", { key: "74bb53137d9343add37c22f3ac503eccf41807a9", class: "field", part: "field", ref: (element) => this.field = element, onClick: (event) => {
1737
1742
  if (!event.composedPath().some((node) => node instanceof HTMLButtonElement))
1738
1743
  this.input?.focus();
1739
- } }, h("slot", { key: "9cc4c22eb7776e415792fbdf3c17c962c7107f70", name: "start" }), h("input", { key: "0898e8ec5af57c7ba8ad227164f7955ef4011729", id: "input", ref: (element) => this.input = element, role: "combobox", "aria-autocomplete": "list", "aria-expanded": String(this.expanded), "aria-controls": "listbox", "aria-activedescendant": this.expanded && this.active >= 0 ? `option-${this.active}` : void 0, "aria-describedby": description, "aria-invalid": String(this.validation.status === "error"), "aria-busy": String(this.validation.status === "pending"), value: this.display, placeholder: this.placeholder, name: this.name || void 0, disabled: this.disabled, readOnly: this.readOnly, required: this.required, autoComplete: "off", part: "input", onInput: this.onInput, onKeyDown: this.onKeydown, onCompositionstart: () => this.composing = true, onCompositionend: () => {
1744
+ } }, h("slot", { key: "24c26916365013faa4a78bd4fe0d01f6c129c703", name: "start" }), h("input", { key: "835d19e66ec4a24c1a83f43bbc256fa2a9e3332f", id: "input", ref: (element) => this.input = element, role: "combobox", "aria-autocomplete": "list", "aria-expanded": String(this.expanded), "aria-controls": "listbox", "aria-activedescendant": this.expanded && this.active >= 0 ? `option-${this.active}` : void 0, "aria-describedby": description, "aria-invalid": String(this.validation.status === "error"), "aria-busy": String(this.validation.status === "pending"), value: this.display, placeholder: this.placeholder, name: this.name || void 0, disabled: this.disabled, readOnly: this.readOnly, required: this.required, autoComplete: "off", part: "input", onInput: this.onInput, onKeyDown: this.onKeydown, onCompositionstart: () => this.composing = true, onCompositionend: () => {
1740
1745
  this.composing = false;
1741
1746
  this.onInput(new InputEvent("input"));
1742
- } }), this.clearable && h("button", { key: "f9a49484ae9bcc4ace72a46d0c59202040ff39d8", type: "button", part: "affordance", "aria-label": `Clear ${this.label}`, disabled: this.disabled || this.readOnly, onClick: () => {
1747
+ } }), this.clearable && h("button", { key: "326c1e24d3c417c3a72acd8234a53937b388ba79", type: "button", part: "affordance", "aria-label": `Clear ${this.label}`, disabled: this.disabled || this.readOnly, onClick: () => {
1743
1748
  this.commit(null, "", null, "clear", "pointer");
1744
1749
  this.close();
1745
1750
  this.input?.focus();
1746
- } }, "\xD7"), this.help && h("button", { key: "597106eda4dcc68aa9fb2eaa99c1edad0d68a892", id: "help", type: "button", part: "affordance", "aria-label": `Help for ${this.label}`, disabled: this.disabled }, h("span", { key: "d26085a52b16d65e26dc20ef8afacb5defec5f7b", "aria-hidden": "true" }, "?")), this.disclosure && h("button", { key: "391d1c987eb8e868b2846eafd0627cfc78ab7478", type: "button", part: "affordance", "aria-label": `Suggestions for ${this.label}`, "aria-controls": "listbox", "aria-expanded": String(this.expanded), disabled: this.disabled || this.readOnly, onClick: () => {
1751
+ } }, "\xD7"), this.help && h("button", { key: "6aeb62dc2935eb95670caa1d2028c0931dc362b2", id: "help", type: "button", part: "affordance", "aria-label": `Help for ${this.label}`, disabled: this.disabled }, h("span", { key: "9317be0fbb0c1bbb91061be69f38037a97a4c36b", "aria-hidden": "true" }, "?")), this.disclosure && h("button", { key: "1cd2a0ea92df1144ff2297fcf64df7b3d0f4713a", type: "button", part: "affordance", "aria-label": `Suggestions for ${this.label}`, "aria-controls": "listbox", "aria-expanded": String(this.expanded), disabled: this.disabled || this.readOnly, onClick: () => {
1747
1752
  if (this.expanded)
1748
1753
  this.close();
1749
1754
  else
1750
1755
  this.open("disclosure");
1751
1756
  this.input?.focus();
1752
- } }, h("span", { key: "45678ce468fd7944306d4542e3c6af0fe211af14", "aria-hidden": "true" }, "\u2304"))), this.help && h("ui-tooltip", { key: "a8dc037639a60aff5a12b4651ffa10fc5ccd33eb", id: "help-text", for: "help", toggleOnClick: true, onOpen: () => this.helpOpen = true, onClose: () => this.helpOpen = false }, this.help), h("div", { key: "f13fc7a11c3d22995035b6701ea24637a048a5b8", class: "popup", part: "popup", hidden: !this.expanded, ref: (element) => this.popup = element }, h("div", { key: "9d2bdfcc558f8e7de87f2915ea5607a8f32c1762", id: "listbox", role: "listbox", "aria-label": `${this.label} suggestions`, "aria-busy": String(this.loading) }, groups.map((group) => h("div", { role: group ? "group" : "presentation", "aria-label": group || void 0 }, group && h("div", { class: "group", part: "group" }, group), this.rows.map((row, index) => (row.group ?? "") !== group ? null : h("div", { id: `option-${index}`, role: "option", "aria-selected": String(this.selected === row.value), "aria-disabled": String(Boolean(row.disabled)), "data-active": this.active === index ? "" : void 0, part: "option", class: "option", onPointerDown: (event) => event.preventDefault(), onClick: () => this.choose(index, "pointer") }, h("slot", { name: `option-${row.id}` }, h("span", { class: "primary", part: "option-primary" }, row.label), row.description && h("span", { class: "secondary", part: "option-secondary" }, row.description)))))), this.canCreate && h("div", { key: "9495fd43a721c84621b8083cb8eac776f843ab59", id: `option-${this.rows.length}`, role: "option", "aria-selected": "false", class: "option", part: "option", "data-active": this.active === this.rows.length ? "" : void 0, onPointerDown: (event) => event.preventDefault(), onClick: () => this.choose(this.rows.length, "pointer") }, h("slot", { key: "f0407c5622dcf3b325985c136657f8b9ac8a4ab5", name: "create" }, "Create \u201C", this.raw, "\u201D"))), this.loading ? h("div", { class: "message" }, h("slot", { name: "loading" }, "Loading suggestions\u2026")) : this.lookupError ? h("div", { class: "message" }, h("slot", { name: "error" }, this.lookupError)) : !this.rows.length && !this.canCreate ? h("div", { class: "message" }, h("slot", { name: "empty" }, "No suggestions.")) : null, h("slot", { key: "efcaee3efb029a9e0bb4e033ab61b251331c1c93", name: "footer" })), h("div", { key: "b44ccb319f94ebc9e6ac3204a8c1771d49485a58", id: "validation", class: "message", part: "validation", hidden: !this.validation.issues.length }, this.validation.issues.map((issue) => h("div", null, issue.message))), h("div", { key: "c3cb51dd4603734af4c7a02d8fe0bb42ac69083a", class: "sr-only", role: "status", "aria-live": "polite", "aria-atomic": "true" }, status, " ", this.validation.status === "pending" ? "Checking value\u2026" : this.validation.issues.map((issue) => issue.message).join(" ")));
1757
+ } }, h("span", { key: "0188b2d0e8cc7b7ff4d1a2175a0ff0b47d9c7d98", "aria-hidden": "true" }, "\u2304"))), this.help && h("ui-tooltip", { key: "e09fd35274c3e1fa6e408850d72f7a07c2bb4baf", id: "help-text", for: "help", toggleOnClick: true, onOpen: () => this.helpOpen = true, onClose: () => this.helpOpen = false }, this.help), h("div", { key: "ddf83a5944dd03fc7eb580b81fcf291e06c03601", class: "popup", part: "popup", hidden: !this.expanded, ref: (element) => this.popup = element }, h("div", { key: "1d73de1dabb6eaa95af12f2af88dac74e3f163ea", id: "listbox", role: "listbox", "aria-label": `${this.label} suggestions`, "aria-busy": String(this.loading) }, groups.map((group) => h("div", { role: group ? "group" : "presentation", "aria-label": group || void 0 }, group && h("div", { class: "group", part: "group" }, group), this.rows.map((row, index) => (row.group ?? "") !== group ? null : h("div", { id: `option-${index}`, role: "option", "aria-selected": String(this.selected === row.value), "aria-disabled": String(Boolean(row.disabled)), "data-active": this.active === index ? "" : void 0, part: "option", class: "option", onPointerDown: (event) => event.preventDefault(), onClick: () => this.choose(index, "pointer") }, h("slot", { name: `option-${row.id}` }, h("span", { class: "primary", part: "option-primary" }, row.label), row.description && h("span", { class: "secondary", part: "option-secondary" }, row.description)))))), this.canCreate && h("div", { key: "a0aaafa2f4ff79efa954ed780f3a7bd81d4b2ecd", id: `option-${this.rows.length}`, role: "option", "aria-selected": "false", class: "option", part: "option", "data-active": this.active === this.rows.length ? "" : void 0, onPointerDown: (event) => event.preventDefault(), onClick: () => this.choose(this.rows.length, "pointer") }, h("slot", { key: "53a6706fc2c26097948b08cf0a7ee6040e37fe57", name: "create" }, "Create \u201C", this.raw, "\u201D"))), this.loading ? h("div", { class: "message" }, h("slot", { name: "loading" }, "Loading suggestions\u2026")) : this.lookupError ? h("div", { class: "message" }, h("slot", { name: "error" }, this.lookupError)) : !this.rows.length && !this.canCreate ? h("div", { class: "message" }, h("slot", { name: "empty" }, "No suggestions.")) : null, h("slot", { key: "7997a0233a3c1a560b820c846645405ec4ceec1d", name: "footer" })), h("div", { key: "9143eb79141f5f3660a63f7a2471d1eecd8e9332", id: "validation", class: "message", part: "validation", hidden: !this.validation.issues.length }, this.validation.issues.map((issue) => h("div", null, issue.message))), h("div", { key: "21f310613b058f528f8c4df329864fd8a2a94b55", class: "sr-only", role: "status", "aria-live": "polite", "aria-atomic": "true" }, status, " ", this.validation.status === "pending" ? "Checking value\u2026" : this.validation.issues.map((issue) => issue.message).join(" ")));
1753
1758
  }
1754
1759
  static get watchers() {
1755
1760
  return {
@@ -1786,7 +1791,7 @@ var init_ui_context_menu_entry = __esm({
1786
1791
  init_index_8BGiMGQ0();
1787
1792
  init_manager_C_0syqXZ();
1788
1793
  init_events_JwSoedEO();
1789
- init_positioning_Bu0dmLBE();
1794
+ init_positioning_Drmwg_C1();
1790
1795
  uiContextMenuCss = () => `:host{display:contents}:host([data-focus-trigger='pointer']) ::slotted(ui-menu-item:focus){outline:none}.menu{position:fixed;inset:auto;margin:0;z-index:var(--ui-z-overlay, 1000);min-width:12rem;opacity:0;transform:translateY(-4px) scale(0.99);transition:opacity var(--ui-motion-fast) var(--ui-motion-ease), transform var(--ui-motion-fast) var(--ui-motion-ease), display var(--ui-motion-fast) allow-discrete, overlay var(--ui-motion-fast) allow-discrete}.menu:popover-open{opacity:1;transform:translateY(0) scale(1)}@starting-style{.menu:popover-open{opacity:0;transform:translateY(-4px) scale(0.99)}}.menu[hidden]{display:none !important}@media (prefers-reduced-motion: reduce){.menu{transition:none}}`;
1791
1796
  UIContextMenu = class {
1792
1797
  constructor(hostRef) {
@@ -1996,7 +2001,7 @@ var init_ui_context_menu_entry = __esm({
1996
2001
  this.closeMenu("action", "pointer");
1997
2002
  };
1998
2003
  render() {
1999
- return h(Host, { key: "171e647667bab4a9f905f2b531aa2db182fc426f", "data-open": this.internalOpen ? "" : void 0, "data-focus-trigger": this.internalOpen ? this.focusTrigger : void 0, onKeyDown: this.onKeydown, onClick: this.onItemClick }, h("slot", { key: "f1a15e54ab3b14515553e05b4b3cf60ed7a99f8b", name: "trigger" }), h("div", { key: "450aaacf3f75a71ecce86300c0d824452ceec4a0", class: "menu", "data-open": this.internalOpen ? "" : void 0 }, h("ui-menu", { key: "667003b7c6ab3ccbaa888b25cb87d921036ab827", open: this.internalOpen }, h("slot", { key: "c0731115bc3dbd02c4125ef8208269dd97e124bf" }))));
2004
+ return h(Host, { key: "292937da8010dc741e3e845b6f7fd0fef6b8bda3", "data-open": this.internalOpen ? "" : void 0, "data-focus-trigger": this.internalOpen ? this.focusTrigger : void 0, onKeyDown: this.onKeydown, onClick: this.onItemClick }, h("slot", { key: "4f08876237d1919803200226d956e67de35fffab", name: "trigger" }), h("div", { key: "c2cc0218165d02cc4c7fd11bdc52a51d39897546", class: "menu", "data-open": this.internalOpen ? "" : void 0 }, h("ui-menu", { key: "1c2c6e62c86f3a38f014976843f3354d312d0744", open: this.internalOpen }, h("slot", { key: "baeca960ac6d2277a60dc567f6e4110904d67b5e" }))));
2000
2005
  }
2001
2006
  static get watchers() {
2002
2007
  return {
@@ -2028,7 +2033,7 @@ var init_ui_dialog_entry = __esm({
2028
2033
  init_manager_C_0syqXZ();
2029
2034
  init_events_JwSoedEO();
2030
2035
  init_controlled_state_BnGhGgTH();
2031
- uiDialogCss = () => `:host{display:block}:host:not([data-open]){display:none}:host dialog{--ui-dialog-duration:var(--ui-motion-base);--ui-dialog-viewport-gap:var(--ui-space-4, 1rem);position:fixed;inset:0;inline-size:min( calc(100% - (var(--ui-dialog-viewport-gap) * 2)), var(--ui-dialog-max-width, 440px) );max-inline-size:none;max-block-size:calc(100dvh - (var(--ui-dialog-viewport-gap) * 2));margin:auto;padding:var(--ui-space-4);overflow:auto;background:var(--ui-surface-elevated);border:1px solid var(--ui-border-default);border-radius:var(--ui-radius-dialog);box-shadow:var(--ui-shadow-dialog);visibility:hidden;pointer-events:none;opacity:0;transform:scale(0.96);transition:opacity var(--ui-dialog-duration) var(--ui-motion-ease), transform var(--ui-dialog-duration) var(--ui-motion-ease), visibility var(--ui-dialog-duration), display var(--ui-dialog-duration) var(--ui-motion-ease) allow-discrete, overlay var(--ui-dialog-duration) var(--ui-motion-ease) allow-discrete}:host dialog[open]{visibility:visible;pointer-events:auto;opacity:1;transform:scale(1);animation:ui-dialog-enter var(--ui-dialog-duration) var(--ui-motion-ease)}@keyframes ui-dialog-enter{from{opacity:0;transform:scale(0.96)}}:host dialog::backdrop{background-color:transparent;transition:background-color var(--ui-dialog-duration) var(--ui-motion-ease), display var(--ui-dialog-duration) var(--ui-motion-ease) allow-discrete, overlay var(--ui-dialog-duration) var(--ui-motion-ease) allow-discrete}:host dialog[open]::backdrop{background-color:var(--ui-overlay-backdrop);animation:ui-dialog-backdrop-enter var(--ui-dialog-duration) var(--ui-motion-ease)}@keyframes ui-dialog-backdrop-enter{from{background-color:transparent}}`;
2036
+ uiDialogCss = () => `:host{display:block}:host:not([data-open]){display:none}:host dialog{--ui-dialog-duration:var(--ui-motion-base);--ui-dialog-viewport-gap:var(--ui-space-4, 1rem);position:fixed;inset:0;box-sizing:border-box;inline-size:min( calc(100% - (var(--ui-dialog-viewport-gap) * 2)), var(--ui-dialog-max-width, 440px) );max-inline-size:none;max-block-size:calc(100dvh - (var(--ui-dialog-viewport-gap) * 2));margin:auto;padding:var(--ui-space-4);overflow:auto;background:var(--ui-surface-elevated);border:1px solid var(--ui-border-default);border-radius:var(--ui-radius-dialog);box-shadow:var(--ui-shadow-dialog);visibility:hidden;pointer-events:none;opacity:0;transform:scale(0.96);transition:opacity var(--ui-dialog-duration) var(--ui-motion-ease), transform var(--ui-dialog-duration) var(--ui-motion-ease), visibility var(--ui-dialog-duration), display var(--ui-dialog-duration) var(--ui-motion-ease) allow-discrete, overlay var(--ui-dialog-duration) var(--ui-motion-ease) allow-discrete}:host dialog[open]{visibility:visible;pointer-events:auto;opacity:1;transform:scale(1);animation:ui-dialog-enter var(--ui-dialog-duration) var(--ui-motion-ease)}@keyframes ui-dialog-enter{from{opacity:0;transform:scale(0.96)}}:host dialog::backdrop{background-color:transparent;transition:background-color var(--ui-dialog-duration) var(--ui-motion-ease), display var(--ui-dialog-duration) var(--ui-motion-ease) allow-discrete, overlay var(--ui-dialog-duration) var(--ui-motion-ease) allow-discrete}:host dialog[open]::backdrop{background-color:var(--ui-overlay-backdrop);animation:ui-dialog-backdrop-enter var(--ui-dialog-duration) var(--ui-motion-ease)}@keyframes ui-dialog-backdrop-enter{from{background-color:transparent}}`;
2032
2037
  UIDialog = class {
2033
2038
  constructor(hostRef) {
2034
2039
  registerInstance(this, hostRef);
@@ -2134,7 +2139,7 @@ var init_ui_dialog_entry = __esm({
2134
2139
  this.accessibleLabel = nextLabel;
2135
2140
  };
2136
2141
  render() {
2137
- return h(Host, { key: "6e12a287866c76305c791c0ae538dcde63da3044", "data-open": this.internalOpen ? "" : void 0, onKeyDown: this.onKeydown }, h("dialog", { key: "99ba3815e8a8c70ce50ff08d9a8b162aa9c1011f", ref: (el) => this.dialogRef = el, open: this.internalOpen, "aria-label": this.accessibleLabel }, h("slot", { key: "e72b001877d2dfad1bcee9af87167c66d77fc952" })));
2142
+ return h(Host, { key: "f5b4441f54505e40851dd239d12cf8ed09daabfe", "data-open": this.internalOpen ? "" : void 0, onKeyDown: this.onKeydown }, h("dialog", { key: "6896de6166cc085d9bd581dc053705fbce6328d8", ref: (el) => this.dialogRef = el, open: this.internalOpen, "aria-label": this.accessibleLabel }, h("slot", { key: "07515a7b8da25ccbd18bcde226129a569c999af7" })));
2138
2143
  }
2139
2144
  static get watchers() {
2140
2145
  return {
@@ -2267,7 +2272,7 @@ var init_ui_disclosure_entry = __esm({
2267
2272
  this.setOpen(!this.internalOpen, { reason: "action", trigger: "keyboard" });
2268
2273
  };
2269
2274
  render() {
2270
- return h(Host, { key: "55f998f8e47ebe01fd5832d6c3dac310dda34b8d" }, h("slot", { key: "0d88728151901e1e412d7f5a3ae78b06aa7548fb" }));
2275
+ return h(Host, { key: "5c49c41703850437e8b3a1476f3333da83a4f133" }, h("slot", { key: "9a4856ad2ab237331b8485f6c3a423a43ddceb8d" }));
2271
2276
  }
2272
2277
  static get watchers() {
2273
2278
  return {
@@ -2377,7 +2382,7 @@ var init_ui_editable_entry = __esm({
2377
2382
  this.requestEdit(false, "light-dismiss", "pointer");
2378
2383
  };
2379
2384
  render() {
2380
- return h(Host, { key: "f350400d4ebf897fb657b83b7cba9d309c5067bd", "data-edit": this.internalEdit ? "" : void 0, "data-disabled": this.disabled ? "" : void 0, onClick: this.onClick, onKeyDown: this.onKeyDown }, h("div", { key: "f365ac61f59e9aaa1516121e3d6e2a42187e1d7b", part: "preview", hidden: this.internalEdit }, h("slot", { key: "ea234b437cc4eb530f2994d695429be91d874ef7", name: "preview" })), h("div", { key: "dacf0e74e72c47868986c80aaa60f55942fd9505", part: "edit", hidden: !this.internalEdit }, h("slot", { key: "54a943bc290335181a23b4cfa6055e4acfd8a62b", name: "edit" })));
2385
+ return h(Host, { key: "7f0c77aa06281c94407af1f060f5f2b2c34af394", "data-edit": this.internalEdit ? "" : void 0, "data-disabled": this.disabled ? "" : void 0, onClick: this.onClick, onKeyDown: this.onKeyDown }, h("div", { key: "4dc13c26dc4080ed0ad972aa677d9e844a0e7597", part: "preview", hidden: this.internalEdit }, h("slot", { key: "8332efed99f05173030d379088e8e97746f32ce6", name: "preview" })), h("div", { key: "ec3e11ec9218077da5f17a0c724cfab17d56fb17", part: "edit", hidden: !this.internalEdit }, h("slot", { key: "46a4618614c6e55c0015d97e687a0f28e05eef38", name: "edit" })));
2381
2386
  }
2382
2387
  static get watchers() {
2383
2388
  return {
@@ -2409,7 +2414,7 @@ var init_ui_floating_action_button_entry = __esm({
2409
2414
  mobileOnly = false;
2410
2415
  label = "";
2411
2416
  render() {
2412
- return h(Host, { key: "9e917e07efcef5c0a96b8b09af8934f336a521bd", "data-disabled": this.disabled ? "" : void 0 }, h("button", { key: "940daac4c2ff1144d7e82b36727205f286325a8e", type: "button", "aria-label": this.label || void 0, disabled: this.disabled }, h("slot", { key: "382c70aa4836f6e799f98e1f0e4bc6e3104430fc" })));
2417
+ return h(Host, { key: "86f7c100efe7fdf900de7abbcc1a01c475b0da1d", "data-disabled": this.disabled ? "" : void 0 }, h("button", { key: "91398faeb693dcbe11d58e59a183391ce6e4876c", type: "button", "aria-label": this.label || void 0, disabled: this.disabled }, h("slot", { key: "d11b6f638b045d6835279f3381442983b40472d9" })));
2413
2418
  }
2414
2419
  };
2415
2420
  UIFloatingActionButton.style = uiFloatingActionButtonCss();
@@ -2528,7 +2533,7 @@ var init_ui_form_field_entry = __esm({
2528
2533
  input.setAttribute("aria-invalid", this.invalid ? "true" : "false");
2529
2534
  }
2530
2535
  render() {
2531
- return h(Host, { key: "ac01e2be489b9c907169417dc5064061bd74ff7c", "data-invalid": this.invalid ? "" : void 0, "data-disabled": this.disabled ? "" : void 0, "data-required": this.required ? "" : void 0 }, h("slot", { key: "c739f9b2c948bc1d3db4316871c2293bf75cf520", onSlotchange: this.scheduleWire }));
2536
+ return h(Host, { key: "3d331f3506c3853d751395569e87614c52ce0076", "data-invalid": this.invalid ? "" : void 0, "data-disabled": this.disabled ? "" : void 0, "data-required": this.required ? "" : void 0 }, h("slot", { key: "1b582b4961a767230b19efa314943f8a5426270e", onSlotchange: this.scheduleWire }));
2532
2537
  }
2533
2538
  };
2534
2539
  UIFormField.style = uiFormFieldCss();
@@ -2556,7 +2561,7 @@ var init_ui_icon_button_entry = __esm({
2556
2561
  /** Reveals this control through a surrounding ui-affordance-scope. */
2557
2562
  anticipatory = false;
2558
2563
  render() {
2559
- return h(Host, { key: "225e147d184109d39a2e6f9236ba3ba3c5864c31", "data-disabled": this.disabled ? "" : void 0, "data-ui-affordance": this.anticipatory ? "button" : void 0 }, h("button", { key: "7e54fab4520ae6641c974abf19e975e8eec7a3df", type: "button", "aria-label": this.label || void 0, disabled: this.disabled }, h("slot", { key: "54f9ba27c5a2ca896267f07ad1055907e74a64bc" })));
2564
+ return h(Host, { key: "9e8ee3ff8c9f9ab5113a7635e49755e0eb998898", "data-disabled": this.disabled ? "" : void 0, "data-ui-affordance": this.anticipatory ? "button" : void 0 }, h("button", { key: "7f6dd5ae40b595634ba91834c2bb113687ee5cb8", type: "button", "aria-label": this.label || void 0, disabled: this.disabled }, h("slot", { key: "c7a94d7fb54fbff44e372bf4f67bb29a40bfc45b" })));
2560
2565
  }
2561
2566
  };
2562
2567
  UIIconButton.style = uiIconButtonCss();
@@ -2646,7 +2651,7 @@ var init_ui_input_entry = __esm({
2646
2651
  });
2647
2652
  };
2648
2653
  render() {
2649
- return h(Host, { key: "0d8676e8458476681653ef4600dcb0f3b56d1ed1", "data-invalid": this.invalid ? "" : void 0 }, h("slot", { key: "d3585c07b6985d9090002f7a9c0eea1227517e0f", ref: (el) => this.slotRef = el }));
2654
+ return h(Host, { key: "90597a900e0504f0e729990dd8cbc84c35d8162f", "data-invalid": this.invalid ? "" : void 0 }, h("slot", { key: "1c8ac0ad7e4d3a5a9b913c2687021ef7037ccfa7", ref: (el) => this.slotRef = el }));
2650
2655
  }
2651
2656
  static get watchers() {
2652
2657
  return {
@@ -2692,7 +2697,7 @@ var init_ui_menu_item_entry = __esm({
2692
2697
  disabled = false;
2693
2698
  value = "";
2694
2699
  render() {
2695
- return h(Host, { key: "711e7f70268d23969e40073cd47b065afadc22c9", role: "menuitem", tabIndex: this.disabled ? -1 : 0, "aria-disabled": this.disabled ? "true" : void 0, "data-value": this.value || void 0 }, h("span", { key: "d0c0aff983bdbc48666fcd652b39340bfd92c790", class: "menu-item__surface" }, h("slot", { key: "3fc6111848142b388529a9cdb5f6134bffe8fa42" })));
2700
+ return h(Host, { key: "856cf07264b2eb8e3e51305408855156e11d9a8b", role: "menuitem", tabIndex: this.disabled ? -1 : 0, "aria-disabled": this.disabled ? "true" : void 0, "data-value": this.value || void 0 }, h("span", { key: "a56401f9b910175eb5683d1748f323dce0d55a9c", class: "menu-item__surface" }, h("slot", { key: "4ee22fd4cdb10ec822e4485e48ed8000a10512ae" })));
2696
2701
  }
2697
2702
  };
2698
2703
  UIMenuItem.style = uiMenuItemCss();
@@ -2711,8 +2716,8 @@ var init_ui_menu_entry = __esm({
2711
2716
  init_events_JwSoedEO();
2712
2717
  init_manager_C_0syqXZ();
2713
2718
  init_controlled_state_BnGhGgTH();
2714
- init_positioning_Bu0dmLBE();
2715
- uiMenuCss = () => `:host{--ui-menu-viewport-gap:var(--ui-space-2, 0.5rem);display:flex;flex-direction:column;box-sizing:border-box;inline-size:max-content;min-inline-size:min(12rem, calc(100vw - (var(--ui-menu-viewport-gap) * 2)));max-inline-size:calc(100vw - (var(--ui-menu-viewport-gap) * 2));padding:0;border:0;border-radius:0;background:transparent;box-shadow:var(--ui-shadow-lg)}.menu__surface{display:flex;flex-direction:column;box-sizing:border-box;padding:var(--ui-space-1);background:var(--ui-surface-elevated);border:1px solid var(--ui-border-default);border-radius:var(--ui-radius-3)}:host(:not([data-open])){display:none}:host([popover]){position:fixed;inset:auto;margin:0;overflow:auto;max-block-size:calc(100dvh - (var(--ui-menu-viewport-gap) * 2));opacity:0;transform:translateY(-4px) scale(0.99);transition:opacity var(--ui-motion-fast) var(--ui-motion-ease), transform var(--ui-motion-fast) var(--ui-motion-ease), display var(--ui-motion-fast) allow-discrete, overlay var(--ui-motion-fast) allow-discrete}:host([popover]:popover-open){opacity:1;transform:translateY(0) scale(1)}@starting-style{:host([popover]:popover-open){opacity:0;transform:translateY(-4px) scale(0.99)}}:host([hidden]){display:none !important}@media (prefers-reduced-motion: reduce){:host([popover]){transition:none}}::slotted(ui-menu-item){display:block;width:100%}`;
2719
+ init_positioning_Drmwg_C1();
2720
+ uiMenuCss = () => `:host{--ui-menu-viewport-gap:var(--ui-space-2, 0.5rem);display:flex;flex-direction:column;box-sizing:border-box;inline-size:max-content;min-inline-size:min(12rem, calc(100vw - (var(--ui-menu-viewport-gap) * 2)));max-inline-size:calc(100vw - (var(--ui-menu-viewport-gap) * 2));padding:0;border:0;border-radius:0;background:transparent;box-shadow:none;overflow:visible}.menu__surface{display:flex;flex-direction:column;box-sizing:border-box;max-inline-size:inherit;padding:var(--ui-space-1);background:var(--ui-surface-elevated);border:1px solid var(--ui-border-default);border-radius:var(--ui-radius-3);box-shadow:var(--ui-shadow-lg);max-block-size:inherit;overflow:auto}:host(:not([data-open])){display:none}:host([popover]){position:fixed;inset:auto;margin:0;overflow:visible;max-block-size:calc(100dvh - (var(--ui-menu-viewport-gap) * 2));opacity:0;transform:translateY(-4px) scale(0.99);transition:opacity var(--ui-motion-fast) var(--ui-motion-ease), transform var(--ui-motion-fast) var(--ui-motion-ease), display var(--ui-motion-fast) allow-discrete, overlay var(--ui-motion-fast) allow-discrete}:host([popover]:popover-open){opacity:1;transform:translateY(0) scale(1)}@starting-style{:host([popover]:popover-open){opacity:0;transform:translateY(-4px) scale(0.99)}}:host([hidden]){display:none !important}@media (prefers-reduced-motion: reduce){:host([popover]){transition:none}}::slotted(ui-menu-item){display:block;width:100%}`;
2716
2721
  UIMenu = class {
2717
2722
  constructor(hostRef) {
2718
2723
  registerInstance(this, hostRef);
@@ -2857,7 +2862,7 @@ var init_ui_menu_entry = __esm({
2857
2862
  }
2858
2863
  };
2859
2864
  render() {
2860
- return h(Host, { key: "afba5a7f63238afdb6f71a3636c1f294d3e8ac6f", role: "menu", "aria-orientation": "vertical", "data-open": this.internalOpen ? "" : void 0 }, h("div", { key: "50d770efd27dddca436b804f10f1cc40bc604cb5", class: "menu__surface" }, h("slot", { key: "5014fc43a0ee2d66168bbcc1d52b20bd5120acb9" })));
2865
+ return h(Host, { key: "22689ca1b0514bb27a76bfb9a702c0d4ce49d136", role: "menu", "aria-orientation": "vertical", "data-open": this.internalOpen ? "" : void 0 }, h("div", { key: "cff891a33348f077631f1b92f1167285aafd25f1", class: "menu__surface" }, h("slot", { key: "3a0e9ff4f36b1afbe5f879e0e51ff4943279b5b5" })));
2861
2866
  }
2862
2867
  static get watchers() {
2863
2868
  return {
@@ -2889,7 +2894,7 @@ var uiMultiComboboxCss, UIMultiCombobox;
2889
2894
  var init_ui_multi_combobox_entry = __esm({
2890
2895
  "dist/esm/ui-multi-combobox.entry.js"() {
2891
2896
  init_index_8BGiMGQ0();
2892
- uiMultiComboboxCss = () => `:host{display:block;min-inline-size:0;color:var(--ui-text-primary);font:inherit}ui-combobox::part(field){flex-wrap:wrap;align-items:center;gap:var(--ui-space-1);min-block-size:var(--ui-multi-combobox-min-block-size, 2.5rem);padding:var(--ui-space-1)}ui-combobox::part(input){flex:1 0 var(--ui-multi-combobox-input-min-inline-size, 5rem);width:auto;min-block-size:1.75rem;padding:var(--ui-space-0-5) var(--ui-space-1)}.items{display:contents}.item{appearance:none;display:inline-flex;max-inline-size:100%;padding:0;border:0;border-radius:var(--ui-radius-1);background:transparent;color:inherit;font:inherit;cursor:default}.item:focus-visible{outline:2px solid var(--ui-focus-ring);outline-offset:1px}.item:disabled{opacity:.6}`;
2897
+ uiMultiComboboxCss = () => `:host{display:block;min-inline-size:0;color:var(--ui-text-primary);font:inherit}ui-combobox::part(field){flex-wrap:wrap;align-items:center;gap:var(--ui-space-1);min-block-size:var(--ui-multi-combobox-min-block-size, 2.5rem);padding:var(--ui-space-1)}ui-combobox::part(input){flex:1 0 var(--ui-multi-combobox-input-min-inline-size, 5rem);width:auto;min-block-size:1.75rem;padding:var(--ui-space-0-5) var(--ui-space-1)}.items{display:contents}.item{appearance:none;display:inline-flex;min-inline-size:0;max-inline-size:min(100%, var(--ui-multi-combobox-item-max-inline-size, 12rem));overflow:hidden;padding:0;border:0;border-radius:var(--ui-radius-1);background:transparent;color:inherit;font:inherit;cursor:default}.item>slot{display:block;min-inline-size:0;max-inline-size:100%;overflow:hidden}.item>slot::slotted(*){min-inline-size:0;max-inline-size:100%}.item:focus-visible{outline:2px solid var(--ui-focus-ring);outline-offset:1px}.item:disabled{opacity:.6}`;
2893
2898
  UIMultiCombobox = class {
2894
2899
  constructor(hostRef) {
2895
2900
  registerInstance(this, hostRef);
@@ -3062,7 +3067,7 @@ var init_ui_multi_combobox_entry = __esm({
3062
3067
  await this.combobox?.focusInput();
3063
3068
  }
3064
3069
  render() {
3065
- return h(Host, { key: "c1acc758a2856e5bd022e076030798c9d63ff416", onKeyDown: this.onKeyDown }, h("ui-combobox", { key: "8f77d28aa1d228dd809f86695429328decaf7468", ref: (element) => this.combobox = element, label: this.label, "label-visibility": "sr-only", placeholder: this.placeholder, name: this.name, value: null, query: this.raw, config: this.comboboxConfig, size: "sm", disabled: this.disabled, readOnly: this.readOnly, required: this.required, "onQuery-change": this.onQueryChange, "onValue-change": this.onValueChange, "onCreate-entry": this.onCreateEntry, "onOptions-change": this.onOptionsChange }, h("div", { key: "f4f0849c145d9bcc4d47103d3dc4fdce8009aeab", slot: "start", class: "items", role: "group", "aria-label": `Selected ${this.label}` }, this.items.map((item, index) => h("button", { type: "button", part: "item", class: "item", "data-value": item.value, tabIndex: -1, disabled: this.disabled || this.readOnly || item.disabled, "aria-label": `${item.label}, press Delete or Backspace to remove`, onKeyDown: (event) => this.onItemKeyDown(event, index) }, h("slot", { name: `item-${item.id}` }, h("ui-chip", { appearance: "pill" }, item.label))))), this.rows.map((option) => h("span", { slot: `option-${option.id}` }, h("slot", { name: `option-${option.id}` }, option.label))), h("span", { key: "3cf42f492bd946ca130321a2c3fcf976602c6566", slot: "create" }, h("slot", { key: "6f158cb1d96c0d0401fe5302cabffd052498f651", name: "create" }, "Create \u201C", this.raw, "\u201D")), h("span", { key: "0f436aca38aecf9485963d6588c27ab3288ced55", slot: "loading" }, h("slot", { key: "6c079ac5bbf6fff57aa7fa6f0022a939c96a5cd0", name: "loading" }, "Loading suggestions\u2026")), h("span", { key: "a7893e0ff0a1922a404e7c072338858d9e7fdf12", slot: "empty" }, h("slot", { key: "d6831db76cc1252aa942ccdcfba36c8cf4c60d22", name: "empty" }, "No suggestions.")), h("span", { key: "a096a393a167256cff11f77110ae29ac58a33779", slot: "error" }, h("slot", { key: "1bf52c85e911d9965b9b691d6ebf0b89bbea2d58", name: "error" }, "Unable to load suggestions.")), h("div", { key: "b7d88c9b427305da8b986eb993b49e5c581c1445", slot: "footer" }, h("slot", { key: "f84fdf78c3e373f4735ed88574af06f1ca3cc1b5", name: "footer" }))));
3070
+ return h(Host, { key: "ba4db0fdca6cae344fe6b0bf06c933a9a90d2d3f", onKeyDown: this.onKeyDown }, h("ui-combobox", { key: "f5901b0b078b479425114d998618828cc458e7dd", ref: (element) => this.combobox = element, label: this.label, "label-visibility": "sr-only", placeholder: this.placeholder, name: this.name, value: null, query: this.raw, config: this.comboboxConfig, size: "sm", disabled: this.disabled, readOnly: this.readOnly, required: this.required, "onQuery-change": this.onQueryChange, "onValue-change": this.onValueChange, "onCreate-entry": this.onCreateEntry, "onOptions-change": this.onOptionsChange }, h("div", { key: "374c80862302d5c36f4849f42e5ed13222addd1c", slot: "start", class: "items", role: "group", "aria-label": `Selected ${this.label}` }, this.items.map((item, index) => h("button", { type: "button", part: "item", class: "item", "data-value": item.value, tabIndex: -1, disabled: this.disabled || this.readOnly || item.disabled, "aria-label": `${item.label}, press Delete or Backspace to remove`, onKeyDown: (event) => this.onItemKeyDown(event, index) }, h("slot", { name: `item-${item.id}` }, h("ui-chip", { appearance: "pill" }, item.label))))), this.rows.map((option) => h("span", { slot: `option-${option.id}` }, h("slot", { name: `option-${option.id}` }, option.label))), h("span", { key: "a23781c153e154cdff7066868c2da956e26b7d52", slot: "create" }, h("slot", { key: "e3bde0d1e549e785fff877a1a7aac10df308f7a3", name: "create" }, "Create \u201C", this.raw, "\u201D")), h("span", { key: "5837c4cde35d5984aaf1d364f1b850b9d63ff8ca", slot: "loading" }, h("slot", { key: "1bdfa30849bea752bc5c93268b3427c964d1b5d3", name: "loading" }, "Loading suggestions\u2026")), h("span", { key: "519d7b1a7f28f9d19cd441598a690c8b4fdacf5b", slot: "empty" }, h("slot", { key: "3163150e0f1edebb50509a5dacd576e4568eaaae", name: "empty" }, "No suggestions.")), h("span", { key: "655e4f85d70eb97f0f0ecb2bac7b4228f5cf580f", slot: "error" }, h("slot", { key: "a22667db30ee30003855ee69774eff3a4aab8566", name: "error" }, "Unable to load suggestions.")), h("div", { key: "b01b74f3fc7136a3bf1875c81b9f3a662f3e993c", slot: "footer" }, h("slot", { key: "7565ee0798072eebc6d1c458f89ce6c7941577dd", name: "footer" }))));
3066
3071
  }
3067
3072
  static get watchers() {
3068
3073
  return {
@@ -3088,8 +3093,8 @@ var init_ui_popover_entry = __esm({
3088
3093
  init_manager_C_0syqXZ();
3089
3094
  init_events_JwSoedEO();
3090
3095
  init_controlled_state_BnGhGgTH();
3091
- init_positioning_Bu0dmLBE();
3092
- uiPopoverCss = () => `:host{--ui-popover-viewport-gap:var(--ui-space-2, 0.5rem);box-sizing:border-box;max-inline-size:min( 20rem, calc(100vw - (var(--ui-popover-viewport-gap) * 2)) );max-block-size:calc(100dvh - (var(--ui-popover-viewport-gap) * 2));overflow:auto;padding:0;border:0;border-radius:0;background:transparent;box-shadow:var(--ui-shadow-lg)}.popover__surface{box-sizing:border-box;padding:var(--ui-space-3);background:var(--ui-surface-elevated);border:1px solid var(--ui-border-default);border-radius:var(--ui-radius-3)}:host(:not([data-open])){display:none}:host([popover]){position:fixed;inset:auto;margin:0;opacity:0;transform:translateY(-4px) scale(0.99);transition:opacity var(--ui-motion-fast) var(--ui-motion-ease), transform var(--ui-motion-fast) var(--ui-motion-ease), display var(--ui-motion-fast) allow-discrete, overlay var(--ui-motion-fast) allow-discrete}:host([popover]:popover-open){opacity:1;transform:translateY(0) scale(1)}@starting-style{:host([popover]:popover-open){opacity:0;transform:translateY(-4px) scale(0.99)}}:host([hidden]){display:none !important}@media (prefers-reduced-motion: reduce){:host([popover]){transition:none}}`;
3096
+ init_positioning_Drmwg_C1();
3097
+ uiPopoverCss = () => `:host{--ui-popover-viewport-gap:var(--ui-space-2, 0.5rem);box-sizing:border-box;max-inline-size:min( 20rem, calc(100vw - (var(--ui-popover-viewport-gap) * 2)) );max-block-size:calc(100dvh - (var(--ui-popover-viewport-gap) * 2));overflow:visible;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none}.popover__surface{box-sizing:border-box;max-inline-size:inherit;max-block-size:inherit;overflow:auto;padding:var(--ui-space-3);background:var(--ui-surface-elevated);border:1px solid var(--ui-border-default);border-radius:var(--ui-radius-3);box-shadow:var(--ui-shadow-lg)}:host(:not([data-open])){display:none}:host([popover]){position:fixed;inset:auto;margin:0;opacity:0;transform:translateY(-4px) scale(0.99);transition:opacity var(--ui-motion-fast) var(--ui-motion-ease), transform var(--ui-motion-fast) var(--ui-motion-ease), display var(--ui-motion-fast) allow-discrete, overlay var(--ui-motion-fast) allow-discrete}:host([popover]:popover-open){opacity:1;transform:translateY(0) scale(1)}@starting-style{:host([popover]:popover-open){opacity:0;transform:translateY(-4px) scale(0.99)}}:host([hidden]){display:none !important}@media (prefers-reduced-motion: reduce){:host([popover]){transition:none}}`;
3093
3098
  UIPopover = class {
3094
3099
  constructor(hostRef) {
3095
3100
  registerInstance(this, hostRef);
@@ -3195,7 +3200,7 @@ var init_ui_popover_entry = __esm({
3195
3200
  }
3196
3201
  };
3197
3202
  render() {
3198
- return h(Host, { key: "a4986ace0f3c586774a549cb844287b28ccd0531", "data-open": this.internalOpen ? "" : void 0, onKeyDown: this.onKeydown }, h("div", { key: "8f2c589916d06138ef72bfe0d039893b3c59a7cc", class: "popover__surface" }, h("slot", { key: "ee70e7dcc53a99b5c80e56862a6eb00edcfcf912" })));
3203
+ return h(Host, { key: "f63907b8e49b8264c291048c509b6164fdd60ca4", "data-open": this.internalOpen ? "" : void 0, onKeyDown: this.onKeydown }, h("div", { key: "2425f4394749d994693f4a256256bd9e2f5daf60", class: "popover__surface" }, h("slot", { key: "3b6f925da371d43e828842c4027cddee673d7ab3" })));
3199
3204
  }
3200
3205
  static get watchers() {
3201
3206
  return {
@@ -3332,7 +3337,7 @@ var init_ui_radio_group_entry = __esm({
3332
3337
  }
3333
3338
  };
3334
3339
  render() {
3335
- return h(Host, { key: "1882ad7c092c6a138eab2a52c19beb9a950a8d5a", role: "radiogroup", "aria-orientation": this.orientation, "data-orientation": this.orientation, "data-disabled": this.disabled ? "" : void 0 }, h("slot", { key: "d5abade3d23963410cfbac17e80aa16dd21ccc6e" }));
3340
+ return h(Host, { key: "31d8dee04aad4ddbb0bfa617a4e6ed187eab6674", role: "radiogroup", "aria-orientation": this.orientation, "data-orientation": this.orientation, "data-disabled": this.disabled ? "" : void 0 }, h("slot", { key: "7134bcfa6b11cbe0d0d55a6593ea3fca921a71ec" }));
3336
3341
  }
3337
3342
  static get watchers() {
3338
3343
  return {
@@ -3435,7 +3440,7 @@ var init_ui_radio_entry = __esm({
3435
3440
  });
3436
3441
  };
3437
3442
  render() {
3438
- return h(Host, { key: "f4700b43790accd29a6bcc55fcc862072e29c335", role: "radio", "aria-checked": String(this.internalChecked), "aria-disabled": String(this.disabled), "data-disabled": this.disabled ? "" : void 0 }, h("slot", { key: "ed32c35f8f68c662a8b95e58b74c8c76c959ea49", ref: (el) => this.slotRef = el }));
3443
+ return h(Host, { key: "5bab1394b8238609e4382309e4b11bca82a60b12", role: "radio", "aria-checked": String(this.internalChecked), "aria-disabled": String(this.disabled), "data-disabled": this.disabled ? "" : void 0 }, h("slot", { key: "56ba5b7ec4ab53299c66689558338d2c6ab3e4f6", ref: (el) => this.slotRef = el }));
3439
3444
  }
3440
3445
  static get watchers() {
3441
3446
  return {
@@ -3506,7 +3511,7 @@ var init_ui_search_result_row_entry = __esm({
3506
3511
  this.hasTrailing = slotHasContent(this.trailingSlot);
3507
3512
  };
3508
3513
  render() {
3509
- return h(Host, { key: "eeda041dbcf8841cd53be9c532df208eb3be3d3b" }, h("button", { key: "71d3db6d2eca4f8d7796429f68ef73bf2c7b62f7", class: "search-result-row", type: "button", disabled: this.disabled, part: "button" }, h("span", { key: "f2260cab9f654e7f5e96a5e7e2a1cbbb5a55fde3", class: "search-result-row__leading", part: "leading", hidden: !this.hasLeading }, h("slot", { key: "824fffc19c2b5712dae0c000f12cc36a0043a370", name: "leading", ref: (el) => this.leadingSlot = el, onSlotchange: this.syncSlots })), h("span", { key: "4e3728ea7d363f256f1b3283df6eb984cf3f570f", class: "search-result-row__content", part: "content" }, h("span", { key: "95009b1ce569fb4251df62334a5dd88f1de561af", class: "search-result-row__title", part: "title" }, h("slot", { key: "132beecf36471ae0db68d686829428225699c534", name: "title" })), h("span", { key: "0ad7c8d52aa40ccf62667d3ecca4d48b49917a9a", class: "search-result-row__meta", part: "meta", hidden: !this.hasMeta }, h("slot", { key: "4b97129504571a676839287bd87e68d803f8bc99", name: "meta", ref: (el) => this.metaSlot = el, onSlotchange: this.syncSlots })), h("span", { key: "e6c73e653fb7dc213866a15870281f3f6d95a86b", class: "search-result-row__excerpt", part: "excerpt", hidden: !this.hasExcerpt }, h("slot", { key: "49deae8194485304380b8b4b3d4fe96cd6623f4d", name: "excerpt", ref: (el) => this.excerptSlot = el, onSlotchange: this.syncSlots }))), h("span", { key: "c7c6f0b57668644a28d3c4c981b4db79a0e3c42a", class: "search-result-row__trailing", part: "trailing", hidden: !this.hasTrailing }, h("slot", { key: "e6cbceeb41d23c9b7514f53663438069499d1a4d", name: "trailing", ref: (el) => this.trailingSlot = el, onSlotchange: this.syncSlots }))));
3514
+ return h(Host, { key: "2e1a1fe613e499a8abaaf89c8cc071554b523157" }, h("button", { key: "2224a7593feb6c58b162ce820b2deb9bec4fa1b7", class: "search-result-row", type: "button", disabled: this.disabled, part: "button" }, h("span", { key: "87b86a7d31e15b401b933562adba9a24c88e341f", class: "search-result-row__leading", part: "leading", hidden: !this.hasLeading }, h("slot", { key: "00d253826d2d0c60206e20b6428c3277024a24e0", name: "leading", ref: (el) => this.leadingSlot = el, onSlotchange: this.syncSlots })), h("span", { key: "3c4ad5b336450c29d56aea538dbc987b9a624c1d", class: "search-result-row__content", part: "content" }, h("span", { key: "305dc47dcac890ca968d622ce3dc18e88d646ab3", class: "search-result-row__title", part: "title" }, h("slot", { key: "5441b78d87cba9e48eb3b786e7ea914479f5ef15", name: "title" })), h("span", { key: "bbd7769b81005b959e6d950255951f0089e9e716", class: "search-result-row__meta", part: "meta", hidden: !this.hasMeta }, h("slot", { key: "8437dd124e858eadb942e2a05ccd87c14a8ea604", name: "meta", ref: (el) => this.metaSlot = el, onSlotchange: this.syncSlots })), h("span", { key: "6939cb19881b17799205a54eda9d34e86563f994", class: "search-result-row__excerpt", part: "excerpt", hidden: !this.hasExcerpt }, h("slot", { key: "2f41b9ec22a0260e4196553a655cc501384f2331", name: "excerpt", ref: (el) => this.excerptSlot = el, onSlotchange: this.syncSlots }))), h("span", { key: "162de66c31688de9114233984448eb5b30d48dc3", class: "search-result-row__trailing", part: "trailing", hidden: !this.hasTrailing }, h("slot", { key: "dfa3d5bbbe453a8fd1c3ddf9508bf33edf145dc6", name: "trailing", ref: (el) => this.trailingSlot = el, onSlotchange: this.syncSlots }))));
3510
3515
  }
3511
3516
  };
3512
3517
  UISearchResultRow.style = uiSearchResultRowCss();
@@ -3550,7 +3555,7 @@ var init_ui_search_shell_entry = __esm({
3550
3555
  this.hasFooter = slotHasContent2(this.footerSlot);
3551
3556
  };
3552
3557
  render() {
3553
- return h("div", { key: "ae5baf1fae88f3c0ff8c98e68e1c31d7f19d7b6a", class: "search-shell", part: "base" }, h("slot", { key: "192d10867902bc4618762ab3ce1ca8a44229ec11", name: "backdrop" }), h("div", { key: "72bafd3ba7aadebcb011fb27f56793a9079bb2e1", class: "search-shell__panel", part: "panel" }, h("div", { key: "c2d46c9099699cc1c2f357cb51d11ab0e6cf6c69", class: "search-shell__search", part: "search" }, h("slot", { key: "21f4ed690247fa794bd9322c75cee1721926087a", name: "search" })), h("div", { key: "84baba674456aa2a5878d5858d0e6531251440ce", class: "search-shell__status", part: "status", hidden: !this.hasStatus }, h("slot", { key: "6e7b6533a29231ebbcd41529d8120649ca4a1dd1", name: "status", ref: (el) => this.statusSlot = el, onSlotchange: this.syncSlots })), h("div", { key: "710d51d450132ad0f528b2eb2cd6f0312dbced2f", class: "search-shell__body", part: "body" }, h("slot", { key: "2c380ff4ad33ead6ca8c2611ebc024f125f0da48", name: "body" })), h("div", { key: "6923984a31c7bc23bae3ecee08d7acad14703a02", class: "search-shell__footer", part: "footer", hidden: !this.hasFooter }, h("slot", { key: "57c2eab7a3f46558ada8d1aa70d64f434bb8cdd6", name: "footer", ref: (el) => this.footerSlot = el, onSlotchange: this.syncSlots }))));
3558
+ return h("div", { key: "508a5900288b0b7e0651d3a56e1f5a9094061952", class: "search-shell", part: "base" }, h("slot", { key: "54677a395d62aed4538bb36255046a1d679da312", name: "backdrop" }), h("div", { key: "f738673e5a95509803d2c4682adb4aa48f7b798f", class: "search-shell__panel", part: "panel" }, h("div", { key: "8e4a14fcc5e7cc0ff3c2c94ad72cb6b4305d4fea", class: "search-shell__search", part: "search" }, h("slot", { key: "28f3d8439964423fe9beeac91490a70a30a36b6e", name: "search" })), h("div", { key: "8bcd00a532eea21a41a7771636bc038c27c55a31", class: "search-shell__status", part: "status", hidden: !this.hasStatus }, h("slot", { key: "4a4c9082f2645e80fdfa2a8b71a1747573d02f73", name: "status", ref: (el) => this.statusSlot = el, onSlotchange: this.syncSlots })), h("div", { key: "58439a3d479f042f827abce2a99dc1ae75db5ca1", class: "search-shell__body", part: "body" }, h("slot", { key: "5f6c4202b0abeb3708bed415a576e877c94f1eb1", name: "body" })), h("div", { key: "7a2887f7220619db2ccb5a907623c3e760d1e073", class: "search-shell__footer", part: "footer", hidden: !this.hasFooter }, h("slot", { key: "26c8f839b8add2b52c6940e67a6a7c94a8ffcf31", name: "footer", ref: (el) => this.footerSlot = el, onSlotchange: this.syncSlots }))));
3554
3559
  }
3555
3560
  };
3556
3561
  UISearchShell.style = uiSearchShellCss();
@@ -3643,7 +3648,7 @@ var init_ui_select_entry = __esm({
3643
3648
  });
3644
3649
  };
3645
3650
  render() {
3646
- return h(Host, { key: "74cbe4a76a23af415c202c61951ad513b0ed6cb8", "data-invalid": this.invalid ? "" : void 0 }, h("slot", { key: "e86eb0cfb0d379cb3f8b2ea5ce3c69639d0cdda4", ref: (el) => this.slotRef = el }));
3651
+ return h(Host, { key: "5b77bfa817964325038cf338a1c0791abf8d2bfe", "data-invalid": this.invalid ? "" : void 0 }, h("slot", { key: "9a9c8017e5e02d14945d6b7c84d68edf7b2ccaf8", ref: (el) => this.slotRef = el }));
3647
3652
  }
3648
3653
  static get watchers() {
3649
3654
  return {
@@ -3729,7 +3734,7 @@ var init_ui_switch_entry = __esm({
3729
3734
  this.toggle("pointer");
3730
3735
  };
3731
3736
  render() {
3732
- return h(Host, { key: "a37ded5259d71a57308cba6dd158ae4ae81e4e8b", role: "switch", "aria-checked": String(this.internalChecked), "aria-disabled": String(this.disabled), "data-disabled": this.disabled ? "" : void 0, tabIndex: this.disabled ? -1 : 0, onKeyDown: this.onKeydown, onClick: this.onClick }, h("input", { key: "882f81f39d752430f1de1554a5d83176416f4617", type: "checkbox", checked: this.internalChecked, disabled: this.disabled, required: this.required, value: this.value, "aria-hidden": "true", tabIndex: -1, onChange: (e) => {
3737
+ return h(Host, { key: "e5ec7f2f91e860dd679098f30b40cbe0e52ccb1f", role: "switch", "aria-checked": String(this.internalChecked), "aria-disabled": String(this.disabled), "data-disabled": this.disabled ? "" : void 0, tabIndex: this.disabled ? -1 : 0, onKeyDown: this.onKeydown, onClick: this.onClick }, h("input", { key: "c21462377a81d7242633e7d358f56fd7a276f584", type: "checkbox", checked: this.internalChecked, disabled: this.disabled, required: this.required, value: this.value, "aria-hidden": "true", tabIndex: -1, onChange: (e) => {
3733
3738
  const input = e.target;
3734
3739
  const checked = input.checked;
3735
3740
  if (!isControlled(this.checked))
@@ -3741,7 +3746,7 @@ var init_ui_switch_entry = __esm({
3741
3746
  });
3742
3747
  if (isControlled(this.checked))
3743
3748
  input.checked = this.internalChecked;
3744
- } }), h("slot", { key: "b3b2b5afae622d1ae79cadd84f60c6b6c2df55a4" }));
3749
+ } }), h("slot", { key: "e3f4f032bc41784ed41591d4fd175b89a4162c49" }));
3745
3750
  }
3746
3751
  static get watchers() {
3747
3752
  return {
@@ -3858,7 +3863,7 @@ var init_ui_tabs_entry = __esm({
3858
3863
  }
3859
3864
  };
3860
3865
  render() {
3861
- return h(Host, { key: "19207153c7b7a6ea5f5ffb50439e99af70984b44", orientation: this.orientation, "data-orientation": this.orientation }, h("slot", { key: "5045cd040eeccd028c00328206d47f7d17b622de" }));
3866
+ return h(Host, { key: "908dc4228940bbf33530a2b9f5fb36421c51d1a1", orientation: this.orientation, "data-orientation": this.orientation }, h("slot", { key: "ebfe8bc58d09fdce2815b26f29e2eba4e5f3c879" }));
3862
3867
  }
3863
3868
  static get watchers() {
3864
3869
  return {
@@ -3963,7 +3968,7 @@ var init_ui_textarea_entry = __esm({
3963
3968
  });
3964
3969
  };
3965
3970
  render() {
3966
- return h(Host, { key: "020adfed4a177ef5d07852ff2e6ffb66b6f80742", "data-invalid": this.invalid ? "" : void 0 }, h("slot", { key: "2e9bd0e071e24fcf248eadf38f16484321359503", ref: (el) => this.slotRef = el }));
3971
+ return h(Host, { key: "4774b8d20cd4426b1c6205375fd9e4275bc24f08", "data-invalid": this.invalid ? "" : void 0 }, h("slot", { key: "9b5489df35c29bf453d010f85bcb05dcc01fcce9", ref: (el) => this.slotRef = el }));
3967
3972
  }
3968
3973
  static get watchers() {
3969
3974
  return {
@@ -4005,7 +4010,7 @@ var init_ui_toast_region_entry = __esm({
4005
4010
  "dist/esm/ui-toast-region.entry.js"() {
4006
4011
  init_index_8BGiMGQ0();
4007
4012
  init_events_JwSoedEO();
4008
- init_positioning_Bu0dmLBE();
4013
+ init_positioning_Drmwg_C1();
4009
4014
  uiToastRegionCss = () => `:host{position:fixed;top:calc(var(--ui-space-4) + env(safe-area-inset-top));left:50%;transform:translateX(-50%);z-index:9999;display:grid;gap:var(--ui-space-2);inline-size:min(24rem, calc(100vw - (var(--ui-space-4) * 2)));max-inline-size:100%;pointer-events:none}:host([popover]){right:auto;bottom:auto;margin:0}:host>*{pointer-events:auto}::slotted([data-ui-toast]){display:grid;grid-template-columns:1fr auto;gap:var(--ui-space-2);align-items:start;border:1px solid var(--ui-border-default);border-radius:var(--ui-radius-3);padding:var(--ui-space-3) var(--ui-space-4);background:var(--ui-surface-elevated);color:var(--ui-text-primary);box-shadow:var(--ui-shadow-lg);animation:ui-toast-enter 0.25s var(--ui-motion-ease) forwards}@keyframes ui-toast-enter{from{opacity:0;transform:translateY(-0.5rem)}to{opacity:1;transform:translateY(0)}}::slotted([data-ui-toast][aria-hidden='true']){display:none}::slotted([data-ui-toast-dismiss]){border:0;background:transparent;color:var(--ui-text-secondary);cursor:pointer;font:inherit}`;
4010
4015
  UIToastRegion = class {
4011
4016
  constructor(hostRef) {
@@ -4078,7 +4083,7 @@ var init_ui_toast_region_entry = __esm({
4078
4083
  });
4079
4084
  };
4080
4085
  render() {
4081
- return h(Host, { key: "8a3546bcd59e12f21393ea55fa4d232d3907a34e", role: "region", "aria-label": "Notifications", "aria-live": "polite", "data-open": this.internalOpen ? "" : void 0 }, h("slot", { key: "a4a4525a1ca768d65ff36b3889a821b8dda8b6f7" }));
4086
+ return h(Host, { key: "e3a71de7854b5937cc3f74858fc69f202fd93c71", role: "region", "aria-label": "Notifications", "aria-live": "polite", "data-open": this.internalOpen ? "" : void 0 }, h("slot", { key: "cdf6ea0118199d149ac08820c69ec8b54654be91" }));
4082
4087
  }
4083
4088
  static get watchers() {
4084
4089
  return {
@@ -4107,7 +4112,7 @@ var init_ui_tooltip_entry = __esm({
4107
4112
  init_manager_C_0syqXZ();
4108
4113
  init_events_JwSoedEO();
4109
4114
  init_controlled_state_BnGhGgTH();
4110
- init_positioning_Bu0dmLBE();
4115
+ init_positioning_Drmwg_C1();
4111
4116
  uiTooltipCss = () => `:host{position:fixed;inset:auto;margin:0;display:inline-block;box-sizing:border-box;padding:0;border:0;border-radius:0;background:transparent;opacity:0;transform:translateY(4px);transition:opacity var(--ui-motion-fast) var(--ui-motion-ease), transform var(--ui-motion-fast) var(--ui-motion-ease), display var(--ui-motion-fast) allow-discrete, overlay var(--ui-motion-fast) allow-discrete}.tooltip__surface{box-sizing:border-box;border:1px solid var(--ui-border-default);border-radius:var(--ui-radius-2);background:var(--ui-surface-elevated);color:var(--ui-text-primary);padding:var(--ui-space-2) var(--ui-space-3);font-size:var(--ui-font-size-sm);box-shadow:var(--ui-shadow-md)}:host(:popover-open){opacity:1;transform:translateY(0)}@starting-style{:host(:popover-open){opacity:0;transform:translateY(4px)}}:host([hidden]){display:none !important}@media (prefers-reduced-motion: reduce){:host{transition:none}}`;
4112
4117
  UITooltip = class {
4113
4118
  constructor(hostRef) {
@@ -4319,7 +4324,7 @@ var init_ui_tooltip_entry = __esm({
4319
4324
  }
4320
4325
  }
4321
4326
  render() {
4322
- return h(Host, { key: "6c70f235889d6f1c425f0a51fcfc04e06a96dea4", role: "tooltip", hidden: !this.internalOpen, "data-open": this.internalOpen ? "" : void 0 }, h("div", { key: "5c4f1d264e32d308f5b26af4e967e13369c4238a", class: "tooltip__surface" }, h("slot", { key: "52b5900d67ffa7590b0ff97511f99718d2e8c311" })));
4327
+ return h(Host, { key: "2216e8f56c408e775140200881c9bfd99b45f381", role: "tooltip", hidden: !this.internalOpen, "data-open": this.internalOpen ? "" : void 0 }, h("div", { key: "a547e43fb5f6c3c2f62cf7f1fb9198dc0024a28d", class: "tooltip__surface" }, h("slot", { key: "dc8863505e8140565588c57ea200b7f548fb5df3" })));
4323
4328
  }
4324
4329
  static get watchers() {
4325
4330
  return {
@@ -4385,7 +4390,7 @@ var init_ui_top_bar_entry = __esm({
4385
4390
  this.hasActions = slotHasContent3(this.actionsSlot);
4386
4391
  };
4387
4392
  render() {
4388
- return h(Host, { key: "ef7cf644a8e8381d7d1f8d093bcfefcdc4620682" }, h("header", { key: "5055594a179d86efefd43529e070a582c51cb1d8", class: "top-bar", part: "base" }, h("div", { key: "bd6ec069ae9d7820a6992250ba1aa997b4cc6754", class: "top-bar__leading", hidden: !this.hasLeading }, h("slot", { key: "3b9b1b73fb455ad720e1db46757555eb3713c0b8", name: "leading", ref: (el) => this.leadingSlot = el, onSlotchange: this.syncSlots })), h("div", { key: "e402cc0cb7ec4418460182f8f32cb161c6139221", class: "top-bar__title" }, h("slot", { key: "fce0cfc11da269167853f591742b1369023864ae" })), h("div", { key: "6861bb04f399076378aa1fa9be24b35db277106a", class: "top-bar__search", hidden: !this.hasSearch }, h("slot", { key: "3857f37d53ec99b36a52cb7830e634afdee29d2e", name: "search", ref: (el) => this.searchSlot = el, onSlotchange: this.syncSlots })), h("div", { key: "538f6297078b6d5aa85906e902066e8809f52540", class: "top-bar__actions", hidden: !this.hasActions }, h("slot", { key: "3c45ff59c4b48673e796c6e93842cb11fceb652f", name: "actions", ref: (el) => this.actionsSlot = el, onSlotchange: this.syncSlots }))));
4393
+ return h(Host, { key: "1f0cf8994e3a18d42415fa85f14d172cfaddbf8e" }, h("header", { key: "e92afb06dad409b4a4e8fcc52bcad09b3e4531c4", class: "top-bar", part: "base" }, h("div", { key: "3d1458e841c7a600c98d6797b4ec97baee285de1", class: "top-bar__leading", hidden: !this.hasLeading }, h("slot", { key: "665e078f41410275cba3c55fec05159518a97a9e", name: "leading", ref: (el) => this.leadingSlot = el, onSlotchange: this.syncSlots })), h("div", { key: "7657a2c1e6c96660fa2ade470c8a4b0ecd30fcd9", class: "top-bar__title" }, h("slot", { key: "4d4f70c1a50aede4ef3a63176d714502b074a2cf" })), h("div", { key: "9409800ebaee24e4567de2126c0dd2544e741956", class: "top-bar__search", hidden: !this.hasSearch }, h("slot", { key: "2e66be8358235ae5ef10c7f9a115b08377ece3a7", name: "search", ref: (el) => this.searchSlot = el, onSlotchange: this.syncSlots })), h("div", { key: "e7fa28dddde4f0638a153ad0c8fcc3de94c0ecdc", class: "top-bar__actions", hidden: !this.hasActions }, h("slot", { key: "56c6620da69e2775a8a4d7306bb40b7a6713b100", name: "actions", ref: (el) => this.actionsSlot = el, onSlotchange: this.syncSlots }))));
4389
4394
  }
4390
4395
  };
4391
4396
  UITopBar.style = uiTopBarCss();
@@ -4516,10 +4521,10 @@ var init_ui_tree_item_entry = __esm({
4516
4521
  const expanded = this.isExpanded();
4517
4522
  const disclosureLabel = `${expanded ? "Collapse" : "Expand"} ${this.label || "item"}`;
4518
4523
  const dragLabel = `Drag ${this.label || "item"} to reorder`;
4519
- return h(Host, { key: "f092fa9586a39aba1a9629ba42e52f8fbc10de05", role: "treeitem", "aria-label": this.label || void 0, "aria-level": String(level), "aria-expanded": this.container ? String(expanded) : void 0, "aria-selected": String(this.selected), "aria-disabled": this.disabled ? "true" : void 0, "data-container": this.container ? "" : void 0, "data-selected": this.selected ? "" : void 0, "data-disabled": this.disabled ? "" : void 0, "data-drag-type": this.dragType || "item", "data-drop-scope": this.dropScope || void 0, "data-accepts": this.accepts || void 0, tabIndex: this.disabled || !this.tabStop ? -1 : 0, style: {
4524
+ return h(Host, { key: "4a42d3c93b49ad82ae87496defe22f4abde13819", role: "treeitem", "aria-label": this.label || void 0, "aria-level": String(level), "aria-expanded": this.container ? String(expanded) : void 0, "aria-selected": String(this.selected), "aria-disabled": this.disabled ? "true" : void 0, "data-container": this.container ? "" : void 0, "data-selected": this.selected ? "" : void 0, "data-disabled": this.disabled ? "" : void 0, "data-drag-type": this.dragType || "item", "data-drop-scope": this.dropScope || void 0, "data-accepts": this.accepts || void 0, tabIndex: this.disabled || !this.tabStop ? -1 : 0, style: {
4520
4525
  "--ui-tree-item-depth": String(level - 1),
4521
4526
  "margin-inline-start": level > 1 ? "var(--ui-tree-indent, 16px)" : "0px"
4522
- } }, h("div", { key: "2f16d97219ba9ec9e37688d97ad9144508aa1ed5", class: "row", part: "row", onClick: this.onRowClick }, this.sortable && !this.disabled ? h("button", { class: "drag-handle", part: "drag-handle", type: "button", draggable: true, "aria-label": dragLabel, title: dragLabel }, h("span", { innerHTML: loomaIconMarkup("grip-vertical") })) : null, this.container ? h("button", { class: "disclosure", part: "disclosure", type: "button", "aria-label": disclosureLabel, "aria-expanded": String(expanded), disabled: this.disabled, onClick: this.onDisclosureClick, onKeyDown: this.onDisclosureKeydown }, h("span", { class: { "disclosure-icon": true, "disclosure-icon--expanded": expanded }, innerHTML: loomaIconMarkup("chevron-down") })) : h("span", { class: "disclosure-spacer", "aria-hidden": "true" }), h("span", { key: "d984631c891df304edb3e1dc5bcd19af3ad8e20d", class: "leading", part: "leading" }, h("slot", { key: "81a0e055859df5d4daaa6dac39013b23dcc2831b", name: "leading" })), h("span", { key: "3ae295523d5a3b9feaa9bfaa16d807349e37d78b", class: "label", part: "label" }, h("slot", { key: "db8503a41d087d283074a41e76fa872ff4b2a707" })), h("span", { key: "ac5b5db7128b31a9263b912bd64cd90ac640eaeb", class: "actions", part: "actions" }, h("slot", { key: "c8842a5d80215ec297688c86f6bfe9b4d9bed333", name: "actions" })), h("span", { key: "b7f239bc16867678291850ad61a5cd752d6a7425", class: "drop-indicator row-drop-indicator", part: "drop-indicator", "aria-hidden": "true" })), this.container ? h("div", { class: "children", part: "children", role: "group", hidden: !expanded }, h("slot", { name: "children" })) : null, h("span", { key: "2a5f448db2f4f363a34a1a950785e0ee12cc9938", class: "drop-indicator subtree-drop-indicator", part: "drop-indicator", "aria-hidden": "true" }));
4527
+ } }, h("div", { key: "9b62f172b2c0a80925404aee13895b3342d7dcb6", class: "row", part: "row", onClick: this.onRowClick }, this.sortable && !this.disabled ? h("button", { class: "drag-handle", part: "drag-handle", type: "button", draggable: true, "aria-label": dragLabel, title: dragLabel }, h("span", { innerHTML: loomaIconMarkup("grip-vertical") })) : null, this.container ? h("button", { class: "disclosure", part: "disclosure", type: "button", "aria-label": disclosureLabel, "aria-expanded": String(expanded), disabled: this.disabled, onClick: this.onDisclosureClick, onKeyDown: this.onDisclosureKeydown }, h("span", { class: { "disclosure-icon": true, "disclosure-icon--expanded": expanded }, innerHTML: loomaIconMarkup("chevron-down") })) : h("span", { class: "disclosure-spacer", "aria-hidden": "true" }), h("span", { key: "fe2e301bf43f1fdb524a004960855f63d05ce138", class: "leading", part: "leading" }, h("slot", { key: "6f569883ead32dff5340b1c1da74dc8fdade49e6", name: "leading" })), h("span", { key: "942e3bb0b6b4021166916777ab18dc868c39fbdc", class: "label", part: "label" }, h("slot", { key: "42b9d9f42fd7aaad35ed7091c39953710ebf5a58" })), h("span", { key: "8483a822895220d2bb2aa2cb0a45cd296062cae9", class: "actions", part: "actions" }, h("slot", { key: "dae2b38eef43a061f40a7498d8f28e703e5468e3", name: "actions" })), h("span", { key: "0a9b7db9ab5e9a709f9f0a3a8d77bd1c044295c4", class: "drop-indicator row-drop-indicator", part: "drop-indicator", "aria-hidden": "true" })), this.container ? h("div", { class: "children", part: "children", role: "group", hidden: !expanded }, h("slot", { name: "children" })) : null, h("span", { key: "641be80771d73d2c7193f2c762db1d0fe5c79e5d", class: "drop-indicator subtree-drop-indicator", part: "drop-indicator", "aria-hidden": "true" }));
4523
4528
  }
4524
4529
  static get watchers() {
4525
4530
  return {
@@ -4995,7 +5000,7 @@ var init_ui_tree_entry = __esm({
4995
5000
  }
4996
5001
  };
4997
5002
  render() {
4998
- return h(Host, { key: "7efbf793fe63471006df57f0045a5fe995c81440", role: "tree", "aria-label": this.label || "Tree" }, h("slot", { key: "1804e391796e7451c93cb58258e0e23ec3ad98c7" }));
5003
+ return h(Host, { key: "81fe656b4a7cdf8683f53aeee94fb53838950383", role: "tree", "aria-label": this.label || "Tree" }, h("slot", { key: "941204b299eec2181228f536c017a17f026b2f3d" }));
4999
5004
  }
5000
5005
  };
5001
5006
  UITree.style = uiTreeCss();
@@ -6851,24 +6856,23 @@ function createViewportSurface2(surface) {
6851
6856
  }
6852
6857
  };
6853
6858
  }
6854
- function fallbackPosition2(surface, anchor, placement, gap, viewportGap) {
6859
+ function fallbackPosition2(surface, anchor, placement, gap, viewportGap, surfaceRect = surface.getBoundingClientRect()) {
6855
6860
  const owner = surface.ownerDocument.defaultView ?? window;
6856
6861
  const viewport = getVisualViewportRect2(owner);
6857
- const rect = surface.getBoundingClientRect();
6858
6862
  const preferTop = placement.startsWith("top");
6859
6863
  const preferEnd = placement.endsWith("end");
6860
6864
  const spaceBelow = viewport.bottom - anchor.bottom - viewportGap;
6861
6865
  const spaceAbove = anchor.top - viewport.top - viewportGap;
6862
- const useTop = preferTop ? !(spaceAbove < rect.height + gap && spaceBelow > spaceAbove) : spaceBelow < rect.height + gap && spaceAbove > spaceBelow;
6863
- const unclampedTop = useTop ? anchor.top - rect.height - gap : anchor.bottom + gap;
6864
- const unclampedLeft = preferEnd ? anchor.right - rect.width : anchor.left;
6866
+ const useTop = preferTop ? !(spaceAbove < surfaceRect.height + gap && spaceBelow > spaceAbove) : spaceBelow < surfaceRect.height + gap && spaceAbove > spaceBelow;
6867
+ const unclampedTop = useTop ? anchor.top - surfaceRect.height - gap : anchor.bottom + gap;
6868
+ const unclampedLeft = preferEnd ? anchor.right - surfaceRect.width : anchor.left;
6865
6869
  const shifted = clampRectToViewport2({
6866
6870
  left: unclampedLeft,
6867
6871
  top: unclampedTop,
6868
- right: unclampedLeft + rect.width,
6869
- bottom: unclampedTop + rect.height,
6870
- width: rect.width,
6871
- height: rect.height
6872
+ right: unclampedLeft + surfaceRect.width,
6873
+ bottom: unclampedTop + surfaceRect.height,
6874
+ width: surfaceRect.width,
6875
+ height: surfaceRect.height
6872
6876
  }, viewport, viewportGap);
6873
6877
  surface.style.left = `${Math.round(unclampedLeft + shifted.x)}px`;
6874
6878
  surface.style.top = `${Math.round(unclampedTop + shifted.y)}px`;
@@ -6925,15 +6929,29 @@ function createAnchoredSurface2(surface, options = {}) {
6925
6929
  return;
6926
6930
  }
6927
6931
  if (!anchor) return;
6928
- if (nativeAnchor) positionNative();
6929
- else fallbackPosition2(surface, anchor.getBoundingClientRect(), placement, gap, viewportGap);
6932
+ let surfaceRect;
6933
+ if (nativeAnchor) {
6934
+ positionNative();
6935
+ const viewport = getVisualViewportRect2(owner);
6936
+ surfaceRect = surface.getBoundingClientRect();
6937
+ const shift = clampRectToViewport2(surfaceRect, viewport, viewportGap);
6938
+ if (shift.x === 0 && shift.y === 0) return;
6939
+ }
6940
+ fallbackPosition2(
6941
+ surface,
6942
+ anchor.getBoundingClientRect(),
6943
+ placement,
6944
+ gap,
6945
+ viewportGap,
6946
+ surfaceRect
6947
+ );
6930
6948
  };
6931
6949
  const schedule = () => {
6932
6950
  if (!open || frame !== null) return;
6933
6951
  frame = owner.requestAnimationFrame(position);
6934
6952
  };
6935
6953
  const syncFallbackListeners = () => {
6936
- const needsListeners = open && (point !== null || !nativeAnchor);
6954
+ const needsListeners = open && (point !== null || anchor !== null);
6937
6955
  if (!needsListeners) {
6938
6956
  listenerAbort?.abort();
6939
6957
  listenerAbort = null;