@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
@@ -8,121 +8,165 @@
8
8
  --rv-ui-shadow: color-mix(in srgb, black 10%, transparent);
9
9
  --rv-ui-disabled-bg: var(--rv-ui-surface-sunken);
10
10
  --rv-ui-disabled-fg: var(--rv-ui-text-muted);
11
- --rv-ui-danger-surface: color-mix(in srgb, var(--rv-ui-danger) 10%, var(--rv-ui-surface));
12
- --rv-ui-warning-surface: color-mix(in srgb, var(--rv-ui-warning) 10%, var(--rv-ui-surface));
13
- --rv-ui-success-surface: color-mix(in srgb, var(--rv-ui-success) 10%, var(--rv-ui-surface));
11
+ --rv-ui-danger-surface: color-mix(
12
+ in srgb,
13
+ var(--rv-ui-danger) 10%,
14
+ var(--rv-ui-surface)
15
+ );
16
+ --rv-ui-warning-surface: color-mix(
17
+ in srgb,
18
+ var(--rv-ui-warning) 10%,
19
+ var(--rv-ui-surface)
20
+ );
21
+ --rv-ui-success-surface: color-mix(
22
+ in srgb,
23
+ var(--rv-ui-success) 10%,
24
+ var(--rv-ui-surface)
25
+ );
14
26
  --rv-ui-field-muted: var(--rv-ui-text-muted);
15
- --rv-ui-field-accent-text: color-mix(in srgb, var(--rv-ui-accent, #{palette.$blue-600}) 90%, black);
27
+ --rv-ui-field-accent-text: color-mix(
28
+ in srgb,
29
+ var(--rv-ui-accent, #{palette.$blue-600}) 90%,
30
+ black
31
+ );
16
32
  --rv-ui-field-surface: #{palette.$gray-f6f6f6};
17
33
  --rv-ui-field-text: var(--rv-ui-text);
18
34
  /* Typography */
19
35
  --rv-ui-font-weight-medium: #{variables.$rv-font-weight-medium};
20
36
 
21
37
  /* Semantic surfaces and content */
22
- --rv-ui-canvas: #{palette.$neutral-100};
23
- --rv-ui-surface: #{palette.$white};
24
- --rv-ui-surface-elevated: #{palette.$white};
25
- --rv-ui-surface-sunken: #{palette.$gray-f8f8f8};
26
- --rv-ui-surface-hover: #{palette.$gray-f1f1f1};
27
- --rv-ui-border: #{palette.$neutral-200};
28
- --rv-ui-border-strong: #{palette.$neutral-300};
29
- --rv-ui-text: #{palette.$neutral-900};
30
- --rv-ui-text-muted: #{palette.$neutral-600};
31
- --rv-ui-text-subtle: #{palette.$neutral-500};
32
- --rv-ui-selected-bg: color-mix(in srgb, var(--rv-ui-accent) 12%, var(--rv-ui-surface));
38
+ --rv-ui-canvas: #{palette.$neutral-100};
39
+ --rv-ui-surface: #{palette.$white};
40
+ --rv-ui-surface-elevated: #{palette.$white};
41
+ --rv-ui-surface-sunken: #{palette.$gray-f8f8f8};
42
+ --rv-ui-surface-hover: #{palette.$gray-f1f1f1};
43
+ --rv-ui-border: #{palette.$neutral-200};
44
+ --rv-ui-border-strong: #{palette.$neutral-300};
45
+ --rv-ui-text: #{palette.$neutral-900};
46
+ --rv-ui-text-muted: #{palette.$neutral-600};
47
+ --rv-ui-text-subtle: #{palette.$neutral-500};
48
+ --rv-ui-selected-bg: color-mix(
49
+ in srgb,
50
+ var(--rv-ui-accent) 12%,
51
+ var(--rv-ui-surface)
52
+ );
33
53
  --rv-dropdown-container-tag-background: #{palette.$gray-eeeeee};
34
54
  --rv-dropdown-placeholder-color: var(--rv-ui-text-muted);
35
- --rv-ui-selected-fg: #{palette.$neutral-900};
36
- --rv-ui-selected-accent-fg: color-mix(in srgb, var(--rv-ui-accent) 65%, black);
55
+ --rv-ui-selected-fg: #{palette.$neutral-900};
56
+ --rv-ui-selected-accent-fg: color-mix(
57
+ in srgb,
58
+ var(--rv-ui-accent) 65%,
59
+ black
60
+ );
37
61
 
38
62
  --rv-ui-danger: #{palette.$red-700};
39
63
  --rv-ui-warning: #{palette.$amber-700};
40
64
  --rv-ui-success: #{palette.$green-700};
41
65
 
42
66
  /* Accent (primary / switch on) */
43
- --rv-ui-accent: #{palette.$blue-600};
44
- --rv-ui-accent-hover: #{palette.$blue-700};
45
- --rv-ui-accent-fg: #{palette.$white};
67
+ --rv-ui-accent: #{palette.$blue-600};
68
+ --rv-ui-accent-hover: #{palette.$blue-700};
69
+ --rv-ui-accent-fg: #{palette.$white};
46
70
  --rv-ui-accent-text-weight: 90%;
47
- --rv-ui-accent-text-base: black;
71
+ --rv-ui-accent-text-base: black;
48
72
  --rv-ui-accent-text: color-mix(in srgb, var(--rv-ui-accent) 90%, black);
49
73
 
50
74
  /* Outline button (default) */
51
- --rv-ui-btn-outline-bg: transparent;
52
- --rv-ui-btn-outline-bg-hover:var(--rv-ui-surface-hover);
53
- --rv-ui-btn-outline-fg: var(--rv-ui-text);
75
+ --rv-ui-btn-outline-bg: transparent;
76
+ --rv-ui-btn-outline-bg-hover: var(--rv-ui-surface-hover);
77
+ --rv-ui-btn-outline-fg: var(--rv-ui-text);
54
78
  --rv-ui-btn-outline-border: var(--rv-ui-border);
55
- --rv-ui-btn-outline-border-hover:var(--rv-ui-border-strong);
79
+ --rv-ui-btn-outline-border-hover: var(--rv-ui-border-strong);
56
80
 
57
81
  /* Filled neutral button */
58
- --rv-ui-btn-bg: #{palette.$neutral-800};
59
- --rv-ui-btn-bg-hover: #{palette.$neutral-700};
60
- --rv-ui-btn-fg: #{palette.$white};
82
+ --rv-ui-btn-bg: #{palette.$neutral-800};
83
+ --rv-ui-btn-bg-hover: #{palette.$neutral-700};
84
+ --rv-ui-btn-fg: #{palette.$white};
61
85
 
62
86
  /* Secondary button */
63
- --rv-ui-btn-secondary-bg: var(--rv-ui-border);
87
+ --rv-ui-btn-secondary-bg: var(--rv-ui-border);
64
88
  --rv-ui-btn-secondary-bg-hover: var(--rv-ui-border-strong);
65
- --rv-ui-btn-secondary-fg: var(--rv-ui-text);
89
+ --rv-ui-btn-secondary-fg: var(--rv-ui-text);
66
90
 
67
91
  /* Danger button */
68
- --rv-ui-btn-danger-bg: transparent;
69
- --rv-ui-btn-danger-bg-hover: #{palette.$red-overlay-8};
70
- --rv-ui-btn-danger-fg: var(--rv-ui-danger);
71
- --rv-ui-btn-danger-outline: #{palette.$gray-dc2626};
72
- --rv-ui-btn-danger-outline-hover:#{palette.$red-overlay-8};
92
+ --rv-ui-btn-danger-bg: transparent;
93
+ --rv-ui-btn-danger-bg-hover: #{palette.$red-overlay-8};
94
+ --rv-ui-btn-danger-fg: var(--rv-ui-danger);
95
+ --rv-ui-btn-danger-outline: #{palette.$gray-dc2626};
96
+ --rv-ui-btn-danger-outline-hover: #{palette.$red-overlay-8};
73
97
 
74
98
  /* Ghost hover overlay */
75
- --rv-ui-btn-ghost-hover-bg: #{palette.$black-overlay-6};
76
- --rv-ui-btn-ghost-active-bg: #{palette.$black-overlay-10};
99
+ --rv-ui-btn-ghost-hover-bg: #{palette.$black-overlay-6};
100
+ --rv-ui-btn-ghost-active-bg: #{palette.$black-overlay-10};
77
101
 
78
102
  /* Toggle switch */
79
- --rv-ui-switch-track-off: #{palette.$gray-9ca3af};
80
- --rv-ui-switch-thumb: #{palette.$white};
103
+ --rv-ui-switch-track-off: #{palette.$gray-9ca3af};
104
+ --rv-ui-switch-thumb: #{palette.$white};
81
105
 
82
106
  /* Button group */
83
- --rv-ui-group-border: var(--rv-ui-border);
84
- --rv-ui-group-hover-bg: var(--rv-ui-surface-hover);
107
+ --rv-ui-group-border: var(--rv-ui-border);
108
+ --rv-ui-group-hover-bg: var(--rv-ui-surface-hover);
85
109
 
86
110
  /* Badge */
87
- --rv-ui-badge-bg: var(--rv-ui-accent);
88
- --rv-ui-badge-fg: var(--rv-ui-accent-fg);
89
- --rv-ui-badge-disabled-bg: #{palette.$gray-a1a1aa};
90
- --rv-ui-badge-disabled-fg: #{palette.$white};
111
+ --rv-ui-badge-bg: var(--rv-ui-accent);
112
+ --rv-ui-badge-fg: var(--rv-ui-accent-fg);
113
+ --rv-ui-badge-disabled-bg: #{palette.$gray-a1a1aa};
114
+ --rv-ui-badge-disabled-fg: #{palette.$white};
91
115
 
92
116
  /* Shared */
93
- --rv-ui-radius: 6px;
94
- --rv-ui-transition: var(--rv-ui-motion-fast, 120ms);
95
- --rv-ui-focus-ring: color-mix(in srgb, var(--rv-ui-accent) 35%, transparent);
117
+ --rv-ui-radius: 6px;
118
+ --rv-ui-transition: var(--rv-ui-motion-fast, 120ms);
119
+ --rv-ui-focus-ring: color-mix(in srgb, var(--rv-ui-accent) 35%, transparent);
96
120
  }
97
121
 
98
122
  @mixin rv-ui-dark-tokens {
99
123
  --rv-ui-color-scheme: dark;
100
124
  --rv-ui-disabled-bg: var(--rv-ui-surface-sunken);
101
125
  --rv-ui-disabled-fg: var(--rv-ui-text-muted);
102
- --rv-ui-danger-surface: color-mix(in srgb, var(--rv-ui-danger) 10%, var(--rv-ui-surface));
103
- --rv-ui-warning-surface: color-mix(in srgb, var(--rv-ui-warning) 10%, var(--rv-ui-surface));
104
- --rv-ui-success-surface: color-mix(in srgb, var(--rv-ui-success) 10%, var(--rv-ui-surface));
126
+ --rv-ui-danger-surface: color-mix(
127
+ in srgb,
128
+ var(--rv-ui-danger) 10%,
129
+ var(--rv-ui-surface)
130
+ );
131
+ --rv-ui-warning-surface: color-mix(
132
+ in srgb,
133
+ var(--rv-ui-warning) 10%,
134
+ var(--rv-ui-surface)
135
+ );
136
+ --rv-ui-success-surface: color-mix(
137
+ in srgb,
138
+ var(--rv-ui-success) 10%,
139
+ var(--rv-ui-surface)
140
+ );
105
141
  --rv-ui-overlay: color-mix(in srgb, black 60%, transparent);
106
142
  --rv-ui-shadow: color-mix(in srgb, black 32%, transparent);
107
143
  --rv-ui-field-muted: var(--rv-ui-text-muted);
108
- --rv-ui-field-accent-text: color-mix(in srgb, var(--rv-ui-accent, #{palette.$blue-600}) 45%, white);
144
+ --rv-ui-field-accent-text: color-mix(
145
+ in srgb,
146
+ var(--rv-ui-accent, #{palette.$blue-600}) 45%,
147
+ white
148
+ );
109
149
  --rv-ui-field-surface: #{palette.$neutral-800};
110
150
  --rv-ui-field-text: var(--rv-ui-text);
111
- --rv-ui-canvas: #{palette.$neutral-950};
112
- --rv-ui-surface: #{palette.$gray-1f1f1f};
113
- --rv-ui-surface-elevated: #{palette.$neutral-800};
114
- --rv-ui-surface-sunken: #{palette.$gray-111111};
115
- --rv-ui-surface-hover: #{palette.$gray-2f2f2f};
116
- --rv-ui-border: #{palette.$gray-3a3a3a};
117
- --rv-ui-border-strong: #{palette.$gray-525252};
118
- --rv-ui-text: #{palette.$neutral-100};
119
- --rv-ui-text-muted: #{palette.$gray-a3a3a3};
120
- --rv-ui-text-subtle: #{palette.$neutral-500};
121
- --rv-ui-selected-bg: color-mix(in srgb, var(--rv-ui-accent) 12%, var(--rv-ui-surface));
151
+ --rv-ui-canvas: #{palette.$neutral-950};
152
+ --rv-ui-surface: #{palette.$gray-1f1f1f};
153
+ --rv-ui-surface-elevated: #{palette.$neutral-800};
154
+ --rv-ui-surface-sunken: #{palette.$gray-111111};
155
+ --rv-ui-surface-hover: #{palette.$gray-2f2f2f};
156
+ --rv-ui-border: #{palette.$gray-3a3a3a};
157
+ --rv-ui-border-strong: #{palette.$gray-525252};
158
+ --rv-ui-text: #{palette.$neutral-100};
159
+ --rv-ui-text-muted: #{palette.$gray-a3a3a3};
160
+ --rv-ui-text-subtle: #{palette.$neutral-500};
161
+ --rv-ui-selected-bg: color-mix(
162
+ in srgb,
163
+ var(--rv-ui-accent) 12%,
164
+ var(--rv-ui-surface)
165
+ );
122
166
  --rv-dropdown-container-tag-background: #{palette.$gray-2b2b2b};
123
167
  --rv-dropdown-placeholder-color: var(--rv-ui-text-muted);
124
- --rv-ui-selected-fg: #{palette.$neutral-100};
125
- --rv-ui-selected-accent-fg: var(--rv-ui-accent-text);
168
+ --rv-ui-selected-fg: #{palette.$neutral-100};
169
+ --rv-ui-selected-accent-fg: var(--rv-ui-accent-text);
126
170
  --rv-ui-danger: #{palette.$red-300};
127
171
  --rv-ui-warning: #{palette.$amber-300};
128
172
  --rv-ui-success: #{palette.$green-300};
@@ -130,34 +174,34 @@
130
174
  --rv-ui-btn-danger-outline-hover: #{palette.$red-light-overlay-10};
131
175
  color-scheme: dark;
132
176
 
133
- --rv-ui-accent: #{palette.$blue-600};
134
- --rv-ui-accent-hover: #{palette.$blue-700};
177
+ --rv-ui-accent: #{palette.$blue-600};
178
+ --rv-ui-accent-hover: #{palette.$blue-700};
135
179
  --rv-ui-accent-text-weight: 45%;
136
- --rv-ui-accent-text-base: white;
180
+ --rv-ui-accent-text-base: white;
137
181
  --rv-ui-accent-text: color-mix(in srgb, var(--rv-ui-accent) 45%, white);
138
182
 
139
- --rv-ui-btn-outline-bg: transparent;
140
- --rv-ui-btn-outline-bg-hover: var(--rv-ui-surface-hover);
141
- --rv-ui-btn-outline-fg: var(--rv-ui-text);
142
- --rv-ui-btn-outline-border: var(--rv-ui-border);
143
- --rv-ui-btn-outline-border-hover:var(--rv-ui-border-strong);
183
+ --rv-ui-btn-outline-bg: transparent;
184
+ --rv-ui-btn-outline-bg-hover: var(--rv-ui-surface-hover);
185
+ --rv-ui-btn-outline-fg: var(--rv-ui-text);
186
+ --rv-ui-btn-outline-border: var(--rv-ui-border);
187
+ --rv-ui-btn-outline-border-hover: var(--rv-ui-border-strong);
144
188
 
145
- --rv-ui-btn-bg: var(--rv-ui-surface-elevated);
146
- --rv-ui-btn-bg-hover: #{palette.$neutral-700};
189
+ --rv-ui-btn-bg: var(--rv-ui-surface-elevated);
190
+ --rv-ui-btn-bg-hover: #{palette.$neutral-700};
147
191
 
148
- --rv-ui-btn-secondary-bg: var(--rv-ui-surface);
192
+ --rv-ui-btn-secondary-bg: var(--rv-ui-surface);
149
193
  --rv-ui-btn-secondary-bg-hover: var(--rv-ui-surface-hover);
150
- --rv-ui-btn-secondary-fg: var(--rv-ui-text);
194
+ --rv-ui-btn-secondary-fg: var(--rv-ui-text);
151
195
 
152
- --rv-ui-btn-ghost-hover-bg: #{palette.$white-overlay-8};
153
- --rv-ui-btn-ghost-active-bg: #{palette.$white-overlay-14};
196
+ --rv-ui-btn-ghost-hover-bg: #{palette.$white-overlay-8};
197
+ --rv-ui-btn-ghost-active-bg: #{palette.$white-overlay-14};
154
198
 
155
- --rv-ui-switch-track-off: #{palette.$neutral-600};
156
- --rv-ui-switch-thumb: var(--rv-ui-text);
199
+ --rv-ui-switch-track-off: #{palette.$neutral-600};
200
+ --rv-ui-switch-thumb: var(--rv-ui-text);
157
201
 
158
- --rv-ui-group-border: var(--rv-ui-border);
159
- --rv-ui-group-hover-bg: var(--rv-ui-surface-hover);
160
- --rv-ui-focus-ring: color-mix(in srgb, var(--rv-ui-accent) 38%, transparent);
161
- --rv-ui-badge-disabled-bg: #{palette.$gray-52525b};
162
- --rv-ui-badge-disabled-fg: #{palette.$gray-e4e4e7};
202
+ --rv-ui-group-border: var(--rv-ui-border);
203
+ --rv-ui-group-hover-bg: var(--rv-ui-surface-hover);
204
+ --rv-ui-focus-ring: color-mix(in srgb, var(--rv-ui-accent) 38%, transparent);
205
+ --rv-ui-badge-disabled-bg: #{palette.$gray-52525b};
206
+ --rv-ui-badge-disabled-fg: #{palette.$gray-e4e4e7};
163
207
  }
@@ -1,28 +1,31 @@
1
1
  @use '../variables' as *;
2
2
 
3
3
  @mixin thresholds {
4
- &.low {
5
- --threshold-color: var(--progress-bar-low-color, #{$rv-low-color});
6
- --progress-bar-text-color: #FFFFFF;
7
- }
8
- &.medium {
9
- --threshold-color: var(--progress-bar-medium-color, #{$rv-medium-color});
10
- --progress-bar-text-color: #000000;
11
- }
12
- &.high {
13
- --threshold-color: var(--progress-bar-high-color, #{$rv-high-color});
14
- --progress-bar-text-color: #FFFFFF;
15
- }
16
- &.critical {
17
- --threshold-color: var(--progress-bar-critical-color, #{$rv-critical-color});
18
- --progress-bar-text-color: #FFFFFF;
19
- }
20
- &.info {
21
- --threshold-color: var(--progress-bar-info-color, #{$rv-info-color});
22
- --progress-bar-text-color: #FFFFFF;
23
- }
24
- &.neutral {
25
- --threshold-color: var(--progress-bar-neutral-color, #{$rv-neutral-color});
26
- --progress-bar-text-color: #FFFFFF;
27
- }
28
- }
4
+ &.low {
5
+ --threshold-color: var(--progress-bar-low-color, #{$rv-low-color});
6
+ --progress-bar-text-color: #ffffff;
7
+ }
8
+ &.medium {
9
+ --threshold-color: var(--progress-bar-medium-color, #{$rv-medium-color});
10
+ --progress-bar-text-color: #000000;
11
+ }
12
+ &.high {
13
+ --threshold-color: var(--progress-bar-high-color, #{$rv-high-color});
14
+ --progress-bar-text-color: #ffffff;
15
+ }
16
+ &.critical {
17
+ --threshold-color: var(
18
+ --progress-bar-critical-color,
19
+ #{$rv-critical-color}
20
+ );
21
+ --progress-bar-text-color: #ffffff;
22
+ }
23
+ &.info {
24
+ --threshold-color: var(--progress-bar-info-color, #{$rv-info-color});
25
+ --progress-bar-text-color: #ffffff;
26
+ }
27
+ &.neutral {
28
+ --threshold-color: var(--progress-bar-neutral-color, #{$rv-neutral-color});
29
+ --progress-bar-text-color: #ffffff;
30
+ }
31
+ }
@@ -58,8 +58,10 @@
58
58
  background: var(--rv-matrix-working, var(--rv-ui-surface));
59
59
  cursor: crosshair;
60
60
  transition:
61
- border-color var(--rv-ui-motion-fast, 120ms) var(--rv-ui-motion-ease, cubic-bezier(.2, 0, 0, 1)),
62
- background-color var(--rv-ui-motion-fast, 120ms) var(--rv-ui-motion-ease, cubic-bezier(.2, 0, 0, 1));
61
+ border-color var(--rv-ui-motion-fast, 120ms)
62
+ var(--rv-ui-motion-ease, cubic-bezier(0.2, 0, 0, 1)),
63
+ background-color var(--rv-ui-motion-fast, 120ms)
64
+ var(--rv-ui-motion-ease, cubic-bezier(0.2, 0, 0, 1));
63
65
  }
64
66
  .rv-time-grid__cell.is-outside-work-hours {
65
67
  background: var(--rv-matrix-outside, var(--rv-ui-surface-hover));
@@ -91,4 +93,7 @@
91
93
  z-index: 1;
92
94
  }
93
95
 
94
- .rv-time-grid__hours, .rv-time-grid__matrix { min-inline-size: var(--rv-time-grid-min-width, 500px); }
96
+ .rv-time-grid__hours,
97
+ .rv-time-grid__matrix {
98
+ min-inline-size: var(--rv-time-grid-min-width, 500px);
99
+ }
@@ -1,5 +1,10 @@
1
1
  @use './theme';
2
- :root, .light, [data-theme^='light'], revo-grid[theme^='light'] { @include theme.rv-ui-light-tokens; }
2
+ :root,
3
+ .light,
4
+ [data-theme^='light'],
5
+ revo-grid[theme^='light'] {
6
+ @include theme.rv-ui-light-tokens;
7
+ }
3
8
 
4
9
  /* Explicit dark selectors */
5
10
  [data-theme^='dark'],
@@ -1,4 +1,4 @@
1
- //#region src/styles/color-roles.ts
1
+ //#region package/styles/color-roles.ts
2
2
  var e = [
3
3
  {
4
4
  token: "--rv-ui-canvas",
@@ -0,0 +1,241 @@
1
+ @use './built-in-palettes' as palettes;
2
+ // Shared action surfaces for Grid and Pivot. Keep legacy classes and theme tokens compatible.
3
+ .revo-dropdown-menu.pivot-field-action-popover {
4
+ --rv-dropdown-menu-max-height: 400px;
5
+ position: fixed;
6
+ box-sizing: border-box;
7
+ min-width: 0;
8
+ width: min(20rem, calc(100vw - 16px));
9
+ max-width: calc(100vw - 16px);
10
+ overflow: hidden;
11
+ padding: 0;
12
+ color: var(--rv-dropdown-menu-option-color);
13
+ .pivot-field-action-panel {
14
+ display: flex;
15
+ flex-direction: column;
16
+ align-items: stretch;
17
+ min-width: 0;
18
+ max-width: 100%;
19
+ border-radius: 0.25rem;
20
+ font-weight: normal;
21
+ white-space: normal;
22
+ box-sizing: border-box;
23
+ width: 100%;
24
+ min-height: 0;
25
+ flex: 1 1 auto;
26
+ border: 0;
27
+ padding: 0;
28
+ gap: 0;
29
+ overflow: hidden;
30
+ }
31
+ .pivot-field-action-header {
32
+ flex-shrink: 0;
33
+ padding: 12px;
34
+ background: var(--rv-dropdown-menu-background);
35
+ border-bottom: 1px solid var(--rv-dropdown-menu-border);
36
+ }
37
+ .pivot-field-action-title {
38
+ display: block;
39
+ font-size: 13px;
40
+ font-weight: 600;
41
+ line-height: 20px;
42
+ }
43
+ .pivot-field-action-header .rv-search-input {
44
+ margin: 8px 0 0;
45
+ }
46
+ .pivot-field-action-body {
47
+ min-height: 0;
48
+ padding: 6px;
49
+ overflow: auto;
50
+ overscroll-behavior: contain;
51
+ scrollbar-width: thin;
52
+ display: flex;
53
+ flex-direction: column;
54
+ gap: 2px;
55
+ }
56
+ .pivot-field-action-group {
57
+ display: flex;
58
+ flex: 0 0 auto;
59
+ flex-direction: column;
60
+ gap: 2px;
61
+ }
62
+ .pivot-field-action-group + .pivot-field-action-group {
63
+ border-top: 1px solid var(--rv-dropdown-menu-border);
64
+ margin-top: 4px;
65
+ padding-top: 6px;
66
+ }
67
+ .rv-configurator-action-panel.pivot-field-action-panel button.rv-btn {
68
+ font-family: inherit;
69
+ font-size: 13px;
70
+ line-height: 1.5;
71
+ width: 100%;
72
+ min-height: 36px;
73
+ flex: 0 0 auto;
74
+ padding: 8px;
75
+ margin: 0;
76
+ align-items: center;
77
+ text-align: start;
78
+ white-space: normal;
79
+ flex-wrap: nowrap;
80
+ gap: 10px;
81
+ justify-content: flex-start;
82
+ opacity: 1;
83
+ appearance: none;
84
+ border: 0;
85
+ box-shadow: none;
86
+ background-image: none;
87
+ border-radius: 0.375rem;
88
+ color: inherit;
89
+ background: transparent;
90
+ }
91
+ .pivot-field-action-panel button.rv-btn:disabled {
92
+ color: var(--pv-action-muted, var(--rv-ui-text-muted));
93
+ opacity: 0.55;
94
+ cursor: not-allowed;
95
+ }
96
+ .pivot-field-action-symbol,
97
+ .column-icon {
98
+ display: inline-flex;
99
+ flex: 0 0 16px;
100
+ align-items: center;
101
+ justify-content: center;
102
+ color: var(--pv-action-muted, var(--rv-ui-text-muted));
103
+ }
104
+ .pivot-field-action-symbol svg,
105
+ .column-icon svg {
106
+ display: block;
107
+ width: 12px;
108
+ height: 12px;
109
+ fill: currentColor;
110
+ }
111
+ .pivot-field-action-copy {
112
+ min-width: 0;
113
+ }
114
+ .pivot-field-action-check {
115
+ display: inline-flex;
116
+ flex: 0 0 12px;
117
+ margin-left: auto;
118
+ svg {
119
+ display: block;
120
+ width: 12px;
121
+ height: 12px;
122
+ fill: currentColor;
123
+ }
124
+ }
125
+ .pivot-field-action-panel button.rv-btn:not(:disabled):hover,
126
+ .pivot-field-action-panel button.rv-btn:focus-visible {
127
+ background: var(--rv-dropdown-container-hover-background);
128
+ }
129
+ .pivot-field-action-panel button.rv-btn:focus-visible {
130
+ outline: 2px solid var(--rv-ui-accent);
131
+ outline-offset: -2px;
132
+ }
133
+ .pivot-action-reason {
134
+ display: block;
135
+ font-size: 11px;
136
+ line-height: 16px;
137
+ font-weight: normal;
138
+ }
139
+ .pivot-field-picker-list {
140
+ max-height: none;
141
+ overflow: visible;
142
+ }
143
+ .pivot-aggregation-menu {
144
+ margin: 0;
145
+ padding: 0;
146
+ }
147
+ .pivot-aggregation-menu [role='menu'] {
148
+ display: flex;
149
+ flex-direction: column;
150
+ gap: 2px;
151
+ }
152
+ .pivot-aggregation-heading {
153
+ padding: 6px 8px;
154
+ color: var(--pv-action-muted, var(--rv-ui-text-muted));
155
+ font-size: 11px;
156
+ font-weight: 500;
157
+ }
158
+ .pivot-aggregation-name {
159
+ flex: 1;
160
+ min-width: 0;
161
+ overflow-wrap: anywhere;
162
+ text-transform: uppercase;
163
+ font-size: 12px;
164
+ font-weight: 500;
165
+ }
166
+ .pivot-aggregation-check {
167
+ display: inline-flex;
168
+ flex: 0 0 12px;
169
+ svg {
170
+ display: block;
171
+ width: 12px;
172
+ height: 12px;
173
+ fill: currentColor;
174
+ }
175
+ }
176
+ .pivot-field-action-panel
177
+ button.pivot-aggregation-option[aria-checked='true'] {
178
+ background: color-mix(in srgb, var(--rv-ui-accent) 12%, transparent);
179
+ color: var(
180
+ --pv-inspector-accent-text,
181
+ var(--pv-action-accent-text, var(--rv-ui-accent))
182
+ );
183
+ .pivot-field-action-symbol {
184
+ color: inherit;
185
+ }
186
+ }
187
+ .rv-search-input {
188
+ width: 100%;
189
+ min-width: 0;
190
+ box-sizing: border-box;
191
+ }
192
+ }
193
+
194
+ // The shared popup is portalled outside the inspector, so it carries its palette.
195
+ .revo-dropdown-menu.pivot-field-action-popover,
196
+ .revo-dropdown-menu.pivot-editor-popover,
197
+ .rv-pivot-member-filter-dialog {
198
+ --rv-dropdown-menu-background: var(--rv-ui-surface);
199
+ --rv-dropdown-menu-border: var(--rv-ui-border);
200
+ --rv-dropdown-menu-option-color: var(--rv-ui-text);
201
+ --rv-dropdown-container-hover-background: var(--rv-ui-surface-hover);
202
+ --pv-action-muted: var(--rv-ui-text-muted);
203
+ --pv-action-accent-text: color-mix(
204
+ in srgb,
205
+ var(--rv-ui-accent) 90%,
206
+ #{palettes.color('pivot-interface-mix', 'shade')}
207
+ );
208
+ --rv-search-input-bg: var(--rv-ui-surface-sunken);
209
+ --rv-search-input-focus-bg: var(--rv-search-input-bg);
210
+ --rv-search-input-border: var(--rv-ui-border);
211
+ --rv-search-input-color: var(--rv-ui-text);
212
+ --rv-search-input-icon-color: var(--rv-ui-text-muted);
213
+ --rv-search-input-placeholder-color: var(--rv-ui-text-muted);
214
+ --rv-search-input-focus-border: var(--rv-ui-accent);
215
+ // Progressive editors own their palette, even inside a differently themed host.
216
+ // Shared form controls and member lists must resolve this popup's surface.
217
+ --rv-control-bg: var(--rv-dropdown-menu-background);
218
+ --rv-control-border: var(--rv-dropdown-menu-border);
219
+ --rv-form-border: var(--rv-dropdown-menu-border);
220
+ font-family: inherit;
221
+ line-height: 1.5;
222
+ font-size: 13px;
223
+ &[data-theme^='dark'] {
224
+ --rv-dropdown-menu-background: var(--rv-ui-surface);
225
+ --rv-dropdown-menu-border: var(--rv-ui-border);
226
+ --rv-dropdown-menu-option-color: var(--rv-ui-text);
227
+ --rv-dropdown-container-hover-background: var(--rv-ui-surface-hover);
228
+ --pv-action-muted: var(--rv-ui-text-muted);
229
+ --pv-action-accent-text: color-mix(
230
+ in srgb,
231
+ var(--rv-ui-accent) 45%,
232
+ #{palettes.color('pivot-interface-mix', 'tint')}
233
+ );
234
+ --rv-search-input-bg: var(--rv-ui-surface-sunken);
235
+ --rv-search-input-border: var(--rv-ui-border);
236
+ --rv-search-input-color: var(--rv-ui-text);
237
+ --rv-search-input-icon-color: var(--rv-ui-text-muted);
238
+ --rv-search-input-placeholder-color: var(--rv-ui-text-muted);
239
+ --rv-search-input-focus-border: var(--rv-ui-accent);
240
+ }
241
+ }