@revolist/ui 4.0.4-rc → 4.0.4

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 (401) hide show
  1. package/MIGRATION.md +36 -0
  2. package/OWNERSHIP.md +36 -36
  3. package/README.md +65 -392
  4. package/_button.scss +6 -2
  5. package/_chunks/arrow-up-Cw8hW9vp.js +4 -0
  6. package/_chunks/calculator-CDWOuAcp.js +4 -0
  7. package/_chunks/{calendar-xpZ0v3xf.js → calendar-BQYQLu8Q.js} +23 -23
  8. package/_chunks/{cell-visuals-E-2oEKHg.js → cell-visuals-r6DOOhGh.js} +7 -7
  9. package/_chunks/chart-frame-GprenwEg.js +145 -0
  10. package/_chunks/{chevron-right-sxHQMSkq.js → check-BwI7iCAm.js} +2 -2
  11. package/_chunks/{chevron-left-D0nc4Z5S.js → chevron-right-CM3ljziP.js} +2 -2
  12. package/_chunks/choice-chips-C5OxD0GV.js +126 -0
  13. package/_chunks/{color-palette-D8vyPfld.js → color-palette-7siNch__.js} +22 -24
  14. package/_chunks/color-picker-Cfc9eqZb.js +143 -0
  15. package/_chunks/{component-C_T2VN5u.js → component-C3k_8uIq.js} +290 -275
  16. package/_chunks/{component-metadata-BMOOmqx5.js → component-metadata-DlVkpW3h.js} +1 -9
  17. package/_chunks/configurator-actions-vRnI54mO.js +155 -0
  18. package/_chunks/configurator-field-icon-CmcM_sPs.js +53 -0
  19. package/_chunks/control-BRfF5DWQ.js +118 -0
  20. package/_chunks/{controller-hRBm_Lfz.js → controller-BbiQuRt-.js} +5 -5
  21. package/_chunks/controls-B3EgM_DS.js +650 -0
  22. package/_chunks/{date-control-DrVFX13g.js → date-control-87dcA5br.js} +5 -5
  23. package/_chunks/{date-time-qIhp5vaX.js → date-time-CfiFYodx.js} +332 -293
  24. package/_chunks/{delete-button-CW9vjLnk.js → delete-button-jneO24wa.js} +1 -1
  25. package/_chunks/dialog.parts-NqEEVc9P.js +131 -0
  26. package/_chunks/{duration-CL68Em0o.js → duration-BGZ_qJ99.js} +10 -10
  27. package/_chunks/{editor-commit-Bq3wSgvr.js → editor-commit-Dyo-FMgD.js} +1 -1
  28. package/_chunks/editor-popup-NNP9Fh9U.js +82 -0
  29. package/_chunks/field-configurator-DPulsY3l.js +288 -0
  30. package/_chunks/{field-context-D57PnBbH.js → field-context-C4_WrO2z.js} +1 -1
  31. package/_chunks/{framework-mount--RTLIqE-.js → framework-mount-D4I8HpVp.js} +2 -2
  32. package/_chunks/icon-toolbar-BAAdEvr9.js +134 -0
  33. package/_chunks/{icons-Ci5mADVc.js → icons-B4qN13Yj.js} +1 -1
  34. package/_chunks/{iso-B0YHBK7m.js → iso-CJQl2kmq.js} +1 -1
  35. package/_chunks/magnifying-glass-CvrTDSkB.js +4 -0
  36. package/_chunks/minus-BOAR3A1C.js +4 -0
  37. package/_chunks/{model-mPO2tG2f.js → model-CFrBgRHm.js} +3 -3
  38. package/_chunks/mount-C8CnIW9k.js +267 -0
  39. package/_chunks/{native.view-ByyZ1CT5.js → native-CJm3eq3-.js} +1 -1
  40. package/_chunks/native-control-um1L1wgZ.js +649 -0
  41. package/_chunks/{number-input-BKwA5FnM.js → number-input-CKiA4d1N.js} +9 -9
  42. package/_chunks/{picker-h1P5RUgp.js → picker-igNshTRC.js} +5 -5
  43. package/_chunks/plus-CbGRkIGl.js +4 -0
  44. package/_chunks/{popup-CT2uD3go.js → popup-DECYM9FI.js} +116 -105
  45. package/_chunks/{rating-choice-DZgmaic0.js → rating-choice-CepVfGUq.js} +2 -2
  46. package/_chunks/{render-m5eMMwFR.js → render-bTk3curw.js} +2 -2
  47. package/_chunks/{reorder-list-CSlqAGHw.js → reorder-list-B4w3aARt.js} +2 -2
  48. package/_chunks/request-trail-B1zVRPEf.js +762 -0
  49. package/_chunks/rich-text-Ci4d6dHn.js +842 -0
  50. package/_chunks/rotate-left-BF6G883o.js +4 -0
  51. package/_chunks/selection-list-tooltips-m00U3L6z.js +42 -0
  52. package/_chunks/title-tooltip-ncldbUwS.js +11 -0
  53. package/_chunks/tooltip-h-Z8yFBY.js +54 -0
  54. package/_chunks/tooltip-owner-BYho-vJl.js +19 -0
  55. package/_chunks/tooltip-session-CBtRMBPr.js +110 -0
  56. package/_chunks/tooltip-text-BN5WdGHn.js +12 -0
  57. package/_chunks/top-layer-popup-CKJ7VJOF.js +59 -0
  58. package/_dialog.scss +57 -22
  59. package/_form.scss +71 -21
  60. package/_legend.scss +25 -7
  61. package/_variables.scss +34 -32
  62. package/_view-switcher.scss +6 -0
  63. package/activity-message.d.ts +1 -1
  64. package/activity-message.js +1 -1
  65. package/ai/_chat.scss +35 -3
  66. package/ai/_style.scss +76 -16
  67. package/ai/chat.d.ts +3 -1
  68. package/ai/components.d.ts +16 -3
  69. package/ai/index.d.ts +1 -0
  70. package/ai/index.js +3 -3
  71. package/ai/mount.d.ts +30 -6
  72. package/ai/request-trail.d.ts +9 -3
  73. package/ai/results/_style.scss +83 -0
  74. package/ai/results/index.d.ts +11 -0
  75. package/ai/results/metrics.d.ts +5 -0
  76. package/ai/results/table.d.ts +5 -0
  77. package/ai/results/text.d.ts +5 -0
  78. package/ai/results/types.d.ts +29 -0
  79. package/ai/transcript.d.ts +2 -0
  80. package/ai/translations.d.ts +1 -1
  81. package/angular/angular.d.ts +1 -1
  82. package/angular/angular.js +13 -7
  83. package/assignee/assignee.scss +28 -6
  84. package/assignee/index.js +6 -6
  85. package/avatar/avatar.style.scss +23 -6
  86. package/avatar/index.d.ts +25 -2
  87. package/avatar/index.js +33 -32
  88. package/badge.d.ts +1 -1
  89. package/badge.js +1 -1
  90. package/badge.view.d.ts +8 -0
  91. package/brush-range/_brush-range.scss +55 -49
  92. package/brush-range/component.d.ts +1 -3
  93. package/brush-range/component.js +28 -28
  94. package/buttons/delete-button.js +1 -1
  95. package/buttons/delete-button.style.scss +6 -2
  96. package/buttons/remove-button.d.ts +1 -1
  97. package/buttons/remove-button.js +2 -2
  98. package/buttons/remove-button.style.scss +1 -1
  99. package/buttons/svg-button.d.ts +1 -1
  100. package/buttons/svg-button.js +17 -17
  101. package/calendar/_calendar.scss +21 -25
  102. package/calendar/calendar.js +1 -1
  103. package/calendar/day.js +2 -2
  104. package/calendar/header.js +2 -3
  105. package/calendar/index.js +3 -3
  106. package/calendar/model.js +1 -1
  107. package/calendar/month-grid.js +2 -2
  108. package/calendar/translations.js +1 -1
  109. package/calendar/year-grid.js +2 -2
  110. package/cell-input.js +1 -1
  111. package/cell-input.scss +3 -7
  112. package/cell-visuals/badge.style.scss +6 -3
  113. package/cell-visuals/bar-chart.style.scss +2 -1
  114. package/cell-visuals/column-type.style.css +12 -0
  115. package/cell-visuals/index.js +1 -1
  116. package/cell-visuals/progress-line-value.renderer.style.scss +4 -2
  117. package/cell-visuals/progress-line.style.scss +1 -4
  118. package/cell-visuals/sparkline.style.scss +2 -1
  119. package/cell-visuals/timeline.style.css +4 -2
  120. package/checkbox/checkbox.scss +6 -24
  121. package/checkbox/index.js +1 -1
  122. package/choice-chips/index.d.ts +3 -1
  123. package/choice-chips/index.js +1 -1
  124. package/color-palette/built-in-palettes.js +1 -1
  125. package/color-palette/chart-palettes.js +1 -1
  126. package/color-palette/color-palette.js +1 -1
  127. package/color-palette/color-palette.style.scss +88 -25
  128. package/color-palette/color-picker.constants.js +1 -1
  129. package/color-palette/color-picker.js +2 -2
  130. package/color-palette/color-picker.style.scss +23 -10
  131. package/color-palette/common-palettes.d.ts +1 -1
  132. package/color-palette/common-palettes.js +2 -2
  133. package/color-palette/gantt-palettes.js +1 -1
  134. package/color-palette/native.d.ts +15 -2
  135. package/color-palette/palette.js +1 -1
  136. package/color-palette/pivot-palettes.js +1 -1
  137. package/color-palette/platform-palettes.js +1 -1
  138. package/color-palette/pro-palettes.js +1 -1
  139. package/color-palette/scheduler-palettes.js +1 -1
  140. package/component-catalog.d.ts +9 -7
  141. package/configurator-actions.d.ts +67 -0
  142. package/configurator-actions.js +1 -0
  143. package/configurator-aggregation-list.d.ts +14 -0
  144. package/configurator-aggregation-list.js +63 -0
  145. package/configurator-drop-zone.d.ts +39 -0
  146. package/configurator-drop-zone.js +66 -0
  147. package/configurator-field-icon.d.ts +10 -0
  148. package/configurator-field-icon.js +1 -0
  149. package/configurator-focus.d.ts +4 -0
  150. package/configurator-focus.js +39 -0
  151. package/configurator-sections.d.ts +42 -0
  152. package/configurator-sections.js +71 -0
  153. package/control-attributes.js +1 -1
  154. package/control-presentation.d.ts +8 -2
  155. package/control-presentation.js +25 -20
  156. package/controls.d.ts +12 -2
  157. package/controls.js +4 -3
  158. package/core/anchored-popover.js +1 -1
  159. package/core/control-id.js +1 -1
  160. package/core/editor-popup-position.d.ts +6 -2
  161. package/core/editor-popup.d.ts +4 -0
  162. package/core/editor-popup.js +1 -1
  163. package/core/motion.js +1 -1
  164. package/core/popover-controller.d.ts +35 -0
  165. package/core/popover-controller.js +102 -0
  166. package/core/popup-ownership.d.ts +2 -0
  167. package/core/selection-list-tooltips.d.ts +2 -0
  168. package/core/title-tooltip.d.ts +2 -0
  169. package/core/tooltip-session.d.ts +29 -0
  170. package/core/tooltip-surface.d.ts +13 -0
  171. package/core/tooltip-text.d.ts +6 -0
  172. package/core/tooltip.d.ts +35 -0
  173. package/core/top-layer-popup.d.ts +4 -0
  174. package/core/top-layer-popup.js +1 -23
  175. package/date-time/attach.d.ts +1 -1
  176. package/date-time/date-control.d.ts +1 -1
  177. package/date-time/field.d.ts +4 -2
  178. package/date-time/index.js +1 -1
  179. package/date-time/style.scss +239 -36
  180. package/date-time/time-selection.d.ts +3 -1
  181. package/date-time/types.d.ts +5 -1
  182. package/dialog/dialog-action-footer.d.ts +17 -2
  183. package/dialog/dialog.dom.d.ts +15 -2
  184. package/dialog/dialog.dom.js +9 -9
  185. package/dialog/dialog.drag.js +1 -1
  186. package/dialog/dialog.parts.d.ts +1 -1
  187. package/dialog/dialog.parts.js +1 -1
  188. package/dialog/dialog.preact.js +1 -1
  189. package/distribution-chart/_distribution-chart.scss +113 -77
  190. package/distribution-chart/area-chart.js +2 -2
  191. package/distribution-chart/bar-chart.js +2 -2
  192. package/distribution-chart/chart-frame.d.ts +1 -1
  193. package/distribution-chart/index.d.ts +1 -1
  194. package/distribution-chart/index.js +1 -1
  195. package/distribution-chart/line-chart.js +2 -2
  196. package/dropdown/content.js +1 -1
  197. package/dropdown/control.js +1 -1
  198. package/dropdown/dropdown.service.js +1 -1
  199. package/dropdown/dropdown.types.d.ts +1 -1
  200. package/dropdown/editor-dropdown.style.scss +19 -9
  201. package/dropdown/index.js +2 -2
  202. package/dropdown/lookup-field.d.ts +5 -0
  203. package/dropdown/lookup-field.js +4 -3
  204. package/dropdown/popup.d.ts +2 -2
  205. package/dropdown/popup.js +1 -1
  206. package/duration/index.js +1 -1
  207. package/editor-actions.js +2 -2
  208. package/editor-layout/index.d.ts +4 -4
  209. package/editor-layout/index.js +40 -35
  210. package/editor-layout/style.scss +82 -18
  211. package/favicon.svg +9 -0
  212. package/field-configurator.d.ts +39 -1
  213. package/field-configurator.js +4 -170
  214. package/field-expansion.d.ts +9 -0
  215. package/field-reorder.hook.js +1 -1
  216. package/field-reorder.js +1 -1
  217. package/filter/filters/slider/_single-slider.scss +57 -38
  218. package/filter/filters/slider/_slider.scss +41 -33
  219. package/filter/filters/slider/component.js +1 -1
  220. package/filter/filters/slider/control.js +3 -1
  221. package/filter/filters/slider/inputs.js +1 -1
  222. package/filter/filters/slider/logic.js +1 -1
  223. package/filter/filters/slider/preact.js +1 -1
  224. package/filter/filters/slider/runtime.js +50 -23
  225. package/filter/filters/slider/single.js +2 -2
  226. package/filter-badge.js +2 -2
  227. package/filter-controls.d.ts +0 -1
  228. package/filter-controls.js +6 -7
  229. package/form-controls/index.d.ts +10 -2
  230. package/form-controls/index.js +7 -7
  231. package/form-controls/presentation.d.ts +1 -1
  232. package/form-controls/presentation.js +13 -13
  233. package/formatting/index.d.ts +1 -1
  234. package/formatting/index.js +26 -25
  235. package/formatting/styles.scss +14 -57
  236. package/framework.js +228 -225
  237. package/history-controls.js +27 -1
  238. package/html-controls.js +1 -1
  239. package/icon-toolbar.d.ts +62 -0
  240. package/icon-toolbar.js +1 -0
  241. package/icons/icon.d.ts +1 -1
  242. package/icons/icon.js +1 -1
  243. package/legend.d.ts +1 -1
  244. package/legend.js +1 -1
  245. package/masked-input/index.js +4 -4
  246. package/native-control.d.ts +1 -2
  247. package/native-control.js +1 -1
  248. package/native-controls.d.ts +54 -2
  249. package/native-styles.css +1 -1
  250. package/native-styles.scss +6 -2
  251. package/native.d.ts +3 -3
  252. package/native.js +48 -45
  253. package/number-input/index.d.ts +1 -1
  254. package/number-input/index.js +1 -1
  255. package/package.json +84 -1
  256. package/pagination.js +12 -12
  257. package/pdf-viewer/controller.js +1 -1
  258. package/pdf-viewer/header.d.ts +1 -1
  259. package/pdf-viewer/index.d.ts +2 -2
  260. package/pdf-viewer/index.js +3 -3
  261. package/pdf-viewer/search-bar.d.ts +1 -1
  262. package/pdf-viewer/status.d.ts +1 -1
  263. package/pdf-viewer/style.scss +203 -42
  264. package/pickers.d.ts +5 -1
  265. package/preact-mount.js +1 -1
  266. package/preact.d.ts +13 -10
  267. package/preact.js +109 -64
  268. package/progress/_bar.scss +9 -3
  269. package/progress/_circular.scss +2 -1
  270. package/progress/bar.js +1 -1
  271. package/progress/circular.js +1 -1
  272. package/progress/range.js +1 -1
  273. package/rating-choice.js +1 -1
  274. package/react-adapter.d.ts +4 -2
  275. package/react-control.d.ts +2 -0
  276. package/react-control.js +3 -3
  277. package/react.d.ts +7 -8
  278. package/react.js +69 -68
  279. package/reorder-list.d.ts +1 -1
  280. package/reorder-list.js +1 -1
  281. package/reorder-list.scss +59 -17
  282. package/resource-picker/resource-picker-avatar.js +1 -1
  283. package/resource-picker/resource-picker-option.js +1 -1
  284. package/resource-picker/resource-picker-popup.js +2 -2
  285. package/resource-picker/resource-picker.js +75 -73
  286. package/resource-picker/resource-picker.scss +62 -34
  287. package/resource-picker/resource-picker.utils.js +1 -1
  288. package/rich-text/engine.d.ts +1 -0
  289. package/rich-text/format-html.d.ts +2 -0
  290. package/rich-text/index.d.ts +4 -0
  291. package/rich-text/index.js +1 -1
  292. package/rich-text/model.d.ts +2 -0
  293. package/rich-text/style.scss +293 -44
  294. package/rich-text/syntax.d.ts +5 -0
  295. package/rich-text/toolbar.d.ts +1 -1
  296. package/rich-text/translations.d.ts +2 -0
  297. package/robots.txt +4 -0
  298. package/search-input/index.js +2 -2
  299. package/search-input/native.d.ts +21 -2
  300. package/segmented-switch/index.js +1 -1
  301. package/select.d.ts +3 -1
  302. package/select.js +1 -1
  303. package/selection-list.d.ts +1 -0
  304. package/selection-list.js +3 -1
  305. package/status-feedback/badge.js +2 -2
  306. package/status-feedback/exit-snapshot.js +5 -5
  307. package/status-feedback/header.js +2 -2
  308. package/status-feedback/icons.js +1 -1
  309. package/status-feedback/index.js +1 -1
  310. package/status-feedback/item.js +2 -2
  311. package/status-feedback/motion.js +1 -1
  312. package/status-feedback/placement.js +1 -1
  313. package/status-feedback/popover.js +5 -5
  314. package/status-feedback/render.js +1 -1
  315. package/status-feedback/status-feedback.scss +124 -35
  316. package/styles/_activity-message.scss +24 -7
  317. package/styles/_alert.scss +78 -17
  318. package/styles/_cell-editor-frame.scss +11 -0
  319. package/styles/_compositions.scss +400 -80
  320. package/styles/_control.scss +30 -8
  321. package/styles/_disclosure.scss +15 -5
  322. package/styles/_editor-counter.scss +16 -6
  323. package/styles/_editor-slider.scss +8 -4
  324. package/styles/_field-configurator.scss +321 -23
  325. package/styles/_fields-grid.scss +49 -0
  326. package/styles/_filter-controls.scss +10 -2
  327. package/styles/_icon-action.scss +48 -15
  328. package/styles/_loading.scss +12 -3
  329. package/styles/_motion.scss +32 -9
  330. package/styles/_palette.scss +0 -24
  331. package/styles/_primitives.scss +369 -110
  332. package/styles/_theme.scss +130 -86
  333. package/styles/_thresholds.scss +28 -25
  334. package/styles/_time-grid.scss +8 -3
  335. package/styles/_tokens.scss +6 -1
  336. package/styles/color-roles.js +1 -1
  337. package/styles/configurator-actions.scss +241 -0
  338. package/styles/pagination.css +213 -0
  339. package/styles/{legacy-rating.css → rating.css} +8 -3
  340. package/styles.css +1 -1
  341. package/styles.scss +3 -5
  342. package/surfaces.d.ts +38 -2
  343. package/surfaces.js +37 -134
  344. package/svelte/UiComponent.svelte +44 -11
  345. package/svelte-control.js +1 -1
  346. package/svelte.d.ts +1 -1
  347. package/svelte.js +5 -5
  348. package/switch/index.js +16 -15
  349. package/time-grid.d.ts +0 -1
  350. package/time-grid.js +39 -38
  351. package/timeline-track/_style.scss +96 -24
  352. package/timeline-track/index.js +3 -3
  353. package/timeline-track/model.js +1 -1
  354. package/ui.css +1 -1
  355. package/view-switcher.d.ts +23 -0
  356. package/vue-badge.js +1 -1
  357. package/vue-control.js +1 -1
  358. package/vue-segmented-switch.js +1 -1
  359. package/vue.d.ts +29 -32
  360. package/vue.js +118 -123
  361. package/_chunks/chart-frame-Cmc7xU1i.js +0 -130
  362. package/_chunks/choice-chips-CHQTUdLs.js +0 -110
  363. package/_chunks/color-picker-CudqPYZo.js +0 -138
  364. package/_chunks/control-AHKXD5Eu.js +0 -93
  365. package/_chunks/control-tooltip-uscKfAnV.js +0 -100
  366. package/_chunks/controls-DsNi8V8I.js +0 -630
  367. package/_chunks/dialog.parts-CKGkC5zP.js +0 -134
  368. package/_chunks/editor-popup-WDdtVDNA.js +0 -81
  369. package/_chunks/history-controls-B3u3INEK.js +0 -27
  370. package/_chunks/mount-DQ1cpppK.js +0 -257
  371. package/_chunks/native-control-C_yok8_-.js +0 -605
  372. package/_chunks/request-trail-DSlFix6i.js +0 -618
  373. package/_chunks/rich-text-CH7gIqOS.js +0 -636
  374. package/_shared/data-query/binding.d.ts +0 -30
  375. package/_shared/data-query/blocks.d.ts +0 -30
  376. package/_shared/data-query/commands.d.ts +0 -47
  377. package/_shared/data-query/contracts.d.ts +0 -106
  378. package/_shared/data-query/cursor-reader.d.ts +0 -25
  379. package/_shared/data-query/direct-binding.d.ts +0 -3
  380. package/_shared/data-query/index.d.ts +0 -23
  381. package/_shared/data-query/infinite-binding.d.ts +0 -18
  382. package/_shared/data-query/keys.d.ts +0 -9
  383. package/_shared/data-query/limiter.d.ts +0 -12
  384. package/_shared/data-query/load-options.d.ts +0 -25
  385. package/_shared/data-query/materialize.d.ts +0 -2
  386. package/_shared/data-query/policy.d.ts +0 -14
  387. package/_shared/data-query/provider-queries.d.ts +0 -22
  388. package/_shared/data-query/reader.d.ts +0 -23
  389. package/_shared/data-query/remote-load.d.ts +0 -7
  390. package/_shared/data-query/source.d.ts +0 -40
  391. package/avatar/index.view.d.ts +0 -25
  392. package/color-palette/native.view.d.ts +0 -15
  393. package/control-presentation.view.d.ts +0 -8
  394. package/dialog/dialog-action-footer.view.d.ts +0 -20
  395. package/dialog/dialog.dom.view.d.ts +0 -15
  396. package/form-controls/index.view.d.ts +0 -10
  397. package/formatting/control-tooltip.d.ts +0 -27
  398. package/native-controls.view.d.ts +0 -54
  399. package/search-input/native.view.d.ts +0 -21
  400. package/styles/legacy-pagination.css +0 -112
  401. package/surfaces.view.d.ts +0 -63
@@ -1,6 +1,9 @@
1
1
  @use '../styles/motion';
2
2
  @keyframes rv-status-item-exit {
3
- to { opacity: 0; transform: translateY(4px); }
3
+ to {
4
+ opacity: 0;
5
+ transform: translateY(4px);
6
+ }
4
7
  }
5
8
  .rv-status-feedback__item[data-exiting='true'] {
6
9
  animation: rv-status-item-exit 160ms ease-in both;
@@ -17,13 +20,15 @@
17
20
  line-height: 1.45;
18
21
  box-sizing: border-box;
19
22
  }
20
- :where(.dark, [data-theme^='dark'], revo-grid[theme^='dark']) :is(.rv-status-feedback, .rv-status-badge) {
23
+ :where(.dark, [data-theme^='dark'], revo-grid[theme^='dark'])
24
+ :is(.rv-status-feedback, .rv-status-badge) {
21
25
  --rv-status-warning: var(--rv-ui-warning);
22
26
  --rv-status-danger: var(--rv-ui-danger);
23
27
  --rv-status-success: var(--rv-ui-success);
24
28
  }
25
29
  @media (prefers-color-scheme: dark) {
26
- :root:not([data-theme]):not(.dark) :is(.rv-status-feedback, .rv-status-badge) {
30
+ :root:not([data-theme]):not(.dark)
31
+ :is(.rv-status-feedback, .rv-status-badge) {
27
32
  --rv-status-warning: var(--rv-ui-warning);
28
33
  --rv-status-danger: var(--rv-ui-danger);
29
34
  --rv-status-success: var(--rv-ui-success);
@@ -83,10 +88,20 @@
83
88
  border-block-start: 1px solid var(--rv-ui-border);
84
89
  }
85
90
  }
86
- .rv-status-feedback__copy { grid-column: 2; min-inline-size: 0; overflow-wrap: anywhere; }
87
- .rv-status-feedback__title { font-weight: var(--rv-ui-font-weight-medium, 500); }
91
+ .rv-status-feedback__copy {
92
+ grid-column: 2;
93
+ min-inline-size: 0;
94
+ overflow-wrap: anywhere;
95
+ }
96
+ .rv-status-feedback__title {
97
+ font-weight: var(--rv-ui-font-weight-medium, 500);
98
+ }
88
99
  .rv-status-feedback__description,
89
- .rv-status-feedback__detail { font-size: 13px; color: var(--rv-ui-text-muted); margin-block-start: 4px; }
100
+ .rv-status-feedback__detail {
101
+ font-size: 13px;
102
+ color: var(--rv-ui-text-muted);
103
+ margin-block-start: 4px;
104
+ }
90
105
  .rv-status-feedback__icon {
91
106
  display: inline-flex;
92
107
  align-items: center;
@@ -95,14 +110,28 @@
95
110
  block-size: 18px;
96
111
  margin-block-start: 2px;
97
112
  color: var(--rv-ui-text-subtle);
98
- transition: color var(--rv-ui-motion-fast, 120ms) var(--rv-ui-motion-ease, cubic-bezier(.2, 0, 0, 1));
113
+ transition: color var(--rv-ui-motion-fast, 120ms)
114
+ var(--rv-ui-motion-ease, cubic-bezier(0.2, 0, 0, 1));
99
115
  flex: none;
100
- svg { display: block; inline-size: 100%; block-size: 100%; fill: currentColor; }
116
+ svg {
117
+ display: block;
118
+ inline-size: 100%;
119
+ block-size: 100%;
120
+ fill: currentColor;
121
+ }
122
+ }
123
+ [data-tone='warning'] > .rv-status-feedback__icon {
124
+ color: var(--rv-status-warning);
125
+ }
126
+ [data-tone='danger'] > .rv-status-feedback__icon {
127
+ color: var(--rv-status-danger);
128
+ }
129
+ [data-tone='success'] > .rv-status-feedback__icon {
130
+ color: var(--rv-status-success);
131
+ }
132
+ .rv-status-feedback__icon--busy {
133
+ animation: rv-status-feedback-spin 1s linear infinite;
101
134
  }
102
- [data-tone='warning'] > .rv-status-feedback__icon { color: var(--rv-status-warning); }
103
- [data-tone='danger'] > .rv-status-feedback__icon { color: var(--rv-status-danger); }
104
- [data-tone='success'] > .rv-status-feedback__icon { color: var(--rv-status-success); }
105
- .rv-status-feedback__icon--busy { animation: rv-status-feedback-spin 1s linear infinite; }
106
135
  .rv-status-feedback__actions {
107
136
  display: flex;
108
137
  flex-wrap: wrap;
@@ -129,27 +158,61 @@
129
158
  border-radius: var(--rv-ui-radius, 6px);
130
159
  background: var(--rv-ui-surface);
131
160
  font-size: 13px;
132
- transition: background-color var(--rv-ui-motion-normal, 160ms) var(--rv-ui-motion-ease, cubic-bezier(.2, 0, 0, 1)), border-color var(--rv-ui-motion-normal, 160ms) var(--rv-ui-motion-ease, cubic-bezier(.2, 0, 0, 1)), color var(--rv-ui-motion-normal, 160ms) var(--rv-ui-motion-ease, cubic-bezier(.2, 0, 0, 1));
133
- .rv-status-feedback__icon { inline-size: 14px; block-size: 14px; margin: 0; }
134
- &[data-tone='warning'] { color: var(--rv-status-warning); }
135
- &[data-tone='danger'] { color: var(--rv-status-danger); }
136
- &[data-tone='success'] { color: var(--rv-status-success); }
161
+ transition:
162
+ background-color var(--rv-ui-motion-normal, 160ms)
163
+ var(--rv-ui-motion-ease, cubic-bezier(0.2, 0, 0, 1)),
164
+ border-color var(--rv-ui-motion-normal, 160ms)
165
+ var(--rv-ui-motion-ease, cubic-bezier(0.2, 0, 0, 1)),
166
+ color var(--rv-ui-motion-normal, 160ms)
167
+ var(--rv-ui-motion-ease, cubic-bezier(0.2, 0, 0, 1));
168
+ .rv-status-feedback__icon {
169
+ inline-size: 14px;
170
+ block-size: 14px;
171
+ margin: 0;
172
+ }
173
+ &[data-tone='warning'] {
174
+ color: var(--rv-status-warning);
175
+ }
176
+ &[data-tone='danger'] {
177
+ color: var(--rv-status-danger);
178
+ }
179
+ &[data-tone='success'] {
180
+ color: var(--rv-status-success);
181
+ }
137
182
  &:not([data-tone='neutral']) {
138
183
  background: color-mix(in srgb, currentColor 7%, var(--rv-ui-surface));
139
184
  border-color: color-mix(in srgb, currentColor 20%, var(--rv-ui-border));
140
185
  }
141
186
  }
142
187
  @container (max-width: 480px) {
143
- .rv-status-feedback__item--multiple-actions > .rv-status-feedback__actions { grid-column: 2 / -1; justify-content: flex-start; padding: 0; }
188
+ .rv-status-feedback__item--multiple-actions > .rv-status-feedback__actions {
189
+ grid-column: 2 / -1;
190
+ justify-content: flex-start;
191
+ padding: 0;
192
+ }
144
193
  }
145
194
  @container (max-width: 340px) {
146
- .rv-status-feedback__item { grid-template-columns: 18px minmax(0, 1fr); }
147
- .rv-status-feedback__actions { grid-column: 2; justify-content: flex-start; padding: 0; }
195
+ .rv-status-feedback__item {
196
+ grid-template-columns: 18px minmax(0, 1fr);
197
+ }
198
+ .rv-status-feedback__actions {
199
+ grid-column: 2;
200
+ justify-content: flex-start;
201
+ padding: 0;
202
+ }
203
+ }
204
+ @keyframes rv-status-feedback-spin {
205
+ to {
206
+ transform: rotate(360deg);
207
+ }
148
208
  }
149
- @keyframes rv-status-feedback-spin { to { transform: rotate(360deg); } }
150
209
  @media (prefers-reduced-motion: reduce) {
151
- .rv-status-feedback__icon--busy { animation: none; }
152
- .rv-status-feedback__action { transition: none; }
210
+ .rv-status-feedback__icon--busy {
211
+ animation: none;
212
+ }
213
+ .rv-status-feedback__action {
214
+ transition: none;
215
+ }
153
216
  }
154
217
 
155
218
  /* Floating feedback uses the browser top layer and keeps its DOM theme inheritance. */
@@ -163,11 +226,20 @@
163
226
  padding: 0;
164
227
  display: none;
165
228
  z-index: 1000;
166
- &::backdrop { background: transparent; pointer-events: none; }
229
+ &::backdrop {
230
+ background: transparent;
231
+ pointer-events: none;
232
+ }
167
233
  }
168
- .rv-status-feedback--collapsed .rv-status-feedback__header { border-block-end: 0; padding-block: 8px; }
169
- .rv-status-feedback__items[hidden] { display: none; }
170
- .rv-status-feedback :is(.rv-status-feedback__toggle, .rv-status-feedback__close) {
234
+ .rv-status-feedback--collapsed .rv-status-feedback__header {
235
+ border-block-end: 0;
236
+ padding-block: 8px;
237
+ }
238
+ .rv-status-feedback__items[hidden] {
239
+ display: none;
240
+ }
241
+ .rv-status-feedback
242
+ :is(.rv-status-feedback__toggle, .rv-status-feedback__close) {
171
243
  display: inline-flex;
172
244
  align-items: center;
173
245
  justify-content: center;
@@ -176,22 +248,39 @@
176
248
  min-width: 30px;
177
249
  min-height: 30px;
178
250
  padding: 6px;
179
- .rv-status-feedback__icon { width: 12px; height: 12px; margin: 0; }
251
+ .rv-status-feedback__icon {
252
+ width: 12px;
253
+ height: 12px;
254
+ margin: 0;
255
+ }
180
256
  }
181
- :where(.dark, [data-theme^='dark'], revo-grid[theme^='dark']) .rv-status-feedback {
257
+ :where(.dark, [data-theme^='dark'], revo-grid[theme^='dark'])
258
+ .rv-status-feedback {
182
259
  --rv-status-shadow: 0 12px 32px -8px var(--rv-ui-shadow);
183
260
  }
184
261
 
185
262
  .rv-status-feedback__header > .rv-status-feedback__icon {
186
263
  margin-block-start: 0;
187
- &[data-tone='warning'] { color: var(--rv-status-warning); }
188
- &[data-tone='danger'] { color: var(--rv-status-danger); }
264
+ &[data-tone='warning'] {
265
+ color: var(--rv-status-warning);
266
+ }
267
+ &[data-tone='danger'] {
268
+ color: var(--rv-status-danger);
269
+ }
189
270
  }
190
271
 
191
- .rv-status-feedback__toggle + .rv-status-feedback__close { margin-inline-start: 0; }
272
+ .rv-status-feedback__toggle + .rv-status-feedback__close {
273
+ margin-inline-start: 0;
274
+ }
192
275
  .rv-status-feedback--compact {
193
276
  font-size: 13px;
194
- .rv-status-feedback__header { padding: 6px 10px; }
195
- .rv-status-feedback__heading { font-size: 13px; }
196
- .rv-status-feedback__item { padding: 10px; }
277
+ .rv-status-feedback__header {
278
+ padding: 6px 10px;
279
+ }
280
+ .rv-status-feedback__heading {
281
+ font-size: 13px;
282
+ }
283
+ .rv-status-feedback__item {
284
+ padding: 10px;
285
+ }
197
286
  }
@@ -8,7 +8,9 @@
8
8
  font-size: 13px;
9
9
  line-height: 1.5;
10
10
  }
11
- .rv-activity-message-avatar { padding-block-start: 10px; }
11
+ .rv-activity-message-avatar {
12
+ padding-block-start: 10px;
13
+ }
12
14
  .rv-activity-message-card {
13
15
  display: grid;
14
16
  grid-template-columns: minmax(0, 1fr) fit-content(35%);
@@ -21,11 +23,23 @@
21
23
  background: var(--rv-ui-surface-sunken);
22
24
  box-shadow: none;
23
25
  }
24
- .rv-activity-message-header { min-width: 0; overflow-wrap: anywhere; }
25
- .rv-activity-message-content { min-width: 0; overflow-wrap: anywhere; }
26
- .rv-activity-message-content--full { grid-column: 1 / -1; }
27
- .rv-activity-message-content > :first-child { margin-block-start: 0; }
28
- .rv-activity-message-content > :last-child { margin-block-end: 0; }
26
+ .rv-activity-message-header {
27
+ min-width: 0;
28
+ overflow-wrap: anywhere;
29
+ }
30
+ .rv-activity-message-content {
31
+ min-width: 0;
32
+ overflow-wrap: anywhere;
33
+ }
34
+ .rv-activity-message-content--full {
35
+ grid-column: 1 / -1;
36
+ }
37
+ .rv-activity-message-content > :first-child {
38
+ margin-block-start: 0;
39
+ }
40
+ .rv-activity-message-content > :last-child {
41
+ margin-block-end: 0;
42
+ }
29
43
  .rv-activity-message-time {
30
44
  grid-column: 2;
31
45
  grid-row: 1;
@@ -43,4 +57,7 @@
43
57
  flex-wrap: wrap;
44
58
  gap: 4px;
45
59
  }
46
- .rv-activity-message-details { grid-column: 2; min-width: 0; }
60
+ .rv-activity-message-details {
61
+ grid-column: 2;
62
+ min-width: 0;
63
+ }
@@ -8,28 +8,89 @@
8
8
  padding: 12px 16px;
9
9
  border: 1px solid var(--rv-ui-border);
10
10
  border-radius: var(--rv-ui-radius, 8px);
11
- background: var(--rv-ui-surface);
11
+ background: var(--rv-alert-surface, var(--rv-ui-surface));
12
12
  color: var(--rv-ui-text);
13
13
  font-size: 14px;
14
14
  font-weight: 400;
15
15
  line-height: 20px;
16
16
  overflow-wrap: anywhere;
17
17
  }
18
- .rv-alert--with-icon { grid-template-columns: 16px minmax(0, 1fr); column-gap: 12px; }
19
- .rv-alert__icon { --rv-icon-size: 16px; display: inline-flex; width: 16px; height: 16px; margin-top: 2px; color: var(--rv-alert-tone, currentColor); }
20
- .rv-alert__icon svg { display: block; width: 16px; height: 16px; fill: currentColor; }
21
- .rv-alert__content { display: grid; min-width: 0; gap: 2px; }
22
- .rv-alert__title { font-weight: 500; }
23
- .rv-alert__description { color: var(--rv-ui-text-muted); }
24
- .rv-alert__content > p, .rv-alert__description > p { margin: 0; }
25
- .rv-alert--danger { --rv-alert-tone: var(--rv-ui-danger); color: var(--rv-alert-tone); }
26
- .rv-alert--danger .rv-alert__description { color: inherit; }
27
- .rv-alert--warning { --rv-alert-tone: var(--rv-ui-warning); }
28
- .rv-alert--success { --rv-alert-tone: var(--rv-ui-success); }
18
+ .rv-alert--with-icon {
19
+ grid-template-columns: 16px minmax(0, 1fr);
20
+ column-gap: 12px;
21
+ }
22
+ .rv-alert__icon {
23
+ --rv-icon-size: 16px;
24
+ display: inline-flex;
25
+ width: 16px;
26
+ height: 16px;
27
+ margin-top: 2px;
28
+ color: var(--rv-alert-tone, currentColor);
29
+ }
30
+ .rv-alert__icon svg {
31
+ display: block;
32
+ width: 16px;
33
+ height: 16px;
34
+ fill: currentColor;
35
+ }
36
+ .rv-alert__content {
37
+ display: grid;
38
+ min-width: 0;
39
+ gap: 2px;
40
+ }
41
+ .rv-alert__title {
42
+ font-weight: 500;
43
+ }
44
+ .rv-alert__description {
45
+ color: var(--rv-ui-text-muted);
46
+ }
47
+ .rv-alert__content > p,
48
+ .rv-alert__description > p {
49
+ margin: 0;
50
+ }
51
+ .rv-alert--danger,
52
+ .rv-alert--warning,
53
+ .rv-alert--success {
54
+ border: 0;
55
+ }
29
56
 
30
- .rv-alert--with-actions { grid-template-columns: minmax(0, 1fr) auto; column-gap: 12px; align-items: center; }
31
- .rv-alert--with-icon.rv-alert--with-actions { grid-template-columns: 16px minmax(0, 1fr) auto; }
32
- .rv-alert__actions { display: flex; align-items: center; gap: 8px; }
33
- .rv-alert[hidden] { display: none; }
57
+ .rv-alert--danger {
58
+ --rv-alert-tone: var(--rv-ui-danger);
59
+ --rv-alert-surface: var(--rv-ui-danger-surface);
60
+ color: var(--rv-alert-tone);
61
+ }
62
+ .rv-alert--danger .rv-alert__description {
63
+ color: inherit;
64
+ }
65
+ .rv-alert--warning {
66
+ --rv-alert-tone: var(--rv-ui-warning);
67
+ --rv-alert-surface: var(--rv-ui-warning-surface);
68
+ }
69
+ .rv-alert--success {
70
+ --rv-alert-tone: var(--rv-ui-success);
71
+ --rv-alert-surface: var(--rv-ui-success-surface);
72
+ }
73
+
74
+ .rv-alert--with-actions {
75
+ grid-template-columns: minmax(0, 1fr) auto;
76
+ column-gap: 12px;
77
+ align-items: center;
78
+ }
79
+ .rv-alert--with-icon.rv-alert--with-actions {
80
+ grid-template-columns: 16px minmax(0, 1fr) auto;
81
+ }
82
+ .rv-alert__actions {
83
+ display: flex;
84
+ align-items: center;
85
+ gap: 8px;
86
+ }
87
+ .rv-alert[hidden] {
88
+ display: none;
89
+ }
34
90
 
35
- .rv-alert .rv-alert__icon > * { color: inherit; inline-size: 100%; block-size: 100%; margin: 0; }
91
+ .rv-alert .rv-alert__icon > * {
92
+ color: inherit;
93
+ inline-size: 100%;
94
+ block-size: 100%;
95
+ margin: 0;
96
+ }
@@ -0,0 +1,11 @@
1
+ /** Shared active-cell frame; inset so the grid viewport cannot clip it. */
2
+ @mixin cell-editor-frame {
3
+ border: 0;
4
+ border-radius: var(--rv-control-radius, 6px);
5
+ outline: 2px solid var(--rv-ui-accent, var(--rg-theme-primary, #2563eb));
6
+ outline-offset: -2px;
7
+
8
+ &[aria-invalid='true'] {
9
+ outline-color: var(--rv-ui-danger, #dc2626);
10
+ }
11
+ }