@vielzeug/refine 26.10.0 → 26.10.5

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 (468) hide show
  1. package/README.md +1 -1
  2. package/dist/accordion-item.cjs.map +1 -1
  3. package/dist/accordion-item.js.map +1 -1
  4. package/dist/accordion.cjs.map +1 -1
  5. package/dist/accordion.js.map +1 -1
  6. package/dist/async.cjs.map +1 -1
  7. package/dist/async.js.map +1 -1
  8. package/dist/badge.cjs.map +1 -1
  9. package/dist/badge.js.map +1 -1
  10. package/dist/box.cjs.map +1 -1
  11. package/dist/box.js.map +1 -1
  12. package/dist/button.cjs +3 -3
  13. package/dist/button.cjs.map +1 -1
  14. package/dist/button.js +3 -3
  15. package/dist/button.js.map +1 -1
  16. package/dist/calendar.cjs.map +1 -1
  17. package/dist/calendar.js.map +1 -1
  18. package/dist/carousel.cjs.map +1 -1
  19. package/dist/carousel.js.map +1 -1
  20. package/dist/chat-message.cjs.map +1 -1
  21. package/dist/chat-message.js.map +1 -1
  22. package/dist/chat-panel.cjs.map +1 -1
  23. package/dist/chat-panel.js.map +1 -1
  24. package/dist/checkbox-group.cjs.map +1 -1
  25. package/dist/checkbox-group.js.map +1 -1
  26. package/dist/chip.cjs.map +1 -1
  27. package/dist/chip.js.map +1 -1
  28. package/dist/code-window.cjs.map +1 -1
  29. package/dist/code-window.js.map +1 -1
  30. package/dist/combobox.cjs.map +1 -1
  31. package/dist/combobox.js.map +1 -1
  32. package/dist/command-palette.cjs +9 -1
  33. package/dist/command-palette.cjs.map +1 -1
  34. package/dist/command-palette.js +9 -1
  35. package/dist/command-palette.js.map +1 -1
  36. package/dist/content/card/card.css.cjs.map +1 -1
  37. package/dist/content/card/card.css.js.map +1 -1
  38. package/dist/content/carousel/carousel-slide.css.cjs.map +1 -1
  39. package/dist/content/carousel/carousel-slide.css.js.map +1 -1
  40. package/dist/content/carousel/carousel.css.cjs.map +1 -1
  41. package/dist/content/carousel/carousel.css.js.map +1 -1
  42. package/dist/content/carousel/carousel.d.ts +5 -5
  43. package/dist/content/chat-message/chat-message.css.cjs +1 -1
  44. package/dist/content/chat-message/chat-message.css.cjs.map +1 -1
  45. package/dist/content/chat-message/chat-message.css.js +1 -1
  46. package/dist/content/chat-message/chat-message.css.js.map +1 -1
  47. package/dist/content/chat-message/chat-message.d.ts +4 -4
  48. package/dist/content/chat-message/chat-message.d.ts.map +1 -1
  49. package/dist/content/chat-panel/chat-panel.d.ts +1 -1
  50. package/dist/content/code-window/code-window.css.cjs.map +1 -1
  51. package/dist/content/code-window/code-window.css.js.map +1 -1
  52. package/dist/content/code-window/code-window.d.ts +4 -4
  53. package/dist/content/index.d.ts +4 -0
  54. package/dist/content/index.d.ts.map +1 -1
  55. package/dist/content/list/_list-item-reveal.cjs.map +1 -1
  56. package/dist/content/list/_list-item-reveal.d.ts +4 -4
  57. package/dist/content/list/_list-item-reveal.d.ts.map +1 -1
  58. package/dist/content/list/_list-item-reveal.js.map +1 -1
  59. package/dist/content/list/list-item.css.cjs.map +1 -1
  60. package/dist/content/list/list-item.css.js.map +1 -1
  61. package/dist/content/list/list-item.d.ts +8 -8
  62. package/dist/content/list/list-item.d.ts.map +1 -1
  63. package/dist/content/list/list.d.ts +8 -8
  64. package/dist/content/list/list.d.ts.map +1 -1
  65. package/dist/content/qr-code/qr-code.d.ts +1 -1
  66. package/dist/content/rank-list/rank-item.css.cjs +2 -0
  67. package/dist/content/rank-list/rank-item.css.cjs.map +1 -0
  68. package/dist/content/rank-list/rank-item.css.js +2 -0
  69. package/dist/content/rank-list/rank-item.css.js.map +1 -0
  70. package/dist/content/rank-list/rank-item.d.ts +68 -0
  71. package/dist/content/rank-list/rank-item.d.ts.map +1 -0
  72. package/dist/content/rank-list/rank-list.css.cjs +2 -0
  73. package/dist/content/rank-list/rank-list.css.cjs.map +1 -0
  74. package/dist/content/rank-list/rank-list.css.js +2 -0
  75. package/dist/content/rank-list/rank-list.css.js.map +1 -0
  76. package/dist/content/rank-list/rank-list.d.ts +44 -0
  77. package/dist/content/rank-list/rank-list.d.ts.map +1 -0
  78. package/dist/content/separator/separator.d.ts +1 -1
  79. package/dist/content/separator/separator.d.ts.map +1 -1
  80. package/dist/content/speech-player/speech-player.css.cjs.map +1 -1
  81. package/dist/content/speech-player/speech-player.css.js.map +1 -1
  82. package/dist/content/speech-player/speech-player.d.ts +12 -12
  83. package/dist/content/speech-player/speech-player.d.ts.map +1 -1
  84. package/dist/content/stepper/step.css.cjs.map +1 -1
  85. package/dist/content/stepper/step.css.js.map +1 -1
  86. package/dist/content/stepper/step.d.ts +3 -3
  87. package/dist/content/stepper/step.d.ts.map +1 -1
  88. package/dist/content/stepper/stepper.css.cjs.map +1 -1
  89. package/dist/content/stepper/stepper.css.js.map +1 -1
  90. package/dist/content/stepper/stepper.d.ts +3 -3
  91. package/dist/content/stepper/stepper.d.ts.map +1 -1
  92. package/dist/content/table/table.css.cjs.map +1 -1
  93. package/dist/content/table/table.css.js.map +1 -1
  94. package/dist/content/table/table.d.ts +3 -3
  95. package/dist/content/table/table.d.ts.map +1 -1
  96. package/dist/content/text/text.css.cjs.map +1 -1
  97. package/dist/content/text/text.css.js.map +1 -1
  98. package/dist/content/text/text.d.ts +2 -2
  99. package/dist/content/text/text.d.ts.map +1 -1
  100. package/dist/cookie-banner.cjs.map +1 -1
  101. package/dist/cookie-banner.js.map +1 -1
  102. package/dist/copy-command.cjs +1 -1
  103. package/dist/copy-command.cjs.map +1 -1
  104. package/dist/copy-command.js +1 -1
  105. package/dist/copy-command.js.map +1 -1
  106. package/dist/core/announcer.cjs.map +1 -1
  107. package/dist/core/announcer.d.ts +2 -2
  108. package/dist/core/announcer.js.map +1 -1
  109. package/dist/core/aria-reflection.cjs.map +1 -1
  110. package/dist/core/aria-reflection.d.ts +3 -3
  111. package/dist/core/aria-reflection.js.map +1 -1
  112. package/dist/core/auto-resize.cjs.map +1 -1
  113. package/dist/core/auto-resize.d.ts +1 -1
  114. package/dist/core/auto-resize.js.map +1 -1
  115. package/dist/core/checkable.cjs.map +1 -1
  116. package/dist/core/checkable.d.ts +2 -2
  117. package/dist/core/checkable.d.ts.map +1 -1
  118. package/dist/core/checkable.js.map +1 -1
  119. package/dist/core/choice-field.cjs.map +1 -1
  120. package/dist/core/choice-field.d.ts +3 -3
  121. package/dist/core/choice-field.d.ts.map +1 -1
  122. package/dist/core/choice-field.js.map +1 -1
  123. package/dist/core/composer.cjs.map +1 -1
  124. package/dist/core/composer.d.ts +4 -4
  125. package/dist/core/composer.d.ts.map +1 -1
  126. package/dist/core/composer.js.map +1 -1
  127. package/dist/core/date-picker.cjs.map +1 -1
  128. package/dist/core/date-picker.d.ts +5 -5
  129. package/dist/core/date-picker.d.ts.map +1 -1
  130. package/dist/core/date-picker.js.map +1 -1
  131. package/dist/core/direction.cjs.map +1 -1
  132. package/dist/core/direction.d.ts +1 -1
  133. package/dist/core/direction.js.map +1 -1
  134. package/dist/core/field-base.cjs.map +1 -1
  135. package/dist/core/field-base.d.ts +9 -9
  136. package/dist/core/field-base.d.ts.map +1 -1
  137. package/dist/core/field-base.js.map +1 -1
  138. package/dist/core/focus.cjs.map +1 -1
  139. package/dist/core/focus.d.ts +1 -1
  140. package/dist/core/focus.js.map +1 -1
  141. package/dist/core/icon-registry.cjs.map +1 -1
  142. package/dist/core/icon-registry.d.ts +1 -1
  143. package/dist/core/icon-registry.js.map +1 -1
  144. package/dist/core/icons.cjs.map +1 -1
  145. package/dist/core/icons.js.map +1 -1
  146. package/dist/core/keyboard.cjs.map +1 -1
  147. package/dist/core/keyboard.d.ts +1 -1
  148. package/dist/core/keyboard.js.map +1 -1
  149. package/dist/core/numbers.cjs.map +1 -1
  150. package/dist/core/numbers.d.ts +1 -1
  151. package/dist/core/numbers.js.map +1 -1
  152. package/dist/core/overlay.cjs.map +1 -1
  153. package/dist/core/overlay.d.ts +6 -6
  154. package/dist/core/overlay.js.map +1 -1
  155. package/dist/core/parse.cjs.map +1 -1
  156. package/dist/core/parse.d.ts +1 -1
  157. package/dist/core/parse.js.map +1 -1
  158. package/dist/core/positioner.cjs.map +1 -1
  159. package/dist/core/positioner.d.ts +3 -3
  160. package/dist/core/positioner.js.map +1 -1
  161. package/dist/core/ref-callback.cjs.map +1 -1
  162. package/dist/core/ref-callback.d.ts +2 -2
  163. package/dist/core/ref-callback.d.ts.map +1 -1
  164. package/dist/core/ref-callback.js.map +1 -1
  165. package/dist/core/text-field.cjs.map +1 -1
  166. package/dist/core/text-field.d.ts +6 -6
  167. package/dist/core/text-field.d.ts.map +1 -1
  168. package/dist/core/text-field.js.map +1 -1
  169. package/dist/counter.cjs +1 -0
  170. package/dist/counter.cjs.map +1 -1
  171. package/dist/counter.js +1 -0
  172. package/dist/counter.js.map +1 -1
  173. package/dist/custom-elements.json +334 -87
  174. package/dist/datagrid.cjs.map +1 -1
  175. package/dist/datagrid.js.map +1 -1
  176. package/dist/date-picker.cjs +1 -1
  177. package/dist/date-picker.cjs.map +1 -1
  178. package/dist/date-picker.js +1 -1
  179. package/dist/date-picker.js.map +1 -1
  180. package/dist/dialog.cjs.map +1 -1
  181. package/dist/dialog.js.map +1 -1
  182. package/dist/disclosure/accordion-item/accordion-item.css.cjs +1 -1
  183. package/dist/disclosure/accordion-item/accordion-item.css.cjs.map +1 -1
  184. package/dist/disclosure/accordion-item/accordion-item.css.js +1 -1
  185. package/dist/disclosure/accordion-item/accordion-item.css.js.map +1 -1
  186. package/dist/disclosure/tab-item/tab-item.d.ts +1 -1
  187. package/dist/disclosure/tab-item/tab-item.d.ts.map +1 -1
  188. package/dist/drawer.cjs.map +1 -1
  189. package/dist/drawer.js.map +1 -1
  190. package/dist/feedback/alert/alert.css.cjs.map +1 -1
  191. package/dist/feedback/alert/alert.css.js.map +1 -1
  192. package/dist/feedback/badge/badge.css.cjs.map +1 -1
  193. package/dist/feedback/badge/badge.css.js.map +1 -1
  194. package/dist/feedback/badge/badge.d.ts +1 -1
  195. package/dist/feedback/badge/badge.d.ts.map +1 -1
  196. package/dist/feedback/chip/chip.css.cjs.map +1 -1
  197. package/dist/feedback/chip/chip.css.js.map +1 -1
  198. package/dist/feedback/chip/chip.d.ts +3 -3
  199. package/dist/feedback/chip/chip.d.ts.map +1 -1
  200. package/dist/feedback/cookie-banner/cookie-banner.css.cjs.map +1 -1
  201. package/dist/feedback/cookie-banner/cookie-banner.css.js.map +1 -1
  202. package/dist/feedback/cookie-banner/cookie-banner.d.ts +8 -8
  203. package/dist/feedback/cookie-banner/cookie-banner.d.ts.map +1 -1
  204. package/dist/feedback/progress/progress.css.cjs.map +1 -1
  205. package/dist/feedback/progress/progress.css.js.map +1 -1
  206. package/dist/feedback/progress/progress.d.ts +1 -1
  207. package/dist/feedback/progress/progress.d.ts.map +1 -1
  208. package/dist/feedback/skeleton/skeleton.css.cjs.map +1 -1
  209. package/dist/feedback/skeleton/skeleton.css.js.map +1 -1
  210. package/dist/feedback/skeleton/skeleton.d.ts +1 -1
  211. package/dist/feedback/skeleton/skeleton.d.ts.map +1 -1
  212. package/dist/feedback/toast/toast.css.cjs +1 -1
  213. package/dist/feedback/toast/toast.css.cjs.map +1 -1
  214. package/dist/feedback/toast/toast.css.js +1 -1
  215. package/dist/feedback/toast/toast.css.js.map +1 -1
  216. package/dist/feedback/toast/toast.d.ts +1 -1
  217. package/dist/feedback/toast/toast.d.ts.map +1 -1
  218. package/dist/feedback/typing-indicator/typing-indicator.d.ts +2 -2
  219. package/dist/file-input.cjs +1 -1
  220. package/dist/file-input.cjs.map +1 -1
  221. package/dist/file-input.js +1 -1
  222. package/dist/file-input.js.map +1 -1
  223. package/dist/frameworks/elements.d.ts +1 -1
  224. package/dist/grid-item.cjs.map +1 -1
  225. package/dist/grid-item.js.map +1 -1
  226. package/dist/grid.cjs.map +1 -1
  227. package/dist/grid.js.map +1 -1
  228. package/dist/icon.cjs.map +1 -1
  229. package/dist/icon.js.map +1 -1
  230. package/dist/input.cjs.map +1 -1
  231. package/dist/input.js.map +1 -1
  232. package/dist/inputs/button/button.css.cjs.map +1 -1
  233. package/dist/inputs/button/button.css.js.map +1 -1
  234. package/dist/inputs/button/button.d.ts +3 -3
  235. package/dist/inputs/button/button.d.ts.map +1 -1
  236. package/dist/inputs/calendar/calendar.css.cjs.map +1 -1
  237. package/dist/inputs/calendar/calendar.css.js.map +1 -1
  238. package/dist/inputs/calendar/calendar.d.ts +2 -2
  239. package/dist/inputs/checkbox-group/checkbox-group.d.ts +2 -2
  240. package/dist/inputs/checkbox-group/checkbox-group.d.ts.map +1 -1
  241. package/dist/inputs/combobox/combobox.css.cjs.map +1 -1
  242. package/dist/inputs/combobox/combobox.css.js.map +1 -1
  243. package/dist/inputs/counter/counter.css.cjs +1 -1
  244. package/dist/inputs/counter/counter.css.cjs.map +1 -1
  245. package/dist/inputs/counter/counter.css.js +1 -1
  246. package/dist/inputs/counter/counter.css.js.map +1 -1
  247. package/dist/inputs/counter/counter.d.ts +2 -1
  248. package/dist/inputs/counter/counter.d.ts.map +1 -1
  249. package/dist/inputs/datagrid/datagrid.css.cjs.map +1 -1
  250. package/dist/inputs/datagrid/datagrid.css.js.map +1 -1
  251. package/dist/inputs/datagrid/datagrid.d.ts +5 -5
  252. package/dist/inputs/date-picker/date-picker.css.cjs.map +1 -1
  253. package/dist/inputs/date-picker/date-picker.css.js.map +1 -1
  254. package/dist/inputs/date-picker/date-picker.d.ts +1 -1
  255. package/dist/inputs/file-input/file-input-upload.cjs.map +1 -1
  256. package/dist/inputs/file-input/file-input-upload.d.ts +6 -6
  257. package/dist/inputs/file-input/file-input-upload.js.map +1 -1
  258. package/dist/inputs/file-input/file-input.css.cjs.map +1 -1
  259. package/dist/inputs/file-input/file-input.css.js.map +1 -1
  260. package/dist/inputs/file-input/file-input.d.ts +6 -6
  261. package/dist/inputs/input/input.css.cjs +1 -1
  262. package/dist/inputs/input/input.css.cjs.map +1 -1
  263. package/dist/inputs/input/input.css.js +1 -1
  264. package/dist/inputs/input/input.css.js.map +1 -1
  265. package/dist/inputs/input/input.d.ts +6 -6
  266. package/dist/inputs/input/input.d.ts.map +1 -1
  267. package/dist/inputs/message-composer/message-composer.css.cjs.map +1 -1
  268. package/dist/inputs/message-composer/message-composer.css.js.map +1 -1
  269. package/dist/inputs/message-composer/message-composer.d.ts +7 -7
  270. package/dist/inputs/message-composer/message-composer.d.ts.map +1 -1
  271. package/dist/inputs/number-input/number-input.css.cjs.map +1 -1
  272. package/dist/inputs/number-input/number-input.css.js.map +1 -1
  273. package/dist/inputs/number-input/number-input.d.ts +2 -2
  274. package/dist/inputs/otp-input/otp-input.css.cjs.map +1 -1
  275. package/dist/inputs/otp-input/otp-input.css.js.map +1 -1
  276. package/dist/inputs/qr-scanner/qr-scanner.d.ts +1 -1
  277. package/dist/inputs/qr-scanner/qr-scanner.d.ts.map +1 -1
  278. package/dist/inputs/rating/rating.d.ts +1 -1
  279. package/dist/inputs/rating/rating.d.ts.map +1 -1
  280. package/dist/inputs/select/select.css.cjs +1 -1
  281. package/dist/inputs/select/select.css.cjs.map +1 -1
  282. package/dist/inputs/select/select.css.js +1 -1
  283. package/dist/inputs/select/select.css.js.map +1 -1
  284. package/dist/inputs/select/select.d.ts +1 -1
  285. package/dist/inputs/select/select.d.ts.map +1 -1
  286. package/dist/inputs/shared/field-binding.cjs.map +1 -1
  287. package/dist/inputs/shared/field-binding.d.ts +2 -2
  288. package/dist/inputs/shared/field-binding.d.ts.map +1 -1
  289. package/dist/inputs/shared/field-binding.js.map +1 -1
  290. package/dist/inputs/shared/native-field-event.cjs.map +1 -1
  291. package/dist/inputs/shared/native-field-event.d.ts +1 -1
  292. package/dist/inputs/shared/native-field-event.js.map +1 -1
  293. package/dist/inputs/shared/templates.cjs.map +1 -1
  294. package/dist/inputs/shared/templates.d.ts +3 -3
  295. package/dist/inputs/shared/templates.js.map +1 -1
  296. package/dist/inputs/slider/slider.css.cjs.map +1 -1
  297. package/dist/inputs/slider/slider.css.js.map +1 -1
  298. package/dist/inputs/slider/slider.d.ts +1 -1
  299. package/dist/inputs/slider/slider.d.ts.map +1 -1
  300. package/dist/inputs/textarea/textarea.css.cjs.map +1 -1
  301. package/dist/inputs/textarea/textarea.css.js.map +1 -1
  302. package/dist/inputs/textarea/textarea.d.ts +1 -1
  303. package/dist/inputs/time-picker/time-picker.css.cjs.map +1 -1
  304. package/dist/inputs/time-picker/time-picker.css.js.map +1 -1
  305. package/dist/inputs/time-picker/time-picker.d.ts +1 -1
  306. package/dist/layout/box/box.css.cjs.map +1 -1
  307. package/dist/layout/box/box.css.js.map +1 -1
  308. package/dist/layout/box/box.d.ts +1 -1
  309. package/dist/layout/grid/grid.d.ts +1 -1
  310. package/dist/layout/grid-item/grid-item.d.ts +3 -3
  311. package/dist/layout/grid-item/grid-item.d.ts.map +1 -1
  312. package/dist/layout/navbar/navbar.css.cjs +1 -1
  313. package/dist/layout/navbar/navbar.css.cjs.map +1 -1
  314. package/dist/layout/navbar/navbar.css.js +1 -1
  315. package/dist/layout/navbar/navbar.css.js.map +1 -1
  316. package/dist/layout/navbar/navbar.d.ts +3 -3
  317. package/dist/layout/sidebar/sidebar-item.css.cjs.map +1 -1
  318. package/dist/layout/sidebar/sidebar-item.css.js.map +1 -1
  319. package/dist/layout/sidebar/sidebar.d.ts +5 -5
  320. package/dist/layout/sidebar/sidebar.d.ts.map +1 -1
  321. package/dist/list-item.cjs.map +1 -1
  322. package/dist/list-item.js.map +1 -1
  323. package/dist/list.cjs.map +1 -1
  324. package/dist/list.js.map +1 -1
  325. package/dist/menu.cjs +6 -5
  326. package/dist/menu.cjs.map +1 -1
  327. package/dist/menu.js +6 -5
  328. package/dist/menu.js.map +1 -1
  329. package/dist/message-composer.cjs.map +1 -1
  330. package/dist/message-composer.js.map +1 -1
  331. package/dist/navbar.cjs.map +1 -1
  332. package/dist/navbar.js.map +1 -1
  333. package/dist/number-input.cjs.map +1 -1
  334. package/dist/number-input.js.map +1 -1
  335. package/dist/otp-input.cjs.map +1 -1
  336. package/dist/otp-input.js.map +1 -1
  337. package/dist/overlay/command-palette/command-palette-items.cjs.map +1 -1
  338. package/dist/overlay/command-palette/command-palette-items.d.ts +1 -1
  339. package/dist/overlay/command-palette/command-palette-items.js.map +1 -1
  340. package/dist/overlay/command-palette/command-palette.css.cjs +1 -1
  341. package/dist/overlay/command-palette/command-palette.css.cjs.map +1 -1
  342. package/dist/overlay/command-palette/command-palette.css.js +1 -1
  343. package/dist/overlay/command-palette/command-palette.css.js.map +1 -1
  344. package/dist/overlay/command-palette/command-palette.d.ts +7 -3
  345. package/dist/overlay/command-palette/command-palette.d.ts.map +1 -1
  346. package/dist/overlay/command-palette/command-palette.types.d.ts +16 -6
  347. package/dist/overlay/command-palette/command-palette.types.d.ts.map +1 -1
  348. package/dist/overlay/dialog/dialog.css.cjs +1 -1
  349. package/dist/overlay/dialog/dialog.css.cjs.map +1 -1
  350. package/dist/overlay/dialog/dialog.css.js +1 -1
  351. package/dist/overlay/dialog/dialog.css.js.map +1 -1
  352. package/dist/overlay/dialog/dialog.d.ts +2 -2
  353. package/dist/overlay/dialog/dialog.d.ts.map +1 -1
  354. package/dist/overlay/drawer/drawer.css.cjs.map +1 -1
  355. package/dist/overlay/drawer/drawer.css.js.map +1 -1
  356. package/dist/overlay/drawer/drawer.d.ts +1 -1
  357. package/dist/overlay/drawer/drawer.d.ts.map +1 -1
  358. package/dist/overlay/menu/menu-item.css.cjs.map +1 -1
  359. package/dist/overlay/menu/menu-item.css.js.map +1 -1
  360. package/dist/overlay/menu/menu.d.ts.map +1 -1
  361. package/dist/overlay/shared/use-dialog.cjs.map +1 -1
  362. package/dist/overlay/shared/use-dialog.d.ts +6 -6
  363. package/dist/overlay/shared/use-dialog.d.ts.map +1 -1
  364. package/dist/overlay/shared/use-dialog.js.map +1 -1
  365. package/dist/overlay/shared/use-floating-trigger.cjs.map +1 -1
  366. package/dist/overlay/shared/use-floating-trigger.d.ts +1 -1
  367. package/dist/overlay/shared/use-floating-trigger.d.ts.map +1 -1
  368. package/dist/overlay/shared/use-floating-trigger.js.map +1 -1
  369. package/dist/overlay/tooltip/tooltip.css.cjs.map +1 -1
  370. package/dist/overlay/tooltip/tooltip.css.js.map +1 -1
  371. package/dist/progress.cjs.map +1 -1
  372. package/dist/progress.js.map +1 -1
  373. package/dist/qr-code.cjs.map +1 -1
  374. package/dist/qr-code.js.map +1 -1
  375. package/dist/qr-scanner.cjs.map +1 -1
  376. package/dist/qr-scanner.js.map +1 -1
  377. package/dist/radio-group.cjs.map +1 -1
  378. package/dist/radio-group.js.map +1 -1
  379. package/dist/radio.cjs.map +1 -1
  380. package/dist/radio.js.map +1 -1
  381. package/dist/rank-item.cjs +21 -0
  382. package/dist/rank-item.cjs.map +1 -0
  383. package/dist/rank-item.js +21 -0
  384. package/dist/rank-item.js.map +1 -0
  385. package/dist/rank-list.cjs +4 -0
  386. package/dist/rank-list.cjs.map +1 -0
  387. package/dist/rank-list.js +4 -0
  388. package/dist/rank-list.js.map +1 -0
  389. package/dist/rating.cjs.map +1 -1
  390. package/dist/rating.js.map +1 -1
  391. package/dist/refine.cjs +111 -80
  392. package/dist/refine.cjs.map +1 -1
  393. package/dist/refine.iife.js +111 -80
  394. package/dist/refine.iife.js.map +1 -1
  395. package/dist/refine.js +112 -81
  396. package/dist/refine.js.map +1 -1
  397. package/dist/select.cjs.map +1 -1
  398. package/dist/select.js.map +1 -1
  399. package/dist/separator.cjs.map +1 -1
  400. package/dist/separator.js.map +1 -1
  401. package/dist/shared/index.d.ts +3 -3
  402. package/dist/shared/size-presets.cjs.map +1 -1
  403. package/dist/shared/size-presets.d.ts +4 -4
  404. package/dist/shared/size-presets.js.map +1 -1
  405. package/dist/shared/types.d.ts +1 -1
  406. package/dist/sidebar.cjs.map +1 -1
  407. package/dist/sidebar.js.map +1 -1
  408. package/dist/skeleton.cjs.map +1 -1
  409. package/dist/skeleton.js.map +1 -1
  410. package/dist/slider.cjs.map +1 -1
  411. package/dist/slider.js.map +1 -1
  412. package/dist/speech-player.cjs.map +1 -1
  413. package/dist/speech-player.js.map +1 -1
  414. package/dist/step.cjs.map +1 -1
  415. package/dist/step.js.map +1 -1
  416. package/dist/stepper.cjs.map +1 -1
  417. package/dist/stepper.js.map +1 -1
  418. package/dist/styles/fouc.css +2 -2
  419. package/dist/styles/mixins/accessibility.css.cjs.map +1 -1
  420. package/dist/styles/mixins/accessibility.css.d.ts +4 -4
  421. package/dist/styles/mixins/accessibility.css.js.map +1 -1
  422. package/dist/styles/mixins/animation.css.cjs +2 -2
  423. package/dist/styles/mixins/animation.css.cjs.map +1 -1
  424. package/dist/styles/mixins/animation.css.d.ts +4 -4
  425. package/dist/styles/mixins/animation.css.js +2 -2
  426. package/dist/styles/mixins/animation.css.js.map +1 -1
  427. package/dist/styles/mixins/field-variants.css.cjs +2 -2
  428. package/dist/styles/mixins/field-variants.css.cjs.map +1 -1
  429. package/dist/styles/mixins/field-variants.css.d.ts +6 -6
  430. package/dist/styles/mixins/field-variants.css.d.ts.map +1 -1
  431. package/dist/styles/mixins/field-variants.css.js +2 -2
  432. package/dist/styles/mixins/field-variants.css.js.map +1 -1
  433. package/dist/styles/mixins/shape.css.cjs.map +1 -1
  434. package/dist/styles/mixins/shape.css.d.ts +9 -9
  435. package/dist/styles/mixins/shape.css.d.ts.map +1 -1
  436. package/dist/styles/mixins/shape.css.js.map +1 -1
  437. package/dist/styles/mixins/variants.css.cjs.map +1 -1
  438. package/dist/styles/mixins/variants.css.d.ts +1 -1
  439. package/dist/styles/mixins/variants.css.js.map +1 -1
  440. package/dist/styles/theme.css +36 -28
  441. package/dist/tab-item.cjs.map +1 -1
  442. package/dist/tab-item.js.map +1 -1
  443. package/dist/tab-panel.cjs.map +1 -1
  444. package/dist/tab-panel.js.map +1 -1
  445. package/dist/table.cjs.map +1 -1
  446. package/dist/table.js.map +1 -1
  447. package/dist/text.cjs.map +1 -1
  448. package/dist/text.js.map +1 -1
  449. package/dist/textarea.cjs.map +1 -1
  450. package/dist/textarea.js.map +1 -1
  451. package/dist/theme.cjs.map +1 -1
  452. package/dist/theme.d.ts +2 -2
  453. package/dist/theme.js.map +1 -1
  454. package/dist/time-picker.cjs +1 -1
  455. package/dist/time-picker.cjs.map +1 -1
  456. package/dist/time-picker.js +1 -1
  457. package/dist/time-picker.js.map +1 -1
  458. package/dist/toast.cjs.map +1 -1
  459. package/dist/toast.js.map +1 -1
  460. package/dist/types/elements.d.ts +6 -2
  461. package/dist/typing-indicator.cjs.map +1 -1
  462. package/dist/typing-indicator.js.map +1 -1
  463. package/dist/utils/css.cjs.map +1 -1
  464. package/dist/utils/css.js.map +1 -1
  465. package/dist/utils/link.cjs.map +1 -1
  466. package/dist/utils/link.d.ts +2 -2
  467. package/dist/utils/link.js.map +1 -1
  468. package/package.json +31 -14
@@ -11,7 +11,7 @@ export declare function parseSlottedItems(elements: Element[]): CommandPaletteIt
11
11
  /**
12
12
  * Splits a display-only shortcut hint into individual keys so each can be rendered in its
13
13
  * own `<kbd>`. Keys are separated with `+` (e.g. `"⌘+N"` → `["⌘", "N"]`); a shortcut with no
14
- * `+` renders as a single key, unchanged. A literal `+` key can't be represented this way —
14
+ * `+` renders as a single key, unchanged. A literal `+` key can't be represented this way :
15
15
  * spell it out instead (e.g. `"Ctrl+Plus"`).
16
16
  */
17
17
  export declare function splitShortcutKeys(shortcut: string): string[];
@@ -1 +1 @@
1
- {"version":3,"file":"command-palette-items.js","names":[],"sources":["../../../src/overlay/command-palette/command-palette-items.ts"],"sourcesContent":["import type { CommandPaletteItem, CommandPaletteItemInput } from './command-palette.types';\n\n// ── Flat row model ────────────────────────────────────────────────────────────\n// Items are grouped by `group` (preserving first-seen order) and flattened into a\n// single list of rows so the listbox can render group headings inline while\n// keyboard navigation still walks a single, index-addressable sequence.\n\nexport type CommandPaletteRow =\n | { group: string; type: 'group' }\n | { idx: number; item: CommandPaletteItem; type: 'item' };\n\nexport function parseSlottedItems(elements: Element[]): CommandPaletteItem[] {\n return elements\n .filter((el) => el.localName === 'ore-command-palette-item')\n .map((el) => ({\n disabled: el.hasAttribute('disabled'),\n group: el.getAttribute('group') ?? undefined,\n icon: el.getAttribute('icon') ?? undefined,\n keywords: (el.getAttribute('keywords') ?? '')\n .split(',')\n .map((term) => term.trim())\n .filter(Boolean),\n label:\n el.getAttribute('label') ||\n [...el.childNodes]\n .filter((node) => node.nodeType === Node.TEXT_NODE)\n .map((node) => node.textContent?.trim())\n .filter(Boolean)\n .join(' ') ||\n '',\n shortcut: el.getAttribute('shortcut') ?? undefined,\n value: el.getAttribute('value') ?? '',\n }));\n}\n\n/**\n * Splits a display-only shortcut hint into individual keys so each can be rendered in its\n * own `<kbd>`. Keys are separated with `+` (e.g. `\"⌘+N\"` → `[\"⌘\", \"N\"]`); a shortcut with no\n * `+` renders as a single key, unchanged. A literal `+` key can't be represented this way —\n * spell it out instead (e.g. `\"Ctrl+Plus\"`).\n */\nexport function splitShortcutKeys(shortcut: string): string[] {\n return shortcut\n .split('+')\n .map((key) => key.trim())\n .filter(Boolean);\n}\n\nexport function normalizeItem(input: CommandPaletteItemInput): CommandPaletteItem {\n return {\n disabled: Boolean(input.disabled),\n group: input.group,\n icon: input.icon,\n keywords: input.keywords ?? [],\n label: input.label ?? input.value,\n shortcut: input.shortcut,\n value: input.value,\n };\n}\n\nexport function filterItems(items: CommandPaletteItem[], query: string, noFilter: boolean): CommandPaletteItem[] {\n if (noFilter) return items;\n\n const normalizedQuery = query.toLowerCase().trim();\n\n if (!normalizedQuery) return items;\n\n return items.filter(\n (item) =>\n item.label.toLowerCase().includes(normalizedQuery) ||\n item.value.toLowerCase().includes(normalizedQuery) ||\n item.keywords.some((keyword) => keyword.toLowerCase().includes(normalizedQuery)),\n );\n}\n\n/** Groups items by `group` (first-seen order) and flattens into index-addressable rows. */\nexport function buildRows(items: CommandPaletteItem[]): CommandPaletteRow[] {\n const groups = new Map<string | undefined, CommandPaletteItem[]>();\n\n for (const item of items) {\n const key = item.group;\n let bucket = groups.get(key);\n\n if (!bucket) {\n bucket = [];\n groups.set(key, bucket);\n }\n\n bucket.push(item);\n }\n\n const rows: CommandPaletteRow[] = [];\n let idx = 0;\n\n for (const [group, groupItems] of groups) {\n if (group !== undefined) rows.push({ group, type: 'group' });\n\n for (const item of groupItems) rows.push({ idx: idx++, item, type: 'item' });\n }\n\n return rows;\n}\n"],"mappings":"AAWA,SAAgB,kBAAkB,EAA2C,CAC3E,OAAO,EACJ,OAAQ,GAAO,EAAG,YAAc,0BAA0B,CAAC,CAC3D,IAAK,IAAQ,CACZ,SAAU,EAAG,aAAa,UAAU,EACpC,MAAO,EAAG,aAAa,OAAO,GAAK,IAAA,GACnC,KAAM,EAAG,aAAa,MAAM,GAAK,IAAA,GACjC,UAAW,EAAG,aAAa,UAAU,GAAK,GAAA,CACvC,MAAM,GAAG,CAAC,CACV,IAAK,GAAS,EAAK,KAAK,CAAC,CAAC,CAC1B,OAAO,OAAO,EACjB,MACE,EAAG,aAAa,OAAO,GACvB,CAAC,GAAG,EAAG,UAAU,CAAC,CACf,OAAQ,GAAS,EAAK,WAAa,KAAK,SAAS,CAAC,CAClD,IAAK,GAAS,EAAK,aAAa,KAAK,CAAC,CAAC,CACvC,OAAO,OAAO,CAAC,CACf,KAAK,GAAG,GACX,GACF,SAAU,EAAG,aAAa,UAAU,GAAK,IAAA,GACzC,MAAO,EAAG,aAAa,OAAO,GAAK,EACrC,EAAE,CACN,CAQA,SAAgB,kBAAkB,EAA4B,CAC5D,OAAO,EACJ,MAAM,GAAG,CAAC,CACV,IAAK,GAAQ,EAAI,KAAK,CAAC,CAAC,CACxB,OAAO,OAAO,CACnB,CAEA,SAAgB,cAAc,EAAoD,CAChF,MAAO,CACL,SAAU,EAAQ,EAAM,SACxB,MAAO,EAAM,MACb,KAAM,EAAM,KACZ,SAAU,EAAM,UAAY,CAAC,EAC7B,MAAO,EAAM,OAAS,EAAM,MAC5B,SAAU,EAAM,SAChB,MAAO,EAAM,KACf,CACF,CAEA,SAAgB,YAAY,EAA6B,EAAe,EAAyC,CAC/G,GAAI,EAAU,OAAO,EAErB,IAAM,EAAkB,EAAM,YAAY,CAAC,CAAC,KAAK,EAIjD,OAFK,EAEE,EAAM,OACV,GACC,EAAK,MAAM,YAAY,CAAC,CAAC,SAAS,CAAe,GACjD,EAAK,MAAM,YAAY,CAAC,CAAC,SAAS,CAAe,GACjD,EAAK,SAAS,KAAM,GAAY,EAAQ,YAAY,CAAC,CAAC,SAAS,CAAe,CAAC,CACnF,EAP6B,CAQ/B,CAGA,SAAgB,UAAU,EAAkD,CAC1E,IAAM,EAAS,IAAI,IAEnB,IAAK,IAAM,KAAQ,EAAO,CACxB,IAAM,EAAM,EAAK,MACb,EAAS,EAAO,IAAI,CAAG,EAEtB,IACH,EAAS,CAAC,EACV,EAAO,IAAI,EAAK,CAAM,GAGxB,EAAO,KAAK,CAAI,CAClB,CAEA,IAAM,EAA4B,CAAC,EAC/B,EAAM,EAEV,IAAK,GAAM,CAAC,EAAO,KAAe,EAAQ,CACpC,IAAU,IAAA,IAAW,EAAK,KAAK,CAAE,QAAO,KAAM,OAAQ,CAAC,EAE3D,IAAK,IAAM,KAAQ,EAAY,EAAK,KAAK,CAAE,IAAK,IAAO,OAAM,KAAM,MAAO,CAAC,CAC7E,CAEA,OAAO,CACT"}
1
+ {"version":3,"file":"command-palette-items.js","names":[],"sources":["../../../src/overlay/command-palette/command-palette-items.ts"],"sourcesContent":["import type { CommandPaletteItem, CommandPaletteItemInput } from './command-palette.types';\n\n// ── Flat row model ────────────────────────────────────────────────────────────\n// Items are grouped by `group` (preserving first-seen order) and flattened into a\n// single list of rows so the listbox can render group headings inline while\n// keyboard navigation still walks a single, index-addressable sequence.\n\nexport type CommandPaletteRow =\n | { group: string; type: 'group' }\n | { idx: number; item: CommandPaletteItem; type: 'item' };\n\nexport function parseSlottedItems(elements: Element[]): CommandPaletteItem[] {\n return elements\n .filter((el) => el.localName === 'ore-command-palette-item')\n .map((el) => ({\n disabled: el.hasAttribute('disabled'),\n group: el.getAttribute('group') ?? undefined,\n icon: el.getAttribute('icon') ?? undefined,\n keywords: (el.getAttribute('keywords') ?? '')\n .split(',')\n .map((term) => term.trim())\n .filter(Boolean),\n label:\n el.getAttribute('label') ||\n [...el.childNodes]\n .filter((node) => node.nodeType === Node.TEXT_NODE)\n .map((node) => node.textContent?.trim())\n .filter(Boolean)\n .join(' ') ||\n '',\n shortcut: el.getAttribute('shortcut') ?? undefined,\n value: el.getAttribute('value') ?? '',\n }));\n}\n\n/**\n * Splits a display-only shortcut hint into individual keys so each can be rendered in its\n * own `<kbd>`. Keys are separated with `+` (e.g. `\"⌘+N\"` → `[\"⌘\", \"N\"]`); a shortcut with no\n * `+` renders as a single key, unchanged. A literal `+` key can't be represented this way :\n * spell it out instead (e.g. `\"Ctrl+Plus\"`).\n */\nexport function splitShortcutKeys(shortcut: string): string[] {\n return shortcut\n .split('+')\n .map((key) => key.trim())\n .filter(Boolean);\n}\n\nexport function normalizeItem(input: CommandPaletteItemInput): CommandPaletteItem {\n return {\n disabled: Boolean(input.disabled),\n group: input.group,\n icon: input.icon,\n keywords: input.keywords ?? [],\n label: input.label ?? input.value,\n shortcut: input.shortcut,\n value: input.value,\n };\n}\n\nexport function filterItems(items: CommandPaletteItem[], query: string, noFilter: boolean): CommandPaletteItem[] {\n if (noFilter) return items;\n\n const normalizedQuery = query.toLowerCase().trim();\n\n if (!normalizedQuery) return items;\n\n return items.filter(\n (item) =>\n item.label.toLowerCase().includes(normalizedQuery) ||\n item.value.toLowerCase().includes(normalizedQuery) ||\n item.keywords.some((keyword) => keyword.toLowerCase().includes(normalizedQuery)),\n );\n}\n\n/** Groups items by `group` (first-seen order) and flattens into index-addressable rows. */\nexport function buildRows(items: CommandPaletteItem[]): CommandPaletteRow[] {\n const groups = new Map<string | undefined, CommandPaletteItem[]>();\n\n for (const item of items) {\n const key = item.group;\n let bucket = groups.get(key);\n\n if (!bucket) {\n bucket = [];\n groups.set(key, bucket);\n }\n\n bucket.push(item);\n }\n\n const rows: CommandPaletteRow[] = [];\n let idx = 0;\n\n for (const [group, groupItems] of groups) {\n if (group !== undefined) rows.push({ group, type: 'group' });\n\n for (const item of groupItems) rows.push({ idx: idx++, item, type: 'item' });\n }\n\n return rows;\n}\n"],"mappings":"AAWA,SAAgB,kBAAkB,EAA2C,CAC3E,OAAO,EACJ,OAAQ,GAAO,EAAG,YAAc,0BAA0B,CAAC,CAC3D,IAAK,IAAQ,CACZ,SAAU,EAAG,aAAa,UAAU,EACpC,MAAO,EAAG,aAAa,OAAO,GAAK,IAAA,GACnC,KAAM,EAAG,aAAa,MAAM,GAAK,IAAA,GACjC,UAAW,EAAG,aAAa,UAAU,GAAK,GAAA,CACvC,MAAM,GAAG,CAAC,CACV,IAAK,GAAS,EAAK,KAAK,CAAC,CAAC,CAC1B,OAAO,OAAO,EACjB,MACE,EAAG,aAAa,OAAO,GACvB,CAAC,GAAG,EAAG,UAAU,CAAC,CACf,OAAQ,GAAS,EAAK,WAAa,KAAK,SAAS,CAAC,CAClD,IAAK,GAAS,EAAK,aAAa,KAAK,CAAC,CAAC,CACvC,OAAO,OAAO,CAAC,CACf,KAAK,GAAG,GACX,GACF,SAAU,EAAG,aAAa,UAAU,GAAK,IAAA,GACzC,MAAO,EAAG,aAAa,OAAO,GAAK,EACrC,EAAE,CACN,CAQA,SAAgB,kBAAkB,EAA4B,CAC5D,OAAO,EACJ,MAAM,GAAG,CAAC,CACV,IAAK,GAAQ,EAAI,KAAK,CAAC,CAAC,CACxB,OAAO,OAAO,CACnB,CAEA,SAAgB,cAAc,EAAoD,CAChF,MAAO,CACL,SAAU,EAAQ,EAAM,SACxB,MAAO,EAAM,MACb,KAAM,EAAM,KACZ,SAAU,EAAM,UAAY,CAAC,EAC7B,MAAO,EAAM,OAAS,EAAM,MAC5B,SAAU,EAAM,SAChB,MAAO,EAAM,KACf,CACF,CAEA,SAAgB,YAAY,EAA6B,EAAe,EAAyC,CAC/G,GAAI,EAAU,OAAO,EAErB,IAAM,EAAkB,EAAM,YAAY,CAAC,CAAC,KAAK,EAIjD,OAFK,EAEE,EAAM,OACV,GACC,EAAK,MAAM,YAAY,CAAC,CAAC,SAAS,CAAe,GACjD,EAAK,MAAM,YAAY,CAAC,CAAC,SAAS,CAAe,GACjD,EAAK,SAAS,KAAM,GAAY,EAAQ,YAAY,CAAC,CAAC,SAAS,CAAe,CAAC,CACnF,EAP6B,CAQ/B,CAGA,SAAgB,UAAU,EAAkD,CAC1E,IAAM,EAAS,IAAI,IAEnB,IAAK,IAAM,KAAQ,EAAO,CACxB,IAAM,EAAM,EAAK,MACb,EAAS,EAAO,IAAI,CAAG,EAEtB,IACH,EAAS,CAAC,EACV,EAAO,IAAI,EAAK,CAAM,GAGxB,EAAO,KAAK,CAAI,CAClB,CAEA,IAAM,EAA4B,CAAC,EAC/B,EAAM,EAEV,IAAK,GAAM,CAAC,EAAO,KAAe,EAAQ,CACpC,IAAU,IAAA,IAAW,EAAK,KAAK,CAAE,QAAO,KAAM,OAAQ,CAAC,EAE3D,IAAK,IAAM,KAAQ,EAAY,EAAK,KAAK,CAAE,IAAK,IAAO,OAAM,KAAM,MAAO,CAAC,CAC7E,CAEA,OAAO,CACT"}
@@ -1,2 +1,2 @@
1
- var e=`@layer refine.base{:host{--_radius:var(--command-palette-radius,var(--rounded-lg));--_max-width:var(--command-palette-max-width,40rem);--_backdrop-bg:var(--command-palette-backdrop,color-mix(in oklch, var(--color-canvas) 40%, transparent));--_panel-bg:var(--command-palette-bg,var(--color-canvas));--_panel-border-color:var(--command-palette-border-color,var(--color-divider));--_option-hover-bg:var(--command-palette-option-hover-bg,var(--color-contrast-100));--_option-focus-bg:var(--command-palette-option-focus-bg,color-mix(in oklch, var(--color-primary) 12%, var(--color-contrast-100)));display:contents}dialog{all:unset;box-sizing:border-box;pointer-events:none;width:100%;max-width:100%;height:100%;max-height:100%;transition:display .2s allow-discrete, overlay .2s allow-discrete;padding-top:min(14vh, var(--size-24));background:0 0;border:none;justify-content:center;align-items:flex-start;margin:0;display:flex;position:fixed;inset:0;overflow:hidden}dialog:not([open]),dialog:not([open]) .panel{display:none}dialog[open]{pointer-events:auto}dialog::-ms-backdrop{background:var(--_backdrop-bg);opacity:1;-webkit-backdrop-filter:blur(var(--blur-xs));backdrop-filter:blur(var(--blur-xs));transition:opacity var(--transition-normal), overlay var(--transition-normal) allow-discrete, display var(--transition-normal) allow-discrete}@starting-style{dialog::-ms-backdrop{opacity:0}}dialog::backdrop{background:var(--_backdrop-bg);opacity:1;-webkit-backdrop-filter:blur(var(--blur-xs));backdrop-filter:blur(var(--blur-xs));transition:opacity var(--transition-normal), overlay var(--transition-normal) allow-discrete, display var(--transition-normal) allow-discrete}@starting-style{dialog::backdrop{opacity:0}}dialog.closing::-ms-backdrop{opacity:0}dialog.closing::backdrop{opacity:0}.panel{box-sizing:border-box;width:var(--_max-width);max-width:calc(100vw - var(--size-8));max-height:min(28rem, calc(100dvh - var(--size-16)));background:var(--_panel-bg);border:var(--border) solid var(--_panel-border-color);border-radius:var(--_radius);box-shadow:var(--command-palette-shadow,var(--shadow-2xl));opacity:1;-webkit-backdrop-filter:blur(var(--blur-md));backdrop-filter:blur(var(--blur-md));transition:opacity .2s var(--ease-spring), transform .2s var(--ease-spring);flex-direction:column;display:flex;position:relative;overflow:hidden;transform:scale(1)translateY(0)}@starting-style{.panel{opacity:0;transform:scale(var(--overlay-enter-scale-dialog)) translateY(-4px)}}dialog.closing .panel{opacity:0;transform:scale(var(--overlay-enter-scale-dialog)) translateY(-4px);transition:opacity .15s var(--ease-spring), transform .15s var(--ease-spring)}@media (width<=640px){.panel{width:calc(100vw - var(--size-4));max-width:calc(100vw - var(--size-4))}dialog{padding-top:var(--size-4)}}.search{gap:var(--size-2);padding:var(--size-3) var(--size-4);border-bottom:var(--border) solid var(--color-contrast-100);flex-shrink:0;align-items:center;display:flex}.search-icon{color:var(--color-contrast-400);flex-shrink:0;display:inline-flex}.search-input{min-width:0;font:inherit;font-size:var(--text-md);color:var(--color-contrast-900);background:0 0;border:none;outline:none;flex:1;padding:0}.search-input::placeholder{color:var(--color-contrast-400)}.search-loader{border:2px solid var(--color-contrast-300);width:1em;height:1em;animation:command-palette-spin var(--transition-loader) infinite;border-radius:50%;flex-shrink:0;display:inline-flex}.search-loader:not(:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){border-right-color:#0000}.search-loader: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)){border-left-color:#0000}.search-loader[hidden]{display:none}@keyframes command-palette-spin{to{transform:rotate(360deg)}}.listbox{padding:var(--size-1);overscroll-behavior:contain;scrollbar-width:thin;flex:1;overflow-y:auto}.empty{padding:var(--size-6) var(--size-3);font-size:var(--text-sm);color:var(--color-contrast-400);text-align:center}.group-heading{padding:var(--size-2) var(--size-2-5) var(--size-1);font-size:var(--text-xs);font-weight:var(--font-semibold);color:var(--color-contrast-500);text-transform:uppercase;letter-spacing:var(--tracking-wide,.05em)}.item{gap:var(--size-2-5);padding:var(--size-2) var(--size-2-5);font-size:var(--text-sm);line-height:var(--leading-normal);color:var(--color-contrast-800);cursor:pointer;border-radius:var(--rounded-md);transition:background var(--transition-fast);align-items:center;display:flex}.item:hover:not([data-disabled]){background:var(--_option-hover-bg)}.item[data-focused]:not([data-disabled]){background:var(--_option-focus-bg)}.item[data-disabled]{color:var(--color-contrast-400);cursor:not-allowed;opacity:.6}.item-icon{color:var(--color-contrast-500);flex-shrink:0;align-items:center;display:inline-flex}.item-label{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.item-shortcut{gap:var(--size-1);flex-shrink:0;display:inline-flex}.footer{gap:var(--size-4);padding:var(--size-2) var(--size-4);font-size:var(--text-xs);color:var(--color-contrast-500);border-top:var(--border) solid var(--color-contrast-100);flex-shrink:0;align-items:center;display:flex}.footer-hint{gap:var(--size-1);align-items:center;display:inline-flex}.footer ore-keyboard-key{--keyboard-key-font-family:inherit;--keyboard-key-padding-inline:var(--size-1)}::slotted(ore-command-palette-item){display:none}}`;exports.default=e;
1
+ var e=`@layer refine.base{:host{--_radius:var(--command-palette-radius,var(--rounded-lg));--_max-width:var(--command-palette-max-width,40rem);--_preview-width:var(--command-palette-preview-width,18rem);--_backdrop-bg:var(--command-palette-backdrop,color-mix(in oklch, var(--color-canvas) 40%, transparent));--_panel-bg:var(--command-palette-bg,var(--color-canvas));--_panel-border-color:var(--command-palette-border-color,var(--color-divider));--_option-hover-bg:var(--command-palette-option-hover-bg,var(--color-contrast-100));--_option-focus-bg:var(--command-palette-option-focus-bg,color-mix(in oklch, var(--color-primary) 12%, var(--color-contrast-100)));display:contents}dialog{all:unset;box-sizing:border-box;pointer-events:none;width:100%;max-width:100%;height:100%;max-height:100%;transition:display .2s allow-discrete, overlay .2s allow-discrete;padding-top:min(14vh, var(--size-24));background:0 0;border:none;justify-content:center;align-items:flex-start;margin:0;display:flex;position:fixed;inset:0;overflow:hidden}dialog:not([open]),dialog:not([open]) .panel{display:none}dialog[open]{pointer-events:auto}dialog::-ms-backdrop{background:var(--_backdrop-bg);opacity:1;-webkit-backdrop-filter:blur(var(--blur-xs));backdrop-filter:blur(var(--blur-xs));transition:opacity var(--transition-normal), overlay var(--transition-normal) allow-discrete, display var(--transition-normal) allow-discrete}@starting-style{dialog::-ms-backdrop{opacity:0}}dialog::backdrop{background:var(--_backdrop-bg);opacity:1;-webkit-backdrop-filter:blur(var(--blur-xs));backdrop-filter:blur(var(--blur-xs));transition:opacity var(--transition-normal), overlay var(--transition-normal) allow-discrete, display var(--transition-normal) allow-discrete}@starting-style{dialog::backdrop{opacity:0}}dialog.closing::-ms-backdrop{opacity:0}dialog.closing::backdrop{opacity:0}.panel{box-sizing:border-box;width:var(--_max-width);max-width:calc(100vw - var(--size-8));max-height:min(28rem, calc(100dvh - var(--size-16)));background:var(--_panel-bg);border:var(--border) solid var(--_panel-border-color);border-radius:var(--_radius);box-shadow:var(--command-palette-shadow,var(--shadow-2xl));opacity:1;-webkit-backdrop-filter:blur(var(--blur-md));backdrop-filter:blur(var(--blur-md));transition:opacity .2s var(--ease-spring), transform .2s var(--ease-spring);flex-direction:column;display:flex;position:relative;overflow:hidden;transform:scale(1)translateY(0)}@starting-style{.panel{opacity:0;transform:scale(var(--overlay-enter-scale-dialog)) translateY(-4px)}}dialog.closing .panel{opacity:0;transform:scale(var(--overlay-enter-scale-dialog)) translateY(-4px);transition:opacity .15s var(--ease-spring), transform .15s var(--ease-spring)}@media (width<=640px){.panel{width:calc(100vw - var(--size-4));max-width:calc(100vw - var(--size-4))}dialog{padding-top:var(--size-4)}.body{flex-direction:column}.preview{border-top:var(--border) solid var(--color-contrast-100);width:auto;max-height:40%}.preview:not(:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){border-left:0}.preview: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)){border-right:0}}.search{gap:var(--size-2);padding:var(--size-3) var(--size-4);border-bottom:var(--border) solid var(--color-contrast-100);flex-shrink:0;align-items:center;display:flex}.search-icon{color:var(--color-contrast-400);flex-shrink:0;display:inline-flex}.search-input{min-width:0;font:inherit;font-size:var(--text-md);color:var(--color-contrast-900);background:0 0;border:none;outline:none;flex:1;padding:0}.search-input::placeholder{color:var(--color-contrast-400)}.search-loader{border:2px solid var(--color-contrast-300);width:1em;height:1em;animation:command-palette-spin var(--transition-loader) infinite;border-radius:50%;flex-shrink:0;display:inline-flex}.search-loader:not(:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){border-right-color:#0000}.search-loader: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)){border-left-color:#0000}.search-loader[hidden]{display:none}@keyframes command-palette-spin{to{transform:rotate(360deg)}}.body{flex:1;min-height:0;display:flex}.listbox{min-width:0;padding:var(--size-1);overscroll-behavior:contain;scrollbar-width:thin;flex:1;overflow-y:auto}.preview{width:var(--_preview-width);padding:var(--size-3) var(--size-4);overscroll-behavior:contain;font-size:var(--text-sm);color:var(--color-contrast-700);scrollbar-width:thin;flex-shrink:0;overflow-y:auto}.preview:not(:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){border-left:var(--border) solid var(--color-contrast-100)}.preview: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)){border-right:var(--border) solid var(--color-contrast-100)}.preview[hidden]{display:none}.empty{padding:var(--size-6) var(--size-3);font-size:var(--text-sm);color:var(--color-contrast-400);text-align:center}.group-heading{padding:var(--size-2) var(--size-2-5) var(--size-1);font-size:var(--text-xs);font-weight:var(--font-semibold);color:var(--color-contrast-500);text-transform:uppercase;letter-spacing:var(--tracking-wide,.05em)}.item{gap:var(--size-2-5);padding:var(--size-2) var(--size-2-5);font-size:var(--text-sm);line-height:var(--leading-normal);color:var(--color-contrast-800);cursor:pointer;border-radius:var(--rounded-md);transition:background var(--transition-fast);align-items:center;display:flex}.item:hover:not([data-disabled]){background:var(--_option-hover-bg)}.item[data-focused]:not([data-disabled]){background:var(--_option-focus-bg)}.item[data-disabled]{color:var(--color-contrast-400);cursor:not-allowed;opacity:.6}.item-icon{color:var(--color-contrast-500);flex-shrink:0;align-items:center;display:inline-flex}.item-label{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.item-shortcut{gap:var(--size-1);flex-shrink:0;display:inline-flex}.footer{gap:var(--size-4);padding:var(--size-2) var(--size-4);font-size:var(--text-xs);color:var(--color-contrast-500);border-top:var(--border) solid var(--color-contrast-100);flex-shrink:0;align-items:center;display:flex}.footer-hint{gap:var(--size-1);align-items:center;display:inline-flex}.footer ore-keyboard-key{--keyboard-key-font-family:inherit;--keyboard-key-padding-inline:var(--size-1)}::slotted(ore-command-palette-item){display:none}}`;exports.default=e;
2
2
  //# sourceMappingURL=command-palette.css.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"command-palette.css.cjs","names":[],"sources":["../../../src/overlay/command-palette/command-palette.css?inline"],"sourcesContent":["@layer refine.base {\n :host {\n --_radius: var(--command-palette-radius, var(--rounded-lg));\n --_max-width: var(--command-palette-max-width, 40rem);\n --_backdrop-bg: var(--command-palette-backdrop, color-mix(in oklch, var(--color-canvas) 40%, transparent));\n --_panel-bg: var(--command-palette-bg, var(--color-canvas));\n --_panel-border-color: var(--command-palette-border-color, var(--color-divider));\n --_option-hover-bg: var(--command-palette-option-hover-bg, var(--color-contrast-100));\n --_option-focus-bg: var(\n --command-palette-option-focus-bg,\n color-mix(in oklch, var(--color-primary) 12%, var(--color-contrast-100))\n );\n\n display: contents;\n }\n\n /* =====================\n Native <dialog> resets — see ore-dialog for the full rationale.\n ===================== */\n\n dialog {\n all: unset;\n position: fixed;\n inset: 0;\n box-sizing: border-box;\n display: flex;\n align-items: flex-start;\n justify-content: center;\n width: 100%;\n max-width: 100%;\n height: 100%;\n max-height: 100%;\n padding-block-start: min(14vh, var(--size-24));\n margin: 0;\n overflow: hidden;\n pointer-events: none;\n background: transparent;\n border: none;\n transition:\n display 200ms allow-discrete,\n overlay 200ms allow-discrete;\n }\n\n dialog:not([open]) {\n display: none;\n }\n\n dialog:not([open]) .panel {\n display: none;\n }\n\n dialog[open] {\n pointer-events: auto;\n }\n\n dialog::backdrop {\n background: var(--_backdrop-bg);\n opacity: 1;\n backdrop-filter: blur(var(--blur-xs));\n transition:\n opacity var(--transition-normal),\n overlay var(--transition-normal) allow-discrete,\n display var(--transition-normal) allow-discrete;\n\n @starting-style {\n opacity: 0;\n }\n }\n\n dialog.closing::backdrop {\n opacity: 0;\n }\n\n /* =====================\n Panel\n ===================== */\n\n .panel {\n position: relative;\n box-sizing: border-box;\n display: flex;\n flex-direction: column;\n width: var(--_max-width);\n max-width: calc(100vw - var(--size-8));\n max-height: min(28rem, calc(100dvh - var(--size-16)));\n overflow: hidden;\n background: var(--_panel-bg);\n border: var(--border) solid var(--_panel-border-color);\n border-radius: var(--_radius);\n box-shadow: var(--command-palette-shadow, var(--shadow-2xl));\n opacity: 1;\n backdrop-filter: blur(var(--blur-md));\n transform: scale(1) translateY(0);\n transition:\n opacity 200ms var(--ease-spring),\n transform 200ms var(--ease-spring);\n\n @starting-style {\n opacity: 0;\n transform: scale(var(--overlay-enter-scale-dialog)) translateY(-4px);\n }\n }\n\n dialog.closing .panel {\n opacity: 0;\n transform: scale(var(--overlay-enter-scale-dialog)) translateY(-4px);\n transition:\n opacity 150ms var(--ease-spring),\n transform 150ms var(--ease-spring);\n }\n\n @media (width <= 640px) {\n .panel {\n width: calc(100vw - var(--size-4));\n max-width: calc(100vw - var(--size-4));\n }\n\n dialog {\n padding-block-start: var(--size-4);\n }\n }\n\n /* =====================\n Search field\n ===================== */\n\n .search {\n display: flex;\n flex-shrink: 0;\n gap: var(--size-2);\n align-items: center;\n padding: var(--size-3) var(--size-4);\n border-block-end: var(--border) solid var(--color-contrast-100);\n }\n\n .search-icon {\n display: inline-flex;\n flex-shrink: 0;\n color: var(--color-contrast-400);\n }\n\n .search-input {\n flex: 1;\n min-width: 0;\n padding: 0;\n font: inherit;\n font-size: var(--text-md);\n color: var(--color-contrast-900);\n outline: none;\n background: transparent;\n border: none;\n }\n\n .search-input::placeholder {\n color: var(--color-contrast-400);\n }\n\n .search-loader {\n display: inline-flex;\n flex-shrink: 0;\n width: 1em;\n height: 1em;\n border: 2px solid var(--color-contrast-300);\n border-inline-end-color: transparent;\n border-radius: 50%;\n animation: command-palette-spin var(--transition-loader) infinite;\n }\n\n .search-loader[hidden] {\n display: none;\n }\n\n @keyframes command-palette-spin {\n to {\n transform: rotate(360deg);\n }\n }\n\n /* =====================\n Listbox\n ===================== */\n\n .listbox {\n flex: 1;\n padding: var(--size-1);\n overflow-y: auto;\n overscroll-behavior: contain;\n scrollbar-width: thin;\n }\n\n .empty {\n padding: var(--size-6) var(--size-3);\n font-size: var(--text-sm);\n color: var(--color-contrast-400);\n text-align: center;\n }\n\n .group-heading {\n padding: var(--size-2) var(--size-2-5) var(--size-1);\n font-size: var(--text-xs);\n font-weight: var(--font-semibold);\n color: var(--color-contrast-500);\n text-transform: uppercase;\n letter-spacing: var(--tracking-wide, 0.05em);\n }\n\n .item {\n display: flex;\n gap: var(--size-2-5);\n align-items: center;\n padding: var(--size-2) var(--size-2-5);\n font-size: var(--text-sm);\n line-height: var(--leading-normal);\n color: var(--color-contrast-800);\n cursor: pointer;\n border-radius: var(--rounded-md);\n transition: background var(--transition-fast);\n }\n\n .item:hover:not([data-disabled]) {\n background: var(--_option-hover-bg);\n }\n\n .item[data-focused]:not([data-disabled]) {\n background: var(--_option-focus-bg);\n }\n\n .item[data-disabled] {\n color: var(--color-contrast-400);\n cursor: not-allowed;\n opacity: 0.6;\n }\n\n .item-icon {\n display: inline-flex;\n flex-shrink: 0;\n align-items: center;\n color: var(--color-contrast-500);\n }\n\n .item-label {\n flex: 1;\n min-width: 0;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n }\n\n .item-shortcut {\n display: inline-flex;\n flex-shrink: 0;\n gap: var(--size-1);\n }\n\n /* =====================\n Footer hints\n ===================== */\n\n .footer {\n display: flex;\n flex-shrink: 0;\n gap: var(--size-4);\n align-items: center;\n padding: var(--size-2) var(--size-4);\n font-size: var(--text-xs);\n color: var(--color-contrast-500);\n border-block-start: var(--border) solid var(--color-contrast-100);\n }\n\n .footer-hint {\n display: inline-flex;\n gap: var(--size-1);\n align-items: center;\n }\n\n .footer ore-keyboard-key {\n --keyboard-key-font-family: inherit;\n --keyboard-key-padding-inline: var(--size-1);\n }\n\n /* Slotted item elements are pure data nodes — never rendered directly. */\n ::slotted(ore-command-palette-item) {\n display: none;\n }\n}\n"],"mappings":""}
1
+ {"version":3,"file":"command-palette.css.cjs","names":[],"sources":["../../../src/overlay/command-palette/command-palette.css?inline"],"sourcesContent":["@layer refine.base {\n :host {\n --_radius: var(--command-palette-radius, var(--rounded-lg));\n --_max-width: var(--command-palette-max-width, 40rem);\n --_preview-width: var(--command-palette-preview-width, 18rem);\n --_backdrop-bg: var(--command-palette-backdrop, color-mix(in oklch, var(--color-canvas) 40%, transparent));\n --_panel-bg: var(--command-palette-bg, var(--color-canvas));\n --_panel-border-color: var(--command-palette-border-color, var(--color-divider));\n --_option-hover-bg: var(--command-palette-option-hover-bg, var(--color-contrast-100));\n --_option-focus-bg: var(\n --command-palette-option-focus-bg,\n color-mix(in oklch, var(--color-primary) 12%, var(--color-contrast-100))\n );\n\n display: contents;\n }\n\n /* =====================\n Native <dialog> resets: see ore-dialog for the full rationale.\n ===================== */\n\n dialog {\n all: unset;\n position: fixed;\n inset: 0;\n box-sizing: border-box;\n display: flex;\n align-items: flex-start;\n justify-content: center;\n width: 100%;\n max-width: 100%;\n height: 100%;\n max-height: 100%;\n padding-block-start: min(14vh, var(--size-24));\n margin: 0;\n overflow: hidden;\n pointer-events: none;\n background: transparent;\n border: none;\n transition:\n display 200ms allow-discrete,\n overlay 200ms allow-discrete;\n }\n\n dialog:not([open]) {\n display: none;\n }\n\n dialog:not([open]) .panel {\n display: none;\n }\n\n dialog[open] {\n pointer-events: auto;\n }\n\n dialog::backdrop {\n background: var(--_backdrop-bg);\n opacity: 1;\n backdrop-filter: blur(var(--blur-xs));\n transition:\n opacity var(--transition-normal),\n overlay var(--transition-normal) allow-discrete,\n display var(--transition-normal) allow-discrete;\n\n @starting-style {\n opacity: 0;\n }\n }\n\n dialog.closing::backdrop {\n opacity: 0;\n }\n\n /* =====================\n Panel\n ===================== */\n\n .panel {\n position: relative;\n box-sizing: border-box;\n display: flex;\n flex-direction: column;\n width: var(--_max-width);\n max-width: calc(100vw - var(--size-8));\n max-height: min(28rem, calc(100dvh - var(--size-16)));\n overflow: hidden;\n background: var(--_panel-bg);\n border: var(--border) solid var(--_panel-border-color);\n border-radius: var(--_radius);\n box-shadow: var(--command-palette-shadow, var(--shadow-2xl));\n opacity: 1;\n backdrop-filter: blur(var(--blur-md));\n transform: scale(1) translateY(0);\n transition:\n opacity 200ms var(--ease-spring),\n transform 200ms var(--ease-spring);\n\n @starting-style {\n opacity: 0;\n transform: scale(var(--overlay-enter-scale-dialog)) translateY(-4px);\n }\n }\n\n dialog.closing .panel {\n opacity: 0;\n transform: scale(var(--overlay-enter-scale-dialog)) translateY(-4px);\n transition:\n opacity 150ms var(--ease-spring),\n transform 150ms var(--ease-spring);\n }\n\n @media (width <= 640px) {\n .panel {\n width: calc(100vw - var(--size-4));\n max-width: calc(100vw - var(--size-4));\n }\n\n dialog {\n padding-block-start: var(--size-4);\n }\n\n /* No horizontal room for a side-by-side pane: the preview drops under the\n list with its own capped height, keeping the rows scannable. */\n .body {\n flex-direction: column;\n }\n\n .preview {\n width: auto;\n max-height: 40%;\n border-block-start: var(--border) solid var(--color-contrast-100);\n border-inline-start: 0;\n }\n }\n\n /* =====================\n Search field\n ===================== */\n\n .search {\n display: flex;\n flex-shrink: 0;\n gap: var(--size-2);\n align-items: center;\n padding: var(--size-3) var(--size-4);\n border-block-end: var(--border) solid var(--color-contrast-100);\n }\n\n .search-icon {\n display: inline-flex;\n flex-shrink: 0;\n color: var(--color-contrast-400);\n }\n\n .search-input {\n flex: 1;\n min-width: 0;\n padding: 0;\n font: inherit;\n font-size: var(--text-md);\n color: var(--color-contrast-900);\n outline: none;\n background: transparent;\n border: none;\n }\n\n .search-input::placeholder {\n color: var(--color-contrast-400);\n }\n\n .search-loader {\n display: inline-flex;\n flex-shrink: 0;\n width: 1em;\n height: 1em;\n border: 2px solid var(--color-contrast-300);\n border-inline-end-color: transparent;\n border-radius: 50%;\n animation: command-palette-spin var(--transition-loader) infinite;\n }\n\n .search-loader[hidden] {\n display: none;\n }\n\n @keyframes command-palette-spin {\n to {\n transform: rotate(360deg);\n }\n }\n\n /* =====================\n Listbox\n ===================== */\n\n /* Row holding the listbox and the optional preview pane side by side. The\n preview folds away (hidden attribute) while its slot is empty, so palettes\n that never use it keep the plain single-column panel. */\n .body {\n display: flex;\n flex: 1;\n /* The listbox scrolls inside this row: without min-height the flex item\n grows past the panel instead of honoring max-height. */\n min-height: 0;\n }\n\n .listbox {\n flex: 1;\n min-width: 0;\n padding: var(--size-1);\n overflow-y: auto;\n overscroll-behavior: contain;\n scrollbar-width: thin;\n }\n\n .preview {\n flex-shrink: 0;\n width: var(--_preview-width);\n padding: var(--size-3) var(--size-4);\n overflow-y: auto;\n overscroll-behavior: contain;\n font-size: var(--text-sm);\n color: var(--color-contrast-700);\n scrollbar-width: thin;\n border-inline-start: var(--border) solid var(--color-contrast-100);\n }\n\n .preview[hidden] {\n display: none;\n }\n\n .empty {\n padding: var(--size-6) var(--size-3);\n font-size: var(--text-sm);\n color: var(--color-contrast-400);\n text-align: center;\n }\n\n .group-heading {\n padding: var(--size-2) var(--size-2-5) var(--size-1);\n font-size: var(--text-xs);\n font-weight: var(--font-semibold);\n color: var(--color-contrast-500);\n text-transform: uppercase;\n letter-spacing: var(--tracking-wide, 0.05em);\n }\n\n .item {\n display: flex;\n gap: var(--size-2-5);\n align-items: center;\n padding: var(--size-2) var(--size-2-5);\n font-size: var(--text-sm);\n line-height: var(--leading-normal);\n color: var(--color-contrast-800);\n cursor: pointer;\n border-radius: var(--rounded-md);\n transition: background var(--transition-fast);\n }\n\n .item:hover:not([data-disabled]) {\n background: var(--_option-hover-bg);\n }\n\n .item[data-focused]:not([data-disabled]) {\n background: var(--_option-focus-bg);\n }\n\n .item[data-disabled] {\n color: var(--color-contrast-400);\n cursor: not-allowed;\n opacity: 0.6;\n }\n\n .item-icon {\n display: inline-flex;\n flex-shrink: 0;\n align-items: center;\n color: var(--color-contrast-500);\n }\n\n .item-label {\n flex: 1;\n min-width: 0;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n }\n\n .item-shortcut {\n display: inline-flex;\n flex-shrink: 0;\n gap: var(--size-1);\n }\n\n /* =====================\n Footer hints\n ===================== */\n\n .footer {\n display: flex;\n flex-shrink: 0;\n gap: var(--size-4);\n align-items: center;\n padding: var(--size-2) var(--size-4);\n font-size: var(--text-xs);\n color: var(--color-contrast-500);\n border-block-start: var(--border) solid var(--color-contrast-100);\n }\n\n .footer-hint {\n display: inline-flex;\n gap: var(--size-1);\n align-items: center;\n }\n\n .footer ore-keyboard-key {\n --keyboard-key-font-family: inherit;\n --keyboard-key-padding-inline: var(--size-1);\n }\n\n /* Slotted item elements are pure data nodes: never rendered directly. */\n ::slotted(ore-command-palette-item) {\n display: none;\n }\n}\n"],"mappings":""}
@@ -1,2 +1,2 @@
1
- var e=`@layer refine.base{:host{--_radius:var(--command-palette-radius,var(--rounded-lg));--_max-width:var(--command-palette-max-width,40rem);--_backdrop-bg:var(--command-palette-backdrop,color-mix(in oklch, var(--color-canvas) 40%, transparent));--_panel-bg:var(--command-palette-bg,var(--color-canvas));--_panel-border-color:var(--command-palette-border-color,var(--color-divider));--_option-hover-bg:var(--command-palette-option-hover-bg,var(--color-contrast-100));--_option-focus-bg:var(--command-palette-option-focus-bg,color-mix(in oklch, var(--color-primary) 12%, var(--color-contrast-100)));display:contents}dialog{all:unset;box-sizing:border-box;pointer-events:none;width:100%;max-width:100%;height:100%;max-height:100%;transition:display .2s allow-discrete, overlay .2s allow-discrete;padding-top:min(14vh, var(--size-24));background:0 0;border:none;justify-content:center;align-items:flex-start;margin:0;display:flex;position:fixed;inset:0;overflow:hidden}dialog:not([open]),dialog:not([open]) .panel{display:none}dialog[open]{pointer-events:auto}dialog::-ms-backdrop{background:var(--_backdrop-bg);opacity:1;-webkit-backdrop-filter:blur(var(--blur-xs));backdrop-filter:blur(var(--blur-xs));transition:opacity var(--transition-normal), overlay var(--transition-normal) allow-discrete, display var(--transition-normal) allow-discrete}@starting-style{dialog::-ms-backdrop{opacity:0}}dialog::backdrop{background:var(--_backdrop-bg);opacity:1;-webkit-backdrop-filter:blur(var(--blur-xs));backdrop-filter:blur(var(--blur-xs));transition:opacity var(--transition-normal), overlay var(--transition-normal) allow-discrete, display var(--transition-normal) allow-discrete}@starting-style{dialog::backdrop{opacity:0}}dialog.closing::-ms-backdrop{opacity:0}dialog.closing::backdrop{opacity:0}.panel{box-sizing:border-box;width:var(--_max-width);max-width:calc(100vw - var(--size-8));max-height:min(28rem, calc(100dvh - var(--size-16)));background:var(--_panel-bg);border:var(--border) solid var(--_panel-border-color);border-radius:var(--_radius);box-shadow:var(--command-palette-shadow,var(--shadow-2xl));opacity:1;-webkit-backdrop-filter:blur(var(--blur-md));backdrop-filter:blur(var(--blur-md));transition:opacity .2s var(--ease-spring), transform .2s var(--ease-spring);flex-direction:column;display:flex;position:relative;overflow:hidden;transform:scale(1)translateY(0)}@starting-style{.panel{opacity:0;transform:scale(var(--overlay-enter-scale-dialog)) translateY(-4px)}}dialog.closing .panel{opacity:0;transform:scale(var(--overlay-enter-scale-dialog)) translateY(-4px);transition:opacity .15s var(--ease-spring), transform .15s var(--ease-spring)}@media (width<=640px){.panel{width:calc(100vw - var(--size-4));max-width:calc(100vw - var(--size-4))}dialog{padding-top:var(--size-4)}}.search{gap:var(--size-2);padding:var(--size-3) var(--size-4);border-bottom:var(--border) solid var(--color-contrast-100);flex-shrink:0;align-items:center;display:flex}.search-icon{color:var(--color-contrast-400);flex-shrink:0;display:inline-flex}.search-input{min-width:0;font:inherit;font-size:var(--text-md);color:var(--color-contrast-900);background:0 0;border:none;outline:none;flex:1;padding:0}.search-input::placeholder{color:var(--color-contrast-400)}.search-loader{border:2px solid var(--color-contrast-300);width:1em;height:1em;animation:command-palette-spin var(--transition-loader) infinite;border-radius:50%;flex-shrink:0;display:inline-flex}.search-loader:not(:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){border-right-color:#0000}.search-loader: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)){border-left-color:#0000}.search-loader[hidden]{display:none}@keyframes command-palette-spin{to{transform:rotate(360deg)}}.listbox{padding:var(--size-1);overscroll-behavior:contain;scrollbar-width:thin;flex:1;overflow-y:auto}.empty{padding:var(--size-6) var(--size-3);font-size:var(--text-sm);color:var(--color-contrast-400);text-align:center}.group-heading{padding:var(--size-2) var(--size-2-5) var(--size-1);font-size:var(--text-xs);font-weight:var(--font-semibold);color:var(--color-contrast-500);text-transform:uppercase;letter-spacing:var(--tracking-wide,.05em)}.item{gap:var(--size-2-5);padding:var(--size-2) var(--size-2-5);font-size:var(--text-sm);line-height:var(--leading-normal);color:var(--color-contrast-800);cursor:pointer;border-radius:var(--rounded-md);transition:background var(--transition-fast);align-items:center;display:flex}.item:hover:not([data-disabled]){background:var(--_option-hover-bg)}.item[data-focused]:not([data-disabled]){background:var(--_option-focus-bg)}.item[data-disabled]{color:var(--color-contrast-400);cursor:not-allowed;opacity:.6}.item-icon{color:var(--color-contrast-500);flex-shrink:0;align-items:center;display:inline-flex}.item-label{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.item-shortcut{gap:var(--size-1);flex-shrink:0;display:inline-flex}.footer{gap:var(--size-4);padding:var(--size-2) var(--size-4);font-size:var(--text-xs);color:var(--color-contrast-500);border-top:var(--border) solid var(--color-contrast-100);flex-shrink:0;align-items:center;display:flex}.footer-hint{gap:var(--size-1);align-items:center;display:inline-flex}.footer ore-keyboard-key{--keyboard-key-font-family:inherit;--keyboard-key-padding-inline:var(--size-1)}::slotted(ore-command-palette-item){display:none}}`;export{e as default};
1
+ var e=`@layer refine.base{:host{--_radius:var(--command-palette-radius,var(--rounded-lg));--_max-width:var(--command-palette-max-width,40rem);--_preview-width:var(--command-palette-preview-width,18rem);--_backdrop-bg:var(--command-palette-backdrop,color-mix(in oklch, var(--color-canvas) 40%, transparent));--_panel-bg:var(--command-palette-bg,var(--color-canvas));--_panel-border-color:var(--command-palette-border-color,var(--color-divider));--_option-hover-bg:var(--command-palette-option-hover-bg,var(--color-contrast-100));--_option-focus-bg:var(--command-palette-option-focus-bg,color-mix(in oklch, var(--color-primary) 12%, var(--color-contrast-100)));display:contents}dialog{all:unset;box-sizing:border-box;pointer-events:none;width:100%;max-width:100%;height:100%;max-height:100%;transition:display .2s allow-discrete, overlay .2s allow-discrete;padding-top:min(14vh, var(--size-24));background:0 0;border:none;justify-content:center;align-items:flex-start;margin:0;display:flex;position:fixed;inset:0;overflow:hidden}dialog:not([open]),dialog:not([open]) .panel{display:none}dialog[open]{pointer-events:auto}dialog::-ms-backdrop{background:var(--_backdrop-bg);opacity:1;-webkit-backdrop-filter:blur(var(--blur-xs));backdrop-filter:blur(var(--blur-xs));transition:opacity var(--transition-normal), overlay var(--transition-normal) allow-discrete, display var(--transition-normal) allow-discrete}@starting-style{dialog::-ms-backdrop{opacity:0}}dialog::backdrop{background:var(--_backdrop-bg);opacity:1;-webkit-backdrop-filter:blur(var(--blur-xs));backdrop-filter:blur(var(--blur-xs));transition:opacity var(--transition-normal), overlay var(--transition-normal) allow-discrete, display var(--transition-normal) allow-discrete}@starting-style{dialog::backdrop{opacity:0}}dialog.closing::-ms-backdrop{opacity:0}dialog.closing::backdrop{opacity:0}.panel{box-sizing:border-box;width:var(--_max-width);max-width:calc(100vw - var(--size-8));max-height:min(28rem, calc(100dvh - var(--size-16)));background:var(--_panel-bg);border:var(--border) solid var(--_panel-border-color);border-radius:var(--_radius);box-shadow:var(--command-palette-shadow,var(--shadow-2xl));opacity:1;-webkit-backdrop-filter:blur(var(--blur-md));backdrop-filter:blur(var(--blur-md));transition:opacity .2s var(--ease-spring), transform .2s var(--ease-spring);flex-direction:column;display:flex;position:relative;overflow:hidden;transform:scale(1)translateY(0)}@starting-style{.panel{opacity:0;transform:scale(var(--overlay-enter-scale-dialog)) translateY(-4px)}}dialog.closing .panel{opacity:0;transform:scale(var(--overlay-enter-scale-dialog)) translateY(-4px);transition:opacity .15s var(--ease-spring), transform .15s var(--ease-spring)}@media (width<=640px){.panel{width:calc(100vw - var(--size-4));max-width:calc(100vw - var(--size-4))}dialog{padding-top:var(--size-4)}.body{flex-direction:column}.preview{border-top:var(--border) solid var(--color-contrast-100);width:auto;max-height:40%}.preview:not(:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){border-left:0}.preview: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)){border-right:0}}.search{gap:var(--size-2);padding:var(--size-3) var(--size-4);border-bottom:var(--border) solid var(--color-contrast-100);flex-shrink:0;align-items:center;display:flex}.search-icon{color:var(--color-contrast-400);flex-shrink:0;display:inline-flex}.search-input{min-width:0;font:inherit;font-size:var(--text-md);color:var(--color-contrast-900);background:0 0;border:none;outline:none;flex:1;padding:0}.search-input::placeholder{color:var(--color-contrast-400)}.search-loader{border:2px solid var(--color-contrast-300);width:1em;height:1em;animation:command-palette-spin var(--transition-loader) infinite;border-radius:50%;flex-shrink:0;display:inline-flex}.search-loader:not(:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){border-right-color:#0000}.search-loader: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)){border-left-color:#0000}.search-loader[hidden]{display:none}@keyframes command-palette-spin{to{transform:rotate(360deg)}}.body{flex:1;min-height:0;display:flex}.listbox{min-width:0;padding:var(--size-1);overscroll-behavior:contain;scrollbar-width:thin;flex:1;overflow-y:auto}.preview{width:var(--_preview-width);padding:var(--size-3) var(--size-4);overscroll-behavior:contain;font-size:var(--text-sm);color:var(--color-contrast-700);scrollbar-width:thin;flex-shrink:0;overflow-y:auto}.preview:not(:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){border-left:var(--border) solid var(--color-contrast-100)}.preview: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)){border-right:var(--border) solid var(--color-contrast-100)}.preview[hidden]{display:none}.empty{padding:var(--size-6) var(--size-3);font-size:var(--text-sm);color:var(--color-contrast-400);text-align:center}.group-heading{padding:var(--size-2) var(--size-2-5) var(--size-1);font-size:var(--text-xs);font-weight:var(--font-semibold);color:var(--color-contrast-500);text-transform:uppercase;letter-spacing:var(--tracking-wide,.05em)}.item{gap:var(--size-2-5);padding:var(--size-2) var(--size-2-5);font-size:var(--text-sm);line-height:var(--leading-normal);color:var(--color-contrast-800);cursor:pointer;border-radius:var(--rounded-md);transition:background var(--transition-fast);align-items:center;display:flex}.item:hover:not([data-disabled]){background:var(--_option-hover-bg)}.item[data-focused]:not([data-disabled]){background:var(--_option-focus-bg)}.item[data-disabled]{color:var(--color-contrast-400);cursor:not-allowed;opacity:.6}.item-icon{color:var(--color-contrast-500);flex-shrink:0;align-items:center;display:inline-flex}.item-label{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.item-shortcut{gap:var(--size-1);flex-shrink:0;display:inline-flex}.footer{gap:var(--size-4);padding:var(--size-2) var(--size-4);font-size:var(--text-xs);color:var(--color-contrast-500);border-top:var(--border) solid var(--color-contrast-100);flex-shrink:0;align-items:center;display:flex}.footer-hint{gap:var(--size-1);align-items:center;display:inline-flex}.footer ore-keyboard-key{--keyboard-key-font-family:inherit;--keyboard-key-padding-inline:var(--size-1)}::slotted(ore-command-palette-item){display:none}}`;export{e as default};
2
2
  //# sourceMappingURL=command-palette.css.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"command-palette.css.js","names":[],"sources":["../../../src/overlay/command-palette/command-palette.css?inline"],"sourcesContent":["@layer refine.base {\n :host {\n --_radius: var(--command-palette-radius, var(--rounded-lg));\n --_max-width: var(--command-palette-max-width, 40rem);\n --_backdrop-bg: var(--command-palette-backdrop, color-mix(in oklch, var(--color-canvas) 40%, transparent));\n --_panel-bg: var(--command-palette-bg, var(--color-canvas));\n --_panel-border-color: var(--command-palette-border-color, var(--color-divider));\n --_option-hover-bg: var(--command-palette-option-hover-bg, var(--color-contrast-100));\n --_option-focus-bg: var(\n --command-palette-option-focus-bg,\n color-mix(in oklch, var(--color-primary) 12%, var(--color-contrast-100))\n );\n\n display: contents;\n }\n\n /* =====================\n Native <dialog> resets — see ore-dialog for the full rationale.\n ===================== */\n\n dialog {\n all: unset;\n position: fixed;\n inset: 0;\n box-sizing: border-box;\n display: flex;\n align-items: flex-start;\n justify-content: center;\n width: 100%;\n max-width: 100%;\n height: 100%;\n max-height: 100%;\n padding-block-start: min(14vh, var(--size-24));\n margin: 0;\n overflow: hidden;\n pointer-events: none;\n background: transparent;\n border: none;\n transition:\n display 200ms allow-discrete,\n overlay 200ms allow-discrete;\n }\n\n dialog:not([open]) {\n display: none;\n }\n\n dialog:not([open]) .panel {\n display: none;\n }\n\n dialog[open] {\n pointer-events: auto;\n }\n\n dialog::backdrop {\n background: var(--_backdrop-bg);\n opacity: 1;\n backdrop-filter: blur(var(--blur-xs));\n transition:\n opacity var(--transition-normal),\n overlay var(--transition-normal) allow-discrete,\n display var(--transition-normal) allow-discrete;\n\n @starting-style {\n opacity: 0;\n }\n }\n\n dialog.closing::backdrop {\n opacity: 0;\n }\n\n /* =====================\n Panel\n ===================== */\n\n .panel {\n position: relative;\n box-sizing: border-box;\n display: flex;\n flex-direction: column;\n width: var(--_max-width);\n max-width: calc(100vw - var(--size-8));\n max-height: min(28rem, calc(100dvh - var(--size-16)));\n overflow: hidden;\n background: var(--_panel-bg);\n border: var(--border) solid var(--_panel-border-color);\n border-radius: var(--_radius);\n box-shadow: var(--command-palette-shadow, var(--shadow-2xl));\n opacity: 1;\n backdrop-filter: blur(var(--blur-md));\n transform: scale(1) translateY(0);\n transition:\n opacity 200ms var(--ease-spring),\n transform 200ms var(--ease-spring);\n\n @starting-style {\n opacity: 0;\n transform: scale(var(--overlay-enter-scale-dialog)) translateY(-4px);\n }\n }\n\n dialog.closing .panel {\n opacity: 0;\n transform: scale(var(--overlay-enter-scale-dialog)) translateY(-4px);\n transition:\n opacity 150ms var(--ease-spring),\n transform 150ms var(--ease-spring);\n }\n\n @media (width <= 640px) {\n .panel {\n width: calc(100vw - var(--size-4));\n max-width: calc(100vw - var(--size-4));\n }\n\n dialog {\n padding-block-start: var(--size-4);\n }\n }\n\n /* =====================\n Search field\n ===================== */\n\n .search {\n display: flex;\n flex-shrink: 0;\n gap: var(--size-2);\n align-items: center;\n padding: var(--size-3) var(--size-4);\n border-block-end: var(--border) solid var(--color-contrast-100);\n }\n\n .search-icon {\n display: inline-flex;\n flex-shrink: 0;\n color: var(--color-contrast-400);\n }\n\n .search-input {\n flex: 1;\n min-width: 0;\n padding: 0;\n font: inherit;\n font-size: var(--text-md);\n color: var(--color-contrast-900);\n outline: none;\n background: transparent;\n border: none;\n }\n\n .search-input::placeholder {\n color: var(--color-contrast-400);\n }\n\n .search-loader {\n display: inline-flex;\n flex-shrink: 0;\n width: 1em;\n height: 1em;\n border: 2px solid var(--color-contrast-300);\n border-inline-end-color: transparent;\n border-radius: 50%;\n animation: command-palette-spin var(--transition-loader) infinite;\n }\n\n .search-loader[hidden] {\n display: none;\n }\n\n @keyframes command-palette-spin {\n to {\n transform: rotate(360deg);\n }\n }\n\n /* =====================\n Listbox\n ===================== */\n\n .listbox {\n flex: 1;\n padding: var(--size-1);\n overflow-y: auto;\n overscroll-behavior: contain;\n scrollbar-width: thin;\n }\n\n .empty {\n padding: var(--size-6) var(--size-3);\n font-size: var(--text-sm);\n color: var(--color-contrast-400);\n text-align: center;\n }\n\n .group-heading {\n padding: var(--size-2) var(--size-2-5) var(--size-1);\n font-size: var(--text-xs);\n font-weight: var(--font-semibold);\n color: var(--color-contrast-500);\n text-transform: uppercase;\n letter-spacing: var(--tracking-wide, 0.05em);\n }\n\n .item {\n display: flex;\n gap: var(--size-2-5);\n align-items: center;\n padding: var(--size-2) var(--size-2-5);\n font-size: var(--text-sm);\n line-height: var(--leading-normal);\n color: var(--color-contrast-800);\n cursor: pointer;\n border-radius: var(--rounded-md);\n transition: background var(--transition-fast);\n }\n\n .item:hover:not([data-disabled]) {\n background: var(--_option-hover-bg);\n }\n\n .item[data-focused]:not([data-disabled]) {\n background: var(--_option-focus-bg);\n }\n\n .item[data-disabled] {\n color: var(--color-contrast-400);\n cursor: not-allowed;\n opacity: 0.6;\n }\n\n .item-icon {\n display: inline-flex;\n flex-shrink: 0;\n align-items: center;\n color: var(--color-contrast-500);\n }\n\n .item-label {\n flex: 1;\n min-width: 0;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n }\n\n .item-shortcut {\n display: inline-flex;\n flex-shrink: 0;\n gap: var(--size-1);\n }\n\n /* =====================\n Footer hints\n ===================== */\n\n .footer {\n display: flex;\n flex-shrink: 0;\n gap: var(--size-4);\n align-items: center;\n padding: var(--size-2) var(--size-4);\n font-size: var(--text-xs);\n color: var(--color-contrast-500);\n border-block-start: var(--border) solid var(--color-contrast-100);\n }\n\n .footer-hint {\n display: inline-flex;\n gap: var(--size-1);\n align-items: center;\n }\n\n .footer ore-keyboard-key {\n --keyboard-key-font-family: inherit;\n --keyboard-key-padding-inline: var(--size-1);\n }\n\n /* Slotted item elements are pure data nodes — never rendered directly. */\n ::slotted(ore-command-palette-item) {\n display: none;\n }\n}\n"],"mappings":""}
1
+ {"version":3,"file":"command-palette.css.js","names":[],"sources":["../../../src/overlay/command-palette/command-palette.css?inline"],"sourcesContent":["@layer refine.base {\n :host {\n --_radius: var(--command-palette-radius, var(--rounded-lg));\n --_max-width: var(--command-palette-max-width, 40rem);\n --_preview-width: var(--command-palette-preview-width, 18rem);\n --_backdrop-bg: var(--command-palette-backdrop, color-mix(in oklch, var(--color-canvas) 40%, transparent));\n --_panel-bg: var(--command-palette-bg, var(--color-canvas));\n --_panel-border-color: var(--command-palette-border-color, var(--color-divider));\n --_option-hover-bg: var(--command-palette-option-hover-bg, var(--color-contrast-100));\n --_option-focus-bg: var(\n --command-palette-option-focus-bg,\n color-mix(in oklch, var(--color-primary) 12%, var(--color-contrast-100))\n );\n\n display: contents;\n }\n\n /* =====================\n Native <dialog> resets: see ore-dialog for the full rationale.\n ===================== */\n\n dialog {\n all: unset;\n position: fixed;\n inset: 0;\n box-sizing: border-box;\n display: flex;\n align-items: flex-start;\n justify-content: center;\n width: 100%;\n max-width: 100%;\n height: 100%;\n max-height: 100%;\n padding-block-start: min(14vh, var(--size-24));\n margin: 0;\n overflow: hidden;\n pointer-events: none;\n background: transparent;\n border: none;\n transition:\n display 200ms allow-discrete,\n overlay 200ms allow-discrete;\n }\n\n dialog:not([open]) {\n display: none;\n }\n\n dialog:not([open]) .panel {\n display: none;\n }\n\n dialog[open] {\n pointer-events: auto;\n }\n\n dialog::backdrop {\n background: var(--_backdrop-bg);\n opacity: 1;\n backdrop-filter: blur(var(--blur-xs));\n transition:\n opacity var(--transition-normal),\n overlay var(--transition-normal) allow-discrete,\n display var(--transition-normal) allow-discrete;\n\n @starting-style {\n opacity: 0;\n }\n }\n\n dialog.closing::backdrop {\n opacity: 0;\n }\n\n /* =====================\n Panel\n ===================== */\n\n .panel {\n position: relative;\n box-sizing: border-box;\n display: flex;\n flex-direction: column;\n width: var(--_max-width);\n max-width: calc(100vw - var(--size-8));\n max-height: min(28rem, calc(100dvh - var(--size-16)));\n overflow: hidden;\n background: var(--_panel-bg);\n border: var(--border) solid var(--_panel-border-color);\n border-radius: var(--_radius);\n box-shadow: var(--command-palette-shadow, var(--shadow-2xl));\n opacity: 1;\n backdrop-filter: blur(var(--blur-md));\n transform: scale(1) translateY(0);\n transition:\n opacity 200ms var(--ease-spring),\n transform 200ms var(--ease-spring);\n\n @starting-style {\n opacity: 0;\n transform: scale(var(--overlay-enter-scale-dialog)) translateY(-4px);\n }\n }\n\n dialog.closing .panel {\n opacity: 0;\n transform: scale(var(--overlay-enter-scale-dialog)) translateY(-4px);\n transition:\n opacity 150ms var(--ease-spring),\n transform 150ms var(--ease-spring);\n }\n\n @media (width <= 640px) {\n .panel {\n width: calc(100vw - var(--size-4));\n max-width: calc(100vw - var(--size-4));\n }\n\n dialog {\n padding-block-start: var(--size-4);\n }\n\n /* No horizontal room for a side-by-side pane: the preview drops under the\n list with its own capped height, keeping the rows scannable. */\n .body {\n flex-direction: column;\n }\n\n .preview {\n width: auto;\n max-height: 40%;\n border-block-start: var(--border) solid var(--color-contrast-100);\n border-inline-start: 0;\n }\n }\n\n /* =====================\n Search field\n ===================== */\n\n .search {\n display: flex;\n flex-shrink: 0;\n gap: var(--size-2);\n align-items: center;\n padding: var(--size-3) var(--size-4);\n border-block-end: var(--border) solid var(--color-contrast-100);\n }\n\n .search-icon {\n display: inline-flex;\n flex-shrink: 0;\n color: var(--color-contrast-400);\n }\n\n .search-input {\n flex: 1;\n min-width: 0;\n padding: 0;\n font: inherit;\n font-size: var(--text-md);\n color: var(--color-contrast-900);\n outline: none;\n background: transparent;\n border: none;\n }\n\n .search-input::placeholder {\n color: var(--color-contrast-400);\n }\n\n .search-loader {\n display: inline-flex;\n flex-shrink: 0;\n width: 1em;\n height: 1em;\n border: 2px solid var(--color-contrast-300);\n border-inline-end-color: transparent;\n border-radius: 50%;\n animation: command-palette-spin var(--transition-loader) infinite;\n }\n\n .search-loader[hidden] {\n display: none;\n }\n\n @keyframes command-palette-spin {\n to {\n transform: rotate(360deg);\n }\n }\n\n /* =====================\n Listbox\n ===================== */\n\n /* Row holding the listbox and the optional preview pane side by side. The\n preview folds away (hidden attribute) while its slot is empty, so palettes\n that never use it keep the plain single-column panel. */\n .body {\n display: flex;\n flex: 1;\n /* The listbox scrolls inside this row: without min-height the flex item\n grows past the panel instead of honoring max-height. */\n min-height: 0;\n }\n\n .listbox {\n flex: 1;\n min-width: 0;\n padding: var(--size-1);\n overflow-y: auto;\n overscroll-behavior: contain;\n scrollbar-width: thin;\n }\n\n .preview {\n flex-shrink: 0;\n width: var(--_preview-width);\n padding: var(--size-3) var(--size-4);\n overflow-y: auto;\n overscroll-behavior: contain;\n font-size: var(--text-sm);\n color: var(--color-contrast-700);\n scrollbar-width: thin;\n border-inline-start: var(--border) solid var(--color-contrast-100);\n }\n\n .preview[hidden] {\n display: none;\n }\n\n .empty {\n padding: var(--size-6) var(--size-3);\n font-size: var(--text-sm);\n color: var(--color-contrast-400);\n text-align: center;\n }\n\n .group-heading {\n padding: var(--size-2) var(--size-2-5) var(--size-1);\n font-size: var(--text-xs);\n font-weight: var(--font-semibold);\n color: var(--color-contrast-500);\n text-transform: uppercase;\n letter-spacing: var(--tracking-wide, 0.05em);\n }\n\n .item {\n display: flex;\n gap: var(--size-2-5);\n align-items: center;\n padding: var(--size-2) var(--size-2-5);\n font-size: var(--text-sm);\n line-height: var(--leading-normal);\n color: var(--color-contrast-800);\n cursor: pointer;\n border-radius: var(--rounded-md);\n transition: background var(--transition-fast);\n }\n\n .item:hover:not([data-disabled]) {\n background: var(--_option-hover-bg);\n }\n\n .item[data-focused]:not([data-disabled]) {\n background: var(--_option-focus-bg);\n }\n\n .item[data-disabled] {\n color: var(--color-contrast-400);\n cursor: not-allowed;\n opacity: 0.6;\n }\n\n .item-icon {\n display: inline-flex;\n flex-shrink: 0;\n align-items: center;\n color: var(--color-contrast-500);\n }\n\n .item-label {\n flex: 1;\n min-width: 0;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n }\n\n .item-shortcut {\n display: inline-flex;\n flex-shrink: 0;\n gap: var(--size-1);\n }\n\n /* =====================\n Footer hints\n ===================== */\n\n .footer {\n display: flex;\n flex-shrink: 0;\n gap: var(--size-4);\n align-items: center;\n padding: var(--size-2) var(--size-4);\n font-size: var(--text-xs);\n color: var(--color-contrast-500);\n border-block-start: var(--border) solid var(--color-contrast-100);\n }\n\n .footer-hint {\n display: inline-flex;\n gap: var(--size-1);\n align-items: center;\n }\n\n .footer ore-keyboard-key {\n --keyboard-key-font-family: inherit;\n --keyboard-key-padding-inline: var(--size-1);\n }\n\n /* Slotted item elements are pure data nodes: never rendered directly. */\n ::slotted(ore-command-palette-item) {\n display: none;\n }\n}\n"],"mappings":""}
@@ -2,7 +2,7 @@ export { ICON_TAG } from '../../content/icon/icon';
2
2
  export { KEYBOARD_SHORTCUT_TAG } from '../../content/keyboard-key/keyboard-key';
3
3
  export type { OreCommandPaletteEvents, OreCommandPaletteProps } from './command-palette.types';
4
4
  /**
5
- * A pure data node describing one command. Never rendered directly — `ore-command-palette`
5
+ * A pure data node describing one command. Never rendered directly: `ore-command-palette`
6
6
  * reads its attributes/text content and renders the visible row itself.
7
7
  *
8
8
  * @element ore-command-palette-item
@@ -10,7 +10,7 @@ export type { OreCommandPaletteEvents, OreCommandPaletteProps } from './command-
10
10
  * @attr {string} value - Value emitted by the `select` event and matched against the search query
11
11
  * @attr {string} label - Explicit label text; falls back to the element's text content
12
12
  * @attr {string} group - Group heading the item is clustered under
13
- * @attr {string} shortcut - Display-only keyboard hint rendered at the end of the row, one `<kbd>` per `+`-separated key (e.g. `"⌘+S"` renders two keycaps; a literal `+` key isn't representable — spell it out, e.g. `"Ctrl+Plus"`)
13
+ * @attr {string} shortcut - Display-only keyboard hint rendered at the end of the row, one `<kbd>` per `+`-separated key (e.g. `"⌘+S"` renders two keycaps; a literal `+` key isn't representable: spell it out, e.g. `"Ctrl+Plus"`)
14
14
  * @attr {boolean} disabled - Excludes the item from keyboard navigation and selection
15
15
  *
16
16
  * @slot icon - Optional leading icon content
@@ -22,7 +22,7 @@ export type { OreCommandPaletteEvents, OreCommandPaletteProps } from './command-
22
22
  */
23
23
  export declare const COMMAND_PALETTE_ITEM_TAG: "ore-command-palette-item";
24
24
  /**
25
- * A searchable, keyboard-driven list of commands presented in a centered modal —
25
+ * A searchable, keyboard-driven list of commands presented in a centered modal :
26
26
  * the "⌘K" pattern popularized by editors and productivity apps. Built on the
27
27
  * native `<dialog>` element (focus trap, top-layer stacking, `Escape`-to-close)
28
28
  * and `@vielzeug/keymap` for the global shortcut that opens it.
@@ -40,11 +40,13 @@ export declare const COMMAND_PALETTE_ITEM_TAG: "ore-command-palette-item";
40
40
  * @attr {string} empty-text - Message shown when no item matches the query
41
41
  * @attr {boolean} keep-open-on-select - Keep the palette open after an item is selected
42
42
  *
43
+ * @fires active-change - Fired when the focused row changes (keyboard, hover, typing, open, close). detail: `{ value, label, item }`; `item` is `undefined` and `value` empty when no row is active
43
44
  * @fires open-change - Fired when the palette state changes. detail: `{ open, reason }`
44
45
  * @fires search - Fired on every keystroke in the search input. detail: `{ query }`
45
46
  * @fires select - Fired when a command is chosen (click or `Enter`). detail: `{ value, label, item }`
46
47
  *
47
48
  * @slot - `<ore-command-palette-item>` elements (alternative/supplement to the `items` prop)
49
+ * @slot preview - Optional detail panel rendered beside the list, shown while it has content. Pair it with `active-change` to preview the focused row
48
50
  *
49
51
  * @cssprop --command-palette-bg - Panel background color
50
52
  * @cssprop --command-palette-border-color - Panel border color
@@ -54,11 +56,13 @@ export declare const COMMAND_PALETTE_ITEM_TAG: "ore-command-palette-item";
54
56
  * @cssprop --command-palette-backdrop - Backdrop overlay color
55
57
  * @cssprop --command-palette-option-hover-bg - Item background on hover
56
58
  * @cssprop --command-palette-option-focus-bg - Item background when keyboard-focused
59
+ * @cssprop --command-palette-preview-width - Preview panel width when the `preview` slot has content
57
60
  *
58
61
  * @part dialog - Dialog root container
59
62
  * @part panel - Panel container
60
63
  * @part input - Search input
61
64
  * @part listbox - Listbox of matching commands
65
+ * @part preview - Preview panel shown beside the list
62
66
  *
63
67
  * @example
64
68
  * ```html
@@ -1 +1 @@
1
- {"version":3,"file":"command-palette.d.ts","sourceRoot":"","sources":["../../../src/overlay/command-palette/command-palette.ts"],"names":[],"mappings":"AAYA,OAAO,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AACnD,OAAO,EAAE,qBAAqB,EAAE,MAAM,yCAAyC,CAAC;AAChF,YAAY,EAAE,uBAAuB,EAAE,sBAAsB,EAAE,MAAM,yBAAyB,CAAC;AAE/F;;;;;;;;;;;;;;;;;;GAkBG;AACH,eAAO,MAAM,wBAAwB,EAAG,0BAAmC,CAAC;AAO5E;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+CG;AACH,eAAO,MAAM,mBAAmB,EAAG,qBAA8B,CAAC"}
1
+ {"version":3,"file":"command-palette.d.ts","sourceRoot":"","sources":["../../../src/overlay/command-palette/command-palette.ts"],"names":[],"mappings":"AAYA,OAAO,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AACnD,OAAO,EAAE,qBAAqB,EAAE,MAAM,yCAAyC,CAAC;AAChF,YAAY,EAAE,uBAAuB,EAAE,sBAAsB,EAAE,MAAM,yBAAyB,CAAC;AAE/F;;;;;;;;;;;;;;;;;;GAkBG;AACH,eAAO,MAAM,wBAAwB,EAAG,0BAAmC,CAAC;AAO5E;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmDG;AACH,eAAO,MAAM,mBAAmB,EAAG,qBAA8B,CAAC"}
@@ -9,9 +9,9 @@ export type CommandPaletteItemInput = {
9
9
  keywords?: string[];
10
10
  label?: string;
11
11
  /**
12
- * Display-only shortcut hint rendered at the end of the row, one `<kbd>` per key — separate
13
- * keys with `+` (e.g. `"⌘+S"`). Purely visual — not bound to a live key handler. A literal
14
- * `+` key itself isn't representable this way — spell it out instead (e.g. `"Ctrl+Plus"`).
12
+ * Display-only shortcut hint rendered at the end of the row, one `<kbd>` per key: separate
13
+ * keys with `+` (e.g. `"⌘+S"`). Purely visual: not bound to a live key handler. A literal
14
+ * `+` key itself isn't representable this way: spell it out instead (e.g. `"Ctrl+Plus"`).
15
15
  */
16
16
  shortcut?: string;
17
17
  value: string;
@@ -30,7 +30,17 @@ export type CommandPaletteSelectDetail = {
30
30
  label: string;
31
31
  value: string;
32
32
  };
33
+ /**
34
+ * The row the palette currently points at. `item` is `undefined` when the list is empty or the
35
+ * palette has no focus, which is also when a `preview` slot should be emptied by its owner.
36
+ */
37
+ export type CommandPaletteActiveChangeDetail = {
38
+ item?: CommandPaletteItem;
39
+ label: string;
40
+ value: string;
41
+ };
33
42
  export type OreCommandPaletteEvents = {
43
+ 'active-change': CommandPaletteActiveChangeDetail;
34
44
  'open-change': OverlayOpenChangeDetail;
35
45
  search: {
36
46
  query: string;
@@ -42,7 +52,7 @@ export type OreCommandPaletteProps = {
42
52
  'default-open'?: boolean;
43
53
  /** Text shown when no item matches the current query. */
44
54
  'empty-text'?: string;
45
- /** JS items array — alternative or supplement to slotted `<ore-command-palette-item>` elements. */
55
+ /** JS items array: alternative or supplement to slotted `<ore-command-palette-item>` elements. */
46
56
  items?: CommandPaletteItemInput[];
47
57
  /** Keep the palette open after an item is selected. Default: closes on select. */
48
58
  'keep-open-on-select'?: boolean;
@@ -50,7 +60,7 @@ export type OreCommandPaletteProps = {
50
60
  label?: string;
51
61
  /** Shows a loading row below the search input (e.g. while results are fetched asynchronously). */
52
62
  loading?: boolean;
53
- /** Disables built-in client-side filtering — use when `items` is already filtered server-side. */
63
+ /** Disables built-in client-side filtering: use when `items` is already filtered server-side. */
54
64
  'no-filter'?: boolean;
55
65
  /** Controls the open state of the palette. */
56
66
  open?: boolean;
@@ -58,7 +68,7 @@ export type OreCommandPaletteProps = {
58
68
  placeholder?: string;
59
69
  /**
60
70
  * Global keyboard shortcut (in `@vielzeug/keymap` syntax, e.g. `"mod+k"`) that toggles the
61
- * palette open/closed from anywhere on the page. Set to an empty string to disable — useful
71
+ * palette open/closed from anywhere on the page. Set to an empty string to disable: useful
62
72
  * when the host application already manages its own trigger and shortcut.
63
73
  */
64
74
  shortcut?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"command-palette.types.d.ts","sourceRoot":"","sources":["../../../src/overlay/command-palette/command-palette.types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,YAAY,CAAC;AAE1D,MAAM,MAAM,uBAAuB,GAAG;IACpC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,8FAA8F;IAC9F,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,8FAA8F;IAC9F,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,6EAA6E;IAC7E,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;;;OAIG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;CACf,CAAC;AAEF,MAAM,MAAM,kBAAkB,GAAG;IAC/B,QAAQ,EAAE,OAAO,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;CACf,CAAC;AAEF,MAAM,MAAM,0BAA0B,GAAG;IACvC,IAAI,EAAE,kBAAkB,CAAC;IACzB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;CACf,CAAC;AAEF,MAAM,MAAM,uBAAuB,GAAG;IACpC,aAAa,EAAE,uBAAuB,CAAC;IACvC,MAAM,EAAE;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;IAC1B,MAAM,EAAE,0BAA0B,CAAC;CACpC,CAAC;AAEF,MAAM,MAAM,sBAAsB,GAAG;IACnC,mEAAmE;IACnE,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,yDAAyD;IACzD,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,mGAAmG;IACnG,KAAK,CAAC,EAAE,uBAAuB,EAAE,CAAC;IAClC,kFAAkF;IAClF,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAChC,iGAAiG;IACjG,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,kGAAkG;IAClG,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,kGAAkG;IAClG,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,8CAA8C;IAC9C,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,6CAA6C;IAC7C,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;;;OAIG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,MAAM,MAAM,0BAA0B,GAAG;IACvC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,qEAAqE;IACrE,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC"}
1
+ {"version":3,"file":"command-palette.types.d.ts","sourceRoot":"","sources":["../../../src/overlay/command-palette/command-palette.types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,YAAY,CAAC;AAE1D,MAAM,MAAM,uBAAuB,GAAG;IACpC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,8FAA8F;IAC9F,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,8FAA8F;IAC9F,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,6EAA6E;IAC7E,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;;;OAIG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;CACf,CAAC;AAEF,MAAM,MAAM,kBAAkB,GAAG;IAC/B,QAAQ,EAAE,OAAO,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;CACf,CAAC;AAEF,MAAM,MAAM,0BAA0B,GAAG;IACvC,IAAI,EAAE,kBAAkB,CAAC;IACzB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;CACf,CAAC;AAEF;;;GAGG;AACH,MAAM,MAAM,gCAAgC,GAAG;IAC7C,IAAI,CAAC,EAAE,kBAAkB,CAAC;IAC1B,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;CACf,CAAC;AAEF,MAAM,MAAM,uBAAuB,GAAG;IACpC,eAAe,EAAE,gCAAgC,CAAC;IAClD,aAAa,EAAE,uBAAuB,CAAC;IACvC,MAAM,EAAE;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;IAC1B,MAAM,EAAE,0BAA0B,CAAC;CACpC,CAAC;AAEF,MAAM,MAAM,sBAAsB,GAAG;IACnC,mEAAmE;IACnE,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,yDAAyD;IACzD,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,kGAAkG;IAClG,KAAK,CAAC,EAAE,uBAAuB,EAAE,CAAC;IAClC,kFAAkF;IAClF,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAChC,iGAAiG;IACjG,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,kGAAkG;IAClG,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,iGAAiG;IACjG,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,8CAA8C;IAC9C,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,6CAA6C;IAC7C,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;;;OAIG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,MAAM,MAAM,0BAA0B,GAAG;IACvC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,qEAAqE;IACrE,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC"}
@@ -1,2 +1,2 @@
1
- var e=`@layer refine.base{:host{--_radius:var(--dialog-radius,var(--rounded-lg));--_padding:var(--dialog-padding,var(--size-4));--_gap:var(--dialog-gap,var(--size-4));--_max-width:var(--dialog-max-width,32rem);--_elevation:var(--shadow-xl);--_backdrop-filter:none;--_backdrop-bg:var(--dialog-backdrop,color-mix(in oklch, var(--color-canvas) 40%, transparent));--_panel-bg:var(--dialog-bg,var(--color-canvas));--_panel-blur:var(--dialog-panel-blur,var(--blur-md));--_panel-border-color:var(--dialog-border-color,var(--color-divider));display:contents}dialog{all:unset;box-sizing:border-box;pointer-events:none;width:100%;max-width:100%;height:100%;max-height:100%;transition:display .2s allow-discrete, overlay .2s allow-discrete;background:0 0;border:none;justify-content:center;align-items:center;margin:0;padding:0;display:flex;position:fixed;inset:0;overflow:hidden}dialog:not([open]),dialog:not([open]) .panel{display:none}dialog[open]{pointer-events:auto}dialog::-ms-backdrop{background:var(--_backdrop-bg);opacity:1;-webkit-backdrop-filter:var(--_backdrop-filter);backdrop-filter:var(--_backdrop-filter);transition:opacity var(--transition-normal), overlay var(--transition-normal) allow-discrete, display var(--transition-normal) allow-discrete}@starting-style{dialog::-ms-backdrop{opacity:0}}dialog::backdrop{background:var(--_backdrop-bg);opacity:1;-webkit-backdrop-filter:var(--_backdrop-filter);backdrop-filter:var(--_backdrop-filter);transition:opacity var(--transition-normal), overlay var(--transition-normal) allow-discrete, display var(--transition-normal) allow-discrete}@starting-style{dialog::backdrop{opacity:0}}dialog.closing::-ms-backdrop{opacity:0;transition:opacity .15s var(--ease-in-out), overlay .15s allow-discrete, display .15s allow-discrete}dialog.closing::backdrop{opacity:0;transition:opacity .15s var(--ease-in-out), overlay .15s allow-discrete, display .15s allow-discrete}.panel{box-sizing:border-box;width:var(--_max-width);max-width:calc(100vw - var(--size-8));max-height:calc(100dvh - var(--size-8));background:var(--_panel-bg);border:var(--border) solid var(--_panel-border-color);border-radius:var(--_radius);box-shadow:var(--dialog-shadow,var(--_elevation));opacity:1;-webkit-backdrop-filter:blur(var(--_panel-blur));backdrop-filter:blur(var(--_panel-blur));transition:opacity .2s var(--ease-spring), transform .2s var(--ease-spring);flex-direction:column;display:flex;position:relative;overflow:hidden;transform:scale(1)translateY(0)}@starting-style{.panel{opacity:0;transform:scale(var(--overlay-enter-scale-dialog)) translateY(4px)}}dialog.closing .panel{opacity:0;transform:scale(var(--overlay-enter-scale-dialog)) translateY(4px);transition:opacity .15s var(--ease-spring), transform .15s var(--ease-spring)}.panel[data-size=sm]{--_max-width:var(--dialog-max-width,22rem)}.panel[data-size=md]{--_max-width:var(--dialog-max-width,32rem)}.panel[data-size=lg]{--_max-width:var(--dialog-max-width,48rem)}.panel[data-size=xl]{--_max-width:var(--dialog-max-width,64rem)}.panel[data-size=full]{width:calc(100vw - var(--size-8));max-width:calc(100vw - var(--size-8));max-height:calc(100dvh - var(--size-8))}.header{gap:var(--size-2);padding:var(--_padding);flex-shrink:0;align-items:center;padding-bottom:0;display:flex}.header[hidden]{display:none}.title{font-size:var(--text-lg);font-weight:var(--font-semibold);line-height:var(--leading-tight);color:var(--color-contrast-900);flex:1}.close{width:var(--size-8);min-width:var(--_touch-target);height:var(--size-8);min-height:var(--_touch-target);color:var(--color-contrast-500);cursor:pointer;border-radius:var(--rounded-md);transition:background var(--transition-fast), color var(--transition-fast);background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;padding:0;display:inline-flex}.close:not(:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){margin-left:auto}.close: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}.close:hover{color:var(--color-contrast-900);background:var(--color-contrast-200)}.close:focus-visible{outline:var(--border-2) solid var(--color-focus);outline-offset:var(--border-2)}.close[hidden]{display:none}.body{padding:var(--_padding);overscroll-behavior:contain;font-size:var(--text-sm);line-height:var(--leading-relaxed);color:var(--color-contrast-700);flex:1;overflow-y:auto}.footer{gap:var(--_gap);padding:var(--_padding);flex-wrap:wrap;flex-shrink:0;justify-content:flex-end;align-items:center;padding-top:0;display:flex}.footer[hidden]{display:none}.header:not([hidden])+.body{padding-top:var(--size-4)}.body+.footer:not([hidden]){padding-top:var(--size-4);border-top:var(--border) solid var(--color-contrast-100)}@media (width<=640px){.panel,.panel[data-size=sm],.panel[data-size=md],.panel[data-size=lg],.panel[data-size=xl]{width:calc(100vw - var(--size-4));max-width:calc(100vw - var(--size-4));max-height:calc(100dvh - var(--size-4))}.header,.body,.footer{padding-inline:var(--size-3)}}}@layer refine.config{:host([backdrop=blur]){--_backdrop-filter:blur(var(--blur-xs))}:host([backdrop=transparent]){--_backdrop-bg:transparent}:host([elevation=none]){--_elevation:var(--shadow-none)}:host([elevation=sm]){--_elevation:var(--shadow-sm)}:host([elevation=md]){--_elevation:var(--shadow-md)}:host([elevation=lg]){--_elevation:var(--shadow-lg)}:host([elevation=xl]){--_elevation:var(--shadow-xl)}:host([elevation="2xl"]){--_elevation:var(--shadow-2xl)}:host([padding=none]){--_padding:var(--size-0)}:host([padding=sm]){--_padding:var(--size-3)}:host([padding=md]){--_padding:var(--size-4)}:host([padding=lg]){--_padding:var(--size-6)}:host([padding=xl]){--_padding:var(--size-8)}}`;exports.default=e;
1
+ var e=`@layer refine.base{:host{--_radius:var(--dialog-radius,var(--rounded-lg));--_padding:var(--dialog-padding,var(--size-4));--_gap:var(--dialog-gap,var(--size-4));--_max-width:var(--dialog-max-width,32rem);--_elevation:var(--shadow-xl);--_backdrop-filter:none;--_backdrop-bg:var(--dialog-backdrop,color-mix(in oklch, var(--color-canvas) 40%, transparent));--_panel-bg:var(--dialog-bg,var(--color-canvas));--_panel-blur:var(--dialog-panel-blur,var(--blur-md));--_panel-border-color:var(--dialog-border-color,var(--color-divider));display:contents}dialog{all:unset;box-sizing:border-box;pointer-events:none;width:100%;max-width:100%;height:100%;max-height:100%;transition:display .2s allow-discrete, overlay .2s allow-discrete;background:0 0;border:none;justify-content:center;align-items:center;margin:0;padding:0;display:flex;position:fixed;inset:0;overflow:hidden}dialog:not([open]),dialog:not([open]) .panel{display:none}dialog[open]{pointer-events:auto}dialog::-ms-backdrop{background:var(--_backdrop-bg);opacity:1;-webkit-backdrop-filter:var(--_backdrop-filter);backdrop-filter:var(--_backdrop-filter);transition:opacity var(--transition-normal), overlay var(--transition-normal) allow-discrete, display var(--transition-normal) allow-discrete}@starting-style{dialog::-ms-backdrop{opacity:0}}dialog::backdrop{background:var(--_backdrop-bg);opacity:1;-webkit-backdrop-filter:var(--_backdrop-filter);backdrop-filter:var(--_backdrop-filter);transition:opacity var(--transition-normal), overlay var(--transition-normal) allow-discrete, display var(--transition-normal) allow-discrete}@starting-style{dialog::backdrop{opacity:0}}dialog.closing::-ms-backdrop{opacity:0;transition:opacity .15s var(--ease-in-out), overlay .15s allow-discrete, display .15s allow-discrete}dialog.closing::backdrop{opacity:0;transition:opacity .15s var(--ease-in-out), overlay .15s allow-discrete, display .15s allow-discrete}.panel{box-sizing:border-box;width:var(--_max-width);max-width:calc(100vw - var(--size-8));max-height:calc(100dvh - var(--size-8));background:var(--_panel-bg);border:var(--border) solid var(--_panel-border-color);border-radius:var(--_radius);box-shadow:var(--dialog-shadow,var(--_elevation));opacity:1;-webkit-backdrop-filter:blur(var(--_panel-blur));backdrop-filter:blur(var(--_panel-blur));transition:opacity .2s var(--ease-spring), transform .2s var(--ease-spring);flex-direction:column;display:flex;position:relative;overflow:hidden;transform:scale(1)translateY(0)}@starting-style{.panel{opacity:0;transform:scale(var(--overlay-enter-scale-dialog)) translateY(4px)}}dialog.closing .panel{opacity:0;transform:scale(var(--overlay-enter-scale-dialog)) translateY(4px);transition:opacity .15s var(--ease-spring), transform .15s var(--ease-spring)}.panel[data-size=sm]{--_max-width:var(--dialog-max-width,22rem)}.panel[data-size=md]{--_max-width:var(--dialog-max-width,32rem)}.panel[data-size=lg]{--_max-width:var(--dialog-max-width,48rem)}.panel[data-size=xl]{--_max-width:var(--dialog-max-width,64rem)}.panel[data-size=full]{width:calc(100vw - var(--size-8));max-width:calc(100vw - var(--size-8));max-height:calc(100dvh - var(--size-8))}.header{gap:var(--size-2);padding:var(--_padding);flex-shrink:0;align-items:center;padding-bottom:0;display:flex}.header[hidden]{display:none}.title{font-size:var(--text-lg);font-weight:var(--font-semibold);line-height:var(--leading-tight);color:var(--color-contrast-900);flex:1}.close{width:var(--size-8);min-width:var(--_touch-target);height:var(--size-8);min-height:var(--_touch-target);color:var(--color-contrast-500);cursor:pointer;border-radius:var(--rounded-md);transition:background var(--transition-fast), color var(--transition-fast);background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;padding:0;display:inline-flex}.close:not(:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){margin-left:auto}.close: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}.close:hover{color:var(--color-contrast-900);background:var(--color-contrast-200)}.close:focus-visible{outline:var(--focus-ring);outline-offset:var(--border-2)}.close[hidden]{display:none}.body{padding:var(--_padding);overscroll-behavior:contain;font-size:var(--text-sm);line-height:var(--leading-relaxed);color:var(--color-contrast-700);flex:1;overflow-y:auto}.footer{gap:var(--_gap);padding:var(--_padding);flex-wrap:wrap;flex-shrink:0;justify-content:flex-end;align-items:center;padding-top:0;display:flex}.footer[hidden]{display:none}.header:not([hidden])+.body{padding-top:var(--size-4)}.body+.footer:not([hidden]){padding-top:var(--size-4);border-top:var(--border) solid var(--color-contrast-100)}@media (width<=640px){.panel,.panel[data-size=sm],.panel[data-size=md],.panel[data-size=lg],.panel[data-size=xl]{width:calc(100vw - var(--size-4));max-width:calc(100vw - var(--size-4));max-height:calc(100dvh - var(--size-4))}.header,.body,.footer{padding-inline:var(--size-3)}}}@layer refine.config{:host([backdrop=blur]){--_backdrop-filter:blur(var(--blur-xs))}:host([backdrop=transparent]){--_backdrop-bg:transparent}:host([elevation=none]){--_elevation:var(--shadow-none)}:host([elevation=sm]){--_elevation:var(--shadow-sm)}:host([elevation=md]){--_elevation:var(--shadow-md)}:host([elevation=lg]){--_elevation:var(--shadow-lg)}:host([elevation=xl]){--_elevation:var(--shadow-xl)}:host([elevation="2xl"]){--_elevation:var(--shadow-2xl)}:host([padding=none]){--_padding:var(--size-0)}:host([padding=sm]){--_padding:var(--size-3)}:host([padding=md]){--_padding:var(--size-4)}:host([padding=lg]){--_padding:var(--size-6)}:host([padding=xl]){--_padding:var(--size-8)}}`;exports.default=e;
2
2
  //# sourceMappingURL=dialog.css.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"dialog.css.cjs","names":[],"sources":["../../../src/overlay/dialog/dialog.css?inline"],"sourcesContent":["@layer refine.base {\n :host {\n --_radius: var(--dialog-radius, var(--rounded-lg));\n --_padding: var(--dialog-padding, var(--size-4));\n --_gap: var(--dialog-gap, var(--size-4));\n --_max-width: var(--dialog-max-width, 32rem);\n --_elevation: var(--shadow-xl);\n --_backdrop-filter: none;\n --_backdrop-bg: var(--dialog-backdrop, color-mix(in oklch, var(--color-canvas) 40%, transparent));\n --_panel-bg: var(--dialog-bg, var(--color-canvas));\n --_panel-blur: var(--dialog-panel-blur, var(--blur-md));\n --_panel-border-color: var(--dialog-border-color, var(--color-divider));\n\n display: contents;\n }\n\n /* =====================\n Native <dialog> resets\n ===================== */\n\n dialog {\n all: unset;\n position: fixed;\n inset: 0;\n box-sizing: border-box;\n display: flex;\n align-items: center;\n justify-content: center;\n width: 100%;\n max-width: 100%;\n height: 100%;\n max-height: 100%;\n padding: 0;\n margin: 0;\n overflow: hidden;\n pointer-events: none;\n background: transparent;\n border: none;\n\n /* display + overlay allow-discrete hold the element in the top layer during exit\n and let @starting-style fire on entry via showModal().\n Use fixed 200ms — --transition-normal resolves to 'none' under reduced-motion\n which makes the entire declaration syntactically invalid if used here. */\n transition:\n display 200ms allow-discrete,\n overlay 200ms allow-discrete;\n }\n\n /* all:unset removes the UA stylesheet's dialog:not([open]){display:none} — restore it */\n dialog:not([open]) {\n display: none;\n }\n\n dialog:not([open]) .panel {\n display: none;\n }\n\n dialog[open] {\n pointer-events: auto;\n }\n\n dialog::backdrop {\n background: var(--_backdrop-bg);\n opacity: 1;\n backdrop-filter: var(--_backdrop-filter);\n transition:\n opacity var(--transition-normal),\n overlay var(--transition-normal) allow-discrete,\n display var(--transition-normal) allow-discrete;\n\n @starting-style {\n opacity: 0;\n }\n }\n\n dialog.closing::backdrop {\n opacity: 0;\n transition:\n opacity 150ms var(--ease-in-out),\n overlay 150ms allow-discrete,\n display 150ms allow-discrete;\n }\n\n /* =====================\n Panel (the visible dialog box)\n ===================== */\n\n .panel {\n position: relative;\n box-sizing: border-box;\n display: flex;\n flex-direction: column;\n width: var(--_max-width);\n max-width: calc(100vw - var(--size-8));\n max-height: calc(100dvh - var(--size-8));\n overflow: hidden;\n background: var(--_panel-bg);\n border: var(--border) solid var(--_panel-border-color);\n border-radius: var(--_radius);\n box-shadow: var(--dialog-shadow, var(--_elevation));\n opacity: 1;\n backdrop-filter: blur(var(--_panel-blur));\n transform: scale(1) translateY(0);\n transition:\n opacity 200ms var(--ease-spring),\n transform 200ms var(--ease-spring);\n\n @starting-style {\n opacity: 0;\n transform: scale(var(--overlay-enter-scale-dialog)) translateY(4px);\n }\n }\n\n dialog.closing .panel {\n opacity: 0;\n transform: scale(var(--overlay-enter-scale-dialog)) translateY(4px);\n transition:\n opacity 150ms var(--ease-spring),\n transform 150ms var(--ease-spring);\n }\n\n /* =====================\n Sizes\n ===================== */\n\n .panel[data-size='sm'] {\n --_max-width: var(--dialog-max-width, 22rem);\n }\n\n .panel[data-size='md'] {\n --_max-width: var(--dialog-max-width, 32rem);\n }\n\n .panel[data-size='lg'] {\n --_max-width: var(--dialog-max-width, 48rem);\n }\n\n .panel[data-size='xl'] {\n --_max-width: var(--dialog-max-width, 64rem);\n }\n\n .panel[data-size='full'] {\n width: calc(100vw - var(--size-8));\n max-width: calc(100vw - var(--size-8));\n max-height: calc(100dvh - var(--size-8));\n }\n\n /* =====================\n Header\n ===================== */\n\n .header {\n display: flex;\n flex-shrink: 0;\n gap: var(--size-2);\n align-items: center;\n padding: var(--_padding);\n padding-bottom: 0;\n }\n\n .header[hidden] {\n display: none;\n }\n\n .title {\n flex: 1;\n font-size: var(--text-lg);\n font-weight: var(--font-semibold);\n line-height: var(--leading-tight);\n color: var(--color-contrast-900);\n }\n\n .close {\n display: inline-flex;\n flex-shrink: 0;\n align-items: center;\n justify-content: center;\n width: var(--size-8);\n min-width: var(--_touch-target);\n height: var(--size-8);\n min-height: var(--_touch-target);\n padding: 0;\n margin-inline-start: auto;\n color: var(--color-contrast-500);\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 .close:hover {\n color: var(--color-contrast-900);\n background: var(--color-contrast-200);\n }\n\n .close:focus-visible {\n outline: var(--border-2) solid var(--color-focus);\n outline-offset: var(--border-2);\n }\n\n .close[hidden] {\n display: none;\n }\n\n /* =====================\n Body\n ===================== */\n\n .body {\n flex: 1;\n padding: var(--_padding);\n overflow-y: auto;\n overscroll-behavior: contain;\n font-size: var(--text-sm);\n line-height: var(--leading-relaxed);\n color: var(--color-contrast-700);\n }\n\n /* =====================\n Footer\n ===================== */\n\n .footer {\n display: flex;\n flex-shrink: 0;\n flex-wrap: wrap;\n gap: var(--_gap);\n align-items: center;\n justify-content: flex-end;\n padding: var(--_padding);\n padding-top: 0;\n }\n\n .footer[hidden] {\n display: none;\n }\n\n /* =====================\n Dividers when header/footer present\n ===================== */\n\n .header:not([hidden]) + .body {\n padding-top: var(--size-4);\n }\n\n .body + .footer:not([hidden]) {\n padding-top: var(--size-4);\n border-top: var(--border) solid var(--color-contrast-100);\n }\n\n @media (width <= 640px) {\n .panel,\n .panel[data-size='sm'],\n .panel[data-size='md'],\n .panel[data-size='lg'],\n .panel[data-size='xl'] {\n width: calc(100vw - var(--size-4));\n max-width: calc(100vw - var(--size-4));\n max-height: calc(100dvh - var(--size-4));\n }\n\n .header,\n .body,\n .footer {\n padding-inline: var(--size-3);\n }\n }\n}\n\n@layer refine.config {\n :host([backdrop='blur']) {\n --_backdrop-filter: blur(var(--blur-xs));\n }\n\n :host([backdrop='transparent']) {\n --_backdrop-bg: transparent;\n }\n\n /* Panel elevation / shadow scale */\n :host([elevation='none']) {\n --_elevation: var(--shadow-none);\n }\n\n :host([elevation='sm']) {\n --_elevation: var(--shadow-sm);\n }\n\n :host([elevation='md']) {\n --_elevation: var(--shadow-md);\n }\n\n :host([elevation='lg']) {\n --_elevation: var(--shadow-lg);\n }\n\n :host([elevation='xl']) {\n --_elevation: var(--shadow-xl);\n }\n\n :host([elevation='2xl']) {\n --_elevation: var(--shadow-2xl);\n }\n\n /* Padding scale */\n :host([padding='none']) {\n --_padding: var(--size-0);\n }\n\n :host([padding='sm']) {\n --_padding: var(--size-3);\n }\n\n :host([padding='md']) {\n --_padding: var(--size-4);\n }\n\n :host([padding='lg']) {\n --_padding: var(--size-6);\n }\n\n :host([padding='xl']) {\n --_padding: var(--size-8);\n }\n}\n"],"mappings":""}
1
+ {"version":3,"file":"dialog.css.cjs","names":[],"sources":["../../../src/overlay/dialog/dialog.css?inline"],"sourcesContent":["@layer refine.base {\n :host {\n --_radius: var(--dialog-radius, var(--rounded-lg));\n --_padding: var(--dialog-padding, var(--size-4));\n --_gap: var(--dialog-gap, var(--size-4));\n --_max-width: var(--dialog-max-width, 32rem);\n --_elevation: var(--shadow-xl);\n --_backdrop-filter: none;\n --_backdrop-bg: var(--dialog-backdrop, color-mix(in oklch, var(--color-canvas) 40%, transparent));\n --_panel-bg: var(--dialog-bg, var(--color-canvas));\n --_panel-blur: var(--dialog-panel-blur, var(--blur-md));\n --_panel-border-color: var(--dialog-border-color, var(--color-divider));\n\n display: contents;\n }\n\n /* =====================\n Native <dialog> resets\n ===================== */\n\n dialog {\n all: unset;\n position: fixed;\n inset: 0;\n box-sizing: border-box;\n display: flex;\n align-items: center;\n justify-content: center;\n width: 100%;\n max-width: 100%;\n height: 100%;\n max-height: 100%;\n padding: 0;\n margin: 0;\n overflow: hidden;\n pointer-events: none;\n background: transparent;\n border: none;\n\n /* display + overlay allow-discrete hold the element in the top layer during exit\n and let @starting-style fire on entry via showModal().\n Use fixed 200ms: --transition-normal resolves to 'none' under reduced-motion\n which makes the entire declaration syntactically invalid if used here. */\n transition:\n display 200ms allow-discrete,\n overlay 200ms allow-discrete;\n }\n\n /* all:unset removes the UA stylesheet's dialog:not([open]){display:none}: restore it */\n dialog:not([open]) {\n display: none;\n }\n\n dialog:not([open]) .panel {\n display: none;\n }\n\n dialog[open] {\n pointer-events: auto;\n }\n\n dialog::backdrop {\n background: var(--_backdrop-bg);\n opacity: 1;\n backdrop-filter: var(--_backdrop-filter);\n transition:\n opacity var(--transition-normal),\n overlay var(--transition-normal) allow-discrete,\n display var(--transition-normal) allow-discrete;\n\n @starting-style {\n opacity: 0;\n }\n }\n\n dialog.closing::backdrop {\n opacity: 0;\n transition:\n opacity 150ms var(--ease-in-out),\n overlay 150ms allow-discrete,\n display 150ms allow-discrete;\n }\n\n /* =====================\n Panel (the visible dialog box)\n ===================== */\n\n .panel {\n position: relative;\n box-sizing: border-box;\n display: flex;\n flex-direction: column;\n width: var(--_max-width);\n max-width: calc(100vw - var(--size-8));\n max-height: calc(100dvh - var(--size-8));\n overflow: hidden;\n background: var(--_panel-bg);\n border: var(--border) solid var(--_panel-border-color);\n border-radius: var(--_radius);\n box-shadow: var(--dialog-shadow, var(--_elevation));\n opacity: 1;\n backdrop-filter: blur(var(--_panel-blur));\n transform: scale(1) translateY(0);\n transition:\n opacity 200ms var(--ease-spring),\n transform 200ms var(--ease-spring);\n\n @starting-style {\n opacity: 0;\n transform: scale(var(--overlay-enter-scale-dialog)) translateY(4px);\n }\n }\n\n dialog.closing .panel {\n opacity: 0;\n transform: scale(var(--overlay-enter-scale-dialog)) translateY(4px);\n transition:\n opacity 150ms var(--ease-spring),\n transform 150ms var(--ease-spring);\n }\n\n /* =====================\n Sizes\n ===================== */\n\n .panel[data-size='sm'] {\n --_max-width: var(--dialog-max-width, 22rem);\n }\n\n .panel[data-size='md'] {\n --_max-width: var(--dialog-max-width, 32rem);\n }\n\n .panel[data-size='lg'] {\n --_max-width: var(--dialog-max-width, 48rem);\n }\n\n .panel[data-size='xl'] {\n --_max-width: var(--dialog-max-width, 64rem);\n }\n\n .panel[data-size='full'] {\n width: calc(100vw - var(--size-8));\n max-width: calc(100vw - var(--size-8));\n max-height: calc(100dvh - var(--size-8));\n }\n\n /* =====================\n Header\n ===================== */\n\n .header {\n display: flex;\n flex-shrink: 0;\n gap: var(--size-2);\n align-items: center;\n padding: var(--_padding);\n padding-bottom: 0;\n }\n\n .header[hidden] {\n display: none;\n }\n\n .title {\n flex: 1;\n font-size: var(--text-lg);\n font-weight: var(--font-semibold);\n line-height: var(--leading-tight);\n color: var(--color-contrast-900);\n }\n\n .close {\n display: inline-flex;\n flex-shrink: 0;\n align-items: center;\n justify-content: center;\n width: var(--size-8);\n min-width: var(--_touch-target);\n height: var(--size-8);\n min-height: var(--_touch-target);\n padding: 0;\n margin-inline-start: auto;\n color: var(--color-contrast-500);\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 .close:hover {\n color: var(--color-contrast-900);\n background: var(--color-contrast-200);\n }\n\n .close:focus-visible {\n outline: var(--focus-ring);\n outline-offset: var(--border-2);\n }\n\n .close[hidden] {\n display: none;\n }\n\n /* =====================\n Body\n ===================== */\n\n .body {\n flex: 1;\n padding: var(--_padding);\n overflow-y: auto;\n overscroll-behavior: contain;\n font-size: var(--text-sm);\n line-height: var(--leading-relaxed);\n color: var(--color-contrast-700);\n }\n\n /* =====================\n Footer\n ===================== */\n\n .footer {\n display: flex;\n flex-shrink: 0;\n flex-wrap: wrap;\n gap: var(--_gap);\n align-items: center;\n justify-content: flex-end;\n padding: var(--_padding);\n padding-top: 0;\n }\n\n .footer[hidden] {\n display: none;\n }\n\n /* =====================\n Dividers when header/footer present\n ===================== */\n\n .header:not([hidden]) + .body {\n padding-top: var(--size-4);\n }\n\n .body + .footer:not([hidden]) {\n padding-top: var(--size-4);\n border-top: var(--border) solid var(--color-contrast-100);\n }\n\n @media (width <= 640px) {\n .panel,\n .panel[data-size='sm'],\n .panel[data-size='md'],\n .panel[data-size='lg'],\n .panel[data-size='xl'] {\n width: calc(100vw - var(--size-4));\n max-width: calc(100vw - var(--size-4));\n max-height: calc(100dvh - var(--size-4));\n }\n\n .header,\n .body,\n .footer {\n padding-inline: var(--size-3);\n }\n }\n}\n\n@layer refine.config {\n :host([backdrop='blur']) {\n --_backdrop-filter: blur(var(--blur-xs));\n }\n\n :host([backdrop='transparent']) {\n --_backdrop-bg: transparent;\n }\n\n /* Panel elevation / shadow scale */\n :host([elevation='none']) {\n --_elevation: var(--shadow-none);\n }\n\n :host([elevation='sm']) {\n --_elevation: var(--shadow-sm);\n }\n\n :host([elevation='md']) {\n --_elevation: var(--shadow-md);\n }\n\n :host([elevation='lg']) {\n --_elevation: var(--shadow-lg);\n }\n\n :host([elevation='xl']) {\n --_elevation: var(--shadow-xl);\n }\n\n :host([elevation='2xl']) {\n --_elevation: var(--shadow-2xl);\n }\n\n /* Padding scale */\n :host([padding='none']) {\n --_padding: var(--size-0);\n }\n\n :host([padding='sm']) {\n --_padding: var(--size-3);\n }\n\n :host([padding='md']) {\n --_padding: var(--size-4);\n }\n\n :host([padding='lg']) {\n --_padding: var(--size-6);\n }\n\n :host([padding='xl']) {\n --_padding: var(--size-8);\n }\n}\n"],"mappings":""}
@@ -1,2 +1,2 @@
1
- var e=`@layer refine.base{:host{--_radius:var(--dialog-radius,var(--rounded-lg));--_padding:var(--dialog-padding,var(--size-4));--_gap:var(--dialog-gap,var(--size-4));--_max-width:var(--dialog-max-width,32rem);--_elevation:var(--shadow-xl);--_backdrop-filter:none;--_backdrop-bg:var(--dialog-backdrop,color-mix(in oklch, var(--color-canvas) 40%, transparent));--_panel-bg:var(--dialog-bg,var(--color-canvas));--_panel-blur:var(--dialog-panel-blur,var(--blur-md));--_panel-border-color:var(--dialog-border-color,var(--color-divider));display:contents}dialog{all:unset;box-sizing:border-box;pointer-events:none;width:100%;max-width:100%;height:100%;max-height:100%;transition:display .2s allow-discrete, overlay .2s allow-discrete;background:0 0;border:none;justify-content:center;align-items:center;margin:0;padding:0;display:flex;position:fixed;inset:0;overflow:hidden}dialog:not([open]),dialog:not([open]) .panel{display:none}dialog[open]{pointer-events:auto}dialog::-ms-backdrop{background:var(--_backdrop-bg);opacity:1;-webkit-backdrop-filter:var(--_backdrop-filter);backdrop-filter:var(--_backdrop-filter);transition:opacity var(--transition-normal), overlay var(--transition-normal) allow-discrete, display var(--transition-normal) allow-discrete}@starting-style{dialog::-ms-backdrop{opacity:0}}dialog::backdrop{background:var(--_backdrop-bg);opacity:1;-webkit-backdrop-filter:var(--_backdrop-filter);backdrop-filter:var(--_backdrop-filter);transition:opacity var(--transition-normal), overlay var(--transition-normal) allow-discrete, display var(--transition-normal) allow-discrete}@starting-style{dialog::backdrop{opacity:0}}dialog.closing::-ms-backdrop{opacity:0;transition:opacity .15s var(--ease-in-out), overlay .15s allow-discrete, display .15s allow-discrete}dialog.closing::backdrop{opacity:0;transition:opacity .15s var(--ease-in-out), overlay .15s allow-discrete, display .15s allow-discrete}.panel{box-sizing:border-box;width:var(--_max-width);max-width:calc(100vw - var(--size-8));max-height:calc(100dvh - var(--size-8));background:var(--_panel-bg);border:var(--border) solid var(--_panel-border-color);border-radius:var(--_radius);box-shadow:var(--dialog-shadow,var(--_elevation));opacity:1;-webkit-backdrop-filter:blur(var(--_panel-blur));backdrop-filter:blur(var(--_panel-blur));transition:opacity .2s var(--ease-spring), transform .2s var(--ease-spring);flex-direction:column;display:flex;position:relative;overflow:hidden;transform:scale(1)translateY(0)}@starting-style{.panel{opacity:0;transform:scale(var(--overlay-enter-scale-dialog)) translateY(4px)}}dialog.closing .panel{opacity:0;transform:scale(var(--overlay-enter-scale-dialog)) translateY(4px);transition:opacity .15s var(--ease-spring), transform .15s var(--ease-spring)}.panel[data-size=sm]{--_max-width:var(--dialog-max-width,22rem)}.panel[data-size=md]{--_max-width:var(--dialog-max-width,32rem)}.panel[data-size=lg]{--_max-width:var(--dialog-max-width,48rem)}.panel[data-size=xl]{--_max-width:var(--dialog-max-width,64rem)}.panel[data-size=full]{width:calc(100vw - var(--size-8));max-width:calc(100vw - var(--size-8));max-height:calc(100dvh - var(--size-8))}.header{gap:var(--size-2);padding:var(--_padding);flex-shrink:0;align-items:center;padding-bottom:0;display:flex}.header[hidden]{display:none}.title{font-size:var(--text-lg);font-weight:var(--font-semibold);line-height:var(--leading-tight);color:var(--color-contrast-900);flex:1}.close{width:var(--size-8);min-width:var(--_touch-target);height:var(--size-8);min-height:var(--_touch-target);color:var(--color-contrast-500);cursor:pointer;border-radius:var(--rounded-md);transition:background var(--transition-fast), color var(--transition-fast);background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;padding:0;display:inline-flex}.close:not(:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){margin-left:auto}.close: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}.close:hover{color:var(--color-contrast-900);background:var(--color-contrast-200)}.close:focus-visible{outline:var(--border-2) solid var(--color-focus);outline-offset:var(--border-2)}.close[hidden]{display:none}.body{padding:var(--_padding);overscroll-behavior:contain;font-size:var(--text-sm);line-height:var(--leading-relaxed);color:var(--color-contrast-700);flex:1;overflow-y:auto}.footer{gap:var(--_gap);padding:var(--_padding);flex-wrap:wrap;flex-shrink:0;justify-content:flex-end;align-items:center;padding-top:0;display:flex}.footer[hidden]{display:none}.header:not([hidden])+.body{padding-top:var(--size-4)}.body+.footer:not([hidden]){padding-top:var(--size-4);border-top:var(--border) solid var(--color-contrast-100)}@media (width<=640px){.panel,.panel[data-size=sm],.panel[data-size=md],.panel[data-size=lg],.panel[data-size=xl]{width:calc(100vw - var(--size-4));max-width:calc(100vw - var(--size-4));max-height:calc(100dvh - var(--size-4))}.header,.body,.footer{padding-inline:var(--size-3)}}}@layer refine.config{:host([backdrop=blur]){--_backdrop-filter:blur(var(--blur-xs))}:host([backdrop=transparent]){--_backdrop-bg:transparent}:host([elevation=none]){--_elevation:var(--shadow-none)}:host([elevation=sm]){--_elevation:var(--shadow-sm)}:host([elevation=md]){--_elevation:var(--shadow-md)}:host([elevation=lg]){--_elevation:var(--shadow-lg)}:host([elevation=xl]){--_elevation:var(--shadow-xl)}:host([elevation="2xl"]){--_elevation:var(--shadow-2xl)}:host([padding=none]){--_padding:var(--size-0)}:host([padding=sm]){--_padding:var(--size-3)}:host([padding=md]){--_padding:var(--size-4)}:host([padding=lg]){--_padding:var(--size-6)}:host([padding=xl]){--_padding:var(--size-8)}}`;export{e as default};
1
+ var e=`@layer refine.base{:host{--_radius:var(--dialog-radius,var(--rounded-lg));--_padding:var(--dialog-padding,var(--size-4));--_gap:var(--dialog-gap,var(--size-4));--_max-width:var(--dialog-max-width,32rem);--_elevation:var(--shadow-xl);--_backdrop-filter:none;--_backdrop-bg:var(--dialog-backdrop,color-mix(in oklch, var(--color-canvas) 40%, transparent));--_panel-bg:var(--dialog-bg,var(--color-canvas));--_panel-blur:var(--dialog-panel-blur,var(--blur-md));--_panel-border-color:var(--dialog-border-color,var(--color-divider));display:contents}dialog{all:unset;box-sizing:border-box;pointer-events:none;width:100%;max-width:100%;height:100%;max-height:100%;transition:display .2s allow-discrete, overlay .2s allow-discrete;background:0 0;border:none;justify-content:center;align-items:center;margin:0;padding:0;display:flex;position:fixed;inset:0;overflow:hidden}dialog:not([open]),dialog:not([open]) .panel{display:none}dialog[open]{pointer-events:auto}dialog::-ms-backdrop{background:var(--_backdrop-bg);opacity:1;-webkit-backdrop-filter:var(--_backdrop-filter);backdrop-filter:var(--_backdrop-filter);transition:opacity var(--transition-normal), overlay var(--transition-normal) allow-discrete, display var(--transition-normal) allow-discrete}@starting-style{dialog::-ms-backdrop{opacity:0}}dialog::backdrop{background:var(--_backdrop-bg);opacity:1;-webkit-backdrop-filter:var(--_backdrop-filter);backdrop-filter:var(--_backdrop-filter);transition:opacity var(--transition-normal), overlay var(--transition-normal) allow-discrete, display var(--transition-normal) allow-discrete}@starting-style{dialog::backdrop{opacity:0}}dialog.closing::-ms-backdrop{opacity:0;transition:opacity .15s var(--ease-in-out), overlay .15s allow-discrete, display .15s allow-discrete}dialog.closing::backdrop{opacity:0;transition:opacity .15s var(--ease-in-out), overlay .15s allow-discrete, display .15s allow-discrete}.panel{box-sizing:border-box;width:var(--_max-width);max-width:calc(100vw - var(--size-8));max-height:calc(100dvh - var(--size-8));background:var(--_panel-bg);border:var(--border) solid var(--_panel-border-color);border-radius:var(--_radius);box-shadow:var(--dialog-shadow,var(--_elevation));opacity:1;-webkit-backdrop-filter:blur(var(--_panel-blur));backdrop-filter:blur(var(--_panel-blur));transition:opacity .2s var(--ease-spring), transform .2s var(--ease-spring);flex-direction:column;display:flex;position:relative;overflow:hidden;transform:scale(1)translateY(0)}@starting-style{.panel{opacity:0;transform:scale(var(--overlay-enter-scale-dialog)) translateY(4px)}}dialog.closing .panel{opacity:0;transform:scale(var(--overlay-enter-scale-dialog)) translateY(4px);transition:opacity .15s var(--ease-spring), transform .15s var(--ease-spring)}.panel[data-size=sm]{--_max-width:var(--dialog-max-width,22rem)}.panel[data-size=md]{--_max-width:var(--dialog-max-width,32rem)}.panel[data-size=lg]{--_max-width:var(--dialog-max-width,48rem)}.panel[data-size=xl]{--_max-width:var(--dialog-max-width,64rem)}.panel[data-size=full]{width:calc(100vw - var(--size-8));max-width:calc(100vw - var(--size-8));max-height:calc(100dvh - var(--size-8))}.header{gap:var(--size-2);padding:var(--_padding);flex-shrink:0;align-items:center;padding-bottom:0;display:flex}.header[hidden]{display:none}.title{font-size:var(--text-lg);font-weight:var(--font-semibold);line-height:var(--leading-tight);color:var(--color-contrast-900);flex:1}.close{width:var(--size-8);min-width:var(--_touch-target);height:var(--size-8);min-height:var(--_touch-target);color:var(--color-contrast-500);cursor:pointer;border-radius:var(--rounded-md);transition:background var(--transition-fast), color var(--transition-fast);background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;padding:0;display:inline-flex}.close:not(:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){margin-left:auto}.close: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}.close:hover{color:var(--color-contrast-900);background:var(--color-contrast-200)}.close:focus-visible{outline:var(--focus-ring);outline-offset:var(--border-2)}.close[hidden]{display:none}.body{padding:var(--_padding);overscroll-behavior:contain;font-size:var(--text-sm);line-height:var(--leading-relaxed);color:var(--color-contrast-700);flex:1;overflow-y:auto}.footer{gap:var(--_gap);padding:var(--_padding);flex-wrap:wrap;flex-shrink:0;justify-content:flex-end;align-items:center;padding-top:0;display:flex}.footer[hidden]{display:none}.header:not([hidden])+.body{padding-top:var(--size-4)}.body+.footer:not([hidden]){padding-top:var(--size-4);border-top:var(--border) solid var(--color-contrast-100)}@media (width<=640px){.panel,.panel[data-size=sm],.panel[data-size=md],.panel[data-size=lg],.panel[data-size=xl]{width:calc(100vw - var(--size-4));max-width:calc(100vw - var(--size-4));max-height:calc(100dvh - var(--size-4))}.header,.body,.footer{padding-inline:var(--size-3)}}}@layer refine.config{:host([backdrop=blur]){--_backdrop-filter:blur(var(--blur-xs))}:host([backdrop=transparent]){--_backdrop-bg:transparent}:host([elevation=none]){--_elevation:var(--shadow-none)}:host([elevation=sm]){--_elevation:var(--shadow-sm)}:host([elevation=md]){--_elevation:var(--shadow-md)}:host([elevation=lg]){--_elevation:var(--shadow-lg)}:host([elevation=xl]){--_elevation:var(--shadow-xl)}:host([elevation="2xl"]){--_elevation:var(--shadow-2xl)}:host([padding=none]){--_padding:var(--size-0)}:host([padding=sm]){--_padding:var(--size-3)}:host([padding=md]){--_padding:var(--size-4)}:host([padding=lg]){--_padding:var(--size-6)}:host([padding=xl]){--_padding:var(--size-8)}}`;export{e as default};
2
2
  //# sourceMappingURL=dialog.css.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"dialog.css.js","names":[],"sources":["../../../src/overlay/dialog/dialog.css?inline"],"sourcesContent":["@layer refine.base {\n :host {\n --_radius: var(--dialog-radius, var(--rounded-lg));\n --_padding: var(--dialog-padding, var(--size-4));\n --_gap: var(--dialog-gap, var(--size-4));\n --_max-width: var(--dialog-max-width, 32rem);\n --_elevation: var(--shadow-xl);\n --_backdrop-filter: none;\n --_backdrop-bg: var(--dialog-backdrop, color-mix(in oklch, var(--color-canvas) 40%, transparent));\n --_panel-bg: var(--dialog-bg, var(--color-canvas));\n --_panel-blur: var(--dialog-panel-blur, var(--blur-md));\n --_panel-border-color: var(--dialog-border-color, var(--color-divider));\n\n display: contents;\n }\n\n /* =====================\n Native <dialog> resets\n ===================== */\n\n dialog {\n all: unset;\n position: fixed;\n inset: 0;\n box-sizing: border-box;\n display: flex;\n align-items: center;\n justify-content: center;\n width: 100%;\n max-width: 100%;\n height: 100%;\n max-height: 100%;\n padding: 0;\n margin: 0;\n overflow: hidden;\n pointer-events: none;\n background: transparent;\n border: none;\n\n /* display + overlay allow-discrete hold the element in the top layer during exit\n and let @starting-style fire on entry via showModal().\n Use fixed 200ms — --transition-normal resolves to 'none' under reduced-motion\n which makes the entire declaration syntactically invalid if used here. */\n transition:\n display 200ms allow-discrete,\n overlay 200ms allow-discrete;\n }\n\n /* all:unset removes the UA stylesheet's dialog:not([open]){display:none} — restore it */\n dialog:not([open]) {\n display: none;\n }\n\n dialog:not([open]) .panel {\n display: none;\n }\n\n dialog[open] {\n pointer-events: auto;\n }\n\n dialog::backdrop {\n background: var(--_backdrop-bg);\n opacity: 1;\n backdrop-filter: var(--_backdrop-filter);\n transition:\n opacity var(--transition-normal),\n overlay var(--transition-normal) allow-discrete,\n display var(--transition-normal) allow-discrete;\n\n @starting-style {\n opacity: 0;\n }\n }\n\n dialog.closing::backdrop {\n opacity: 0;\n transition:\n opacity 150ms var(--ease-in-out),\n overlay 150ms allow-discrete,\n display 150ms allow-discrete;\n }\n\n /* =====================\n Panel (the visible dialog box)\n ===================== */\n\n .panel {\n position: relative;\n box-sizing: border-box;\n display: flex;\n flex-direction: column;\n width: var(--_max-width);\n max-width: calc(100vw - var(--size-8));\n max-height: calc(100dvh - var(--size-8));\n overflow: hidden;\n background: var(--_panel-bg);\n border: var(--border) solid var(--_panel-border-color);\n border-radius: var(--_radius);\n box-shadow: var(--dialog-shadow, var(--_elevation));\n opacity: 1;\n backdrop-filter: blur(var(--_panel-blur));\n transform: scale(1) translateY(0);\n transition:\n opacity 200ms var(--ease-spring),\n transform 200ms var(--ease-spring);\n\n @starting-style {\n opacity: 0;\n transform: scale(var(--overlay-enter-scale-dialog)) translateY(4px);\n }\n }\n\n dialog.closing .panel {\n opacity: 0;\n transform: scale(var(--overlay-enter-scale-dialog)) translateY(4px);\n transition:\n opacity 150ms var(--ease-spring),\n transform 150ms var(--ease-spring);\n }\n\n /* =====================\n Sizes\n ===================== */\n\n .panel[data-size='sm'] {\n --_max-width: var(--dialog-max-width, 22rem);\n }\n\n .panel[data-size='md'] {\n --_max-width: var(--dialog-max-width, 32rem);\n }\n\n .panel[data-size='lg'] {\n --_max-width: var(--dialog-max-width, 48rem);\n }\n\n .panel[data-size='xl'] {\n --_max-width: var(--dialog-max-width, 64rem);\n }\n\n .panel[data-size='full'] {\n width: calc(100vw - var(--size-8));\n max-width: calc(100vw - var(--size-8));\n max-height: calc(100dvh - var(--size-8));\n }\n\n /* =====================\n Header\n ===================== */\n\n .header {\n display: flex;\n flex-shrink: 0;\n gap: var(--size-2);\n align-items: center;\n padding: var(--_padding);\n padding-bottom: 0;\n }\n\n .header[hidden] {\n display: none;\n }\n\n .title {\n flex: 1;\n font-size: var(--text-lg);\n font-weight: var(--font-semibold);\n line-height: var(--leading-tight);\n color: var(--color-contrast-900);\n }\n\n .close {\n display: inline-flex;\n flex-shrink: 0;\n align-items: center;\n justify-content: center;\n width: var(--size-8);\n min-width: var(--_touch-target);\n height: var(--size-8);\n min-height: var(--_touch-target);\n padding: 0;\n margin-inline-start: auto;\n color: var(--color-contrast-500);\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 .close:hover {\n color: var(--color-contrast-900);\n background: var(--color-contrast-200);\n }\n\n .close:focus-visible {\n outline: var(--border-2) solid var(--color-focus);\n outline-offset: var(--border-2);\n }\n\n .close[hidden] {\n display: none;\n }\n\n /* =====================\n Body\n ===================== */\n\n .body {\n flex: 1;\n padding: var(--_padding);\n overflow-y: auto;\n overscroll-behavior: contain;\n font-size: var(--text-sm);\n line-height: var(--leading-relaxed);\n color: var(--color-contrast-700);\n }\n\n /* =====================\n Footer\n ===================== */\n\n .footer {\n display: flex;\n flex-shrink: 0;\n flex-wrap: wrap;\n gap: var(--_gap);\n align-items: center;\n justify-content: flex-end;\n padding: var(--_padding);\n padding-top: 0;\n }\n\n .footer[hidden] {\n display: none;\n }\n\n /* =====================\n Dividers when header/footer present\n ===================== */\n\n .header:not([hidden]) + .body {\n padding-top: var(--size-4);\n }\n\n .body + .footer:not([hidden]) {\n padding-top: var(--size-4);\n border-top: var(--border) solid var(--color-contrast-100);\n }\n\n @media (width <= 640px) {\n .panel,\n .panel[data-size='sm'],\n .panel[data-size='md'],\n .panel[data-size='lg'],\n .panel[data-size='xl'] {\n width: calc(100vw - var(--size-4));\n max-width: calc(100vw - var(--size-4));\n max-height: calc(100dvh - var(--size-4));\n }\n\n .header,\n .body,\n .footer {\n padding-inline: var(--size-3);\n }\n }\n}\n\n@layer refine.config {\n :host([backdrop='blur']) {\n --_backdrop-filter: blur(var(--blur-xs));\n }\n\n :host([backdrop='transparent']) {\n --_backdrop-bg: transparent;\n }\n\n /* Panel elevation / shadow scale */\n :host([elevation='none']) {\n --_elevation: var(--shadow-none);\n }\n\n :host([elevation='sm']) {\n --_elevation: var(--shadow-sm);\n }\n\n :host([elevation='md']) {\n --_elevation: var(--shadow-md);\n }\n\n :host([elevation='lg']) {\n --_elevation: var(--shadow-lg);\n }\n\n :host([elevation='xl']) {\n --_elevation: var(--shadow-xl);\n }\n\n :host([elevation='2xl']) {\n --_elevation: var(--shadow-2xl);\n }\n\n /* Padding scale */\n :host([padding='none']) {\n --_padding: var(--size-0);\n }\n\n :host([padding='sm']) {\n --_padding: var(--size-3);\n }\n\n :host([padding='md']) {\n --_padding: var(--size-4);\n }\n\n :host([padding='lg']) {\n --_padding: var(--size-6);\n }\n\n :host([padding='xl']) {\n --_padding: var(--size-8);\n }\n}\n"],"mappings":""}
1
+ {"version":3,"file":"dialog.css.js","names":[],"sources":["../../../src/overlay/dialog/dialog.css?inline"],"sourcesContent":["@layer refine.base {\n :host {\n --_radius: var(--dialog-radius, var(--rounded-lg));\n --_padding: var(--dialog-padding, var(--size-4));\n --_gap: var(--dialog-gap, var(--size-4));\n --_max-width: var(--dialog-max-width, 32rem);\n --_elevation: var(--shadow-xl);\n --_backdrop-filter: none;\n --_backdrop-bg: var(--dialog-backdrop, color-mix(in oklch, var(--color-canvas) 40%, transparent));\n --_panel-bg: var(--dialog-bg, var(--color-canvas));\n --_panel-blur: var(--dialog-panel-blur, var(--blur-md));\n --_panel-border-color: var(--dialog-border-color, var(--color-divider));\n\n display: contents;\n }\n\n /* =====================\n Native <dialog> resets\n ===================== */\n\n dialog {\n all: unset;\n position: fixed;\n inset: 0;\n box-sizing: border-box;\n display: flex;\n align-items: center;\n justify-content: center;\n width: 100%;\n max-width: 100%;\n height: 100%;\n max-height: 100%;\n padding: 0;\n margin: 0;\n overflow: hidden;\n pointer-events: none;\n background: transparent;\n border: none;\n\n /* display + overlay allow-discrete hold the element in the top layer during exit\n and let @starting-style fire on entry via showModal().\n Use fixed 200ms: --transition-normal resolves to 'none' under reduced-motion\n which makes the entire declaration syntactically invalid if used here. */\n transition:\n display 200ms allow-discrete,\n overlay 200ms allow-discrete;\n }\n\n /* all:unset removes the UA stylesheet's dialog:not([open]){display:none}: restore it */\n dialog:not([open]) {\n display: none;\n }\n\n dialog:not([open]) .panel {\n display: none;\n }\n\n dialog[open] {\n pointer-events: auto;\n }\n\n dialog::backdrop {\n background: var(--_backdrop-bg);\n opacity: 1;\n backdrop-filter: var(--_backdrop-filter);\n transition:\n opacity var(--transition-normal),\n overlay var(--transition-normal) allow-discrete,\n display var(--transition-normal) allow-discrete;\n\n @starting-style {\n opacity: 0;\n }\n }\n\n dialog.closing::backdrop {\n opacity: 0;\n transition:\n opacity 150ms var(--ease-in-out),\n overlay 150ms allow-discrete,\n display 150ms allow-discrete;\n }\n\n /* =====================\n Panel (the visible dialog box)\n ===================== */\n\n .panel {\n position: relative;\n box-sizing: border-box;\n display: flex;\n flex-direction: column;\n width: var(--_max-width);\n max-width: calc(100vw - var(--size-8));\n max-height: calc(100dvh - var(--size-8));\n overflow: hidden;\n background: var(--_panel-bg);\n border: var(--border) solid var(--_panel-border-color);\n border-radius: var(--_radius);\n box-shadow: var(--dialog-shadow, var(--_elevation));\n opacity: 1;\n backdrop-filter: blur(var(--_panel-blur));\n transform: scale(1) translateY(0);\n transition:\n opacity 200ms var(--ease-spring),\n transform 200ms var(--ease-spring);\n\n @starting-style {\n opacity: 0;\n transform: scale(var(--overlay-enter-scale-dialog)) translateY(4px);\n }\n }\n\n dialog.closing .panel {\n opacity: 0;\n transform: scale(var(--overlay-enter-scale-dialog)) translateY(4px);\n transition:\n opacity 150ms var(--ease-spring),\n transform 150ms var(--ease-spring);\n }\n\n /* =====================\n Sizes\n ===================== */\n\n .panel[data-size='sm'] {\n --_max-width: var(--dialog-max-width, 22rem);\n }\n\n .panel[data-size='md'] {\n --_max-width: var(--dialog-max-width, 32rem);\n }\n\n .panel[data-size='lg'] {\n --_max-width: var(--dialog-max-width, 48rem);\n }\n\n .panel[data-size='xl'] {\n --_max-width: var(--dialog-max-width, 64rem);\n }\n\n .panel[data-size='full'] {\n width: calc(100vw - var(--size-8));\n max-width: calc(100vw - var(--size-8));\n max-height: calc(100dvh - var(--size-8));\n }\n\n /* =====================\n Header\n ===================== */\n\n .header {\n display: flex;\n flex-shrink: 0;\n gap: var(--size-2);\n align-items: center;\n padding: var(--_padding);\n padding-bottom: 0;\n }\n\n .header[hidden] {\n display: none;\n }\n\n .title {\n flex: 1;\n font-size: var(--text-lg);\n font-weight: var(--font-semibold);\n line-height: var(--leading-tight);\n color: var(--color-contrast-900);\n }\n\n .close {\n display: inline-flex;\n flex-shrink: 0;\n align-items: center;\n justify-content: center;\n width: var(--size-8);\n min-width: var(--_touch-target);\n height: var(--size-8);\n min-height: var(--_touch-target);\n padding: 0;\n margin-inline-start: auto;\n color: var(--color-contrast-500);\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 .close:hover {\n color: var(--color-contrast-900);\n background: var(--color-contrast-200);\n }\n\n .close:focus-visible {\n outline: var(--focus-ring);\n outline-offset: var(--border-2);\n }\n\n .close[hidden] {\n display: none;\n }\n\n /* =====================\n Body\n ===================== */\n\n .body {\n flex: 1;\n padding: var(--_padding);\n overflow-y: auto;\n overscroll-behavior: contain;\n font-size: var(--text-sm);\n line-height: var(--leading-relaxed);\n color: var(--color-contrast-700);\n }\n\n /* =====================\n Footer\n ===================== */\n\n .footer {\n display: flex;\n flex-shrink: 0;\n flex-wrap: wrap;\n gap: var(--_gap);\n align-items: center;\n justify-content: flex-end;\n padding: var(--_padding);\n padding-top: 0;\n }\n\n .footer[hidden] {\n display: none;\n }\n\n /* =====================\n Dividers when header/footer present\n ===================== */\n\n .header:not([hidden]) + .body {\n padding-top: var(--size-4);\n }\n\n .body + .footer:not([hidden]) {\n padding-top: var(--size-4);\n border-top: var(--border) solid var(--color-contrast-100);\n }\n\n @media (width <= 640px) {\n .panel,\n .panel[data-size='sm'],\n .panel[data-size='md'],\n .panel[data-size='lg'],\n .panel[data-size='xl'] {\n width: calc(100vw - var(--size-4));\n max-width: calc(100vw - var(--size-4));\n max-height: calc(100dvh - var(--size-4));\n }\n\n .header,\n .body,\n .footer {\n padding-inline: var(--size-3);\n }\n }\n}\n\n@layer refine.config {\n :host([backdrop='blur']) {\n --_backdrop-filter: blur(var(--blur-xs));\n }\n\n :host([backdrop='transparent']) {\n --_backdrop-bg: transparent;\n }\n\n /* Panel elevation / shadow scale */\n :host([elevation='none']) {\n --_elevation: var(--shadow-none);\n }\n\n :host([elevation='sm']) {\n --_elevation: var(--shadow-sm);\n }\n\n :host([elevation='md']) {\n --_elevation: var(--shadow-md);\n }\n\n :host([elevation='lg']) {\n --_elevation: var(--shadow-lg);\n }\n\n :host([elevation='xl']) {\n --_elevation: var(--shadow-xl);\n }\n\n :host([elevation='2xl']) {\n --_elevation: var(--shadow-2xl);\n }\n\n /* Padding scale */\n :host([padding='none']) {\n --_padding: var(--size-0);\n }\n\n :host([padding='sm']) {\n --_padding: var(--size-3);\n }\n\n :host([padding='md']) {\n --_padding: var(--size-4);\n }\n\n :host([padding='lg']) {\n --_padding: var(--size-6);\n }\n\n :host([padding='xl']) {\n --_padding: var(--size-8);\n }\n}\n"],"mappings":""}
@@ -9,13 +9,13 @@ export type OreDialogEvents = {
9
9
  'open-change': OverlayOpenChangeDetail;
10
10
  };
11
11
  export type OreDialogProps = {
12
- /** Backdrop style — 'blur' (default): dark overlay + blur; 'opaque': dark overlay only; 'transparent': no overlay */
12
+ /** Backdrop style: 'blur' (default): dark overlay + blur; 'opaque': dark overlay only; 'transparent': no overlay */
13
13
  backdrop?: DialogBackdrop;
14
14
  /** Initial uncontrolled open state. Ignored when `open` is set. */
15
15
  'default-open'?: boolean;
16
16
  /** Show a close (×) button in the header */
17
17
  dismissible?: boolean;
18
- /** Panel shadow elevation — defaults to 'xl' */
18
+ /** Panel shadow elevation: defaults to 'xl' */
19
19
  elevation?: DialogElevation;
20
20
  /**
21
21
  * CSS selector for the element inside the dialog that should receive focus when the dialog opens.
@@ -1 +1 @@
1
- {"version":3,"file":"dialog.d.ts","sourceRoot":"","sources":["../../../src/overlay/dialog/dialog.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,uBAAuB,EAAqB,MAAM,YAAY,CAAC;AAE7E,OAAO,KAAK,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAK5D,OAAO,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAEnD,KAAK,UAAU,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,MAAM,CAAC;AACrD,KAAK,cAAc,GAAG,QAAQ,GAAG,MAAM,GAAG,aAAa,CAAC;AACxD,KAAK,eAAe,GAAG,MAAM,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,KAAK,CAAC;AAElE,kCAAkC;AAElC,MAAM,MAAM,eAAe,GAAG;IAC5B,aAAa,EAAE,uBAAuB,CAAC;CACxC,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG;IAC3B,qHAAqH;IACrH,QAAQ,CAAC,EAAE,cAAc,CAAC;IAC1B,mEAAmE;IACnE,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,4CAA4C;IAC5C,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,gDAAgD;IAChD,SAAS,CAAC,EAAE,eAAe,CAAC;IAC5B;;;;OAIG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,gFAAgF;IAChF,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,4CAA4C;IAC5C,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,4BAA4B;IAC5B,OAAO,CAAC,EAAE,WAAW,CAAC;IACtB,iEAAiE;IACjE,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB;;;OAGG;IACH,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,oBAAoB;IACpB,OAAO,CAAC,EAAE,WAAW,GAAG,EAAE,CAAC;IAC3B,kBAAkB;IAClB,IAAI,CAAC,EAAE,UAAU,CAAC;CACnB,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8DG;AAEH,eAAO,MAAM,UAAU,EAAG,YAAqB,CAAC"}
1
+ {"version":3,"file":"dialog.d.ts","sourceRoot":"","sources":["../../../src/overlay/dialog/dialog.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,uBAAuB,EAAqB,MAAM,YAAY,CAAC;AAE7E,OAAO,KAAK,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAK5D,OAAO,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAEnD,KAAK,UAAU,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,MAAM,CAAC;AACrD,KAAK,cAAc,GAAG,QAAQ,GAAG,MAAM,GAAG,aAAa,CAAC;AACxD,KAAK,eAAe,GAAG,MAAM,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,KAAK,CAAC;AAElE,kCAAkC;AAElC,MAAM,MAAM,eAAe,GAAG;IAC5B,aAAa,EAAE,uBAAuB,CAAC;CACxC,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG;IAC3B,oHAAoH;IACpH,QAAQ,CAAC,EAAE,cAAc,CAAC;IAC1B,mEAAmE;IACnE,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,4CAA4C;IAC5C,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,+CAA+C;IAC/C,SAAS,CAAC,EAAE,eAAe,CAAC;IAC5B;;;;OAIG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,gFAAgF;IAChF,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,4CAA4C;IAC5C,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,4BAA4B;IAC5B,OAAO,CAAC,EAAE,WAAW,CAAC;IACtB,iEAAiE;IACjE,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB;;;OAGG;IACH,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,oBAAoB;IACpB,OAAO,CAAC,EAAE,WAAW,GAAG,EAAE,CAAC;IAC3B,kBAAkB;IAClB,IAAI,CAAC,EAAE,UAAU,CAAC;CACnB,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8DG;AAEH,eAAO,MAAM,UAAU,EAAG,YAAqB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"drawer.css.cjs","names":[],"sources":["../../../src/overlay/drawer/drawer.css?inline"],"sourcesContent":["@layer refine.base {\n :host {\n --_backdrop-bg: var(--drawer-backdrop-bg, color-mix(in oklch, var(--color-canvas) 40%, transparent));\n --_backdrop-filter: none;\n --_panel-bg: var(--drawer-bg, var(--color-canvas));\n --_panel-blur: var(--drawer-panel-blur, var(--blur-md));\n --_panel-shadow: var(--drawer-shadow, var(--shadow-xl));\n --_panel-border-color: var(--color-divider);\n --_panel-bleed: var(--size-8);\n --_drag-handle-inset: calc(var(--size-1) * -1);\n\n display: contents;\n }\n\n dialog {\n all: unset;\n position: fixed;\n inset: 0;\n box-sizing: border-box;\n display: flex;\n width: 100%;\n max-width: 100%;\n height: 100%;\n max-height: 100%;\n pointer-events: none;\n transition:\n display 200ms allow-discrete,\n overlay 200ms allow-discrete;\n }\n\n dialog:not([open]) {\n display: none;\n }\n\n dialog:not([open]) .panel {\n display: none;\n }\n\n dialog[open] {\n display: flex;\n pointer-events: auto;\n }\n\n dialog::backdrop {\n background: var(--_backdrop-bg);\n opacity: 1;\n backdrop-filter: var(--_backdrop-filter);\n transition:\n display 200ms allow-discrete,\n overlay 200ms allow-discrete,\n opacity var(--transition-normal),\n backdrop-filter var(--transition-normal);\n\n @starting-style {\n opacity: 0;\n backdrop-filter: blur(0);\n }\n }\n\n dialog.closing::backdrop {\n opacity: 0;\n backdrop-filter: blur(0);\n transition:\n opacity 300ms var(--ease-in-out),\n backdrop-filter 300ms var(--ease-in-out),\n overlay 300ms allow-discrete,\n display 300ms allow-discrete;\n }\n\n .panel {\n position: absolute;\n box-sizing: border-box;\n display: flex;\n flex-direction: column;\n overflow: visible;\n background: var(--_panel-bg);\n border: var(--border) solid var(--_panel-border-color);\n box-shadow: var(--_panel-shadow);\n opacity: 1;\n backdrop-filter: blur(var(--_panel-blur));\n transform: translate3d(0, 0, 0);\n transition:\n opacity var(--transition-normal),\n transform 300ms var(--ease-move);\n\n @starting-style {\n opacity: 0;\n transform: var(--_panel-exit-transform, translate3d(0, 0, 0));\n }\n }\n\n dialog.closing .panel {\n opacity: 0;\n transform: var(--_panel-exit-transform, translate3d(0, 0, 0));\n }\n\n /* left */\n :host([placement='left']) .panel {\n --_panel-exit-transform: translateX(calc(-100% - var(--_panel-bleed)));\n\n inset-block: 0;\n inset-inline-start: 0;\n width: calc(var(--drawer-size, 20rem) + var(--_panel-bleed));\n max-width: calc(100dvw + var(--_panel-bleed));\n padding-inline-start: var(--_panel-bleed);\n margin-inline-start: calc(var(--_panel-bleed) * -1);\n border-block: none;\n border-inline-start: none;\n }\n\n /* right (default) */\n :host(:not([placement])) .panel,\n :host([placement='right']) .panel {\n --_panel-exit-transform: translateX(calc(100% + var(--_panel-bleed)));\n\n inset-block: 0;\n inset-inline-end: 0;\n width: calc(var(--drawer-size, 20rem) + var(--_panel-bleed));\n max-width: calc(100dvw + var(--_panel-bleed));\n padding-inline-end: var(--_panel-bleed);\n margin-inline-end: calc(var(--_panel-bleed) * -1);\n border-block: none;\n border-inline-end: none;\n }\n\n /* top */\n :host([placement='top']) .panel {\n --_panel-exit-transform: translateY(calc(-100% - var(--_panel-bleed)));\n\n inset-block-start: 0;\n inset-inline: 0;\n height: calc(var(--drawer-size, 16rem) + var(--_panel-bleed));\n max-height: calc(100dvh + var(--_panel-bleed));\n padding-block-start: var(--_panel-bleed);\n margin-block-start: calc(var(--_panel-bleed) * -1);\n border-block-start: none;\n border-inline: none;\n }\n\n /* bottom */\n :host([placement='bottom']) .panel {\n --_panel-exit-transform: translateY(calc(100% + var(--_panel-bleed)));\n\n inset-block-end: 0;\n inset-inline: 0;\n height: calc(var(--drawer-size, 16rem) + var(--_panel-bleed));\n max-height: calc(100dvh + var(--_panel-bleed));\n padding-block-end: var(--_panel-bleed);\n margin-block-end: calc(var(--_panel-bleed) * -1);\n border-block-end: none;\n border-inline: none;\n }\n\n /* RTL overrides */\n :host(:dir(rtl)[placement='left']) .panel {\n --_panel-exit-transform: translateX(calc(100% + var(--_panel-bleed)));\n }\n\n :host(:dir(rtl)[placement='right']) .panel,\n :host(:dir(rtl):not([placement])) .panel {\n --_panel-exit-transform: translateX(calc(-100% - var(--_panel-bleed)));\n }\n\n /* Size utilities */\n :host([size='sm']) {\n --drawer-size: 14rem;\n }\n\n :host([size='lg']) {\n --drawer-size: 32rem;\n }\n\n :host([size='full']) {\n --drawer-size: 100%;\n }\n\n :host([size='full']) .panel {\n width: calc(100% + var(--_panel-bleed));\n max-width: none;\n height: calc(100% + var(--_panel-bleed));\n max-height: none;\n border: none;\n }\n\n /* Header / Body / Footer */\n .header {\n display: flex;\n flex-shrink: 0;\n gap: var(--size-2);\n align-items: center;\n padding: var(--size-4);\n border-bottom: var(--border) solid var(--color-contrast-200);\n }\n\n .header-title {\n flex: 1;\n min-width: 0;\n overflow: hidden;\n text-overflow: ellipsis;\n font-size: var(--text-lg);\n font-weight: var(--font-semibold);\n white-space: nowrap;\n }\n\n .body {\n flex: 1;\n padding: var(--size-4);\n overflow-y: auto;\n }\n\n .footer {\n display: flex;\n flex-shrink: 0;\n gap: var(--size-2);\n justify-content: flex-end;\n padding: var(--size-4);\n border-top: var(--border) solid var(--color-contrast-200);\n }\n\n .header[hidden],\n .footer[hidden],\n .close-btn[hidden] {\n display: none;\n }\n\n .close-btn {\n all: unset;\n box-sizing: border-box;\n display: inline-flex;\n flex-shrink: 0;\n align-items: center;\n justify-content: center;\n width: var(--size-8);\n height: var(--size-8);\n margin-inline-start: auto;\n color: var(--color-contrast-500);\n cursor: pointer;\n border-radius: var(--rounded-sm);\n transition:\n background var(--transition-fast),\n color var(--transition-fast);\n }\n\n .close-btn:hover {\n color: var(--color-contrast-800);\n background: var(--color-contrast-200);\n }\n\n .close-btn:active {\n opacity: 0.8;\n }\n\n /* Drag handle for mobile/touch swipe-to-close */\n .drag-handle {\n position: absolute;\n z-index: 10;\n pointer-events: all;\n touch-action: none;\n cursor: grab;\n }\n\n .drag-handle:active {\n cursor: grabbing;\n }\n\n /* Horizontal drawers (left/right) — drag handle on the opposite edge */\n :host([placement='left']) .drag-handle,\n :host(:not([placement])) .drag-handle,\n :host([placement='right']) .drag-handle {\n top: 50%;\n width: var(--_panel-bleed);\n height: 3.5rem;\n translate: 0 -50%;\n }\n\n /* Left drawer — handle on the right (opposite side) */\n :host([placement='left']) .drag-handle {\n right: calc(var(--_panel-bleed) * -1);\n }\n\n /* Right drawer (default) — handle on the left (opposite side) */\n :host([placement='right']) .drag-handle,\n :host(:not([placement])) .drag-handle {\n left: calc(var(--_panel-bleed) * -1);\n }\n\n /* Vertical drawers (top/bottom) — drag handle on the opposite edge */\n :host([placement='top']) .drag-handle,\n :host([placement='bottom']) .drag-handle {\n left: 50%;\n width: 3.5rem;\n height: var(--_panel-bleed);\n translate: -50% 0;\n }\n\n /* Top drawer — handle at bottom (opposite side) */\n :host([placement='top']) .drag-handle {\n bottom: calc(var(--_panel-bleed) * -1);\n }\n\n /* Bottom drawer — handle at top (opposite side) */\n :host([placement='bottom']) .drag-handle {\n top: calc(var(--_panel-bleed) * -1);\n }\n\n /* Inset drag-handle placement keeps the handle fully inside the panel. */\n :host([drag-handle-placement='inset'][placement='left']) .drag-handle {\n right: var(--_drag-handle-inset);\n }\n\n :host([drag-handle-placement='inset'][placement='right']) .drag-handle,\n :host([drag-handle-placement='inset']:not([placement])) .drag-handle {\n left: var(--_drag-handle-inset);\n }\n\n :host([drag-handle-placement='inset'][placement='top']) .drag-handle {\n bottom: var(--_drag-handle-inset);\n }\n\n :host([drag-handle-placement='inset'][placement='bottom']) .drag-handle {\n top: var(--_drag-handle-inset);\n }\n\n /* Visual indicator — subtle bar in the center */\n .drag-handle::before {\n position: absolute;\n inset: 50%;\n content: '';\n background: var(--color-contrast-400);\n border-radius: var(--rounded-full);\n opacity: 0.6;\n translate: -50% -50%;\n transition:\n background var(--transition-fast),\n opacity var(--transition-fast),\n transform var(--transition-fast);\n }\n\n :host([placement='left']) .drag-handle::before,\n :host([placement='right']) .drag-handle::before,\n :host(:not([placement])) .drag-handle::before {\n width: 5px;\n height: 2.5rem;\n }\n\n :host([placement='top']) .drag-handle::before,\n :host([placement='bottom']) .drag-handle::before {\n width: 2.5rem;\n height: 5px;\n }\n\n .drag-handle:hover::before {\n background: var(--color-contrast-600);\n opacity: 0.9;\n transform: scale(1.15);\n }\n\n .close-btn:focus-visible {\n outline: var(--focus-ring);\n }\n\n @media (width <= 640px) {\n :host([placement='left']) .panel,\n :host(:not([placement])) .panel,\n :host([placement='right']) .panel {\n width: calc(min(var(--drawer-size, 20rem), calc(100vw - var(--size-2))) + var(--_panel-bleed));\n max-width: calc(100vw - var(--size-2) + var(--_panel-bleed));\n }\n\n :host([placement='top']) .panel,\n :host([placement='bottom']) .panel {\n height: calc(min(var(--drawer-size, 16rem), calc(100dvh - var(--size-2))) + var(--_panel-bleed));\n max-height: calc(100dvh - var(--size-2) + var(--_panel-bleed));\n }\n\n .header,\n .body,\n .footer {\n padding: var(--size-3);\n }\n }\n}\n\n@layer refine.config {\n :host([backdrop='blur']) {\n --_backdrop-filter: blur(var(--blur-xs));\n }\n\n :host([backdrop='transparent']) {\n --_backdrop-bg: transparent;\n }\n}\n"],"mappings":""}
1
+ {"version":3,"file":"drawer.css.cjs","names":[],"sources":["../../../src/overlay/drawer/drawer.css?inline"],"sourcesContent":["@layer refine.base {\n :host {\n --_backdrop-bg: var(--drawer-backdrop-bg, color-mix(in oklch, var(--color-canvas) 40%, transparent));\n --_backdrop-filter: none;\n --_panel-bg: var(--drawer-bg, var(--color-canvas));\n --_panel-blur: var(--drawer-panel-blur, var(--blur-md));\n --_panel-shadow: var(--drawer-shadow, var(--shadow-xl));\n --_panel-border-color: var(--color-divider);\n --_panel-bleed: var(--size-8);\n --_drag-handle-inset: calc(var(--size-1) * -1);\n\n display: contents;\n }\n\n dialog {\n all: unset;\n position: fixed;\n inset: 0;\n box-sizing: border-box;\n display: flex;\n width: 100%;\n max-width: 100%;\n height: 100%;\n max-height: 100%;\n pointer-events: none;\n transition:\n display 200ms allow-discrete,\n overlay 200ms allow-discrete;\n }\n\n dialog:not([open]) {\n display: none;\n }\n\n dialog:not([open]) .panel {\n display: none;\n }\n\n dialog[open] {\n display: flex;\n pointer-events: auto;\n }\n\n dialog::backdrop {\n background: var(--_backdrop-bg);\n opacity: 1;\n backdrop-filter: var(--_backdrop-filter);\n transition:\n display 200ms allow-discrete,\n overlay 200ms allow-discrete,\n opacity var(--transition-normal),\n backdrop-filter var(--transition-normal);\n\n @starting-style {\n opacity: 0;\n backdrop-filter: blur(0);\n }\n }\n\n dialog.closing::backdrop {\n opacity: 0;\n backdrop-filter: blur(0);\n transition:\n opacity 300ms var(--ease-in-out),\n backdrop-filter 300ms var(--ease-in-out),\n overlay 300ms allow-discrete,\n display 300ms allow-discrete;\n }\n\n .panel {\n position: absolute;\n box-sizing: border-box;\n display: flex;\n flex-direction: column;\n overflow: visible;\n background: var(--_panel-bg);\n border: var(--border) solid var(--_panel-border-color);\n box-shadow: var(--_panel-shadow);\n opacity: 1;\n backdrop-filter: blur(var(--_panel-blur));\n transform: translate3d(0, 0, 0);\n transition:\n opacity var(--transition-normal),\n transform 300ms var(--ease-move);\n\n @starting-style {\n opacity: 0;\n transform: var(--_panel-exit-transform, translate3d(0, 0, 0));\n }\n }\n\n dialog.closing .panel {\n opacity: 0;\n transform: var(--_panel-exit-transform, translate3d(0, 0, 0));\n }\n\n /* left */\n :host([placement='left']) .panel {\n --_panel-exit-transform: translateX(calc(-100% - var(--_panel-bleed)));\n\n inset-block: 0;\n inset-inline-start: 0;\n width: calc(var(--drawer-size, 20rem) + var(--_panel-bleed));\n max-width: calc(100dvw + var(--_panel-bleed));\n padding-inline-start: var(--_panel-bleed);\n margin-inline-start: calc(var(--_panel-bleed) * -1);\n border-block: none;\n border-inline-start: none;\n }\n\n /* right (default) */\n :host(:not([placement])) .panel,\n :host([placement='right']) .panel {\n --_panel-exit-transform: translateX(calc(100% + var(--_panel-bleed)));\n\n inset-block: 0;\n inset-inline-end: 0;\n width: calc(var(--drawer-size, 20rem) + var(--_panel-bleed));\n max-width: calc(100dvw + var(--_panel-bleed));\n padding-inline-end: var(--_panel-bleed);\n margin-inline-end: calc(var(--_panel-bleed) * -1);\n border-block: none;\n border-inline-end: none;\n }\n\n /* top */\n :host([placement='top']) .panel {\n --_panel-exit-transform: translateY(calc(-100% - var(--_panel-bleed)));\n\n inset-block-start: 0;\n inset-inline: 0;\n height: calc(var(--drawer-size, 16rem) + var(--_panel-bleed));\n max-height: calc(100dvh + var(--_panel-bleed));\n padding-block-start: var(--_panel-bleed);\n margin-block-start: calc(var(--_panel-bleed) * -1);\n border-block-start: none;\n border-inline: none;\n }\n\n /* bottom */\n :host([placement='bottom']) .panel {\n --_panel-exit-transform: translateY(calc(100% + var(--_panel-bleed)));\n\n inset-block-end: 0;\n inset-inline: 0;\n height: calc(var(--drawer-size, 16rem) + var(--_panel-bleed));\n max-height: calc(100dvh + var(--_panel-bleed));\n padding-block-end: var(--_panel-bleed);\n margin-block-end: calc(var(--_panel-bleed) * -1);\n border-block-end: none;\n border-inline: none;\n }\n\n /* RTL overrides */\n :host(:dir(rtl)[placement='left']) .panel {\n --_panel-exit-transform: translateX(calc(100% + var(--_panel-bleed)));\n }\n\n :host(:dir(rtl)[placement='right']) .panel,\n :host(:dir(rtl):not([placement])) .panel {\n --_panel-exit-transform: translateX(calc(-100% - var(--_panel-bleed)));\n }\n\n /* Size utilities */\n :host([size='sm']) {\n --drawer-size: 14rem;\n }\n\n :host([size='lg']) {\n --drawer-size: 32rem;\n }\n\n :host([size='full']) {\n --drawer-size: 100%;\n }\n\n :host([size='full']) .panel {\n width: calc(100% + var(--_panel-bleed));\n max-width: none;\n height: calc(100% + var(--_panel-bleed));\n max-height: none;\n border: none;\n }\n\n /* Header / Body / Footer */\n .header {\n display: flex;\n flex-shrink: 0;\n gap: var(--size-2);\n align-items: center;\n padding: var(--size-4);\n border-bottom: var(--border) solid var(--color-contrast-200);\n }\n\n .header-title {\n flex: 1;\n min-width: 0;\n overflow: hidden;\n text-overflow: ellipsis;\n font-size: var(--text-lg);\n font-weight: var(--font-semibold);\n white-space: nowrap;\n }\n\n .body {\n flex: 1;\n padding: var(--size-4);\n overflow-y: auto;\n }\n\n .footer {\n display: flex;\n flex-shrink: 0;\n gap: var(--size-2);\n justify-content: flex-end;\n padding: var(--size-4);\n border-top: var(--border) solid var(--color-contrast-200);\n }\n\n .header[hidden],\n .footer[hidden],\n .close-btn[hidden] {\n display: none;\n }\n\n .close-btn {\n all: unset;\n box-sizing: border-box;\n display: inline-flex;\n flex-shrink: 0;\n align-items: center;\n justify-content: center;\n width: var(--size-8);\n height: var(--size-8);\n margin-inline-start: auto;\n color: var(--color-contrast-500);\n cursor: pointer;\n border-radius: var(--rounded-sm);\n transition:\n background var(--transition-fast),\n color var(--transition-fast);\n }\n\n .close-btn:hover {\n color: var(--color-contrast-800);\n background: var(--color-contrast-200);\n }\n\n .close-btn:active {\n opacity: 0.8;\n }\n\n /* Drag handle for mobile/touch swipe-to-close */\n .drag-handle {\n position: absolute;\n z-index: 10;\n pointer-events: all;\n touch-action: none;\n cursor: grab;\n }\n\n .drag-handle:active {\n cursor: grabbing;\n }\n\n /* Horizontal drawers (left/right): drag handle on the opposite edge */\n :host([placement='left']) .drag-handle,\n :host(:not([placement])) .drag-handle,\n :host([placement='right']) .drag-handle {\n top: 50%;\n width: var(--_panel-bleed);\n height: 3.5rem;\n translate: 0 -50%;\n }\n\n /* Left drawer: handle on the right (opposite side) */\n :host([placement='left']) .drag-handle {\n right: calc(var(--_panel-bleed) * -1);\n }\n\n /* Right drawer (default): handle on the left (opposite side) */\n :host([placement='right']) .drag-handle,\n :host(:not([placement])) .drag-handle {\n left: calc(var(--_panel-bleed) * -1);\n }\n\n /* Vertical drawers (top/bottom): drag handle on the opposite edge */\n :host([placement='top']) .drag-handle,\n :host([placement='bottom']) .drag-handle {\n left: 50%;\n width: 3.5rem;\n height: var(--_panel-bleed);\n translate: -50% 0;\n }\n\n /* Top drawer: handle at bottom (opposite side) */\n :host([placement='top']) .drag-handle {\n bottom: calc(var(--_panel-bleed) * -1);\n }\n\n /* Bottom drawer: handle at top (opposite side) */\n :host([placement='bottom']) .drag-handle {\n top: calc(var(--_panel-bleed) * -1);\n }\n\n /* Inset drag-handle placement keeps the handle fully inside the panel. */\n :host([drag-handle-placement='inset'][placement='left']) .drag-handle {\n right: var(--_drag-handle-inset);\n }\n\n :host([drag-handle-placement='inset'][placement='right']) .drag-handle,\n :host([drag-handle-placement='inset']:not([placement])) .drag-handle {\n left: var(--_drag-handle-inset);\n }\n\n :host([drag-handle-placement='inset'][placement='top']) .drag-handle {\n bottom: var(--_drag-handle-inset);\n }\n\n :host([drag-handle-placement='inset'][placement='bottom']) .drag-handle {\n top: var(--_drag-handle-inset);\n }\n\n /* Visual indicator: subtle bar in the center */\n .drag-handle::before {\n position: absolute;\n inset: 50%;\n content: '';\n background: var(--color-contrast-400);\n border-radius: var(--rounded-full);\n opacity: 0.6;\n translate: -50% -50%;\n transition:\n background var(--transition-fast),\n opacity var(--transition-fast),\n transform var(--transition-fast);\n }\n\n :host([placement='left']) .drag-handle::before,\n :host([placement='right']) .drag-handle::before,\n :host(:not([placement])) .drag-handle::before {\n width: 5px;\n height: 2.5rem;\n }\n\n :host([placement='top']) .drag-handle::before,\n :host([placement='bottom']) .drag-handle::before {\n width: 2.5rem;\n height: 5px;\n }\n\n .drag-handle:hover::before {\n background: var(--color-contrast-600);\n opacity: 0.9;\n transform: scale(1.15);\n }\n\n .close-btn:focus-visible {\n outline: var(--focus-ring);\n }\n\n @media (width <= 640px) {\n :host([placement='left']) .panel,\n :host(:not([placement])) .panel,\n :host([placement='right']) .panel {\n width: calc(min(var(--drawer-size, 20rem), calc(100vw - var(--size-2))) + var(--_panel-bleed));\n max-width: calc(100vw - var(--size-2) + var(--_panel-bleed));\n }\n\n :host([placement='top']) .panel,\n :host([placement='bottom']) .panel {\n height: calc(min(var(--drawer-size, 16rem), calc(100dvh - var(--size-2))) + var(--_panel-bleed));\n max-height: calc(100dvh - var(--size-2) + var(--_panel-bleed));\n }\n\n .header,\n .body,\n .footer {\n padding: var(--size-3);\n }\n }\n}\n\n@layer refine.config {\n :host([backdrop='blur']) {\n --_backdrop-filter: blur(var(--blur-xs));\n }\n\n :host([backdrop='transparent']) {\n --_backdrop-bg: transparent;\n }\n}\n"],"mappings":""}