@vielzeug/refine 1.7.0 → 2.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 (829) hide show
  1. package/README.md +5 -12
  2. package/dist/_dev.cjs +1 -1
  3. package/dist/_dev.cjs.map +1 -1
  4. package/dist/_dev.js +2 -5
  5. package/dist/_dev.js.map +1 -1
  6. package/dist/_virtual/_rolldown/runtime.cjs +1 -1
  7. package/dist/accordion-item.cjs +26 -24
  8. package/dist/accordion-item.cjs.map +1 -1
  9. package/dist/accordion-item.js +53 -51
  10. package/dist/accordion-item.js.map +1 -1
  11. package/dist/accordion.cjs +3 -1
  12. package/dist/accordion.cjs.map +1 -1
  13. package/dist/accordion.js +5 -3
  14. package/dist/accordion.js.map +1 -1
  15. package/dist/alert.cjs +1 -1
  16. package/dist/alert.cjs.map +1 -1
  17. package/dist/alert.js +1 -1
  18. package/dist/alert.js.map +1 -1
  19. package/dist/async.cjs +14 -12
  20. package/dist/async.cjs.map +1 -1
  21. package/dist/async.js +5 -4
  22. package/dist/async.js.map +1 -1
  23. package/dist/avatar-group.cjs +7 -0
  24. package/dist/avatar-group.cjs.map +1 -0
  25. package/dist/avatar-group.js +34 -0
  26. package/dist/avatar-group.js.map +1 -0
  27. package/dist/avatar.cjs +21 -16
  28. package/dist/avatar.cjs.map +1 -1
  29. package/dist/avatar.js +38 -54
  30. package/dist/avatar.js.map +1 -1
  31. package/dist/badge.cjs +4 -2
  32. package/dist/badge.cjs.map +1 -1
  33. package/dist/badge.js +6 -4
  34. package/dist/badge.js.map +1 -1
  35. package/dist/box.cjs +3 -1
  36. package/dist/box.cjs.map +1 -1
  37. package/dist/box.js +24 -18
  38. package/dist/box.js.map +1 -1
  39. package/dist/breadcrumb.cjs +4 -4
  40. package/dist/breadcrumb.cjs.map +1 -1
  41. package/dist/breadcrumb.js +4 -4
  42. package/dist/breadcrumb.js.map +1 -1
  43. package/dist/button-group.cjs +3 -3
  44. package/dist/button-group.cjs.map +1 -1
  45. package/dist/button-group.js +18 -16
  46. package/dist/button-group.js.map +1 -1
  47. package/dist/button.cjs +16 -12
  48. package/dist/button.cjs.map +1 -1
  49. package/dist/button.js +31 -28
  50. package/dist/button.js.map +1 -1
  51. package/dist/calendar.cjs +94 -69
  52. package/dist/calendar.cjs.map +1 -1
  53. package/dist/calendar.js +131 -99
  54. package/dist/calendar.js.map +1 -1
  55. package/dist/card.cjs +7 -7
  56. package/dist/card.cjs.map +1 -1
  57. package/dist/card.js +53 -49
  58. package/dist/card.js.map +1 -1
  59. package/dist/carousel.cjs +65 -57
  60. package/dist/carousel.cjs.map +1 -1
  61. package/dist/carousel.js +157 -201
  62. package/dist/carousel.js.map +1 -1
  63. package/dist/chat-message.cjs +21 -19
  64. package/dist/chat-message.cjs.map +1 -1
  65. package/dist/chat-message.js +18 -15
  66. package/dist/chat-message.js.map +1 -1
  67. package/dist/checkbox-group.cjs +12 -10
  68. package/dist/checkbox-group.cjs.map +1 -1
  69. package/dist/checkbox-group.js +75 -77
  70. package/dist/checkbox-group.js.map +1 -1
  71. package/dist/checkbox.cjs +4 -4
  72. package/dist/checkbox.cjs.map +1 -1
  73. package/dist/checkbox.js +55 -55
  74. package/dist/checkbox.js.map +1 -1
  75. package/dist/chip.cjs +22 -20
  76. package/dist/chip.cjs.map +1 -1
  77. package/dist/chip.js +15 -12
  78. package/dist/chip.js.map +1 -1
  79. package/dist/code-window.cjs +11 -5
  80. package/dist/code-window.cjs.map +1 -1
  81. package/dist/code-window.js +9 -4
  82. package/dist/code-window.js.map +1 -1
  83. package/dist/combobox.cjs +63 -58
  84. package/dist/combobox.cjs.map +1 -1
  85. package/dist/combobox.js +199 -197
  86. package/dist/combobox.js.map +1 -1
  87. package/dist/command-palette.cjs +49 -29
  88. package/dist/command-palette.cjs.map +1 -1
  89. package/dist/command-palette.js +150 -119
  90. package/dist/command-palette.js.map +1 -1
  91. package/dist/content/avatar/avatar-group.d.ts +33 -0
  92. package/dist/content/avatar/avatar-group.d.ts.map +1 -0
  93. package/dist/content/avatar/avatar.d.ts +0 -32
  94. package/dist/content/avatar/avatar.d.ts.map +1 -1
  95. package/dist/content/card/card.css.cjs +1 -1
  96. package/dist/content/card/card.css.cjs.map +1 -1
  97. package/dist/content/card/card.css.js +1 -1
  98. package/dist/content/card/card.css.js.map +1 -1
  99. package/dist/content/card/card.d.ts.map +1 -1
  100. package/dist/content/carousel/carousel-slide.cjs +3 -1
  101. package/dist/content/carousel/carousel-slide.cjs.map +1 -1
  102. package/dist/content/carousel/carousel-slide.css.cjs +1 -1
  103. package/dist/content/carousel/carousel-slide.css.cjs.map +1 -1
  104. package/dist/content/carousel/carousel-slide.css.js +1 -1
  105. package/dist/content/carousel/carousel-slide.css.js.map +1 -1
  106. package/dist/content/carousel/carousel-slide.js +3 -1
  107. package/dist/content/carousel/carousel-slide.js.map +1 -1
  108. package/dist/content/carousel/carousel.css.cjs +1 -1
  109. package/dist/content/carousel/carousel.css.cjs.map +1 -1
  110. package/dist/content/carousel/carousel.css.js +1 -1
  111. package/dist/content/carousel/carousel.css.js.map +1 -1
  112. package/dist/content/carousel/carousel.d.ts +5 -19
  113. package/dist/content/carousel/carousel.d.ts.map +1 -1
  114. package/dist/content/chat-message/chat-message.d.ts.map +1 -1
  115. package/dist/content/code-window/code-window.d.ts.map +1 -1
  116. package/dist/content/icon/icon.d.ts.map +1 -1
  117. package/dist/content/index.d.ts +10 -2
  118. package/dist/content/index.d.ts.map +1 -1
  119. package/dist/content/list/_list-item-reveal.cjs +1 -1
  120. package/dist/content/list/_list-item-reveal.cjs.map +1 -1
  121. package/dist/content/list/_list-item-reveal.d.ts +2 -2
  122. package/dist/content/list/_list-item-reveal.d.ts.map +1 -1
  123. package/dist/content/list/_list-item-reveal.js +2 -2
  124. package/dist/content/list/_list-item-reveal.js.map +1 -1
  125. package/dist/content/list/list.d.ts.map +1 -1
  126. package/dist/content/marquee/index.d.ts +2 -0
  127. package/dist/content/marquee/index.d.ts.map +1 -0
  128. package/dist/content/marquee/marquee.css.cjs +2 -0
  129. package/dist/content/marquee/marquee.css.cjs.map +1 -0
  130. package/dist/content/marquee/marquee.css.js +6 -0
  131. package/dist/content/marquee/marquee.css.js.map +1 -0
  132. package/dist/content/marquee/marquee.d.ts +44 -0
  133. package/dist/content/marquee/marquee.d.ts.map +1 -0
  134. package/dist/content/stepper/_is-step-navigable.cjs +2 -0
  135. package/dist/content/stepper/_is-step-navigable.cjs.map +1 -0
  136. package/dist/content/stepper/_is-step-navigable.d.ts +14 -0
  137. package/dist/content/stepper/_is-step-navigable.d.ts.map +1 -0
  138. package/dist/content/stepper/_is-step-navigable.js +8 -0
  139. package/dist/content/stepper/_is-step-navigable.js.map +1 -0
  140. package/dist/content/stepper/step.css.cjs +2 -0
  141. package/dist/content/stepper/step.css.cjs.map +1 -0
  142. package/dist/content/stepper/step.css.js +6 -0
  143. package/dist/content/stepper/step.css.js.map +1 -0
  144. package/dist/content/stepper/step.d.ts +63 -0
  145. package/dist/content/stepper/step.d.ts.map +1 -0
  146. package/dist/content/stepper/stepper.css.cjs +2 -0
  147. package/dist/content/stepper/stepper.css.cjs.map +1 -0
  148. package/dist/content/stepper/stepper.css.js +6 -0
  149. package/dist/content/stepper/stepper.css.js.map +1 -0
  150. package/dist/content/stepper/stepper.d.ts +88 -0
  151. package/dist/content/stepper/stepper.d.ts.map +1 -0
  152. package/dist/copy-command.cjs +9 -3
  153. package/dist/copy-command.cjs.map +1 -1
  154. package/dist/copy-command.js +9 -3
  155. package/dist/copy-command.js.map +1 -1
  156. package/dist/{headless → core}/_internal.d.ts +3 -5
  157. package/dist/core/_internal.d.ts.map +1 -0
  158. package/dist/core/announcer.cjs.map +1 -0
  159. package/dist/core/announcer.d.ts.map +1 -0
  160. package/dist/{headless → core}/announcer.js +1 -1
  161. package/dist/core/announcer.js.map +1 -0
  162. package/dist/core/aria-reflection.cjs.map +1 -0
  163. package/dist/core/aria-reflection.d.ts.map +1 -0
  164. package/dist/{headless → core}/aria-reflection.js +1 -1
  165. package/dist/core/aria-reflection.js.map +1 -0
  166. package/dist/core/auto-resize.cjs.map +1 -0
  167. package/dist/core/auto-resize.d.ts.map +1 -0
  168. package/dist/{headless → core}/auto-resize.js +1 -1
  169. package/dist/core/auto-resize.js.map +1 -0
  170. package/dist/core/checkable.cjs.map +1 -0
  171. package/dist/core/checkable.d.ts.map +1 -0
  172. package/dist/{headless → core}/checkable.js +1 -1
  173. package/dist/core/checkable.js.map +1 -0
  174. package/dist/core/choice-field.cjs +2 -0
  175. package/dist/core/choice-field.cjs.map +1 -0
  176. package/dist/core/choice-field.d.ts.map +1 -0
  177. package/dist/{headless → core}/choice-field.js +3 -2
  178. package/dist/core/choice-field.js.map +1 -0
  179. package/dist/core/composer.cjs.map +1 -0
  180. package/dist/core/composer.d.ts.map +1 -0
  181. package/dist/{headless → core}/composer.js +1 -1
  182. package/dist/core/composer.js.map +1 -0
  183. package/dist/{headless → core}/date-picker.cjs +1 -1
  184. package/dist/core/date-picker.cjs.map +1 -0
  185. package/dist/core/date-picker.d.ts.map +1 -0
  186. package/dist/{headless → core}/date-picker.js +3 -3
  187. package/dist/core/date-picker.js.map +1 -0
  188. package/dist/core/direction.cjs.map +1 -0
  189. package/dist/core/direction.d.ts.map +1 -0
  190. package/dist/{headless → core}/direction.js +1 -1
  191. package/dist/core/direction.js.map +1 -0
  192. package/dist/core/field-base.cjs +2 -0
  193. package/dist/core/field-base.cjs.map +1 -0
  194. package/dist/{headless → core}/field-base.d.ts +3 -3
  195. package/dist/core/field-base.d.ts.map +1 -0
  196. package/dist/core/field-base.js +66 -0
  197. package/dist/core/field-base.js.map +1 -0
  198. package/dist/core/focus.cjs.map +1 -0
  199. package/dist/core/focus.d.ts.map +1 -0
  200. package/dist/{headless → core}/focus.js +1 -1
  201. package/dist/core/focus.js.map +1 -0
  202. package/dist/{headless → core}/index.d.ts +7 -6
  203. package/dist/core/index.d.ts.map +1 -0
  204. package/dist/{headless → core}/keyboard.cjs +1 -1
  205. package/dist/core/keyboard.cjs.map +1 -0
  206. package/dist/core/keyboard.d.ts.map +1 -0
  207. package/dist/{headless → core}/keyboard.js +2 -2
  208. package/dist/core/keyboard.js.map +1 -0
  209. package/dist/core/light-dom.cjs.map +1 -0
  210. package/dist/core/light-dom.d.ts.map +1 -0
  211. package/dist/{headless → core}/light-dom.js +1 -1
  212. package/dist/core/light-dom.js.map +1 -0
  213. package/dist/core/nav.cjs.map +1 -0
  214. package/dist/core/nav.d.ts.map +1 -0
  215. package/dist/{headless → core}/nav.js +1 -1
  216. package/dist/core/nav.js.map +1 -0
  217. package/dist/core/numbers.cjs.map +1 -0
  218. package/dist/core/numbers.d.ts.map +1 -0
  219. package/dist/{headless → core}/numbers.js +1 -1
  220. package/dist/core/numbers.js.map +1 -0
  221. package/dist/core/option-list.cjs +2 -0
  222. package/dist/core/option-list.cjs.map +1 -0
  223. package/dist/core/option-list.d.ts +49 -0
  224. package/dist/core/option-list.d.ts.map +1 -0
  225. package/dist/core/option-list.js +65 -0
  226. package/dist/core/option-list.js.map +1 -0
  227. package/dist/core/ore.cjs.map +1 -0
  228. package/dist/{headless → core}/ore.d.ts +2 -2
  229. package/dist/core/ore.d.ts.map +1 -0
  230. package/dist/{headless → core}/ore.js +1 -1
  231. package/dist/core/ore.js.map +1 -0
  232. package/dist/core/overlay.cjs +2 -0
  233. package/dist/core/overlay.cjs.map +1 -0
  234. package/dist/core/overlay.d.ts +41 -0
  235. package/dist/core/overlay.d.ts.map +1 -0
  236. package/dist/core/overlay.js +17 -0
  237. package/dist/core/overlay.js.map +1 -0
  238. package/dist/core/paginated-list.d.ts.map +1 -0
  239. package/dist/core/parse.cjs.map +1 -0
  240. package/dist/core/parse.d.ts.map +1 -0
  241. package/dist/{headless → core}/parse.js +1 -1
  242. package/dist/core/parse.js.map +1 -0
  243. package/dist/core/positioner.cjs +2 -0
  244. package/dist/core/positioner.cjs.map +1 -0
  245. package/dist/core/positioner.d.ts.map +1 -0
  246. package/dist/{headless → core}/positioner.js +7 -7
  247. package/dist/core/positioner.js.map +1 -0
  248. package/dist/core/ref-callback.cjs +2 -0
  249. package/dist/core/ref-callback.cjs.map +1 -0
  250. package/dist/core/ref-callback.d.ts.map +1 -0
  251. package/dist/{headless → core}/ref-callback.js +2 -2
  252. package/dist/core/ref-callback.js.map +1 -0
  253. package/dist/core/signals.cjs +2 -0
  254. package/dist/core/signals.cjs.map +1 -0
  255. package/dist/core/signals.d.ts.map +1 -0
  256. package/dist/{headless → core}/signals.js +3 -2
  257. package/dist/core/signals.js.map +1 -0
  258. package/dist/core/slider.cjs +2 -0
  259. package/dist/core/slider.cjs.map +1 -0
  260. package/dist/core/slider.d.ts.map +1 -0
  261. package/dist/{headless → core}/slider.js +3 -3
  262. package/dist/{headless/slider.cjs.map → core/slider.js.map} +1 -1
  263. package/dist/core/spinner.cjs +2 -0
  264. package/dist/core/spinner.cjs.map +1 -0
  265. package/dist/core/spinner.d.ts.map +1 -0
  266. package/dist/{headless → core}/spinner.js +3 -3
  267. package/dist/{headless/spinner.cjs.map → core/spinner.js.map} +1 -1
  268. package/dist/core/swipe.cjs.map +1 -0
  269. package/dist/core/swipe.d.ts.map +1 -0
  270. package/dist/{headless → core}/swipe.js +1 -1
  271. package/dist/core/swipe.js.map +1 -0
  272. package/dist/core/text-field.cjs.map +1 -0
  273. package/dist/core/text-field.d.ts.map +1 -0
  274. package/dist/{headless → core}/text-field.js +1 -1
  275. package/dist/core/text-field.js.map +1 -0
  276. package/dist/core/typeahead.cjs.map +1 -0
  277. package/dist/core/typeahead.d.ts.map +1 -0
  278. package/dist/{headless → core}/typeahead.js +1 -1
  279. package/dist/core/typeahead.js.map +1 -0
  280. package/dist/custom-elements.json +4433 -3949
  281. package/dist/datagrid.cjs +320 -271
  282. package/dist/datagrid.cjs.map +1 -1
  283. package/dist/datagrid.js +489 -435
  284. package/dist/datagrid.js.map +1 -1
  285. package/dist/date-picker.cjs +77 -62
  286. package/dist/date-picker.cjs.map +1 -1
  287. package/dist/date-picker.js +169 -146
  288. package/dist/date-picker.js.map +1 -1
  289. package/dist/dialog.cjs +3 -3
  290. package/dist/dialog.cjs.map +1 -1
  291. package/dist/dialog.js +18 -7
  292. package/dist/dialog.js.map +1 -1
  293. package/dist/disclosure/tab-panel/tab-panel.d.ts.map +1 -1
  294. package/dist/disclosure/tabs/tabs.d.ts.map +1 -1
  295. package/dist/drawer.cjs +5 -5
  296. package/dist/drawer.cjs.map +1 -1
  297. package/dist/drawer.js +52 -47
  298. package/dist/drawer.js.map +1 -1
  299. package/dist/errors.cjs.map +1 -1
  300. package/dist/errors.js.map +1 -1
  301. package/dist/feedback/async/async.d.ts.map +1 -1
  302. package/dist/feedback/chip/chip.d.ts.map +1 -1
  303. package/dist/feedback/progress/progress.d.ts.map +1 -1
  304. package/dist/feedback/skeleton/skeleton.d.ts.map +1 -1
  305. package/dist/feedback/toast/index.d.ts +1 -1
  306. package/dist/feedback/toast/index.d.ts.map +1 -1
  307. package/dist/feedback/toast/toast.d.ts +16 -68
  308. package/dist/feedback/toast/toast.d.ts.map +1 -1
  309. package/dist/feedback/typing-indicator/typing-indicator.d.ts +1 -1
  310. package/dist/file-input.cjs +111 -78
  311. package/dist/file-input.cjs.map +1 -1
  312. package/dist/file-input.js +220 -184
  313. package/dist/file-input.js.map +1 -1
  314. package/dist/grid-item.cjs +3 -1
  315. package/dist/grid-item.cjs.map +1 -1
  316. package/dist/grid-item.js +3 -1
  317. package/dist/grid-item.js.map +1 -1
  318. package/dist/grid.cjs +3 -1
  319. package/dist/grid.cjs.map +1 -1
  320. package/dist/grid.js +6 -5
  321. package/dist/grid.js.map +1 -1
  322. package/dist/icon.cjs +5 -1
  323. package/dist/icon.cjs.map +1 -1
  324. package/dist/icon.js +50 -47
  325. package/dist/icon.js.map +1 -1
  326. package/dist/index.cjs +1 -1
  327. package/dist/index.d.ts +7 -8
  328. package/dist/index.d.ts.map +1 -1
  329. package/dist/index.js +2 -67
  330. package/dist/input.cjs +44 -40
  331. package/dist/input.cjs.map +1 -1
  332. package/dist/input.js +132 -130
  333. package/dist/input.js.map +1 -1
  334. package/dist/inputs/button-group/button-group.css.cjs +1 -1
  335. package/dist/inputs/button-group/button-group.css.cjs.map +1 -1
  336. package/dist/inputs/button-group/button-group.css.js +1 -1
  337. package/dist/inputs/button-group/button-group.css.js.map +1 -1
  338. package/dist/inputs/button-group/button-group.d.ts +6 -3
  339. package/dist/inputs/button-group/button-group.d.ts.map +1 -1
  340. package/dist/inputs/calendar/calendar.d.ts.map +1 -1
  341. package/dist/inputs/checkbox/checkbox.d.ts +6 -5
  342. package/dist/inputs/checkbox/checkbox.d.ts.map +1 -1
  343. package/dist/inputs/checkbox-group/checkbox-group.d.ts +1 -1
  344. package/dist/inputs/checkbox-group/checkbox-group.d.ts.map +1 -1
  345. package/dist/inputs/combobox/combobox.d.ts +4 -2
  346. package/dist/inputs/combobox/combobox.d.ts.map +1 -1
  347. package/dist/inputs/combobox/combobox.types.d.ts +5 -7
  348. package/dist/inputs/combobox/combobox.types.d.ts.map +1 -1
  349. package/dist/inputs/datagrid/datagrid-column.cjs +1 -1
  350. package/dist/inputs/datagrid/datagrid-column.cjs.map +1 -1
  351. package/dist/inputs/datagrid/datagrid-column.d.ts +1 -1
  352. package/dist/inputs/datagrid/datagrid-column.d.ts.map +1 -1
  353. package/dist/inputs/datagrid/datagrid-column.js +5 -5
  354. package/dist/inputs/datagrid/datagrid-column.js.map +1 -1
  355. package/dist/inputs/datagrid/datagrid-model.cjs +2 -0
  356. package/dist/inputs/datagrid/datagrid-model.cjs.map +1 -0
  357. package/dist/inputs/datagrid/datagrid-model.d.ts +101 -0
  358. package/dist/inputs/datagrid/datagrid-model.d.ts.map +1 -0
  359. package/dist/inputs/datagrid/datagrid-model.js +202 -0
  360. package/dist/inputs/datagrid/datagrid-model.js.map +1 -0
  361. package/dist/inputs/datagrid/datagrid-nav.cjs.map +1 -1
  362. package/dist/inputs/datagrid/datagrid.d.ts +44 -45
  363. package/dist/inputs/datagrid/datagrid.d.ts.map +1 -1
  364. package/dist/inputs/date-picker/date-picker.d.ts +4 -4
  365. package/dist/inputs/date-picker/date-picker.d.ts.map +1 -1
  366. package/dist/inputs/file-input/file-input-upload.cjs +1 -1
  367. package/dist/inputs/file-input/file-input-upload.cjs.map +1 -1
  368. package/dist/inputs/file-input/file-input-upload.d.ts.map +1 -1
  369. package/dist/inputs/file-input/file-input-upload.js +6 -3
  370. package/dist/inputs/file-input/file-input-upload.js.map +1 -1
  371. package/dist/inputs/file-input/file-input.d.ts.map +1 -1
  372. package/dist/inputs/index.d.ts +0 -4
  373. package/dist/inputs/index.d.ts.map +1 -1
  374. package/dist/inputs/input/input.d.ts +4 -10
  375. package/dist/inputs/input/input.d.ts.map +1 -1
  376. package/dist/inputs/message-composer/message-composer.d.ts +6 -10
  377. package/dist/inputs/message-composer/message-composer.d.ts.map +1 -1
  378. package/dist/inputs/number-input/number-input.d.ts +4 -10
  379. package/dist/inputs/number-input/number-input.d.ts.map +1 -1
  380. package/dist/inputs/otp-input/otp-input.d.ts +4 -6
  381. package/dist/inputs/otp-input/otp-input.d.ts.map +1 -1
  382. package/dist/inputs/radio/radio.d.ts +4 -3
  383. package/dist/inputs/radio/radio.d.ts.map +1 -1
  384. package/dist/inputs/radio-group/radio-group.d.ts +1 -1
  385. package/dist/inputs/radio-group/radio-group.d.ts.map +1 -1
  386. package/dist/inputs/rating/rating.d.ts +4 -5
  387. package/dist/inputs/rating/rating.d.ts.map +1 -1
  388. package/dist/inputs/select/select.d.ts +7 -9
  389. package/dist/inputs/select/select.d.ts.map +1 -1
  390. package/dist/inputs/shared/field-binding.cjs.map +1 -1
  391. package/dist/inputs/shared/field-binding.d.ts +1 -1
  392. package/dist/inputs/shared/field-binding.js.map +1 -1
  393. package/dist/inputs/shared/index.d.ts +0 -1
  394. package/dist/inputs/shared/index.d.ts.map +1 -1
  395. package/dist/inputs/shared/native-field-event.cjs +2 -0
  396. package/dist/inputs/shared/native-field-event.cjs.map +1 -0
  397. package/dist/inputs/shared/native-field-event.d.ts +6 -0
  398. package/dist/inputs/shared/native-field-event.d.ts.map +1 -0
  399. package/dist/inputs/shared/native-field-event.js +29 -0
  400. package/dist/inputs/shared/native-field-event.js.map +1 -0
  401. package/dist/inputs/shared/templates.cjs +18 -12
  402. package/dist/inputs/shared/templates.cjs.map +1 -1
  403. package/dist/inputs/shared/templates.d.ts +1 -1
  404. package/dist/inputs/shared/templates.d.ts.map +1 -1
  405. package/dist/inputs/shared/templates.js +19 -13
  406. package/dist/inputs/shared/templates.js.map +1 -1
  407. package/dist/inputs/slider/slider.css.cjs +1 -1
  408. package/dist/inputs/slider/slider.css.cjs.map +1 -1
  409. package/dist/inputs/slider/slider.css.js +1 -1
  410. package/dist/inputs/slider/slider.css.js.map +1 -1
  411. package/dist/inputs/slider/slider.d.ts +7 -10
  412. package/dist/inputs/slider/slider.d.ts.map +1 -1
  413. package/dist/inputs/switch/switch.d.ts +4 -3
  414. package/dist/inputs/switch/switch.d.ts.map +1 -1
  415. package/dist/inputs/textarea/textarea.d.ts +4 -10
  416. package/dist/inputs/textarea/textarea.d.ts.map +1 -1
  417. package/dist/inputs/time-picker/time-picker.d.ts +4 -4
  418. package/dist/inputs/time-picker/time-picker.d.ts.map +1 -1
  419. package/dist/layout/box/box.d.ts.map +1 -1
  420. package/dist/layout/navbar/navbar.css.cjs +1 -1
  421. package/dist/layout/navbar/navbar.css.cjs.map +1 -1
  422. package/dist/layout/navbar/navbar.css.js +1 -1
  423. package/dist/layout/navbar/navbar.css.js.map +1 -1
  424. package/dist/layout/navbar/navbar.d.ts +10 -0
  425. package/dist/layout/navbar/navbar.d.ts.map +1 -1
  426. package/dist/layout/sidebar/sidebar-item.css.cjs +1 -1
  427. package/dist/layout/sidebar/sidebar-item.css.cjs.map +1 -1
  428. package/dist/layout/sidebar/sidebar-item.css.js +1 -1
  429. package/dist/layout/sidebar/sidebar-item.css.js.map +1 -1
  430. package/dist/layout/sidebar/sidebar.css.cjs +1 -1
  431. package/dist/layout/sidebar/sidebar.css.cjs.map +1 -1
  432. package/dist/layout/sidebar/sidebar.css.js +1 -1
  433. package/dist/layout/sidebar/sidebar.css.js.map +1 -1
  434. package/dist/layout/sidebar/sidebar.d.ts.map +1 -1
  435. package/dist/list-item.cjs +2 -2
  436. package/dist/list-item.cjs.map +1 -1
  437. package/dist/list-item.js +4 -4
  438. package/dist/list-item.js.map +1 -1
  439. package/dist/list.cjs +3 -1
  440. package/dist/list.cjs.map +1 -1
  441. package/dist/list.js +28 -25
  442. package/dist/list.js.map +1 -1
  443. package/dist/marquee.cjs +32 -0
  444. package/dist/marquee.cjs.map +1 -0
  445. package/dist/marquee.js +93 -0
  446. package/dist/marquee.js.map +1 -0
  447. package/dist/menu.cjs +7 -7
  448. package/dist/menu.cjs.map +1 -1
  449. package/dist/menu.js +135 -103
  450. package/dist/menu.js.map +1 -1
  451. package/dist/message-composer.cjs +33 -31
  452. package/dist/message-composer.cjs.map +1 -1
  453. package/dist/message-composer.js +123 -123
  454. package/dist/message-composer.js.map +1 -1
  455. package/dist/navbar.cjs +17 -15
  456. package/dist/navbar.cjs.map +1 -1
  457. package/dist/navbar.js +108 -89
  458. package/dist/navbar.js.map +1 -1
  459. package/dist/number-input.cjs +19 -19
  460. package/dist/number-input.cjs.map +1 -1
  461. package/dist/number-input.js +94 -97
  462. package/dist/number-input.js.map +1 -1
  463. package/dist/otp-input.cjs +15 -13
  464. package/dist/otp-input.cjs.map +1 -1
  465. package/dist/otp-input.js +83 -82
  466. package/dist/otp-input.js.map +1 -1
  467. package/dist/overlay/command-palette/command-palette.d.ts +2 -2
  468. package/dist/overlay/command-palette/command-palette.d.ts.map +1 -1
  469. package/dist/overlay/command-palette/command-palette.types.d.ts +4 -5
  470. package/dist/overlay/command-palette/command-palette.types.d.ts.map +1 -1
  471. package/dist/overlay/dialog/dialog.d.ts +7 -6
  472. package/dist/overlay/dialog/dialog.d.ts.map +1 -1
  473. package/dist/overlay/drawer/drawer.d.ts +7 -10
  474. package/dist/overlay/drawer/drawer.d.ts.map +1 -1
  475. package/dist/overlay/index.d.ts +1 -1
  476. package/dist/overlay/index.d.ts.map +1 -1
  477. package/dist/overlay/menu/menu.d.ts +9 -7
  478. package/dist/overlay/menu/menu.d.ts.map +1 -1
  479. package/dist/overlay/popover/popover.d.ts +6 -11
  480. package/dist/overlay/popover/popover.d.ts.map +1 -1
  481. package/dist/overlay/shared/await-exit.cjs +1 -1
  482. package/dist/overlay/shared/await-exit.cjs.map +1 -1
  483. package/dist/overlay/shared/await-exit.js +1 -1
  484. package/dist/overlay/shared/await-exit.js.map +1 -1
  485. package/dist/overlay/shared/use-dialog.cjs +1 -1
  486. package/dist/overlay/shared/use-dialog.cjs.map +1 -1
  487. package/dist/overlay/shared/use-dialog.d.ts +13 -3
  488. package/dist/overlay/shared/use-dialog.d.ts.map +1 -1
  489. package/dist/overlay/shared/use-dialog.js +80 -72
  490. package/dist/overlay/shared/use-dialog.js.map +1 -1
  491. package/dist/overlay/shared/use-floating-trigger.cjs +1 -1
  492. package/dist/overlay/shared/use-floating-trigger.cjs.map +1 -1
  493. package/dist/overlay/shared/use-floating-trigger.d.ts +3 -1
  494. package/dist/overlay/shared/use-floating-trigger.d.ts.map +1 -1
  495. package/dist/overlay/shared/use-floating-trigger.js +64 -70
  496. package/dist/overlay/shared/use-floating-trigger.js.map +1 -1
  497. package/dist/overlay/tooltip/tooltip.d.ts +9 -0
  498. package/dist/overlay/tooltip/tooltip.d.ts.map +1 -1
  499. package/dist/pagination.cjs +69 -55
  500. package/dist/pagination.cjs.map +1 -1
  501. package/dist/pagination.js +70 -56
  502. package/dist/pagination.js.map +1 -1
  503. package/dist/password-strength.cjs +6 -4
  504. package/dist/password-strength.cjs.map +1 -1
  505. package/dist/password-strength.js +6 -4
  506. package/dist/password-strength.js.map +1 -1
  507. package/dist/popover.cjs +4 -4
  508. package/dist/popover.cjs.map +1 -1
  509. package/dist/popover.js +28 -17
  510. package/dist/popover.js.map +1 -1
  511. package/dist/progress.cjs +25 -17
  512. package/dist/progress.cjs.map +1 -1
  513. package/dist/progress.js +29 -22
  514. package/dist/progress.js.map +1 -1
  515. package/dist/radio-group.cjs +14 -12
  516. package/dist/radio-group.cjs.map +1 -1
  517. package/dist/radio-group.js +88 -90
  518. package/dist/radio-group.js.map +1 -1
  519. package/dist/radio.cjs +4 -4
  520. package/dist/radio.cjs.map +1 -1
  521. package/dist/radio.js +90 -90
  522. package/dist/radio.js.map +1 -1
  523. package/dist/rating.cjs +18 -16
  524. package/dist/rating.cjs.map +1 -1
  525. package/dist/rating.js +69 -69
  526. package/dist/rating.js.map +1 -1
  527. package/dist/refine.cjs +1670 -1325
  528. package/dist/refine.cjs.map +1 -1
  529. package/dist/refine.iife.js +1673 -1328
  530. package/dist/refine.iife.js.map +1 -1
  531. package/dist/refine.js +1758 -1413
  532. package/dist/refine.js.map +1 -1
  533. package/dist/register.d.ts +21 -0
  534. package/dist/register.d.ts.map +1 -0
  535. package/dist/select.cjs +59 -51
  536. package/dist/select.cjs.map +1 -1
  537. package/dist/select.js +189 -182
  538. package/dist/select.js.map +1 -1
  539. package/dist/separator.cjs +9 -9
  540. package/dist/separator.cjs.map +1 -1
  541. package/dist/separator.js +9 -9
  542. package/dist/separator.js.map +1 -1
  543. package/dist/shared/index.d.ts +1 -1
  544. package/dist/shared/prop-bundles.cjs +1 -1
  545. package/dist/shared/prop-bundles.cjs.map +1 -1
  546. package/dist/shared/prop-bundles.js +4 -2
  547. package/dist/shared/prop-bundles.js.map +1 -1
  548. package/dist/shared/size-presets.cjs +1 -1
  549. package/dist/shared/size-presets.cjs.map +1 -1
  550. package/dist/shared/size-presets.d.ts +3 -0
  551. package/dist/shared/size-presets.d.ts.map +1 -1
  552. package/dist/shared/size-presets.js +4 -1
  553. package/dist/shared/size-presets.js.map +1 -1
  554. package/dist/sidebar.cjs +8 -8
  555. package/dist/sidebar.cjs.map +1 -1
  556. package/dist/sidebar.js +25 -25
  557. package/dist/sidebar.js.map +1 -1
  558. package/dist/skeleton.cjs +4 -6
  559. package/dist/skeleton.cjs.map +1 -1
  560. package/dist/skeleton.js +21 -22
  561. package/dist/skeleton.js.map +1 -1
  562. package/dist/slider.cjs +14 -14
  563. package/dist/slider.cjs.map +1 -1
  564. package/dist/slider.js +160 -168
  565. package/dist/slider.js.map +1 -1
  566. package/dist/step.cjs +47 -0
  567. package/dist/step.cjs.map +1 -0
  568. package/dist/step.js +127 -0
  569. package/dist/step.js.map +1 -0
  570. package/dist/stepper.cjs +8 -0
  571. package/dist/stepper.cjs.map +1 -0
  572. package/dist/stepper.js +101 -0
  573. package/dist/stepper.js.map +1 -0
  574. package/dist/styles/index.d.ts +0 -28
  575. package/dist/styles/index.d.ts.map +1 -1
  576. package/dist/styles/mixins/shape.css.cjs +2 -2
  577. package/dist/styles/mixins/shape.css.cjs.map +1 -1
  578. package/dist/styles/mixins/shape.css.js +6 -6
  579. package/dist/styles/mixins/shape.css.js.map +1 -1
  580. package/dist/styles/tokens.css +4 -0
  581. package/dist/switch.cjs +4 -4
  582. package/dist/switch.cjs.map +1 -1
  583. package/dist/switch.js +44 -44
  584. package/dist/switch.js.map +1 -1
  585. package/dist/tab-item.cjs +3 -3
  586. package/dist/tab-item.cjs.map +1 -1
  587. package/dist/tab-item.js +24 -24
  588. package/dist/tab-item.js.map +1 -1
  589. package/dist/tab-panel.cjs +9 -7
  590. package/dist/tab-panel.cjs.map +1 -1
  591. package/dist/tab-panel.js +15 -14
  592. package/dist/tab-panel.js.map +1 -1
  593. package/dist/table.cjs +3 -1
  594. package/dist/table.cjs.map +1 -1
  595. package/dist/table.js +3 -1
  596. package/dist/table.js.map +1 -1
  597. package/dist/tabs.cjs +6 -6
  598. package/dist/tabs.cjs.map +1 -1
  599. package/dist/tabs.js +30 -29
  600. package/dist/tabs.js.map +1 -1
  601. package/dist/text.cjs +3 -1
  602. package/dist/text.cjs.map +1 -1
  603. package/dist/text.js +3 -1
  604. package/dist/text.js.map +1 -1
  605. package/dist/textarea.cjs +22 -22
  606. package/dist/textarea.cjs.map +1 -1
  607. package/dist/textarea.js +110 -112
  608. package/dist/textarea.js.map +1 -1
  609. package/dist/time-picker.cjs +69 -61
  610. package/dist/time-picker.cjs.map +1 -1
  611. package/dist/time-picker.js +146 -132
  612. package/dist/time-picker.js.map +1 -1
  613. package/dist/toast.cjs +22 -22
  614. package/dist/toast.cjs.map +1 -1
  615. package/dist/toast.js +280 -173
  616. package/dist/toast.js.map +1 -1
  617. package/dist/tooltip.cjs +5 -5
  618. package/dist/tooltip.cjs.map +1 -1
  619. package/dist/tooltip.js +61 -51
  620. package/dist/tooltip.js.map +1 -1
  621. package/dist/typing-indicator.cjs +1 -1
  622. package/dist/typing-indicator.cjs.map +1 -1
  623. package/dist/typing-indicator.js +5 -5
  624. package/dist/typing-indicator.js.map +1 -1
  625. package/dist/utils/link.cjs.map +1 -1
  626. package/dist/utils/link.d.ts +2 -2
  627. package/package.json +36 -117
  628. package/dist/form.cjs +0 -11
  629. package/dist/form.cjs.map +0 -1
  630. package/dist/form.js +0 -59
  631. package/dist/form.js.map +0 -1
  632. package/dist/headless/_internal.d.ts.map +0 -1
  633. package/dist/headless/announcer.cjs.map +0 -1
  634. package/dist/headless/announcer.d.ts.map +0 -1
  635. package/dist/headless/announcer.js.map +0 -1
  636. package/dist/headless/aria-reflection.cjs.map +0 -1
  637. package/dist/headless/aria-reflection.d.ts.map +0 -1
  638. package/dist/headless/aria-reflection.js.map +0 -1
  639. package/dist/headless/auto-resize.cjs.map +0 -1
  640. package/dist/headless/auto-resize.d.ts.map +0 -1
  641. package/dist/headless/auto-resize.js.map +0 -1
  642. package/dist/headless/checkable.cjs.map +0 -1
  643. package/dist/headless/checkable.d.ts.map +0 -1
  644. package/dist/headless/checkable.js.map +0 -1
  645. package/dist/headless/choice-field.cjs +0 -2
  646. package/dist/headless/choice-field.cjs.map +0 -1
  647. package/dist/headless/choice-field.d.ts.map +0 -1
  648. package/dist/headless/choice-field.js.map +0 -1
  649. package/dist/headless/composer.cjs.map +0 -1
  650. package/dist/headless/composer.d.ts.map +0 -1
  651. package/dist/headless/composer.js.map +0 -1
  652. package/dist/headless/datagrid.cjs +0 -2
  653. package/dist/headless/datagrid.cjs.map +0 -1
  654. package/dist/headless/datagrid.d.ts +0 -158
  655. package/dist/headless/datagrid.d.ts.map +0 -1
  656. package/dist/headless/datagrid.js +0 -55
  657. package/dist/headless/datagrid.js.map +0 -1
  658. package/dist/headless/date-picker.cjs.map +0 -1
  659. package/dist/headless/date-picker.d.ts.map +0 -1
  660. package/dist/headless/date-picker.js.map +0 -1
  661. package/dist/headless/direction.cjs.map +0 -1
  662. package/dist/headless/direction.d.ts.map +0 -1
  663. package/dist/headless/direction.js.map +0 -1
  664. package/dist/headless/field-base.cjs +0 -2
  665. package/dist/headless/field-base.cjs.map +0 -1
  666. package/dist/headless/field-base.d.ts.map +0 -1
  667. package/dist/headless/field-base.js +0 -72
  668. package/dist/headless/field-base.js.map +0 -1
  669. package/dist/headless/focus.cjs.map +0 -1
  670. package/dist/headless/focus.d.ts.map +0 -1
  671. package/dist/headless/focus.js.map +0 -1
  672. package/dist/headless/index.d.ts.map +0 -1
  673. package/dist/headless/keyboard.cjs.map +0 -1
  674. package/dist/headless/keyboard.d.ts.map +0 -1
  675. package/dist/headless/keyboard.js.map +0 -1
  676. package/dist/headless/light-dom.cjs.map +0 -1
  677. package/dist/headless/light-dom.d.ts.map +0 -1
  678. package/dist/headless/light-dom.js.map +0 -1
  679. package/dist/headless/nav.cjs.map +0 -1
  680. package/dist/headless/nav.d.ts.map +0 -1
  681. package/dist/headless/nav.js.map +0 -1
  682. package/dist/headless/numbers.cjs.map +0 -1
  683. package/dist/headless/numbers.d.ts.map +0 -1
  684. package/dist/headless/numbers.js.map +0 -1
  685. package/dist/headless/option-list.cjs +0 -2
  686. package/dist/headless/option-list.cjs.map +0 -1
  687. package/dist/headless/option-list.d.ts +0 -107
  688. package/dist/headless/option-list.d.ts.map +0 -1
  689. package/dist/headless/option-list.js +0 -66
  690. package/dist/headless/option-list.js.map +0 -1
  691. package/dist/headless/ore.cjs.map +0 -1
  692. package/dist/headless/ore.d.ts.map +0 -1
  693. package/dist/headless/ore.js.map +0 -1
  694. package/dist/headless/overlay.cjs +0 -2
  695. package/dist/headless/overlay.cjs.map +0 -1
  696. package/dist/headless/overlay.d.ts +0 -64
  697. package/dist/headless/overlay.d.ts.map +0 -1
  698. package/dist/headless/overlay.js +0 -32
  699. package/dist/headless/overlay.js.map +0 -1
  700. package/dist/headless/paginated-list.cjs +0 -2
  701. package/dist/headless/paginated-list.cjs.map +0 -1
  702. package/dist/headless/paginated-list.d.ts.map +0 -1
  703. package/dist/headless/paginated-list.js +0 -34
  704. package/dist/headless/paginated-list.js.map +0 -1
  705. package/dist/headless/parse.cjs.map +0 -1
  706. package/dist/headless/parse.d.ts.map +0 -1
  707. package/dist/headless/parse.js.map +0 -1
  708. package/dist/headless/positioner.cjs +0 -2
  709. package/dist/headless/positioner.cjs.map +0 -1
  710. package/dist/headless/positioner.d.ts.map +0 -1
  711. package/dist/headless/positioner.js.map +0 -1
  712. package/dist/headless/ref-callback.cjs +0 -2
  713. package/dist/headless/ref-callback.cjs.map +0 -1
  714. package/dist/headless/ref-callback.d.ts.map +0 -1
  715. package/dist/headless/ref-callback.js.map +0 -1
  716. package/dist/headless/selection-control.cjs +0 -2
  717. package/dist/headless/selection-control.cjs.map +0 -1
  718. package/dist/headless/selection-control.d.ts +0 -30
  719. package/dist/headless/selection-control.d.ts.map +0 -1
  720. package/dist/headless/selection-control.js +0 -44
  721. package/dist/headless/selection-control.js.map +0 -1
  722. package/dist/headless/signals.cjs +0 -2
  723. package/dist/headless/signals.cjs.map +0 -1
  724. package/dist/headless/signals.d.ts.map +0 -1
  725. package/dist/headless/signals.js.map +0 -1
  726. package/dist/headless/slider.cjs +0 -2
  727. package/dist/headless/slider.d.ts.map +0 -1
  728. package/dist/headless/slider.js.map +0 -1
  729. package/dist/headless/sort-control.cjs +0 -2
  730. package/dist/headless/sort-control.cjs.map +0 -1
  731. package/dist/headless/sort-control.d.ts +0 -22
  732. package/dist/headless/sort-control.d.ts.map +0 -1
  733. package/dist/headless/sort-control.js +0 -36
  734. package/dist/headless/sort-control.js.map +0 -1
  735. package/dist/headless/spinner.cjs +0 -2
  736. package/dist/headless/spinner.d.ts.map +0 -1
  737. package/dist/headless/spinner.js.map +0 -1
  738. package/dist/headless/swipe.cjs.map +0 -1
  739. package/dist/headless/swipe.d.ts.map +0 -1
  740. package/dist/headless/swipe.js.map +0 -1
  741. package/dist/headless/text-field.cjs.map +0 -1
  742. package/dist/headless/text-field.d.ts.map +0 -1
  743. package/dist/headless/text-field.js.map +0 -1
  744. package/dist/headless/typeahead.cjs.map +0 -1
  745. package/dist/headless/typeahead.d.ts.map +0 -1
  746. package/dist/headless/typeahead.js.map +0 -1
  747. package/dist/headless.cjs +0 -1
  748. package/dist/headless.js +0 -30
  749. package/dist/inputs/datagrid/datagrid-controls.cjs +0 -2
  750. package/dist/inputs/datagrid/datagrid-controls.cjs.map +0 -1
  751. package/dist/inputs/datagrid/datagrid-controls.d.ts +0 -98
  752. package/dist/inputs/datagrid/datagrid-controls.d.ts.map +0 -1
  753. package/dist/inputs/datagrid/datagrid-controls.js +0 -147
  754. package/dist/inputs/datagrid/datagrid-controls.js.map +0 -1
  755. package/dist/inputs/form/form.css.cjs +0 -2
  756. package/dist/inputs/form/form.css.cjs.map +0 -1
  757. package/dist/inputs/form/form.css.js +0 -6
  758. package/dist/inputs/form/form.css.js.map +0 -1
  759. package/dist/inputs/form/form.d.ts +0 -59
  760. package/dist/inputs/form/form.d.ts.map +0 -1
  761. package/dist/inputs/shared/form-context.cjs +0 -2
  762. package/dist/inputs/shared/form-context.cjs.map +0 -1
  763. package/dist/inputs/shared/form-context.d.ts +0 -55
  764. package/dist/inputs/shared/form-context.d.ts.map +0 -1
  765. package/dist/inputs/shared/form-context.js +0 -15
  766. package/dist/inputs/shared/form-context.js.map +0 -1
  767. package/dist/keymap/dist/_dev.cjs +0 -2
  768. package/dist/keymap/dist/_dev.cjs.map +0 -1
  769. package/dist/keymap/dist/_dev.js +0 -4
  770. package/dist/keymap/dist/_dev.js.map +0 -1
  771. package/dist/keymap/dist/format.cjs +0 -1
  772. package/dist/keymap/dist/format.js +0 -1
  773. package/dist/keymap/dist/index.cjs +0 -1
  774. package/dist/keymap/dist/index.js +0 -4
  775. package/dist/keymap/dist/keymap.cjs +0 -2
  776. package/dist/keymap/dist/keymap.cjs.map +0 -1
  777. package/dist/keymap/dist/keymap.js +0 -221
  778. package/dist/keymap/dist/keymap.js.map +0 -1
  779. package/dist/keymap/dist/layer.cjs +0 -1
  780. package/dist/keymap/dist/layer.js +0 -1
  781. package/dist/styles/index.cjs +0 -2
  782. package/dist/styles/index.cjs.map +0 -1
  783. package/dist/styles/index.js +0 -25
  784. package/dist/styles/index.js.map +0 -1
  785. package/dist/styles/styles.css +0 -5
  786. package/dist/testing/index.d.ts +0 -233
  787. package/dist/testing/index.d.ts.map +0 -1
  788. package/dist/testing.cjs +0 -2
  789. package/dist/testing.cjs.map +0 -1
  790. package/dist/testing.js +0 -43
  791. package/dist/testing.js.map +0 -1
  792. /package/dist/{headless → core}/announcer.cjs +0 -0
  793. /package/dist/{headless → core}/announcer.d.ts +0 -0
  794. /package/dist/{headless → core}/aria-reflection.cjs +0 -0
  795. /package/dist/{headless → core}/aria-reflection.d.ts +0 -0
  796. /package/dist/{headless → core}/auto-resize.cjs +0 -0
  797. /package/dist/{headless → core}/auto-resize.d.ts +0 -0
  798. /package/dist/{headless → core}/checkable.cjs +0 -0
  799. /package/dist/{headless → core}/checkable.d.ts +0 -0
  800. /package/dist/{headless → core}/choice-field.d.ts +0 -0
  801. /package/dist/{headless → core}/composer.cjs +0 -0
  802. /package/dist/{headless → core}/composer.d.ts +0 -0
  803. /package/dist/{headless → core}/date-picker.d.ts +0 -0
  804. /package/dist/{headless → core}/direction.cjs +0 -0
  805. /package/dist/{headless → core}/direction.d.ts +0 -0
  806. /package/dist/{headless → core}/focus.cjs +0 -0
  807. /package/dist/{headless → core}/focus.d.ts +0 -0
  808. /package/dist/{headless → core}/keyboard.d.ts +0 -0
  809. /package/dist/{headless → core}/light-dom.cjs +0 -0
  810. /package/dist/{headless → core}/light-dom.d.ts +0 -0
  811. /package/dist/{headless → core}/nav.cjs +0 -0
  812. /package/dist/{headless → core}/nav.d.ts +0 -0
  813. /package/dist/{headless → core}/numbers.cjs +0 -0
  814. /package/dist/{headless → core}/numbers.d.ts +0 -0
  815. /package/dist/{headless → core}/ore.cjs +0 -0
  816. /package/dist/{headless → core}/paginated-list.d.ts +0 -0
  817. /package/dist/{headless → core}/parse.cjs +0 -0
  818. /package/dist/{headless → core}/parse.d.ts +0 -0
  819. /package/dist/{headless → core}/positioner.d.ts +0 -0
  820. /package/dist/{headless → core}/ref-callback.d.ts +0 -0
  821. /package/dist/{headless → core}/signals.d.ts +0 -0
  822. /package/dist/{headless → core}/slider.d.ts +0 -0
  823. /package/dist/{headless → core}/spinner.d.ts +0 -0
  824. /package/dist/{headless → core}/swipe.cjs +0 -0
  825. /package/dist/{headless → core}/swipe.d.ts +0 -0
  826. /package/dist/{headless → core}/text-field.cjs +0 -0
  827. /package/dist/{headless → core}/text-field.d.ts +0 -0
  828. /package/dist/{headless → core}/typeahead.cjs +0 -0
  829. /package/dist/{headless → core}/typeahead.d.ts +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"slider.css.js","names":[],"sources":["../../../src/inputs/slider/slider.css?inline"],"sourcesContent":["@layer refine.base {\n /* ========================================\n Base Styles & Defaults\n ======================================== */\n\n :host {\n --_size: var(--slider-size, var(--size-5));\n --_height: var(--slider-height, var(--size-3));\n --_track: var(--slider-track-bg, var(--color-contrast-300));\n --_fill: var(--slider-fill, var(--color-neutral));\n --_thumb: var(--slider-thumb-bg, var(--color-contrast-100));\n --_thumb-size: calc(var(--_size) - var(--size-1));\n --_font-size: var(--text-sm);\n --_shadow: var(--color-neutral-focus-shadow);\n\n position: relative;\n display: inline-flex;\n flex-wrap: wrap;\n gap: var(--_gap, var(--size-3));\n align-items: center;\n width: 100%;\n touch-action: none;\n cursor: pointer;\n user-select: none;\n }\n}\n\n/* ========================================\n Track, Fill & Thumb\n ======================================== */\n\n.slider-container {\n position: relative;\n display: flex;\n flex: 1;\n align-items: center;\n width: 100%;\n height: var(--_size);\n min-height: var(--_touch-target);\n}\n\n.slider-track {\n position: relative;\n width: 100%;\n height: var(--_height);\n background: var(--_track);\n border-radius: var(--rounded-full);\n}\n\n/* Fill: always driven by --_fill-start / --_fill-width */\n.slider-fill {\n position: absolute;\n top: 0;\n left: var(--_fill-start, 0%);\n width: var(--_fill-width, 0%);\n height: 100%;\n background: var(--_fill);\n border-radius: var(--rounded-full);\n transition:\n left var(--transition-normal),\n width var(--transition-normal);\n}\n\n:host([data-dragging]) .slider-fill {\n transition: none;\n}\n\n.slider-thumb {\n position: absolute;\n top: 50%;\n z-index: 1;\n width: var(--_thumb-size);\n height: var(--_thumb-size);\n cursor: grab;\n background: var(--_thumb);\n border: 2px solid var(--_fill);\n border-radius: var(--rounded-full);\n box-shadow: var(--shadow-sm);\n transform: translate(-50%, -50%);\n transition:\n box-shadow var(--transition-normal),\n transform var(--transition-fast),\n left var(--transition-normal);\n will-change: transform;\n}\n\n:host([data-dragging]) .slider-thumb {\n transition:\n box-shadow var(--transition-normal),\n transform var(--transition-fast);\n}\n\n/* ── Single-value thumb ─────────────────────────────────── */\n\n.slider-thumb-sole {\n left: var(--_thumb-pos, 0%);\n}\n\n:host(:focus-visible) .slider-thumb-sole,\n:host(:active) .slider-thumb-sole {\n box-shadow: var(--_shadow);\n transform: translate(-50%, -50%) scale(1.1);\n}\n\n/* ── Range thumbs ───────────────────────────────────────── */\n\n.slider-thumb-start {\n left: var(--_thumb-start, 0%);\n}\n\n.slider-thumb-end {\n left: var(--_thumb-end, 100%);\n}\n\n.slider-thumb-start:focus-visible,\n.slider-thumb-end:focus-visible {\n z-index: 2;\n cursor: grabbing;\n outline: var(--border-2) solid var(--_fill);\n outline-offset: 2px;\n box-shadow: var(--_shadow);\n transform: translate(-50%, -50%) scale(1.1);\n}\n\n/* ── Visibility gating ──────────────────────────────────── */\n\n:host(:not([range])) .slider-thumb-start,\n:host(:not([range])) .slider-thumb-end {\n display: none;\n}\n\n:host([range]) .slider-thumb-sole {\n display: none;\n}\n\n@media (forced-colors: active) {\n /* Replace box-shadow focus ring with outline for sole-thumb focus visibility */\n :host(:focus-visible) .slider-thumb-sole {\n outline: 2px solid Highlight;\n outline-offset: 2px;\n box-shadow: none;\n }\n}\n\n@layer refine.overrides {\n :host {\n --_fill: var(--slider-fill, var(--_theme-base));\n --_shadow: var(--_theme-shadow);\n }\n}\n\n/* ========================================\n Label\n ======================================== */\n\n.label {\n font-size: var(--_font-size);\n color: var(--color-contrast);\n white-space: nowrap;\n}\n\n.helper-text[hidden] {\n display: none;\n}\n\n.helper-text {\n width: 100%;\n font-size: var(--text-xs);\n line-height: var(--leading-tight);\n color: color-mix(in oklch, var(--color-contrast-500) 80%, var(--color-canvas));\n}\n\n.helper-text[role='alert'] {\n color: var(--color-error);\n}\n\n@media (pointer: coarse) {\n :host {\n --_thumb-size: calc(var(--_size) + var(--size-2));\n --_size: var(--size-7);\n }\n}\n"],"mappings":""}
1
+ {"version":3,"file":"slider.css.js","names":[],"sources":["../../../src/inputs/slider/slider.css?inline"],"sourcesContent":["@layer refine.base {\n /* ========================================\n Base Styles & Defaults\n ======================================== */\n\n /* No unconditional `width: 100%` here, on purpose — matches every other field's own `:host`\n (`ore-input`, `ore-select`, `ore-number-input`, `ore-combobox`, `ore-date-picker`): shrink to\n `min-width` by default, opt into full width via `:host([fullwidth])` below. A hardcoded\n `width: 100%` here (the previous default) meant the slider always claimed the entire row in\n a flex layout regardless of layout intent — e.g. sitting next to a label/hint column in a\n settings-style row, it forced that column down to near its text's min-content width instead\n of sharing the row the way a same-row `ore-select`/`ore-number-input` naturally does. */\n :host {\n --_size: var(--slider-size, var(--size-5));\n --_height: var(--slider-height, var(--size-1));\n --_track: var(--slider-track-bg, var(--color-contrast-300));\n --_fill: var(--slider-fill, var(--color-neutral));\n --_thumb: var(--slider-thumb-bg, var(--color-contrast-50));\n --_thumb-size: var(--_size);\n --_thumb-inset: var(--slider-thumb-inset, var(--size-2-5));\n --_touch-target: var(--size-11);\n --_font-size: var(--text-sm);\n --_shadow: var(--color-neutral-focus-shadow);\n\n position: relative;\n display: inline-flex;\n flex-wrap: wrap;\n gap: var(--_gap, var(--size-3));\n align-items: center;\n min-width: var(--slider-min-width, 12rem);\n touch-action: none;\n cursor: pointer;\n user-select: none;\n }\n\n /* Explicit opt-in still forces full width outside a stretching grid/flex context — same\n convention as ore-input's own :host([fullwidth]). */\n :host([fullwidth]) {\n width: 100%;\n }\n}\n\n/* ========================================\n Track, Fill & Thumb\n ======================================== */\n\n.slider-container {\n position: relative;\n box-sizing: border-box;\n display: flex;\n flex: 1;\n align-items: center;\n width: 100%;\n min-height: var(--_touch-target);\n padding-inline: var(--_thumb-inset);\n}\n\n.slider-track {\n position: relative;\n width: 100%;\n height: var(--_height);\n background: var(--_track);\n border-radius: var(--rounded-full);\n}\n\n/* Fill: always driven by --_fill-start / --_fill-width */\n.slider-fill {\n position: absolute;\n top: 0;\n left: var(--_fill-start, 0%);\n width: var(--_fill-width, 0%);\n height: 100%;\n background: var(--_fill);\n border-radius: var(--rounded-full);\n transition: var(--_motion-transition, left var(--transition-fast), width var(--transition-fast));\n}\n\n:host([data-dragging]) .slider-fill {\n transition: none;\n}\n\n.slider-thumb {\n position: absolute;\n top: 50%;\n z-index: 1;\n box-sizing: border-box;\n width: var(--_thumb-size);\n height: var(--_thumb-size);\n cursor: grab;\n background: var(--_thumb);\n border: 2px solid var(--_fill);\n border-radius: var(--rounded-full);\n box-shadow: var(--shadow-sm);\n transform: translate(-50%, -50%);\n transition: var(--_motion-transition, box-shadow var(--transition-fast), left var(--transition-fast));\n will-change: transform;\n}\n\n:host([data-dragging]) .slider-thumb {\n cursor: grabbing;\n box-shadow: var(--_shadow);\n transition: var(--_motion-transition, box-shadow var(--transition-fast));\n}\n\n/* ── Single-value thumb ─────────────────────────────────── */\n\n.slider-thumb-sole {\n left: var(--_thumb-pos, 0%);\n}\n\n:host(:focus-visible) .slider-thumb-sole,\n:host(:active) .slider-thumb-sole {\n box-shadow: var(--_shadow);\n}\n\n/* ── Range thumbs ───────────────────────────────────────── */\n\n.slider-thumb-start {\n left: var(--_thumb-start, 0%);\n}\n\n.slider-thumb-end {\n left: var(--_thumb-end, 100%);\n}\n\n.slider-thumb-start:focus-visible,\n.slider-thumb-end:focus-visible {\n z-index: 2;\n outline: var(--border-2) solid var(--_fill);\n outline-offset: var(--size-0-5);\n box-shadow: var(--_shadow);\n}\n\n/* ── Visibility gating ──────────────────────────────────── */\n\n:host(:not([range])) .slider-thumb-start,\n:host(:not([range])) .slider-thumb-end {\n display: none;\n}\n\n:host([range]) .slider-thumb-sole {\n display: none;\n}\n\n@media (hover: hover) {\n :host(:not([disabled])) .slider-thumb:hover {\n box-shadow: var(--_shadow);\n }\n}\n\n@media (forced-colors: active) {\n :host(:focus-visible) .slider-thumb-sole,\n .slider-thumb-start:focus-visible,\n .slider-thumb-end:focus-visible {\n outline: 2px solid Highlight;\n outline-offset: 2px;\n box-shadow: none;\n }\n}\n\n@layer refine.overrides {\n :host {\n --_fill: var(--slider-fill, var(--_theme-base));\n --_shadow: var(--_theme-shadow);\n }\n}\n\n/* ========================================\n Label\n ======================================== */\n\n.label {\n font-size: var(--_font-size);\n color: var(--color-contrast);\n white-space: nowrap;\n}\n\n.helper-text[hidden] {\n display: none;\n}\n\n.helper-text {\n width: 100%;\n font-size: var(--text-xs);\n line-height: var(--leading-tight);\n color: color-mix(in oklch, var(--color-contrast-500) 80%, var(--color-canvas));\n}\n\n.helper-text[role='alert'] {\n color: var(--color-error);\n}\n"],"mappings":""}
@@ -1,15 +1,8 @@
1
1
  import type { ComponentSize, ThemeColor } from '../../types';
2
2
  /** Slider component properties */
3
3
  export type OreSliderEvents = {
4
- change: {
5
- from?: number;
6
- originalEvent?: Event;
7
- to?: number;
8
- value: number | {
9
- from: number;
10
- to: number;
11
- };
12
- };
4
+ change: Event;
5
+ input: Event;
13
6
  };
14
7
  export type OreSliderProps = {
15
8
  /** Theme color */
@@ -22,6 +15,8 @@ export type OreSliderProps = {
22
15
  from?: number | string;
23
16
  /** Range mode a11y label for the start thumb (e.g. "$20") */
24
17
  'from-value-text'?: string;
18
+ /** Stretch to full width of container */
19
+ fullwidth?: boolean;
25
20
  /** Helper text displayed below the slider (fallback when the `helper` slot is empty) */
26
21
  helper?: string;
27
22
  /** Maximum value */
@@ -65,8 +60,10 @@ export type OreSliderProps = {
65
60
  * @attr {string} size - 'sm' | 'md' | 'lg'
66
61
  * @attr {string} helper - Helper text below the slider
67
62
  * @attr {string} error - Error message below the slider
63
+ * @attr {boolean} fullwidth - Stretch to full width of container
68
64
  *
69
- * @fires change - detail always includes `value`; single mode: { value: number }, range mode: { value: { from, to }, from, to }, plus optional originalEvent
65
+ * @fires input - Emitted when the slider value changes.
66
+ * @fires change - Emitted when the slider value changes.
70
67
  *
71
68
  * @slot - Slider label text
72
69
  *
@@ -1 +1 @@
1
- {"version":3,"file":"slider.d.ts","sourceRoot":"","sources":["../../../src/inputs/slider/slider.ts"],"names":[],"mappings":"AAmBA,OAAO,KAAK,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAe7D,kCAAkC;AAElC,MAAM,MAAM,eAAe,GAAG;IAC5B,MAAM,EAAE;QAAE,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,aAAa,CAAC,EAAE,KAAK,CAAC;QAAC,EAAE,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,GAAG;YAAE,IAAI,EAAE,MAAM,CAAC;YAAC,EAAE,EAAE,MAAM,CAAA;SAAE,CAAA;KAAE,CAAC;CAC7G,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG;IAC3B,kBAAkB;IAClB,KAAK,CAAC,EAAE,UAAU,CAAC;IACnB,0BAA0B;IAC1B,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,2FAA2F;IAC3F,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,8BAA8B;IAC9B,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACvB,6DAA6D;IAC7D,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,wFAAwF;IACxF,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,oBAAoB;IACpB,GAAG,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACtB,oBAAoB;IACpB,GAAG,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACtB,yCAAyC;IACzC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,yCAAyC;IACzC,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,qBAAqB;IACrB,IAAI,CAAC,EAAE,aAAa,CAAC;IACrB,qBAAqB;IACrB,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACvB,8BAA8B;IAC9B,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACrB,2DAA2D;IAC3D,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,uCAAuC;IACvC,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACxB,uFAAuF;IACvF,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6CG;AACH,eAAO,MAAM,UAAU,EAAG,YAAqB,CAAC"}
1
+ {"version":3,"file":"slider.d.ts","sourceRoot":"","sources":["../../../src/inputs/slider/slider.ts"],"names":[],"mappings":"AAiBA,OAAO,KAAK,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAe7D,kCAAkC;AAElC,MAAM,MAAM,eAAe,GAAG;IAC5B,MAAM,EAAE,KAAK,CAAC;IACd,KAAK,EAAE,KAAK,CAAC;CACd,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG;IAC3B,kBAAkB;IAClB,KAAK,CAAC,EAAE,UAAU,CAAC;IACnB,0BAA0B;IAC1B,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,2FAA2F;IAC3F,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,8BAA8B;IAC9B,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACvB,6DAA6D;IAC7D,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,yCAAyC;IACzC,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,wFAAwF;IACxF,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,oBAAoB;IACpB,GAAG,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACtB,oBAAoB;IACpB,GAAG,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACtB,yCAAyC;IACzC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,yCAAyC;IACzC,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,qBAAqB;IACrB,IAAI,CAAC,EAAE,aAAa,CAAC;IACrB,qBAAqB;IACrB,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACvB,8BAA8B;IAC9B,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACrB,2DAA2D;IAC3D,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,uCAAuC;IACvC,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACxB,uFAAuF;IACvF,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+CG;AACH,eAAO,MAAM,UAAU,EAAG,YAAqB,CAAC"}
@@ -1,7 +1,7 @@
1
1
  import type { CheckableProps, ComponentSize, ThemeColor } from '../../types';
2
- import { type CheckableChangePayload } from '../../headless';
3
2
  export type OreSwitchEvents = {
4
- change: CheckableChangePayload;
3
+ change: Event;
4
+ input: Event;
5
5
  };
6
6
  export type OreSwitchProps = CheckableProps & {
7
7
  /** Theme color */
@@ -29,7 +29,8 @@ export type OreSwitchProps = CheckableProps & {
29
29
  * @attr {string} error - Error message (marks field as invalid)
30
30
  * @attr {string} helper - Helper text displayed below the switch
31
31
  *
32
- * @fires change - Emitted when switch is toggled. detail: { checked: boolean, value: string, originalEvent?: Event }
32
+ * @fires input - Emitted when switch is toggled.
33
+ * @fires change - Emitted when switch is toggled.
33
34
  *
34
35
  * @slot - Switch label text
35
36
  *
@@ -1 +1 @@
1
- {"version":3,"file":"switch.d.ts","sourceRoot":"","sources":["../../../src/inputs/switch/switch.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,cAAc,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAE7E,OAAO,EAAE,KAAK,sBAAsB,EAAoC,MAAM,gBAAgB,CAAC;AAc/F,MAAM,MAAM,eAAe,GAAG;IAC5B,MAAM,EAAE,sBAAsB,CAAC;CAChC,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG,cAAc,GAAG;IAC5C,kBAAkB;IAClB,KAAK,CAAC,EAAE,UAAU,CAAC;IACnB,0BAA0B;IAC1B,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,6CAA6C;IAC7C,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,6CAA6C;IAC7C,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,qBAAqB;IACrB,IAAI,CAAC,EAAE,aAAa,CAAC;CACtB,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoCG;AACH,eAAO,MAAM,UAAU,EAAG,YAAqB,CAAC"}
1
+ {"version":3,"file":"switch.d.ts","sourceRoot":"","sources":["../../../src/inputs/switch/switch.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,cAAc,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAgB7E,MAAM,MAAM,eAAe,GAAG;IAC5B,MAAM,EAAE,KAAK,CAAC;IACd,KAAK,EAAE,KAAK,CAAC;CACd,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG,cAAc,GAAG;IAC5C,kBAAkB;IAClB,KAAK,CAAC,EAAE,UAAU,CAAC;IACnB,0BAA0B;IAC1B,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,6CAA6C;IAC7C,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,6CAA6C;IAC7C,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,qBAAqB;IACrB,IAAI,CAAC,EAAE,aAAa,CAAC;CACtB,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqCG;AACH,eAAO,MAAM,UAAU,EAAG,YAAqB,CAAC"}
@@ -3,14 +3,8 @@ import type { VisualVariant } from '../../types';
3
3
  import '../../content/icon/icon';
4
4
  /** Textarea component properties */
5
5
  export type OreTextareaEvents = {
6
- change: {
7
- originalEvent: Event;
8
- value: string;
9
- };
10
- input: {
11
- originalEvent: Event;
12
- value: string;
13
- };
6
+ change: Event;
7
+ input: InputEvent;
14
8
  };
15
9
  export type OreTextareaProps = TextFieldProps<Exclude<VisualVariant, 'frost' | 'text'>> & {
16
10
  /** Allow auto-grow with content */
@@ -64,8 +58,8 @@ export type OreTextareaProps = TextFieldProps<Exclude<VisualVariant, 'frost' | '
64
58
  * @attr {string} size - Component size: 'sm' | 'md' | 'lg'
65
59
  * @attr {string} rounded - Border radius: 'none' | 'sm' | 'md' | 'lg' | 'xl' | '2xl' | '3xl' | 'full'
66
60
  *
67
- * @fires input - Fired on every keystroke with current value. detail: { value: string; originalEvent: Event }
68
- * @fires change - Fired on blur with changed value. detail: { value: string; originalEvent: Event }
61
+ * @fires input - Fired on every keystroke with current value.
62
+ * @fires change - Fired on blur with changed value.
69
63
  *
70
64
  * @slot helper - Complex helper content
71
65
  *
@@ -1 +1 @@
1
- {"version":3,"file":"textarea.d.ts","sourceRoot":"","sources":["../../../src/inputs/textarea/textarea.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AACnD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAGjD,OAAO,yBAAyB,CAAC;AAQjC,oCAAoC;AAEpC,MAAM,MAAM,iBAAiB,GAAG;IAC9B,MAAM,EAAE;QAAE,aAAa,EAAE,KAAK,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;IAChD,KAAK,EAAE;QAAE,aAAa,EAAE,KAAK,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;CAChD,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG,cAAc,CAAC,OAAO,CAAC,aAAa,EAAE,OAAO,GAAG,MAAM,CAAC,CAAC,GAAG;IACxF,mCAAmC;IACnC,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB;;;;OAIG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,wDAAwD;IACxD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,qCAAqC;IACrC,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB;;;;;OAKG;IACH,GAAG,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,mBAAmB,GAAG,IAAI,KAAK,IAAI,CAAC,GAAG,IAAI,CAAC;IACxD,gCAAgC;IAChC,MAAM,CAAC,EAAE,MAAM,GAAG,YAAY,GAAG,MAAM,GAAG,UAAU,CAAC;IACrD,kCAAkC;IAClC,IAAI,CAAC,EAAE,MAAM,CAAC;CACf,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+DG;AACH,eAAO,MAAM,YAAY,EAAG,cAAuB,CAAC"}
1
+ {"version":3,"file":"textarea.d.ts","sourceRoot":"","sources":["../../../src/inputs/textarea/textarea.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AACnD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAGjD,OAAO,yBAAyB,CAAC;AAiBjC,oCAAoC;AAEpC,MAAM,MAAM,iBAAiB,GAAG;IAC9B,MAAM,EAAE,KAAK,CAAC;IACd,KAAK,EAAE,UAAU,CAAC;CACnB,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG,cAAc,CAAC,OAAO,CAAC,aAAa,EAAE,OAAO,GAAG,MAAM,CAAC,CAAC,GAAG;IACxF,mCAAmC;IACnC,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB;;;;OAIG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,wDAAwD;IACxD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,qCAAqC;IACrC,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB;;;;;OAKG;IACH,GAAG,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,mBAAmB,GAAG,IAAI,KAAK,IAAI,CAAC,GAAG,IAAI,CAAC;IACxD,gCAAgC;IAChC,MAAM,CAAC,EAAE,MAAM,GAAG,YAAY,GAAG,MAAM,GAAG,UAAU,CAAC;IACrD,kCAAkC;IAClC,IAAI,CAAC,EAAE,MAAM,CAAC;CACf,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+DG;AACH,eAAO,MAAM,YAAY,EAAG,cAAuB,CAAC"}
@@ -2,9 +2,8 @@ import type { VisualVariant } from '../../shared';
2
2
  import '../../content/icon/icon';
3
3
  import '../input/input';
4
4
  export type OreTimePickerEvents = {
5
- change: {
6
- value: string | null;
7
- };
5
+ change: Event;
6
+ input: Event;
8
7
  };
9
8
  export type OreTimePickerProps = {
10
9
  /** Theme color */
@@ -74,7 +73,8 @@ export type OreTimePickerProps = {
74
73
  * @attr {string} time-format - '12' or '24' (default: '24')
75
74
  * @attr {number} minute-step - Minute increment (default: 5)
76
75
  *
77
- * @fires change - Fired when a time is selected. detail: { value: string | null }
76
+ * @fires input - Fired when a time is selected.
77
+ * @fires change - Fired when a time is selected.
78
78
  *
79
79
  * @slot label - Custom label for the trigger field
80
80
  * @slot prefix - Content before the trigger text (e.g. icon)
@@ -1 +1 @@
1
- {"version":3,"file":"time-picker.d.ts","sourceRoot":"","sources":["../../../src/inputs/time-picker/time-picker.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAGlD,OAAO,yBAAyB,CAAC;AACjC,OAAO,gBAAgB,CAAC;AAQxB,MAAM,MAAM,mBAAmB,GAAG;IAChC,MAAM,EAAE;QAAE,KAAK,EAAE,MAAM,GAAG,IAAI,CAAA;KAAE,CAAC;CAClC,CAAC;AAEF,MAAM,MAAM,kBAAkB,GAAG;IAC/B,kBAAkB;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,yBAAyB;IACzB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,+BAA+B;IAC/B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,gCAAgC;IAChC,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,kCAAkC;IAClC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,oBAAoB;IACpB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,sBAAsB;IACtB,iBAAiB,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IACxC,wDAAwD;IACxD,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,wDAAwD;IACxD,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,kCAAkC;IAClC,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,sBAAsB;IACtB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,uCAAuC;IACvC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,6BAA6B;IAC7B,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,oBAAoB;IACpB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,qBAAqB;IACrB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;;;OAGG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,uEAAuE;IACvE,aAAa,CAAC,EAAE,IAAI,GAAG,IAAI,CAAC;IAC5B,8CAA8C;IAC9C,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,qBAAqB;IACrB,OAAO,CAAC,EAAE,OAAO,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC;CACpD,CAAC;AAsDF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAuDG;AACH,eAAO,MAAM,eAAe,EAAG,iBAA0B,CAAC"}
1
+ {"version":3,"file":"time-picker.d.ts","sourceRoot":"","sources":["../../../src/inputs/time-picker/time-picker.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAGlD,OAAO,yBAAyB,CAAC;AACjC,OAAO,gBAAgB,CAAC;AAQxB,MAAM,MAAM,mBAAmB,GAAG;IAChC,MAAM,EAAE,KAAK,CAAC;IACd,KAAK,EAAE,KAAK,CAAC;CACd,CAAC;AAEF,MAAM,MAAM,kBAAkB,GAAG;IAC/B,kBAAkB;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,yBAAyB;IACzB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,+BAA+B;IAC/B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,gCAAgC;IAChC,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,kCAAkC;IAClC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,oBAAoB;IACpB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,sBAAsB;IACtB,iBAAiB,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IACxC,wDAAwD;IACxD,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,wDAAwD;IACxD,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,kCAAkC;IAClC,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,sBAAsB;IACtB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,uCAAuC;IACvC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,6BAA6B;IAC7B,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,oBAAoB;IACpB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,qBAAqB;IACrB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;;;OAGG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,uEAAuE;IACvE,aAAa,CAAC,EAAE,IAAI,GAAG,IAAI,CAAC;IAC5B,8CAA8C;IAC9C,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,qBAAqB;IACrB,OAAO,CAAC,EAAE,OAAO,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC;CACpD,CAAC;AAsDF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAwDG;AACH,eAAO,MAAM,eAAe,EAAG,iBAA0B,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"box.d.ts","sourceRoot":"","sources":["../../../src/layout/box/box.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,cAAc,EAAE,WAAW,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAKxF,+BAA+B;AAC/B,MAAM,MAAM,WAAW,GAAG;IACxB,kBAAkB;IAClB,KAAK,CAAC,EAAE,UAAU,CAAC;IACnB,6BAA6B;IAC7B,MAAM,CAAC,EAAE,SAAS,CAAC;IACnB,mCAAmC;IACnC,SAAS,CAAC,EAAE,cAAc,CAAC;IAC3B,0CAA0C;IAC1C,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,4BAA4B;IAC5B,OAAO,CAAC,EAAE,WAAW,CAAC;IACtB,yBAAyB;IACzB,OAAO,CAAC,EAAE,WAAW,CAAC;IACtB,2BAA2B;IAC3B,OAAO,CAAC,EAAE,OAAO,GAAG,MAAM,GAAG,OAAO,GAAG,OAAO,CAAC;CAChD,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AACH,eAAO,MAAM,OAAO,EAAG,SAAkB,CAAC"}
1
+ {"version":3,"file":"box.d.ts","sourceRoot":"","sources":["../../../src/layout/box/box.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,cAAc,EAAE,WAAW,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAYxF,+BAA+B;AAC/B,MAAM,MAAM,WAAW,GAAG;IACxB,kBAAkB;IAClB,KAAK,CAAC,EAAE,UAAU,CAAC;IACnB,6BAA6B;IAC7B,MAAM,CAAC,EAAE,SAAS,CAAC;IACnB,mCAAmC;IACnC,SAAS,CAAC,EAAE,cAAc,CAAC;IAC3B,0CAA0C;IAC1C,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,4BAA4B;IAC5B,OAAO,CAAC,EAAE,WAAW,CAAC;IACtB,yBAAyB;IACzB,OAAO,CAAC,EAAE,WAAW,CAAC;IACtB,2BAA2B;IAC3B,OAAO,CAAC,EAAE,OAAO,GAAG,MAAM,GAAG,OAAO,GAAG,OAAO,CAAC;CAChD,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AACH,eAAO,MAAM,OAAO,EAAG,SAAkB,CAAC"}
@@ -1,2 +1,2 @@
1
- var e=`@layer refine.base{:host{--_navbar-height:var(--navbar-height,var(--size-14));--_navbar-width:var(--navbar-width,min(100%, 80rem));--_navbar-offset:var(--navbar-offset,var(--size-3));--_navbar-bg:var(--navbar-bg,var(--color-canvas));--_navbar-color:var(--navbar-color,var(--color-contrast-900));--_navbar-border-color:var(--navbar-border-color,var(--color-divider));--_navbar-shadow:var(--navbar-shadow,var(--shadow-md));--_navbar-radius:var(--navbar-radius,var(--rounded-lg));box-sizing:border-box;width:100%;color:var(--_navbar-color);display:block}:host([data-mode=sticky]){z-index:var(--z-sticky);position:sticky;top:0}:host([data-mode=floating]){inset-inline:var(--_navbar-offset);top:var(--_navbar-offset);z-index:var(--z-sticky);position:fixed}:host([data-preview-mode][data-mode=floating]){inset-inline:var(--_navbar-offset);position:absolute;top:auto}:host([floating][sticky][data-scrolled]){width:100%;top:0;left:0;right:0}:host([data-preview-mode][floating][sticky][data-scrolled]){width:auto;position:absolute;top:auto;left:0;right:0}:host>nav{flex-direction:column;width:100%;display:flex;position:relative}.navbar{box-sizing:border-box;gap:var(--size-2);width:100%;max-width:var(--_navbar-width);min-height:var(--_navbar-height);padding:var(--size-2) var(--size-4);color:inherit;white-space:nowrap;background:var(--_navbar-bg);border-top:none;border-right:none;border-bottom:var(--border) solid var(--_navbar-border-color);-webkit-backdrop-filter:var(--navbar-backdrop-filter,blur(var(--blur-md)));backdrop-filter:var(--navbar-backdrop-filter,blur(var(--blur-md)));transition:var(--_motion-transition,background var(--transition-normal), border-color var(--transition-normal), box-shadow var(--transition-normal), transform var(--transition-normal));border-left:none;border-radius:0;flex-wrap:nowrap;align-items:center;margin-left:auto;margin-right:auto;display:flex;overflow:auto hidden}:host([data-mode=floating]) .navbar{border-top:var(--border) solid var(--_navbar-border-color);border-right:var(--border) solid var(--_navbar-border-color);border-bottom:var(--border) solid var(--_navbar-border-color);border-left:var(--border) solid var(--_navbar-border-color);border-radius:var(--_navbar-radius)}:host([data-mode=sticky]) .navbar,:host([floating][sticky][data-scrolled]) .navbar{border-left:none;border-right:none;border-radius:0;max-width:100%}:host([data-mode-transitioning][data-mode=sticky]) .navbar{animation:navbar-floating-to-sticky var(--transition-normal) var(--ease-in-out)}:host([data-mode-transitioning][data-mode=floating]) .navbar{animation:navbar-sticky-to-floating var(--transition-normal) var(--ease-in-out)}.navbar-logo,.navbar-start,.navbar-center,.navbar-end{white-space:nowrap;align-items:center;min-width:0;display:flex}.navbar-logo{flex:none}.navbar-start{gap:var(--size-1);flex:none}.navbar-center{gap:var(--size-1);flex:0 auto;justify-content:flex-start;min-width:0;display:flex}.navbar-end{gap:var(--size-1);flex:none}.navbar-end:not(: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}.navbar-end: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}.mobile-toggle{width:var(--size-9);height:var(--size-9);color:var(--color-contrast-700);cursor:pointer;border:var(--border) solid transparent;border-radius:var(--rounded-md);transition:background var(--transition-fast), border-color var(--transition-fast), color var(--transition-fast);background:0 0;flex-shrink:0;justify-content:center;align-items:center;padding:0;display:none}.mobile-toggle:hover{color:var(--color-contrast-900);background:var(--color-contrast-100);border-color:var(--color-contrast-200)}.mobile-toggle:focus-visible{outline:var(--focus-ring)}.mobile-menu-panel{z-index:1;box-sizing:border-box;width:100%;max-width:var(--_navbar-width);padding:var(--size-2);background:var(--_navbar-bg);border:var(--border) solid var(--_navbar-border-color);border-radius:var(--rounded-lg);box-shadow:var(--_shadow,var(--_navbar-shadow));-webkit-backdrop-filter:var(--navbar-backdrop-filter,blur(var(--blur-md)));backdrop-filter:var(--navbar-backdrop-filter,blur(var(--blur-md)));transform-origin:top;animation:navbar-mobile-in var(--transition-fast) var(--ease-out);margin-top:var(--size-2);margin-left:auto;margin-right:auto;display:none;position:relative}:host([data-mobile][data-mobile-open]) .mobile-menu-panel:not([hidden]){gap:var(--size-1);display:grid}:host([data-mobile][data-mobile-open][data-mode=floating]) .mobile-menu-panel{margin-top:var(--size-1-5)}:host([data-mobile][data-mobile-open][data-mode=sticky]) .mobile-menu-panel,:host([data-mobile][data-mobile-open][floating][sticky][data-scrolled]) .mobile-menu-panel{z-index:2;border-radius:0 0 var(--rounded-md) var(--rounded-md);border-top:none;border-left:none;border-right:none;max-width:100%;margin:0;position:absolute;top:100%;left:0;right:0}:host([data-mobile]) .mobile-toggle:not([hidden]){order:-1;display:inline-flex}:host([data-mobile]) .navbar-start,:host([data-mobile]) .navbar-center,:host([data-mobile]) .navbar-end{display:none}:host([data-mobile][data-mobile-open]) .navbar{border-bottom-right-radius:var(--rounded-md);border-bottom-left-radius:var(--rounded-md)}@starting-style{.mobile-menu-panel{opacity:0;transform:translateY(var(--overlay-enter-translate-y))}}@keyframes navbar-mobile-in{0%{opacity:0;transform:translateY(var(--overlay-enter-translate-y))}to{opacity:1;transform:translateY(0)}}@keyframes navbar-floating-to-sticky{0%{opacity:.92;transform:translateY(6px)scale(.985)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes navbar-sticky-to-floating{0%{opacity:.95;transform:translateY(-2px)scale(1)}to{opacity:1;transform:translateY(0)scale(.99)}}.item{box-sizing:border-box;gap:var(--size-1);min-height:var(--_touch-target);padding:var(--size-1-5) var(--size-2-5);font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--navbar-item-color,var(--color-contrast-700));white-space:nowrap;appearance:none;cursor:pointer;border-radius:var(--rounded-md);transition:background var(--transition-fast), color var(--transition-fast);background:0 0;border:none;flex-shrink:0;align-items:center;text-decoration:none;display:inline-flex}.item:hover,.item:focus-visible{color:var(--navbar-item-hover-color,var(--color-contrast-900));outline:var(--focus-ring);outline-offset:1px;background:var(--navbar-item-hover-bg,var(--color-contrast-100))}:host([active]) .item{color:var(--navbar-item-active-color,var(--color-primary));background:var(--navbar-item-active-bg,color-mix(in oklch, var(--color-primary) 12%, transparent))}:host([disabled]) .item,:host([disabled]) .item:hover,:host([disabled]) .item:focus-visible{color:var(--color-contrast-400);pointer-events:none;cursor:not-allowed;background:0 0;outline:none}.item-icon,.item-end{align-items:center;display:inline-flex}.item-label{white-space:nowrap;min-width:0}:host([navbar-mobile]){width:100%;display:block}:host([navbar-mobile]) .item{justify-content:flex-start;width:100%;display:flex}}@layer refine.variants{:host([variant=flat]){--_navbar-bg:color-mix(in oklch, var(--color-canvas) 88%, transparent);--_navbar-shadow:none}:host([variant=bordered]){--_navbar-bg:var(--color-canvas);--_navbar-border-color:color-mix(in oklch, var(--color-contrast-500) 32%, transparent)}:host([variant=outline]){--_navbar-bg:transparent;--_navbar-shadow:none;--_navbar-border-color:color-mix(in oklch, var(--color-contrast-500) 40%, transparent)}:host([variant=glass]){--_navbar-bg:color-mix(in oklch, var(--color-canvas) 70%, transparent);--navbar-backdrop-filter:blur(var(--blur-lg)) saturate(180%)}:host([color]){--_navbar-border-color:color-mix(in oklch, var(--_theme-border) 30%, transparent)}}@media (width<=768px){@layer refine.base{:host([data-mode=floating]){inset-inline:var(--size-2);top:var(--size-2)}:host([floating][sticky][data-scrolled]){top:0;left:0;right:0}}}`;exports.default=e;
1
+ var e=`@layer refine.base{:host{--_navbar-height:var(--navbar-height,var(--size-14));--_navbar-width:var(--navbar-width,min(100%, 80rem));--_navbar-offset:var(--navbar-offset,var(--size-3));--_navbar-bg:var(--navbar-bg,var(--color-canvas));--_navbar-color:var(--navbar-color,var(--color-contrast-900));--_navbar-border-color:var(--navbar-border-color,var(--color-divider));--_navbar-shadow:var(--navbar-shadow,var(--shadow-md));--_navbar-radius:var(--navbar-radius,var(--rounded-lg));box-sizing:border-box;width:100%;color:var(--_navbar-color);display:block}:host([data-mode=sticky]){z-index:var(--z-sticky);position:sticky;top:0}:host([data-mode=floating]){inset-inline:var(--_navbar-offset);top:var(--_navbar-offset);z-index:var(--z-sticky);position:fixed}:host([data-preview-mode][data-mode=floating]){inset-inline:var(--_navbar-offset);position:absolute;top:auto}:host([floating][sticky][data-scrolled]){width:100%;top:0;left:0;right:0}:host([data-preview-mode][floating][sticky][data-scrolled]){width:auto;position:absolute;top:auto;left:0;right:0}:host>nav{flex-direction:column;width:100%;display:flex;position:relative}.navbar{box-sizing:border-box;gap:var(--size-2);width:100%;max-width:var(--_navbar-width);min-height:var(--_navbar-height);padding:var(--size-2) var(--size-4);color:inherit;white-space:nowrap;background:var(--_navbar-bg);border-top:none;border-right:none;border-bottom:var(--border) solid var(--_navbar-border-color);-webkit-backdrop-filter:var(--navbar-backdrop-filter,blur(var(--blur-md)));backdrop-filter:var(--navbar-backdrop-filter,blur(var(--blur-md)));transition:var(--_motion-transition,background var(--transition-normal), border-color var(--transition-normal), box-shadow var(--transition-normal), transform var(--transition-normal));border-left:none;border-radius:0;flex-wrap:nowrap;align-items:center;margin-left:auto;margin-right:auto;display:flex;overflow:auto hidden}:host([data-mode=floating]) .navbar{border-top:var(--border) solid var(--_navbar-border-color);border-right:var(--border) solid var(--_navbar-border-color);border-bottom:var(--border) solid var(--_navbar-border-color);border-left:var(--border) solid var(--_navbar-border-color);border-radius:var(--_navbar-radius)}:host([data-mode=sticky]) .navbar,:host([floating][sticky][data-scrolled]) .navbar{border-left:none;border-right:none;border-radius:0;max-width:100%}:host([data-mode-transitioning][data-mode=sticky]) .navbar{animation:navbar-floating-to-sticky var(--transition-normal) var(--ease-in-out)}:host([data-mode-transitioning][data-mode=floating]) .navbar{animation:navbar-sticky-to-floating var(--transition-normal) var(--ease-in-out)}.navbar-logo,.navbar-start,.navbar-center,.navbar-end{white-space:nowrap;align-items:center;min-width:0;display:flex}.navbar-logo{flex:none}.navbar-start{gap:var(--size-1);flex:none}.navbar-center{gap:var(--size-1);flex:0 auto;justify-content:flex-start;min-width:0;display:flex}.navbar-end{gap:var(--size-1);flex:none}.navbar-end:not(: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}.navbar-end: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}.mobile-toggle{width:var(--size-9);height:var(--size-9);color:var(--color-contrast-700);cursor:pointer;border:var(--border) solid transparent;border-radius:var(--rounded-md);transition:background var(--transition-fast), border-color var(--transition-fast), color var(--transition-fast);background:0 0;flex-shrink:0;justify-content:center;align-items:center;padding:0;display:none}.mobile-toggle:hover{color:var(--color-contrast-900);background:var(--color-contrast-100);border-color:var(--color-contrast-200)}.mobile-toggle:focus-visible{outline:var(--focus-ring)}.mobile-menu-panel{z-index:1;box-sizing:border-box;width:100%;max-width:var(--_navbar-width);padding:var(--size-2);background:var(--_navbar-bg);border:var(--border) solid var(--_navbar-border-color);border-radius:var(--rounded-lg);box-shadow:var(--_shadow,var(--_navbar-shadow));-webkit-backdrop-filter:var(--navbar-backdrop-filter,blur(var(--blur-md)));backdrop-filter:var(--navbar-backdrop-filter,blur(var(--blur-md)));transform-origin:top;animation:navbar-mobile-in var(--transition-fast) var(--ease-out);margin-top:var(--size-2);margin-left:auto;margin-right:auto;display:none;position:relative}:host([data-mobile][data-mobile-open]) .mobile-menu-panel:not([hidden]){gap:var(--size-1);display:grid}:host([data-mobile][data-mobile-open][data-mode=floating]) .mobile-menu-panel{margin-top:var(--size-1-5)}:host([data-mobile][data-mobile-open][data-mode=sticky]) .mobile-menu-panel,:host([data-mobile][data-mobile-open][floating][sticky][data-scrolled]) .mobile-menu-panel{z-index:2;border-radius:0 0 var(--rounded-md) var(--rounded-md);border-top:none;border-left:none;border-right:none;max-width:100%;margin:0;position:absolute;top:100%;left:0;right:0}:host([data-mobile]) .mobile-toggle:not([hidden]){order:-1;display:inline-flex}:host([data-mobile]) .navbar-start,:host([data-mobile]) .navbar-center,:host([data-mobile]) .navbar-end{display:none}:host([data-mobile][data-mobile-open]) .navbar{border-bottom-right-radius:var(--rounded-md);border-bottom-left-radius:var(--rounded-md)}@starting-style{.mobile-menu-panel{opacity:0;transform:translateY(var(--overlay-enter-translate-y))}}@keyframes navbar-mobile-in{0%{opacity:0;transform:translateY(var(--overlay-enter-translate-y))}to{opacity:1;transform:translateY(0)}}@keyframes navbar-floating-to-sticky{0%{opacity:.92;transform:translateY(6px)scale(.985)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes navbar-sticky-to-floating{0%{opacity:.95;transform:translateY(-2px)scale(1)}to{opacity:1;transform:translateY(0)scale(.99)}}.item{box-sizing:border-box;gap:var(--size-1);min-height:var(--_touch-target);padding:var(--size-1-5) var(--size-2-5);font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--navbar-item-color,var(--color-contrast-700));white-space:nowrap;appearance:none;cursor:pointer;border-radius:var(--rounded-md);transition:background var(--transition-fast), color var(--transition-fast);background:0 0;border:none;flex-shrink:0;align-items:center;text-decoration:none;display:inline-flex}.item:hover,.item:focus-visible{color:var(--navbar-item-hover-color,var(--color-contrast-900));outline:var(--focus-ring);outline-offset:1px;background:var(--navbar-item-hover-bg,var(--color-contrast-100))}:host([active]) .item{color:var(--navbar-item-active-color,var(--color-primary));background:var(--navbar-item-active-bg,color-mix(in oklch, var(--color-primary) 12%, transparent))}:host([disabled]) .item,:host([disabled]) .item:hover,:host([disabled]) .item:focus-visible{color:var(--color-contrast-400);pointer-events:none;cursor:not-allowed;background:0 0;outline:none}.item-icon,.item-end{align-items:center;display:inline-flex}.item-label{white-space:nowrap;min-width:0}:host([icon-only]) .item-label{display:none}:host([icon-only]) .item{padding:var(--size-1-5)}:host([navbar-mobile]){width:100%;display:block}:host([navbar-mobile]) .item{justify-content:flex-start;width:100%;display:flex}}@layer refine.variants{:host([variant=flat]){--_navbar-bg:color-mix(in oklch, var(--color-canvas) 88%, transparent);--_navbar-shadow:none}:host([variant=bordered]){--_navbar-bg:var(--color-canvas);--_navbar-border-color:color-mix(in oklch, var(--color-contrast-500) 32%, transparent)}:host([variant=outline]){--_navbar-bg:transparent;--_navbar-shadow:none;--_navbar-border-color:color-mix(in oklch, var(--color-contrast-500) 40%, transparent)}:host([variant=glass]){--_navbar-bg:color-mix(in oklch, var(--color-canvas) 70%, transparent);--navbar-backdrop-filter:blur(var(--blur-lg)) saturate(180%)}:host([color]){--_navbar-border-color:color-mix(in oklch, var(--_theme-border) 30%, transparent)}}@media (width<=768px){@layer refine.base{:host([data-mode=floating]){inset-inline:var(--size-2);top:var(--size-2)}:host([floating][sticky][data-scrolled]){top:0;left:0;right:0}}}`;exports.default=e;
2
2
  //# sourceMappingURL=navbar.css.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"navbar.css.cjs","names":[],"sources":["../../../src/layout/navbar/navbar.css?inline"],"sourcesContent":["@layer refine.base {\n :host {\n --_navbar-height: var(--navbar-height, var(--size-14));\n --_navbar-width: var(--navbar-width, min(100%, 80rem));\n --_navbar-offset: var(--navbar-offset, var(--size-3));\n --_navbar-bg: var(--navbar-bg, var(--color-canvas));\n --_navbar-color: var(--navbar-color, var(--color-contrast-900));\n --_navbar-border-color: var(--navbar-border-color, var(--color-divider));\n --_navbar-shadow: var(--navbar-shadow, var(--shadow-md));\n --_navbar-radius: var(--navbar-radius, var(--rounded-lg));\n\n box-sizing: border-box;\n display: block;\n width: 100%;\n color: var(--_navbar-color);\n }\n\n :host([data-mode='sticky']) {\n position: sticky;\n top: 0;\n z-index: var(--z-sticky);\n }\n\n :host([data-mode='floating']) {\n position: fixed;\n inset-inline: var(--_navbar-offset);\n top: var(--_navbar-offset);\n z-index: var(--z-sticky);\n }\n\n /* Preview mode: use absolute positioning so component stays within container bounds */\n :host([data-preview-mode][data-mode='floating']) {\n position: absolute;\n inset-inline: var(--_navbar-offset);\n top: auto;\n }\n\n :host([floating][sticky][data-scrolled]) {\n inset-inline: 0;\n top: 0;\n width: 100%;\n }\n\n :host([data-preview-mode][floating][sticky][data-scrolled]) {\n position: absolute;\n inset-inline: 0;\n top: auto;\n width: auto;\n }\n\n :host > nav {\n position: relative;\n display: flex;\n flex-direction: column;\n width: 100%;\n }\n\n .navbar {\n box-sizing: border-box;\n display: flex;\n flex-wrap: nowrap;\n gap: var(--size-2);\n align-items: center;\n width: 100%;\n max-width: var(--_navbar-width);\n min-height: var(--_navbar-height);\n padding: var(--size-2) var(--size-4);\n margin-inline: auto;\n overflow: auto hidden;\n color: inherit;\n white-space: nowrap;\n background: var(--_navbar-bg);\n border-top: none;\n border-right: none;\n border-bottom: var(--border) solid var(--_navbar-border-color);\n border-left: none;\n border-radius: 0;\n backdrop-filter: var(--navbar-backdrop-filter, blur(var(--blur-md)));\n transition: var(\n --_motion-transition,\n background var(--transition-normal),\n border-color var(--transition-normal),\n box-shadow var(--transition-normal),\n transform var(--transition-normal)\n );\n }\n\n :host([data-mode='floating']) .navbar {\n border-top: var(--border) solid var(--_navbar-border-color);\n border-right: var(--border) solid var(--_navbar-border-color);\n border-bottom: var(--border) solid var(--_navbar-border-color);\n border-left: var(--border) solid var(--_navbar-border-color);\n border-radius: var(--_navbar-radius);\n }\n\n :host([data-mode='sticky']) .navbar,\n :host([floating][sticky][data-scrolled]) .navbar {\n max-width: 100%;\n border-inline: none;\n border-radius: 0;\n }\n\n :host([data-mode-transitioning][data-mode='sticky']) .navbar {\n animation: navbar-floating-to-sticky var(--transition-normal) var(--ease-in-out);\n }\n\n :host([data-mode-transitioning][data-mode='floating']) .navbar {\n animation: navbar-sticky-to-floating var(--transition-normal) var(--ease-in-out);\n }\n\n .navbar-logo,\n .navbar-start,\n .navbar-center,\n .navbar-end {\n display: flex;\n align-items: center;\n min-width: 0;\n white-space: nowrap;\n }\n\n .navbar-logo {\n flex: 0 0 auto;\n }\n\n .navbar-start {\n flex: 0 0 auto;\n gap: var(--size-1);\n }\n\n .navbar-center {\n display: flex;\n flex: 0 1 auto;\n gap: var(--size-1);\n justify-content: flex-start;\n min-width: 0;\n }\n\n .navbar-end {\n flex: 0 0 auto;\n gap: var(--size-1);\n margin-inline-start: auto;\n }\n\n .mobile-toggle {\n display: none;\n flex-shrink: 0;\n align-items: center;\n justify-content: center;\n width: var(--size-9);\n height: var(--size-9);\n padding: 0;\n color: var(--color-contrast-700);\n cursor: pointer;\n background: transparent;\n border: var(--border) solid transparent;\n border-radius: var(--rounded-md);\n transition:\n background var(--transition-fast),\n border-color var(--transition-fast),\n color var(--transition-fast);\n }\n\n .mobile-toggle:hover {\n color: var(--color-contrast-900);\n background: var(--color-contrast-100);\n border-color: var(--color-contrast-200);\n }\n\n .mobile-toggle:focus-visible {\n outline: var(--focus-ring);\n }\n\n .mobile-menu-panel {\n position: relative;\n z-index: 1;\n box-sizing: border-box;\n display: none;\n width: 100%;\n max-width: var(--_navbar-width);\n padding: var(--size-2);\n margin-block-start: var(--size-2);\n margin-inline: auto;\n background: var(--_navbar-bg);\n border: var(--border) solid var(--_navbar-border-color);\n border-radius: var(--rounded-lg);\n box-shadow: var(--_shadow, var(--_navbar-shadow));\n backdrop-filter: var(--navbar-backdrop-filter, blur(var(--blur-md)));\n transform-origin: top;\n animation: navbar-mobile-in var(--transition-fast) var(--ease-out);\n }\n\n /* `:not([hidden])` — same reasoning as `.mobile-toggle` above: this panel's own `?hidden=`\n binding (navbar.ts) already covers \"not mobile\" / \"menu closed\" / \"no mobile-menu content\",\n but an unconditional `display: grid` here would still override that `[hidden]` for the \"no\n content\" case specifically, since author styles always win over the UA stylesheet. */\n :host([data-mobile][data-mobile-open]) .mobile-menu-panel:not([hidden]) {\n display: grid;\n gap: var(--size-1);\n }\n\n :host([data-mobile][data-mobile-open][data-mode='floating']) .mobile-menu-panel {\n margin-block-start: var(--size-1-5);\n }\n\n :host([data-mobile][data-mobile-open][data-mode='sticky']) .mobile-menu-panel,\n :host([data-mobile][data-mobile-open][floating][sticky][data-scrolled]) .mobile-menu-panel {\n position: absolute;\n inset-inline: 0;\n top: 100%;\n z-index: 2;\n max-width: 100%;\n margin: 0;\n border-inline: none;\n border-top: none;\n border-radius: 0 0 var(--rounded-md) var(--rounded-md);\n }\n\n /* `:not([hidden])` matters — the component's own `?hidden=` binding (navbar.ts) hides this\n button when there's neither `mobile-menu` slot content nor a `mobile-sidebar` target to\n toggle. Without it, this rule's `display: inline-flex` — an author-stylesheet declaration —\n unconditionally overrides the UA stylesheet's `[hidden] { display: none }`, since author\n styles always win over UA styles regardless of selector specificity. That left the button\n visibly clickable while toggling a `mobile-menu-panel` that stays hidden too (its own\n `?hidden=` binding includes the same \"nothing to show\" check) — clicking did nothing\n visible at all. */\n :host([data-mobile]) .mobile-toggle:not([hidden]) {\n display: inline-flex;\n order: -1;\n }\n\n :host([data-mobile]) .navbar-start,\n :host([data-mobile]) .navbar-center,\n :host([data-mobile]) .navbar-end {\n display: none;\n }\n\n :host([data-mobile][data-mobile-open]) .navbar {\n border-bottom-right-radius: var(--rounded-md);\n border-bottom-left-radius: var(--rounded-md);\n }\n\n @starting-style {\n .mobile-menu-panel {\n opacity: 0;\n transform: translateY(var(--overlay-enter-translate-y));\n }\n }\n\n @keyframes navbar-mobile-in {\n from {\n opacity: 0;\n transform: translateY(var(--overlay-enter-translate-y));\n }\n\n to {\n opacity: 1;\n transform: translateY(0);\n }\n }\n\n @keyframes navbar-floating-to-sticky {\n from {\n opacity: 0.92;\n transform: translateY(6px) scale(0.985);\n }\n\n to {\n opacity: 1;\n transform: translateY(0) scale(1);\n }\n }\n\n @keyframes navbar-sticky-to-floating {\n from {\n opacity: 0.95;\n transform: translateY(-2px) scale(1);\n }\n\n to {\n opacity: 1;\n transform: translateY(0) scale(0.99);\n }\n }\n\n .item {\n box-sizing: border-box;\n display: inline-flex;\n flex-shrink: 0;\n gap: var(--size-1);\n align-items: center;\n min-height: var(--_touch-target);\n padding: var(--size-1-5) var(--size-2-5);\n font-size: var(--text-sm);\n font-weight: var(--font-medium);\n color: var(--navbar-item-color, var(--color-contrast-700));\n white-space: nowrap;\n text-decoration: none;\n appearance: none;\n cursor: pointer;\n background: transparent;\n border: none;\n border-radius: var(--rounded-md);\n transition:\n background var(--transition-fast),\n color var(--transition-fast);\n }\n\n .item:hover,\n .item:focus-visible {\n color: var(--navbar-item-hover-color, var(--color-contrast-900));\n outline: var(--focus-ring);\n outline-offset: 1px;\n background: var(--navbar-item-hover-bg, var(--color-contrast-100));\n }\n\n :host([active]) .item {\n color: var(--navbar-item-active-color, var(--color-primary));\n background: var(--navbar-item-active-bg, color-mix(in oklch, var(--color-primary) 12%, transparent));\n }\n\n :host([disabled]) .item,\n :host([disabled]) .item:hover,\n :host([disabled]) .item:focus-visible {\n color: var(--color-contrast-400);\n pointer-events: none;\n cursor: not-allowed;\n outline: none;\n background: transparent;\n }\n\n .item-icon,\n .item-end {\n display: inline-flex;\n align-items: center;\n }\n\n .item-label {\n min-width: 0;\n white-space: nowrap;\n }\n\n :host([navbar-mobile]) {\n display: block;\n width: 100%;\n }\n\n :host([navbar-mobile]) .item {\n display: flex;\n justify-content: flex-start;\n width: 100%;\n }\n}\n\n@layer refine.variants {\n :host([variant='flat']) {\n --_navbar-bg: color-mix(in oklch, var(--color-canvas) 88%, transparent);\n --_navbar-shadow: none;\n }\n\n :host([variant='bordered']) {\n --_navbar-bg: var(--color-canvas);\n --_navbar-border-color: color-mix(in oklch, var(--color-contrast-500) 32%, transparent);\n }\n\n :host([variant='outline']) {\n --_navbar-bg: transparent;\n --_navbar-shadow: none;\n --_navbar-border-color: color-mix(in oklch, var(--color-contrast-500) 40%, transparent);\n }\n\n :host([variant='glass']) {\n --_navbar-bg: color-mix(in oklch, var(--color-canvas) 70%, transparent);\n --navbar-backdrop-filter: blur(var(--blur-lg)) saturate(180%);\n }\n\n :host([color]) {\n --_navbar-border-color: color-mix(in oklch, var(--_theme-border) 30%, transparent);\n }\n}\n\n@media (width <= 768px) {\n @layer refine.base {\n :host([data-mode='floating']) {\n inset-inline: var(--size-2);\n top: var(--size-2);\n }\n\n :host([floating][sticky][data-scrolled]) {\n inset-inline: 0;\n top: 0;\n }\n }\n}\n"],"mappings":""}
1
+ {"version":3,"file":"navbar.css.cjs","names":[],"sources":["../../../src/layout/navbar/navbar.css?inline"],"sourcesContent":["@layer refine.base {\n :host {\n --_navbar-height: var(--navbar-height, var(--size-14));\n --_navbar-width: var(--navbar-width, min(100%, 80rem));\n --_navbar-offset: var(--navbar-offset, var(--size-3));\n --_navbar-bg: var(--navbar-bg, var(--color-canvas));\n --_navbar-color: var(--navbar-color, var(--color-contrast-900));\n --_navbar-border-color: var(--navbar-border-color, var(--color-divider));\n --_navbar-shadow: var(--navbar-shadow, var(--shadow-md));\n --_navbar-radius: var(--navbar-radius, var(--rounded-lg));\n\n box-sizing: border-box;\n display: block;\n width: 100%;\n color: var(--_navbar-color);\n }\n\n :host([data-mode='sticky']) {\n position: sticky;\n top: 0;\n z-index: var(--z-sticky);\n }\n\n :host([data-mode='floating']) {\n position: fixed;\n inset-inline: var(--_navbar-offset);\n top: var(--_navbar-offset);\n z-index: var(--z-sticky);\n }\n\n /* Preview mode: use absolute positioning so component stays within container bounds */\n :host([data-preview-mode][data-mode='floating']) {\n position: absolute;\n inset-inline: var(--_navbar-offset);\n top: auto;\n }\n\n :host([floating][sticky][data-scrolled]) {\n inset-inline: 0;\n top: 0;\n width: 100%;\n }\n\n :host([data-preview-mode][floating][sticky][data-scrolled]) {\n position: absolute;\n inset-inline: 0;\n top: auto;\n width: auto;\n }\n\n :host > nav {\n position: relative;\n display: flex;\n flex-direction: column;\n width: 100%;\n }\n\n .navbar {\n box-sizing: border-box;\n display: flex;\n flex-wrap: nowrap;\n gap: var(--size-2);\n align-items: center;\n width: 100%;\n max-width: var(--_navbar-width);\n min-height: var(--_navbar-height);\n padding: var(--size-2) var(--size-4);\n margin-inline: auto;\n overflow: auto hidden;\n color: inherit;\n white-space: nowrap;\n background: var(--_navbar-bg);\n border-top: none;\n border-right: none;\n border-bottom: var(--border) solid var(--_navbar-border-color);\n border-left: none;\n border-radius: 0;\n backdrop-filter: var(--navbar-backdrop-filter, blur(var(--blur-md)));\n transition: var(\n --_motion-transition,\n background var(--transition-normal),\n border-color var(--transition-normal),\n box-shadow var(--transition-normal),\n transform var(--transition-normal)\n );\n }\n\n :host([data-mode='floating']) .navbar {\n border-top: var(--border) solid var(--_navbar-border-color);\n border-right: var(--border) solid var(--_navbar-border-color);\n border-bottom: var(--border) solid var(--_navbar-border-color);\n border-left: var(--border) solid var(--_navbar-border-color);\n border-radius: var(--_navbar-radius);\n }\n\n :host([data-mode='sticky']) .navbar,\n :host([floating][sticky][data-scrolled]) .navbar {\n max-width: 100%;\n border-inline: none;\n border-radius: 0;\n }\n\n :host([data-mode-transitioning][data-mode='sticky']) .navbar {\n animation: navbar-floating-to-sticky var(--transition-normal) var(--ease-in-out);\n }\n\n :host([data-mode-transitioning][data-mode='floating']) .navbar {\n animation: navbar-sticky-to-floating var(--transition-normal) var(--ease-in-out);\n }\n\n .navbar-logo,\n .navbar-start,\n .navbar-center,\n .navbar-end {\n display: flex;\n align-items: center;\n min-width: 0;\n white-space: nowrap;\n }\n\n .navbar-logo {\n flex: 0 0 auto;\n }\n\n .navbar-start {\n flex: 0 0 auto;\n gap: var(--size-1);\n }\n\n .navbar-center {\n display: flex;\n flex: 0 1 auto;\n gap: var(--size-1);\n justify-content: flex-start;\n min-width: 0;\n }\n\n .navbar-end {\n flex: 0 0 auto;\n gap: var(--size-1);\n margin-inline-start: auto;\n }\n\n .mobile-toggle {\n display: none;\n flex-shrink: 0;\n align-items: center;\n justify-content: center;\n width: var(--size-9);\n height: var(--size-9);\n padding: 0;\n color: var(--color-contrast-700);\n cursor: pointer;\n background: transparent;\n border: var(--border) solid transparent;\n border-radius: var(--rounded-md);\n transition:\n background var(--transition-fast),\n border-color var(--transition-fast),\n color var(--transition-fast);\n }\n\n .mobile-toggle:hover {\n color: var(--color-contrast-900);\n background: var(--color-contrast-100);\n border-color: var(--color-contrast-200);\n }\n\n .mobile-toggle:focus-visible {\n outline: var(--focus-ring);\n }\n\n .mobile-menu-panel {\n position: relative;\n z-index: 1;\n box-sizing: border-box;\n display: none;\n width: 100%;\n max-width: var(--_navbar-width);\n padding: var(--size-2);\n margin-block-start: var(--size-2);\n margin-inline: auto;\n background: var(--_navbar-bg);\n border: var(--border) solid var(--_navbar-border-color);\n border-radius: var(--rounded-lg);\n box-shadow: var(--_shadow, var(--_navbar-shadow));\n backdrop-filter: var(--navbar-backdrop-filter, blur(var(--blur-md)));\n transform-origin: top;\n animation: navbar-mobile-in var(--transition-fast) var(--ease-out);\n }\n\n /* `:not([hidden])` — same reasoning as `.mobile-toggle` above: this panel's own `?hidden=`\n binding (navbar.ts) already covers \"not mobile\" / \"menu closed\" / \"no mobile-menu content\",\n but an unconditional `display: grid` here would still override that `[hidden]` for the \"no\n content\" case specifically, since author styles always win over the UA stylesheet. */\n :host([data-mobile][data-mobile-open]) .mobile-menu-panel:not([hidden]) {\n display: grid;\n gap: var(--size-1);\n }\n\n :host([data-mobile][data-mobile-open][data-mode='floating']) .mobile-menu-panel {\n margin-block-start: var(--size-1-5);\n }\n\n :host([data-mobile][data-mobile-open][data-mode='sticky']) .mobile-menu-panel,\n :host([data-mobile][data-mobile-open][floating][sticky][data-scrolled]) .mobile-menu-panel {\n position: absolute;\n inset-inline: 0;\n top: 100%;\n z-index: 2;\n max-width: 100%;\n margin: 0;\n border-inline: none;\n border-top: none;\n border-radius: 0 0 var(--rounded-md) var(--rounded-md);\n }\n\n /* `:not([hidden])` matters — the component's own `?hidden=` binding (navbar.ts) hides this\n button when there's neither `mobile-menu` slot content nor a `mobile-sidebar` target to\n toggle. Without it, this rule's `display: inline-flex` — an author-stylesheet declaration —\n unconditionally overrides the UA stylesheet's `[hidden] { display: none }`, since author\n styles always win over UA styles regardless of selector specificity. That left the button\n visibly clickable while toggling a `mobile-menu-panel` that stays hidden too (its own\n `?hidden=` binding includes the same \"nothing to show\" check) — clicking did nothing\n visible at all. */\n :host([data-mobile]) .mobile-toggle:not([hidden]) {\n display: inline-flex;\n order: -1;\n }\n\n :host([data-mobile]) .navbar-start,\n :host([data-mobile]) .navbar-center,\n :host([data-mobile]) .navbar-end {\n display: none;\n }\n\n :host([data-mobile][data-mobile-open]) .navbar {\n border-bottom-right-radius: var(--rounded-md);\n border-bottom-left-radius: var(--rounded-md);\n }\n\n @starting-style {\n .mobile-menu-panel {\n opacity: 0;\n transform: translateY(var(--overlay-enter-translate-y));\n }\n }\n\n @keyframes navbar-mobile-in {\n from {\n opacity: 0;\n transform: translateY(var(--overlay-enter-translate-y));\n }\n\n to {\n opacity: 1;\n transform: translateY(0);\n }\n }\n\n @keyframes navbar-floating-to-sticky {\n from {\n opacity: 0.92;\n transform: translateY(6px) scale(0.985);\n }\n\n to {\n opacity: 1;\n transform: translateY(0) scale(1);\n }\n }\n\n @keyframes navbar-sticky-to-floating {\n from {\n opacity: 0.95;\n transform: translateY(-2px) scale(1);\n }\n\n to {\n opacity: 1;\n transform: translateY(0) scale(0.99);\n }\n }\n\n .item {\n box-sizing: border-box;\n display: inline-flex;\n flex-shrink: 0;\n gap: var(--size-1);\n align-items: center;\n min-height: var(--_touch-target);\n padding: var(--size-1-5) var(--size-2-5);\n font-size: var(--text-sm);\n font-weight: var(--font-medium);\n color: var(--navbar-item-color, var(--color-contrast-700));\n white-space: nowrap;\n text-decoration: none;\n appearance: none;\n cursor: pointer;\n background: transparent;\n border: none;\n border-radius: var(--rounded-md);\n transition:\n background var(--transition-fast),\n color var(--transition-fast);\n }\n\n .item:hover,\n .item:focus-visible {\n color: var(--navbar-item-hover-color, var(--color-contrast-900));\n outline: var(--focus-ring);\n outline-offset: 1px;\n background: var(--navbar-item-hover-bg, var(--color-contrast-100));\n }\n\n :host([active]) .item {\n color: var(--navbar-item-active-color, var(--color-primary));\n background: var(--navbar-item-active-bg, color-mix(in oklch, var(--color-primary) 12%, transparent));\n }\n\n :host([disabled]) .item,\n :host([disabled]) .item:hover,\n :host([disabled]) .item:focus-visible {\n color: var(--color-contrast-400);\n pointer-events: none;\n cursor: not-allowed;\n outline: none;\n background: transparent;\n }\n\n .item-icon,\n .item-end {\n display: inline-flex;\n align-items: center;\n }\n\n .item-label {\n min-width: 0;\n white-space: nowrap;\n }\n\n /* Icon-only items (no visible label — name conveyed via aria-label) hide the empty label\n region so it stops reserving a `gap` slot next to the icon, and switch to compact,\n symmetric padding instead of the icon+label layout's wider horizontal padding. Without\n this, an icon-only item ends up lopsided: too much horizontal space around the icon plus\n a phantom gap left over for a label that never renders. */\n :host([icon-only]) .item-label {\n display: none;\n }\n\n :host([icon-only]) .item {\n padding: var(--size-1-5);\n }\n\n :host([navbar-mobile]) {\n display: block;\n width: 100%;\n }\n\n :host([navbar-mobile]) .item {\n display: flex;\n justify-content: flex-start;\n width: 100%;\n }\n}\n\n@layer refine.variants {\n :host([variant='flat']) {\n --_navbar-bg: color-mix(in oklch, var(--color-canvas) 88%, transparent);\n --_navbar-shadow: none;\n }\n\n :host([variant='bordered']) {\n --_navbar-bg: var(--color-canvas);\n --_navbar-border-color: color-mix(in oklch, var(--color-contrast-500) 32%, transparent);\n }\n\n :host([variant='outline']) {\n --_navbar-bg: transparent;\n --_navbar-shadow: none;\n --_navbar-border-color: color-mix(in oklch, var(--color-contrast-500) 40%, transparent);\n }\n\n :host([variant='glass']) {\n --_navbar-bg: color-mix(in oklch, var(--color-canvas) 70%, transparent);\n --navbar-backdrop-filter: blur(var(--blur-lg)) saturate(180%);\n }\n\n :host([color]) {\n --_navbar-border-color: color-mix(in oklch, var(--_theme-border) 30%, transparent);\n }\n}\n\n@media (width <= 768px) {\n @layer refine.base {\n :host([data-mode='floating']) {\n inset-inline: var(--size-2);\n top: var(--size-2);\n }\n\n :host([floating][sticky][data-scrolled]) {\n inset-inline: 0;\n top: 0;\n }\n }\n}\n"],"mappings":""}
@@ -1,5 +1,5 @@
1
1
  //#region src/layout/navbar/navbar.css?inline
2
- var e = "@layer refine.base{:host{--_navbar-height:var(--navbar-height,var(--size-14));--_navbar-width:var(--navbar-width,min(100%, 80rem));--_navbar-offset:var(--navbar-offset,var(--size-3));--_navbar-bg:var(--navbar-bg,var(--color-canvas));--_navbar-color:var(--navbar-color,var(--color-contrast-900));--_navbar-border-color:var(--navbar-border-color,var(--color-divider));--_navbar-shadow:var(--navbar-shadow,var(--shadow-md));--_navbar-radius:var(--navbar-radius,var(--rounded-lg));box-sizing:border-box;width:100%;color:var(--_navbar-color);display:block}:host([data-mode=sticky]){z-index:var(--z-sticky);position:sticky;top:0}:host([data-mode=floating]){inset-inline:var(--_navbar-offset);top:var(--_navbar-offset);z-index:var(--z-sticky);position:fixed}:host([data-preview-mode][data-mode=floating]){inset-inline:var(--_navbar-offset);position:absolute;top:auto}:host([floating][sticky][data-scrolled]){width:100%;top:0;left:0;right:0}:host([data-preview-mode][floating][sticky][data-scrolled]){width:auto;position:absolute;top:auto;left:0;right:0}:host>nav{flex-direction:column;width:100%;display:flex;position:relative}.navbar{box-sizing:border-box;gap:var(--size-2);width:100%;max-width:var(--_navbar-width);min-height:var(--_navbar-height);padding:var(--size-2) var(--size-4);color:inherit;white-space:nowrap;background:var(--_navbar-bg);border-top:none;border-right:none;border-bottom:var(--border) solid var(--_navbar-border-color);-webkit-backdrop-filter:var(--navbar-backdrop-filter,blur(var(--blur-md)));backdrop-filter:var(--navbar-backdrop-filter,blur(var(--blur-md)));transition:var(--_motion-transition,background var(--transition-normal), border-color var(--transition-normal), box-shadow var(--transition-normal), transform var(--transition-normal));border-left:none;border-radius:0;flex-wrap:nowrap;align-items:center;margin-left:auto;margin-right:auto;display:flex;overflow:auto hidden}:host([data-mode=floating]) .navbar{border-top:var(--border) solid var(--_navbar-border-color);border-right:var(--border) solid var(--_navbar-border-color);border-bottom:var(--border) solid var(--_navbar-border-color);border-left:var(--border) solid var(--_navbar-border-color);border-radius:var(--_navbar-radius)}:host([data-mode=sticky]) .navbar,:host([floating][sticky][data-scrolled]) .navbar{border-left:none;border-right:none;border-radius:0;max-width:100%}:host([data-mode-transitioning][data-mode=sticky]) .navbar{animation:navbar-floating-to-sticky var(--transition-normal) var(--ease-in-out)}:host([data-mode-transitioning][data-mode=floating]) .navbar{animation:navbar-sticky-to-floating var(--transition-normal) var(--ease-in-out)}.navbar-logo,.navbar-start,.navbar-center,.navbar-end{white-space:nowrap;align-items:center;min-width:0;display:flex}.navbar-logo{flex:none}.navbar-start{gap:var(--size-1);flex:none}.navbar-center{gap:var(--size-1);flex:0 auto;justify-content:flex-start;min-width:0;display:flex}.navbar-end{gap:var(--size-1);flex:none}.navbar-end:not(: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}.navbar-end: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}.mobile-toggle{width:var(--size-9);height:var(--size-9);color:var(--color-contrast-700);cursor:pointer;border:var(--border) solid transparent;border-radius:var(--rounded-md);transition:background var(--transition-fast), border-color var(--transition-fast), color var(--transition-fast);background:0 0;flex-shrink:0;justify-content:center;align-items:center;padding:0;display:none}.mobile-toggle:hover{color:var(--color-contrast-900);background:var(--color-contrast-100);border-color:var(--color-contrast-200)}.mobile-toggle:focus-visible{outline:var(--focus-ring)}.mobile-menu-panel{z-index:1;box-sizing:border-box;width:100%;max-width:var(--_navbar-width);padding:var(--size-2);background:var(--_navbar-bg);border:var(--border) solid var(--_navbar-border-color);border-radius:var(--rounded-lg);box-shadow:var(--_shadow,var(--_navbar-shadow));-webkit-backdrop-filter:var(--navbar-backdrop-filter,blur(var(--blur-md)));backdrop-filter:var(--navbar-backdrop-filter,blur(var(--blur-md)));transform-origin:top;animation:navbar-mobile-in var(--transition-fast) var(--ease-out);margin-top:var(--size-2);margin-left:auto;margin-right:auto;display:none;position:relative}:host([data-mobile][data-mobile-open]) .mobile-menu-panel:not([hidden]){gap:var(--size-1);display:grid}:host([data-mobile][data-mobile-open][data-mode=floating]) .mobile-menu-panel{margin-top:var(--size-1-5)}:host([data-mobile][data-mobile-open][data-mode=sticky]) .mobile-menu-panel,:host([data-mobile][data-mobile-open][floating][sticky][data-scrolled]) .mobile-menu-panel{z-index:2;border-radius:0 0 var(--rounded-md) var(--rounded-md);border-top:none;border-left:none;border-right:none;max-width:100%;margin:0;position:absolute;top:100%;left:0;right:0}:host([data-mobile]) .mobile-toggle:not([hidden]){order:-1;display:inline-flex}:host([data-mobile]) .navbar-start,:host([data-mobile]) .navbar-center,:host([data-mobile]) .navbar-end{display:none}:host([data-mobile][data-mobile-open]) .navbar{border-bottom-right-radius:var(--rounded-md);border-bottom-left-radius:var(--rounded-md)}@starting-style{.mobile-menu-panel{opacity:0;transform:translateY(var(--overlay-enter-translate-y))}}@keyframes navbar-mobile-in{0%{opacity:0;transform:translateY(var(--overlay-enter-translate-y))}to{opacity:1;transform:translateY(0)}}@keyframes navbar-floating-to-sticky{0%{opacity:.92;transform:translateY(6px)scale(.985)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes navbar-sticky-to-floating{0%{opacity:.95;transform:translateY(-2px)scale(1)}to{opacity:1;transform:translateY(0)scale(.99)}}.item{box-sizing:border-box;gap:var(--size-1);min-height:var(--_touch-target);padding:var(--size-1-5) var(--size-2-5);font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--navbar-item-color,var(--color-contrast-700));white-space:nowrap;appearance:none;cursor:pointer;border-radius:var(--rounded-md);transition:background var(--transition-fast), color var(--transition-fast);background:0 0;border:none;flex-shrink:0;align-items:center;text-decoration:none;display:inline-flex}.item:hover,.item:focus-visible{color:var(--navbar-item-hover-color,var(--color-contrast-900));outline:var(--focus-ring);outline-offset:1px;background:var(--navbar-item-hover-bg,var(--color-contrast-100))}:host([active]) .item{color:var(--navbar-item-active-color,var(--color-primary));background:var(--navbar-item-active-bg,color-mix(in oklch, var(--color-primary) 12%, transparent))}:host([disabled]) .item,:host([disabled]) .item:hover,:host([disabled]) .item:focus-visible{color:var(--color-contrast-400);pointer-events:none;cursor:not-allowed;background:0 0;outline:none}.item-icon,.item-end{align-items:center;display:inline-flex}.item-label{white-space:nowrap;min-width:0}:host([navbar-mobile]){width:100%;display:block}:host([navbar-mobile]) .item{justify-content:flex-start;width:100%;display:flex}}@layer refine.variants{:host([variant=flat]){--_navbar-bg:color-mix(in oklch, var(--color-canvas) 88%, transparent);--_navbar-shadow:none}:host([variant=bordered]){--_navbar-bg:var(--color-canvas);--_navbar-border-color:color-mix(in oklch, var(--color-contrast-500) 32%, transparent)}:host([variant=outline]){--_navbar-bg:transparent;--_navbar-shadow:none;--_navbar-border-color:color-mix(in oklch, var(--color-contrast-500) 40%, transparent)}:host([variant=glass]){--_navbar-bg:color-mix(in oklch, var(--color-canvas) 70%, transparent);--navbar-backdrop-filter:blur(var(--blur-lg)) saturate(180%)}:host([color]){--_navbar-border-color:color-mix(in oklch, var(--_theme-border) 30%, transparent)}}@media (width<=768px){@layer refine.base{:host([data-mode=floating]){inset-inline:var(--size-2);top:var(--size-2)}:host([floating][sticky][data-scrolled]){top:0;left:0;right:0}}}";
2
+ var e = "@layer refine.base{:host{--_navbar-height:var(--navbar-height,var(--size-14));--_navbar-width:var(--navbar-width,min(100%, 80rem));--_navbar-offset:var(--navbar-offset,var(--size-3));--_navbar-bg:var(--navbar-bg,var(--color-canvas));--_navbar-color:var(--navbar-color,var(--color-contrast-900));--_navbar-border-color:var(--navbar-border-color,var(--color-divider));--_navbar-shadow:var(--navbar-shadow,var(--shadow-md));--_navbar-radius:var(--navbar-radius,var(--rounded-lg));box-sizing:border-box;width:100%;color:var(--_navbar-color);display:block}:host([data-mode=sticky]){z-index:var(--z-sticky);position:sticky;top:0}:host([data-mode=floating]){inset-inline:var(--_navbar-offset);top:var(--_navbar-offset);z-index:var(--z-sticky);position:fixed}:host([data-preview-mode][data-mode=floating]){inset-inline:var(--_navbar-offset);position:absolute;top:auto}:host([floating][sticky][data-scrolled]){width:100%;top:0;left:0;right:0}:host([data-preview-mode][floating][sticky][data-scrolled]){width:auto;position:absolute;top:auto;left:0;right:0}:host>nav{flex-direction:column;width:100%;display:flex;position:relative}.navbar{box-sizing:border-box;gap:var(--size-2);width:100%;max-width:var(--_navbar-width);min-height:var(--_navbar-height);padding:var(--size-2) var(--size-4);color:inherit;white-space:nowrap;background:var(--_navbar-bg);border-top:none;border-right:none;border-bottom:var(--border) solid var(--_navbar-border-color);-webkit-backdrop-filter:var(--navbar-backdrop-filter,blur(var(--blur-md)));backdrop-filter:var(--navbar-backdrop-filter,blur(var(--blur-md)));transition:var(--_motion-transition,background var(--transition-normal), border-color var(--transition-normal), box-shadow var(--transition-normal), transform var(--transition-normal));border-left:none;border-radius:0;flex-wrap:nowrap;align-items:center;margin-left:auto;margin-right:auto;display:flex;overflow:auto hidden}:host([data-mode=floating]) .navbar{border-top:var(--border) solid var(--_navbar-border-color);border-right:var(--border) solid var(--_navbar-border-color);border-bottom:var(--border) solid var(--_navbar-border-color);border-left:var(--border) solid var(--_navbar-border-color);border-radius:var(--_navbar-radius)}:host([data-mode=sticky]) .navbar,:host([floating][sticky][data-scrolled]) .navbar{border-left:none;border-right:none;border-radius:0;max-width:100%}:host([data-mode-transitioning][data-mode=sticky]) .navbar{animation:navbar-floating-to-sticky var(--transition-normal) var(--ease-in-out)}:host([data-mode-transitioning][data-mode=floating]) .navbar{animation:navbar-sticky-to-floating var(--transition-normal) var(--ease-in-out)}.navbar-logo,.navbar-start,.navbar-center,.navbar-end{white-space:nowrap;align-items:center;min-width:0;display:flex}.navbar-logo{flex:none}.navbar-start{gap:var(--size-1);flex:none}.navbar-center{gap:var(--size-1);flex:0 auto;justify-content:flex-start;min-width:0;display:flex}.navbar-end{gap:var(--size-1);flex:none}.navbar-end:not(: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}.navbar-end: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}.mobile-toggle{width:var(--size-9);height:var(--size-9);color:var(--color-contrast-700);cursor:pointer;border:var(--border) solid transparent;border-radius:var(--rounded-md);transition:background var(--transition-fast), border-color var(--transition-fast), color var(--transition-fast);background:0 0;flex-shrink:0;justify-content:center;align-items:center;padding:0;display:none}.mobile-toggle:hover{color:var(--color-contrast-900);background:var(--color-contrast-100);border-color:var(--color-contrast-200)}.mobile-toggle:focus-visible{outline:var(--focus-ring)}.mobile-menu-panel{z-index:1;box-sizing:border-box;width:100%;max-width:var(--_navbar-width);padding:var(--size-2);background:var(--_navbar-bg);border:var(--border) solid var(--_navbar-border-color);border-radius:var(--rounded-lg);box-shadow:var(--_shadow,var(--_navbar-shadow));-webkit-backdrop-filter:var(--navbar-backdrop-filter,blur(var(--blur-md)));backdrop-filter:var(--navbar-backdrop-filter,blur(var(--blur-md)));transform-origin:top;animation:navbar-mobile-in var(--transition-fast) var(--ease-out);margin-top:var(--size-2);margin-left:auto;margin-right:auto;display:none;position:relative}:host([data-mobile][data-mobile-open]) .mobile-menu-panel:not([hidden]){gap:var(--size-1);display:grid}:host([data-mobile][data-mobile-open][data-mode=floating]) .mobile-menu-panel{margin-top:var(--size-1-5)}:host([data-mobile][data-mobile-open][data-mode=sticky]) .mobile-menu-panel,:host([data-mobile][data-mobile-open][floating][sticky][data-scrolled]) .mobile-menu-panel{z-index:2;border-radius:0 0 var(--rounded-md) var(--rounded-md);border-top:none;border-left:none;border-right:none;max-width:100%;margin:0;position:absolute;top:100%;left:0;right:0}:host([data-mobile]) .mobile-toggle:not([hidden]){order:-1;display:inline-flex}:host([data-mobile]) .navbar-start,:host([data-mobile]) .navbar-center,:host([data-mobile]) .navbar-end{display:none}:host([data-mobile][data-mobile-open]) .navbar{border-bottom-right-radius:var(--rounded-md);border-bottom-left-radius:var(--rounded-md)}@starting-style{.mobile-menu-panel{opacity:0;transform:translateY(var(--overlay-enter-translate-y))}}@keyframes navbar-mobile-in{0%{opacity:0;transform:translateY(var(--overlay-enter-translate-y))}to{opacity:1;transform:translateY(0)}}@keyframes navbar-floating-to-sticky{0%{opacity:.92;transform:translateY(6px)scale(.985)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes navbar-sticky-to-floating{0%{opacity:.95;transform:translateY(-2px)scale(1)}to{opacity:1;transform:translateY(0)scale(.99)}}.item{box-sizing:border-box;gap:var(--size-1);min-height:var(--_touch-target);padding:var(--size-1-5) var(--size-2-5);font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--navbar-item-color,var(--color-contrast-700));white-space:nowrap;appearance:none;cursor:pointer;border-radius:var(--rounded-md);transition:background var(--transition-fast), color var(--transition-fast);background:0 0;border:none;flex-shrink:0;align-items:center;text-decoration:none;display:inline-flex}.item:hover,.item:focus-visible{color:var(--navbar-item-hover-color,var(--color-contrast-900));outline:var(--focus-ring);outline-offset:1px;background:var(--navbar-item-hover-bg,var(--color-contrast-100))}:host([active]) .item{color:var(--navbar-item-active-color,var(--color-primary));background:var(--navbar-item-active-bg,color-mix(in oklch, var(--color-primary) 12%, transparent))}:host([disabled]) .item,:host([disabled]) .item:hover,:host([disabled]) .item:focus-visible{color:var(--color-contrast-400);pointer-events:none;cursor:not-allowed;background:0 0;outline:none}.item-icon,.item-end{align-items:center;display:inline-flex}.item-label{white-space:nowrap;min-width:0}:host([icon-only]) .item-label{display:none}:host([icon-only]) .item{padding:var(--size-1-5)}:host([navbar-mobile]){width:100%;display:block}:host([navbar-mobile]) .item{justify-content:flex-start;width:100%;display:flex}}@layer refine.variants{:host([variant=flat]){--_navbar-bg:color-mix(in oklch, var(--color-canvas) 88%, transparent);--_navbar-shadow:none}:host([variant=bordered]){--_navbar-bg:var(--color-canvas);--_navbar-border-color:color-mix(in oklch, var(--color-contrast-500) 32%, transparent)}:host([variant=outline]){--_navbar-bg:transparent;--_navbar-shadow:none;--_navbar-border-color:color-mix(in oklch, var(--color-contrast-500) 40%, transparent)}:host([variant=glass]){--_navbar-bg:color-mix(in oklch, var(--color-canvas) 70%, transparent);--navbar-backdrop-filter:blur(var(--blur-lg)) saturate(180%)}:host([color]){--_navbar-border-color:color-mix(in oklch, var(--_theme-border) 30%, transparent)}}@media (width<=768px){@layer refine.base{:host([data-mode=floating]){inset-inline:var(--size-2);top:var(--size-2)}:host([floating][sticky][data-scrolled]){top:0;left:0;right:0}}}";
3
3
  //#endregion
4
4
  export { e as default };
5
5
 
@@ -1 +1 @@
1
- {"version":3,"file":"navbar.css.js","names":[],"sources":["../../../src/layout/navbar/navbar.css?inline"],"sourcesContent":["@layer refine.base {\n :host {\n --_navbar-height: var(--navbar-height, var(--size-14));\n --_navbar-width: var(--navbar-width, min(100%, 80rem));\n --_navbar-offset: var(--navbar-offset, var(--size-3));\n --_navbar-bg: var(--navbar-bg, var(--color-canvas));\n --_navbar-color: var(--navbar-color, var(--color-contrast-900));\n --_navbar-border-color: var(--navbar-border-color, var(--color-divider));\n --_navbar-shadow: var(--navbar-shadow, var(--shadow-md));\n --_navbar-radius: var(--navbar-radius, var(--rounded-lg));\n\n box-sizing: border-box;\n display: block;\n width: 100%;\n color: var(--_navbar-color);\n }\n\n :host([data-mode='sticky']) {\n position: sticky;\n top: 0;\n z-index: var(--z-sticky);\n }\n\n :host([data-mode='floating']) {\n position: fixed;\n inset-inline: var(--_navbar-offset);\n top: var(--_navbar-offset);\n z-index: var(--z-sticky);\n }\n\n /* Preview mode: use absolute positioning so component stays within container bounds */\n :host([data-preview-mode][data-mode='floating']) {\n position: absolute;\n inset-inline: var(--_navbar-offset);\n top: auto;\n }\n\n :host([floating][sticky][data-scrolled]) {\n inset-inline: 0;\n top: 0;\n width: 100%;\n }\n\n :host([data-preview-mode][floating][sticky][data-scrolled]) {\n position: absolute;\n inset-inline: 0;\n top: auto;\n width: auto;\n }\n\n :host > nav {\n position: relative;\n display: flex;\n flex-direction: column;\n width: 100%;\n }\n\n .navbar {\n box-sizing: border-box;\n display: flex;\n flex-wrap: nowrap;\n gap: var(--size-2);\n align-items: center;\n width: 100%;\n max-width: var(--_navbar-width);\n min-height: var(--_navbar-height);\n padding: var(--size-2) var(--size-4);\n margin-inline: auto;\n overflow: auto hidden;\n color: inherit;\n white-space: nowrap;\n background: var(--_navbar-bg);\n border-top: none;\n border-right: none;\n border-bottom: var(--border) solid var(--_navbar-border-color);\n border-left: none;\n border-radius: 0;\n backdrop-filter: var(--navbar-backdrop-filter, blur(var(--blur-md)));\n transition: var(\n --_motion-transition,\n background var(--transition-normal),\n border-color var(--transition-normal),\n box-shadow var(--transition-normal),\n transform var(--transition-normal)\n );\n }\n\n :host([data-mode='floating']) .navbar {\n border-top: var(--border) solid var(--_navbar-border-color);\n border-right: var(--border) solid var(--_navbar-border-color);\n border-bottom: var(--border) solid var(--_navbar-border-color);\n border-left: var(--border) solid var(--_navbar-border-color);\n border-radius: var(--_navbar-radius);\n }\n\n :host([data-mode='sticky']) .navbar,\n :host([floating][sticky][data-scrolled]) .navbar {\n max-width: 100%;\n border-inline: none;\n border-radius: 0;\n }\n\n :host([data-mode-transitioning][data-mode='sticky']) .navbar {\n animation: navbar-floating-to-sticky var(--transition-normal) var(--ease-in-out);\n }\n\n :host([data-mode-transitioning][data-mode='floating']) .navbar {\n animation: navbar-sticky-to-floating var(--transition-normal) var(--ease-in-out);\n }\n\n .navbar-logo,\n .navbar-start,\n .navbar-center,\n .navbar-end {\n display: flex;\n align-items: center;\n min-width: 0;\n white-space: nowrap;\n }\n\n .navbar-logo {\n flex: 0 0 auto;\n }\n\n .navbar-start {\n flex: 0 0 auto;\n gap: var(--size-1);\n }\n\n .navbar-center {\n display: flex;\n flex: 0 1 auto;\n gap: var(--size-1);\n justify-content: flex-start;\n min-width: 0;\n }\n\n .navbar-end {\n flex: 0 0 auto;\n gap: var(--size-1);\n margin-inline-start: auto;\n }\n\n .mobile-toggle {\n display: none;\n flex-shrink: 0;\n align-items: center;\n justify-content: center;\n width: var(--size-9);\n height: var(--size-9);\n padding: 0;\n color: var(--color-contrast-700);\n cursor: pointer;\n background: transparent;\n border: var(--border) solid transparent;\n border-radius: var(--rounded-md);\n transition:\n background var(--transition-fast),\n border-color var(--transition-fast),\n color var(--transition-fast);\n }\n\n .mobile-toggle:hover {\n color: var(--color-contrast-900);\n background: var(--color-contrast-100);\n border-color: var(--color-contrast-200);\n }\n\n .mobile-toggle:focus-visible {\n outline: var(--focus-ring);\n }\n\n .mobile-menu-panel {\n position: relative;\n z-index: 1;\n box-sizing: border-box;\n display: none;\n width: 100%;\n max-width: var(--_navbar-width);\n padding: var(--size-2);\n margin-block-start: var(--size-2);\n margin-inline: auto;\n background: var(--_navbar-bg);\n border: var(--border) solid var(--_navbar-border-color);\n border-radius: var(--rounded-lg);\n box-shadow: var(--_shadow, var(--_navbar-shadow));\n backdrop-filter: var(--navbar-backdrop-filter, blur(var(--blur-md)));\n transform-origin: top;\n animation: navbar-mobile-in var(--transition-fast) var(--ease-out);\n }\n\n /* `:not([hidden])` — same reasoning as `.mobile-toggle` above: this panel's own `?hidden=`\n binding (navbar.ts) already covers \"not mobile\" / \"menu closed\" / \"no mobile-menu content\",\n but an unconditional `display: grid` here would still override that `[hidden]` for the \"no\n content\" case specifically, since author styles always win over the UA stylesheet. */\n :host([data-mobile][data-mobile-open]) .mobile-menu-panel:not([hidden]) {\n display: grid;\n gap: var(--size-1);\n }\n\n :host([data-mobile][data-mobile-open][data-mode='floating']) .mobile-menu-panel {\n margin-block-start: var(--size-1-5);\n }\n\n :host([data-mobile][data-mobile-open][data-mode='sticky']) .mobile-menu-panel,\n :host([data-mobile][data-mobile-open][floating][sticky][data-scrolled]) .mobile-menu-panel {\n position: absolute;\n inset-inline: 0;\n top: 100%;\n z-index: 2;\n max-width: 100%;\n margin: 0;\n border-inline: none;\n border-top: none;\n border-radius: 0 0 var(--rounded-md) var(--rounded-md);\n }\n\n /* `:not([hidden])` matters — the component's own `?hidden=` binding (navbar.ts) hides this\n button when there's neither `mobile-menu` slot content nor a `mobile-sidebar` target to\n toggle. Without it, this rule's `display: inline-flex` — an author-stylesheet declaration —\n unconditionally overrides the UA stylesheet's `[hidden] { display: none }`, since author\n styles always win over UA styles regardless of selector specificity. That left the button\n visibly clickable while toggling a `mobile-menu-panel` that stays hidden too (its own\n `?hidden=` binding includes the same \"nothing to show\" check) — clicking did nothing\n visible at all. */\n :host([data-mobile]) .mobile-toggle:not([hidden]) {\n display: inline-flex;\n order: -1;\n }\n\n :host([data-mobile]) .navbar-start,\n :host([data-mobile]) .navbar-center,\n :host([data-mobile]) .navbar-end {\n display: none;\n }\n\n :host([data-mobile][data-mobile-open]) .navbar {\n border-bottom-right-radius: var(--rounded-md);\n border-bottom-left-radius: var(--rounded-md);\n }\n\n @starting-style {\n .mobile-menu-panel {\n opacity: 0;\n transform: translateY(var(--overlay-enter-translate-y));\n }\n }\n\n @keyframes navbar-mobile-in {\n from {\n opacity: 0;\n transform: translateY(var(--overlay-enter-translate-y));\n }\n\n to {\n opacity: 1;\n transform: translateY(0);\n }\n }\n\n @keyframes navbar-floating-to-sticky {\n from {\n opacity: 0.92;\n transform: translateY(6px) scale(0.985);\n }\n\n to {\n opacity: 1;\n transform: translateY(0) scale(1);\n }\n }\n\n @keyframes navbar-sticky-to-floating {\n from {\n opacity: 0.95;\n transform: translateY(-2px) scale(1);\n }\n\n to {\n opacity: 1;\n transform: translateY(0) scale(0.99);\n }\n }\n\n .item {\n box-sizing: border-box;\n display: inline-flex;\n flex-shrink: 0;\n gap: var(--size-1);\n align-items: center;\n min-height: var(--_touch-target);\n padding: var(--size-1-5) var(--size-2-5);\n font-size: var(--text-sm);\n font-weight: var(--font-medium);\n color: var(--navbar-item-color, var(--color-contrast-700));\n white-space: nowrap;\n text-decoration: none;\n appearance: none;\n cursor: pointer;\n background: transparent;\n border: none;\n border-radius: var(--rounded-md);\n transition:\n background var(--transition-fast),\n color var(--transition-fast);\n }\n\n .item:hover,\n .item:focus-visible {\n color: var(--navbar-item-hover-color, var(--color-contrast-900));\n outline: var(--focus-ring);\n outline-offset: 1px;\n background: var(--navbar-item-hover-bg, var(--color-contrast-100));\n }\n\n :host([active]) .item {\n color: var(--navbar-item-active-color, var(--color-primary));\n background: var(--navbar-item-active-bg, color-mix(in oklch, var(--color-primary) 12%, transparent));\n }\n\n :host([disabled]) .item,\n :host([disabled]) .item:hover,\n :host([disabled]) .item:focus-visible {\n color: var(--color-contrast-400);\n pointer-events: none;\n cursor: not-allowed;\n outline: none;\n background: transparent;\n }\n\n .item-icon,\n .item-end {\n display: inline-flex;\n align-items: center;\n }\n\n .item-label {\n min-width: 0;\n white-space: nowrap;\n }\n\n :host([navbar-mobile]) {\n display: block;\n width: 100%;\n }\n\n :host([navbar-mobile]) .item {\n display: flex;\n justify-content: flex-start;\n width: 100%;\n }\n}\n\n@layer refine.variants {\n :host([variant='flat']) {\n --_navbar-bg: color-mix(in oklch, var(--color-canvas) 88%, transparent);\n --_navbar-shadow: none;\n }\n\n :host([variant='bordered']) {\n --_navbar-bg: var(--color-canvas);\n --_navbar-border-color: color-mix(in oklch, var(--color-contrast-500) 32%, transparent);\n }\n\n :host([variant='outline']) {\n --_navbar-bg: transparent;\n --_navbar-shadow: none;\n --_navbar-border-color: color-mix(in oklch, var(--color-contrast-500) 40%, transparent);\n }\n\n :host([variant='glass']) {\n --_navbar-bg: color-mix(in oklch, var(--color-canvas) 70%, transparent);\n --navbar-backdrop-filter: blur(var(--blur-lg)) saturate(180%);\n }\n\n :host([color]) {\n --_navbar-border-color: color-mix(in oklch, var(--_theme-border) 30%, transparent);\n }\n}\n\n@media (width <= 768px) {\n @layer refine.base {\n :host([data-mode='floating']) {\n inset-inline: var(--size-2);\n top: var(--size-2);\n }\n\n :host([floating][sticky][data-scrolled]) {\n inset-inline: 0;\n top: 0;\n }\n }\n}\n"],"mappings":""}
1
+ {"version":3,"file":"navbar.css.js","names":[],"sources":["../../../src/layout/navbar/navbar.css?inline"],"sourcesContent":["@layer refine.base {\n :host {\n --_navbar-height: var(--navbar-height, var(--size-14));\n --_navbar-width: var(--navbar-width, min(100%, 80rem));\n --_navbar-offset: var(--navbar-offset, var(--size-3));\n --_navbar-bg: var(--navbar-bg, var(--color-canvas));\n --_navbar-color: var(--navbar-color, var(--color-contrast-900));\n --_navbar-border-color: var(--navbar-border-color, var(--color-divider));\n --_navbar-shadow: var(--navbar-shadow, var(--shadow-md));\n --_navbar-radius: var(--navbar-radius, var(--rounded-lg));\n\n box-sizing: border-box;\n display: block;\n width: 100%;\n color: var(--_navbar-color);\n }\n\n :host([data-mode='sticky']) {\n position: sticky;\n top: 0;\n z-index: var(--z-sticky);\n }\n\n :host([data-mode='floating']) {\n position: fixed;\n inset-inline: var(--_navbar-offset);\n top: var(--_navbar-offset);\n z-index: var(--z-sticky);\n }\n\n /* Preview mode: use absolute positioning so component stays within container bounds */\n :host([data-preview-mode][data-mode='floating']) {\n position: absolute;\n inset-inline: var(--_navbar-offset);\n top: auto;\n }\n\n :host([floating][sticky][data-scrolled]) {\n inset-inline: 0;\n top: 0;\n width: 100%;\n }\n\n :host([data-preview-mode][floating][sticky][data-scrolled]) {\n position: absolute;\n inset-inline: 0;\n top: auto;\n width: auto;\n }\n\n :host > nav {\n position: relative;\n display: flex;\n flex-direction: column;\n width: 100%;\n }\n\n .navbar {\n box-sizing: border-box;\n display: flex;\n flex-wrap: nowrap;\n gap: var(--size-2);\n align-items: center;\n width: 100%;\n max-width: var(--_navbar-width);\n min-height: var(--_navbar-height);\n padding: var(--size-2) var(--size-4);\n margin-inline: auto;\n overflow: auto hidden;\n color: inherit;\n white-space: nowrap;\n background: var(--_navbar-bg);\n border-top: none;\n border-right: none;\n border-bottom: var(--border) solid var(--_navbar-border-color);\n border-left: none;\n border-radius: 0;\n backdrop-filter: var(--navbar-backdrop-filter, blur(var(--blur-md)));\n transition: var(\n --_motion-transition,\n background var(--transition-normal),\n border-color var(--transition-normal),\n box-shadow var(--transition-normal),\n transform var(--transition-normal)\n );\n }\n\n :host([data-mode='floating']) .navbar {\n border-top: var(--border) solid var(--_navbar-border-color);\n border-right: var(--border) solid var(--_navbar-border-color);\n border-bottom: var(--border) solid var(--_navbar-border-color);\n border-left: var(--border) solid var(--_navbar-border-color);\n border-radius: var(--_navbar-radius);\n }\n\n :host([data-mode='sticky']) .navbar,\n :host([floating][sticky][data-scrolled]) .navbar {\n max-width: 100%;\n border-inline: none;\n border-radius: 0;\n }\n\n :host([data-mode-transitioning][data-mode='sticky']) .navbar {\n animation: navbar-floating-to-sticky var(--transition-normal) var(--ease-in-out);\n }\n\n :host([data-mode-transitioning][data-mode='floating']) .navbar {\n animation: navbar-sticky-to-floating var(--transition-normal) var(--ease-in-out);\n }\n\n .navbar-logo,\n .navbar-start,\n .navbar-center,\n .navbar-end {\n display: flex;\n align-items: center;\n min-width: 0;\n white-space: nowrap;\n }\n\n .navbar-logo {\n flex: 0 0 auto;\n }\n\n .navbar-start {\n flex: 0 0 auto;\n gap: var(--size-1);\n }\n\n .navbar-center {\n display: flex;\n flex: 0 1 auto;\n gap: var(--size-1);\n justify-content: flex-start;\n min-width: 0;\n }\n\n .navbar-end {\n flex: 0 0 auto;\n gap: var(--size-1);\n margin-inline-start: auto;\n }\n\n .mobile-toggle {\n display: none;\n flex-shrink: 0;\n align-items: center;\n justify-content: center;\n width: var(--size-9);\n height: var(--size-9);\n padding: 0;\n color: var(--color-contrast-700);\n cursor: pointer;\n background: transparent;\n border: var(--border) solid transparent;\n border-radius: var(--rounded-md);\n transition:\n background var(--transition-fast),\n border-color var(--transition-fast),\n color var(--transition-fast);\n }\n\n .mobile-toggle:hover {\n color: var(--color-contrast-900);\n background: var(--color-contrast-100);\n border-color: var(--color-contrast-200);\n }\n\n .mobile-toggle:focus-visible {\n outline: var(--focus-ring);\n }\n\n .mobile-menu-panel {\n position: relative;\n z-index: 1;\n box-sizing: border-box;\n display: none;\n width: 100%;\n max-width: var(--_navbar-width);\n padding: var(--size-2);\n margin-block-start: var(--size-2);\n margin-inline: auto;\n background: var(--_navbar-bg);\n border: var(--border) solid var(--_navbar-border-color);\n border-radius: var(--rounded-lg);\n box-shadow: var(--_shadow, var(--_navbar-shadow));\n backdrop-filter: var(--navbar-backdrop-filter, blur(var(--blur-md)));\n transform-origin: top;\n animation: navbar-mobile-in var(--transition-fast) var(--ease-out);\n }\n\n /* `:not([hidden])` — same reasoning as `.mobile-toggle` above: this panel's own `?hidden=`\n binding (navbar.ts) already covers \"not mobile\" / \"menu closed\" / \"no mobile-menu content\",\n but an unconditional `display: grid` here would still override that `[hidden]` for the \"no\n content\" case specifically, since author styles always win over the UA stylesheet. */\n :host([data-mobile][data-mobile-open]) .mobile-menu-panel:not([hidden]) {\n display: grid;\n gap: var(--size-1);\n }\n\n :host([data-mobile][data-mobile-open][data-mode='floating']) .mobile-menu-panel {\n margin-block-start: var(--size-1-5);\n }\n\n :host([data-mobile][data-mobile-open][data-mode='sticky']) .mobile-menu-panel,\n :host([data-mobile][data-mobile-open][floating][sticky][data-scrolled]) .mobile-menu-panel {\n position: absolute;\n inset-inline: 0;\n top: 100%;\n z-index: 2;\n max-width: 100%;\n margin: 0;\n border-inline: none;\n border-top: none;\n border-radius: 0 0 var(--rounded-md) var(--rounded-md);\n }\n\n /* `:not([hidden])` matters — the component's own `?hidden=` binding (navbar.ts) hides this\n button when there's neither `mobile-menu` slot content nor a `mobile-sidebar` target to\n toggle. Without it, this rule's `display: inline-flex` — an author-stylesheet declaration —\n unconditionally overrides the UA stylesheet's `[hidden] { display: none }`, since author\n styles always win over UA styles regardless of selector specificity. That left the button\n visibly clickable while toggling a `mobile-menu-panel` that stays hidden too (its own\n `?hidden=` binding includes the same \"nothing to show\" check) — clicking did nothing\n visible at all. */\n :host([data-mobile]) .mobile-toggle:not([hidden]) {\n display: inline-flex;\n order: -1;\n }\n\n :host([data-mobile]) .navbar-start,\n :host([data-mobile]) .navbar-center,\n :host([data-mobile]) .navbar-end {\n display: none;\n }\n\n :host([data-mobile][data-mobile-open]) .navbar {\n border-bottom-right-radius: var(--rounded-md);\n border-bottom-left-radius: var(--rounded-md);\n }\n\n @starting-style {\n .mobile-menu-panel {\n opacity: 0;\n transform: translateY(var(--overlay-enter-translate-y));\n }\n }\n\n @keyframes navbar-mobile-in {\n from {\n opacity: 0;\n transform: translateY(var(--overlay-enter-translate-y));\n }\n\n to {\n opacity: 1;\n transform: translateY(0);\n }\n }\n\n @keyframes navbar-floating-to-sticky {\n from {\n opacity: 0.92;\n transform: translateY(6px) scale(0.985);\n }\n\n to {\n opacity: 1;\n transform: translateY(0) scale(1);\n }\n }\n\n @keyframes navbar-sticky-to-floating {\n from {\n opacity: 0.95;\n transform: translateY(-2px) scale(1);\n }\n\n to {\n opacity: 1;\n transform: translateY(0) scale(0.99);\n }\n }\n\n .item {\n box-sizing: border-box;\n display: inline-flex;\n flex-shrink: 0;\n gap: var(--size-1);\n align-items: center;\n min-height: var(--_touch-target);\n padding: var(--size-1-5) var(--size-2-5);\n font-size: var(--text-sm);\n font-weight: var(--font-medium);\n color: var(--navbar-item-color, var(--color-contrast-700));\n white-space: nowrap;\n text-decoration: none;\n appearance: none;\n cursor: pointer;\n background: transparent;\n border: none;\n border-radius: var(--rounded-md);\n transition:\n background var(--transition-fast),\n color var(--transition-fast);\n }\n\n .item:hover,\n .item:focus-visible {\n color: var(--navbar-item-hover-color, var(--color-contrast-900));\n outline: var(--focus-ring);\n outline-offset: 1px;\n background: var(--navbar-item-hover-bg, var(--color-contrast-100));\n }\n\n :host([active]) .item {\n color: var(--navbar-item-active-color, var(--color-primary));\n background: var(--navbar-item-active-bg, color-mix(in oklch, var(--color-primary) 12%, transparent));\n }\n\n :host([disabled]) .item,\n :host([disabled]) .item:hover,\n :host([disabled]) .item:focus-visible {\n color: var(--color-contrast-400);\n pointer-events: none;\n cursor: not-allowed;\n outline: none;\n background: transparent;\n }\n\n .item-icon,\n .item-end {\n display: inline-flex;\n align-items: center;\n }\n\n .item-label {\n min-width: 0;\n white-space: nowrap;\n }\n\n /* Icon-only items (no visible label — name conveyed via aria-label) hide the empty label\n region so it stops reserving a `gap` slot next to the icon, and switch to compact,\n symmetric padding instead of the icon+label layout's wider horizontal padding. Without\n this, an icon-only item ends up lopsided: too much horizontal space around the icon plus\n a phantom gap left over for a label that never renders. */\n :host([icon-only]) .item-label {\n display: none;\n }\n\n :host([icon-only]) .item {\n padding: var(--size-1-5);\n }\n\n :host([navbar-mobile]) {\n display: block;\n width: 100%;\n }\n\n :host([navbar-mobile]) .item {\n display: flex;\n justify-content: flex-start;\n width: 100%;\n }\n}\n\n@layer refine.variants {\n :host([variant='flat']) {\n --_navbar-bg: color-mix(in oklch, var(--color-canvas) 88%, transparent);\n --_navbar-shadow: none;\n }\n\n :host([variant='bordered']) {\n --_navbar-bg: var(--color-canvas);\n --_navbar-border-color: color-mix(in oklch, var(--color-contrast-500) 32%, transparent);\n }\n\n :host([variant='outline']) {\n --_navbar-bg: transparent;\n --_navbar-shadow: none;\n --_navbar-border-color: color-mix(in oklch, var(--color-contrast-500) 40%, transparent);\n }\n\n :host([variant='glass']) {\n --_navbar-bg: color-mix(in oklch, var(--color-canvas) 70%, transparent);\n --navbar-backdrop-filter: blur(var(--blur-lg)) saturate(180%);\n }\n\n :host([color]) {\n --_navbar-border-color: color-mix(in oklch, var(--_theme-border) 30%, transparent);\n }\n}\n\n@media (width <= 768px) {\n @layer refine.base {\n :host([data-mode='floating']) {\n inset-inline: var(--size-2);\n top: var(--size-2);\n }\n\n :host([floating][sticky][data-scrolled]) {\n inset-inline: 0;\n top: 0;\n }\n }\n}\n"],"mappings":""}
@@ -54,6 +54,14 @@ export type OreNavbarItemProps = {
54
54
  disabled?: boolean;
55
55
  /** Link target URL. Renders an anchor when provided. */
56
56
  href?: string;
57
+ /**
58
+ * Icon-only mode — hides the (empty) label region and switches to compact, symmetric
59
+ * padding instead of the icon+label layout's wider horizontal padding. Set this whenever
60
+ * the default slot is intentionally left empty (name conveyed via `aria-label` instead),
61
+ * otherwise the empty label still reserves its inter-element gap and the item ends up
62
+ * with lopsided padding around the icon.
63
+ */
64
+ 'icon-only'?: boolean;
57
65
  /** Relationship of linked URL (anchor-only) */
58
66
  rel?: string;
59
67
  /** Browsing context for link (anchor-only) */
@@ -131,6 +139,7 @@ export declare const NAVBAR_TAG: "ore-navbar";
131
139
  * @attr {boolean} active - Marks item as the current active route
132
140
  * @attr {boolean} disabled - Disables interaction
133
141
  * @attr {string} href - Link URL; renders as `<a>` when set
142
+ * @attr {boolean} icon-only - Compact, symmetric padding for items with no visible label
134
143
  * @attr {string} rel - Anchor `rel` attribute (links only)
135
144
  * @attr {string} target - Anchor `target` attribute (links only)
136
145
  *
@@ -148,6 +157,7 @@ export declare const NAVBAR_TAG: "ore-navbar";
148
157
  * <ore-navbar-item href="/docs" active>Docs</ore-navbar-item>
149
158
  * <ore-navbar-item href="/about" target="_blank" rel="noopener">About</ore-navbar-item>
150
159
  * <ore-navbar-item disabled>Disabled</ore-navbar-item>
160
+ * <ore-navbar-item icon-only aria-label="Search"><ore-icon slot="icon" name="search"></ore-icon></ore-navbar-item>
151
161
  * ```
152
162
  */
153
163
  export declare const NAVBAR_ITEM_TAG: "ore-navbar-item";
@@ -1 +1 @@
1
- {"version":3,"file":"navbar.d.ts","sourceRoot":"","sources":["../../../src/layout/navbar/navbar.ts"],"names":[],"mappings":"AAcA,OAAO,EAAY,KAAK,QAAQ,EAAiB,MAAM,kBAAkB,CAAC;AAE1E,OAAO,KAAK,EAAE,cAAc,EAAE,WAAW,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAE1F,OAAO,yBAAyB,CAAC;AAsFjC,sEAAsE;AACtE,MAAM,MAAM,aAAa,GAAG;IAC1B,eAAe,EAAE,MAAM,IAAI,CAAC;IAC5B,QAAQ,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAC;IAC5B,cAAc,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAC;CACnC,CAAC;AAEF,wCAAwC;AACxC,eAAO,MAAM,UAAU,qDAAgD,CAAC;AAExE,8BAA8B;AAC9B,MAAM,MAAM,eAAe,GAAG;IAC5B,oBAAoB,EAAE;QAAE,IAAI,EAAE,OAAO,CAAA;KAAE,CAAC;CACzC,CAAC;AAEF,yCAAyC;AACzC,MAAM,MAAM,aAAa,GAAG,WAAW,GACrC,cAAc,GAAG;IACf,eAAe,IAAI,IAAI,CAAC;IACxB,cAAc,IAAI,IAAI,CAAC;IACvB,gBAAgB,IAAI,IAAI,CAAC;CAC1B,CAAC;AAQJ,kCAAkC;AAClC,MAAM,MAAM,cAAc,GAAG;IAC3B,uDAAuD;IACvD,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,kBAAkB;IAClB,KAAK,CAAC,EAAE,UAAU,CAAC;IACnB,6EAA6E;IAC7E,uBAAuB,CAAC,EAAE,OAAO,CAAC;IAClC,mCAAmC;IACnC,SAAS,CAAC,EAAE,cAAc,CAAC;IAC3B,wCAAwC;IACxC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,oCAAoC;IACpC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,wEAAwE;IACxE,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,yBAAyB;IACzB,OAAO,CAAC,EAAE,WAAW,CAAC;IACtB,gEAAgE;IAChE,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,+BAA+B;IAC/B,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,2BAA2B;IAC3B,OAAO,CAAC,EAAE,OAAO,CAAC,aAAa,EAAE,OAAO,GAAG,MAAM,CAAC,CAAC;CACpD,CAAC;AAEF,6BAA6B;AAC7B,MAAM,MAAM,kBAAkB,GAAG;IAC/B,oDAAoD;IACpD,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,oCAAoC;IACpC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,wDAAwD;IACxD,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,+CAA+C;IAC/C,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,8CAA8C;IAC9C,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4DG;AACH,eAAO,MAAM,UAAU,EAAG,YAAqB,CAAC;AAwehD;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,eAAO,MAAM,eAAe,EAAG,iBAA0B,CAAC"}
1
+ {"version":3,"file":"navbar.d.ts","sourceRoot":"","sources":["../../../src/layout/navbar/navbar.ts"],"names":[],"mappings":"AAcA,OAAO,EAAY,KAAK,QAAQ,EAAU,MAAM,kBAAkB,CAAC;AAGnE,OAAO,KAAK,EAAE,cAAc,EAAE,WAAW,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAE1F,OAAO,yBAAyB,CAAC;AAsFjC,sEAAsE;AACtE,MAAM,MAAM,aAAa,GAAG;IAC1B,eAAe,EAAE,MAAM,IAAI,CAAC;IAC5B,QAAQ,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAC;IAC5B,cAAc,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAC;CACnC,CAAC;AAEF,wCAAwC;AACxC,eAAO,MAAM,UAAU,qDAAgD,CAAC;AAExE,8BAA8B;AAC9B,MAAM,MAAM,eAAe,GAAG;IAC5B,oBAAoB,EAAE;QAAE,IAAI,EAAE,OAAO,CAAA;KAAE,CAAC;CACzC,CAAC;AAEF,yCAAyC;AACzC,MAAM,MAAM,aAAa,GAAG,WAAW,GACrC,cAAc,GAAG;IACf,eAAe,IAAI,IAAI,CAAC;IACxB,cAAc,IAAI,IAAI,CAAC;IACvB,gBAAgB,IAAI,IAAI,CAAC;CAC1B,CAAC;AAQJ,kCAAkC;AAClC,MAAM,MAAM,cAAc,GAAG;IAC3B,uDAAuD;IACvD,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,kBAAkB;IAClB,KAAK,CAAC,EAAE,UAAU,CAAC;IACnB,6EAA6E;IAC7E,uBAAuB,CAAC,EAAE,OAAO,CAAC;IAClC,mCAAmC;IACnC,SAAS,CAAC,EAAE,cAAc,CAAC;IAC3B,wCAAwC;IACxC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,oCAAoC;IACpC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,wEAAwE;IACxE,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,yBAAyB;IACzB,OAAO,CAAC,EAAE,WAAW,CAAC;IACtB,gEAAgE;IAChE,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,+BAA+B;IAC/B,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,2BAA2B;IAC3B,OAAO,CAAC,EAAE,OAAO,CAAC,aAAa,EAAE,OAAO,GAAG,MAAM,CAAC,CAAC;CACpD,CAAC;AAEF,6BAA6B;AAC7B,MAAM,MAAM,kBAAkB,GAAG;IAC/B,oDAAoD;IACpD,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,oCAAoC;IACpC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,wDAAwD;IACxD,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;;;;;;OAMG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,+CAA+C;IAC/C,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,8CAA8C;IAC9C,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4DG;AACH,eAAO,MAAM,UAAU,EAAG,YAAqB,CAAC;AAmgBhD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AACH,eAAO,MAAM,eAAe,EAAG,iBAA0B,CAAC"}
@@ -1,2 +1,2 @@
1
- var e=`@layer refine.base{:host{min-width:0;max-width:100%;display:block}.item{box-sizing:border-box;gap:var(--size-2);min-width:0;min-height:var(--_touch-target);padding:var(--size-1-5) var(--size-2);font-size:var(--sidebar-item-font-size,var(--text-sm));font-weight:var(--font-medium);color:var(--sidebar-item-color,var(--color-contrast-700));cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:var(--rounded-lg);transition:background var(--transition-fast), color var(--transition-fast);outline:none;align-items:center;text-decoration:none;display:flex;position:relative}a.item{text-decoration:none}.item:hover,.item:focus-visible{color:var(--sidebar-item-hover-color,var(--color-contrast-900));outline:var(--focus-ring);outline-offset:1px;background:var(--sidebar-item-hover-bg,var(--color-contrast-100))}:host([active]) .item{font-weight:var(--font-semibold);color:var(--sidebar-item-active-color,var(--color-primary));background:var(--sidebar-item-active-bg,var(--color-primary-100,color-mix(in oklch, var(--color-primary) 12%, transparent)))}:host([active]) .item:before{display:none}:host([disabled]) .item,:host([disabled]) .item:hover,:host([disabled]) .item:focus-visible{color:var(--sidebar-item-disabled-color,var(--color-contrast-300));pointer-events:none;cursor:not-allowed;opacity:1;background:0 0;outline:none}:host([disabled]) .item-icon{color:var(--sidebar-item-disabled-color,var(--color-contrast-300))}.item-icon{width:var(--size-5);height:var(--size-5);flex-shrink:0;justify-content:center;align-items:center;margin:0 auto;display:flex}.item-label{text-overflow:ellipsis;white-space:nowrap;min-width:0;transition:opacity var(--transition-fast);flex:1;overflow:hidden}.item-end{gap:var(--size-1);transition:opacity var(--transition-fast);flex-shrink:0;align-items:center;display:flex}:host([sidebar-collapsed]) .item,:host([sidebar-collapsed]) .item-icon{position:relative}:host([sidebar-collapsed]) .item-label{pointer-events:none;opacity:0;width:0;overflow:hidden}:host([sidebar-collapsed]) .item{justify-content:center;align-items:center;gap:0;width:100%;height:100%;min-height:100%;padding:0}:host([sidebar-collapsed]) .item:before{inset-block:var(--size-2)}:host([sidebar-collapsed]) .item-icon{width:var(--size-7);height:var(--size-7);padding:var(--size-1-5);font-size:1.5em}:host([sidebar-collapsed][active]) .item,:host([sidebar-collapsed]) .item:hover{background:0 0}:host([sidebar-collapsed][active]) .item-icon{background:var(--sidebar-item-active-bg,var(--color-primary-100,color-mix(in oklch, var(--color-primary) 12%, transparent)));border-radius:var(--rounded-full)}:host([sidebar-collapsed]) .item-icon:hover{background:var(--color-contrast-100);border-radius:var(--rounded-full)}:host([sidebar-collapsed]) .item-end,:host([sidebar-collapsed]) .item-icon .group-badge,:host([sidebar-collapsed]) .item-icon ::slotted([slot=end]){right:0;bottom:calc(var(--size-2) * -1);z-index:2;pointer-events:auto;opacity:1;justify-content:center;align-items:center;min-width:1.25em;min-height:1.25em;display:flex;position:absolute;transform:translate(40%,-40%)}:host([dir=rtl][sidebar-collapsed]) .item-end,:host([dir=rtl][sidebar-collapsed]) .item-icon .group-badge,:host([dir=rtl][sidebar-collapsed]) .item-icon ::slotted([slot=end]),:host(:dir(rtl)[sidebar-collapsed]) .item-end,:host(:dir(rtl)[sidebar-collapsed]) .item-icon .group-badge,:host(:dir(rtl)[sidebar-collapsed]) .item-icon ::slotted([slot=end]){left:0;right:auto;transform:translate(-40%,-40%)}:host([sidebar-collapsed]) .item-end .group-badge,:host([sidebar-collapsed]) .item-end ::slotted([slot=end]){top:50%;right:var(--size-2);z-index:1;position:absolute;transform:translateY(-50%)}:host([dir=rtl][sidebar-collapsed]) .item-end .group-badge,:host([dir=rtl][sidebar-collapsed]) .item-end ::slotted([slot=end]),:host(:dir(rtl)[sidebar-collapsed]) .item-end .group-badge,:host(:dir(rtl)[sidebar-collapsed]) .item-end ::slotted([slot=end]){right:auto;left:var(--size-2)}:host([sidebar-bottom-nav]){display:none}}`;exports.default=e;
1
+ var e=`@layer refine.base{:host{min-width:0;max-width:100%;display:block}.item{box-sizing:border-box;gap:var(--size-2);min-width:0;min-height:var(--_touch-target);padding:var(--size-1-5) var(--size-2);font-size:var(--sidebar-item-font-size,var(--text-sm));font-weight:var(--font-medium);color:var(--sidebar-item-color,var(--color-contrast-700));cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:var(--rounded-lg);transition:background var(--transition-fast), color var(--transition-fast);outline:none;align-items:center;text-decoration:none;display:flex;position:relative}a.item{text-decoration:none}.item:hover,.item:focus-visible{color:var(--sidebar-item-hover-color,var(--color-contrast-900));outline:var(--focus-ring);outline-offset:1px;background:var(--sidebar-item-hover-bg,var(--color-contrast-100))}:host([active]) .item{font-weight:var(--font-semibold);color:var(--sidebar-item-active-color,var(--color-primary));background:var(--sidebar-item-active-bg,var(--color-primary-100,color-mix(in oklch, var(--color-primary) 12%, transparent)))}:host([active]) .item:before{display:none}:host([disabled]) .item,:host([disabled]) .item:hover,:host([disabled]) .item:focus-visible{color:var(--sidebar-item-disabled-color,var(--color-contrast-300));pointer-events:none;cursor:not-allowed;opacity:1;background:0 0;outline:none}:host([disabled]) .item-icon{color:var(--sidebar-item-disabled-color,var(--color-contrast-300))}.item-icon{width:var(--size-5);height:var(--size-5);flex-shrink:0;justify-content:center;align-items:center;margin:0 auto;display:flex}.item-label{text-overflow:ellipsis;white-space:nowrap;min-width:0;transition:opacity var(--transition-fast);flex:1;overflow:hidden}.item-end{gap:var(--size-1);transition:opacity var(--transition-fast);flex-shrink:0;align-items:center;display:flex}:host([sidebar-collapsed]) .item,:host([sidebar-collapsed]) .item-icon{position:relative}:host([sidebar-collapsed]) .item-label{pointer-events:none;opacity:0;width:0;overflow:hidden}:host([sidebar-collapsed]) .item{justify-content:center;align-items:center;gap:0;width:100%;height:100%;min-height:100%;padding:0}:host([sidebar-collapsed]) .item:before{inset-block:var(--size-2)}:host([sidebar-collapsed]) .item-icon{width:var(--size-7);height:var(--size-7);padding:var(--size-1-5);font-size:1.5em}:host([sidebar-collapsed][active]) .item,:host([sidebar-collapsed]) .item:hover{background:0 0}:host([sidebar-collapsed][active]) .item-icon{background:var(--sidebar-item-active-bg,var(--color-primary-100,color-mix(in oklch, var(--color-primary) 12%, transparent)));border-radius:var(--rounded-full)}:host([sidebar-collapsed]) .item-icon:hover{background:var(--color-contrast-100);border-radius:var(--rounded-full)}:host([sidebar-collapsed]) .item-end,:host([sidebar-collapsed]) .item-icon .group-badge,:host([sidebar-collapsed]) .item-icon ::slotted([slot=end]){right:0;bottom:calc(var(--size-2) * -1);z-index:2;pointer-events:auto;opacity:1;justify-content:center;align-items:center;min-width:1.25em;min-height:1.25em;display:flex;position:absolute;transform:translate(40%,-40%)}:host([dir=rtl][sidebar-collapsed]) .item-end,:host([dir=rtl][sidebar-collapsed]) .item-icon .group-badge,:host([dir=rtl][sidebar-collapsed]) .item-icon ::slotted([slot=end]),:host(:dir(rtl)[sidebar-collapsed]) .item-end,:host(:dir(rtl)[sidebar-collapsed]) .item-icon .group-badge,:host(:dir(rtl)[sidebar-collapsed]) .item-icon ::slotted([slot=end]){left:0;right:auto;transform:translate(-40%,-40%)}:host([sidebar-collapsed]) .item-end .group-badge,:host([sidebar-collapsed]) .item-end ::slotted([slot=end]){top:50%;right:calc(var(--size-0-5) * -1);z-index:1;position:absolute;transform:translateY(-50%)}:host([dir=rtl][sidebar-collapsed]) .item-end .group-badge,:host([dir=rtl][sidebar-collapsed]) .item-end ::slotted([slot=end]),:host(:dir(rtl)[sidebar-collapsed]) .item-end .group-badge,:host(:dir(rtl)[sidebar-collapsed]) .item-end ::slotted([slot=end]){right:auto;left:var(--size-2)}:host([sidebar-bottom-nav]){display:none}}`;exports.default=e;
2
2
  //# sourceMappingURL=sidebar-item.css.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"sidebar-item.css.cjs","names":[],"sources":["../../../src/layout/sidebar/sidebar-item.css?inline"],"sourcesContent":["/*\n * Simplified and unified sidebar-item CSS:\n * - Unified badge overlay logic\n * - Grouped collapsed mode rules\n * - Combined state rules (active, disabled, hover, focus)\n * - Clarified selectors for maintainability\n */\n\n@layer refine.base {\n :host {\n display: block;\n min-width: 0;\n max-width: 100%;\n }\n\n .item {\n position: relative;\n box-sizing: border-box;\n display: flex;\n gap: var(--size-2);\n align-items: center;\n min-width: 0;\n min-height: var(--_touch-target);\n padding: var(--size-1-5) var(--size-2);\n font-size: var(--sidebar-item-font-size, var(--text-sm));\n font-weight: var(--font-medium);\n color: var(--sidebar-item-color, var(--color-contrast-700));\n text-decoration: none;\n cursor: pointer;\n user-select: none;\n outline: none;\n border-radius: var(--rounded-lg);\n transition:\n background var(--transition-fast),\n color var(--transition-fast);\n }\n\n a.item {\n text-decoration: none;\n }\n\n .item:hover,\n .item:focus-visible {\n color: var(--sidebar-item-hover-color, var(--color-contrast-900));\n outline: var(--focus-ring);\n outline-offset: 1px;\n background: var(--sidebar-item-hover-bg, var(--color-contrast-100));\n }\n\n :host([active]) .item {\n font-weight: var(--font-semibold);\n color: var(--sidebar-item-active-color, var(--color-primary));\n background: var(\n --sidebar-item-active-bg,\n var(--color-primary-100, color-mix(in oklch, var(--color-primary) 12%, transparent))\n );\n }\n\n :host([active]) .item::before {\n display: none;\n }\n\n :host([disabled]) .item,\n :host([disabled]) .item:hover,\n :host([disabled]) .item:focus-visible {\n color: var(--sidebar-item-disabled-color, var(--color-contrast-300));\n pointer-events: none;\n cursor: not-allowed;\n outline: none;\n background: none;\n opacity: 1;\n }\n\n :host([disabled]) .item-icon {\n color: var(--sidebar-item-disabled-color, var(--color-contrast-300));\n }\n\n .item-icon {\n display: flex;\n flex-shrink: 0;\n align-items: center;\n justify-content: center;\n width: var(--size-5);\n height: var(--size-5);\n margin: 0 auto;\n }\n\n .item-label {\n flex: 1;\n min-width: 0;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n transition: opacity var(--transition-fast);\n }\n\n .item-end {\n display: flex;\n flex-shrink: 0;\n gap: var(--size-1);\n align-items: center;\n transition: opacity var(--transition-fast);\n }\n\n /* Collapsed sidebar: hide label text, adjust layout, overlay badge */\n :host([sidebar-collapsed]) .item,\n :host([sidebar-collapsed]) .item-icon {\n position: relative;\n }\n\n :host([sidebar-collapsed]) .item-label {\n width: 0;\n overflow: hidden;\n pointer-events: none;\n opacity: 0;\n }\n\n :host([sidebar-collapsed]) .item {\n gap: 0;\n align-items: center;\n justify-content: center;\n width: 100%;\n height: 100%;\n min-height: 100%;\n padding: 0;\n }\n\n :host([sidebar-collapsed]) .item::before {\n inset-block: var(--size-2);\n }\n\n :host([sidebar-collapsed]) .item-icon {\n width: var(--size-7);\n height: var(--size-7);\n padding: var(--size-1-5);\n font-size: 1.5em;\n }\n\n :host([sidebar-collapsed][active]) .item {\n background: none;\n }\n\n :host([sidebar-collapsed]) .item:hover {\n background: none;\n }\n\n :host([sidebar-collapsed][active]) .item-icon {\n background: var(\n --sidebar-item-active-bg,\n var(--color-primary-100, color-mix(in oklch, var(--color-primary) 12%, transparent))\n );\n border-radius: var(--rounded-full);\n }\n\n :host([sidebar-collapsed]) .item-icon:hover {\n background: var(--color-contrast-100);\n border-radius: var(--rounded-full);\n }\n\n /* Unified badge overlay logic for collapsed mode */\n :host([sidebar-collapsed]) .item-end,\n :host([sidebar-collapsed]) .item-icon .group-badge,\n :host([sidebar-collapsed]) .item-icon ::slotted([slot='end']) {\n position: absolute;\n right: 0;\n bottom: calc(var(--size-2) * -1);\n z-index: 2;\n display: flex;\n align-items: center;\n justify-content: center;\n min-width: 1.25em;\n min-height: 1.25em;\n pointer-events: auto;\n opacity: 1;\n transform: translate(40%, -40%);\n }\n\n :host([dir='rtl'][sidebar-collapsed]) .item-end,\n :host([dir='rtl'][sidebar-collapsed]) .item-icon .group-badge,\n :host([dir='rtl'][sidebar-collapsed]) .item-icon ::slotted([slot='end']),\n :host(:dir(rtl)[sidebar-collapsed]) .item-end,\n :host(:dir(rtl)[sidebar-collapsed]) .item-icon .group-badge,\n :host(:dir(rtl)[sidebar-collapsed]) .item-icon ::slotted([slot='end']) {\n right: auto;\n left: 0;\n transform: translate(-40%, -40%);\n }\n\n :host([sidebar-collapsed]) .item-end .group-badge,\n :host([sidebar-collapsed]) .item-end ::slotted([slot='end']) {\n position: absolute;\n top: 50%;\n right: var(--size-2);\n z-index: 1;\n transform: translateY(-50%);\n }\n\n :host([dir='rtl'][sidebar-collapsed]) .item-end .group-badge,\n :host([dir='rtl'][sidebar-collapsed]) .item-end ::slotted([slot='end']),\n :host(:dir(rtl)[sidebar-collapsed]) .item-end .group-badge,\n :host(:dir(rtl)[sidebar-collapsed]) .item-end ::slotted([slot='end']) {\n right: auto;\n left: var(--size-2);\n }\n\n /* The bottom tab bar (`.bottom-bar` in sidebar.ts) renders its own promoted-item\n buttons from the same data — the original <ore-sidebar-item> stays inside the\n (visually off-screen while closed) <nav>, so it must be fully hidden here to\n avoid a focusable/AT-visible duplicate of the bottom-bar entry. */\n :host([sidebar-bottom-nav]) {\n display: none;\n }\n}\n"],"mappings":""}
1
+ {"version":3,"file":"sidebar-item.css.cjs","names":[],"sources":["../../../src/layout/sidebar/sidebar-item.css?inline"],"sourcesContent":["/*\n * Simplified and unified sidebar-item CSS:\n * - Unified badge overlay logic\n * - Grouped collapsed mode rules\n * - Combined state rules (active, disabled, hover, focus)\n * - Clarified selectors for maintainability\n */\n\n@layer refine.base {\n :host {\n display: block;\n min-width: 0;\n max-width: 100%;\n }\n\n .item {\n position: relative;\n box-sizing: border-box;\n display: flex;\n gap: var(--size-2);\n align-items: center;\n min-width: 0;\n min-height: var(--_touch-target);\n padding: var(--size-1-5) var(--size-2);\n font-size: var(--sidebar-item-font-size, var(--text-sm));\n font-weight: var(--font-medium);\n color: var(--sidebar-item-color, var(--color-contrast-700));\n text-decoration: none;\n cursor: pointer;\n user-select: none;\n outline: none;\n border-radius: var(--rounded-lg);\n transition:\n background var(--transition-fast),\n color var(--transition-fast);\n }\n\n a.item {\n text-decoration: none;\n }\n\n .item:hover,\n .item:focus-visible {\n color: var(--sidebar-item-hover-color, var(--color-contrast-900));\n outline: var(--focus-ring);\n outline-offset: 1px;\n background: var(--sidebar-item-hover-bg, var(--color-contrast-100));\n }\n\n :host([active]) .item {\n font-weight: var(--font-semibold);\n color: var(--sidebar-item-active-color, var(--color-primary));\n background: var(\n --sidebar-item-active-bg,\n var(--color-primary-100, color-mix(in oklch, var(--color-primary) 12%, transparent))\n );\n }\n\n :host([active]) .item::before {\n display: none;\n }\n\n :host([disabled]) .item,\n :host([disabled]) .item:hover,\n :host([disabled]) .item:focus-visible {\n color: var(--sidebar-item-disabled-color, var(--color-contrast-300));\n pointer-events: none;\n cursor: not-allowed;\n outline: none;\n background: none;\n opacity: 1;\n }\n\n :host([disabled]) .item-icon {\n color: var(--sidebar-item-disabled-color, var(--color-contrast-300));\n }\n\n .item-icon {\n display: flex;\n flex-shrink: 0;\n align-items: center;\n justify-content: center;\n width: var(--size-5);\n height: var(--size-5);\n margin: 0 auto;\n }\n\n .item-label {\n flex: 1;\n min-width: 0;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n transition: opacity var(--transition-fast);\n }\n\n .item-end {\n display: flex;\n flex-shrink: 0;\n gap: var(--size-1);\n align-items: center;\n transition: opacity var(--transition-fast);\n }\n\n /* Collapsed sidebar: hide label text, adjust layout, overlay badge */\n :host([sidebar-collapsed]) .item,\n :host([sidebar-collapsed]) .item-icon {\n position: relative;\n }\n\n :host([sidebar-collapsed]) .item-label {\n width: 0;\n overflow: hidden;\n pointer-events: none;\n opacity: 0;\n }\n\n :host([sidebar-collapsed]) .item {\n gap: 0;\n align-items: center;\n justify-content: center;\n width: 100%;\n height: 100%;\n min-height: 100%;\n padding: 0;\n }\n\n :host([sidebar-collapsed]) .item::before {\n inset-block: var(--size-2);\n }\n\n :host([sidebar-collapsed]) .item-icon {\n width: var(--size-7);\n height: var(--size-7);\n padding: var(--size-1-5);\n font-size: 1.5em;\n }\n\n :host([sidebar-collapsed][active]) .item {\n background: none;\n }\n\n :host([sidebar-collapsed]) .item:hover {\n background: none;\n }\n\n :host([sidebar-collapsed][active]) .item-icon {\n background: var(\n --sidebar-item-active-bg,\n var(--color-primary-100, color-mix(in oklch, var(--color-primary) 12%, transparent))\n );\n border-radius: var(--rounded-full);\n }\n\n :host([sidebar-collapsed]) .item-icon:hover {\n background: var(--color-contrast-100);\n border-radius: var(--rounded-full);\n }\n\n /* Unified badge overlay logic for collapsed mode */\n :host([sidebar-collapsed]) .item-end,\n :host([sidebar-collapsed]) .item-icon .group-badge,\n :host([sidebar-collapsed]) .item-icon ::slotted([slot='end']) {\n position: absolute;\n right: 0;\n bottom: calc(var(--size-2) * -1);\n z-index: 2;\n display: flex;\n align-items: center;\n justify-content: center;\n min-width: 1.25em;\n min-height: 1.25em;\n pointer-events: auto;\n opacity: 1;\n transform: translate(40%, -40%);\n }\n\n :host([dir='rtl'][sidebar-collapsed]) .item-end,\n :host([dir='rtl'][sidebar-collapsed]) .item-icon .group-badge,\n :host([dir='rtl'][sidebar-collapsed]) .item-icon ::slotted([slot='end']),\n :host(:dir(rtl)[sidebar-collapsed]) .item-end,\n :host(:dir(rtl)[sidebar-collapsed]) .item-icon .group-badge,\n :host(:dir(rtl)[sidebar-collapsed]) .item-icon ::slotted([slot='end']) {\n right: auto;\n left: 0;\n transform: translate(-40%, -40%);\n }\n\n :host([sidebar-collapsed]) .item-end .group-badge,\n :host([sidebar-collapsed]) .item-end ::slotted([slot='end']) {\n position: absolute;\n top: 50%;\n right: calc(var(--size-0-5) * -1);\n z-index: 1;\n transform: translateY(-50%);\n }\n\n :host([dir='rtl'][sidebar-collapsed]) .item-end .group-badge,\n :host([dir='rtl'][sidebar-collapsed]) .item-end ::slotted([slot='end']),\n :host(:dir(rtl)[sidebar-collapsed]) .item-end .group-badge,\n :host(:dir(rtl)[sidebar-collapsed]) .item-end ::slotted([slot='end']) {\n right: auto;\n left: var(--size-2);\n }\n\n /* The bottom tab bar (`.bottom-bar` in sidebar.ts) renders its own promoted-item\n buttons from the same data — the original <ore-sidebar-item> stays inside the\n (visually off-screen while closed) <nav>, so it must be fully hidden here to\n avoid a focusable/AT-visible duplicate of the bottom-bar entry. */\n :host([sidebar-bottom-nav]) {\n display: none;\n }\n}\n"],"mappings":""}
@@ -1,5 +1,5 @@
1
1
  //#region src/layout/sidebar/sidebar-item.css?inline
2
- var e = "@layer refine.base{:host{min-width:0;max-width:100%;display:block}.item{box-sizing:border-box;gap:var(--size-2);min-width:0;min-height:var(--_touch-target);padding:var(--size-1-5) var(--size-2);font-size:var(--sidebar-item-font-size,var(--text-sm));font-weight:var(--font-medium);color:var(--sidebar-item-color,var(--color-contrast-700));cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:var(--rounded-lg);transition:background var(--transition-fast), color var(--transition-fast);outline:none;align-items:center;text-decoration:none;display:flex;position:relative}a.item{text-decoration:none}.item:hover,.item:focus-visible{color:var(--sidebar-item-hover-color,var(--color-contrast-900));outline:var(--focus-ring);outline-offset:1px;background:var(--sidebar-item-hover-bg,var(--color-contrast-100))}:host([active]) .item{font-weight:var(--font-semibold);color:var(--sidebar-item-active-color,var(--color-primary));background:var(--sidebar-item-active-bg,var(--color-primary-100,color-mix(in oklch, var(--color-primary) 12%, transparent)))}:host([active]) .item:before{display:none}:host([disabled]) .item,:host([disabled]) .item:hover,:host([disabled]) .item:focus-visible{color:var(--sidebar-item-disabled-color,var(--color-contrast-300));pointer-events:none;cursor:not-allowed;opacity:1;background:0 0;outline:none}:host([disabled]) .item-icon{color:var(--sidebar-item-disabled-color,var(--color-contrast-300))}.item-icon{width:var(--size-5);height:var(--size-5);flex-shrink:0;justify-content:center;align-items:center;margin:0 auto;display:flex}.item-label{text-overflow:ellipsis;white-space:nowrap;min-width:0;transition:opacity var(--transition-fast);flex:1;overflow:hidden}.item-end{gap:var(--size-1);transition:opacity var(--transition-fast);flex-shrink:0;align-items:center;display:flex}:host([sidebar-collapsed]) .item,:host([sidebar-collapsed]) .item-icon{position:relative}:host([sidebar-collapsed]) .item-label{pointer-events:none;opacity:0;width:0;overflow:hidden}:host([sidebar-collapsed]) .item{justify-content:center;align-items:center;gap:0;width:100%;height:100%;min-height:100%;padding:0}:host([sidebar-collapsed]) .item:before{inset-block:var(--size-2)}:host([sidebar-collapsed]) .item-icon{width:var(--size-7);height:var(--size-7);padding:var(--size-1-5);font-size:1.5em}:host([sidebar-collapsed][active]) .item,:host([sidebar-collapsed]) .item:hover{background:0 0}:host([sidebar-collapsed][active]) .item-icon{background:var(--sidebar-item-active-bg,var(--color-primary-100,color-mix(in oklch, var(--color-primary) 12%, transparent)));border-radius:var(--rounded-full)}:host([sidebar-collapsed]) .item-icon:hover{background:var(--color-contrast-100);border-radius:var(--rounded-full)}:host([sidebar-collapsed]) .item-end,:host([sidebar-collapsed]) .item-icon .group-badge,:host([sidebar-collapsed]) .item-icon ::slotted([slot=end]){right:0;bottom:calc(var(--size-2) * -1);z-index:2;pointer-events:auto;opacity:1;justify-content:center;align-items:center;min-width:1.25em;min-height:1.25em;display:flex;position:absolute;transform:translate(40%,-40%)}:host([dir=rtl][sidebar-collapsed]) .item-end,:host([dir=rtl][sidebar-collapsed]) .item-icon .group-badge,:host([dir=rtl][sidebar-collapsed]) .item-icon ::slotted([slot=end]),:host(:dir(rtl)[sidebar-collapsed]) .item-end,:host(:dir(rtl)[sidebar-collapsed]) .item-icon .group-badge,:host(:dir(rtl)[sidebar-collapsed]) .item-icon ::slotted([slot=end]){left:0;right:auto;transform:translate(-40%,-40%)}:host([sidebar-collapsed]) .item-end .group-badge,:host([sidebar-collapsed]) .item-end ::slotted([slot=end]){top:50%;right:var(--size-2);z-index:1;position:absolute;transform:translateY(-50%)}:host([dir=rtl][sidebar-collapsed]) .item-end .group-badge,:host([dir=rtl][sidebar-collapsed]) .item-end ::slotted([slot=end]),:host(:dir(rtl)[sidebar-collapsed]) .item-end .group-badge,:host(:dir(rtl)[sidebar-collapsed]) .item-end ::slotted([slot=end]){right:auto;left:var(--size-2)}:host([sidebar-bottom-nav]){display:none}}";
2
+ var e = "@layer refine.base{:host{min-width:0;max-width:100%;display:block}.item{box-sizing:border-box;gap:var(--size-2);min-width:0;min-height:var(--_touch-target);padding:var(--size-1-5) var(--size-2);font-size:var(--sidebar-item-font-size,var(--text-sm));font-weight:var(--font-medium);color:var(--sidebar-item-color,var(--color-contrast-700));cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:var(--rounded-lg);transition:background var(--transition-fast), color var(--transition-fast);outline:none;align-items:center;text-decoration:none;display:flex;position:relative}a.item{text-decoration:none}.item:hover,.item:focus-visible{color:var(--sidebar-item-hover-color,var(--color-contrast-900));outline:var(--focus-ring);outline-offset:1px;background:var(--sidebar-item-hover-bg,var(--color-contrast-100))}:host([active]) .item{font-weight:var(--font-semibold);color:var(--sidebar-item-active-color,var(--color-primary));background:var(--sidebar-item-active-bg,var(--color-primary-100,color-mix(in oklch, var(--color-primary) 12%, transparent)))}:host([active]) .item:before{display:none}:host([disabled]) .item,:host([disabled]) .item:hover,:host([disabled]) .item:focus-visible{color:var(--sidebar-item-disabled-color,var(--color-contrast-300));pointer-events:none;cursor:not-allowed;opacity:1;background:0 0;outline:none}:host([disabled]) .item-icon{color:var(--sidebar-item-disabled-color,var(--color-contrast-300))}.item-icon{width:var(--size-5);height:var(--size-5);flex-shrink:0;justify-content:center;align-items:center;margin:0 auto;display:flex}.item-label{text-overflow:ellipsis;white-space:nowrap;min-width:0;transition:opacity var(--transition-fast);flex:1;overflow:hidden}.item-end{gap:var(--size-1);transition:opacity var(--transition-fast);flex-shrink:0;align-items:center;display:flex}:host([sidebar-collapsed]) .item,:host([sidebar-collapsed]) .item-icon{position:relative}:host([sidebar-collapsed]) .item-label{pointer-events:none;opacity:0;width:0;overflow:hidden}:host([sidebar-collapsed]) .item{justify-content:center;align-items:center;gap:0;width:100%;height:100%;min-height:100%;padding:0}:host([sidebar-collapsed]) .item:before{inset-block:var(--size-2)}:host([sidebar-collapsed]) .item-icon{width:var(--size-7);height:var(--size-7);padding:var(--size-1-5);font-size:1.5em}:host([sidebar-collapsed][active]) .item,:host([sidebar-collapsed]) .item:hover{background:0 0}:host([sidebar-collapsed][active]) .item-icon{background:var(--sidebar-item-active-bg,var(--color-primary-100,color-mix(in oklch, var(--color-primary) 12%, transparent)));border-radius:var(--rounded-full)}:host([sidebar-collapsed]) .item-icon:hover{background:var(--color-contrast-100);border-radius:var(--rounded-full)}:host([sidebar-collapsed]) .item-end,:host([sidebar-collapsed]) .item-icon .group-badge,:host([sidebar-collapsed]) .item-icon ::slotted([slot=end]){right:0;bottom:calc(var(--size-2) * -1);z-index:2;pointer-events:auto;opacity:1;justify-content:center;align-items:center;min-width:1.25em;min-height:1.25em;display:flex;position:absolute;transform:translate(40%,-40%)}:host([dir=rtl][sidebar-collapsed]) .item-end,:host([dir=rtl][sidebar-collapsed]) .item-icon .group-badge,:host([dir=rtl][sidebar-collapsed]) .item-icon ::slotted([slot=end]),:host(:dir(rtl)[sidebar-collapsed]) .item-end,:host(:dir(rtl)[sidebar-collapsed]) .item-icon .group-badge,:host(:dir(rtl)[sidebar-collapsed]) .item-icon ::slotted([slot=end]){left:0;right:auto;transform:translate(-40%,-40%)}:host([sidebar-collapsed]) .item-end .group-badge,:host([sidebar-collapsed]) .item-end ::slotted([slot=end]){top:50%;right:calc(var(--size-0-5) * -1);z-index:1;position:absolute;transform:translateY(-50%)}:host([dir=rtl][sidebar-collapsed]) .item-end .group-badge,:host([dir=rtl][sidebar-collapsed]) .item-end ::slotted([slot=end]),:host(:dir(rtl)[sidebar-collapsed]) .item-end .group-badge,:host(:dir(rtl)[sidebar-collapsed]) .item-end ::slotted([slot=end]){right:auto;left:var(--size-2)}:host([sidebar-bottom-nav]){display:none}}";
3
3
  //#endregion
4
4
  export { e as default };
5
5
 
@@ -1 +1 @@
1
- {"version":3,"file":"sidebar-item.css.js","names":[],"sources":["../../../src/layout/sidebar/sidebar-item.css?inline"],"sourcesContent":["/*\n * Simplified and unified sidebar-item CSS:\n * - Unified badge overlay logic\n * - Grouped collapsed mode rules\n * - Combined state rules (active, disabled, hover, focus)\n * - Clarified selectors for maintainability\n */\n\n@layer refine.base {\n :host {\n display: block;\n min-width: 0;\n max-width: 100%;\n }\n\n .item {\n position: relative;\n box-sizing: border-box;\n display: flex;\n gap: var(--size-2);\n align-items: center;\n min-width: 0;\n min-height: var(--_touch-target);\n padding: var(--size-1-5) var(--size-2);\n font-size: var(--sidebar-item-font-size, var(--text-sm));\n font-weight: var(--font-medium);\n color: var(--sidebar-item-color, var(--color-contrast-700));\n text-decoration: none;\n cursor: pointer;\n user-select: none;\n outline: none;\n border-radius: var(--rounded-lg);\n transition:\n background var(--transition-fast),\n color var(--transition-fast);\n }\n\n a.item {\n text-decoration: none;\n }\n\n .item:hover,\n .item:focus-visible {\n color: var(--sidebar-item-hover-color, var(--color-contrast-900));\n outline: var(--focus-ring);\n outline-offset: 1px;\n background: var(--sidebar-item-hover-bg, var(--color-contrast-100));\n }\n\n :host([active]) .item {\n font-weight: var(--font-semibold);\n color: var(--sidebar-item-active-color, var(--color-primary));\n background: var(\n --sidebar-item-active-bg,\n var(--color-primary-100, color-mix(in oklch, var(--color-primary) 12%, transparent))\n );\n }\n\n :host([active]) .item::before {\n display: none;\n }\n\n :host([disabled]) .item,\n :host([disabled]) .item:hover,\n :host([disabled]) .item:focus-visible {\n color: var(--sidebar-item-disabled-color, var(--color-contrast-300));\n pointer-events: none;\n cursor: not-allowed;\n outline: none;\n background: none;\n opacity: 1;\n }\n\n :host([disabled]) .item-icon {\n color: var(--sidebar-item-disabled-color, var(--color-contrast-300));\n }\n\n .item-icon {\n display: flex;\n flex-shrink: 0;\n align-items: center;\n justify-content: center;\n width: var(--size-5);\n height: var(--size-5);\n margin: 0 auto;\n }\n\n .item-label {\n flex: 1;\n min-width: 0;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n transition: opacity var(--transition-fast);\n }\n\n .item-end {\n display: flex;\n flex-shrink: 0;\n gap: var(--size-1);\n align-items: center;\n transition: opacity var(--transition-fast);\n }\n\n /* Collapsed sidebar: hide label text, adjust layout, overlay badge */\n :host([sidebar-collapsed]) .item,\n :host([sidebar-collapsed]) .item-icon {\n position: relative;\n }\n\n :host([sidebar-collapsed]) .item-label {\n width: 0;\n overflow: hidden;\n pointer-events: none;\n opacity: 0;\n }\n\n :host([sidebar-collapsed]) .item {\n gap: 0;\n align-items: center;\n justify-content: center;\n width: 100%;\n height: 100%;\n min-height: 100%;\n padding: 0;\n }\n\n :host([sidebar-collapsed]) .item::before {\n inset-block: var(--size-2);\n }\n\n :host([sidebar-collapsed]) .item-icon {\n width: var(--size-7);\n height: var(--size-7);\n padding: var(--size-1-5);\n font-size: 1.5em;\n }\n\n :host([sidebar-collapsed][active]) .item {\n background: none;\n }\n\n :host([sidebar-collapsed]) .item:hover {\n background: none;\n }\n\n :host([sidebar-collapsed][active]) .item-icon {\n background: var(\n --sidebar-item-active-bg,\n var(--color-primary-100, color-mix(in oklch, var(--color-primary) 12%, transparent))\n );\n border-radius: var(--rounded-full);\n }\n\n :host([sidebar-collapsed]) .item-icon:hover {\n background: var(--color-contrast-100);\n border-radius: var(--rounded-full);\n }\n\n /* Unified badge overlay logic for collapsed mode */\n :host([sidebar-collapsed]) .item-end,\n :host([sidebar-collapsed]) .item-icon .group-badge,\n :host([sidebar-collapsed]) .item-icon ::slotted([slot='end']) {\n position: absolute;\n right: 0;\n bottom: calc(var(--size-2) * -1);\n z-index: 2;\n display: flex;\n align-items: center;\n justify-content: center;\n min-width: 1.25em;\n min-height: 1.25em;\n pointer-events: auto;\n opacity: 1;\n transform: translate(40%, -40%);\n }\n\n :host([dir='rtl'][sidebar-collapsed]) .item-end,\n :host([dir='rtl'][sidebar-collapsed]) .item-icon .group-badge,\n :host([dir='rtl'][sidebar-collapsed]) .item-icon ::slotted([slot='end']),\n :host(:dir(rtl)[sidebar-collapsed]) .item-end,\n :host(:dir(rtl)[sidebar-collapsed]) .item-icon .group-badge,\n :host(:dir(rtl)[sidebar-collapsed]) .item-icon ::slotted([slot='end']) {\n right: auto;\n left: 0;\n transform: translate(-40%, -40%);\n }\n\n :host([sidebar-collapsed]) .item-end .group-badge,\n :host([sidebar-collapsed]) .item-end ::slotted([slot='end']) {\n position: absolute;\n top: 50%;\n right: var(--size-2);\n z-index: 1;\n transform: translateY(-50%);\n }\n\n :host([dir='rtl'][sidebar-collapsed]) .item-end .group-badge,\n :host([dir='rtl'][sidebar-collapsed]) .item-end ::slotted([slot='end']),\n :host(:dir(rtl)[sidebar-collapsed]) .item-end .group-badge,\n :host(:dir(rtl)[sidebar-collapsed]) .item-end ::slotted([slot='end']) {\n right: auto;\n left: var(--size-2);\n }\n\n /* The bottom tab bar (`.bottom-bar` in sidebar.ts) renders its own promoted-item\n buttons from the same data — the original <ore-sidebar-item> stays inside the\n (visually off-screen while closed) <nav>, so it must be fully hidden here to\n avoid a focusable/AT-visible duplicate of the bottom-bar entry. */\n :host([sidebar-bottom-nav]) {\n display: none;\n }\n}\n"],"mappings":""}
1
+ {"version":3,"file":"sidebar-item.css.js","names":[],"sources":["../../../src/layout/sidebar/sidebar-item.css?inline"],"sourcesContent":["/*\n * Simplified and unified sidebar-item CSS:\n * - Unified badge overlay logic\n * - Grouped collapsed mode rules\n * - Combined state rules (active, disabled, hover, focus)\n * - Clarified selectors for maintainability\n */\n\n@layer refine.base {\n :host {\n display: block;\n min-width: 0;\n max-width: 100%;\n }\n\n .item {\n position: relative;\n box-sizing: border-box;\n display: flex;\n gap: var(--size-2);\n align-items: center;\n min-width: 0;\n min-height: var(--_touch-target);\n padding: var(--size-1-5) var(--size-2);\n font-size: var(--sidebar-item-font-size, var(--text-sm));\n font-weight: var(--font-medium);\n color: var(--sidebar-item-color, var(--color-contrast-700));\n text-decoration: none;\n cursor: pointer;\n user-select: none;\n outline: none;\n border-radius: var(--rounded-lg);\n transition:\n background var(--transition-fast),\n color var(--transition-fast);\n }\n\n a.item {\n text-decoration: none;\n }\n\n .item:hover,\n .item:focus-visible {\n color: var(--sidebar-item-hover-color, var(--color-contrast-900));\n outline: var(--focus-ring);\n outline-offset: 1px;\n background: var(--sidebar-item-hover-bg, var(--color-contrast-100));\n }\n\n :host([active]) .item {\n font-weight: var(--font-semibold);\n color: var(--sidebar-item-active-color, var(--color-primary));\n background: var(\n --sidebar-item-active-bg,\n var(--color-primary-100, color-mix(in oklch, var(--color-primary) 12%, transparent))\n );\n }\n\n :host([active]) .item::before {\n display: none;\n }\n\n :host([disabled]) .item,\n :host([disabled]) .item:hover,\n :host([disabled]) .item:focus-visible {\n color: var(--sidebar-item-disabled-color, var(--color-contrast-300));\n pointer-events: none;\n cursor: not-allowed;\n outline: none;\n background: none;\n opacity: 1;\n }\n\n :host([disabled]) .item-icon {\n color: var(--sidebar-item-disabled-color, var(--color-contrast-300));\n }\n\n .item-icon {\n display: flex;\n flex-shrink: 0;\n align-items: center;\n justify-content: center;\n width: var(--size-5);\n height: var(--size-5);\n margin: 0 auto;\n }\n\n .item-label {\n flex: 1;\n min-width: 0;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n transition: opacity var(--transition-fast);\n }\n\n .item-end {\n display: flex;\n flex-shrink: 0;\n gap: var(--size-1);\n align-items: center;\n transition: opacity var(--transition-fast);\n }\n\n /* Collapsed sidebar: hide label text, adjust layout, overlay badge */\n :host([sidebar-collapsed]) .item,\n :host([sidebar-collapsed]) .item-icon {\n position: relative;\n }\n\n :host([sidebar-collapsed]) .item-label {\n width: 0;\n overflow: hidden;\n pointer-events: none;\n opacity: 0;\n }\n\n :host([sidebar-collapsed]) .item {\n gap: 0;\n align-items: center;\n justify-content: center;\n width: 100%;\n height: 100%;\n min-height: 100%;\n padding: 0;\n }\n\n :host([sidebar-collapsed]) .item::before {\n inset-block: var(--size-2);\n }\n\n :host([sidebar-collapsed]) .item-icon {\n width: var(--size-7);\n height: var(--size-7);\n padding: var(--size-1-5);\n font-size: 1.5em;\n }\n\n :host([sidebar-collapsed][active]) .item {\n background: none;\n }\n\n :host([sidebar-collapsed]) .item:hover {\n background: none;\n }\n\n :host([sidebar-collapsed][active]) .item-icon {\n background: var(\n --sidebar-item-active-bg,\n var(--color-primary-100, color-mix(in oklch, var(--color-primary) 12%, transparent))\n );\n border-radius: var(--rounded-full);\n }\n\n :host([sidebar-collapsed]) .item-icon:hover {\n background: var(--color-contrast-100);\n border-radius: var(--rounded-full);\n }\n\n /* Unified badge overlay logic for collapsed mode */\n :host([sidebar-collapsed]) .item-end,\n :host([sidebar-collapsed]) .item-icon .group-badge,\n :host([sidebar-collapsed]) .item-icon ::slotted([slot='end']) {\n position: absolute;\n right: 0;\n bottom: calc(var(--size-2) * -1);\n z-index: 2;\n display: flex;\n align-items: center;\n justify-content: center;\n min-width: 1.25em;\n min-height: 1.25em;\n pointer-events: auto;\n opacity: 1;\n transform: translate(40%, -40%);\n }\n\n :host([dir='rtl'][sidebar-collapsed]) .item-end,\n :host([dir='rtl'][sidebar-collapsed]) .item-icon .group-badge,\n :host([dir='rtl'][sidebar-collapsed]) .item-icon ::slotted([slot='end']),\n :host(:dir(rtl)[sidebar-collapsed]) .item-end,\n :host(:dir(rtl)[sidebar-collapsed]) .item-icon .group-badge,\n :host(:dir(rtl)[sidebar-collapsed]) .item-icon ::slotted([slot='end']) {\n right: auto;\n left: 0;\n transform: translate(-40%, -40%);\n }\n\n :host([sidebar-collapsed]) .item-end .group-badge,\n :host([sidebar-collapsed]) .item-end ::slotted([slot='end']) {\n position: absolute;\n top: 50%;\n right: calc(var(--size-0-5) * -1);\n z-index: 1;\n transform: translateY(-50%);\n }\n\n :host([dir='rtl'][sidebar-collapsed]) .item-end .group-badge,\n :host([dir='rtl'][sidebar-collapsed]) .item-end ::slotted([slot='end']),\n :host(:dir(rtl)[sidebar-collapsed]) .item-end .group-badge,\n :host(:dir(rtl)[sidebar-collapsed]) .item-end ::slotted([slot='end']) {\n right: auto;\n left: var(--size-2);\n }\n\n /* The bottom tab bar (`.bottom-bar` in sidebar.ts) renders its own promoted-item\n buttons from the same data — the original <ore-sidebar-item> stays inside the\n (visually off-screen while closed) <nav>, so it must be fully hidden here to\n avoid a focusable/AT-visible duplicate of the bottom-bar entry. */\n :host([sidebar-bottom-nav]) {\n display: none;\n }\n}\n"],"mappings":""}