@vielzeug/refine 2.4.0 → 3.0.0

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 (206) hide show
  1. package/README.md +5 -18
  2. package/dist/accordion-item.cjs.map +1 -1
  3. package/dist/accordion-item.js.map +1 -1
  4. package/dist/accordion.cjs.map +1 -1
  5. package/dist/accordion.js.map +1 -1
  6. package/dist/async.cjs +1 -1
  7. package/dist/async.cjs.map +1 -1
  8. package/dist/async.js +3 -3
  9. package/dist/async.js.map +1 -1
  10. package/dist/box.cjs.map +1 -1
  11. package/dist/box.js.map +1 -1
  12. package/dist/card.cjs +1 -1
  13. package/dist/card.cjs.map +1 -1
  14. package/dist/card.js +2 -2
  15. package/dist/card.js.map +1 -1
  16. package/dist/checkbox-group.cjs +1 -1
  17. package/dist/checkbox-group.cjs.map +1 -1
  18. package/dist/checkbox-group.js +1 -1
  19. package/dist/checkbox-group.js.map +1 -1
  20. package/dist/combobox.cjs +2 -2
  21. package/dist/combobox.cjs.map +1 -1
  22. package/dist/combobox.js +7 -3
  23. package/dist/combobox.js.map +1 -1
  24. package/dist/command-palette.cjs +1 -1
  25. package/dist/command-palette.cjs.map +1 -1
  26. package/dist/command-palette.js +6 -2
  27. package/dist/command-palette.js.map +1 -1
  28. package/dist/content/card/card.css.cjs +1 -1
  29. package/dist/content/card/card.css.cjs.map +1 -1
  30. package/dist/content/card/card.css.js +1 -1
  31. package/dist/content/card/card.css.js.map +1 -1
  32. package/dist/content/card/card.d.ts +2 -2
  33. package/dist/content/card/card.d.ts.map +1 -1
  34. package/dist/content/pagination/pagination.css.cjs +1 -1
  35. package/dist/content/pagination/pagination.css.cjs.map +1 -1
  36. package/dist/content/pagination/pagination.css.js +1 -1
  37. package/dist/content/pagination/pagination.css.js.map +1 -1
  38. package/dist/core/field-base.cjs +1 -1
  39. package/dist/core/field-base.cjs.map +1 -1
  40. package/dist/core/field-base.d.ts +1 -1
  41. package/dist/core/field-base.js +1 -1
  42. package/dist/core/field-base.js.map +1 -1
  43. package/dist/core/nav.cjs +1 -1
  44. package/dist/core/nav.cjs.map +1 -1
  45. package/dist/core/nav.d.ts +4 -1
  46. package/dist/core/nav.d.ts.map +1 -1
  47. package/dist/core/nav.js +41 -28
  48. package/dist/core/nav.js.map +1 -1
  49. package/dist/core/option-list.cjs +1 -1
  50. package/dist/core/option-list.cjs.map +1 -1
  51. package/dist/core/option-list.d.ts.map +1 -1
  52. package/dist/core/option-list.js +30 -28
  53. package/dist/core/option-list.js.map +1 -1
  54. package/dist/core/slider.cjs +1 -1
  55. package/dist/core/slider.cjs.map +1 -1
  56. package/dist/core/slider.js +1 -1
  57. package/dist/core/slider.js.map +1 -1
  58. package/dist/core/spinner.cjs +1 -1
  59. package/dist/core/spinner.cjs.map +1 -1
  60. package/dist/core/spinner.js +1 -1
  61. package/dist/core/spinner.js.map +1 -1
  62. package/dist/custom-elements.json +215 -17
  63. package/dist/datagrid.cjs +73 -73
  64. package/dist/datagrid.cjs.map +1 -1
  65. package/dist/datagrid.js +331 -332
  66. package/dist/datagrid.js.map +1 -1
  67. package/dist/disclosure/accordion/accordion.css.cjs +1 -1
  68. package/dist/disclosure/accordion/accordion.css.cjs.map +1 -1
  69. package/dist/disclosure/accordion/accordion.css.js +1 -1
  70. package/dist/disclosure/accordion/accordion.css.js.map +1 -1
  71. package/dist/disclosure/accordion/accordion.d.ts +5 -5
  72. package/dist/disclosure/accordion/accordion.d.ts.map +1 -1
  73. package/dist/disclosure/accordion-item/accordion-item.css.cjs +1 -1
  74. package/dist/disclosure/accordion-item/accordion-item.css.cjs.map +1 -1
  75. package/dist/disclosure/accordion-item/accordion-item.css.js +1 -1
  76. package/dist/disclosure/accordion-item/accordion-item.css.js.map +1 -1
  77. package/dist/disclosure/accordion-item/accordion-item.d.ts +3 -3
  78. package/dist/disclosure/accordion-item/accordion-item.d.ts.map +1 -1
  79. package/dist/disclosure/tab-item/tab-item.css.cjs +1 -1
  80. package/dist/disclosure/tab-item/tab-item.css.cjs.map +1 -1
  81. package/dist/disclosure/tab-item/tab-item.css.js +1 -1
  82. package/dist/disclosure/tab-item/tab-item.css.js.map +1 -1
  83. package/dist/disclosure/tab-item/tab-item.d.ts +3 -3
  84. package/dist/disclosure/tab-item/tab-item.d.ts.map +1 -1
  85. package/dist/disclosure/tabs/tabs.css.cjs +1 -1
  86. package/dist/disclosure/tabs/tabs.css.cjs.map +1 -1
  87. package/dist/disclosure/tabs/tabs.css.js +1 -1
  88. package/dist/disclosure/tabs/tabs.css.js.map +1 -1
  89. package/dist/disclosure/tabs/tabs.d.ts +5 -5
  90. package/dist/disclosure/tabs/tabs.d.ts.map +1 -1
  91. package/dist/drawer.cjs +1 -1
  92. package/dist/drawer.cjs.map +1 -1
  93. package/dist/drawer.js +1 -1
  94. package/dist/drawer.js.map +1 -1
  95. package/dist/feedback/toast/toast.d.ts.map +1 -1
  96. package/dist/file-input.cjs +1 -1
  97. package/dist/file-input.cjs.map +1 -1
  98. package/dist/file-input.js +2 -2
  99. package/dist/file-input.js.map +1 -1
  100. package/dist/frameworks/elements.d.ts +4 -86
  101. package/dist/frameworks/react.d.ts +5 -4
  102. package/dist/frameworks/vue.d.ts +4 -4
  103. package/dist/grid.cjs +2 -2
  104. package/dist/grid.cjs.map +1 -1
  105. package/dist/grid.js +21 -18
  106. package/dist/grid.js.map +1 -1
  107. package/dist/inputs/combobox/combobox.d.ts +12 -1
  108. package/dist/inputs/combobox/combobox.d.ts.map +1 -1
  109. package/dist/inputs/datagrid/datagrid.d.ts +24 -32
  110. package/dist/inputs/datagrid/datagrid.d.ts.map +1 -1
  111. package/dist/inputs/file-input/file-input-upload.cjs +1 -1
  112. package/dist/inputs/file-input/file-input-upload.cjs.map +1 -1
  113. package/dist/inputs/file-input/file-input-upload.js +1 -1
  114. package/dist/inputs/file-input/file-input-upload.js.map +1 -1
  115. package/dist/inputs/index.d.ts +2 -3
  116. package/dist/inputs/index.d.ts.map +1 -1
  117. package/dist/inputs/shared/field-binding.cjs +1 -1
  118. package/dist/inputs/shared/field-binding.cjs.map +1 -1
  119. package/dist/inputs/shared/field-binding.js +6 -6
  120. package/dist/inputs/shared/field-binding.js.map +1 -1
  121. package/dist/layout/box/box.css.cjs +1 -1
  122. package/dist/layout/box/box.css.cjs.map +1 -1
  123. package/dist/layout/box/box.css.js +1 -1
  124. package/dist/layout/box/box.css.js.map +1 -1
  125. package/dist/layout/box/box.d.ts +3 -3
  126. package/dist/layout/box/box.d.ts.map +1 -1
  127. package/dist/layout/grid/grid.d.ts.map +1 -1
  128. package/dist/layout/navbar/navbar.css.cjs +1 -1
  129. package/dist/layout/navbar/navbar.css.cjs.map +1 -1
  130. package/dist/layout/navbar/navbar.css.js +1 -1
  131. package/dist/layout/navbar/navbar.css.js.map +1 -1
  132. package/dist/layout/navbar/navbar.d.ts +1 -1
  133. package/dist/layout/navbar/navbar.d.ts.map +1 -1
  134. package/dist/layout/sidebar/sidebar.d.ts.map +1 -1
  135. package/dist/menu.cjs +1 -1
  136. package/dist/menu.cjs.map +1 -1
  137. package/dist/menu.js +6 -6
  138. package/dist/menu.js.map +1 -1
  139. package/dist/navbar.cjs +1 -1
  140. package/dist/navbar.cjs.map +1 -1
  141. package/dist/navbar.js +87 -85
  142. package/dist/navbar.js.map +1 -1
  143. package/dist/navigation-menu.cjs +1 -1
  144. package/dist/navigation-menu.cjs.map +1 -1
  145. package/dist/navigation-menu.js +1 -1
  146. package/dist/navigation-menu.js.map +1 -1
  147. package/dist/number-input.cjs +1 -1
  148. package/dist/number-input.cjs.map +1 -1
  149. package/dist/number-input.js +1 -1
  150. package/dist/number-input.js.map +1 -1
  151. package/dist/overlay/popover/popover.d.ts.map +1 -1
  152. package/dist/overlay/tooltip/tooltip.d.ts.map +1 -1
  153. package/dist/popover.cjs +1 -1
  154. package/dist/popover.cjs.map +1 -1
  155. package/dist/popover.js +6 -6
  156. package/dist/popover.js.map +1 -1
  157. package/dist/radio-group.cjs +1 -1
  158. package/dist/radio-group.cjs.map +1 -1
  159. package/dist/radio-group.js +1 -1
  160. package/dist/radio-group.js.map +1 -1
  161. package/dist/radio.cjs +1 -1
  162. package/dist/radio.cjs.map +1 -1
  163. package/dist/radio.js +5 -5
  164. package/dist/radio.js.map +1 -1
  165. package/dist/rating.cjs +1 -1
  166. package/dist/rating.cjs.map +1 -1
  167. package/dist/rating.js +1 -1
  168. package/dist/rating.js.map +1 -1
  169. package/dist/refine.cjs +207 -207
  170. package/dist/refine.cjs.map +1 -1
  171. package/dist/refine.iife.js +268 -268
  172. package/dist/refine.iife.js.map +1 -1
  173. package/dist/refine.js +222 -222
  174. package/dist/refine.js.map +1 -1
  175. package/dist/shared/types.d.ts +0 -2
  176. package/dist/shared/types.d.ts.map +1 -1
  177. package/dist/sidebar.cjs +1 -1
  178. package/dist/sidebar.cjs.map +1 -1
  179. package/dist/sidebar.js +83 -83
  180. package/dist/sidebar.js.map +1 -1
  181. package/dist/skeleton.cjs +1 -1
  182. package/dist/skeleton.cjs.map +1 -1
  183. package/dist/skeleton.js +11 -9
  184. package/dist/skeleton.js.map +1 -1
  185. package/dist/slider.cjs +1 -1
  186. package/dist/slider.cjs.map +1 -1
  187. package/dist/slider.js +20 -20
  188. package/dist/slider.js.map +1 -1
  189. package/dist/stats.cjs +1 -1
  190. package/dist/stats.cjs.map +1 -1
  191. package/dist/stats.js +2 -2
  192. package/dist/stats.js.map +1 -1
  193. package/dist/tab-item.cjs.map +1 -1
  194. package/dist/tab-item.js.map +1 -1
  195. package/dist/tabs.cjs.map +1 -1
  196. package/dist/tabs.js.map +1 -1
  197. package/dist/toast.cjs +8 -8
  198. package/dist/toast.cjs.map +1 -1
  199. package/dist/toast.js +32 -33
  200. package/dist/toast.js.map +1 -1
  201. package/dist/tooltip.cjs +1 -1
  202. package/dist/tooltip.cjs.map +1 -1
  203. package/dist/tooltip.js +2 -2
  204. package/dist/tooltip.js.map +1 -1
  205. package/dist/types/elements.d.ts +207 -0
  206. package/package.json +12 -12
@@ -1,2 +1,2 @@
1
- var e=`@layer refine.base{:host{--accordion-details-radius:var(--rounded-lg);--accordion-item-transition:var(--transition-normal);--accordion-item-expand-easing:var(--ease-spring);color:var(--accordion-item-body-color,var(--text-color-body));display:block}details{border-radius:var(--accordion-item-radius);width:100%;overflow:hidden}summary{gap:var(--size-4);min-height:var(--_touch-target);padding:var(--accordion-item-details-padding,var(--size-3) var(--size-4));font-size:var(--accordion-item-title);cursor:pointer;-webkit-user-select:none;user-select:none;background:var(--accordion-item-bg);border:var(--border) solid var(--accordion-item-border-color);border-radius:var(--accordion-details-radius);transition:background var(--accordion-item-transition), border-color var(--accordion-item-transition), color var(--accordion-item-transition);outline:none;align-items:center;list-style:none;display:flex;position:relative}summary::-webkit-details-marker{display:none}summary:focus{outline:none}summary:focus-visible{outline:var(--border-2) solid currentcolor;outline-offset:var(--border-2);box-shadow:0 0 0 3px color-mix(in oklch, currentcolor 20%, transparent)}.header-content{flex-direction:column;flex:1;min-width:0;display:flex}.subtitle{font-size:var(--accordion-item-subtitle-size);line-height:var(--leading-normal);color:var(--accordion-item-subtitle-color,var(--text-color-secondary))}.title{text-overflow:ellipsis;font-weight:var(--font-medium);color:var(--accordion-item-title-color,var(--text-color-heading));white-space:nowrap;overflow:hidden}.content-wrapper{font-size:var(--accordion-item-body);background:var(--accordion-item-bg);border-inline:1px solid var(--accordion-item-border-color);border-bottom:1px solid var(--accordion-item-border-color);border-radius:var(--accordion-summary-radius);transition:grid-template-rows .2s var(--accordion-item-expand-easing,var(--ease-spring));grid-template-rows:0fr;display:grid}details[open] .content-wrapper{grid-template-rows:1fr}.content-inner{padding:var(--accordion-item-summary-padding,var(--size-2) var(--size-4));opacity:1;transition:opacity .2s 60ms var(--ease-spring), transform .2s 60ms var(--ease-spring);overflow:hidden;transform:translateY(0)}details.opening .content-inner{opacity:0;transition:none;transform:translateY(-6px)}details.closing .content-inner{opacity:0;transition:opacity .15s var(--ease-spring), transform .15s var(--ease-spring);transform:translateY(-4px)}details.closing .content-wrapper{transition:grid-template-rows .2s .12s var(--accordion-item-expand-easing,var(--ease-spring));grid-template-rows:1fr}}@layer refine.variants{:host,:host([variant=solid]){--accordion-item-bg:var(--color-contrast-50);--accordion-item-border-color:transparent;--accordion-item-hover-bg:var(--color-contrast-200)}:host([variant=flat]){--accordion-item-bg:var(--color-contrast-100);--accordion-item-hover-bg:var(--color-contrast-200)}:host([variant=bordered]){--accordion-item-bg:var(--color-contrast-100);--accordion-item-border-color:var(--color-divider);--accordion-item-hover-bg:var(--color-contrast-200);box-shadow:var(--inset-shadow-xs), var(--shadow-2xs)}:host([variant=outline]){--accordion-item-bg:transparent;--accordion-item-border-color:var(--color-divider);--accordion-item-hover-bg:var(--color-contrast-300)}:host([variant=ghost]){--accordion-item-bg:transparent;--accordion-item-border-color:transparent;--accordion-item-hover-bg:var(--color-contrast-200)}:host([variant=text]){--accordion-item-bg:transparent;--accordion-item-border-color:transparent;--accordion-item-hover-bg:transparent}:host summary:hover{background:var(--accordion-item-hover-bg)}:host([variant=glass]) details,:host([variant=frost]) details{border-radius:inherit}:host([variant=glass]) summary,:host([variant=frost]) summary{border-radius:inherit;-webkit-backdrop-filter:blur(var(--blur-lg)) saturate(180%);backdrop-filter:blur(var(--blur-lg)) saturate(180%)}:host([variant=glass]) .content-wrapper,:host([variant=frost]) .content-wrapper{-webkit-backdrop-filter:blur(var(--blur-lg)) saturate(180%);backdrop-filter:blur(var(--blur-lg)) saturate(180%);border-radius:0}:host([variant=glass]){--accordion-item-bg:color-mix(in oklch, var(--color-secondary) 30%, var(--color-contrast) 10%);--accordion-item-border-color:transparent;--accordion-item-hover-bg:color-mix(in oklch, var(--color-secondary) 20%, transparent);--accordion-item-title-color:color-mix(in oklch, var(--color-secondary-contrast) 100%, transparent);--accordion-item-subtitle-color:color-mix(in oklch, var(--color-secondary-contrast) 60%, transparent);--accordion-item-body-color:color-mix(in oklch, var(--color-secondary-contrast) 80%, transparent)}:host([variant=glass]) summary{text-shadow:var(--text-shadow-xs)}:host([variant=glass]) .content-wrapper{filter:brightness(1.05)}:host([variant=frost]){--accordion-item-bg:color-mix(in oklch, var(--color-canvas) 55%, transparent);--accordion-item-border-color:transparent;--accordion-item-hover-bg:color-mix(in oklch, var(--color-canvas) 20%, transparent)}:host([variant=frost]) summary{text-shadow:var(--text-shadow-2xs)}:host([size=sm]){--accordion-item-details-padding:var(--size-2) var(--size-4);--accordion-item-summary-padding:var(--size-1) var(--size-5);--accordion-item-title:var(--text-sm);--accordion-item-subtitle-size:var(--text-xs);--accordion-item-body:var(--text-xs)}:host(:not([size])),:host([size=md]){--accordion-item-details-padding:var(--size-3) var(--size-4);--accordion-item-summary-padding:var(--size-1) var(--size-5);--accordion-item-title:var(--text-base);--accordion-item-subtitle-size:var(--text-sm);--accordion-item-body:var(--text-sm)}:host([size=lg]){--accordion-item-details-padding:var(--size-4) var(--size-4);--accordion-item-summary-padding:var(--size-1) var(--size-5);--accordion-item-title:var(--text-lg);--accordion-item-subtitle-size:var(--text-base);--accordion-item-body:var(--text-base)}@media (pointer:coarse){:host,:host([size=md]){--accordion-item-details-padding:var(--size-4) var(--size-5);--accordion-item-title:var(--text-lg);--accordion-item-subtitle-size:var(--text-base);--accordion-item-body:var(--text-base)}:host([size=sm]){--accordion-item-details-padding:var(--size-3) var(--size-4);--accordion-item-title:var(--text-base);--accordion-item-subtitle-size:var(--text-sm);--accordion-item-body:var(--text-sm)}}:host([disabled]){pointer-events:none;opacity:.6}.chevron{--ore-icon-size:var(--_size,var(--size-5));width:var(--_size,var(--size-5));height:var(--_size,var(--size-5));transition:transform .2s var(--ease-spring);transform:rotate(-90deg)}.chevron:not(:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){margin-left:auto}.chevron:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){margin-right:auto}details[open] .chevron{transform:rotate(0)}details.rtl .chevron{transform:rotate(90deg)}details.rtl[open] .chevron{transform:rotate(0)}:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)) .chevron{transform:rotate(90deg)}:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)) details[open] .chevron{transform:rotate(0)}:host([expanded]){--accordion-details-radius:var(--rounded-lg) var(--rounded-lg) 0 0;--accordion-summary-radius:0 0 var(--rounded-lg) var(--rounded-lg)}@media (forced-colors:active){summary{border-color:buttontext}}}`;exports.default=e;
1
+ var e=`@layer refine.base{:host{--accordion-details-radius:var(--rounded-lg);--accordion-item-transition:var(--transition-normal);--accordion-item-expand-easing:var(--ease-spring);color:var(--accordion-item-body-color,var(--text-color-body));display:block}details{border-radius:var(--accordion-item-radius);width:100%;overflow:hidden}summary{gap:var(--size-4);min-height:var(--_touch-target);padding:var(--accordion-item-details-padding,var(--size-3) var(--size-4));font-size:var(--accordion-item-title);cursor:pointer;-webkit-user-select:none;user-select:none;background:var(--accordion-item-bg);border:var(--border) solid var(--accordion-item-border-color);border-radius:var(--accordion-details-radius);transition:background var(--accordion-item-transition), border-color var(--accordion-item-transition), color var(--accordion-item-transition);outline:none;align-items:center;list-style:none;display:flex;position:relative}summary::-webkit-details-marker{display:none}summary:focus{outline:none}summary:focus-visible{outline:var(--border-2) solid currentcolor;outline-offset:var(--border-2);box-shadow:0 0 0 3px color-mix(in oklch, currentcolor 20%, transparent)}.header-content{flex-direction:column;flex:1;min-width:0;display:flex}.subtitle{font-size:var(--accordion-item-subtitle-size);line-height:var(--leading-normal);color:var(--accordion-item-subtitle-color,var(--text-color-secondary))}.title{text-overflow:ellipsis;font-weight:var(--font-medium);color:var(--accordion-item-title-color,var(--text-color-heading));white-space:nowrap;overflow:hidden}.content-wrapper{font-size:var(--accordion-item-body);background:var(--accordion-item-bg);border-inline:1px solid var(--accordion-item-border-color);border-bottom:1px solid var(--accordion-item-border-color);border-radius:var(--accordion-summary-radius);transition:grid-template-rows .2s var(--accordion-item-expand-easing,var(--ease-spring));grid-template-rows:0fr;display:grid}details[open] .content-wrapper{grid-template-rows:1fr}.content-inner{padding:var(--accordion-item-summary-padding,var(--size-2) var(--size-4));opacity:1;transition:opacity .2s 60ms var(--ease-spring), transform .2s 60ms var(--ease-spring);overflow:hidden;transform:translateY(0)}details.opening .content-inner{opacity:0;transition:none;transform:translateY(-6px)}details.closing .content-inner{opacity:0;transition:opacity .15s var(--ease-spring), transform .15s var(--ease-spring);transform:translateY(-4px)}details.closing .content-wrapper{transition:grid-template-rows .2s .12s var(--accordion-item-expand-easing,var(--ease-spring));grid-template-rows:1fr}}@layer refine.variants{:host,:host([variant=solid]){--accordion-item-bg:var(--color-contrast-50);--accordion-item-border-color:transparent;--accordion-item-hover-bg:var(--color-contrast-200)}:host([variant=flat]){--accordion-item-bg:var(--color-contrast-100);--accordion-item-hover-bg:var(--color-contrast-200)}:host([variant=bordered]){--accordion-item-bg:var(--color-contrast-100);--accordion-item-border-color:var(--color-divider);--accordion-item-hover-bg:var(--color-contrast-200);box-shadow:var(--inset-shadow-xs), var(--shadow-2xs)}:host([variant=outline]){--accordion-item-bg:transparent;--accordion-item-border-color:var(--color-divider);--accordion-item-hover-bg:var(--color-contrast-300)}:host([variant=ghost]){--accordion-item-bg:transparent;--accordion-item-border-color:transparent;--accordion-item-hover-bg:var(--color-contrast-200)}:host([variant=text]){--accordion-item-bg:transparent;--accordion-item-border-color:transparent;--accordion-item-hover-bg:transparent}:host summary:hover{background:var(--accordion-item-hover-bg)}:host([variant=frost]) details{border-radius:inherit}:host([variant=frost]) summary{border-radius:inherit;-webkit-backdrop-filter:blur(var(--blur-lg)) saturate(180%);backdrop-filter:blur(var(--blur-lg)) saturate(180%)}:host([variant=frost]) .content-wrapper{-webkit-backdrop-filter:blur(var(--blur-lg)) saturate(180%);backdrop-filter:blur(var(--blur-lg)) saturate(180%);border-radius:0}:host([variant=frost]){--accordion-item-bg:color-mix(in oklch, var(--color-canvas) 55%, transparent);--accordion-item-border-color:transparent;--accordion-item-hover-bg:color-mix(in oklch, var(--color-canvas) 20%, transparent)}:host([variant=frost]) summary{text-shadow:var(--text-shadow-2xs)}:host([size=sm]){--accordion-item-details-padding:var(--size-2) var(--size-4);--accordion-item-summary-padding:var(--size-1) var(--size-5);--accordion-item-title:var(--text-sm);--accordion-item-subtitle-size:var(--text-xs);--accordion-item-body:var(--text-xs)}:host(:not([size])),:host([size=md]){--accordion-item-details-padding:var(--size-3) var(--size-4);--accordion-item-summary-padding:var(--size-1) var(--size-5);--accordion-item-title:var(--text-base);--accordion-item-subtitle-size:var(--text-sm);--accordion-item-body:var(--text-sm)}:host([size=lg]){--accordion-item-details-padding:var(--size-4) var(--size-4);--accordion-item-summary-padding:var(--size-1) var(--size-5);--accordion-item-title:var(--text-lg);--accordion-item-subtitle-size:var(--text-base);--accordion-item-body:var(--text-base)}@media (pointer:coarse){:host,:host([size=md]){--accordion-item-details-padding:var(--size-4) var(--size-5);--accordion-item-title:var(--text-lg);--accordion-item-subtitle-size:var(--text-base);--accordion-item-body:var(--text-base)}:host([size=sm]){--accordion-item-details-padding:var(--size-3) var(--size-4);--accordion-item-title:var(--text-base);--accordion-item-subtitle-size:var(--text-sm);--accordion-item-body:var(--text-sm)}}:host([disabled]){pointer-events:none;opacity:.6}.chevron{--ore-icon-size:var(--_size,var(--size-5));width:var(--_size,var(--size-5));height:var(--_size,var(--size-5));transition:transform .2s var(--ease-spring);transform:rotate(-90deg)}.chevron:not(:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){margin-left:auto}.chevron:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){margin-right:auto}details[open] .chevron{transform:rotate(0)}details.rtl .chevron{transform:rotate(90deg)}details.rtl[open] .chevron{transform:rotate(0)}:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)) .chevron{transform:rotate(90deg)}:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)) details[open] .chevron{transform:rotate(0)}:host([expanded]){--accordion-details-radius:var(--rounded-lg) var(--rounded-lg) 0 0;--accordion-summary-radius:0 0 var(--rounded-lg) var(--rounded-lg)}@media (forced-colors:active){summary{border-color:buttontext}}}`;exports.default=e;
2
2
  //# sourceMappingURL=accordion-item.css.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"accordion-item.css.cjs","names":[],"sources":["../../../src/disclosure/accordion-item/accordion-item.css?inline"],"sourcesContent":["@layer refine.base {\n /* ========================================\n Base Styles & Defaults\n ======================================== */\n\n :host {\n --accordion-details-radius: var(--rounded-lg);\n --accordion-item-transition: var(--transition-normal);\n --accordion-item-expand-easing: var(--ease-spring);\n display: block;\n color: var(--accordion-item-body-color, var(--text-color-body));\n }\n\n details {\n width: 100%;\n overflow: hidden;\n border-radius: var(--accordion-item-radius);\n }\n\n summary {\n position: relative;\n display: flex;\n gap: var(--size-4);\n align-items: center;\n min-height: var(--_touch-target);\n padding: var(--accordion-item-details-padding, var(--size-3) var(--size-4));\n font-size: var(--accordion-item-title);\n cursor: pointer;\n user-select: none;\n outline: none;\n list-style: none;\n background: var(--accordion-item-bg);\n border: var(--border) solid var(--accordion-item-border-color);\n border-radius: var(--accordion-details-radius);\n transition:\n background var(--accordion-item-transition),\n border-color var(--accordion-item-transition),\n color var(--accordion-item-transition);\n }\n\n summary::-webkit-details-marker {\n display: none;\n }\n\n summary:focus {\n outline: none;\n }\n\n summary:focus-visible {\n outline: var(--border-2) solid currentcolor;\n outline-offset: var(--border-2);\n box-shadow: 0 0 0 3px color-mix(in oklch, currentcolor 20%, transparent);\n }\n\n .header-content {\n display: flex;\n flex: 1;\n flex-direction: column;\n min-width: 0;\n }\n\n .subtitle {\n font-size: var(--accordion-item-subtitle-size);\n line-height: var(--leading-normal);\n color: var(--accordion-item-subtitle-color, var(--text-color-secondary));\n }\n\n .title {\n overflow: hidden;\n text-overflow: ellipsis;\n font-weight: var(--font-medium);\n color: var(--accordion-item-title-color, var(--text-color-heading));\n white-space: nowrap;\n }\n\n .content-wrapper {\n display: grid;\n grid-template-rows: 0fr;\n font-size: var(--accordion-item-body);\n background: var(--accordion-item-bg);\n border-inline: 1px solid var(--accordion-item-border-color);\n border-bottom: 1px solid var(--accordion-item-border-color);\n border-radius: var(--accordion-summary-radius);\n transition: grid-template-rows 200ms var(--accordion-item-expand-easing, var(--ease-spring));\n }\n\n details[open] .content-wrapper {\n grid-template-rows: 1fr;\n }\n\n .content-inner {\n padding: var(--accordion-item-summary-padding, var(--size-2) var(--size-4));\n overflow: hidden;\n opacity: 1;\n transform: translateY(0);\n transition:\n opacity 200ms 60ms var(--ease-spring),\n transform 200ms 60ms var(--ease-spring);\n }\n\n /* Opening: set from-state with no transition — transition fires on base rule when class is removed */\n details.opening .content-inner {\n opacity: 0;\n transform: translateY(-6px);\n transition: none;\n }\n\n /* Closing: content fades out immediately, row collapses after */\n details.closing .content-inner {\n opacity: 0;\n transform: translateY(-4px);\n transition:\n opacity 150ms var(--ease-spring),\n transform 150ms var(--ease-spring);\n }\n\n /* Keep row expanded while closing animation plays */\n details.closing .content-wrapper {\n grid-template-rows: 1fr;\n transition: grid-template-rows 200ms 120ms var(--accordion-item-expand-easing, var(--ease-spring));\n }\n}\n\n@layer refine.variants {\n /* ========================================\n Visual Variants\n ======================================== */\n\n :host,\n :host([variant='solid']) {\n --accordion-item-bg: var(--color-contrast-50);\n --accordion-item-border-color: transparent;\n --accordion-item-hover-bg: var(--color-contrast-200);\n }\n\n :host([variant='flat']) {\n --accordion-item-bg: var(--color-contrast-100);\n --accordion-item-hover-bg: var(--color-contrast-200);\n }\n\n :host([variant='bordered']) {\n --accordion-item-bg: var(--color-contrast-100);\n --accordion-item-border-color: var(--color-divider);\n --accordion-item-hover-bg: var(--color-contrast-200);\n\n box-shadow: var(--inset-shadow-xs), var(--shadow-2xs);\n }\n\n :host([variant='outline']) {\n --accordion-item-bg: transparent;\n --accordion-item-border-color: var(--color-divider);\n --accordion-item-hover-bg: var(--color-contrast-300);\n }\n\n :host([variant='ghost']) {\n --accordion-item-bg: transparent;\n --accordion-item-border-color: transparent;\n --accordion-item-hover-bg: var(--color-contrast-200);\n }\n\n :host([variant='text']) {\n --accordion-item-bg: transparent;\n --accordion-item-border-color: transparent;\n --accordion-item-hover-bg: transparent;\n }\n\n /* ── Shared hover state reads per-variant --accordion-item-hover-bg ── */\n :host summary:hover {\n background: var(--accordion-item-hover-bg);\n }\n\n /* Glass & Frost - Shared Styles */\n :host([variant='glass']) details,\n :host([variant='frost']) details {\n border-radius: inherit;\n }\n\n :host([variant='glass']) summary,\n :host([variant='frost']) summary {\n border-radius: inherit;\n backdrop-filter: blur(var(--blur-lg)) saturate(180%);\n }\n\n :host([variant='glass']) .content-wrapper,\n :host([variant='frost']) .content-wrapper {\n border-radius: 0;\n backdrop-filter: blur(var(--blur-lg)) saturate(180%);\n }\n\n /* Glass */\n :host([variant='glass']) {\n --accordion-item-bg: color-mix(in oklch, var(--color-secondary) 30%, var(--color-contrast) 10%);\n --accordion-item-border-color: transparent;\n --accordion-item-hover-bg: color-mix(in oklch, var(--color-secondary) 20%, transparent);\n --accordion-item-title-color: color-mix(in oklch, var(--color-secondary-contrast) 100%, transparent);\n --accordion-item-subtitle-color: color-mix(in oklch, var(--color-secondary-contrast) 60%, transparent);\n --accordion-item-body-color: color-mix(in oklch, var(--color-secondary-contrast) 80%, transparent);\n }\n\n :host([variant='glass']) summary {\n text-shadow: var(--text-shadow-xs);\n }\n\n :host([variant='glass']) .content-wrapper {\n filter: brightness(1.05);\n }\n\n /* Frost */\n :host([variant='frost']) {\n --accordion-item-bg: color-mix(in oklch, var(--color-canvas) 55%, transparent);\n --accordion-item-border-color: transparent;\n --accordion-item-hover-bg: color-mix(in oklch, var(--color-canvas) 20%, transparent);\n }\n\n :host([variant='frost']) summary {\n text-shadow: var(--text-shadow-2xs);\n }\n\n /* ========================================\n Size Variants\n ======================================== */\n\n :host([size='sm']) {\n --accordion-item-details-padding: var(--size-2) var(--size-4);\n --accordion-item-summary-padding: var(--size-1) var(--size-5);\n --accordion-item-title: var(--text-sm);\n --accordion-item-subtitle-size: var(--text-xs);\n --accordion-item-body: var(--text-xs);\n }\n\n :host(:not([size])),\n :host([size='md']) {\n --accordion-item-details-padding: var(--size-3) var(--size-4);\n --accordion-item-summary-padding: var(--size-1) var(--size-5);\n --accordion-item-title: var(--text-base);\n --accordion-item-subtitle-size: var(--text-sm);\n --accordion-item-body: var(--text-sm);\n }\n\n :host([size='lg']) {\n --accordion-item-details-padding: var(--size-4) var(--size-4);\n --accordion-item-summary-padding: var(--size-1) var(--size-5);\n --accordion-item-title: var(--text-lg);\n --accordion-item-subtitle-size: var(--text-base);\n --accordion-item-body: var(--text-base);\n }\n\n /* ─── coarse pointer: promote one size tier for proportional scaling ─── */\n @media (pointer: coarse) {\n :host,\n :host([size='md']) {\n --accordion-item-details-padding: var(--size-4) var(--size-5);\n --accordion-item-title: var(--text-lg);\n --accordion-item-subtitle-size: var(--text-base);\n --accordion-item-body: var(--text-base);\n }\n\n :host([size='sm']) {\n --accordion-item-details-padding: var(--size-3) var(--size-4);\n --accordion-item-title: var(--text-base);\n --accordion-item-subtitle-size: var(--text-sm);\n --accordion-item-body: var(--text-sm);\n }\n }\n\n /* ========================================\n States\n ======================================== */\n\n :host([disabled]) {\n pointer-events: none;\n opacity: 0.6;\n }\n\n /* ========================================\n Chevron Animation\n ======================================== */\n\n .chevron {\n --ore-icon-size: var(--_size, var(--size-5));\n width: var(--_size, var(--size-5));\n height: var(--_size, var(--size-5));\n\n margin-inline-start: auto;\n transform: rotate(-90deg);\n transition: transform 200ms var(--ease-spring);\n }\n\n details[open] .chevron {\n transform: rotate(0deg);\n }\n\n /* RTL Support - use .rtl class added by JavaScript */\n details.rtl .chevron {\n transform: rotate(90deg);\n }\n\n details.rtl[open] .chevron {\n transform: rotate(0deg);\n }\n\n /* :dir(rtl) is inheritance-driven and crosses the shadow boundary; the ancestor-attribute\n selectors (html[dir='rtl']/[dir='rtl']) cannot match anything inside this shadow root and\n were removed. */\n :dir(rtl) .chevron {\n transform: rotate(90deg);\n }\n\n :dir(rtl) details[open] .chevron {\n transform: rotate(0deg);\n }\n\n /* Expanded state - adjust border radius */\n :host([expanded]) {\n --accordion-details-radius: var(--rounded-lg) var(--rounded-lg) 0 0;\n --accordion-summary-radius: 0 0 var(--rounded-lg) var(--rounded-lg);\n }\n\n @media (forced-colors: active) {\n /* Default variant uses a transparent border — ensure a visible border\n renders in HCM so the summary is distinguishable from the body */\n summary {\n border-color: ButtonText;\n }\n }\n}\n"],"mappings":""}
1
+ {"version":3,"file":"accordion-item.css.cjs","names":[],"sources":["../../../src/disclosure/accordion-item/accordion-item.css?inline"],"sourcesContent":["@layer refine.base {\n /* ========================================\n Base Styles & Defaults\n ======================================== */\n\n :host {\n --accordion-details-radius: var(--rounded-lg);\n --accordion-item-transition: var(--transition-normal);\n --accordion-item-expand-easing: var(--ease-spring);\n display: block;\n color: var(--accordion-item-body-color, var(--text-color-body));\n }\n\n details {\n width: 100%;\n overflow: hidden;\n border-radius: var(--accordion-item-radius);\n }\n\n summary {\n position: relative;\n display: flex;\n gap: var(--size-4);\n align-items: center;\n min-height: var(--_touch-target);\n padding: var(--accordion-item-details-padding, var(--size-3) var(--size-4));\n font-size: var(--accordion-item-title);\n cursor: pointer;\n user-select: none;\n outline: none;\n list-style: none;\n background: var(--accordion-item-bg);\n border: var(--border) solid var(--accordion-item-border-color);\n border-radius: var(--accordion-details-radius);\n transition:\n background var(--accordion-item-transition),\n border-color var(--accordion-item-transition),\n color var(--accordion-item-transition);\n }\n\n summary::-webkit-details-marker {\n display: none;\n }\n\n summary:focus {\n outline: none;\n }\n\n summary:focus-visible {\n outline: var(--border-2) solid currentcolor;\n outline-offset: var(--border-2);\n box-shadow: 0 0 0 3px color-mix(in oklch, currentcolor 20%, transparent);\n }\n\n .header-content {\n display: flex;\n flex: 1;\n flex-direction: column;\n min-width: 0;\n }\n\n .subtitle {\n font-size: var(--accordion-item-subtitle-size);\n line-height: var(--leading-normal);\n color: var(--accordion-item-subtitle-color, var(--text-color-secondary));\n }\n\n .title {\n overflow: hidden;\n text-overflow: ellipsis;\n font-weight: var(--font-medium);\n color: var(--accordion-item-title-color, var(--text-color-heading));\n white-space: nowrap;\n }\n\n .content-wrapper {\n display: grid;\n grid-template-rows: 0fr;\n font-size: var(--accordion-item-body);\n background: var(--accordion-item-bg);\n border-inline: 1px solid var(--accordion-item-border-color);\n border-bottom: 1px solid var(--accordion-item-border-color);\n border-radius: var(--accordion-summary-radius);\n transition: grid-template-rows 200ms var(--accordion-item-expand-easing, var(--ease-spring));\n }\n\n details[open] .content-wrapper {\n grid-template-rows: 1fr;\n }\n\n .content-inner {\n padding: var(--accordion-item-summary-padding, var(--size-2) var(--size-4));\n overflow: hidden;\n opacity: 1;\n transform: translateY(0);\n transition:\n opacity 200ms 60ms var(--ease-spring),\n transform 200ms 60ms var(--ease-spring);\n }\n\n /* Opening: set from-state with no transition — transition fires on base rule when class is removed */\n details.opening .content-inner {\n opacity: 0;\n transform: translateY(-6px);\n transition: none;\n }\n\n /* Closing: content fades out immediately, row collapses after */\n details.closing .content-inner {\n opacity: 0;\n transform: translateY(-4px);\n transition:\n opacity 150ms var(--ease-spring),\n transform 150ms var(--ease-spring);\n }\n\n /* Keep row expanded while closing animation plays */\n details.closing .content-wrapper {\n grid-template-rows: 1fr;\n transition: grid-template-rows 200ms 120ms var(--accordion-item-expand-easing, var(--ease-spring));\n }\n}\n\n@layer refine.variants {\n /* ========================================\n Visual Variants\n ======================================== */\n\n :host,\n :host([variant='solid']) {\n --accordion-item-bg: var(--color-contrast-50);\n --accordion-item-border-color: transparent;\n --accordion-item-hover-bg: var(--color-contrast-200);\n }\n\n :host([variant='flat']) {\n --accordion-item-bg: var(--color-contrast-100);\n --accordion-item-hover-bg: var(--color-contrast-200);\n }\n\n :host([variant='bordered']) {\n --accordion-item-bg: var(--color-contrast-100);\n --accordion-item-border-color: var(--color-divider);\n --accordion-item-hover-bg: var(--color-contrast-200);\n\n box-shadow: var(--inset-shadow-xs), var(--shadow-2xs);\n }\n\n :host([variant='outline']) {\n --accordion-item-bg: transparent;\n --accordion-item-border-color: var(--color-divider);\n --accordion-item-hover-bg: var(--color-contrast-300);\n }\n\n :host([variant='ghost']) {\n --accordion-item-bg: transparent;\n --accordion-item-border-color: transparent;\n --accordion-item-hover-bg: var(--color-contrast-200);\n }\n\n :host([variant='text']) {\n --accordion-item-bg: transparent;\n --accordion-item-border-color: transparent;\n --accordion-item-hover-bg: transparent;\n }\n\n /* ── Shared hover state reads per-variant --accordion-item-hover-bg ── */\n :host summary:hover {\n background: var(--accordion-item-hover-bg);\n }\n\n :host([variant='frost']) details {\n border-radius: inherit;\n }\n\n :host([variant='frost']) summary {\n border-radius: inherit;\n backdrop-filter: blur(var(--blur-lg)) saturate(180%);\n }\n\n :host([variant='frost']) .content-wrapper {\n border-radius: 0;\n backdrop-filter: blur(var(--blur-lg)) saturate(180%);\n }\n\n /* Frost */\n :host([variant='frost']) {\n --accordion-item-bg: color-mix(in oklch, var(--color-canvas) 55%, transparent);\n --accordion-item-border-color: transparent;\n --accordion-item-hover-bg: color-mix(in oklch, var(--color-canvas) 20%, transparent);\n }\n\n :host([variant='frost']) summary {\n text-shadow: var(--text-shadow-2xs);\n }\n\n /* ========================================\n Size Variants\n ======================================== */\n\n :host([size='sm']) {\n --accordion-item-details-padding: var(--size-2) var(--size-4);\n --accordion-item-summary-padding: var(--size-1) var(--size-5);\n --accordion-item-title: var(--text-sm);\n --accordion-item-subtitle-size: var(--text-xs);\n --accordion-item-body: var(--text-xs);\n }\n\n :host(:not([size])),\n :host([size='md']) {\n --accordion-item-details-padding: var(--size-3) var(--size-4);\n --accordion-item-summary-padding: var(--size-1) var(--size-5);\n --accordion-item-title: var(--text-base);\n --accordion-item-subtitle-size: var(--text-sm);\n --accordion-item-body: var(--text-sm);\n }\n\n :host([size='lg']) {\n --accordion-item-details-padding: var(--size-4) var(--size-4);\n --accordion-item-summary-padding: var(--size-1) var(--size-5);\n --accordion-item-title: var(--text-lg);\n --accordion-item-subtitle-size: var(--text-base);\n --accordion-item-body: var(--text-base);\n }\n\n /* ─── coarse pointer: promote one size tier for proportional scaling ─── */\n @media (pointer: coarse) {\n :host,\n :host([size='md']) {\n --accordion-item-details-padding: var(--size-4) var(--size-5);\n --accordion-item-title: var(--text-lg);\n --accordion-item-subtitle-size: var(--text-base);\n --accordion-item-body: var(--text-base);\n }\n\n :host([size='sm']) {\n --accordion-item-details-padding: var(--size-3) var(--size-4);\n --accordion-item-title: var(--text-base);\n --accordion-item-subtitle-size: var(--text-sm);\n --accordion-item-body: var(--text-sm);\n }\n }\n\n /* ========================================\n States\n ======================================== */\n\n :host([disabled]) {\n pointer-events: none;\n opacity: 0.6;\n }\n\n /* ========================================\n Chevron Animation\n ======================================== */\n\n .chevron {\n --ore-icon-size: var(--_size, var(--size-5));\n width: var(--_size, var(--size-5));\n height: var(--_size, var(--size-5));\n\n margin-inline-start: auto;\n transform: rotate(-90deg);\n transition: transform 200ms var(--ease-spring);\n }\n\n details[open] .chevron {\n transform: rotate(0deg);\n }\n\n /* RTL Support - use .rtl class added by JavaScript */\n details.rtl .chevron {\n transform: rotate(90deg);\n }\n\n details.rtl[open] .chevron {\n transform: rotate(0deg);\n }\n\n /* :dir(rtl) is inheritance-driven and crosses the shadow boundary; the ancestor-attribute\n selectors (html[dir='rtl']/[dir='rtl']) cannot match anything inside this shadow root and\n were removed. */\n :dir(rtl) .chevron {\n transform: rotate(90deg);\n }\n\n :dir(rtl) details[open] .chevron {\n transform: rotate(0deg);\n }\n\n /* Expanded state - adjust border radius */\n :host([expanded]) {\n --accordion-details-radius: var(--rounded-lg) var(--rounded-lg) 0 0;\n --accordion-summary-radius: 0 0 var(--rounded-lg) var(--rounded-lg);\n }\n\n @media (forced-colors: active) {\n /* Default variant uses a transparent border — ensure a visible border\n renders in HCM so the summary is distinguishable from the body */\n summary {\n border-color: ButtonText;\n }\n }\n}\n"],"mappings":""}
@@ -1,5 +1,5 @@
1
1
  //#region src/disclosure/accordion-item/accordion-item.css?inline
2
- var e = "@layer refine.base{:host{--accordion-details-radius:var(--rounded-lg);--accordion-item-transition:var(--transition-normal);--accordion-item-expand-easing:var(--ease-spring);color:var(--accordion-item-body-color,var(--text-color-body));display:block}details{border-radius:var(--accordion-item-radius);width:100%;overflow:hidden}summary{gap:var(--size-4);min-height:var(--_touch-target);padding:var(--accordion-item-details-padding,var(--size-3) var(--size-4));font-size:var(--accordion-item-title);cursor:pointer;-webkit-user-select:none;user-select:none;background:var(--accordion-item-bg);border:var(--border) solid var(--accordion-item-border-color);border-radius:var(--accordion-details-radius);transition:background var(--accordion-item-transition), border-color var(--accordion-item-transition), color var(--accordion-item-transition);outline:none;align-items:center;list-style:none;display:flex;position:relative}summary::-webkit-details-marker{display:none}summary:focus{outline:none}summary:focus-visible{outline:var(--border-2) solid currentcolor;outline-offset:var(--border-2);box-shadow:0 0 0 3px color-mix(in oklch, currentcolor 20%, transparent)}.header-content{flex-direction:column;flex:1;min-width:0;display:flex}.subtitle{font-size:var(--accordion-item-subtitle-size);line-height:var(--leading-normal);color:var(--accordion-item-subtitle-color,var(--text-color-secondary))}.title{text-overflow:ellipsis;font-weight:var(--font-medium);color:var(--accordion-item-title-color,var(--text-color-heading));white-space:nowrap;overflow:hidden}.content-wrapper{font-size:var(--accordion-item-body);background:var(--accordion-item-bg);border-inline:1px solid var(--accordion-item-border-color);border-bottom:1px solid var(--accordion-item-border-color);border-radius:var(--accordion-summary-radius);transition:grid-template-rows .2s var(--accordion-item-expand-easing,var(--ease-spring));grid-template-rows:0fr;display:grid}details[open] .content-wrapper{grid-template-rows:1fr}.content-inner{padding:var(--accordion-item-summary-padding,var(--size-2) var(--size-4));opacity:1;transition:opacity .2s 60ms var(--ease-spring), transform .2s 60ms var(--ease-spring);overflow:hidden;transform:translateY(0)}details.opening .content-inner{opacity:0;transition:none;transform:translateY(-6px)}details.closing .content-inner{opacity:0;transition:opacity .15s var(--ease-spring), transform .15s var(--ease-spring);transform:translateY(-4px)}details.closing .content-wrapper{transition:grid-template-rows .2s .12s var(--accordion-item-expand-easing,var(--ease-spring));grid-template-rows:1fr}}@layer refine.variants{:host,:host([variant=solid]){--accordion-item-bg:var(--color-contrast-50);--accordion-item-border-color:transparent;--accordion-item-hover-bg:var(--color-contrast-200)}:host([variant=flat]){--accordion-item-bg:var(--color-contrast-100);--accordion-item-hover-bg:var(--color-contrast-200)}:host([variant=bordered]){--accordion-item-bg:var(--color-contrast-100);--accordion-item-border-color:var(--color-divider);--accordion-item-hover-bg:var(--color-contrast-200);box-shadow:var(--inset-shadow-xs), var(--shadow-2xs)}:host([variant=outline]){--accordion-item-bg:transparent;--accordion-item-border-color:var(--color-divider);--accordion-item-hover-bg:var(--color-contrast-300)}:host([variant=ghost]){--accordion-item-bg:transparent;--accordion-item-border-color:transparent;--accordion-item-hover-bg:var(--color-contrast-200)}:host([variant=text]){--accordion-item-bg:transparent;--accordion-item-border-color:transparent;--accordion-item-hover-bg:transparent}:host summary:hover{background:var(--accordion-item-hover-bg)}:host([variant=glass]) details,:host([variant=frost]) details{border-radius:inherit}:host([variant=glass]) summary,:host([variant=frost]) summary{border-radius:inherit;-webkit-backdrop-filter:blur(var(--blur-lg)) saturate(180%);backdrop-filter:blur(var(--blur-lg)) saturate(180%)}:host([variant=glass]) .content-wrapper,:host([variant=frost]) .content-wrapper{-webkit-backdrop-filter:blur(var(--blur-lg)) saturate(180%);backdrop-filter:blur(var(--blur-lg)) saturate(180%);border-radius:0}:host([variant=glass]){--accordion-item-bg:color-mix(in oklch, var(--color-secondary) 30%, var(--color-contrast) 10%);--accordion-item-border-color:transparent;--accordion-item-hover-bg:color-mix(in oklch, var(--color-secondary) 20%, transparent);--accordion-item-title-color:color-mix(in oklch, var(--color-secondary-contrast) 100%, transparent);--accordion-item-subtitle-color:color-mix(in oklch, var(--color-secondary-contrast) 60%, transparent);--accordion-item-body-color:color-mix(in oklch, var(--color-secondary-contrast) 80%, transparent)}:host([variant=glass]) summary{text-shadow:var(--text-shadow-xs)}:host([variant=glass]) .content-wrapper{filter:brightness(1.05)}:host([variant=frost]){--accordion-item-bg:color-mix(in oklch, var(--color-canvas) 55%, transparent);--accordion-item-border-color:transparent;--accordion-item-hover-bg:color-mix(in oklch, var(--color-canvas) 20%, transparent)}:host([variant=frost]) summary{text-shadow:var(--text-shadow-2xs)}:host([size=sm]){--accordion-item-details-padding:var(--size-2) var(--size-4);--accordion-item-summary-padding:var(--size-1) var(--size-5);--accordion-item-title:var(--text-sm);--accordion-item-subtitle-size:var(--text-xs);--accordion-item-body:var(--text-xs)}:host(:not([size])),:host([size=md]){--accordion-item-details-padding:var(--size-3) var(--size-4);--accordion-item-summary-padding:var(--size-1) var(--size-5);--accordion-item-title:var(--text-base);--accordion-item-subtitle-size:var(--text-sm);--accordion-item-body:var(--text-sm)}:host([size=lg]){--accordion-item-details-padding:var(--size-4) var(--size-4);--accordion-item-summary-padding:var(--size-1) var(--size-5);--accordion-item-title:var(--text-lg);--accordion-item-subtitle-size:var(--text-base);--accordion-item-body:var(--text-base)}@media (pointer:coarse){:host,:host([size=md]){--accordion-item-details-padding:var(--size-4) var(--size-5);--accordion-item-title:var(--text-lg);--accordion-item-subtitle-size:var(--text-base);--accordion-item-body:var(--text-base)}:host([size=sm]){--accordion-item-details-padding:var(--size-3) var(--size-4);--accordion-item-title:var(--text-base);--accordion-item-subtitle-size:var(--text-sm);--accordion-item-body:var(--text-sm)}}:host([disabled]){pointer-events:none;opacity:.6}.chevron{--ore-icon-size:var(--_size,var(--size-5));width:var(--_size,var(--size-5));height:var(--_size,var(--size-5));transition:transform .2s var(--ease-spring);transform:rotate(-90deg)}.chevron:not(:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){margin-left:auto}.chevron:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){margin-right:auto}details[open] .chevron{transform:rotate(0)}details.rtl .chevron{transform:rotate(90deg)}details.rtl[open] .chevron{transform:rotate(0)}:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)) .chevron{transform:rotate(90deg)}:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)) details[open] .chevron{transform:rotate(0)}:host([expanded]){--accordion-details-radius:var(--rounded-lg) var(--rounded-lg) 0 0;--accordion-summary-radius:0 0 var(--rounded-lg) var(--rounded-lg)}@media (forced-colors:active){summary{border-color:buttontext}}}";
2
+ var e = "@layer refine.base{:host{--accordion-details-radius:var(--rounded-lg);--accordion-item-transition:var(--transition-normal);--accordion-item-expand-easing:var(--ease-spring);color:var(--accordion-item-body-color,var(--text-color-body));display:block}details{border-radius:var(--accordion-item-radius);width:100%;overflow:hidden}summary{gap:var(--size-4);min-height:var(--_touch-target);padding:var(--accordion-item-details-padding,var(--size-3) var(--size-4));font-size:var(--accordion-item-title);cursor:pointer;-webkit-user-select:none;user-select:none;background:var(--accordion-item-bg);border:var(--border) solid var(--accordion-item-border-color);border-radius:var(--accordion-details-radius);transition:background var(--accordion-item-transition), border-color var(--accordion-item-transition), color var(--accordion-item-transition);outline:none;align-items:center;list-style:none;display:flex;position:relative}summary::-webkit-details-marker{display:none}summary:focus{outline:none}summary:focus-visible{outline:var(--border-2) solid currentcolor;outline-offset:var(--border-2);box-shadow:0 0 0 3px color-mix(in oklch, currentcolor 20%, transparent)}.header-content{flex-direction:column;flex:1;min-width:0;display:flex}.subtitle{font-size:var(--accordion-item-subtitle-size);line-height:var(--leading-normal);color:var(--accordion-item-subtitle-color,var(--text-color-secondary))}.title{text-overflow:ellipsis;font-weight:var(--font-medium);color:var(--accordion-item-title-color,var(--text-color-heading));white-space:nowrap;overflow:hidden}.content-wrapper{font-size:var(--accordion-item-body);background:var(--accordion-item-bg);border-inline:1px solid var(--accordion-item-border-color);border-bottom:1px solid var(--accordion-item-border-color);border-radius:var(--accordion-summary-radius);transition:grid-template-rows .2s var(--accordion-item-expand-easing,var(--ease-spring));grid-template-rows:0fr;display:grid}details[open] .content-wrapper{grid-template-rows:1fr}.content-inner{padding:var(--accordion-item-summary-padding,var(--size-2) var(--size-4));opacity:1;transition:opacity .2s 60ms var(--ease-spring), transform .2s 60ms var(--ease-spring);overflow:hidden;transform:translateY(0)}details.opening .content-inner{opacity:0;transition:none;transform:translateY(-6px)}details.closing .content-inner{opacity:0;transition:opacity .15s var(--ease-spring), transform .15s var(--ease-spring);transform:translateY(-4px)}details.closing .content-wrapper{transition:grid-template-rows .2s .12s var(--accordion-item-expand-easing,var(--ease-spring));grid-template-rows:1fr}}@layer refine.variants{:host,:host([variant=solid]){--accordion-item-bg:var(--color-contrast-50);--accordion-item-border-color:transparent;--accordion-item-hover-bg:var(--color-contrast-200)}:host([variant=flat]){--accordion-item-bg:var(--color-contrast-100);--accordion-item-hover-bg:var(--color-contrast-200)}:host([variant=bordered]){--accordion-item-bg:var(--color-contrast-100);--accordion-item-border-color:var(--color-divider);--accordion-item-hover-bg:var(--color-contrast-200);box-shadow:var(--inset-shadow-xs), var(--shadow-2xs)}:host([variant=outline]){--accordion-item-bg:transparent;--accordion-item-border-color:var(--color-divider);--accordion-item-hover-bg:var(--color-contrast-300)}:host([variant=ghost]){--accordion-item-bg:transparent;--accordion-item-border-color:transparent;--accordion-item-hover-bg:var(--color-contrast-200)}:host([variant=text]){--accordion-item-bg:transparent;--accordion-item-border-color:transparent;--accordion-item-hover-bg:transparent}:host summary:hover{background:var(--accordion-item-hover-bg)}:host([variant=frost]) details{border-radius:inherit}:host([variant=frost]) summary{border-radius:inherit;-webkit-backdrop-filter:blur(var(--blur-lg)) saturate(180%);backdrop-filter:blur(var(--blur-lg)) saturate(180%)}:host([variant=frost]) .content-wrapper{-webkit-backdrop-filter:blur(var(--blur-lg)) saturate(180%);backdrop-filter:blur(var(--blur-lg)) saturate(180%);border-radius:0}:host([variant=frost]){--accordion-item-bg:color-mix(in oklch, var(--color-canvas) 55%, transparent);--accordion-item-border-color:transparent;--accordion-item-hover-bg:color-mix(in oklch, var(--color-canvas) 20%, transparent)}:host([variant=frost]) summary{text-shadow:var(--text-shadow-2xs)}:host([size=sm]){--accordion-item-details-padding:var(--size-2) var(--size-4);--accordion-item-summary-padding:var(--size-1) var(--size-5);--accordion-item-title:var(--text-sm);--accordion-item-subtitle-size:var(--text-xs);--accordion-item-body:var(--text-xs)}:host(:not([size])),:host([size=md]){--accordion-item-details-padding:var(--size-3) var(--size-4);--accordion-item-summary-padding:var(--size-1) var(--size-5);--accordion-item-title:var(--text-base);--accordion-item-subtitle-size:var(--text-sm);--accordion-item-body:var(--text-sm)}:host([size=lg]){--accordion-item-details-padding:var(--size-4) var(--size-4);--accordion-item-summary-padding:var(--size-1) var(--size-5);--accordion-item-title:var(--text-lg);--accordion-item-subtitle-size:var(--text-base);--accordion-item-body:var(--text-base)}@media (pointer:coarse){:host,:host([size=md]){--accordion-item-details-padding:var(--size-4) var(--size-5);--accordion-item-title:var(--text-lg);--accordion-item-subtitle-size:var(--text-base);--accordion-item-body:var(--text-base)}:host([size=sm]){--accordion-item-details-padding:var(--size-3) var(--size-4);--accordion-item-title:var(--text-base);--accordion-item-subtitle-size:var(--text-sm);--accordion-item-body:var(--text-sm)}}:host([disabled]){pointer-events:none;opacity:.6}.chevron{--ore-icon-size:var(--_size,var(--size-5));width:var(--_size,var(--size-5));height:var(--_size,var(--size-5));transition:transform .2s var(--ease-spring);transform:rotate(-90deg)}.chevron:not(:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){margin-left:auto}.chevron:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){margin-right:auto}details[open] .chevron{transform:rotate(0)}details.rtl .chevron{transform:rotate(90deg)}details.rtl[open] .chevron{transform:rotate(0)}:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)) .chevron{transform:rotate(90deg)}:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)) details[open] .chevron{transform:rotate(0)}:host([expanded]){--accordion-details-radius:var(--rounded-lg) var(--rounded-lg) 0 0;--accordion-summary-radius:0 0 var(--rounded-lg) var(--rounded-lg)}@media (forced-colors:active){summary{border-color:buttontext}}}";
3
3
  //#endregion
4
4
  export { e as default };
5
5
 
@@ -1 +1 @@
1
- {"version":3,"file":"accordion-item.css.js","names":[],"sources":["../../../src/disclosure/accordion-item/accordion-item.css?inline"],"sourcesContent":["@layer refine.base {\n /* ========================================\n Base Styles & Defaults\n ======================================== */\n\n :host {\n --accordion-details-radius: var(--rounded-lg);\n --accordion-item-transition: var(--transition-normal);\n --accordion-item-expand-easing: var(--ease-spring);\n display: block;\n color: var(--accordion-item-body-color, var(--text-color-body));\n }\n\n details {\n width: 100%;\n overflow: hidden;\n border-radius: var(--accordion-item-radius);\n }\n\n summary {\n position: relative;\n display: flex;\n gap: var(--size-4);\n align-items: center;\n min-height: var(--_touch-target);\n padding: var(--accordion-item-details-padding, var(--size-3) var(--size-4));\n font-size: var(--accordion-item-title);\n cursor: pointer;\n user-select: none;\n outline: none;\n list-style: none;\n background: var(--accordion-item-bg);\n border: var(--border) solid var(--accordion-item-border-color);\n border-radius: var(--accordion-details-radius);\n transition:\n background var(--accordion-item-transition),\n border-color var(--accordion-item-transition),\n color var(--accordion-item-transition);\n }\n\n summary::-webkit-details-marker {\n display: none;\n }\n\n summary:focus {\n outline: none;\n }\n\n summary:focus-visible {\n outline: var(--border-2) solid currentcolor;\n outline-offset: var(--border-2);\n box-shadow: 0 0 0 3px color-mix(in oklch, currentcolor 20%, transparent);\n }\n\n .header-content {\n display: flex;\n flex: 1;\n flex-direction: column;\n min-width: 0;\n }\n\n .subtitle {\n font-size: var(--accordion-item-subtitle-size);\n line-height: var(--leading-normal);\n color: var(--accordion-item-subtitle-color, var(--text-color-secondary));\n }\n\n .title {\n overflow: hidden;\n text-overflow: ellipsis;\n font-weight: var(--font-medium);\n color: var(--accordion-item-title-color, var(--text-color-heading));\n white-space: nowrap;\n }\n\n .content-wrapper {\n display: grid;\n grid-template-rows: 0fr;\n font-size: var(--accordion-item-body);\n background: var(--accordion-item-bg);\n border-inline: 1px solid var(--accordion-item-border-color);\n border-bottom: 1px solid var(--accordion-item-border-color);\n border-radius: var(--accordion-summary-radius);\n transition: grid-template-rows 200ms var(--accordion-item-expand-easing, var(--ease-spring));\n }\n\n details[open] .content-wrapper {\n grid-template-rows: 1fr;\n }\n\n .content-inner {\n padding: var(--accordion-item-summary-padding, var(--size-2) var(--size-4));\n overflow: hidden;\n opacity: 1;\n transform: translateY(0);\n transition:\n opacity 200ms 60ms var(--ease-spring),\n transform 200ms 60ms var(--ease-spring);\n }\n\n /* Opening: set from-state with no transition — transition fires on base rule when class is removed */\n details.opening .content-inner {\n opacity: 0;\n transform: translateY(-6px);\n transition: none;\n }\n\n /* Closing: content fades out immediately, row collapses after */\n details.closing .content-inner {\n opacity: 0;\n transform: translateY(-4px);\n transition:\n opacity 150ms var(--ease-spring),\n transform 150ms var(--ease-spring);\n }\n\n /* Keep row expanded while closing animation plays */\n details.closing .content-wrapper {\n grid-template-rows: 1fr;\n transition: grid-template-rows 200ms 120ms var(--accordion-item-expand-easing, var(--ease-spring));\n }\n}\n\n@layer refine.variants {\n /* ========================================\n Visual Variants\n ======================================== */\n\n :host,\n :host([variant='solid']) {\n --accordion-item-bg: var(--color-contrast-50);\n --accordion-item-border-color: transparent;\n --accordion-item-hover-bg: var(--color-contrast-200);\n }\n\n :host([variant='flat']) {\n --accordion-item-bg: var(--color-contrast-100);\n --accordion-item-hover-bg: var(--color-contrast-200);\n }\n\n :host([variant='bordered']) {\n --accordion-item-bg: var(--color-contrast-100);\n --accordion-item-border-color: var(--color-divider);\n --accordion-item-hover-bg: var(--color-contrast-200);\n\n box-shadow: var(--inset-shadow-xs), var(--shadow-2xs);\n }\n\n :host([variant='outline']) {\n --accordion-item-bg: transparent;\n --accordion-item-border-color: var(--color-divider);\n --accordion-item-hover-bg: var(--color-contrast-300);\n }\n\n :host([variant='ghost']) {\n --accordion-item-bg: transparent;\n --accordion-item-border-color: transparent;\n --accordion-item-hover-bg: var(--color-contrast-200);\n }\n\n :host([variant='text']) {\n --accordion-item-bg: transparent;\n --accordion-item-border-color: transparent;\n --accordion-item-hover-bg: transparent;\n }\n\n /* ── Shared hover state reads per-variant --accordion-item-hover-bg ── */\n :host summary:hover {\n background: var(--accordion-item-hover-bg);\n }\n\n /* Glass & Frost - Shared Styles */\n :host([variant='glass']) details,\n :host([variant='frost']) details {\n border-radius: inherit;\n }\n\n :host([variant='glass']) summary,\n :host([variant='frost']) summary {\n border-radius: inherit;\n backdrop-filter: blur(var(--blur-lg)) saturate(180%);\n }\n\n :host([variant='glass']) .content-wrapper,\n :host([variant='frost']) .content-wrapper {\n border-radius: 0;\n backdrop-filter: blur(var(--blur-lg)) saturate(180%);\n }\n\n /* Glass */\n :host([variant='glass']) {\n --accordion-item-bg: color-mix(in oklch, var(--color-secondary) 30%, var(--color-contrast) 10%);\n --accordion-item-border-color: transparent;\n --accordion-item-hover-bg: color-mix(in oklch, var(--color-secondary) 20%, transparent);\n --accordion-item-title-color: color-mix(in oklch, var(--color-secondary-contrast) 100%, transparent);\n --accordion-item-subtitle-color: color-mix(in oklch, var(--color-secondary-contrast) 60%, transparent);\n --accordion-item-body-color: color-mix(in oklch, var(--color-secondary-contrast) 80%, transparent);\n }\n\n :host([variant='glass']) summary {\n text-shadow: var(--text-shadow-xs);\n }\n\n :host([variant='glass']) .content-wrapper {\n filter: brightness(1.05);\n }\n\n /* Frost */\n :host([variant='frost']) {\n --accordion-item-bg: color-mix(in oklch, var(--color-canvas) 55%, transparent);\n --accordion-item-border-color: transparent;\n --accordion-item-hover-bg: color-mix(in oklch, var(--color-canvas) 20%, transparent);\n }\n\n :host([variant='frost']) summary {\n text-shadow: var(--text-shadow-2xs);\n }\n\n /* ========================================\n Size Variants\n ======================================== */\n\n :host([size='sm']) {\n --accordion-item-details-padding: var(--size-2) var(--size-4);\n --accordion-item-summary-padding: var(--size-1) var(--size-5);\n --accordion-item-title: var(--text-sm);\n --accordion-item-subtitle-size: var(--text-xs);\n --accordion-item-body: var(--text-xs);\n }\n\n :host(:not([size])),\n :host([size='md']) {\n --accordion-item-details-padding: var(--size-3) var(--size-4);\n --accordion-item-summary-padding: var(--size-1) var(--size-5);\n --accordion-item-title: var(--text-base);\n --accordion-item-subtitle-size: var(--text-sm);\n --accordion-item-body: var(--text-sm);\n }\n\n :host([size='lg']) {\n --accordion-item-details-padding: var(--size-4) var(--size-4);\n --accordion-item-summary-padding: var(--size-1) var(--size-5);\n --accordion-item-title: var(--text-lg);\n --accordion-item-subtitle-size: var(--text-base);\n --accordion-item-body: var(--text-base);\n }\n\n /* ─── coarse pointer: promote one size tier for proportional scaling ─── */\n @media (pointer: coarse) {\n :host,\n :host([size='md']) {\n --accordion-item-details-padding: var(--size-4) var(--size-5);\n --accordion-item-title: var(--text-lg);\n --accordion-item-subtitle-size: var(--text-base);\n --accordion-item-body: var(--text-base);\n }\n\n :host([size='sm']) {\n --accordion-item-details-padding: var(--size-3) var(--size-4);\n --accordion-item-title: var(--text-base);\n --accordion-item-subtitle-size: var(--text-sm);\n --accordion-item-body: var(--text-sm);\n }\n }\n\n /* ========================================\n States\n ======================================== */\n\n :host([disabled]) {\n pointer-events: none;\n opacity: 0.6;\n }\n\n /* ========================================\n Chevron Animation\n ======================================== */\n\n .chevron {\n --ore-icon-size: var(--_size, var(--size-5));\n width: var(--_size, var(--size-5));\n height: var(--_size, var(--size-5));\n\n margin-inline-start: auto;\n transform: rotate(-90deg);\n transition: transform 200ms var(--ease-spring);\n }\n\n details[open] .chevron {\n transform: rotate(0deg);\n }\n\n /* RTL Support - use .rtl class added by JavaScript */\n details.rtl .chevron {\n transform: rotate(90deg);\n }\n\n details.rtl[open] .chevron {\n transform: rotate(0deg);\n }\n\n /* :dir(rtl) is inheritance-driven and crosses the shadow boundary; the ancestor-attribute\n selectors (html[dir='rtl']/[dir='rtl']) cannot match anything inside this shadow root and\n were removed. */\n :dir(rtl) .chevron {\n transform: rotate(90deg);\n }\n\n :dir(rtl) details[open] .chevron {\n transform: rotate(0deg);\n }\n\n /* Expanded state - adjust border radius */\n :host([expanded]) {\n --accordion-details-radius: var(--rounded-lg) var(--rounded-lg) 0 0;\n --accordion-summary-radius: 0 0 var(--rounded-lg) var(--rounded-lg);\n }\n\n @media (forced-colors: active) {\n /* Default variant uses a transparent border — ensure a visible border\n renders in HCM so the summary is distinguishable from the body */\n summary {\n border-color: ButtonText;\n }\n }\n}\n"],"mappings":""}
1
+ {"version":3,"file":"accordion-item.css.js","names":[],"sources":["../../../src/disclosure/accordion-item/accordion-item.css?inline"],"sourcesContent":["@layer refine.base {\n /* ========================================\n Base Styles & Defaults\n ======================================== */\n\n :host {\n --accordion-details-radius: var(--rounded-lg);\n --accordion-item-transition: var(--transition-normal);\n --accordion-item-expand-easing: var(--ease-spring);\n display: block;\n color: var(--accordion-item-body-color, var(--text-color-body));\n }\n\n details {\n width: 100%;\n overflow: hidden;\n border-radius: var(--accordion-item-radius);\n }\n\n summary {\n position: relative;\n display: flex;\n gap: var(--size-4);\n align-items: center;\n min-height: var(--_touch-target);\n padding: var(--accordion-item-details-padding, var(--size-3) var(--size-4));\n font-size: var(--accordion-item-title);\n cursor: pointer;\n user-select: none;\n outline: none;\n list-style: none;\n background: var(--accordion-item-bg);\n border: var(--border) solid var(--accordion-item-border-color);\n border-radius: var(--accordion-details-radius);\n transition:\n background var(--accordion-item-transition),\n border-color var(--accordion-item-transition),\n color var(--accordion-item-transition);\n }\n\n summary::-webkit-details-marker {\n display: none;\n }\n\n summary:focus {\n outline: none;\n }\n\n summary:focus-visible {\n outline: var(--border-2) solid currentcolor;\n outline-offset: var(--border-2);\n box-shadow: 0 0 0 3px color-mix(in oklch, currentcolor 20%, transparent);\n }\n\n .header-content {\n display: flex;\n flex: 1;\n flex-direction: column;\n min-width: 0;\n }\n\n .subtitle {\n font-size: var(--accordion-item-subtitle-size);\n line-height: var(--leading-normal);\n color: var(--accordion-item-subtitle-color, var(--text-color-secondary));\n }\n\n .title {\n overflow: hidden;\n text-overflow: ellipsis;\n font-weight: var(--font-medium);\n color: var(--accordion-item-title-color, var(--text-color-heading));\n white-space: nowrap;\n }\n\n .content-wrapper {\n display: grid;\n grid-template-rows: 0fr;\n font-size: var(--accordion-item-body);\n background: var(--accordion-item-bg);\n border-inline: 1px solid var(--accordion-item-border-color);\n border-bottom: 1px solid var(--accordion-item-border-color);\n border-radius: var(--accordion-summary-radius);\n transition: grid-template-rows 200ms var(--accordion-item-expand-easing, var(--ease-spring));\n }\n\n details[open] .content-wrapper {\n grid-template-rows: 1fr;\n }\n\n .content-inner {\n padding: var(--accordion-item-summary-padding, var(--size-2) var(--size-4));\n overflow: hidden;\n opacity: 1;\n transform: translateY(0);\n transition:\n opacity 200ms 60ms var(--ease-spring),\n transform 200ms 60ms var(--ease-spring);\n }\n\n /* Opening: set from-state with no transition — transition fires on base rule when class is removed */\n details.opening .content-inner {\n opacity: 0;\n transform: translateY(-6px);\n transition: none;\n }\n\n /* Closing: content fades out immediately, row collapses after */\n details.closing .content-inner {\n opacity: 0;\n transform: translateY(-4px);\n transition:\n opacity 150ms var(--ease-spring),\n transform 150ms var(--ease-spring);\n }\n\n /* Keep row expanded while closing animation plays */\n details.closing .content-wrapper {\n grid-template-rows: 1fr;\n transition: grid-template-rows 200ms 120ms var(--accordion-item-expand-easing, var(--ease-spring));\n }\n}\n\n@layer refine.variants {\n /* ========================================\n Visual Variants\n ======================================== */\n\n :host,\n :host([variant='solid']) {\n --accordion-item-bg: var(--color-contrast-50);\n --accordion-item-border-color: transparent;\n --accordion-item-hover-bg: var(--color-contrast-200);\n }\n\n :host([variant='flat']) {\n --accordion-item-bg: var(--color-contrast-100);\n --accordion-item-hover-bg: var(--color-contrast-200);\n }\n\n :host([variant='bordered']) {\n --accordion-item-bg: var(--color-contrast-100);\n --accordion-item-border-color: var(--color-divider);\n --accordion-item-hover-bg: var(--color-contrast-200);\n\n box-shadow: var(--inset-shadow-xs), var(--shadow-2xs);\n }\n\n :host([variant='outline']) {\n --accordion-item-bg: transparent;\n --accordion-item-border-color: var(--color-divider);\n --accordion-item-hover-bg: var(--color-contrast-300);\n }\n\n :host([variant='ghost']) {\n --accordion-item-bg: transparent;\n --accordion-item-border-color: transparent;\n --accordion-item-hover-bg: var(--color-contrast-200);\n }\n\n :host([variant='text']) {\n --accordion-item-bg: transparent;\n --accordion-item-border-color: transparent;\n --accordion-item-hover-bg: transparent;\n }\n\n /* ── Shared hover state reads per-variant --accordion-item-hover-bg ── */\n :host summary:hover {\n background: var(--accordion-item-hover-bg);\n }\n\n :host([variant='frost']) details {\n border-radius: inherit;\n }\n\n :host([variant='frost']) summary {\n border-radius: inherit;\n backdrop-filter: blur(var(--blur-lg)) saturate(180%);\n }\n\n :host([variant='frost']) .content-wrapper {\n border-radius: 0;\n backdrop-filter: blur(var(--blur-lg)) saturate(180%);\n }\n\n /* Frost */\n :host([variant='frost']) {\n --accordion-item-bg: color-mix(in oklch, var(--color-canvas) 55%, transparent);\n --accordion-item-border-color: transparent;\n --accordion-item-hover-bg: color-mix(in oklch, var(--color-canvas) 20%, transparent);\n }\n\n :host([variant='frost']) summary {\n text-shadow: var(--text-shadow-2xs);\n }\n\n /* ========================================\n Size Variants\n ======================================== */\n\n :host([size='sm']) {\n --accordion-item-details-padding: var(--size-2) var(--size-4);\n --accordion-item-summary-padding: var(--size-1) var(--size-5);\n --accordion-item-title: var(--text-sm);\n --accordion-item-subtitle-size: var(--text-xs);\n --accordion-item-body: var(--text-xs);\n }\n\n :host(:not([size])),\n :host([size='md']) {\n --accordion-item-details-padding: var(--size-3) var(--size-4);\n --accordion-item-summary-padding: var(--size-1) var(--size-5);\n --accordion-item-title: var(--text-base);\n --accordion-item-subtitle-size: var(--text-sm);\n --accordion-item-body: var(--text-sm);\n }\n\n :host([size='lg']) {\n --accordion-item-details-padding: var(--size-4) var(--size-4);\n --accordion-item-summary-padding: var(--size-1) var(--size-5);\n --accordion-item-title: var(--text-lg);\n --accordion-item-subtitle-size: var(--text-base);\n --accordion-item-body: var(--text-base);\n }\n\n /* ─── coarse pointer: promote one size tier for proportional scaling ─── */\n @media (pointer: coarse) {\n :host,\n :host([size='md']) {\n --accordion-item-details-padding: var(--size-4) var(--size-5);\n --accordion-item-title: var(--text-lg);\n --accordion-item-subtitle-size: var(--text-base);\n --accordion-item-body: var(--text-base);\n }\n\n :host([size='sm']) {\n --accordion-item-details-padding: var(--size-3) var(--size-4);\n --accordion-item-title: var(--text-base);\n --accordion-item-subtitle-size: var(--text-sm);\n --accordion-item-body: var(--text-sm);\n }\n }\n\n /* ========================================\n States\n ======================================== */\n\n :host([disabled]) {\n pointer-events: none;\n opacity: 0.6;\n }\n\n /* ========================================\n Chevron Animation\n ======================================== */\n\n .chevron {\n --ore-icon-size: var(--_size, var(--size-5));\n width: var(--_size, var(--size-5));\n height: var(--_size, var(--size-5));\n\n margin-inline-start: auto;\n transform: rotate(-90deg);\n transition: transform 200ms var(--ease-spring);\n }\n\n details[open] .chevron {\n transform: rotate(0deg);\n }\n\n /* RTL Support - use .rtl class added by JavaScript */\n details.rtl .chevron {\n transform: rotate(90deg);\n }\n\n details.rtl[open] .chevron {\n transform: rotate(0deg);\n }\n\n /* :dir(rtl) is inheritance-driven and crosses the shadow boundary; the ancestor-attribute\n selectors (html[dir='rtl']/[dir='rtl']) cannot match anything inside this shadow root and\n were removed. */\n :dir(rtl) .chevron {\n transform: rotate(90deg);\n }\n\n :dir(rtl) details[open] .chevron {\n transform: rotate(0deg);\n }\n\n /* Expanded state - adjust border radius */\n :host([expanded]) {\n --accordion-details-radius: var(--rounded-lg) var(--rounded-lg) 0 0;\n --accordion-summary-radius: 0 0 var(--rounded-lg) var(--rounded-lg);\n }\n\n @media (forced-colors: active) {\n /* Default variant uses a transparent border — ensure a visible border\n renders in HCM so the summary is distinguishable from the body */\n summary {\n border-color: ButtonText;\n }\n }\n}\n"],"mappings":""}
@@ -1,4 +1,4 @@
1
- import type { ComponentSize, SurfaceVariant } from '../../types';
1
+ import type { ComponentSize, VisualVariant } from '../../types';
2
2
  import '../../content/icon/icon';
3
3
  /** Accordion item component properties */
4
4
  export type OreAccordionItemEvents = {
@@ -19,7 +19,7 @@ export type OreAccordionItemProps = {
19
19
  /** Item size */
20
20
  size?: ComponentSize;
21
21
  /** Visual style variant */
22
- variant?: SurfaceVariant;
22
+ variant?: VisualVariant;
23
23
  };
24
24
  /**
25
25
  * An individual accordion item with expand/collapse functionality using native details/summary.
@@ -29,7 +29,7 @@ export type OreAccordionItemProps = {
29
29
  * @attr {boolean} expanded - Whether the item is expanded/open
30
30
  * @attr {boolean} disabled - Disable accordion item interaction
31
31
  * @attr {string} size - Item size: 'sm' | 'md' | 'lg'
32
- * @attr {string} variant - Visual variant: 'solid' | 'flat' | 'bordered' | 'outline' | 'ghost' | 'text' | 'glass' | 'frost'
32
+ * @attr {string} variant - Visual variant: 'solid' | 'flat' | 'bordered' | 'outline' | 'ghost' | 'text' | 'frost'
33
33
  *
34
34
  * @fires expand - Emitted when item expands. detail: { expanded: boolean; item: HTMLElement }
35
35
  * @fires collapse - Emitted when item collapses. detail: { expanded: boolean; item: HTMLElement }
@@ -1 +1 @@
1
- {"version":3,"file":"accordion-item.d.ts","sourceRoot":"","sources":["../../../src/disclosure/accordion-item/accordion-item.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAEjE,OAAO,yBAAyB,CAAC;AAOjC,0CAA0C;AAE1C,MAAM,MAAM,sBAAsB,GAAG;IACnC,QAAQ,EAAE;QAAE,QAAQ,EAAE,OAAO,CAAC;QAAC,IAAI,EAAE,WAAW,CAAA;KAAE,CAAC;IACnD,MAAM,EAAE;QAAE,QAAQ,EAAE,OAAO,CAAC;QAAC,IAAI,EAAE,WAAW,CAAA;KAAE,CAAC;CAClD,CAAC;AAEF,MAAM,MAAM,qBAAqB,GAAG;IAClC,yCAAyC;IACzC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,wCAAwC;IACxC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,gBAAgB;IAChB,IAAI,CAAC,EAAE,aAAa,CAAC;IACrB,2BAA2B;IAC3B,OAAO,CAAC,EAAE,cAAc,CAAC;CAC1B,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4CG;AAEH,eAAO,MAAM,kBAAkB,EAAG,oBAA6B,CAAC"}
1
+ {"version":3,"file":"accordion-item.d.ts","sourceRoot":"","sources":["../../../src/disclosure/accordion-item/accordion-item.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAEhE,OAAO,yBAAyB,CAAC;AAOjC,0CAA0C;AAE1C,MAAM,MAAM,sBAAsB,GAAG;IACnC,QAAQ,EAAE;QAAE,QAAQ,EAAE,OAAO,CAAC;QAAC,IAAI,EAAE,WAAW,CAAA;KAAE,CAAC;IACnD,MAAM,EAAE;QAAE,QAAQ,EAAE,OAAO,CAAC;QAAC,IAAI,EAAE,WAAW,CAAA;KAAE,CAAC;CAClD,CAAC;AAEF,MAAM,MAAM,qBAAqB,GAAG;IAClC,yCAAyC;IACzC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,wCAAwC;IACxC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,gBAAgB;IAChB,IAAI,CAAC,EAAE,aAAa,CAAC;IACrB,2BAA2B;IAC3B,OAAO,CAAC,EAAE,aAAa,CAAC;CACzB,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4CG;AAEH,eAAO,MAAM,kBAAkB,EAAG,oBAA6B,CAAC"}
@@ -1,2 +1,2 @@
1
- var e=`@layer refine.base{:host{--tab-item-transition:var(--transition-normal);--tab-item-radius:var(--rounded-lg);outline:none;display:inline-flex}button{gap:var(--size-2);width:100%;min-height:var(--_touch-target);padding:var(--tab-item-padding,var(--size-1-5) var(--size-4));font-family:inherit;font-size:var(--tab-item-font-size,var(--text-sm));font-weight:var(--font-medium);color:var(--tab-item-color,var(--text-color-secondary));white-space:nowrap;cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:var(--tab-item-radius);transition:background var(--tab-item-transition), color var(--tab-item-transition), box-shadow var(--tab-item-transition);background:0 0;border:none;justify-content:center;align-items:center;display:inline-flex;position:relative}button:focus{outline:none}:host(:focus-visible) button,button:focus-visible{outline:var(--border-2) solid var(--_theme-focus);outline-offset:2px;box-shadow:0 0 0 3px var(--_theme-shadow)}}@layer refine.variants{:host,:host([variant=solid]),:host([variant=flat]){--_hover-bg:var(--tab-item-hover-bg,var(--color-contrast-200));--_active-bg:var(--tab-item-active-bg,var(--color-contrast-0,var(--color-canvas)));--_active-color:var(--tab-item-active-color,var(--text-color-heading));--_active-shadow:var(--tab-item-active-shadow,var(--shadow-xs), var(--inset-shadow-xs))}:host([variant=bordered]){--_hover-bg:var(--tab-item-hover-bg,var(--color-contrast-200));--_active-bg:var(--tab-item-active-bg,var(--color-contrast-0,var(--color-canvas)));--_active-color:var(--tab-item-active-color,var(--text-color-heading));--_active-shadow:var(--tab-item-active-shadow,var(--shadow-xs))}:host([variant=ghost]){--_hover-bg:var(--tab-item-hover-bg,var(--color-contrast-100));--_active-bg:var(--tab-item-active-bg,var(--_theme-base));--_active-color:var(--tab-item-active-color,var(--_theme-contrast))}:host([variant=glass]){--_color:var(--tab-item-color,color-mix(in oklch, var(--color-secondary-contrast) 70%, transparent));--_hover-bg:var(--tab-item-hover-bg,color-mix(in oklch, var(--color-secondary-contrast) 10%, transparent));--_active-bg:var(--tab-item-active-bg,color-mix(in oklch, var(--color-secondary-contrast) 15%, transparent));--_active-color:var(--tab-item-active-color,var(--color-secondary-contrast));--_active-shadow:var(--tab-item-active-shadow,var(--shadow-xs), var(--inset-shadow-xs))}:host([variant=glass]) button{color:var(--_color);text-shadow:var(--text-shadow-2xs)}:host([variant=glass]) button:hover{color:var(--tab-item-active-color,var(--color-secondary-contrast))}:host([variant=frost]){--_hover-bg:var(--tab-item-hover-bg,color-mix(in oklch, var(--color-contrast) 10%, transparent));--_active-bg:var(--tab-item-active-bg,color-mix(in oklch, var(--color-canvas) 60%, transparent));--_active-color:var(--tab-item-active-color,var(--text-color-heading));--_active-shadow:var(--tab-item-active-shadow,var(--shadow-xs), var(--inset-shadow-xs))}:host([variant=frost]) button{color:var(--text-color-secondary)}:host button:hover{color:var(--tab-item-active-color,var(--text-color-heading));background:var(--_hover-bg)}:host([active]) button{color:var(--_active-color);background:var(--_active-bg);box-shadow:var(--_active-shadow)}:host([size=sm]){--tab-item-font-size:var(--text-xs);--tab-item-padding:var(--size-1) var(--size-3)}:host(:not([size])),:host([size=md]){--tab-item-font-size:var(--text-sm);--tab-item-padding:var(--size-1-5) var(--size-4)}:host([size=lg]){--tab-item-font-size:var(--text-base);--tab-item-padding:var(--size-2) var(--size-5)}@media (pointer:coarse){:host,:host([size=md]){--tab-item-font-size:var(--text-base);--tab-item-padding:var(--size-2) var(--size-5)}:host([size=sm]){--tab-item-font-size:var(--text-sm);--tab-item-padding:var(--size-1-5) var(--size-4)}}:host([disabled]){pointer-events:none;opacity:.5}@media (forced-colors:active){button:focus-visible{box-shadow:none;outline:2px solid highlight}:host([active]) button{outline-offset:-2px;outline:2px solid highlight}}}@layer refine.density{:host([density=compact]){--tab-item-radius:var(--rounded-md);--tab-item-font-size:var(--text-xs);--tab-item-padding:var(--size-1) var(--size-2)}:host([density=compact]) button{gap:var(--size-1);min-height:var(--size-6)}}`;exports.default=e;
1
+ var e=`@layer refine.base{:host{--tab-item-transition:var(--transition-normal);--tab-item-radius:var(--rounded-lg);outline:none;display:inline-flex}button{gap:var(--size-2);width:100%;min-height:var(--_touch-target);padding:var(--tab-item-padding,var(--size-1-5) var(--size-4));font-family:inherit;font-size:var(--tab-item-font-size,var(--text-sm));font-weight:var(--font-medium);color:var(--tab-item-color,var(--text-color-secondary));white-space:nowrap;cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:var(--tab-item-radius);transition:background var(--tab-item-transition), color var(--tab-item-transition), box-shadow var(--tab-item-transition);background:0 0;border:none;justify-content:center;align-items:center;display:inline-flex;position:relative}button:focus{outline:none}:host(:focus-visible) button,button:focus-visible{outline:var(--border-2) solid var(--_theme-focus);outline-offset:2px;box-shadow:0 0 0 3px var(--_theme-shadow)}}@layer refine.variants{:host,:host([variant=solid]),:host([variant=flat]){--_hover-bg:var(--tab-item-hover-bg,var(--color-contrast-200));--_active-bg:var(--tab-item-active-bg,var(--color-contrast-0,var(--color-canvas)));--_active-color:var(--tab-item-active-color,var(--text-color-heading));--_active-shadow:var(--tab-item-active-shadow,var(--shadow-xs), var(--inset-shadow-xs))}:host([variant=bordered]){--_hover-bg:var(--tab-item-hover-bg,var(--color-contrast-200));--_active-bg:var(--tab-item-active-bg,var(--color-contrast-0,var(--color-canvas)));--_active-color:var(--tab-item-active-color,var(--text-color-heading));--_active-shadow:var(--tab-item-active-shadow,var(--shadow-xs))}:host([variant=ghost]){--_hover-bg:var(--tab-item-hover-bg,var(--color-contrast-100));--_active-bg:var(--tab-item-active-bg,var(--_theme-base));--_active-color:var(--tab-item-active-color,var(--_theme-contrast))}:host([variant=frost]){--_hover-bg:var(--tab-item-hover-bg,color-mix(in oklch, var(--color-contrast) 10%, transparent));--_active-bg:var(--tab-item-active-bg,color-mix(in oklch, var(--color-canvas) 60%, transparent));--_active-color:var(--tab-item-active-color,var(--text-color-heading));--_active-shadow:var(--tab-item-active-shadow,var(--shadow-xs), var(--inset-shadow-xs))}:host([variant=frost]) button{color:var(--text-color-secondary)}:host button:hover{color:var(--tab-item-active-color,var(--text-color-heading));background:var(--_hover-bg)}:host([active]) button{color:var(--_active-color);background:var(--_active-bg);box-shadow:var(--_active-shadow)}:host([size=sm]){--tab-item-font-size:var(--text-xs);--tab-item-padding:var(--size-1) var(--size-3)}:host(:not([size])),:host([size=md]){--tab-item-font-size:var(--text-sm);--tab-item-padding:var(--size-1-5) var(--size-4)}:host([size=lg]){--tab-item-font-size:var(--text-base);--tab-item-padding:var(--size-2) var(--size-5)}@media (pointer:coarse){:host,:host([size=md]){--tab-item-font-size:var(--text-base);--tab-item-padding:var(--size-2) var(--size-5)}:host([size=sm]){--tab-item-font-size:var(--text-sm);--tab-item-padding:var(--size-1-5) var(--size-4)}}:host([disabled]){pointer-events:none;opacity:.5}@media (forced-colors:active){button:focus-visible{box-shadow:none;outline:2px solid highlight}:host([active]) button{outline-offset:-2px;outline:2px solid highlight}}}@layer refine.density{:host([density=compact]){--tab-item-radius:var(--rounded-md);--tab-item-font-size:var(--text-xs);--tab-item-padding:var(--size-1) var(--size-2)}:host([density=compact]) button{gap:var(--size-1);min-height:var(--size-6)}}`;exports.default=e;
2
2
  //# sourceMappingURL=tab-item.css.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"tab-item.css.cjs","names":[],"sources":["../../../src/disclosure/tab-item/tab-item.css?inline"],"sourcesContent":["@layer refine.base {\n :host {\n --tab-item-transition: var(--transition-normal);\n --tab-item-radius: var(--rounded-lg);\n display: inline-flex;\n outline: none;\n }\n\n button {\n position: relative;\n display: inline-flex;\n gap: var(--size-2);\n align-items: center;\n justify-content: center;\n width: 100%;\n min-height: var(--_touch-target);\n padding: var(--tab-item-padding, var(--size-1-5) var(--size-4));\n font-family: inherit;\n font-size: var(--tab-item-font-size, var(--text-sm));\n font-weight: var(--font-medium);\n color: var(--tab-item-color, var(--text-color-secondary));\n white-space: nowrap;\n cursor: pointer;\n user-select: none;\n background: transparent;\n border: none;\n border-radius: var(--tab-item-radius);\n transition:\n background var(--tab-item-transition),\n color var(--tab-item-transition),\n box-shadow var(--tab-item-transition);\n }\n\n button:focus {\n outline: none;\n }\n\n :host(:focus-visible) button,\n button:focus-visible {\n outline: var(--border-2) solid var(--_theme-focus);\n outline-offset: 2px;\n box-shadow: 0 0 0 3px var(--_theme-shadow);\n }\n}\n\n@layer refine.variants {\n /* ─── solid / default ─── */\n :host,\n :host([variant='solid']) {\n --_hover-bg: var(--tab-item-hover-bg, var(--color-contrast-200));\n --_active-bg: var(--tab-item-active-bg, var(--color-contrast-0, var(--color-canvas)));\n --_active-color: var(--tab-item-active-color, var(--text-color-heading));\n --_active-shadow: var(--tab-item-active-shadow, var(--shadow-xs), var(--inset-shadow-xs));\n }\n\n /* ─── flat ─── */\n :host([variant='flat']) {\n --_hover-bg: var(--tab-item-hover-bg, var(--color-contrast-200));\n --_active-bg: var(--tab-item-active-bg, var(--color-contrast-0, var(--color-canvas)));\n --_active-color: var(--tab-item-active-color, var(--text-color-heading));\n --_active-shadow: var(--tab-item-active-shadow, var(--shadow-xs), var(--inset-shadow-xs));\n }\n\n /* ─── bordered ─── */\n :host([variant='bordered']) {\n --_hover-bg: var(--tab-item-hover-bg, var(--color-contrast-200));\n --_active-bg: var(--tab-item-active-bg, var(--color-contrast-0, var(--color-canvas)));\n --_active-color: var(--tab-item-active-color, var(--text-color-heading));\n --_active-shadow: var(--tab-item-active-shadow, var(--shadow-xs));\n }\n\n /* ─── ghost ─── */\n :host([variant='ghost']) {\n --_hover-bg: var(--tab-item-hover-bg, var(--color-contrast-100));\n --_active-bg: var(--tab-item-active-bg, var(--_theme-base));\n --_active-color: var(--tab-item-active-color, var(--_theme-contrast));\n }\n\n /* ─── glass ─── */\n :host([variant='glass']) {\n --_color: var(--tab-item-color, color-mix(in oklch, var(--color-secondary-contrast) 70%, transparent));\n --_hover-bg: var(--tab-item-hover-bg, color-mix(in oklch, var(--color-secondary-contrast) 10%, transparent));\n --_active-bg: var(--tab-item-active-bg, color-mix(in oklch, var(--color-secondary-contrast) 15%, transparent));\n --_active-color: var(--tab-item-active-color, var(--color-secondary-contrast));\n --_active-shadow: var(--tab-item-active-shadow, var(--shadow-xs), var(--inset-shadow-xs));\n }\n\n :host([variant='glass']) button {\n color: var(--_color);\n text-shadow: var(--text-shadow-2xs);\n }\n\n :host([variant='glass']) button:hover {\n color: var(--tab-item-active-color, var(--color-secondary-contrast));\n }\n\n /* ─── frost ─── */\n :host([variant='frost']) {\n --_hover-bg: var(--tab-item-hover-bg, color-mix(in oklch, var(--color-contrast) 10%, transparent));\n --_active-bg: var(--tab-item-active-bg, color-mix(in oklch, var(--color-canvas) 60%, transparent));\n --_active-color: var(--tab-item-active-color, var(--text-color-heading));\n --_active-shadow: var(--tab-item-active-shadow, var(--shadow-xs), var(--inset-shadow-xs));\n }\n\n :host([variant='frost']) button {\n color: var(--text-color-secondary);\n }\n\n /* ─── Shared interactive states (read per-variant --_* tokens) ─── */\n\n :host button:hover {\n color: var(--tab-item-active-color, var(--text-color-heading));\n background: var(--_hover-bg);\n }\n\n :host([active]) button {\n color: var(--_active-color);\n background: var(--_active-bg);\n box-shadow: var(--_active-shadow);\n }\n\n /* ─── sizes ─── */\n :host([size='sm']) {\n --tab-item-font-size: var(--text-xs);\n --tab-item-padding: var(--size-1) var(--size-3);\n }\n\n :host(:not([size])),\n :host([size='md']) {\n --tab-item-font-size: var(--text-sm);\n --tab-item-padding: var(--size-1-5) var(--size-4);\n }\n\n :host([size='lg']) {\n --tab-item-font-size: var(--text-base);\n --tab-item-padding: var(--size-2) var(--size-5);\n }\n\n /* ─── coarse pointer: promote one size tier for proportional scaling ─── */\n @media (pointer: coarse) {\n :host,\n :host([size='md']) {\n --tab-item-font-size: var(--text-base);\n --tab-item-padding: var(--size-2) var(--size-5);\n }\n\n :host([size='sm']) {\n --tab-item-font-size: var(--text-sm);\n --tab-item-padding: var(--size-1-5) var(--size-4);\n }\n }\n\n /* ─── disabled ─── */\n :host([disabled]) {\n pointer-events: none;\n opacity: 0.5;\n }\n\n @media (forced-colors: active) {\n /* Ensure focus ring is visible regardless of variant theme color */\n button:focus-visible {\n outline: 2px solid Highlight;\n box-shadow: none;\n }\n\n /* Active tab: box-shadow raised indicator is stripped; use outline inste\n ad so the selected tab remains distinguishable */\n :host([active]) button {\n outline: 2px solid Highlight;\n outline-offset: -2px;\n }\n }\n}\n\n@layer refine.density {\n :host([density='compact']) {\n --tab-item-radius: var(--rounded-md);\n --tab-item-font-size: var(--text-xs);\n --tab-item-padding: var(--size-1) var(--size-2);\n }\n\n :host([density='compact']) button {\n gap: var(--size-1);\n min-height: var(--size-6);\n }\n}\n"],"mappings":""}
1
+ {"version":3,"file":"tab-item.css.cjs","names":[],"sources":["../../../src/disclosure/tab-item/tab-item.css?inline"],"sourcesContent":["@layer refine.base {\n :host {\n --tab-item-transition: var(--transition-normal);\n --tab-item-radius: var(--rounded-lg);\n display: inline-flex;\n outline: none;\n }\n\n button {\n position: relative;\n display: inline-flex;\n gap: var(--size-2);\n align-items: center;\n justify-content: center;\n width: 100%;\n min-height: var(--_touch-target);\n padding: var(--tab-item-padding, var(--size-1-5) var(--size-4));\n font-family: inherit;\n font-size: var(--tab-item-font-size, var(--text-sm));\n font-weight: var(--font-medium);\n color: var(--tab-item-color, var(--text-color-secondary));\n white-space: nowrap;\n cursor: pointer;\n user-select: none;\n background: transparent;\n border: none;\n border-radius: var(--tab-item-radius);\n transition:\n background var(--tab-item-transition),\n color var(--tab-item-transition),\n box-shadow var(--tab-item-transition);\n }\n\n button:focus {\n outline: none;\n }\n\n :host(:focus-visible) button,\n button:focus-visible {\n outline: var(--border-2) solid var(--_theme-focus);\n outline-offset: 2px;\n box-shadow: 0 0 0 3px var(--_theme-shadow);\n }\n}\n\n@layer refine.variants {\n /* ─── solid / default ─── */\n :host,\n :host([variant='solid']) {\n --_hover-bg: var(--tab-item-hover-bg, var(--color-contrast-200));\n --_active-bg: var(--tab-item-active-bg, var(--color-contrast-0, var(--color-canvas)));\n --_active-color: var(--tab-item-active-color, var(--text-color-heading));\n --_active-shadow: var(--tab-item-active-shadow, var(--shadow-xs), var(--inset-shadow-xs));\n }\n\n /* ─── flat ─── */\n :host([variant='flat']) {\n --_hover-bg: var(--tab-item-hover-bg, var(--color-contrast-200));\n --_active-bg: var(--tab-item-active-bg, var(--color-contrast-0, var(--color-canvas)));\n --_active-color: var(--tab-item-active-color, var(--text-color-heading));\n --_active-shadow: var(--tab-item-active-shadow, var(--shadow-xs), var(--inset-shadow-xs));\n }\n\n /* ─── bordered ─── */\n :host([variant='bordered']) {\n --_hover-bg: var(--tab-item-hover-bg, var(--color-contrast-200));\n --_active-bg: var(--tab-item-active-bg, var(--color-contrast-0, var(--color-canvas)));\n --_active-color: var(--tab-item-active-color, var(--text-color-heading));\n --_active-shadow: var(--tab-item-active-shadow, var(--shadow-xs));\n }\n\n /* ─── ghost ─── */\n :host([variant='ghost']) {\n --_hover-bg: var(--tab-item-hover-bg, var(--color-contrast-100));\n --_active-bg: var(--tab-item-active-bg, var(--_theme-base));\n --_active-color: var(--tab-item-active-color, var(--_theme-contrast));\n }\n\n /* ─── frost ─── */\n :host([variant='frost']) {\n --_hover-bg: var(--tab-item-hover-bg, color-mix(in oklch, var(--color-contrast) 10%, transparent));\n --_active-bg: var(--tab-item-active-bg, color-mix(in oklch, var(--color-canvas) 60%, transparent));\n --_active-color: var(--tab-item-active-color, var(--text-color-heading));\n --_active-shadow: var(--tab-item-active-shadow, var(--shadow-xs), var(--inset-shadow-xs));\n }\n\n :host([variant='frost']) button {\n color: var(--text-color-secondary);\n }\n\n /* ─── Shared interactive states (read per-variant --_* tokens) ─── */\n\n :host button:hover {\n color: var(--tab-item-active-color, var(--text-color-heading));\n background: var(--_hover-bg);\n }\n\n :host([active]) button {\n color: var(--_active-color);\n background: var(--_active-bg);\n box-shadow: var(--_active-shadow);\n }\n\n /* ─── sizes ─── */\n :host([size='sm']) {\n --tab-item-font-size: var(--text-xs);\n --tab-item-padding: var(--size-1) var(--size-3);\n }\n\n :host(:not([size])),\n :host([size='md']) {\n --tab-item-font-size: var(--text-sm);\n --tab-item-padding: var(--size-1-5) var(--size-4);\n }\n\n :host([size='lg']) {\n --tab-item-font-size: var(--text-base);\n --tab-item-padding: var(--size-2) var(--size-5);\n }\n\n /* ─── coarse pointer: promote one size tier for proportional scaling ─── */\n @media (pointer: coarse) {\n :host,\n :host([size='md']) {\n --tab-item-font-size: var(--text-base);\n --tab-item-padding: var(--size-2) var(--size-5);\n }\n\n :host([size='sm']) {\n --tab-item-font-size: var(--text-sm);\n --tab-item-padding: var(--size-1-5) var(--size-4);\n }\n }\n\n /* ─── disabled ─── */\n :host([disabled]) {\n pointer-events: none;\n opacity: 0.5;\n }\n\n @media (forced-colors: active) {\n /* Ensure focus ring is visible regardless of variant theme color */\n button:focus-visible {\n outline: 2px solid Highlight;\n box-shadow: none;\n }\n\n /* Active tab: box-shadow raised indicator is stripped; use outline inste\n ad so the selected tab remains distinguishable */\n :host([active]) button {\n outline: 2px solid Highlight;\n outline-offset: -2px;\n }\n }\n}\n\n@layer refine.density {\n :host([density='compact']) {\n --tab-item-radius: var(--rounded-md);\n --tab-item-font-size: var(--text-xs);\n --tab-item-padding: var(--size-1) var(--size-2);\n }\n\n :host([density='compact']) button {\n gap: var(--size-1);\n min-height: var(--size-6);\n }\n}\n"],"mappings":""}
@@ -1,5 +1,5 @@
1
1
  //#region src/disclosure/tab-item/tab-item.css?inline
2
- var e = "@layer refine.base{:host{--tab-item-transition:var(--transition-normal);--tab-item-radius:var(--rounded-lg);outline:none;display:inline-flex}button{gap:var(--size-2);width:100%;min-height:var(--_touch-target);padding:var(--tab-item-padding,var(--size-1-5) var(--size-4));font-family:inherit;font-size:var(--tab-item-font-size,var(--text-sm));font-weight:var(--font-medium);color:var(--tab-item-color,var(--text-color-secondary));white-space:nowrap;cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:var(--tab-item-radius);transition:background var(--tab-item-transition), color var(--tab-item-transition), box-shadow var(--tab-item-transition);background:0 0;border:none;justify-content:center;align-items:center;display:inline-flex;position:relative}button:focus{outline:none}:host(:focus-visible) button,button:focus-visible{outline:var(--border-2) solid var(--_theme-focus);outline-offset:2px;box-shadow:0 0 0 3px var(--_theme-shadow)}}@layer refine.variants{:host,:host([variant=solid]),:host([variant=flat]){--_hover-bg:var(--tab-item-hover-bg,var(--color-contrast-200));--_active-bg:var(--tab-item-active-bg,var(--color-contrast-0,var(--color-canvas)));--_active-color:var(--tab-item-active-color,var(--text-color-heading));--_active-shadow:var(--tab-item-active-shadow,var(--shadow-xs), var(--inset-shadow-xs))}:host([variant=bordered]){--_hover-bg:var(--tab-item-hover-bg,var(--color-contrast-200));--_active-bg:var(--tab-item-active-bg,var(--color-contrast-0,var(--color-canvas)));--_active-color:var(--tab-item-active-color,var(--text-color-heading));--_active-shadow:var(--tab-item-active-shadow,var(--shadow-xs))}:host([variant=ghost]){--_hover-bg:var(--tab-item-hover-bg,var(--color-contrast-100));--_active-bg:var(--tab-item-active-bg,var(--_theme-base));--_active-color:var(--tab-item-active-color,var(--_theme-contrast))}:host([variant=glass]){--_color:var(--tab-item-color,color-mix(in oklch, var(--color-secondary-contrast) 70%, transparent));--_hover-bg:var(--tab-item-hover-bg,color-mix(in oklch, var(--color-secondary-contrast) 10%, transparent));--_active-bg:var(--tab-item-active-bg,color-mix(in oklch, var(--color-secondary-contrast) 15%, transparent));--_active-color:var(--tab-item-active-color,var(--color-secondary-contrast));--_active-shadow:var(--tab-item-active-shadow,var(--shadow-xs), var(--inset-shadow-xs))}:host([variant=glass]) button{color:var(--_color);text-shadow:var(--text-shadow-2xs)}:host([variant=glass]) button:hover{color:var(--tab-item-active-color,var(--color-secondary-contrast))}:host([variant=frost]){--_hover-bg:var(--tab-item-hover-bg,color-mix(in oklch, var(--color-contrast) 10%, transparent));--_active-bg:var(--tab-item-active-bg,color-mix(in oklch, var(--color-canvas) 60%, transparent));--_active-color:var(--tab-item-active-color,var(--text-color-heading));--_active-shadow:var(--tab-item-active-shadow,var(--shadow-xs), var(--inset-shadow-xs))}:host([variant=frost]) button{color:var(--text-color-secondary)}:host button:hover{color:var(--tab-item-active-color,var(--text-color-heading));background:var(--_hover-bg)}:host([active]) button{color:var(--_active-color);background:var(--_active-bg);box-shadow:var(--_active-shadow)}:host([size=sm]){--tab-item-font-size:var(--text-xs);--tab-item-padding:var(--size-1) var(--size-3)}:host(:not([size])),:host([size=md]){--tab-item-font-size:var(--text-sm);--tab-item-padding:var(--size-1-5) var(--size-4)}:host([size=lg]){--tab-item-font-size:var(--text-base);--tab-item-padding:var(--size-2) var(--size-5)}@media (pointer:coarse){:host,:host([size=md]){--tab-item-font-size:var(--text-base);--tab-item-padding:var(--size-2) var(--size-5)}:host([size=sm]){--tab-item-font-size:var(--text-sm);--tab-item-padding:var(--size-1-5) var(--size-4)}}:host([disabled]){pointer-events:none;opacity:.5}@media (forced-colors:active){button:focus-visible{box-shadow:none;outline:2px solid highlight}:host([active]) button{outline-offset:-2px;outline:2px solid highlight}}}@layer refine.density{:host([density=compact]){--tab-item-radius:var(--rounded-md);--tab-item-font-size:var(--text-xs);--tab-item-padding:var(--size-1) var(--size-2)}:host([density=compact]) button{gap:var(--size-1);min-height:var(--size-6)}}";
2
+ var e = "@layer refine.base{:host{--tab-item-transition:var(--transition-normal);--tab-item-radius:var(--rounded-lg);outline:none;display:inline-flex}button{gap:var(--size-2);width:100%;min-height:var(--_touch-target);padding:var(--tab-item-padding,var(--size-1-5) var(--size-4));font-family:inherit;font-size:var(--tab-item-font-size,var(--text-sm));font-weight:var(--font-medium);color:var(--tab-item-color,var(--text-color-secondary));white-space:nowrap;cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:var(--tab-item-radius);transition:background var(--tab-item-transition), color var(--tab-item-transition), box-shadow var(--tab-item-transition);background:0 0;border:none;justify-content:center;align-items:center;display:inline-flex;position:relative}button:focus{outline:none}:host(:focus-visible) button,button:focus-visible{outline:var(--border-2) solid var(--_theme-focus);outline-offset:2px;box-shadow:0 0 0 3px var(--_theme-shadow)}}@layer refine.variants{:host,:host([variant=solid]),:host([variant=flat]){--_hover-bg:var(--tab-item-hover-bg,var(--color-contrast-200));--_active-bg:var(--tab-item-active-bg,var(--color-contrast-0,var(--color-canvas)));--_active-color:var(--tab-item-active-color,var(--text-color-heading));--_active-shadow:var(--tab-item-active-shadow,var(--shadow-xs), var(--inset-shadow-xs))}:host([variant=bordered]){--_hover-bg:var(--tab-item-hover-bg,var(--color-contrast-200));--_active-bg:var(--tab-item-active-bg,var(--color-contrast-0,var(--color-canvas)));--_active-color:var(--tab-item-active-color,var(--text-color-heading));--_active-shadow:var(--tab-item-active-shadow,var(--shadow-xs))}:host([variant=ghost]){--_hover-bg:var(--tab-item-hover-bg,var(--color-contrast-100));--_active-bg:var(--tab-item-active-bg,var(--_theme-base));--_active-color:var(--tab-item-active-color,var(--_theme-contrast))}:host([variant=frost]){--_hover-bg:var(--tab-item-hover-bg,color-mix(in oklch, var(--color-contrast) 10%, transparent));--_active-bg:var(--tab-item-active-bg,color-mix(in oklch, var(--color-canvas) 60%, transparent));--_active-color:var(--tab-item-active-color,var(--text-color-heading));--_active-shadow:var(--tab-item-active-shadow,var(--shadow-xs), var(--inset-shadow-xs))}:host([variant=frost]) button{color:var(--text-color-secondary)}:host button:hover{color:var(--tab-item-active-color,var(--text-color-heading));background:var(--_hover-bg)}:host([active]) button{color:var(--_active-color);background:var(--_active-bg);box-shadow:var(--_active-shadow)}:host([size=sm]){--tab-item-font-size:var(--text-xs);--tab-item-padding:var(--size-1) var(--size-3)}:host(:not([size])),:host([size=md]){--tab-item-font-size:var(--text-sm);--tab-item-padding:var(--size-1-5) var(--size-4)}:host([size=lg]){--tab-item-font-size:var(--text-base);--tab-item-padding:var(--size-2) var(--size-5)}@media (pointer:coarse){:host,:host([size=md]){--tab-item-font-size:var(--text-base);--tab-item-padding:var(--size-2) var(--size-5)}:host([size=sm]){--tab-item-font-size:var(--text-sm);--tab-item-padding:var(--size-1-5) var(--size-4)}}:host([disabled]){pointer-events:none;opacity:.5}@media (forced-colors:active){button:focus-visible{box-shadow:none;outline:2px solid highlight}:host([active]) button{outline-offset:-2px;outline:2px solid highlight}}}@layer refine.density{:host([density=compact]){--tab-item-radius:var(--rounded-md);--tab-item-font-size:var(--text-xs);--tab-item-padding:var(--size-1) var(--size-2)}:host([density=compact]) button{gap:var(--size-1);min-height:var(--size-6)}}";
3
3
  //#endregion
4
4
  export { e as default };
5
5
 
@@ -1 +1 @@
1
- {"version":3,"file":"tab-item.css.js","names":[],"sources":["../../../src/disclosure/tab-item/tab-item.css?inline"],"sourcesContent":["@layer refine.base {\n :host {\n --tab-item-transition: var(--transition-normal);\n --tab-item-radius: var(--rounded-lg);\n display: inline-flex;\n outline: none;\n }\n\n button {\n position: relative;\n display: inline-flex;\n gap: var(--size-2);\n align-items: center;\n justify-content: center;\n width: 100%;\n min-height: var(--_touch-target);\n padding: var(--tab-item-padding, var(--size-1-5) var(--size-4));\n font-family: inherit;\n font-size: var(--tab-item-font-size, var(--text-sm));\n font-weight: var(--font-medium);\n color: var(--tab-item-color, var(--text-color-secondary));\n white-space: nowrap;\n cursor: pointer;\n user-select: none;\n background: transparent;\n border: none;\n border-radius: var(--tab-item-radius);\n transition:\n background var(--tab-item-transition),\n color var(--tab-item-transition),\n box-shadow var(--tab-item-transition);\n }\n\n button:focus {\n outline: none;\n }\n\n :host(:focus-visible) button,\n button:focus-visible {\n outline: var(--border-2) solid var(--_theme-focus);\n outline-offset: 2px;\n box-shadow: 0 0 0 3px var(--_theme-shadow);\n }\n}\n\n@layer refine.variants {\n /* ─── solid / default ─── */\n :host,\n :host([variant='solid']) {\n --_hover-bg: var(--tab-item-hover-bg, var(--color-contrast-200));\n --_active-bg: var(--tab-item-active-bg, var(--color-contrast-0, var(--color-canvas)));\n --_active-color: var(--tab-item-active-color, var(--text-color-heading));\n --_active-shadow: var(--tab-item-active-shadow, var(--shadow-xs), var(--inset-shadow-xs));\n }\n\n /* ─── flat ─── */\n :host([variant='flat']) {\n --_hover-bg: var(--tab-item-hover-bg, var(--color-contrast-200));\n --_active-bg: var(--tab-item-active-bg, var(--color-contrast-0, var(--color-canvas)));\n --_active-color: var(--tab-item-active-color, var(--text-color-heading));\n --_active-shadow: var(--tab-item-active-shadow, var(--shadow-xs), var(--inset-shadow-xs));\n }\n\n /* ─── bordered ─── */\n :host([variant='bordered']) {\n --_hover-bg: var(--tab-item-hover-bg, var(--color-contrast-200));\n --_active-bg: var(--tab-item-active-bg, var(--color-contrast-0, var(--color-canvas)));\n --_active-color: var(--tab-item-active-color, var(--text-color-heading));\n --_active-shadow: var(--tab-item-active-shadow, var(--shadow-xs));\n }\n\n /* ─── ghost ─── */\n :host([variant='ghost']) {\n --_hover-bg: var(--tab-item-hover-bg, var(--color-contrast-100));\n --_active-bg: var(--tab-item-active-bg, var(--_theme-base));\n --_active-color: var(--tab-item-active-color, var(--_theme-contrast));\n }\n\n /* ─── glass ─── */\n :host([variant='glass']) {\n --_color: var(--tab-item-color, color-mix(in oklch, var(--color-secondary-contrast) 70%, transparent));\n --_hover-bg: var(--tab-item-hover-bg, color-mix(in oklch, var(--color-secondary-contrast) 10%, transparent));\n --_active-bg: var(--tab-item-active-bg, color-mix(in oklch, var(--color-secondary-contrast) 15%, transparent));\n --_active-color: var(--tab-item-active-color, var(--color-secondary-contrast));\n --_active-shadow: var(--tab-item-active-shadow, var(--shadow-xs), var(--inset-shadow-xs));\n }\n\n :host([variant='glass']) button {\n color: var(--_color);\n text-shadow: var(--text-shadow-2xs);\n }\n\n :host([variant='glass']) button:hover {\n color: var(--tab-item-active-color, var(--color-secondary-contrast));\n }\n\n /* ─── frost ─── */\n :host([variant='frost']) {\n --_hover-bg: var(--tab-item-hover-bg, color-mix(in oklch, var(--color-contrast) 10%, transparent));\n --_active-bg: var(--tab-item-active-bg, color-mix(in oklch, var(--color-canvas) 60%, transparent));\n --_active-color: var(--tab-item-active-color, var(--text-color-heading));\n --_active-shadow: var(--tab-item-active-shadow, var(--shadow-xs), var(--inset-shadow-xs));\n }\n\n :host([variant='frost']) button {\n color: var(--text-color-secondary);\n }\n\n /* ─── Shared interactive states (read per-variant --_* tokens) ─── */\n\n :host button:hover {\n color: var(--tab-item-active-color, var(--text-color-heading));\n background: var(--_hover-bg);\n }\n\n :host([active]) button {\n color: var(--_active-color);\n background: var(--_active-bg);\n box-shadow: var(--_active-shadow);\n }\n\n /* ─── sizes ─── */\n :host([size='sm']) {\n --tab-item-font-size: var(--text-xs);\n --tab-item-padding: var(--size-1) var(--size-3);\n }\n\n :host(:not([size])),\n :host([size='md']) {\n --tab-item-font-size: var(--text-sm);\n --tab-item-padding: var(--size-1-5) var(--size-4);\n }\n\n :host([size='lg']) {\n --tab-item-font-size: var(--text-base);\n --tab-item-padding: var(--size-2) var(--size-5);\n }\n\n /* ─── coarse pointer: promote one size tier for proportional scaling ─── */\n @media (pointer: coarse) {\n :host,\n :host([size='md']) {\n --tab-item-font-size: var(--text-base);\n --tab-item-padding: var(--size-2) var(--size-5);\n }\n\n :host([size='sm']) {\n --tab-item-font-size: var(--text-sm);\n --tab-item-padding: var(--size-1-5) var(--size-4);\n }\n }\n\n /* ─── disabled ─── */\n :host([disabled]) {\n pointer-events: none;\n opacity: 0.5;\n }\n\n @media (forced-colors: active) {\n /* Ensure focus ring is visible regardless of variant theme color */\n button:focus-visible {\n outline: 2px solid Highlight;\n box-shadow: none;\n }\n\n /* Active tab: box-shadow raised indicator is stripped; use outline inste\n ad so the selected tab remains distinguishable */\n :host([active]) button {\n outline: 2px solid Highlight;\n outline-offset: -2px;\n }\n }\n}\n\n@layer refine.density {\n :host([density='compact']) {\n --tab-item-radius: var(--rounded-md);\n --tab-item-font-size: var(--text-xs);\n --tab-item-padding: var(--size-1) var(--size-2);\n }\n\n :host([density='compact']) button {\n gap: var(--size-1);\n min-height: var(--size-6);\n }\n}\n"],"mappings":""}
1
+ {"version":3,"file":"tab-item.css.js","names":[],"sources":["../../../src/disclosure/tab-item/tab-item.css?inline"],"sourcesContent":["@layer refine.base {\n :host {\n --tab-item-transition: var(--transition-normal);\n --tab-item-radius: var(--rounded-lg);\n display: inline-flex;\n outline: none;\n }\n\n button {\n position: relative;\n display: inline-flex;\n gap: var(--size-2);\n align-items: center;\n justify-content: center;\n width: 100%;\n min-height: var(--_touch-target);\n padding: var(--tab-item-padding, var(--size-1-5) var(--size-4));\n font-family: inherit;\n font-size: var(--tab-item-font-size, var(--text-sm));\n font-weight: var(--font-medium);\n color: var(--tab-item-color, var(--text-color-secondary));\n white-space: nowrap;\n cursor: pointer;\n user-select: none;\n background: transparent;\n border: none;\n border-radius: var(--tab-item-radius);\n transition:\n background var(--tab-item-transition),\n color var(--tab-item-transition),\n box-shadow var(--tab-item-transition);\n }\n\n button:focus {\n outline: none;\n }\n\n :host(:focus-visible) button,\n button:focus-visible {\n outline: var(--border-2) solid var(--_theme-focus);\n outline-offset: 2px;\n box-shadow: 0 0 0 3px var(--_theme-shadow);\n }\n}\n\n@layer refine.variants {\n /* ─── solid / default ─── */\n :host,\n :host([variant='solid']) {\n --_hover-bg: var(--tab-item-hover-bg, var(--color-contrast-200));\n --_active-bg: var(--tab-item-active-bg, var(--color-contrast-0, var(--color-canvas)));\n --_active-color: var(--tab-item-active-color, var(--text-color-heading));\n --_active-shadow: var(--tab-item-active-shadow, var(--shadow-xs), var(--inset-shadow-xs));\n }\n\n /* ─── flat ─── */\n :host([variant='flat']) {\n --_hover-bg: var(--tab-item-hover-bg, var(--color-contrast-200));\n --_active-bg: var(--tab-item-active-bg, var(--color-contrast-0, var(--color-canvas)));\n --_active-color: var(--tab-item-active-color, var(--text-color-heading));\n --_active-shadow: var(--tab-item-active-shadow, var(--shadow-xs), var(--inset-shadow-xs));\n }\n\n /* ─── bordered ─── */\n :host([variant='bordered']) {\n --_hover-bg: var(--tab-item-hover-bg, var(--color-contrast-200));\n --_active-bg: var(--tab-item-active-bg, var(--color-contrast-0, var(--color-canvas)));\n --_active-color: var(--tab-item-active-color, var(--text-color-heading));\n --_active-shadow: var(--tab-item-active-shadow, var(--shadow-xs));\n }\n\n /* ─── ghost ─── */\n :host([variant='ghost']) {\n --_hover-bg: var(--tab-item-hover-bg, var(--color-contrast-100));\n --_active-bg: var(--tab-item-active-bg, var(--_theme-base));\n --_active-color: var(--tab-item-active-color, var(--_theme-contrast));\n }\n\n /* ─── frost ─── */\n :host([variant='frost']) {\n --_hover-bg: var(--tab-item-hover-bg, color-mix(in oklch, var(--color-contrast) 10%, transparent));\n --_active-bg: var(--tab-item-active-bg, color-mix(in oklch, var(--color-canvas) 60%, transparent));\n --_active-color: var(--tab-item-active-color, var(--text-color-heading));\n --_active-shadow: var(--tab-item-active-shadow, var(--shadow-xs), var(--inset-shadow-xs));\n }\n\n :host([variant='frost']) button {\n color: var(--text-color-secondary);\n }\n\n /* ─── Shared interactive states (read per-variant --_* tokens) ─── */\n\n :host button:hover {\n color: var(--tab-item-active-color, var(--text-color-heading));\n background: var(--_hover-bg);\n }\n\n :host([active]) button {\n color: var(--_active-color);\n background: var(--_active-bg);\n box-shadow: var(--_active-shadow);\n }\n\n /* ─── sizes ─── */\n :host([size='sm']) {\n --tab-item-font-size: var(--text-xs);\n --tab-item-padding: var(--size-1) var(--size-3);\n }\n\n :host(:not([size])),\n :host([size='md']) {\n --tab-item-font-size: var(--text-sm);\n --tab-item-padding: var(--size-1-5) var(--size-4);\n }\n\n :host([size='lg']) {\n --tab-item-font-size: var(--text-base);\n --tab-item-padding: var(--size-2) var(--size-5);\n }\n\n /* ─── coarse pointer: promote one size tier for proportional scaling ─── */\n @media (pointer: coarse) {\n :host,\n :host([size='md']) {\n --tab-item-font-size: var(--text-base);\n --tab-item-padding: var(--size-2) var(--size-5);\n }\n\n :host([size='sm']) {\n --tab-item-font-size: var(--text-sm);\n --tab-item-padding: var(--size-1-5) var(--size-4);\n }\n }\n\n /* ─── disabled ─── */\n :host([disabled]) {\n pointer-events: none;\n opacity: 0.5;\n }\n\n @media (forced-colors: active) {\n /* Ensure focus ring is visible regardless of variant theme color */\n button:focus-visible {\n outline: 2px solid Highlight;\n box-shadow: none;\n }\n\n /* Active tab: box-shadow raised indicator is stripped; use outline inste\n ad so the selected tab remains distinguishable */\n :host([active]) button {\n outline: 2px solid Highlight;\n outline-offset: -2px;\n }\n }\n}\n\n@layer refine.density {\n :host([density='compact']) {\n --tab-item-radius: var(--rounded-md);\n --tab-item-font-size: var(--text-xs);\n --tab-item-padding: var(--size-1) var(--size-2);\n }\n\n :host([density='compact']) button {\n gap: var(--size-1);\n min-height: var(--size-6);\n }\n}\n"],"mappings":""}
@@ -1,4 +1,4 @@
1
- import type { ComponentSize, SurfaceVariant, ThemeColor } from '../../types';
1
+ import type { ComponentSize, ThemeColor, VisualVariant } from '../../types';
2
2
  export type OreTabItemProps = {
3
3
  /** Whether this tab is currently selected (set by ore-tabs) */
4
4
  active?: boolean;
@@ -13,7 +13,7 @@ export type OreTabItemProps = {
13
13
  /** Unique value identifier — must match a ore-tab-panel value */
14
14
  value: string;
15
15
  /** Visual variant (inherited from ore-tabs) */
16
- variant?: SurfaceVariant;
16
+ variant?: VisualVariant;
17
17
  };
18
18
  /**
19
19
  * Individual tab trigger. Must be placed in the `tabs` slot of `ore-tabs`.
@@ -25,7 +25,7 @@ export type OreTabItemProps = {
25
25
  * @attr {boolean} disabled - Prevents selection
26
26
  * @attr {string} density - Inherited spatial density: 'default' | 'compact'
27
27
  * @attr {string} size - 'sm' | 'md' | 'lg'
28
- * @attr {string} variant - Inherited from ore-tabs: 'solid' | 'flat' | 'bordered' | 'ghost' | 'glass' | 'frost'
28
+ * @attr {string} variant - Inherited from ore-tabs: 'solid' | 'flat' | 'bordered' | 'ghost' | 'frost'
29
29
  * @attr {string} color - Inherited from ore-tabs: 'primary' | 'secondary' | 'info' | 'success' | 'warning' | 'error'
30
30
  *
31
31
  * @slot prefix - Icon or content before the label
@@ -1 +1 @@
1
- {"version":3,"file":"tab-item.d.ts","sourceRoot":"","sources":["../../../src/disclosure/tab-item/tab-item.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,aAAa,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAI7E,MAAM,MAAM,eAAe,GAAG;IAC5B,+DAA+D;IAC/D,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,4CAA4C;IAC5C,KAAK,CAAC,EAAE,UAAU,CAAC;IACnB,uBAAuB;IACvB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,gDAAgD;IAChD,OAAO,CAAC,EAAE,SAAS,GAAG,SAAS,CAAC;IAChC,qCAAqC;IACrC,IAAI,CAAC,EAAE,aAAa,CAAC;IACrB,iEAAiE;IACjE,KAAK,EAAE,MAAM,CAAC;IACd,+CAA+C;IAC/C,OAAO,CAAC,EAAE,cAAc,CAAC;CAC1B,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AACH,eAAO,MAAM,YAAY,EAAG,cAAuB,CAAC"}
1
+ {"version":3,"file":"tab-item.d.ts","sourceRoot":"","sources":["../../../src/disclosure/tab-item/tab-item.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,aAAa,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAI5E,MAAM,MAAM,eAAe,GAAG;IAC5B,+DAA+D;IAC/D,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,4CAA4C;IAC5C,KAAK,CAAC,EAAE,UAAU,CAAC;IACnB,uBAAuB;IACvB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,gDAAgD;IAChD,OAAO,CAAC,EAAE,SAAS,GAAG,SAAS,CAAC;IAChC,qCAAqC;IACrC,IAAI,CAAC,EAAE,aAAa,CAAC;IACrB,iEAAiE;IACjE,KAAK,EAAE,MAAM,CAAC;IACd,+CAA+C;IAC/C,OAAO,CAAC,EAAE,aAAa,CAAC;CACzB,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AACH,eAAO,MAAM,YAAY,EAAG,cAAuB,CAAC"}
@@ -1,2 +1,2 @@
1
- var e=`@layer refine.base{:host{--tabs-transition:var(--transition-normal);--tabs-radius:var(--rounded-lg);flex-direction:column;width:100%;height:100%;display:flex}.tablist-wrapper{flex-shrink:0;position:relative}[role=tablist]{gap:var(--tabs-tab-gap,var(--size-1));scrollbar-width:none;align-items:stretch;display:flex;position:relative;overflow-x:auto}[role=tablist]::-webkit-scrollbar{display:none}.indicator{pointer-events:none;background:var(--tabs-indicator-color,var(--_theme-base));border-radius:var(--rounded-full);height:2px;transition:transform var(--tabs-transition);position:absolute;bottom:0;left:0}.panels{flex-direction:column;flex:1;min-height:0;display:flex}}@layer refine.orientation{:host([orientation=vertical]){flex-direction:row;align-items:flex-start}:host([orientation=vertical]) .tablist-wrapper{flex-shrink:0;display:flex}:host([orientation=vertical]) [role=tablist]{width:max-content;overflow-x:unset;flex-direction:column;overflow-y:auto}:host([orientation=vertical]) .indicator{top:0;bottom:unset;width:2px;height:unset;transition:transform var(--tabs-transition)}:host([orientation=vertical]) .indicator:not(:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){left:0}:host([orientation=vertical]) .indicator:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){right:0}}@layer refine.variants{:host,:host([variant=solid]){--tabs-tab-gap:var(--size-1);--_tablist-bg:var(--tabs-tablist-bg,var(--color-contrast-100));--_tablist-border-color:var(--tabs-tablist-border-color,var(--color-contrast-200))}:host [role=tablist],:host([variant=solid]) [role=tablist]{padding:var(--size-1);background:var(--_tablist-bg);border:var(--border) solid var(--_tablist-border-color);border-radius:var(--tabs-radius)}:host .indicator,:host([variant=solid]) .indicator{display:none}:host([variant=flat]){--_tablist-border-color:var(--tabs-tablist-border-color,var(--color-contrast-200));background:var(--tabs-bg,var(--color-contrast-100));border:var(--border) solid var(--_tablist-border-color);border-radius:var(--tabs-radius);box-shadow:var(--inset-shadow-xs), var(--shadow-2xs);overflow:hidden}:host([variant=flat]) [role=tablist]{gap:var(--size-1);padding:var(--size-1);border:none;border-bottom:var(--border) solid var(--_tablist-border-color);background:0 0;border-radius:0}:host([variant=flat]) .indicator{display:none}:host([variant=bordered]){--_tablist-border-color:var(--tabs-tablist-border-color,var(--color-contrast-200))}:host([variant=bordered]) [role=tablist]{gap:var(--size-1);padding:var(--size-1);border:var(--border) solid var(--_tablist-border-color);border-radius:var(--tabs-radius) var(--tabs-radius) 0 0;background:0 0;border-bottom:none}:host([variant=bordered]) .indicator{display:none}:host([variant=bordered]) .panels{border:var(--border) solid var(--_tablist-border-color);border-radius:0 0 var(--tabs-radius) var(--tabs-radius)}:host([variant=bordered][orientation=vertical]) [role=tablist]{border-right:none;border-bottom:var(--border) solid var(--_tablist-border-color);border-radius:var(--tabs-radius) 0 0 var(--tabs-radius)}:host([variant=bordered][orientation=vertical]) .panels{border-radius:0 var(--tabs-radius) var(--tabs-radius) 0}:host([variant=ghost]) [role=tablist]{gap:var(--size-1);background:0 0;border:none;border-radius:0;padding:0}:host([variant=ghost]) .indicator{display:none}:host([variant=glass]){--_tablist-bg:var(--tabs-tablist-bg,color-mix(in oklch, var(--color-secondary) 20%, transparent));--_tablist-border-color:var(--tabs-tablist-border-color,color-mix(in oklch, var(--color-secondary-contrast) 15%, transparent))}:host([variant=glass]) [role=tablist]{padding:var(--size-1);background:var(--_tablist-bg);border:var(--border) solid var(--_tablist-border-color);border-radius:var(--tabs-radius);box-shadow:var(--shadow-md), var(--inset-shadow-xs);-webkit-backdrop-filter:blur(var(--blur-lg)) saturate(180%) brightness(1.05);backdrop-filter:blur(var(--blur-lg)) saturate(180%) brightness(1.05)}:host([variant=glass]) .indicator{display:none}:host([variant=frost]){--_tablist-bg:var(--tabs-tablist-bg,color-mix(in oklch, var(--color-canvas) 55%, transparent));--_tablist-border-color:var(--tabs-tablist-border-color,color-mix(in oklch, var(--color-contrast-300) 50%, transparent))}:host([variant=frost]) [role=tablist]{padding:var(--size-1);background:var(--_tablist-bg);border:var(--border) solid var(--_tablist-border-color);border-radius:var(--tabs-radius);box-shadow:var(--shadow-md), var(--inset-shadow-xs);-webkit-backdrop-filter:blur(var(--blur-lg)) saturate(180%);backdrop-filter:blur(var(--blur-lg)) saturate(180%)}:host([variant=frost]) .indicator{display:none}}@layer refine.density{:host([density=compact]){--tabs-radius:var(--rounded-md);height:auto}:host([density=compact]) [role=tablist]{gap:var(--size-1);padding:var(--size-1)}:host([density=compact][variant=ghost]) [role=tablist]{padding:0}}`;exports.default=e;
1
+ var e=`@layer refine.base{:host{--tabs-transition:var(--transition-normal);--tabs-radius:var(--rounded-lg);flex-direction:column;width:100%;height:100%;display:flex}.tablist-wrapper{flex-shrink:0;position:relative}[role=tablist]{gap:var(--tabs-tab-gap,var(--size-1));scrollbar-width:none;align-items:stretch;display:flex;position:relative;overflow-x:auto}[role=tablist]::-webkit-scrollbar{display:none}.indicator{pointer-events:none;background:var(--tabs-indicator-color,var(--_theme-base));border-radius:var(--rounded-full);height:2px;transition:transform var(--tabs-transition);position:absolute;bottom:0;left:0}.panels{flex-direction:column;flex:1;min-height:0;display:flex}}@layer refine.orientation{:host([orientation=vertical]){flex-direction:row;align-items:flex-start}:host([orientation=vertical]) .tablist-wrapper{flex-shrink:0;display:flex}:host([orientation=vertical]) [role=tablist]{width:max-content;overflow-x:unset;flex-direction:column;overflow-y:auto}:host([orientation=vertical]) .indicator{top:0;bottom:unset;width:2px;height:unset;transition:transform var(--tabs-transition)}:host([orientation=vertical]) .indicator:not(:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){left:0}:host([orientation=vertical]) .indicator:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){right:0}}@layer refine.variants{:host,:host([variant=solid]){--tabs-tab-gap:var(--size-1);--_tablist-bg:var(--tabs-tablist-bg,var(--color-contrast-100));--_tablist-border-color:var(--tabs-tablist-border-color,var(--color-contrast-200))}:host [role=tablist],:host([variant=solid]) [role=tablist]{padding:var(--size-1);background:var(--_tablist-bg);border:var(--border) solid var(--_tablist-border-color);border-radius:var(--tabs-radius)}:host .indicator,:host([variant=solid]) .indicator{display:none}:host([variant=flat]){--_tablist-border-color:var(--tabs-tablist-border-color,var(--color-contrast-200));background:var(--tabs-bg,var(--color-contrast-100));border:var(--border) solid var(--_tablist-border-color);border-radius:var(--tabs-radius);box-shadow:var(--inset-shadow-xs), var(--shadow-2xs);overflow:hidden}:host([variant=flat]) [role=tablist]{gap:var(--size-1);padding:var(--size-1);border:none;border-bottom:var(--border) solid var(--_tablist-border-color);background:0 0;border-radius:0}:host([variant=flat]) .indicator{display:none}:host([variant=bordered]){--_tablist-border-color:var(--tabs-tablist-border-color,var(--color-contrast-200))}:host([variant=bordered]) [role=tablist]{gap:var(--size-1);padding:var(--size-1);border:var(--border) solid var(--_tablist-border-color);border-radius:var(--tabs-radius) var(--tabs-radius) 0 0;background:0 0;border-bottom:none}:host([variant=bordered]) .indicator{display:none}:host([variant=bordered]) .panels{border:var(--border) solid var(--_tablist-border-color);border-radius:0 0 var(--tabs-radius) var(--tabs-radius)}:host([variant=bordered][orientation=vertical]) [role=tablist]{border-right:none;border-bottom:var(--border) solid var(--_tablist-border-color);border-radius:var(--tabs-radius) 0 0 var(--tabs-radius)}:host([variant=bordered][orientation=vertical]) .panels{border-radius:0 var(--tabs-radius) var(--tabs-radius) 0}:host([variant=ghost]) [role=tablist]{gap:var(--size-1);background:0 0;border:none;border-radius:0;padding:0}:host([variant=ghost]) .indicator{display:none}:host([variant=frost]){--_tablist-bg:var(--tabs-tablist-bg,color-mix(in oklch, var(--color-canvas) 55%, transparent));--_tablist-border-color:var(--tabs-tablist-border-color,color-mix(in oklch, var(--color-contrast-300) 50%, transparent))}:host([variant=frost]) [role=tablist]{padding:var(--size-1);background:var(--_tablist-bg);border:var(--border) solid var(--_tablist-border-color);border-radius:var(--tabs-radius);box-shadow:var(--shadow-md), var(--inset-shadow-xs);-webkit-backdrop-filter:blur(var(--blur-lg)) saturate(180%);backdrop-filter:blur(var(--blur-lg)) saturate(180%)}:host([variant=frost]) .indicator{display:none}}@layer refine.density{:host([density=compact]){--tabs-radius:var(--rounded-md);height:auto}:host([density=compact]) [role=tablist]{gap:var(--size-1);padding:var(--size-1)}:host([density=compact][variant=ghost]) [role=tablist]{padding:0}}`;exports.default=e;
2
2
  //# sourceMappingURL=tabs.css.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"tabs.css.cjs","names":[],"sources":["../../../src/disclosure/tabs/tabs.css?inline"],"sourcesContent":["@layer refine.base {\n :host {\n --tabs-transition: var(--transition-normal);\n --tabs-radius: var(--rounded-lg);\n display: flex;\n flex-direction: column;\n width: 100%;\n height: 100%;\n }\n\n .tablist-wrapper {\n position: relative;\n flex-shrink: 0;\n }\n\n [role='tablist'] {\n position: relative;\n display: flex;\n gap: var(--tabs-tab-gap, var(--size-1));\n align-items: stretch;\n overflow-x: auto;\n scrollbar-width: none;\n }\n\n [role='tablist']::-webkit-scrollbar {\n display: none;\n }\n\n .indicator {\n position: absolute;\n bottom: 0;\n left: 0;\n height: 2px;\n pointer-events: none;\n background: var(--tabs-indicator-color, var(--_theme-base));\n border-radius: var(--rounded-full);\n transition: transform var(--tabs-transition);\n }\n\n .panels {\n display: flex;\n flex: 1;\n flex-direction: column;\n min-height: 0;\n }\n}\n\n@layer refine.orientation {\n /* ─── vertical orientation ─── */\n :host([orientation='vertical']) {\n flex-direction: row;\n align-items: flex-start;\n }\n\n :host([orientation='vertical']) .tablist-wrapper {\n display: flex;\n flex-shrink: 0;\n }\n\n :host([orientation='vertical']) [role='tablist'] {\n flex-direction: column;\n width: max-content;\n overflow-x: unset;\n overflow-y: auto;\n }\n\n :host([orientation='vertical']) .indicator {\n inset-inline-start: 0;\n top: 0;\n\n /* Reposition indicator to inline-start side for vertical */\n bottom: unset;\n width: 2px;\n height: unset;\n transition: transform var(--tabs-transition);\n }\n}\n\n@layer refine.variants {\n /* ─── solid (default) ─── */\n :host,\n :host([variant='solid']) {\n --tabs-tab-gap: var(--size-1);\n --_tablist-bg: var(--tabs-tablist-bg, var(--color-contrast-100));\n --_tablist-border-color: var(--tabs-tablist-border-color, var(--color-contrast-200));\n }\n\n :host [role='tablist'],\n :host([variant='solid']) [role='tablist'] {\n padding: var(--size-1);\n background: var(--_tablist-bg);\n border: var(--border) solid var(--_tablist-border-color);\n border-radius: var(--tabs-radius);\n }\n\n :host .indicator,\n :host([variant='solid']) .indicator {\n display: none;\n }\n\n /* ─── flat ─── */\n :host([variant='flat']) {\n --_tablist-border-color: var(--tabs-tablist-border-color, var(--color-contrast-200));\n\n overflow: hidden;\n background: var(--tabs-bg, var(--color-contrast-100));\n border: var(--border) solid var(--_tablist-border-color);\n border-radius: var(--tabs-radius);\n box-shadow: var(--inset-shadow-xs), var(--shadow-2xs);\n }\n\n :host([variant='flat']) [role='tablist'] {\n gap: var(--size-1);\n padding: var(--size-1);\n background: transparent;\n border: none;\n border-bottom: var(--border) solid var(--_tablist-border-color);\n border-radius: 0;\n }\n\n :host([variant='flat']) .indicator {\n display: none;\n }\n\n /* ─── bordered ─── */\n :host([variant='bordered']) {\n --_tablist-border-color: var(--tabs-tablist-border-color, var(--color-contrast-200));\n }\n\n :host([variant='bordered']) [role='tablist'] {\n gap: var(--size-1);\n padding: var(--size-1);\n background: transparent;\n border: var(--border) solid var(--_tablist-border-color);\n border-bottom: none;\n border-radius: var(--tabs-radius) var(--tabs-radius) 0 0;\n }\n\n :host([variant='bordered']) .indicator {\n display: none;\n }\n\n :host([variant='bordered']) .panels {\n border: var(--border) solid var(--_tablist-border-color);\n border-radius: 0 0 var(--tabs-radius) var(--tabs-radius);\n }\n\n :host([variant='bordered'][orientation='vertical']) [role='tablist'] {\n border-right: none;\n border-bottom: var(--border) solid var(--_tablist-border-color);\n border-radius: var(--tabs-radius) 0 0 var(--tabs-radius);\n }\n\n :host([variant='bordered'][orientation='vertical']) .panels {\n border-radius: 0 var(--tabs-radius) var(--tabs-radius) 0;\n }\n\n /* ─── ghost ─── */\n :host([variant='ghost']) [role='tablist'] {\n gap: var(--size-1);\n padding: 0;\n background: transparent;\n border: none;\n border-radius: 0;\n }\n\n :host([variant='ghost']) .indicator {\n display: none;\n }\n\n /* ─── glass ─── */\n :host([variant='glass']) {\n --_tablist-bg: var(--tabs-tablist-bg, color-mix(in oklch, var(--color-secondary) 20%, transparent));\n --_tablist-border-color: var(\n --tabs-tablist-border-color,\n color-mix(in oklch, var(--color-secondary-contrast) 15%, transparent)\n );\n }\n\n :host([variant='glass']) [role='tablist'] {\n padding: var(--size-1);\n background: var(--_tablist-bg);\n border: var(--border) solid var(--_tablist-border-color);\n border-radius: var(--tabs-radius);\n box-shadow: var(--shadow-md), var(--inset-shadow-xs);\n backdrop-filter: blur(var(--blur-lg)) saturate(180%) brightness(1.05);\n }\n\n :host([variant='glass']) .indicator {\n display: none;\n }\n\n /* ─── frost ─── */\n :host([variant='frost']) {\n --_tablist-bg: var(--tabs-tablist-bg, color-mix(in oklch, var(--color-canvas) 55%, transparent));\n --_tablist-border-color: var(\n --tabs-tablist-border-color,\n color-mix(in oklch, var(--color-contrast-300) 50%, transparent)\n );\n }\n\n :host([variant='frost']) [role='tablist'] {\n padding: var(--size-1);\n background: var(--_tablist-bg);\n border: var(--border) solid var(--_tablist-border-color);\n border-radius: var(--tabs-radius);\n box-shadow: var(--shadow-md), var(--inset-shadow-xs);\n backdrop-filter: blur(var(--blur-lg)) saturate(180%);\n }\n\n :host([variant='frost']) .indicator {\n display: none;\n }\n}\n\n@layer refine.density {\n :host([density='compact']) {\n --tabs-radius: var(--rounded-md);\n\n height: auto;\n }\n\n :host([density='compact']) [role='tablist'] {\n gap: var(--size-1);\n padding: var(--size-1);\n }\n\n :host([density='compact'][variant='ghost']) [role='tablist'] {\n padding: 0;\n }\n}\n"],"mappings":""}
1
+ {"version":3,"file":"tabs.css.cjs","names":[],"sources":["../../../src/disclosure/tabs/tabs.css?inline"],"sourcesContent":["@layer refine.base {\n :host {\n --tabs-transition: var(--transition-normal);\n --tabs-radius: var(--rounded-lg);\n display: flex;\n flex-direction: column;\n width: 100%;\n height: 100%;\n }\n\n .tablist-wrapper {\n position: relative;\n flex-shrink: 0;\n }\n\n [role='tablist'] {\n position: relative;\n display: flex;\n gap: var(--tabs-tab-gap, var(--size-1));\n align-items: stretch;\n overflow-x: auto;\n scrollbar-width: none;\n }\n\n [role='tablist']::-webkit-scrollbar {\n display: none;\n }\n\n .indicator {\n position: absolute;\n bottom: 0;\n left: 0;\n height: 2px;\n pointer-events: none;\n background: var(--tabs-indicator-color, var(--_theme-base));\n border-radius: var(--rounded-full);\n transition: transform var(--tabs-transition);\n }\n\n .panels {\n display: flex;\n flex: 1;\n flex-direction: column;\n min-height: 0;\n }\n}\n\n@layer refine.orientation {\n /* ─── vertical orientation ─── */\n :host([orientation='vertical']) {\n flex-direction: row;\n align-items: flex-start;\n }\n\n :host([orientation='vertical']) .tablist-wrapper {\n display: flex;\n flex-shrink: 0;\n }\n\n :host([orientation='vertical']) [role='tablist'] {\n flex-direction: column;\n width: max-content;\n overflow-x: unset;\n overflow-y: auto;\n }\n\n :host([orientation='vertical']) .indicator {\n inset-inline-start: 0;\n top: 0;\n\n /* Reposition indicator to inline-start side for vertical */\n bottom: unset;\n width: 2px;\n height: unset;\n transition: transform var(--tabs-transition);\n }\n}\n\n@layer refine.variants {\n /* ─── solid (default) ─── */\n :host,\n :host([variant='solid']) {\n --tabs-tab-gap: var(--size-1);\n --_tablist-bg: var(--tabs-tablist-bg, var(--color-contrast-100));\n --_tablist-border-color: var(--tabs-tablist-border-color, var(--color-contrast-200));\n }\n\n :host [role='tablist'],\n :host([variant='solid']) [role='tablist'] {\n padding: var(--size-1);\n background: var(--_tablist-bg);\n border: var(--border) solid var(--_tablist-border-color);\n border-radius: var(--tabs-radius);\n }\n\n :host .indicator,\n :host([variant='solid']) .indicator {\n display: none;\n }\n\n /* ─── flat ─── */\n :host([variant='flat']) {\n --_tablist-border-color: var(--tabs-tablist-border-color, var(--color-contrast-200));\n\n overflow: hidden;\n background: var(--tabs-bg, var(--color-contrast-100));\n border: var(--border) solid var(--_tablist-border-color);\n border-radius: var(--tabs-radius);\n box-shadow: var(--inset-shadow-xs), var(--shadow-2xs);\n }\n\n :host([variant='flat']) [role='tablist'] {\n gap: var(--size-1);\n padding: var(--size-1);\n background: transparent;\n border: none;\n border-bottom: var(--border) solid var(--_tablist-border-color);\n border-radius: 0;\n }\n\n :host([variant='flat']) .indicator {\n display: none;\n }\n\n /* ─── bordered ─── */\n :host([variant='bordered']) {\n --_tablist-border-color: var(--tabs-tablist-border-color, var(--color-contrast-200));\n }\n\n :host([variant='bordered']) [role='tablist'] {\n gap: var(--size-1);\n padding: var(--size-1);\n background: transparent;\n border: var(--border) solid var(--_tablist-border-color);\n border-bottom: none;\n border-radius: var(--tabs-radius) var(--tabs-radius) 0 0;\n }\n\n :host([variant='bordered']) .indicator {\n display: none;\n }\n\n :host([variant='bordered']) .panels {\n border: var(--border) solid var(--_tablist-border-color);\n border-radius: 0 0 var(--tabs-radius) var(--tabs-radius);\n }\n\n :host([variant='bordered'][orientation='vertical']) [role='tablist'] {\n border-right: none;\n border-bottom: var(--border) solid var(--_tablist-border-color);\n border-radius: var(--tabs-radius) 0 0 var(--tabs-radius);\n }\n\n :host([variant='bordered'][orientation='vertical']) .panels {\n border-radius: 0 var(--tabs-radius) var(--tabs-radius) 0;\n }\n\n /* ─── ghost ─── */\n :host([variant='ghost']) [role='tablist'] {\n gap: var(--size-1);\n padding: 0;\n background: transparent;\n border: none;\n border-radius: 0;\n }\n\n :host([variant='ghost']) .indicator {\n display: none;\n }\n\n /* ─── frost ─── */\n :host([variant='frost']) {\n --_tablist-bg: var(--tabs-tablist-bg, color-mix(in oklch, var(--color-canvas) 55%, transparent));\n --_tablist-border-color: var(\n --tabs-tablist-border-color,\n color-mix(in oklch, var(--color-contrast-300) 50%, transparent)\n );\n }\n\n :host([variant='frost']) [role='tablist'] {\n padding: var(--size-1);\n background: var(--_tablist-bg);\n border: var(--border) solid var(--_tablist-border-color);\n border-radius: var(--tabs-radius);\n box-shadow: var(--shadow-md), var(--inset-shadow-xs);\n backdrop-filter: blur(var(--blur-lg)) saturate(180%);\n }\n\n :host([variant='frost']) .indicator {\n display: none;\n }\n}\n\n@layer refine.density {\n :host([density='compact']) {\n --tabs-radius: var(--rounded-md);\n\n height: auto;\n }\n\n :host([density='compact']) [role='tablist'] {\n gap: var(--size-1);\n padding: var(--size-1);\n }\n\n :host([density='compact'][variant='ghost']) [role='tablist'] {\n padding: 0;\n }\n}\n"],"mappings":""}
@@ -1,5 +1,5 @@
1
1
  //#region src/disclosure/tabs/tabs.css?inline
2
- var e = "@layer refine.base{:host{--tabs-transition:var(--transition-normal);--tabs-radius:var(--rounded-lg);flex-direction:column;width:100%;height:100%;display:flex}.tablist-wrapper{flex-shrink:0;position:relative}[role=tablist]{gap:var(--tabs-tab-gap,var(--size-1));scrollbar-width:none;align-items:stretch;display:flex;position:relative;overflow-x:auto}[role=tablist]::-webkit-scrollbar{display:none}.indicator{pointer-events:none;background:var(--tabs-indicator-color,var(--_theme-base));border-radius:var(--rounded-full);height:2px;transition:transform var(--tabs-transition);position:absolute;bottom:0;left:0}.panels{flex-direction:column;flex:1;min-height:0;display:flex}}@layer refine.orientation{:host([orientation=vertical]){flex-direction:row;align-items:flex-start}:host([orientation=vertical]) .tablist-wrapper{flex-shrink:0;display:flex}:host([orientation=vertical]) [role=tablist]{width:max-content;overflow-x:unset;flex-direction:column;overflow-y:auto}:host([orientation=vertical]) .indicator{top:0;bottom:unset;width:2px;height:unset;transition:transform var(--tabs-transition)}:host([orientation=vertical]) .indicator:not(:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){left:0}:host([orientation=vertical]) .indicator:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){right:0}}@layer refine.variants{:host,:host([variant=solid]){--tabs-tab-gap:var(--size-1);--_tablist-bg:var(--tabs-tablist-bg,var(--color-contrast-100));--_tablist-border-color:var(--tabs-tablist-border-color,var(--color-contrast-200))}:host [role=tablist],:host([variant=solid]) [role=tablist]{padding:var(--size-1);background:var(--_tablist-bg);border:var(--border) solid var(--_tablist-border-color);border-radius:var(--tabs-radius)}:host .indicator,:host([variant=solid]) .indicator{display:none}:host([variant=flat]){--_tablist-border-color:var(--tabs-tablist-border-color,var(--color-contrast-200));background:var(--tabs-bg,var(--color-contrast-100));border:var(--border) solid var(--_tablist-border-color);border-radius:var(--tabs-radius);box-shadow:var(--inset-shadow-xs), var(--shadow-2xs);overflow:hidden}:host([variant=flat]) [role=tablist]{gap:var(--size-1);padding:var(--size-1);border:none;border-bottom:var(--border) solid var(--_tablist-border-color);background:0 0;border-radius:0}:host([variant=flat]) .indicator{display:none}:host([variant=bordered]){--_tablist-border-color:var(--tabs-tablist-border-color,var(--color-contrast-200))}:host([variant=bordered]) [role=tablist]{gap:var(--size-1);padding:var(--size-1);border:var(--border) solid var(--_tablist-border-color);border-radius:var(--tabs-radius) var(--tabs-radius) 0 0;background:0 0;border-bottom:none}:host([variant=bordered]) .indicator{display:none}:host([variant=bordered]) .panels{border:var(--border) solid var(--_tablist-border-color);border-radius:0 0 var(--tabs-radius) var(--tabs-radius)}:host([variant=bordered][orientation=vertical]) [role=tablist]{border-right:none;border-bottom:var(--border) solid var(--_tablist-border-color);border-radius:var(--tabs-radius) 0 0 var(--tabs-radius)}:host([variant=bordered][orientation=vertical]) .panels{border-radius:0 var(--tabs-radius) var(--tabs-radius) 0}:host([variant=ghost]) [role=tablist]{gap:var(--size-1);background:0 0;border:none;border-radius:0;padding:0}:host([variant=ghost]) .indicator{display:none}:host([variant=glass]){--_tablist-bg:var(--tabs-tablist-bg,color-mix(in oklch, var(--color-secondary) 20%, transparent));--_tablist-border-color:var(--tabs-tablist-border-color,color-mix(in oklch, var(--color-secondary-contrast) 15%, transparent))}:host([variant=glass]) [role=tablist]{padding:var(--size-1);background:var(--_tablist-bg);border:var(--border) solid var(--_tablist-border-color);border-radius:var(--tabs-radius);box-shadow:var(--shadow-md), var(--inset-shadow-xs);-webkit-backdrop-filter:blur(var(--blur-lg)) saturate(180%) brightness(1.05);backdrop-filter:blur(var(--blur-lg)) saturate(180%) brightness(1.05)}:host([variant=glass]) .indicator{display:none}:host([variant=frost]){--_tablist-bg:var(--tabs-tablist-bg,color-mix(in oklch, var(--color-canvas) 55%, transparent));--_tablist-border-color:var(--tabs-tablist-border-color,color-mix(in oklch, var(--color-contrast-300) 50%, transparent))}:host([variant=frost]) [role=tablist]{padding:var(--size-1);background:var(--_tablist-bg);border:var(--border) solid var(--_tablist-border-color);border-radius:var(--tabs-radius);box-shadow:var(--shadow-md), var(--inset-shadow-xs);-webkit-backdrop-filter:blur(var(--blur-lg)) saturate(180%);backdrop-filter:blur(var(--blur-lg)) saturate(180%)}:host([variant=frost]) .indicator{display:none}}@layer refine.density{:host([density=compact]){--tabs-radius:var(--rounded-md);height:auto}:host([density=compact]) [role=tablist]{gap:var(--size-1);padding:var(--size-1)}:host([density=compact][variant=ghost]) [role=tablist]{padding:0}}";
2
+ var e = "@layer refine.base{:host{--tabs-transition:var(--transition-normal);--tabs-radius:var(--rounded-lg);flex-direction:column;width:100%;height:100%;display:flex}.tablist-wrapper{flex-shrink:0;position:relative}[role=tablist]{gap:var(--tabs-tab-gap,var(--size-1));scrollbar-width:none;align-items:stretch;display:flex;position:relative;overflow-x:auto}[role=tablist]::-webkit-scrollbar{display:none}.indicator{pointer-events:none;background:var(--tabs-indicator-color,var(--_theme-base));border-radius:var(--rounded-full);height:2px;transition:transform var(--tabs-transition);position:absolute;bottom:0;left:0}.panels{flex-direction:column;flex:1;min-height:0;display:flex}}@layer refine.orientation{:host([orientation=vertical]){flex-direction:row;align-items:flex-start}:host([orientation=vertical]) .tablist-wrapper{flex-shrink:0;display:flex}:host([orientation=vertical]) [role=tablist]{width:max-content;overflow-x:unset;flex-direction:column;overflow-y:auto}:host([orientation=vertical]) .indicator{top:0;bottom:unset;width:2px;height:unset;transition:transform var(--tabs-transition)}:host([orientation=vertical]) .indicator:not(:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){left:0}:host([orientation=vertical]) .indicator:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){right:0}}@layer refine.variants{:host,:host([variant=solid]){--tabs-tab-gap:var(--size-1);--_tablist-bg:var(--tabs-tablist-bg,var(--color-contrast-100));--_tablist-border-color:var(--tabs-tablist-border-color,var(--color-contrast-200))}:host [role=tablist],:host([variant=solid]) [role=tablist]{padding:var(--size-1);background:var(--_tablist-bg);border:var(--border) solid var(--_tablist-border-color);border-radius:var(--tabs-radius)}:host .indicator,:host([variant=solid]) .indicator{display:none}:host([variant=flat]){--_tablist-border-color:var(--tabs-tablist-border-color,var(--color-contrast-200));background:var(--tabs-bg,var(--color-contrast-100));border:var(--border) solid var(--_tablist-border-color);border-radius:var(--tabs-radius);box-shadow:var(--inset-shadow-xs), var(--shadow-2xs);overflow:hidden}:host([variant=flat]) [role=tablist]{gap:var(--size-1);padding:var(--size-1);border:none;border-bottom:var(--border) solid var(--_tablist-border-color);background:0 0;border-radius:0}:host([variant=flat]) .indicator{display:none}:host([variant=bordered]){--_tablist-border-color:var(--tabs-tablist-border-color,var(--color-contrast-200))}:host([variant=bordered]) [role=tablist]{gap:var(--size-1);padding:var(--size-1);border:var(--border) solid var(--_tablist-border-color);border-radius:var(--tabs-radius) var(--tabs-radius) 0 0;background:0 0;border-bottom:none}:host([variant=bordered]) .indicator{display:none}:host([variant=bordered]) .panels{border:var(--border) solid var(--_tablist-border-color);border-radius:0 0 var(--tabs-radius) var(--tabs-radius)}:host([variant=bordered][orientation=vertical]) [role=tablist]{border-right:none;border-bottom:var(--border) solid var(--_tablist-border-color);border-radius:var(--tabs-radius) 0 0 var(--tabs-radius)}:host([variant=bordered][orientation=vertical]) .panels{border-radius:0 var(--tabs-radius) var(--tabs-radius) 0}:host([variant=ghost]) [role=tablist]{gap:var(--size-1);background:0 0;border:none;border-radius:0;padding:0}:host([variant=ghost]) .indicator{display:none}:host([variant=frost]){--_tablist-bg:var(--tabs-tablist-bg,color-mix(in oklch, var(--color-canvas) 55%, transparent));--_tablist-border-color:var(--tabs-tablist-border-color,color-mix(in oklch, var(--color-contrast-300) 50%, transparent))}:host([variant=frost]) [role=tablist]{padding:var(--size-1);background:var(--_tablist-bg);border:var(--border) solid var(--_tablist-border-color);border-radius:var(--tabs-radius);box-shadow:var(--shadow-md), var(--inset-shadow-xs);-webkit-backdrop-filter:blur(var(--blur-lg)) saturate(180%);backdrop-filter:blur(var(--blur-lg)) saturate(180%)}:host([variant=frost]) .indicator{display:none}}@layer refine.density{:host([density=compact]){--tabs-radius:var(--rounded-md);height:auto}:host([density=compact]) [role=tablist]{gap:var(--size-1);padding:var(--size-1)}:host([density=compact][variant=ghost]) [role=tablist]{padding:0}}";
3
3
  //#endregion
4
4
  export { e as default };
5
5
 
@@ -1 +1 @@
1
- {"version":3,"file":"tabs.css.js","names":[],"sources":["../../../src/disclosure/tabs/tabs.css?inline"],"sourcesContent":["@layer refine.base {\n :host {\n --tabs-transition: var(--transition-normal);\n --tabs-radius: var(--rounded-lg);\n display: flex;\n flex-direction: column;\n width: 100%;\n height: 100%;\n }\n\n .tablist-wrapper {\n position: relative;\n flex-shrink: 0;\n }\n\n [role='tablist'] {\n position: relative;\n display: flex;\n gap: var(--tabs-tab-gap, var(--size-1));\n align-items: stretch;\n overflow-x: auto;\n scrollbar-width: none;\n }\n\n [role='tablist']::-webkit-scrollbar {\n display: none;\n }\n\n .indicator {\n position: absolute;\n bottom: 0;\n left: 0;\n height: 2px;\n pointer-events: none;\n background: var(--tabs-indicator-color, var(--_theme-base));\n border-radius: var(--rounded-full);\n transition: transform var(--tabs-transition);\n }\n\n .panels {\n display: flex;\n flex: 1;\n flex-direction: column;\n min-height: 0;\n }\n}\n\n@layer refine.orientation {\n /* ─── vertical orientation ─── */\n :host([orientation='vertical']) {\n flex-direction: row;\n align-items: flex-start;\n }\n\n :host([orientation='vertical']) .tablist-wrapper {\n display: flex;\n flex-shrink: 0;\n }\n\n :host([orientation='vertical']) [role='tablist'] {\n flex-direction: column;\n width: max-content;\n overflow-x: unset;\n overflow-y: auto;\n }\n\n :host([orientation='vertical']) .indicator {\n inset-inline-start: 0;\n top: 0;\n\n /* Reposition indicator to inline-start side for vertical */\n bottom: unset;\n width: 2px;\n height: unset;\n transition: transform var(--tabs-transition);\n }\n}\n\n@layer refine.variants {\n /* ─── solid (default) ─── */\n :host,\n :host([variant='solid']) {\n --tabs-tab-gap: var(--size-1);\n --_tablist-bg: var(--tabs-tablist-bg, var(--color-contrast-100));\n --_tablist-border-color: var(--tabs-tablist-border-color, var(--color-contrast-200));\n }\n\n :host [role='tablist'],\n :host([variant='solid']) [role='tablist'] {\n padding: var(--size-1);\n background: var(--_tablist-bg);\n border: var(--border) solid var(--_tablist-border-color);\n border-radius: var(--tabs-radius);\n }\n\n :host .indicator,\n :host([variant='solid']) .indicator {\n display: none;\n }\n\n /* ─── flat ─── */\n :host([variant='flat']) {\n --_tablist-border-color: var(--tabs-tablist-border-color, var(--color-contrast-200));\n\n overflow: hidden;\n background: var(--tabs-bg, var(--color-contrast-100));\n border: var(--border) solid var(--_tablist-border-color);\n border-radius: var(--tabs-radius);\n box-shadow: var(--inset-shadow-xs), var(--shadow-2xs);\n }\n\n :host([variant='flat']) [role='tablist'] {\n gap: var(--size-1);\n padding: var(--size-1);\n background: transparent;\n border: none;\n border-bottom: var(--border) solid var(--_tablist-border-color);\n border-radius: 0;\n }\n\n :host([variant='flat']) .indicator {\n display: none;\n }\n\n /* ─── bordered ─── */\n :host([variant='bordered']) {\n --_tablist-border-color: var(--tabs-tablist-border-color, var(--color-contrast-200));\n }\n\n :host([variant='bordered']) [role='tablist'] {\n gap: var(--size-1);\n padding: var(--size-1);\n background: transparent;\n border: var(--border) solid var(--_tablist-border-color);\n border-bottom: none;\n border-radius: var(--tabs-radius) var(--tabs-radius) 0 0;\n }\n\n :host([variant='bordered']) .indicator {\n display: none;\n }\n\n :host([variant='bordered']) .panels {\n border: var(--border) solid var(--_tablist-border-color);\n border-radius: 0 0 var(--tabs-radius) var(--tabs-radius);\n }\n\n :host([variant='bordered'][orientation='vertical']) [role='tablist'] {\n border-right: none;\n border-bottom: var(--border) solid var(--_tablist-border-color);\n border-radius: var(--tabs-radius) 0 0 var(--tabs-radius);\n }\n\n :host([variant='bordered'][orientation='vertical']) .panels {\n border-radius: 0 var(--tabs-radius) var(--tabs-radius) 0;\n }\n\n /* ─── ghost ─── */\n :host([variant='ghost']) [role='tablist'] {\n gap: var(--size-1);\n padding: 0;\n background: transparent;\n border: none;\n border-radius: 0;\n }\n\n :host([variant='ghost']) .indicator {\n display: none;\n }\n\n /* ─── glass ─── */\n :host([variant='glass']) {\n --_tablist-bg: var(--tabs-tablist-bg, color-mix(in oklch, var(--color-secondary) 20%, transparent));\n --_tablist-border-color: var(\n --tabs-tablist-border-color,\n color-mix(in oklch, var(--color-secondary-contrast) 15%, transparent)\n );\n }\n\n :host([variant='glass']) [role='tablist'] {\n padding: var(--size-1);\n background: var(--_tablist-bg);\n border: var(--border) solid var(--_tablist-border-color);\n border-radius: var(--tabs-radius);\n box-shadow: var(--shadow-md), var(--inset-shadow-xs);\n backdrop-filter: blur(var(--blur-lg)) saturate(180%) brightness(1.05);\n }\n\n :host([variant='glass']) .indicator {\n display: none;\n }\n\n /* ─── frost ─── */\n :host([variant='frost']) {\n --_tablist-bg: var(--tabs-tablist-bg, color-mix(in oklch, var(--color-canvas) 55%, transparent));\n --_tablist-border-color: var(\n --tabs-tablist-border-color,\n color-mix(in oklch, var(--color-contrast-300) 50%, transparent)\n );\n }\n\n :host([variant='frost']) [role='tablist'] {\n padding: var(--size-1);\n background: var(--_tablist-bg);\n border: var(--border) solid var(--_tablist-border-color);\n border-radius: var(--tabs-radius);\n box-shadow: var(--shadow-md), var(--inset-shadow-xs);\n backdrop-filter: blur(var(--blur-lg)) saturate(180%);\n }\n\n :host([variant='frost']) .indicator {\n display: none;\n }\n}\n\n@layer refine.density {\n :host([density='compact']) {\n --tabs-radius: var(--rounded-md);\n\n height: auto;\n }\n\n :host([density='compact']) [role='tablist'] {\n gap: var(--size-1);\n padding: var(--size-1);\n }\n\n :host([density='compact'][variant='ghost']) [role='tablist'] {\n padding: 0;\n }\n}\n"],"mappings":""}
1
+ {"version":3,"file":"tabs.css.js","names":[],"sources":["../../../src/disclosure/tabs/tabs.css?inline"],"sourcesContent":["@layer refine.base {\n :host {\n --tabs-transition: var(--transition-normal);\n --tabs-radius: var(--rounded-lg);\n display: flex;\n flex-direction: column;\n width: 100%;\n height: 100%;\n }\n\n .tablist-wrapper {\n position: relative;\n flex-shrink: 0;\n }\n\n [role='tablist'] {\n position: relative;\n display: flex;\n gap: var(--tabs-tab-gap, var(--size-1));\n align-items: stretch;\n overflow-x: auto;\n scrollbar-width: none;\n }\n\n [role='tablist']::-webkit-scrollbar {\n display: none;\n }\n\n .indicator {\n position: absolute;\n bottom: 0;\n left: 0;\n height: 2px;\n pointer-events: none;\n background: var(--tabs-indicator-color, var(--_theme-base));\n border-radius: var(--rounded-full);\n transition: transform var(--tabs-transition);\n }\n\n .panels {\n display: flex;\n flex: 1;\n flex-direction: column;\n min-height: 0;\n }\n}\n\n@layer refine.orientation {\n /* ─── vertical orientation ─── */\n :host([orientation='vertical']) {\n flex-direction: row;\n align-items: flex-start;\n }\n\n :host([orientation='vertical']) .tablist-wrapper {\n display: flex;\n flex-shrink: 0;\n }\n\n :host([orientation='vertical']) [role='tablist'] {\n flex-direction: column;\n width: max-content;\n overflow-x: unset;\n overflow-y: auto;\n }\n\n :host([orientation='vertical']) .indicator {\n inset-inline-start: 0;\n top: 0;\n\n /* Reposition indicator to inline-start side for vertical */\n bottom: unset;\n width: 2px;\n height: unset;\n transition: transform var(--tabs-transition);\n }\n}\n\n@layer refine.variants {\n /* ─── solid (default) ─── */\n :host,\n :host([variant='solid']) {\n --tabs-tab-gap: var(--size-1);\n --_tablist-bg: var(--tabs-tablist-bg, var(--color-contrast-100));\n --_tablist-border-color: var(--tabs-tablist-border-color, var(--color-contrast-200));\n }\n\n :host [role='tablist'],\n :host([variant='solid']) [role='tablist'] {\n padding: var(--size-1);\n background: var(--_tablist-bg);\n border: var(--border) solid var(--_tablist-border-color);\n border-radius: var(--tabs-radius);\n }\n\n :host .indicator,\n :host([variant='solid']) .indicator {\n display: none;\n }\n\n /* ─── flat ─── */\n :host([variant='flat']) {\n --_tablist-border-color: var(--tabs-tablist-border-color, var(--color-contrast-200));\n\n overflow: hidden;\n background: var(--tabs-bg, var(--color-contrast-100));\n border: var(--border) solid var(--_tablist-border-color);\n border-radius: var(--tabs-radius);\n box-shadow: var(--inset-shadow-xs), var(--shadow-2xs);\n }\n\n :host([variant='flat']) [role='tablist'] {\n gap: var(--size-1);\n padding: var(--size-1);\n background: transparent;\n border: none;\n border-bottom: var(--border) solid var(--_tablist-border-color);\n border-radius: 0;\n }\n\n :host([variant='flat']) .indicator {\n display: none;\n }\n\n /* ─── bordered ─── */\n :host([variant='bordered']) {\n --_tablist-border-color: var(--tabs-tablist-border-color, var(--color-contrast-200));\n }\n\n :host([variant='bordered']) [role='tablist'] {\n gap: var(--size-1);\n padding: var(--size-1);\n background: transparent;\n border: var(--border) solid var(--_tablist-border-color);\n border-bottom: none;\n border-radius: var(--tabs-radius) var(--tabs-radius) 0 0;\n }\n\n :host([variant='bordered']) .indicator {\n display: none;\n }\n\n :host([variant='bordered']) .panels {\n border: var(--border) solid var(--_tablist-border-color);\n border-radius: 0 0 var(--tabs-radius) var(--tabs-radius);\n }\n\n :host([variant='bordered'][orientation='vertical']) [role='tablist'] {\n border-right: none;\n border-bottom: var(--border) solid var(--_tablist-border-color);\n border-radius: var(--tabs-radius) 0 0 var(--tabs-radius);\n }\n\n :host([variant='bordered'][orientation='vertical']) .panels {\n border-radius: 0 var(--tabs-radius) var(--tabs-radius) 0;\n }\n\n /* ─── ghost ─── */\n :host([variant='ghost']) [role='tablist'] {\n gap: var(--size-1);\n padding: 0;\n background: transparent;\n border: none;\n border-radius: 0;\n }\n\n :host([variant='ghost']) .indicator {\n display: none;\n }\n\n /* ─── frost ─── */\n :host([variant='frost']) {\n --_tablist-bg: var(--tabs-tablist-bg, color-mix(in oklch, var(--color-canvas) 55%, transparent));\n --_tablist-border-color: var(\n --tabs-tablist-border-color,\n color-mix(in oklch, var(--color-contrast-300) 50%, transparent)\n );\n }\n\n :host([variant='frost']) [role='tablist'] {\n padding: var(--size-1);\n background: var(--_tablist-bg);\n border: var(--border) solid var(--_tablist-border-color);\n border-radius: var(--tabs-radius);\n box-shadow: var(--shadow-md), var(--inset-shadow-xs);\n backdrop-filter: blur(var(--blur-lg)) saturate(180%);\n }\n\n :host([variant='frost']) .indicator {\n display: none;\n }\n}\n\n@layer refine.density {\n :host([density='compact']) {\n --tabs-radius: var(--rounded-md);\n\n height: auto;\n }\n\n :host([density='compact']) [role='tablist'] {\n gap: var(--size-1);\n padding: var(--size-1);\n }\n\n :host([density='compact'][variant='ghost']) [role='tablist'] {\n padding: 0;\n }\n}\n"],"mappings":""}
@@ -1,5 +1,5 @@
1
1
  import { type Readable } from '@vielzeug/ripple';
2
- import type { ComponentSize, SurfaceVariant, ThemeColor } from '../../types';
2
+ import type { ComponentSize, ThemeColor, VisualVariant } from '../../types';
3
3
  /** Context provided by ore-tabs to its ore-tab-item and ore-tab-panel children. */
4
4
  export type TabsContext = {
5
5
  color: Readable<ThemeColor | undefined>;
@@ -7,7 +7,7 @@ export type TabsContext = {
7
7
  orientation: Readable<'horizontal' | 'vertical'>;
8
8
  size: Readable<ComponentSize | undefined>;
9
9
  value: Readable<string | undefined>;
10
- variant: Readable<SurfaceVariant | undefined>;
10
+ variant: Readable<VisualVariant | undefined>;
11
11
  };
12
12
  /** Injection key for the tabs context. */
13
13
  export declare const TABS_CTX: import("@vielzeug/ore").InjectionKey<TabsContext>;
@@ -36,7 +36,7 @@ export type OreTabsProps = {
36
36
  /** Currently selected tab value */
37
37
  value?: string;
38
38
  /** Visual style variant */
39
- variant?: SurfaceVariant;
39
+ variant?: VisualVariant;
40
40
  };
41
41
  /**
42
42
  * Tabs container. Manages tab selection and syncs state to child tab items and panels.
@@ -46,7 +46,7 @@ export type OreTabsProps = {
46
46
  * @element ore-tab-panel - Child element for tab content (auto-discovered)
47
47
  *
48
48
  * @attr {string} value - The value of the currently selected tab
49
- * @attr {string} variant - Visual variant: 'solid' | 'flat' | 'bordered' | 'ghost' | 'glass' | 'frost'
49
+ * @attr {string} variant - Visual variant: 'solid' | 'flat' | 'bordered' | 'ghost' | 'frost'
50
50
  * @attr {string} size - Size: 'sm' | 'md' | 'lg'
51
51
  * @attr {string} density - Spatial density: 'default' | 'compact'
52
52
  * @attr {string} color - Theme color: 'primary' | 'secondary' | 'info' | 'success' | 'warning' | 'error'
@@ -60,7 +60,7 @@ export type OreTabsProps = {
60
60
  * @cssprop --tabs-transition - Transition duration/easing for the active indicator
61
61
  * @cssprop --tabs-indicator-color - Color of the sliding active indicator line
62
62
  * @cssprop --tabs-bg - Background of the host element (flat variant)
63
- * @cssprop --tabs-tablist-bg - Tablist container background (solid/glass/frost variants)
63
+ * @cssprop --tabs-tablist-bg - Tablist container background (solid/frost variants)
64
64
  * @cssprop --tabs-tablist-border-color - Tablist container border color
65
65
  * @part tablist - Container that holds the slotted tab items
66
66
  * @part indicator - Active tab indicator element
@@ -1 +1 @@
1
- {"version":3,"file":"tabs.d.ts","sourceRoot":"","sources":["../../../src/disclosure/tabs/tabs.ts"],"names":[],"mappings":"AAaA,OAAO,EAAY,KAAK,QAAQ,EAAiB,MAAM,kBAAkB,CAAC;AAI1E,OAAO,KAAK,EAAE,aAAa,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAG7E,mFAAmF;AACnF,MAAM,MAAM,WAAW,GAAG;IACxB,KAAK,EAAE,QAAQ,CAAC,UAAU,GAAG,SAAS,CAAC,CAAC;IACxC,OAAO,EAAE,QAAQ,CAAC,SAAS,GAAG,SAAS,CAAC,CAAC;IACzC,WAAW,EAAE,QAAQ,CAAC,YAAY,GAAG,UAAU,CAAC,CAAC;IACjD,IAAI,EAAE,QAAQ,CAAC,aAAa,GAAG,SAAS,CAAC,CAAC;IAC1C,KAAK,EAAE,QAAQ,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;IACpC,OAAO,EAAE,QAAQ,CAAC,cAAc,GAAG,SAAS,CAAC,CAAC;CAC/C,CAAC;AACF,0CAA0C;AAC1C,eAAO,MAAM,QAAQ,mDAA4C,CAAC;AAElE,MAAM,MAAM,aAAa,GAAG;IAC1B,MAAM,EAAE;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;CAC3B,CAAC;AAEF,MAAM,MAAM,YAAY,GAAG;IACzB;;;;OAIG;IACH,UAAU,CAAC,EAAE,MAAM,GAAG,QAAQ,CAAC;IAC/B,kBAAkB;IAClB,KAAK,CAAC,EAAE,UAAU,CAAC;IACnB,gFAAgF;IAChF,OAAO,CAAC,EAAE,SAAS,GAAG,SAAS,CAAC;IAChC,wHAAwH;IACxH,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,2BAA2B;IAC3B,WAAW,CAAC,EAAE,YAAY,GAAG,UAAU,CAAC;IACxC,qBAAqB;IACrB,IAAI,CAAC,EAAE,aAAa,CAAC;IACrB,mCAAmC;IACnC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,2BAA2B;IAC3B,OAAO,CAAC,EAAE,cAAc,CAAC;CAC1B,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoCG;AACH,eAAO,MAAM,QAAQ,EAAG,UAAmB,CAAC"}
1
+ {"version":3,"file":"tabs.d.ts","sourceRoot":"","sources":["../../../src/disclosure/tabs/tabs.ts"],"names":[],"mappings":"AAaA,OAAO,EAAY,KAAK,QAAQ,EAAiB,MAAM,kBAAkB,CAAC;AAI1E,OAAO,KAAK,EAAE,aAAa,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAG5E,mFAAmF;AACnF,MAAM,MAAM,WAAW,GAAG;IACxB,KAAK,EAAE,QAAQ,CAAC,UAAU,GAAG,SAAS,CAAC,CAAC;IACxC,OAAO,EAAE,QAAQ,CAAC,SAAS,GAAG,SAAS,CAAC,CAAC;IACzC,WAAW,EAAE,QAAQ,CAAC,YAAY,GAAG,UAAU,CAAC,CAAC;IACjD,IAAI,EAAE,QAAQ,CAAC,aAAa,GAAG,SAAS,CAAC,CAAC;IAC1C,KAAK,EAAE,QAAQ,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;IACpC,OAAO,EAAE,QAAQ,CAAC,aAAa,GAAG,SAAS,CAAC,CAAC;CAC9C,CAAC;AACF,0CAA0C;AAC1C,eAAO,MAAM,QAAQ,mDAA4C,CAAC;AAElE,MAAM,MAAM,aAAa,GAAG;IAC1B,MAAM,EAAE;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;CAC3B,CAAC;AAEF,MAAM,MAAM,YAAY,GAAG;IACzB;;;;OAIG;IACH,UAAU,CAAC,EAAE,MAAM,GAAG,QAAQ,CAAC;IAC/B,kBAAkB;IAClB,KAAK,CAAC,EAAE,UAAU,CAAC;IACnB,gFAAgF;IAChF,OAAO,CAAC,EAAE,SAAS,GAAG,SAAS,CAAC;IAChC,wHAAwH;IACxH,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,2BAA2B;IAC3B,WAAW,CAAC,EAAE,YAAY,GAAG,UAAU,CAAC;IACxC,qBAAqB;IACrB,IAAI,CAAC,EAAE,aAAa,CAAC;IACrB,mCAAmC;IACnC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,2BAA2B;IAC3B,OAAO,CAAC,EAAE,aAAa,CAAC;CACzB,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoCG;AACH,eAAO,MAAM,QAAQ,EAAG,UAAmB,CAAC"}
package/dist/drawer.cjs CHANGED
@@ -1,4 +1,4 @@
1
- Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("./styles/mixins/accessibility.css.cjs"),t=require("./styles/mixins/theme.css.cjs"),n=require("./overlay/shared/use-dialog.cjs"),r=require("./overlay/drawer/drawer.css.cjs");let i=require("@vielzeug/ore"),a=require("@vielzeug/ripple"),o=require("@vielzeug/gesture");var s=e=>e==null?void 0:e===``||e===`true`,c={bottom:{axis:`y`,closingDistance:e=>Math.max(0,e),translate:e=>`translateY(${e}px)`},left:{axis:`x`,closingDistance:e=>Math.max(0,-e),translate:e=>`translateX(${e}px)`},right:{axis:`x`,closingDistance:e=>Math.max(0,e),translate:e=>`translateX(${e}px)`},top:{axis:`y`,closingDistance:e=>Math.max(0,-e),translate:e=>`translateY(${e}px)`}},l=`ore-drawer`;(0,i.define)(l,{props:{backdrop:i.prop.string(),"default-open":i.prop.bool(!1),dismissible:i.prop.bool(!0),"drag-handle-placement":i.prop.oneOf([`outside`,`inset`],`outside`),"initial-focus":i.prop.string(),label:i.prop.string(),open:{default:void 0,parse:s},persistent:i.prop.bool(!1),placement:i.prop.oneOf([`left`,`right`,`top`,`bottom`],`right`),"return-focus":i.prop.bool(!0),size:i.prop.string(),title:i.prop.string()},setup(e){let t=(0,i.getHost)(),r=(0,i.useEmit)(),s=(0,i.useSlots)(),l=(0,i.createStableId)(`drawer-label`),u=(0,i.ref)(),d=(0,i.ref)(),f=(0,a.signal)(!1),p,m,h=()=>e.label.value??e.title.value??``,g=()=>s.has(`header`).value||!!h(),_=()=>g()||e.dismissible.value,v=()=>s.has(`footer`).value,y=()=>e.placement.value||`right`,b=()=>c[y()],x=(e,t)=>{let n=t===`x`?e.offsetWidth:e.offsetHeight;return Math.min(96,Math.max(36,n*.18))},S=(e,t)=>b().closingDistance(e)>=t,C=e=>{if(!f.value)return;m&&=(clearTimeout(m),void 0);let t=u.value;if(!t){f.value=!1;return}t.style.transition=`none`,e.style.opacity=`0`,e.style.visibility=`hidden`,t.offsetWidth,A(`swipe`)},w=(e,t,n)=>{if(f.value)return;f.value=!0;let r=t.axis===`x`?e.offsetWidth:e.offsetHeight,i=n>=0?Math.max(n,r):Math.min(n,-r),a=t.translate(i);e.style.transition=`transform 180ms cubic-bezier(0.2, 0.9, 0.2, 1), opacity 180ms ease-out`,e.offsetWidth;let o=t=>{t.target===e&&t.propertyName===`transform`&&(e.removeEventListener(`transitionend`,o),C(e))};e.addEventListener(`transitionend`,o);let s=parseFloat(getComputedStyle(e).transitionDuration)*1e3;m=setTimeout(()=>{e.removeEventListener(`transitionend`,o),C(e)},s+50),e.style.transform=a,e.style.opacity=`0.2`},T=e=>{m&&=(clearTimeout(m),void 0),e.style.transition=``,e.style.transform=``,e.style.opacity=``,e.style.visibility=``,f.value=!1},E=({distance:e,reason:t})=>{let n=d.value;if(!n)return;let r=x(n,b().axis);if(t===`release`&&S(e,r)){w(n,b(),e);return}T(n)},{closeWithAnimation:D,handleCancel:O,overlay:k,requestClose:A,watchOpenProp:j}=n.useDialogControl({beforeOpen:e=>{let t=d.value;t&&T(t)},closeRequestDetail:t=>({placement:e.placement.value??`right`}),defaultOpen:e[`default-open`],dialogRef:u,getPanelEl:()=>d.value,host:t,initialFocus:e[`initial-focus`],isPersistent:()=>!!e.persistent.value,onCleanup:i.onCleanup,onEvent:i.onEvent,onNativeClose:e=>{let t=d.value;t&&e!==`swipe`&&T(t);let n=u.value;n&&(n.style.transition=``),r(`open-change`,{open:!1,reason:e})},onOpen:e=>r(`open-change`,{open:!0,reason:e}),openProp:e.open,performClose:(e,t)=>{t===`swipe`?e.close():D()},returnFocus:e[`return-focus`]});return(0,i.onMounted)(()=>{let n=u.value;if(!n)return;let r=t;r.show=()=>{k.open(`programmatic`)},r.hide=()=>{k.close(`programmatic`)},j(),(0,i.onEvent)(n,`cancel`,O),(0,i.onEvent)(n,`click`,t=>{e.persistent.value||p?.active||f.value||t.target===n&&A(`outsideClick`)});let a=d.value?.querySelector(`[part="drag-handle"]`);return a&&(p=(0,o.createPanGesture)(a,{axis:()=>b().axis,disabled:()=>f.value,onEnd:E,onMove:({distance:e})=>{let t=d.value;if(!t)return;let n=b(),r=x(t,n.axis),i=n.closingDistance(e),a=Math.min(i/r,1);t.style.transition=`none`,t.style.transform=n.translate(e),t.style.opacity=String(1-a*.4)}})),()=>{p?.dispose(),p=void 0,k.dispose()}}),i.html`
1
+ Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("./styles/mixins/accessibility.css.cjs"),t=require("./styles/mixins/theme.css.cjs"),n=require("./overlay/shared/use-dialog.cjs"),r=require("./overlay/drawer/drawer.css.cjs");let i=require("@vielzeug/ore"),a=require("@vielzeug/ripple"),o=require("@vielzeug/gesture");var s=e=>e==null?void 0:e===``||e===`true`,c={bottom:{axis:`y`,closingDistance:e=>Math.max(0,e),translate:e=>`translateY(${e}px)`},left:{axis:`x`,closingDistance:e=>Math.max(0,-e),translate:e=>`translateX(${e}px)`},right:{axis:`x`,closingDistance:e=>Math.max(0,e),translate:e=>`translateX(${e}px)`},top:{axis:`y`,closingDistance:e=>Math.max(0,-e),translate:e=>`translateY(${e}px)`}},l=`ore-drawer`;(0,i.define)(l,{props:{backdrop:i.prop.string(),"default-open":i.prop.bool(!1),dismissible:i.prop.bool(!0),"drag-handle-placement":i.prop.oneOf([`outside`,`inset`],`outside`),"initial-focus":i.prop.string(),label:i.prop.string(),open:{default:void 0,parse:s},persistent:i.prop.bool(!1),placement:i.prop.oneOf([`left`,`right`,`top`,`bottom`],`right`),"return-focus":i.prop.bool(!0),size:i.prop.string(),title:i.prop.string()},setup(e){let t=(0,i.getHost)(),r=(0,i.useEmit)(),s=(0,i.useSlots)(),l=(0,i.createId)(`drawer-label`),u=(0,i.ref)(),d=(0,i.ref)(),f=(0,a.signal)(!1),p,m,h=()=>e.label.value??e.title.value??``,g=()=>s.has(`header`).value||!!h(),_=()=>g()||e.dismissible.value,v=()=>s.has(`footer`).value,y=()=>e.placement.value||`right`,b=()=>c[y()],x=(e,t)=>{let n=t===`x`?e.offsetWidth:e.offsetHeight;return Math.min(96,Math.max(36,n*.18))},S=(e,t)=>b().closingDistance(e)>=t,C=e=>{if(!f.value)return;m&&=(clearTimeout(m),void 0);let t=u.value;if(!t){f.value=!1;return}t.style.transition=`none`,e.style.opacity=`0`,e.style.visibility=`hidden`,t.offsetWidth,A(`swipe`)},w=(e,t,n)=>{if(f.value)return;f.value=!0;let r=t.axis===`x`?e.offsetWidth:e.offsetHeight,i=n>=0?Math.max(n,r):Math.min(n,-r),a=t.translate(i);e.style.transition=`transform 180ms cubic-bezier(0.2, 0.9, 0.2, 1), opacity 180ms ease-out`,e.offsetWidth;let o=t=>{t.target===e&&t.propertyName===`transform`&&(e.removeEventListener(`transitionend`,o),C(e))};e.addEventListener(`transitionend`,o);let s=parseFloat(getComputedStyle(e).transitionDuration)*1e3;m=setTimeout(()=>{e.removeEventListener(`transitionend`,o),C(e)},s+50),e.style.transform=a,e.style.opacity=`0.2`},T=e=>{m&&=(clearTimeout(m),void 0),e.style.transition=``,e.style.transform=``,e.style.opacity=``,e.style.visibility=``,f.value=!1},E=({distance:e,reason:t})=>{let n=d.value;if(!n)return;let r=x(n,b().axis);if(t===`release`&&S(e,r)){w(n,b(),e);return}T(n)},{closeWithAnimation:D,handleCancel:O,overlay:k,requestClose:A,watchOpenProp:j}=n.useDialogControl({beforeOpen:e=>{let t=d.value;t&&T(t)},closeRequestDetail:t=>({placement:e.placement.value??`right`}),defaultOpen:e[`default-open`],dialogRef:u,getPanelEl:()=>d.value,host:t,initialFocus:e[`initial-focus`],isPersistent:()=>!!e.persistent.value,onCleanup:i.onCleanup,onEvent:i.onEvent,onNativeClose:e=>{let t=d.value;t&&e!==`swipe`&&T(t);let n=u.value;n&&(n.style.transition=``),r(`open-change`,{open:!1,reason:e})},onOpen:e=>r(`open-change`,{open:!0,reason:e}),openProp:e.open,performClose:(e,t)=>{t===`swipe`?e.close():D()},returnFocus:e[`return-focus`]});return(0,i.onMounted)(()=>{let n=u.value;if(!n)return;let r=t;r.show=()=>{k.open(`programmatic`)},r.hide=()=>{k.close(`programmatic`)},j(),(0,i.onEvent)(n,`cancel`,O),(0,i.onEvent)(n,`click`,t=>{e.persistent.value||p?.active||f.value||t.target===n&&A(`outsideClick`)});let a=d.value?.querySelector(`[part="drag-handle"]`);return a&&(p=(0,o.createPanGesture)(a,{axis:()=>b().axis,disabled:()=>f.value,onEnd:E,onMove:({distance:e})=>{let t=d.value;if(!t)return;let n=b(),r=x(t,n.axis),i=n.closingDistance(e),a=Math.min(i/r,1);t.style.transition=`none`,t.style.transform=n.translate(e),t.style.opacity=String(1-a*.4)}})),()=>{p?.dispose(),p=void 0,k.dispose()}}),i.html`
2
2
  <dialog
3
3
  ref=${u}
4
4
  aria-modal="true"