@aceshooting/lyra-ui 9.1.1 → 10.0.1

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 (578) hide show
  1. package/CHANGELOG.md +597 -0
  2. package/custom-elements.json +1 -1
  3. package/dist/cli/migrate-wa.mjs +52 -0
  4. package/dist/cli/migration-contract.json +1 -1
  5. package/dist/components/agent-tools/activity-feed/activity-feed.class.js +1 -1
  6. package/dist/components/agent-tools/activity-feed/activity-feed.styles.js +0 -16
  7. package/dist/components/agent-tools/agent-eval-dashboard/agent-eval-dashboard.class.js +1 -1
  8. package/dist/components/agent-tools/agent-eval-dashboard/agent-eval-dashboard.styles.js +7 -5
  9. package/dist/components/agent-tools/agent-run/agent-run.class.js +2 -2
  10. package/dist/components/agent-tools/agent-run/agent-run.styles.js +0 -13
  11. package/dist/components/agent-tools/agent-trace/agent-trace.styles.js +7 -4
  12. package/dist/components/agent-tools/approval-queue/approval-queue.styles.js +7 -5
  13. package/dist/components/agent-tools/artifact-panel/artifact-panel.styles.js +0 -3
  14. package/dist/components/agent-tools/browser-frame/browser-frame.styles.js +3 -5
  15. package/dist/components/agent-tools/commit-card/commit-card.styles.js +0 -10
  16. package/dist/components/agent-tools/compare-panel/compare-panel.styles.js +11 -6
  17. package/dist/components/agent-tools/confirm-bar/confirm-bar.styles.js +0 -46
  18. package/dist/components/agent-tools/eval-dataset/eval-dataset.styles.js +0 -7
  19. package/dist/components/agent-tools/evaluation-run/evaluation-run.class.js +2 -2
  20. package/dist/components/agent-tools/prompt-studio/prompt-studio.styles.js +0 -15
  21. package/dist/components/agent-tools/result-card/result-card.styles.js +0 -7
  22. package/dist/components/agent-tools/result-card/result-field.styles.js +0 -5
  23. package/dist/components/agent-tools/schema-viewer/schema-viewer.styles.js +0 -3
  24. package/dist/components/agent-tools/span-waterfall/span-waterfall.styles.js +0 -15
  25. package/dist/components/agent-tools/stack-trace/stack-trace.styles.js +0 -20
  26. package/dist/components/agent-tools/subagent-panel/subagent-panel.class.js +2 -2
  27. package/dist/components/agent-tools/subagent-panel/subagent-panel.styles.js +0 -3
  28. package/dist/components/agent-tools/task-list/task-list.styles.js +0 -15
  29. package/dist/components/agent-tools/terminal/terminal.class.d.ts +11 -6
  30. package/dist/components/agent-tools/terminal/terminal.class.js +4 -4
  31. package/dist/components/agent-tools/terminal/terminal.styles.js +0 -46
  32. package/dist/components/agent-tools/test-results/test-results.class.js +2 -2
  33. package/dist/components/agent-tools/test-results/test-results.styles.js +0 -5
  34. package/dist/components/agent-tools/thinking-panel/thinking-panel.styles.js +0 -41
  35. package/dist/components/agent-tools/tool-approval-dialog/tool-approval-dialog.styles.js +0 -41
  36. package/dist/components/agent-tools/tool-call-chip/tool-call-chip.styles.js +0 -30
  37. package/dist/components/agent-tools/tool-param-form/tool-param-form.class.js +6 -6
  38. package/dist/components/agent-tools/tool-param-form/tool-param-form.styles.js +0 -5
  39. package/dist/components/agent-tools/tool-result-dialog/tool-result-dialog.styles.js +0 -20
  40. package/dist/components/agent-tools/tool-result-view/tool-result-view.styles.js +0 -4
  41. package/dist/components/agent-tools/tool-select-dialog/tool-select-dialog.styles.js +0 -21
  42. package/dist/components/agent-tools/trace-tree/trace-tree.styles.js +7 -31
  43. package/dist/components/charts/chart/box-plot.styles.js +0 -20
  44. package/dist/components/charts/chart/chart-colors.d.ts +1 -1
  45. package/dist/components/charts/chart/chart-colors.js +1 -1
  46. package/dist/components/charts/chart/chart-core-loader.d.ts +1 -0
  47. package/dist/components/charts/chart/chart-core-loader.js +1 -1
  48. package/dist/components/charts/chart/chart-feature-loader.d.ts +35 -0
  49. package/dist/components/charts/chart/chart-feature-loader.js +1 -1
  50. package/dist/components/charts/chart/chart.class.d.ts +93 -0
  51. package/dist/components/charts/chart/chart.class.js +3 -3
  52. package/dist/components/charts/chart/chart.styles.js +0 -27
  53. package/dist/components/charts/chart/lite-chart.class.d.ts +20 -1
  54. package/dist/components/charts/chart/lite-chart.class.js +4 -4
  55. package/dist/components/charts/chart/lite-chart.styles.js +0 -27
  56. package/dist/components/conversation/agent-workspace/agent-workspace.class.d.ts +20 -0
  57. package/dist/components/conversation/agent-workspace/agent-workspace.class.js +3 -1
  58. package/dist/components/conversation/agent-workspace/agent-workspace.styles.js +3 -0
  59. package/dist/components/conversation/audio-visualizer/audio-visualizer.styles.js +0 -7
  60. package/dist/components/conversation/branch-picker/branch-picker.styles.js +0 -3
  61. package/dist/components/conversation/chat-composer/chat-composer.styles.js +0 -51
  62. package/dist/components/conversation/chat-message/chat-message.styles.js +7 -35
  63. package/dist/components/conversation/chat-viewport/chat-viewport.class.js +1 -1
  64. package/dist/components/conversation/chat-viewport/chat-viewport.styles.js +0 -33
  65. package/dist/components/conversation/checkpoint/checkpoint.class.js +1 -1
  66. package/dist/components/conversation/checkpoint/checkpoint.styles.js +0 -3
  67. package/dist/components/conversation/code-block/code-block-shared.d.ts +5 -2
  68. package/dist/components/conversation/code-block/code-block.class.js +1 -1
  69. package/dist/components/conversation/code-block/code-block.styles.js +4 -95
  70. package/dist/components/conversation/code-block/code-loader.d.ts +11 -0
  71. package/dist/components/conversation/code-block/code-loader.js +1 -1
  72. package/dist/components/conversation/code-block/shiki-types.d.ts +12 -0
  73. package/dist/components/conversation/code-block/shiki-types.js +1 -1
  74. package/dist/components/conversation/conversation-item/conversation-item.styles.js +8 -54
  75. package/dist/components/conversation/generation-metrics/generation-metrics.class.js +2 -2
  76. package/dist/components/conversation/generation-metrics/generation-metrics.styles.js +0 -17
  77. package/dist/components/conversation/markdown/markdown-base.class.js +1 -1
  78. package/dist/components/conversation/markdown/markdown.styles.js +0 -41
  79. package/dist/components/conversation/message-actions/message-actions.styles.js +0 -3
  80. package/dist/components/conversation/message-feedback/message-feedback.styles.js +0 -35
  81. package/dist/components/conversation/message-parts/message-parts.class.d.ts +1 -1
  82. package/dist/components/conversation/message-parts/message-parts.styles.js +0 -5
  83. package/dist/components/conversation/model-select/model-select.class.js +3 -3
  84. package/dist/components/conversation/model-select/model-select.styles.js +12 -47
  85. package/dist/components/conversation/model-settings-panel/model-settings-panel.styles.js +0 -6
  86. package/dist/components/conversation/prompt-input/prompt-input.class.d.ts +3 -0
  87. package/dist/components/conversation/prompt-input/prompt-input.styles.js +0 -10
  88. package/dist/components/conversation/push-to-talk/push-to-talk.styles.js +0 -8
  89. package/dist/components/conversation/selection-toolbar/selection-toolbar.styles.js +1 -11
  90. package/dist/components/conversation/stream-status/stream-status.styles.js +0 -16
  91. package/dist/components/conversation/streaming-text/streaming-text.styles.js +0 -15
  92. package/dist/components/conversation/suggestion-chips/suggestion-chips.styles.js +0 -5
  93. package/dist/components/conversation/thread-list/thread-list.styles.js +0 -23
  94. package/dist/components/conversation/transcript-feed/transcript-feed.class.d.ts +16 -4
  95. package/dist/components/conversation/transcript-feed/transcript-feed.class.js +1 -1
  96. package/dist/components/conversation/transcript-feed/transcript-feed.styles.js +0 -1
  97. package/dist/components/conversation/typing-indicator/typing-indicator.styles.js +0 -23
  98. package/dist/components/conversation/usage-badge/usage-badge.styles.js +0 -3
  99. package/dist/components/conversation/voice-picker/voice-picker.class.js +3 -3
  100. package/dist/components/conversation/voice-picker/voice-picker.styles.js +9 -29
  101. package/dist/components/conversation/widget-renderer/resolve.d.ts +2 -0
  102. package/dist/components/conversation/widget-renderer/resolve.js +1 -1
  103. package/dist/components/data/calendar/calendar.class.d.ts +15 -2
  104. package/dist/components/data/calendar/calendar.class.js +2 -2
  105. package/dist/components/data/calendar/calendar.styles.js +2 -28
  106. package/dist/components/data/condition-builder/condition-builder.class.d.ts +10 -6
  107. package/dist/components/data/condition-builder/condition-builder.class.js +2 -2
  108. package/dist/components/data/condition-builder/condition-builder.styles.js +0 -6
  109. package/dist/components/data/context-meter/context-meter.styles.js +0 -24
  110. package/dist/components/data/data-grid/data-grid.class.js +3 -3
  111. package/dist/components/data/data-grid/data-grid.styles.js +0 -22
  112. package/dist/components/data/document-library/document-library.class.js +2 -2
  113. package/dist/components/data/document-library/document-library.styles.js +0 -4
  114. package/dist/components/data/env-list/env-list.class.js +1 -1
  115. package/dist/components/data/env-list/env-list.styles.js +7 -4
  116. package/dist/components/data/file-tree/file-tree.class.d.ts +12 -0
  117. package/dist/components/data/flow-canvas/flow-canvas.styles.js +12 -19
  118. package/dist/components/data/flow-controls/flow-controls.class.js +2 -2
  119. package/dist/components/data/flow-controls/flow-controls.styles.js +3 -36
  120. package/dist/components/data/flow-minimap/flow-minimap.class.js +1 -1
  121. package/dist/components/data/flow-minimap/flow-minimap.styles.js +0 -9
  122. package/dist/components/data/flow-node/flow-node.styles.js +0 -23
  123. package/dist/components/data/flow-run-status/flow-run-status.class.js +1 -1
  124. package/dist/components/data/flow-run-status/flow-run-status.styles.js +0 -7
  125. package/dist/components/data/graph-query-builder/graph-query-builder.class.d.ts +0 -7
  126. package/dist/components/data/graph-query-builder/graph-query-builder.class.js +1 -1
  127. package/dist/components/data/graph-query-builder/graph-query-builder.styles.js +0 -10
  128. package/dist/components/data/heatmap/heatmap-scale.d.ts +20 -0
  129. package/dist/components/data/heatmap/heatmap-scale.js +1 -1
  130. package/dist/components/data/heatmap/heatmap.class.d.ts +84 -1
  131. package/dist/components/data/heatmap/heatmap.class.js +2 -2
  132. package/dist/components/data/heatmap/heatmap.styles.js +0 -54
  133. package/dist/components/data/pagination/pagination.styles.js +23 -46
  134. package/dist/components/data/sequence-strip/sequence-strip.class.d.ts +34 -1
  135. package/dist/components/data/sequence-strip/sequence-strip.class.js +5 -2
  136. package/dist/components/data/sequence-strip/sequence-strip.styles.js +14 -20
  137. package/dist/components/data/sparkline/sparkline.class.js +1 -1
  138. package/dist/components/data/stat/stat.styles.js +0 -67
  139. package/dist/components/data/table/table.class.d.ts +42 -3
  140. package/dist/components/data/table/table.class.js +4 -4
  141. package/dist/components/data/table/table.styles.js +20 -91
  142. package/dist/components/data/timeline/timeline-item.styles.js +0 -30
  143. package/dist/components/data/timeline/timeline.class.d.ts +89 -1
  144. package/dist/components/data/timeline/timeline.class.js +2 -2
  145. package/dist/components/data/timeline/timeline.styles.js +111 -31
  146. package/dist/components/data/tree/tree-item.styles.js +1 -28
  147. package/dist/components/data/tree/tree.class.js +2 -2
  148. package/dist/components/data/tree/tree.styles.js +0 -6
  149. package/dist/components/data/word-cloud/word-cloud.styles.js +0 -5
  150. package/dist/components/forms/button/button.class.js +1 -1
  151. package/dist/components/forms/button/button.styles.js +0 -105
  152. package/dist/components/forms/checkbox/checkbox.class.d.ts +3 -0
  153. package/dist/components/forms/checkbox/checkbox.class.js +1 -1
  154. package/dist/components/forms/checkbox/checkbox.styles.js +0 -39
  155. package/dist/components/forms/checkbox-group/checkbox-group.class.d.ts +21 -2
  156. package/dist/components/forms/checkbox-group/checkbox-group.class.js +1 -1
  157. package/dist/components/forms/checkbox-group/checkbox-group.styles.js +0 -18
  158. package/dist/components/forms/code-editor/code-editor.styles.js +0 -30
  159. package/dist/components/forms/color-picker/color-picker.class.js +2 -2
  160. package/dist/components/forms/color-picker/color-picker.styles.js +0 -69
  161. package/dist/components/forms/combobox/combobox.class.js +2 -2
  162. package/dist/components/forms/combobox/combobox.styles.js +22 -111
  163. package/dist/components/forms/combobox/option.styles.js +7 -1
  164. package/dist/components/forms/date-picker/date-input.class.js +1 -1
  165. package/dist/components/forms/date-picker/date-input.styles.js +12 -67
  166. package/dist/components/forms/date-picker/date-picker.class.d.ts +1 -0
  167. package/dist/components/forms/date-picker/date-picker.class.js +22 -20
  168. package/dist/components/forms/date-picker/date-picker.styles.js +36 -29
  169. package/dist/components/forms/emoji-picker/emoji-data-loader.d.ts +6 -3
  170. package/dist/components/forms/emoji-picker/emoji-data-loader.js +1 -1
  171. package/dist/components/forms/emoji-picker/emoji-picker.class.d.ts +8 -1
  172. package/dist/components/forms/emoji-picker/emoji-picker.class.js +1 -1
  173. package/dist/components/forms/emoji-picker/emoji-picker.styles.js +3 -41
  174. package/dist/components/forms/icon-button/icon-button.class.js +1 -1
  175. package/dist/components/forms/icon-button/icon-button.styles.js +0 -16
  176. package/dist/components/forms/input/input.styles.js +0 -54
  177. package/dist/components/forms/input/number-input.styles.d.ts +4 -5
  178. package/dist/components/forms/input/number-input.styles.js +0 -11
  179. package/dist/components/forms/input/time-input-shared.d.ts +11 -0
  180. package/dist/components/forms/input/time-input-shared.js +1 -1
  181. package/dist/components/forms/input/time-input.class.d.ts +11 -2
  182. package/dist/components/forms/input/time-input.class.js +1 -1
  183. package/dist/components/forms/input/time-input.styles.js +0 -6
  184. package/dist/components/forms/locale-picker/locale-picker.class.js +2 -2
  185. package/dist/components/forms/locale-picker/locale-picker.styles.js +1 -26
  186. package/dist/components/forms/otp-input/otp-input.class.js +3 -3
  187. package/dist/components/forms/otp-input/otp-input.styles.js +0 -16
  188. package/dist/components/forms/phone-input/phone-input.class.d.ts +9 -1
  189. package/dist/components/forms/phone-input/phone-input.class.js +2 -2
  190. package/dist/components/forms/phone-input/phone-input.styles.js +0 -37
  191. package/dist/components/forms/radio/radio-button.styles.js +1 -30
  192. package/dist/components/forms/radio/radio-group.styles.js +0 -4
  193. package/dist/components/forms/radio/radio.styles.js +0 -44
  194. package/dist/components/forms/rubric-form/rubric-form.styles.js +0 -5
  195. package/dist/components/forms/select/select.class.js +1 -1
  196. package/dist/components/forms/select/select.styles.js +14 -114
  197. package/dist/components/forms/slider/slider.styles.js +0 -55
  198. package/dist/components/forms/swatch-picker/swatch-picker.class.d.ts +0 -11
  199. package/dist/components/forms/swatch-picker/swatch-picker.class.js +2 -2
  200. package/dist/components/forms/swatch-picker/swatch-picker.styles.js +0 -77
  201. package/dist/components/forms/switch/switch.class.d.ts +3 -0
  202. package/dist/components/forms/switch/switch.class.js +1 -1
  203. package/dist/components/forms/switch/switch.styles.js +0 -37
  204. package/dist/components/forms/textarea/textarea.styles.js +0 -28
  205. package/dist/components/forms/time-range/time-range.styles.js +12 -84
  206. package/dist/components/forms/token-input/token-input.class.d.ts +23 -9
  207. package/dist/components/forms/token-input/token-input.class.js +1 -1
  208. package/dist/components/forms/token-input/token-input.styles.js +1 -54
  209. package/dist/components/layout/app-rail/app-rail-item.class.js +2 -2
  210. package/dist/components/layout/app-rail/app-rail-item.styles.js +0 -13
  211. package/dist/components/layout/app-rail/app-rail.class.d.ts +5 -0
  212. package/dist/components/layout/app-rail/app-rail.class.js +1 -1
  213. package/dist/components/layout/app-rail/app-rail.styles.js +0 -46
  214. package/dist/components/layout/button-group/button-group.styles.js +0 -6
  215. package/dist/components/layout/card/card.class.d.ts +12 -0
  216. package/dist/components/layout/card/card.styles.js +3 -11
  217. package/dist/components/layout/carousel/carousel.styles.js +0 -1
  218. package/dist/components/layout/command-palette/command-palette.class.d.ts +8 -0
  219. package/dist/components/layout/command-palette/command-palette.class.js +3 -1
  220. package/dist/components/layout/command-palette/command-palette.styles.js +1 -13
  221. package/dist/components/layout/control-group/control-group.styles.js +0 -7
  222. package/dist/components/layout/dashboard-grid/dashboard-grid.styles.js +6 -25
  223. package/dist/components/layout/details/accordion.class.d.ts +13 -0
  224. package/dist/components/layout/details/accordion.class.js +1 -1
  225. package/dist/components/layout/details/details.class.js +1 -1
  226. package/dist/components/layout/details/details.styles.js +0 -12
  227. package/dist/components/layout/dock-panel/dock-panel.styles.js +0 -45
  228. package/dist/components/layout/drilldown-panel/drilldown-panel.class.d.ts +2 -0
  229. package/dist/components/layout/drilldown-panel/drilldown-panel.class.js +2 -2
  230. package/dist/components/layout/drilldown-panel/drilldown-panel.styles.js +0 -4
  231. package/dist/components/layout/filter-bar/filter-bar.class.js +1 -1
  232. package/dist/components/layout/filter-bar/filter-bar.styles.js +0 -9
  233. package/dist/components/layout/menu/menu-item.class.d.ts +5 -0
  234. package/dist/components/layout/menu/menu-item.class.js +1 -1
  235. package/dist/components/layout/menu/menu-item.styles.js +0 -49
  236. package/dist/components/layout/menu/menu-label.styles.js +0 -2
  237. package/dist/components/layout/menu/menu.styles.js +0 -18
  238. package/dist/components/layout/multi-split/multi-split.styles.js +0 -63
  239. package/dist/components/layout/page/page.class.d.ts +4 -0
  240. package/dist/components/layout/page/page.class.js +1 -1
  241. package/dist/components/layout/reorder-list/reorder-item.styles.js +0 -4
  242. package/dist/components/layout/responsive-panel/responsive-panel.styles.js +0 -27
  243. package/dist/components/layout/scroller/scroller.styles.js +0 -20
  244. package/dist/components/layout/segmented/segmented.class.d.ts +7 -1
  245. package/dist/components/layout/segmented/segmented.class.js +1 -1
  246. package/dist/components/layout/segmented/segmented.styles.js +69 -37
  247. package/dist/components/layout/split-panel/split-panel.styles.js +1 -7
  248. package/dist/components/layout/stepper/stepper.class.d.ts +8 -1
  249. package/dist/components/layout/stepper/stepper.class.js +1 -1
  250. package/dist/components/layout/stepper/stepper.styles.js +140 -41
  251. package/dist/components/layout/tab-group/tab-group.class.d.ts +4 -1
  252. package/dist/components/layout/tab-group/tab-group.styles.js +9 -75
  253. package/dist/components/layout/tab-group/tab.styles.js +0 -2
  254. package/dist/components/layout/virtual-list/virtual-list.class.d.ts +4 -4
  255. package/dist/components/layout/virtual-list/virtual-list.class.js +1 -1
  256. package/dist/components/layout/virtual-list/virtual-list.styles.js +0 -68
  257. package/dist/components/layout/widget/widget.class.d.ts +5 -1
  258. package/dist/components/layout/widget/widget.class.js +1 -1
  259. package/dist/components/layout/widget/widget.styles.js +97 -40
  260. package/dist/components/media/animated-image/animated-image.class.d.ts +3 -0
  261. package/dist/components/media/animated-image/animated-image.class.js +1 -1
  262. package/dist/components/media/animated-image/animated-image.styles.js +0 -28
  263. package/dist/components/media/attachment-chip/attachment-chip.class.d.ts +1 -1
  264. package/dist/components/media/attachment-chip/attachment-chip.class.js +1 -1
  265. package/dist/components/media/attachment-chip/attachment-chip.styles.js +0 -31
  266. package/dist/components/media/attachment-trigger/attachment-trigger.class.js +3 -3
  267. package/dist/components/media/attachment-trigger/attachment-trigger.styles.js +0 -40
  268. package/dist/components/media/av-player/av-player.class.d.ts +5 -6
  269. package/dist/components/media/av-player/av-player.class.js +1 -1
  270. package/dist/components/media/av-player/av-player.styles.js +0 -45
  271. package/dist/components/media/avatar/avatar.styles.js +3 -16
  272. package/dist/components/media/file-icon/file-icon.class.d.ts +1 -2
  273. package/dist/components/media/file-icon/file-icon.class.js +1 -1
  274. package/dist/components/media/file-input/file-input.class.d.ts +12 -0
  275. package/dist/components/media/file-input/file-input.styles.js +3 -24
  276. package/dist/components/media/flag/flag.class.d.ts +20 -0
  277. package/dist/components/media/flag/flag.class.js +4 -2
  278. package/dist/components/media/flag/flag.styles.js +7 -1
  279. package/dist/components/media/flag/language-map.d.ts +10 -0
  280. package/dist/components/media/flag/language-map.js +1 -1
  281. package/dist/components/media/image-comparer/image-comparer.styles.js +4 -33
  282. package/dist/components/media/image-viewer/image-viewer.class.js +0 -2
  283. package/dist/components/media/image-viewer/image-viewer.styles.js +7 -27
  284. package/dist/components/media/lightbox/lightbox.class.js +0 -2
  285. package/dist/components/media/lightbox/lightbox.styles.js +0 -21
  286. package/dist/components/media/map/map-loader.d.ts +19 -1
  287. package/dist/components/media/map/map-loader.js +1 -1
  288. package/dist/components/media/map/map.class.d.ts +141 -1
  289. package/dist/components/media/map/map.class.js +15 -3
  290. package/dist/components/media/map/map.styles.js +20 -17
  291. package/dist/components/media/media-card/media-card.class.d.ts +14 -3
  292. package/dist/components/media/media-card/media-card.class.js +1 -1
  293. package/dist/components/media/media-card/media-card.styles.js +2 -28
  294. package/dist/components/media/pan-zoom/pan-zoom.styles.js +0 -3
  295. package/dist/components/media/qr-code/qr-code.class.d.ts +3 -2
  296. package/dist/components/media/qr-code/qr-code.class.js +2 -2
  297. package/dist/components/media/qr-code/qr-code.styles.js +0 -3
  298. package/dist/components/media/sequence-playback/sequence-playback.class.d.ts +2 -0
  299. package/dist/components/media/sequence-playback/sequence-playback.class.js +2 -1
  300. package/dist/components/media/sequence-playback/sequence-playback.styles.js +0 -19
  301. package/dist/components/media/video/video.class.d.ts +23 -2
  302. package/dist/components/media/video/video.class.js +3 -3
  303. package/dist/components/media/video/video.styles.js +4 -2
  304. package/dist/components/media/zoomable-frame/zoomable-frame.class.d.ts +3 -2
  305. package/dist/components/media/zoomable-frame/zoomable-frame.class.js +2 -2
  306. package/dist/components/media/zoomable-frame/zoomable-frame.styles.js +0 -5
  307. package/dist/components/overlays/alert/alert.styles.js +4 -2
  308. package/dist/components/overlays/badge/badge.styles.js +4 -48
  309. package/dist/components/overlays/badge/tag.styles.js +0 -14
  310. package/dist/components/overlays/callout/callout.styles.js +0 -11
  311. package/dist/components/overlays/chip/chip-group.styles.js +0 -18
  312. package/dist/components/overlays/chip/chip.styles.js +6 -69
  313. package/dist/components/overlays/dialog/confirm.d.ts +1 -4
  314. package/dist/components/overlays/dialog/confirm.js +1 -1
  315. package/dist/components/overlays/dialog/dialog.class.d.ts +12 -9
  316. package/dist/components/overlays/dialog/dialog.class.js +1 -1
  317. package/dist/components/overlays/dialog/dialog.styles.js +0 -43
  318. package/dist/components/overlays/drawer/drawer.class.d.ts +2 -2
  319. package/dist/components/overlays/drawer/drawer.styles.js +0 -9
  320. package/dist/components/overlays/empty/empty.styles.js +0 -12
  321. package/dist/components/overlays/kbd/kbd.styles.js +0 -8
  322. package/dist/components/overlays/overlay/dropdown.class.d.ts +1 -6
  323. package/dist/components/overlays/overlay/dropdown.class.js +2 -2
  324. package/dist/components/overlays/overlay/overlay.styles.js +0 -28
  325. package/dist/components/overlays/overlay/popover.class.d.ts +9 -1
  326. package/dist/components/overlays/overlay/popover.class.js +2 -2
  327. package/dist/components/overlays/overlay/tooltip.class.d.ts +10 -0
  328. package/dist/components/overlays/overlay/tooltip.class.js +1 -1
  329. package/dist/components/overlays/popup/popup.class.d.ts +1 -0
  330. package/dist/components/overlays/popup/popup.class.js +1 -1
  331. package/dist/components/overlays/popup/popup.styles.js +0 -15
  332. package/dist/components/overlays/progress/progress-ring.class.d.ts +9 -1
  333. package/dist/components/overlays/progress/progress-ring.class.js +3 -3
  334. package/dist/components/overlays/progress/progress.styles.js +0 -21
  335. package/dist/components/overlays/rating/rating.styles.js +0 -25
  336. package/dist/components/overlays/skeleton/skeleton.styles.js +0 -4
  337. package/dist/components/overlays/spinner/spinner.styles.js +0 -3
  338. package/dist/components/overlays/toast/toast-item.styles.js +3 -45
  339. package/dist/components/retrieval/chunk-inspector/chunk-inspector.styles.js +0 -35
  340. package/dist/components/retrieval/citation-badge/citation-badge.class.d.ts +2 -2
  341. package/dist/components/retrieval/citation-badge/citation-badge.class.js +3 -3
  342. package/dist/components/retrieval/citation-badge/citation-badge.styles.js +0 -20
  343. package/dist/components/retrieval/claim-evidence/claim-evidence.styles.js +0 -8
  344. package/dist/components/retrieval/community-card/community-card.class.d.ts +1 -0
  345. package/dist/components/retrieval/community-card/community-card.styles.js +0 -6
  346. package/dist/components/retrieval/embedding-explorer/embedding-explorer.styles.js +8 -12
  347. package/dist/components/retrieval/entity-card/entity-card.class.d.ts +4 -3
  348. package/dist/components/retrieval/entity-card/entity-card.class.js +1 -1
  349. package/dist/components/retrieval/entity-card/entity-card.styles.js +0 -12
  350. package/dist/components/retrieval/entity-chip/entity-chip.class.d.ts +10 -4
  351. package/dist/components/retrieval/entity-chip/entity-chip.class.js +3 -3
  352. package/dist/components/retrieval/entity-chip/entity-chip.styles.js +6 -9
  353. package/dist/components/retrieval/entity-dossier/entity-dossier.class.d.ts +19 -5
  354. package/dist/components/retrieval/graph/graph.class.d.ts +5 -0
  355. package/dist/components/retrieval/graph/graph.class.js +1 -1
  356. package/dist/components/retrieval/graph/graph.styles.js +0 -30
  357. package/dist/components/retrieval/graph-legend/graph-legend.styles.js +0 -3
  358. package/dist/components/retrieval/ingestion-queue/ingestion-queue.styles.js +0 -25
  359. package/dist/components/retrieval/knowledge-base-admin/knowledge-base-admin.class.d.ts +2 -0
  360. package/dist/components/retrieval/knowledge-base-admin/knowledge-base-admin.styles.js +0 -7
  361. package/dist/components/retrieval/knowledge-graph-explorer/knowledge-graph-explorer.class.d.ts +20 -6
  362. package/dist/components/retrieval/knowledge-graph-explorer/knowledge-graph-explorer.class.js +2 -2
  363. package/dist/components/retrieval/knowledge-graph-explorer/knowledge-graph-explorer.styles.js +0 -16
  364. package/dist/components/retrieval/mind-map/mind-map.class.d.ts +5 -3
  365. package/dist/components/retrieval/mind-map/mind-map.class.js +1 -1
  366. package/dist/components/retrieval/mind-map/mind-map.styles.js +0 -2
  367. package/dist/components/retrieval/neighbor-list/neighbor-list.class.d.ts +3 -2
  368. package/dist/components/retrieval/neighbor-list/neighbor-list.class.js +1 -1
  369. package/dist/components/retrieval/neighbor-list/neighbor-list.styles.js +0 -30
  370. package/dist/components/retrieval/node-palette/node-palette.styles.js +0 -11
  371. package/dist/components/retrieval/path-strip/path-strip.styles.js +0 -10
  372. package/dist/components/retrieval/provenance-panel/provenance-panel.class.d.ts +12 -3
  373. package/dist/components/retrieval/provenance-panel/provenance-panel.styles.js +0 -2
  374. package/dist/components/retrieval/rag-eval-dashboard/rag-eval-dashboard.class.d.ts +3 -2
  375. package/dist/components/retrieval/rag-eval-dashboard/rag-eval-dashboard.class.js +2 -2
  376. package/dist/components/retrieval/retrieval-results/retrieval-results.styles.js +0 -28
  377. package/dist/components/retrieval/retrieval-search/retrieval-search.styles.js +0 -4
  378. package/dist/components/retrieval/retrieval-trace/retrieval-trace.styles.js +0 -2
  379. package/dist/components/retrieval/source-card/source-card.styles.js +0 -13
  380. package/dist/components/retrieval/source-list/source-list.styles.js +0 -7
  381. package/dist/components/retrieval/source-picker/source-picker.styles.js +0 -7
  382. package/dist/components/utility/copy-button/copy-button.styles.js +0 -10
  383. package/dist/components/utility/diff-view/diff-view.styles.js +0 -14
  384. package/dist/components/utility/export-button/export-button.styles.js +0 -22
  385. package/dist/components/utility/icon/icon.styles.js +0 -6
  386. package/dist/components/utility/json-viewer/json-viewer.styles.js +2 -48
  387. package/dist/components/utility/known-date/known-date.class.d.ts +7 -3
  388. package/dist/components/utility/known-date/known-date.styles.js +10 -51
  389. package/dist/components/utility/live-region/live-region.styles.js +0 -4
  390. package/dist/components/utility/mention-popover/mention-popover.styles.js +0 -25
  391. package/dist/components/utility/poll-status/poll-status.styles.js +0 -4
  392. package/dist/components/utility/random-content/random-content.class.d.ts +22 -0
  393. package/dist/components/utility/random-content/random-content.class.js +3 -2
  394. package/dist/components/utility/random-content/random-content.styles.js +6 -13
  395. package/dist/components/utility/tour/tour.class.d.ts +4 -2
  396. package/dist/components/utility/tour/tour.class.js +3 -3
  397. package/dist/components/utility/tour/tour.styles.js +0 -13
  398. package/dist/components/utility/visually-hidden/visually-hidden.styles.js +0 -5
  399. package/dist/components/viewers/archive-viewer/archive-viewer.class.js +1 -1
  400. package/dist/components/viewers/archive-viewer/archive-viewer.styles.d.ts +2 -2
  401. package/dist/components/viewers/archive-viewer/archive-viewer.styles.js +0 -10
  402. package/dist/components/viewers/csv-viewer/csv-viewer.class.js +1 -1
  403. package/dist/components/viewers/csv-viewer/csv-viewer.styles.js +0 -19
  404. package/dist/components/viewers/dataset-viewer/dataset-viewer.class.js +1 -1
  405. package/dist/components/viewers/dataset-viewer/dataset-viewer.styles.js +0 -15
  406. package/dist/components/viewers/document-compare/document-compare.styles.js +0 -3
  407. package/dist/components/viewers/document-preview/document-preview.styles.js +0 -25
  408. package/dist/components/viewers/document-viewer/document-viewer.class.d.ts +2 -1
  409. package/dist/components/viewers/document-viewer/document-viewer.class.js +1 -1
  410. package/dist/components/viewers/document-viewer/document-viewer.styles.js +0 -5
  411. package/dist/components/viewers/docx-viewer/docx-viewer.styles.js +0 -17
  412. package/dist/components/viewers/ebook-viewer/ebook-viewer.styles.js +0 -4
  413. package/dist/components/viewers/email-viewer/email-viewer.styles.js +0 -7
  414. package/dist/components/viewers/geojson-view/geojson-view.styles.js +0 -5
  415. package/dist/components/viewers/highlight-layer/highlight-layer.styles.js +0 -3
  416. package/dist/components/viewers/notebook-viewer/notebook-viewer.class.js +1 -1
  417. package/dist/components/viewers/notebook-viewer/notebook-viewer.styles.js +0 -38
  418. package/dist/components/viewers/page-rail/page-rail.class.js +1 -1
  419. package/dist/components/viewers/page-rail/page-rail.styles.js +0 -13
  420. package/dist/components/viewers/pdf-viewer/pdf-loader.d.ts +13 -2
  421. package/dist/components/viewers/pdf-viewer/pdf-loader.js +1 -1
  422. package/dist/components/viewers/pdf-viewer/pdf-viewer.class.d.ts +32 -2
  423. package/dist/components/viewers/pdf-viewer/pdf-viewer.class.js +4 -4
  424. package/dist/components/viewers/pdf-viewer/pdf-viewer.styles.js +1 -27
  425. package/dist/components/viewers/pptx-viewer/pptx-viewer.styles.js +0 -3
  426. package/dist/components/viewers/spreadsheet-viewer/spreadsheet-viewer.class.js +1 -1
  427. package/dist/components/viewers/spreadsheet-viewer/spreadsheet-viewer.styles.js +0 -14
  428. package/dist/components/viewers/svg-viewer/svg-viewer.styles.js +0 -7
  429. package/dist/components/viewers/xml-viewer/xml-viewer.styles.js +2 -24
  430. package/dist/custom-elements-jsx.d.ts +56 -37
  431. package/dist/events.d.ts +43 -33
  432. package/dist/internal/agent-status-variants.d.ts +18 -0
  433. package/dist/internal/agent-status-variants.js +1 -0
  434. package/dist/internal/announcer.d.ts +8 -3
  435. package/dist/internal/announcer.js +1 -1
  436. package/dist/internal/autoloader-manifest.js +1 -1
  437. package/dist/internal/canvas-color.d.ts +16 -0
  438. package/dist/internal/canvas-color.js +1 -1
  439. package/dist/internal/catalog-picker.d.ts +0 -1
  440. package/dist/internal/catalog-picker.js +1 -1
  441. package/dist/internal/default-strings.generated.d.ts +1 -0
  442. package/dist/internal/default-strings.generated.js +1 -1
  443. package/dist/internal/dev-mode-attribute-warning.d.ts +27 -4
  444. package/dist/internal/dev-mode-attribute-warning.js +1 -1
  445. package/dist/internal/localization-runtime.js +1 -1
  446. package/dist/internal/localization-types.d.ts +1 -1
  447. package/dist/internal/localization.js +1 -1
  448. package/dist/internal/lyra-element.d.ts +13 -0
  449. package/dist/internal/lyra-element.js +1 -1
  450. package/dist/internal/media-controller.js +1 -1
  451. package/dist/internal/package-metadata.d.ts +1 -1
  452. package/dist/internal/package-metadata.js +1 -1
  453. package/dist/internal/scroll-overflow.d.ts +35 -13
  454. package/dist/internal/scroll-overflow.js +1 -1
  455. package/dist/internal/sizes.styles.js +0 -2
  456. package/dist/internal/specialist-tokens.styles.js +6 -11
  457. package/dist/internal/text-highlights.d.ts +4 -1
  458. package/dist/internal/text-highlights.js +1 -1
  459. package/dist/internal/tokens/palette.styles.js +0 -15
  460. package/dist/internal/tokens.styles.js +19 -113
  461. package/dist/lyra.d.ts +8 -5
  462. package/dist/styles/reservations.css +82 -0
  463. package/dist/svelte.d.ts +56 -37
  464. package/dist/translations/ar.js +1 -1
  465. package/dist/translations/de.js +1 -1
  466. package/dist/translations/es.js +1 -1
  467. package/dist/translations/fa.js +1 -1
  468. package/dist/translations/fr.js +1 -1
  469. package/dist/translations/he.js +1 -1
  470. package/dist/translations/ja.js +1 -1
  471. package/dist/translations/pt-BR.js +1 -1
  472. package/dist/translations/ru.js +1 -1
  473. package/dist/translations/zh-CN.js +1 -1
  474. package/dist/vue.d.ts +56 -37
  475. package/llms/components/lr-accordion-item.md +12 -3
  476. package/llms/components/lr-accordion.md +11 -2
  477. package/llms/components/lr-agent-eval-dashboard.md +1 -1
  478. package/llms/components/lr-agent-trace.md +3 -1
  479. package/llms/components/lr-agent-workspace.md +20 -0
  480. package/llms/components/lr-artifact-panel.md +10 -4
  481. package/llms/components/lr-attachment-chip.md +7 -4
  482. package/llms/components/lr-attachment-trigger.md +7 -4
  483. package/llms/components/lr-av-player.md +3 -1
  484. package/llms/components/lr-avatar.md +6 -6
  485. package/llms/components/lr-bar-chart.md +4 -3
  486. package/llms/components/lr-box-plot.md +1 -1
  487. package/llms/components/lr-browser-frame.md +7 -3
  488. package/llms/components/lr-bubble-chart.md +4 -3
  489. package/llms/components/lr-calendar.md +9 -2
  490. package/llms/components/lr-card.md +24 -0
  491. package/llms/components/lr-chart.md +32 -8
  492. package/llms/components/lr-chat-viewport.md +7 -2
  493. package/llms/components/lr-checkbox-group.md +13 -5
  494. package/llms/components/lr-checkbox.md +5 -2
  495. package/llms/components/lr-checkpoint.md +6 -2
  496. package/llms/components/lr-combobox.md +5 -2
  497. package/llms/components/lr-command-palette.md +4 -1
  498. package/llms/components/lr-confirm-bar.md +7 -3
  499. package/llms/components/lr-context-meter.md +12 -11
  500. package/llms/components/lr-conversation-item.md +7 -4
  501. package/llms/components/lr-details.md +11 -2
  502. package/llms/components/lr-dialog.md +15 -10
  503. package/llms/components/lr-dock-panel.md +7 -10
  504. package/llms/components/lr-document-preview.md +6 -1
  505. package/llms/components/lr-document-viewer.md +3 -2
  506. package/llms/components/lr-doughnut-chart.md +4 -3
  507. package/llms/components/lr-drawer.md +3 -3
  508. package/llms/components/lr-entity-card.md +3 -3
  509. package/llms/components/lr-entity-chip.md +1 -1
  510. package/llms/components/lr-entity-dossier.md +4 -1
  511. package/llms/components/lr-file-input.md +2 -2
  512. package/llms/components/lr-flag.md +20 -5
  513. package/llms/components/lr-heatmap.md +28 -0
  514. package/llms/components/lr-histogram.md +3 -1
  515. package/llms/components/lr-icon.md +1 -1
  516. package/llms/components/lr-json-schema-viewer.md +2 -1
  517. package/llms/components/lr-knowledge-graph-explorer.md +8 -3
  518. package/llms/components/lr-known-date.md +4 -2
  519. package/llms/components/lr-line-chart.md +4 -3
  520. package/llms/components/lr-lite-chart.md +16 -6
  521. package/llms/components/lr-map.md +72 -8
  522. package/llms/components/lr-markdown-core.md +3 -2
  523. package/llms/components/lr-media-card.md +28 -12
  524. package/llms/components/lr-message-parts.md +2 -1
  525. package/llms/components/lr-model-select.md +9 -10
  526. package/llms/components/lr-model-settings-panel.md +9 -9
  527. package/llms/components/lr-neighbor-list.md +1 -1
  528. package/llms/components/lr-notebook-viewer.md +6 -3
  529. package/llms/components/lr-option.md +5 -2
  530. package/llms/components/lr-pdf-viewer.md +62 -2
  531. package/llms/components/lr-pie-chart.md +4 -3
  532. package/llms/components/lr-polar-area-chart.md +4 -3
  533. package/llms/components/lr-popover.md +5 -0
  534. package/llms/components/lr-progress-ring.md +8 -1
  535. package/llms/components/lr-prompt-studio.md +1 -1
  536. package/llms/components/lr-provenance-panel.md +4 -2
  537. package/llms/components/lr-qr-code.md +1 -1
  538. package/llms/components/lr-radar-chart.md +4 -3
  539. package/llms/components/lr-rag-eval-dashboard.md +2 -2
  540. package/llms/components/lr-random-content.md +13 -0
  541. package/llms/components/lr-reorder-item.md +6 -1
  542. package/llms/components/lr-reorder-list.md +6 -1
  543. package/llms/components/lr-responsive-panel.md +11 -7
  544. package/llms/components/lr-scatter-chart.md +4 -3
  545. package/llms/components/lr-sequence-strip.md +16 -2
  546. package/llms/components/lr-slider.md +12 -5
  547. package/llms/components/lr-sparkline.md +1 -1
  548. package/llms/components/lr-suggestion-chips.md +7 -2
  549. package/llms/components/lr-swatch-picker.md +5 -5
  550. package/llms/components/lr-switch.md +5 -2
  551. package/llms/components/lr-table.md +30 -4
  552. package/llms/components/lr-terminal.md +3 -1
  553. package/llms/components/lr-thread-list.md +8 -8
  554. package/llms/components/lr-time-input.md +6 -1
  555. package/llms/components/lr-timeline-item.md +24 -0
  556. package/llms/components/lr-timeline.md +25 -1
  557. package/llms/components/lr-token-input.md +7 -2
  558. package/llms/components/lr-tool-approval-dialog.md +7 -8
  559. package/llms/components/lr-tool-call-chip.md +5 -1
  560. package/llms/components/lr-tool-param-form.md +14 -12
  561. package/llms/components/lr-tool-result-dialog.md +11 -9
  562. package/llms/components/lr-tool-result-view.md +7 -6
  563. package/llms/components/lr-tool-select-dialog.md +18 -16
  564. package/llms/components/lr-trace-tree.md +3 -1
  565. package/llms/components/lr-usage-badge.md +4 -1
  566. package/llms/components/lr-video-playlist.md +1 -1
  567. package/llms/components/lr-virtual-list.md +22 -14
  568. package/llms/components/lr-voice-picker.md +8 -5
  569. package/llms/components/lr-widget-renderer.md +3 -3
  570. package/llms/components/lr-widget.md +1 -1
  571. package/llms/components/lr-word-cloud.md +6 -2
  572. package/llms/peers.md +12 -2
  573. package/llms/shared.md +70 -2
  574. package/llms-full.txt +1143 -285
  575. package/package.json +17 -5
  576. package/vscode-css-data.json +37 -2
  577. package/vscode-html-data.json +401 -44
  578. package/web-types.json +299 -55
@@ -9,24 +9,10 @@ import{css}from"lit";const styles=css`
9
9
  min-inline-size: 0;
10
10
  max-inline-size: 100%;
11
11
  gap: var(--lr-space-m);
12
- /* overflow-y is paired explicitly (never left implicit) alongside every overflow-x here and
13
- below: per the CSS overflow spec, pinning one axis to a non-'visible' value forces the
14
- other axis's *used* value to 'auto' too if left unset -- which can paint a thin, empty
15
- phantom scrollbar on a classic (non-overlay) scrollbar platform even when the steps
16
- actually fit (the exact bug already found and fixed once on lr-tab-group). The mask-image edge
17
- fade mirrors lr-tab-group'/lr-segmented's identical horizontally-scrolling-row treatment; it now
18
- lives in its own overflow-gated rule below, and is reset to 'none' in the vertical-axis
19
- rules so it can never bleed through a higher-specificity match that doesn't also redeclare
20
- it (CSS cascades per-property, not per-rule). */
21
12
  overflow-x: auto;
22
13
  overflow-y: hidden;
23
14
  }
24
- /* Edge fade, gated on the track actually overflowing -- ScrollOverflowController toggles
25
- data-scroll-overflow from a real scrollWidth/clientWidth measurement. Unconditional (as this
26
- used to be) it fades the first and last step of a stepper that fits. The vertical-axis rules
27
- below still reset it to 'none' at higher specificity, so it cannot bleed into that axis even
28
- if a visible-overflow measurement happens to trip the attribute. */
29
- [part="base"][data-scroll-overflow] {
15
+ [part="base"][data-scroll-overflow]:where([data-scroll-start][data-scroll-end]) {
30
16
  -webkit-mask-image: linear-gradient(
31
17
  to right,
32
18
  transparent,
@@ -42,6 +28,72 @@ import{css}from"lit";const styles=css`
42
28
  transparent
43
29
  );
44
30
  }
31
+ [part="base"][data-scroll-overflow]:where(
32
+ [data-scroll-end]:not([data-scroll-start])
33
+ ) {
34
+ -webkit-mask-image: linear-gradient(
35
+ to right,
36
+ var(--lr-mask-opaque),
37
+ var(--lr-mask-opaque) calc(100% - var(--lr-scroll-fade-size)),
38
+ transparent
39
+ );
40
+ mask-image: linear-gradient(
41
+ to right,
42
+ var(--lr-mask-opaque),
43
+ var(--lr-mask-opaque) calc(100% - var(--lr-scroll-fade-size)),
44
+ transparent
45
+ );
46
+ }
47
+ [part="base"][data-scroll-overflow]:where(
48
+ [data-scroll-start]:not([data-scroll-end])
49
+ ) {
50
+ -webkit-mask-image: linear-gradient(
51
+ to right,
52
+ transparent,
53
+ var(--lr-mask-opaque) var(--lr-scroll-fade-size),
54
+ var(--lr-mask-opaque)
55
+ );
56
+ mask-image: linear-gradient(
57
+ to right,
58
+ transparent,
59
+ var(--lr-mask-opaque) var(--lr-scroll-fade-size),
60
+ var(--lr-mask-opaque)
61
+ );
62
+ }
63
+ :host(:dir(rtl))
64
+ [part="base"][data-scroll-overflow]:where(
65
+ [data-scroll-end]:not([data-scroll-start])
66
+ ) {
67
+ -webkit-mask-image: linear-gradient(
68
+ to right,
69
+ transparent,
70
+ var(--lr-mask-opaque) var(--lr-scroll-fade-size),
71
+ var(--lr-mask-opaque)
72
+ );
73
+ mask-image: linear-gradient(
74
+ to right,
75
+ transparent,
76
+ var(--lr-mask-opaque) var(--lr-scroll-fade-size),
77
+ var(--lr-mask-opaque)
78
+ );
79
+ }
80
+ :host(:dir(rtl))
81
+ [part="base"][data-scroll-overflow]:where(
82
+ [data-scroll-start]:not([data-scroll-end])
83
+ ) {
84
+ -webkit-mask-image: linear-gradient(
85
+ to right,
86
+ var(--lr-mask-opaque),
87
+ var(--lr-mask-opaque) calc(100% - var(--lr-scroll-fade-size)),
88
+ transparent
89
+ );
90
+ mask-image: linear-gradient(
91
+ to right,
92
+ var(--lr-mask-opaque),
93
+ var(--lr-mask-opaque) calc(100% - var(--lr-scroll-fade-size)),
94
+ transparent
95
+ );
96
+ }
45
97
  [part="step-item"] {
46
98
  display: contents;
47
99
  }
@@ -52,9 +104,6 @@ import{css}from"lit";const styles=css`
52
104
  -webkit-mask-image: none;
53
105
  mask-image: none;
54
106
  }
55
- /* orientationBreakpoint's live axis -- only present while that feature is opted into (see
56
- stepper.ts's updateEffectiveOrientation()), so it can override the authored orientation rules
57
- above by source order alone (equal specificity) whenever the effective axis diverges from it. */
58
107
  :host([data-effective-orientation="vertical"]) [part="base"] {
59
108
  flex-direction: column;
60
109
  overflow-x: visible;
@@ -69,12 +118,8 @@ import{css}from"lit";const styles=css`
69
118
  -webkit-mask-image: none;
70
119
  mask-image: none;
71
120
  }
72
- /* Same overflow gate as the authored-horizontal rule above, restated at this rule's specificity
73
- so the live-axis override re-applies the fade rather than being pinned to the 'none' it must
74
- otherwise declare (it has to redeclare the property: the vertical arm it competes with sets
75
- it, and CSS cascades per-property). */
76
121
  :host([data-effective-orientation="horizontal"])
77
- [part="base"][data-scroll-overflow] {
122
+ [part="base"][data-scroll-overflow]:where([data-scroll-start][data-scroll-end]) {
78
123
  -webkit-mask-image: linear-gradient(
79
124
  to right,
80
125
  transparent,
@@ -90,6 +135,74 @@ import{css}from"lit";const styles=css`
90
135
  transparent
91
136
  );
92
137
  }
138
+ :host([data-effective-orientation="horizontal"])
139
+ [part="base"][data-scroll-overflow]:where(
140
+ [data-scroll-end]:not([data-scroll-start])
141
+ ) {
142
+ -webkit-mask-image: linear-gradient(
143
+ to right,
144
+ var(--lr-mask-opaque),
145
+ var(--lr-mask-opaque) calc(100% - var(--lr-scroll-fade-size)),
146
+ transparent
147
+ );
148
+ mask-image: linear-gradient(
149
+ to right,
150
+ var(--lr-mask-opaque),
151
+ var(--lr-mask-opaque) calc(100% - var(--lr-scroll-fade-size)),
152
+ transparent
153
+ );
154
+ }
155
+ :host([data-effective-orientation="horizontal"])
156
+ [part="base"][data-scroll-overflow]:where(
157
+ [data-scroll-start]:not([data-scroll-end])
158
+ ) {
159
+ -webkit-mask-image: linear-gradient(
160
+ to right,
161
+ transparent,
162
+ var(--lr-mask-opaque) var(--lr-scroll-fade-size),
163
+ var(--lr-mask-opaque)
164
+ );
165
+ mask-image: linear-gradient(
166
+ to right,
167
+ transparent,
168
+ var(--lr-mask-opaque) var(--lr-scroll-fade-size),
169
+ var(--lr-mask-opaque)
170
+ );
171
+ }
172
+ :host(:dir(rtl)[data-effective-orientation="horizontal"])
173
+ [part="base"][data-scroll-overflow]:where(
174
+ [data-scroll-end]:not([data-scroll-start])
175
+ ) {
176
+ -webkit-mask-image: linear-gradient(
177
+ to right,
178
+ transparent,
179
+ var(--lr-mask-opaque) var(--lr-scroll-fade-size),
180
+ var(--lr-mask-opaque)
181
+ );
182
+ mask-image: linear-gradient(
183
+ to right,
184
+ transparent,
185
+ var(--lr-mask-opaque) var(--lr-scroll-fade-size),
186
+ var(--lr-mask-opaque)
187
+ );
188
+ }
189
+ :host(:dir(rtl)[data-effective-orientation="horizontal"])
190
+ [part="base"][data-scroll-overflow]:where(
191
+ [data-scroll-start]:not([data-scroll-end])
192
+ ) {
193
+ -webkit-mask-image: linear-gradient(
194
+ to right,
195
+ var(--lr-mask-opaque),
196
+ var(--lr-mask-opaque) calc(100% - var(--lr-scroll-fade-size)),
197
+ transparent
198
+ );
199
+ mask-image: linear-gradient(
200
+ to right,
201
+ var(--lr-mask-opaque),
202
+ var(--lr-mask-opaque) calc(100% - var(--lr-scroll-fade-size)),
203
+ transparent
204
+ );
205
+ }
93
206
  [part="step"] {
94
207
  display: flex;
95
208
  align-items: center;
@@ -107,16 +220,10 @@ import{css}from"lit";const styles=css`
107
220
  opacity: var(--lr-opacity-disabled);
108
221
  cursor: not-allowed;
109
222
  }
110
- /* :where() zeroes the wrapped selectors' specificity contribution, leaving only :hover itself
111
- -- (0,1,0) total, so a consumer's own ::part(step):hover override ((0,1,1)) always wins
112
- without needing !important (mirrors lr-attachment-trigger's identical fix). */
113
223
  :where([part="step"]):hover:where(:not([aria-disabled="true"])) {
114
224
  background: var(--lr-stepper-hover-bg, var(--lr-color-brand-quiet));
115
225
  color: var(--lr-stepper-hover-color, var(--lr-color-text));
116
226
  }
117
- /* The same brand-quiet fill, mixed further toward --lr-color-mix-partner: a step being pressed
118
- is a visible tier past the one the pointer is only resting on. Same :not() guard and the same
119
- zeroed specificity as the hover rule above. */
120
227
  :where([part="step"]):active:where(:not([aria-disabled="true"])) {
121
228
  background: var(
122
229
  --lr-stepper-active-bg,
@@ -132,12 +239,6 @@ import{css}from"lit";const styles=css`
132
239
  outline: var(--lr-focus-ring-width) solid var(--lr-focus-ring-color);
133
240
  outline-offset: var(--lr-focus-ring-offset);
134
241
  }
135
- /* Inline var() fallbacks rather than :host-declared properties, so a consumer can set them on any
136
- ancestor without a :host declaration shadowing that. ::part(step)[data-state='current'] is
137
- invalid CSS (an attribute selector cannot follow ::part), so recoloring the current/error state
138
- used to require hijacking the shared --lr-color-text/--lr-color-danger/--lr-color-brand tokens,
139
- which repainted everything else that reads them. Unset, each falls back to the token the rule
140
- used before, so the rendering is unchanged. */
141
242
  [part="step"][data-state="current"] {
142
243
  color: var(--lr-stepper-current-color, var(--lr-color-text));
143
244
  font-weight: var(
@@ -148,10 +249,6 @@ import{css}from"lit";const styles=css`
148
249
  [part="step"][data-state="error"] {
149
250
  color: var(--lr-stepper-error-color, var(--lr-color-danger));
150
251
  }
151
- /* Rendered additionally to, never instead of, step-index/step-check below -- [part="step"]'s
152
- own gap already spaces it from whichever of those follows, so no margin of its own is
153
- needed (mirrors lr-segmented's segment-icon, minus its margin-inline-end, which compensates
154
- for lr-segmented's [part="segment"] having no gap of its own). */
155
252
  [part="step-icon"] {
156
253
  display: inline-flex;
157
254
  align-items: center;
@@ -189,8 +286,6 @@ import{css}from"lit";const styles=css`
189
286
  white-space: normal;
190
287
  overflow-wrap: anywhere;
191
288
  }
192
- /* An active breakpoint can temporarily make an authored vertical stepper horizontal. Keep the
193
- opt-in vertical-only, and let the later effective-axis rule win over the authored-axis rule. */
194
289
  :host([wrap-labels][data-effective-orientation="horizontal"])
195
290
  [part="step-label"] {
196
291
  min-inline-size: auto;
@@ -199,7 +294,11 @@ import{css}from"lit";const styles=css`
199
294
  }
200
295
  @media (forced-colors: active) {
201
296
  [part="base"],
297
+ [part="base"][data-scroll-overflow],
298
+ :host(:dir(rtl)) [part="base"][data-scroll-overflow],
202
299
  :host([data-effective-orientation="horizontal"])
300
+ [part="base"][data-scroll-overflow],
301
+ :host(:dir(rtl)[data-effective-orientation="horizontal"])
203
302
  [part="base"][data-scroll-overflow] {
204
303
  -webkit-mask-image: none;
205
304
  mask-image: none;
@@ -142,7 +142,10 @@ export declare class LyraTabGroup extends LyraElement<LyraTabGroupEventMap> {
142
142
  * exhausted. Without it, each inactive edge control is hidden, matching Shoelace. */
143
143
  fixedScrollControls: boolean;
144
144
  /** The group's real unnamed slot. It is kept hidden because Lyra assigns each tab and panel to
145
- * its own deterministic named slot, but remains exposed for mapped slot observation. */
145
+ * its own deterministic named slot, but remains exposed for mapped slot observation. Stays a
146
+ * writable `@query` field rather than a readonly `get`: `wa-tab-group` declares it writable, and
147
+ * check-pinned-upstream-manifests treats a readonly-vs-writable difference on a mirrored member
148
+ * as an `unsupported` surface drift -- a release blocker. */
146
149
  defaultSlot: HTMLSlotElement;
147
150
  private tabs;
148
151
  /** Where keyboard focus currently sits under `activation="manual"`, which is allowed to differ
@@ -15,10 +15,6 @@ import{css}from"lit";const styles=css`
15
15
  block-size: 100%;
16
16
  box-sizing: border-box;
17
17
  }
18
- /* The tablist plus its two overflow controls. A row of its own so the controls can flank the
19
- scroll container without ever becoming children of role="tablist" (whose only legal children
20
- are the tabs). min-inline-size: 0 is what lets the tablist shrink below its content width and
21
- therefore scroll at all. */
22
18
  [part="nav"] {
23
19
  display: flex;
24
20
  align-items: stretch;
@@ -37,8 +33,6 @@ import{css}from"lit";const styles=css`
37
33
  min-inline-size: 0;
38
34
  }
39
35
  :where([part~="scroll-button"]) {
40
- /* Never shrinks: at the narrow allocations that produce overflow in the first place, a
41
- shrinkable control would be squeezed straight through the WCAG 2.5.8 floor. */
42
36
  flex: 0 0 auto;
43
37
  display: inline-grid;
44
38
  place-items: center;
@@ -49,22 +43,12 @@ import{css}from"lit";const styles=css`
49
43
  appearance: none;
50
44
  background: none;
51
45
  border: none;
52
- /* Continues the tablist's own rule across the control, so the line under the strip runs
53
- unbroken from edge to edge instead of stopping short at each control. */
54
46
  border-block-end: var(--lr-border-width-thin) solid var(--lr-color-border);
55
47
  color: var(--lr-color-text-quiet);
56
48
  cursor: pointer;
57
49
  transition: color var(--lr-transition-fast),
58
50
  background var(--lr-transition-fast);
59
51
  }
60
- /* The controls exist in the DOM for an overflow that may not exist yet, so they are taken out of
61
- layout (and out of the accessibility tree with it) until the tablist is measured as actually
62
- overflowing -- the same ScrollOverflowController measurement the edge fade above is gated on,
63
- so the two affordances can never disagree. :has() on the wrapper is what lets the *preceding*
64
- control react to the tablist's own state attribute: CSS has no previous-sibling combinator.
65
- The whole qualifier sits in :where() so it contributes no specificity, leaving this rule at
66
- (0,1,0) -- it beats the display above by order alone, and a consumer's own
67
- ::part(scroll-button) ((0,1,1)) still outranks it without needing !important. */
68
52
  :where([part="nav"]:not(:has([part~="tablist"][data-scroll-overflow])))
69
53
  [part~="scroll-button"] {
70
54
  display: none;
@@ -72,8 +56,6 @@ import{css}from"lit";const styles=css`
72
56
  :where([part~="scroll-button"][hidden]) {
73
57
  display: none;
74
58
  }
75
- /* Same treatment as [part="tab"], so the controls read as part of the strip rather than as two
76
- foreign buttons bolted to its ends. */
77
59
  :where([part~="scroll-button"]):where(:hover) {
78
60
  color: var(--lr-tab-group-scroll-button-hover-color, var(--lr-color-text));
79
61
  }
@@ -88,9 +70,6 @@ import{css}from"lit";const styles=css`
88
70
  );
89
71
  color: var(--lr-tab-group-scroll-button-active-color, var(--lr-color-text));
90
72
  }
91
- /* Firefox suppresses native :active when the control's mousedown keeps focus on the tab. The
92
- short-lived attribute mirrors that state there. The base and each state selector are wrapped
93
- in :where(), so source order applies the state without blocking a consumer part override. */
94
73
  :where([part~="scroll-button"]):where([data-pressed]) {
95
74
  background: var(
96
75
  --lr-tab-group-scroll-button-active-bg,
@@ -102,8 +81,6 @@ import{css}from"lit";const styles=css`
102
81
  );
103
82
  color: var(--lr-tab-group-scroll-button-active-color, var(--lr-color-text));
104
83
  }
105
- /* Reachable only by script (the controls are tabindex="-1"), but a consumer that focuses one must
106
- still see where focus went. */
107
84
  [part~="scroll-button"]:focus-visible {
108
85
  outline: var(--lr-focus-ring-width) solid var(--lr-focus-ring-color);
109
86
  outline-offset: calc(var(--lr-focus-ring-offset) * -1);
@@ -113,11 +90,6 @@ import{css}from"lit";const styles=css`
113
90
  display: inline-flex;
114
91
  align-items: center;
115
92
  }
116
- /* internal/icons.ts ships one direction-free chevron pointing right; the *wrapping part* points
117
- it, never the svg. LTR: the start control points left, the end control right. RTL: the whole
118
- row is mirrored by flex layout, so the meanings swap with it -- "toward the inline start" is
119
- physically rightward. Hence the mirror moves from one control to the other rather than being
120
- added to both. */
121
93
  [part~="scroll-button-start"] [part="scroll-button-glyph"] {
122
94
  transform: scaleX(-1);
123
95
  }
@@ -127,11 +99,7 @@ import{css}from"lit";const styles=css`
127
99
  :host(:dir(rtl)) [part~="scroll-button-end"] [part="scroll-button-glyph"] {
128
100
  transform: scaleX(-1);
129
101
  }
130
- /* Edge affordance, gated on the tablist actually overflowing -- ScrollOverflowController toggles
131
- data-scroll-overflow from a real scrollWidth/clientWidth measurement; scrolling itself stays
132
- native, with no scroll listener. Painted unconditionally (as it used to be) it fades the first
133
- and last tab of a row that fits, for no reason. */
134
- [part~="tablist"][data-scroll-overflow][data-scroll-start][data-scroll-end] {
102
+ [part~="tablist"][data-scroll-overflow]:where([data-scroll-start][data-scroll-end]) {
135
103
  -webkit-mask-image: linear-gradient(
136
104
  to right,
137
105
  transparent,
@@ -147,8 +115,8 @@ import{css}from"lit";const styles=css`
147
115
  transparent
148
116
  );
149
117
  }
150
- [part~="tablist"][data-scroll-overflow][data-scroll-end]:not(
151
- [data-scroll-start]
118
+ [part~="tablist"][data-scroll-overflow]:where(
119
+ [data-scroll-end]:not([data-scroll-start])
152
120
  ) {
153
121
  -webkit-mask-image: linear-gradient(
154
122
  to right,
@@ -163,8 +131,8 @@ import{css}from"lit";const styles=css`
163
131
  transparent
164
132
  );
165
133
  }
166
- [part~="tablist"][data-scroll-overflow][data-scroll-start]:not(
167
- [data-scroll-end]
134
+ [part~="tablist"][data-scroll-overflow]:where(
135
+ [data-scroll-start]:not([data-scroll-end])
168
136
  ) {
169
137
  -webkit-mask-image: linear-gradient(
170
138
  to right,
@@ -180,8 +148,8 @@ import{css}from"lit";const styles=css`
180
148
  );
181
149
  }
182
150
  :host(:dir(rtl))
183
- [part~="tablist"][data-scroll-overflow][data-scroll-end]:not(
184
- [data-scroll-start]
151
+ [part~="tablist"][data-scroll-overflow]:where(
152
+ [data-scroll-end]:not([data-scroll-start])
185
153
  ) {
186
154
  -webkit-mask-image: linear-gradient(
187
155
  to right,
@@ -197,8 +165,8 @@ import{css}from"lit";const styles=css`
197
165
  );
198
166
  }
199
167
  :host(:dir(rtl))
200
- [part~="tablist"][data-scroll-overflow][data-scroll-start]:not(
201
- [data-scroll-end]
168
+ [part~="tablist"][data-scroll-overflow]:where(
169
+ [data-scroll-start]:not([data-scroll-end])
202
170
  ) {
203
171
  -webkit-mask-image: linear-gradient(
204
172
  to right,
@@ -218,8 +186,6 @@ import{css}from"lit";const styles=css`
218
186
  appearance: none;
219
187
  background: none;
220
188
  border: none;
221
- /* Sits directly over the tablist's own border-block-end so the accent
222
- underline below replaces it, pixel for pixel, when selected. */
223
189
  border-block-end: var(--lr-border-width-medium) solid transparent;
224
190
  margin-block-end: var(--lr-size-neg-1px);
225
191
  padding: var(--lr-space-s) var(--lr-space-xs);
@@ -228,9 +194,6 @@ import{css}from"lit";const styles=css`
228
194
  color: var(--lr-color-text-quiet);
229
195
  cursor: pointer;
230
196
  white-space: nowrap;
231
- /* inline-flex only matters once a tab-icon part is also present (gap
232
- has no effect with a single child) -- a text-only tab lays out
233
- identically to the previous plain inline-block button. */
234
197
  display: inline-flex;
235
198
  align-items: center;
236
199
  gap: var(--lr-space-xs);
@@ -242,18 +205,9 @@ import{css}from"lit";const styles=css`
242
205
  flex: 0 0 auto;
243
206
  align-items: center;
244
207
  }
245
- /* Reads its own prop, not the shared --lr-color-text token: recoloring the selected tab must
246
- never repaint hovered-unselected tabs with the selected color. :where() zeroes the wrapped
247
- selectors' specificity contribution, leaving only :hover itself -- (0,1,0) total, so a
248
- consumer's own ::part(tab):hover override ((0,1,1)) always wins without needing !important
249
- (mirrors lr-attachment-trigger's identical fix). */
250
208
  :where([part="tab"]):hover:where(:not([aria-disabled="true"])) {
251
209
  color: var(--lr-tab-group-hover-color, var(--lr-color-text));
252
210
  }
253
- /* Hover lifts only the label colour here, so the pressed state adds a surface to be a visible
254
- step past it: the tab's own transparent fill mixed toward --lr-color-mix-partner, which lands
255
- as the partner colour at --lr-color-mix-active alpha over whatever the tablist sits on. A
256
- disabled tab has pointer-events: none and never reaches it. */
257
211
  :where([part="tab"]):active:where(:not([aria-disabled="true"])) {
258
212
  background: var(
259
213
  --lr-tab-group-active-bg,
@@ -268,9 +222,6 @@ import{css}from"lit";const styles=css`
268
222
  var(--lr-tab-group-hover-color, var(--lr-color-text))
269
223
  );
270
224
  }
271
- /* Inline var() fallbacks rather than :host-declared properties, so a consumer can set them on any
272
- ancestor and a :host declaration can never shadow that. Unset, each falls back to the token the
273
- rule used before the hooks existed, so the rendering is unchanged. */
274
225
  [part="tab"][aria-selected="true"] {
275
226
  color: var(--lr-tab-group-selected-color, var(--lr-color-brand));
276
227
  border-block-end-color: var(
@@ -291,8 +242,6 @@ import{css}from"lit";const styles=css`
291
242
  }
292
243
  [part="tab"][aria-disabled="true"] {
293
244
  cursor: not-allowed;
294
- /* No :hover color change and no pointer feedback -- the click handler
295
- already no-ops on a disabled tab, this just matches it visually. */
296
245
  pointer-events: none;
297
246
  opacity: var(--lr-opacity-disabled);
298
247
  }
@@ -312,10 +261,6 @@ import{css}from"lit";const styles=css`
312
261
  min-block-size: 0;
313
262
  overflow: auto;
314
263
  }
315
- /* no-pressed-state: the panel is a container for whatever the consumer slotted into the tab, not
316
- a target -- pressing it activates nothing, and :active matches the ancestors of whatever was
317
- pressed, so a click on any control inside the panel would flash this outline around all of
318
- it. */
319
264
  [part="panel"]:hover {
320
265
  outline: var(--lr-border-width-thin) solid var(--lr-color-border);
321
266
  outline-offset: var(--lr-focus-ring-offset);
@@ -333,9 +278,6 @@ import{css}from"lit";const styles=css`
333
278
  }
334
279
  }
335
280
 
336
- /* Placement. The base flex direction moves the strip relative to the panels; start/end are
337
- logical, so row/row-reverse mirror under RTL with no :dir() rule. A vertical strip trades
338
- its block-end rule for an inline-end one, in the matching logical direction. */
339
281
  :host([placement="bottom"]) [part~="base"] {
340
282
  flex-direction: column-reverse;
341
283
  }
@@ -352,9 +294,6 @@ import{css}from"lit";const styles=css`
352
294
  inset-block-start: calc(-1 * var(--lr-border-width-medium));
353
295
  inset-block-end: auto;
354
296
  }
355
- /* A vertical strip renders no scroll controls at all. Its nav keeps its natural width for short
356
- labels, but is allowed to shrink and capped so one unbroken label cannot consume the panel's
357
- entire allocation. Keep the fallback inline: consumers can set it on the group or an ancestor. */
358
297
  :host([placement="start"]) [part="nav"],
359
298
  :host([placement="end"]) [part="nav"] {
360
299
  flex: 0 1 auto;
@@ -387,8 +326,6 @@ import{css}from"lit";const styles=css`
387
326
  max-block-size: 100%;
388
327
  border-block-end: none;
389
328
  }
390
- /* The vertical nav is deliberately single-line: clipping the visual label preserves a compact
391
- side rail while the full label remains the tab's accessible name. */
392
329
  :host([placement="start"]) [part="tab"],
393
330
  :host([placement="end"]) [part="tab"] {
394
331
  min-inline-size: 0;
@@ -404,14 +341,11 @@ import{css}from"lit";const styles=css`
404
341
  border-inline-start: var(--track-width, var(--lr-border-width-thin)) solid
405
342
  var(--track-color, var(--lr-color-border));
406
343
  }
407
- /* The horizontal edge fade measures inline overflow; a vertical strip scrolls in the block
408
- direction instead, so the mask would dim the wrong ends. */
409
344
  :host([placement="start"]) [part~="tablist"][data-scroll-overflow],
410
345
  :host([placement="end"]) [part~="tablist"][data-scroll-overflow] {
411
346
  -webkit-mask-image: none;
412
347
  mask-image: none;
413
348
  }
414
- /* The selected-tab indicator runs along whichever edge the panels are on. */
415
349
  :host([placement="start"]) [part="tab"][aria-selected="true"],
416
350
  :host([placement="end"]) [part="tab"][aria-selected="true"] {
417
351
  box-shadow: none;
@@ -1,6 +1,4 @@
1
1
  import{css}from"lit";const styles=css`
2
- /* The group renders the real button and projects this element into it; contributing a box of its
3
- own would put a second layout node inside that button. */
4
2
  :host {
5
3
  display: contents;
6
4
  }
@@ -3,7 +3,7 @@ import { LyraElement } from '../../../internal/lyra-element.js';
3
3
  /** Largest accepted overscan on either side of the visible range. This keeps
4
4
  * an accidental huge value from defeating virtualization. */
5
5
  export declare const MAX_OVERSCAN_ROWS = 100;
6
- /** `lr-visible-range-changed` detail -- the current visible (non-overscanned) item index range. */
6
+ /** `lr-visible-range-change` detail -- the current visible (non-overscanned) item index range. */
7
7
  export interface LyraVirtualListRange {
8
8
  start: number;
9
9
  end: number;
@@ -44,7 +44,7 @@ export interface LyraVirtualListScroll {
44
44
  viewportHeight: number;
45
45
  }
46
46
  export interface LyraVirtualListEventMap {
47
- 'lr-visible-range-changed': CustomEvent<LyraVirtualListRange>;
47
+ 'lr-visible-range-change': CustomEvent<LyraVirtualListRange>;
48
48
  'lr-load-more': CustomEvent<null>;
49
49
  'lr-virtual-scroll': CustomEvent<LyraVirtualListScroll>;
50
50
  }
@@ -171,7 +171,7 @@ export interface LyraVirtualListEventMap {
171
171
  * end, re-arms it) — a consumer wanting an automatic retry after a failed
172
172
  * fetch should surface its own retry affordance rather than relying on
173
173
  * this firing again unprompted.
174
- * @event lr-visible-range-changed - `detail: { start, end }` (see
174
+ * @event lr-visible-range-change - `detail: { start, end }` (see
175
175
  * `LyraVirtualListRange`) — the current visible (non-overscanned) item index
176
176
  * range, fired only when it actually changes.
177
177
  * @event lr-virtual-scroll - `detail: { scrollTop, viewportHeight }` (see
@@ -179,7 +179,7 @@ export interface LyraVirtualListEventMap {
179
179
  * `requestAnimationFrame` tick that already coalesces native `scroll`
180
180
  * events, so a fling that fires dozens of native events produces at most one
181
181
  * of these per frame, and none at all when the position did not actually
182
- * change. Unlike `lr-visible-range-changed` this reports *sub-row*
182
+ * change. Unlike `lr-visible-range-change` this reports *sub-row*
183
183
  * movement, which is what a scroll-linked layout (a pinned header, a
184
184
  * minimap) needs.
185
185
  *