@openviking/react 0.1.1 → 0.1.3

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 (229) hide show
  1. package/README.md +18 -15
  2. package/dist/1~0.js +506 -0
  3. package/dist/2~0.js +122 -0
  4. package/dist/30~0.js +1332 -0
  5. package/dist/3~0.js +2113 -4
  6. package/dist/ark-message-list-view~0.js +310 -0
  7. package/dist/c7~0.js +24 -0
  8. package/dist/client/index.d.ts +2 -1
  9. package/dist/client/paths.d.ts +64 -0
  10. package/dist/client/response.d.ts +31 -0
  11. package/dist/client/sse.d.ts +39 -0
  12. package/dist/client/stream.d.ts +26 -0
  13. package/dist/client/types.d.ts +104 -0
  14. package/dist/client.js +1 -239
  15. package/dist/components/agent-connect/agent-connect-copy.d.ts +34 -0
  16. package/dist/components/agent-connect/agent-connect-design.d.ts +1781 -0
  17. package/dist/components/agent-connect/agent-connect-detail.d.ts +13 -0
  18. package/dist/components/agent-connect/agent-connect-installer.d.ts +3 -0
  19. package/dist/components/agent-connect/agent-connect-instructions-view.d.ts +14 -0
  20. package/dist/components/agent-connect/agent-connect-instructions.d.ts +145 -0
  21. package/dist/components/agent-connect/agent-connect-markdown.d.ts +3 -0
  22. package/dist/components/agent-connect/agent-connect.d.ts +3 -3
  23. package/dist/components/agent-connect/content-en.d.ts +137 -0
  24. package/dist/components/agent-connect/content-zh.d.ts +137 -0
  25. package/dist/components/agent-connect/style.css +495 -6
  26. package/dist/components/agent-connect/types.d.ts +20 -166
  27. package/dist/components/file-browser-entries/file-browser-entries-icons.d.ts +18 -0
  28. package/dist/components/file-browser-entries/file-browser-entries.d.ts +14 -0
  29. package/dist/components/file-browser-entries/index.d.ts +1 -0
  30. package/dist/components/file-browser-entries/style.css +155 -0
  31. package/dist/components/file-browser-entries/types.d.ts +45 -0
  32. package/dist/components/file-browser-entries.js +1 -0
  33. package/dist/components/file-preview/file-preview-adapters.d.ts +33 -0
  34. package/dist/components/file-preview/file-preview-body.d.ts +24 -12
  35. package/dist/components/file-preview/file-preview-breadcrumb-menu.d.ts +16 -0
  36. package/dist/components/file-preview/file-preview-breadcrumb.d.ts +21 -0
  37. package/dist/components/file-preview/file-preview-copy-path.d.ts +12 -0
  38. package/dist/components/file-preview/file-preview-directory.d.ts +32 -0
  39. package/dist/components/file-preview/file-preview-editor.d.ts +22 -0
  40. package/dist/components/file-preview/file-preview-handle-adapters.d.ts +26 -0
  41. package/dist/components/file-preview/file-preview-header.d.ts +41 -14
  42. package/dist/components/file-preview/file-preview-labels.d.ts +15 -4
  43. package/dist/components/file-preview/file-preview-lazy-viewer.d.ts +3 -0
  44. package/dist/components/file-preview/file-preview-panels.d.ts +41 -0
  45. package/dist/components/file-preview/file-preview-path.d.ts +30 -0
  46. package/dist/components/file-preview/file-preview-source.d.ts +24 -0
  47. package/dist/components/file-preview/file-preview-state.d.ts +35 -0
  48. package/dist/components/file-preview/file-preview-tab-row.d.ts +16 -0
  49. package/dist/components/file-preview/file-preview-viewer.d.ts +31 -0
  50. package/dist/components/file-preview/file-preview.d.ts +9 -11
  51. package/dist/components/file-preview/level-selection.d.ts +25 -0
  52. package/dist/components/file-preview/style.css +4055 -126
  53. package/dist/components/file-preview/types.d.ts +350 -170
  54. package/dist/components/file-preview/use-directory-level.d.ts +30 -0
  55. package/dist/components/file-preview/use-file-preview-actions-context.d.ts +27 -0
  56. package/dist/components/file-preview/use-file-preview-actions.d.ts +19 -0
  57. package/dist/components/file-preview/use-file-preview-editing.d.ts +21 -2
  58. package/dist/components/file-preview/use-file-preview-ids.d.ts +24 -0
  59. package/dist/components/file-preview.js +1 -442
  60. package/dist/components/file-tree/file-tree-body.d.ts +8 -4
  61. package/dist/components/file-tree/file-tree-entry-row.d.ts +9 -3
  62. package/dist/components/file-tree/file-tree-icons.d.ts +12 -5
  63. package/dist/components/file-tree/file-tree-info-labels.d.ts +21 -0
  64. package/dist/components/file-tree/file-tree-info-tooltip.d.ts +43 -0
  65. package/dist/components/file-tree/file-tree-info.d.ts +29 -0
  66. package/dist/components/file-tree/file-tree-keyboard.d.ts +8 -4
  67. package/dist/components/file-tree/file-tree-row-context.d.ts +29 -12
  68. package/dist/components/file-tree/file-tree-row-shared.d.ts +18 -0
  69. package/dist/components/file-tree/file-tree-spinner.d.ts +10 -0
  70. package/dist/components/file-tree/file-tree-state-row.d.ts +7 -0
  71. package/dist/components/file-tree/file-tree-tooltip-surface.d.ts +22 -0
  72. package/dist/components/file-tree/file-tree.d.ts +12 -1
  73. package/dist/components/file-tree/style.css +280 -75
  74. package/dist/components/file-tree/types.d.ts +203 -0
  75. package/dist/components/file-tree/use-file-tree-actions.d.ts +7 -0
  76. package/dist/components/file-tree.js +1 -1
  77. package/dist/components/scope-switcher/scope-panel.d.ts +9 -3
  78. package/dist/components/scope-switcher/scope-selector.d.ts +1 -1
  79. package/dist/components/scope-switcher/scope-switcher.d.ts +1 -1
  80. package/dist/components/scope-switcher/style.css +282 -76
  81. package/dist/components/scope-switcher/types.d.ts +230 -108
  82. package/dist/components/style.css +14128 -390
  83. package/dist/components/tui/command-catalog.d.ts +58 -0
  84. package/dist/components/tui/command-completion.d.ts +19 -0
  85. package/dist/components/tui/command-definitions.d.ts +10 -0
  86. package/dist/components/tui/command-input.d.ts +16 -0
  87. package/dist/components/tui/style.css +1543 -5
  88. package/dist/components/tui/tui-assist.d.ts +15 -0
  89. package/dist/components/tui/tui-code-block.d.ts +8 -0
  90. package/dist/components/tui/tui-command-help.d.ts +9 -0
  91. package/dist/components/tui/tui-command-text.d.ts +6 -0
  92. package/dist/components/tui/tui-composer.d.ts +24 -0
  93. package/dist/components/tui/tui-copy-button.d.ts +9 -0
  94. package/dist/components/tui/tui-input-mirror.d.ts +14 -0
  95. package/dist/components/tui/tui-labels-zh.d.ts +2 -0
  96. package/dist/components/tui/tui-labels.d.ts +5 -0
  97. package/dist/components/tui/tui-markdown-renderers.d.ts +10 -0
  98. package/dist/components/tui/tui-markdown.d.ts +6 -0
  99. package/dist/components/tui/tui-param-hint.d.ts +7 -0
  100. package/dist/components/tui/tui-record-time.d.ts +11 -0
  101. package/dist/components/tui/tui-record.d.ts +13 -0
  102. package/dist/components/tui/tui-resource-preview.d.ts +10 -0
  103. package/dist/components/tui/tui-resource-tree.d.ts +10 -0
  104. package/dist/components/tui/tui-result-header.d.ts +7 -0
  105. package/dist/components/tui/tui-result-text.d.ts +5 -0
  106. package/dist/components/tui/tui-search-list.d.ts +8 -0
  107. package/dist/components/tui/tui-skeleton.d.ts +6 -0
  108. package/dist/components/tui/tui-status-card.d.ts +7 -0
  109. package/dist/components/tui/tui-text.d.ts +10 -0
  110. package/dist/components/tui/tui-uri-text.d.ts +19 -0
  111. package/dist/components/tui/tui-write-result.d.ts +7 -0
  112. package/dist/components/tui/tui.d.ts +10 -2
  113. package/dist/components/tui/types.d.ts +57 -15
  114. package/dist/components/tui/use-tui-assist-position.d.ts +3 -0
  115. package/dist/components/tui/use-tui-completion.d.ts +14 -0
  116. package/dist/components/tui/use-tui-composer-keyboard.d.ts +25 -0
  117. package/dist/components/viking-bot/ark-adapter.d.ts +45 -0
  118. package/dist/components/viking-bot/ark-message-body.d.ts +16 -0
  119. package/dist/components/viking-bot/ark-message-list-view.d.ts +7 -0
  120. package/dist/components/viking-bot/ark-message-row.d.ts +19 -0
  121. package/dist/components/viking-bot/index.d.ts +10 -0
  122. package/dist/components/viking-bot/interaction/ask-human-fields.d.ts +10 -0
  123. package/dist/components/viking-bot/interaction/index.d.ts +4 -0
  124. package/dist/components/viking-bot/interaction/labels.d.ts +7 -0
  125. package/dist/components/viking-bot/interaction/lazy-interaction.d.ts +3 -0
  126. package/dist/components/viking-bot/interaction/schedule-input.d.ts +13 -0
  127. package/dist/components/viking-bot/interaction/style.css +189 -0
  128. package/dist/components/viking-bot/interaction/style.js +0 -0
  129. package/dist/components/viking-bot/interaction/types.d.ts +188 -0
  130. package/dist/components/viking-bot/interaction/viking-bot-interaction.d.ts +9 -0
  131. package/dist/components/viking-bot/interaction.js +2 -0
  132. package/dist/components/viking-bot/labels.d.ts +2 -0
  133. package/dist/components/viking-bot/lazy-composer.d.ts +3 -0
  134. package/dist/components/viking-bot/message-groups.d.ts +12 -0
  135. package/dist/components/viking-bot/model.d.ts +252 -0
  136. package/dist/components/viking-bot/render-part.d.ts +12 -0
  137. package/dist/components/viking-bot/style.css +7135 -0
  138. package/dist/components/viking-bot/style.js +0 -0
  139. package/dist/components/viking-bot/types.d.ts +140 -0
  140. package/dist/components/viking-bot/viking-bot-composer.d.ts +6 -0
  141. package/dist/components/viking-bot/viking-bot-message-list.d.ts +3 -0
  142. package/dist/components/viking-bot/viking-bot.d.ts +16 -0
  143. package/dist/components/viking-bot.js +4 -0
  144. package/dist/c~0.js +201 -0
  145. package/dist/file-preview-viewer~0.js +191 -0
  146. package/dist/f~0.js +149 -77
  147. package/dist/h~0.js +58 -0
  148. package/dist/icons/file-type-icon.d.ts +31 -0
  149. package/dist/icons/index.d.ts +33 -23
  150. package/dist/icons/nextjs-icon.d.ts +19 -0
  151. package/dist/icons.js +1 -25
  152. package/dist/index.d.ts +4 -2
  153. package/dist/index.js +2 -1
  154. package/dist/k~0.js +1440 -0
  155. package/dist/lk~0.js +25 -12
  156. package/dist/l~0.js +1464 -25
  157. package/dist/modules/console/style.css +83 -1
  158. package/dist/modules/file-browser/file-browser-detail-icons.d.ts +10 -0
  159. package/dist/modules/file-browser/file-browser-detail.d.ts +33 -0
  160. package/dist/modules/file-browser/file-browser-empty.d.ts +3 -0
  161. package/dist/modules/file-browser/file-browser-failure.d.ts +22 -0
  162. package/dist/modules/file-browser/file-browser-icons.d.ts +18 -0
  163. package/dist/modules/file-browser/file-browser-labels.d.ts +28 -0
  164. package/dist/modules/file-browser/file-browser-layout.d.ts +27 -0
  165. package/dist/modules/file-browser/file-browser-toolbar.d.ts +18 -0
  166. package/dist/modules/file-browser/file-browser-tree-pane.d.ts +30 -0
  167. package/dist/modules/file-browser/file-browser.d.ts +14 -5
  168. package/dist/modules/file-browser/find-result.d.ts +24 -0
  169. package/dist/modules/file-browser/fs-directories.d.ts +33 -0
  170. package/dist/modules/file-browser/fs-file-kind.d.ts +19 -0
  171. package/dist/modules/file-browser/fs-icon.d.ts +17 -0
  172. package/dist/modules/file-browser/fs-model.d.ts +106 -0
  173. package/dist/modules/file-browser/fs-page.d.ts +16 -0
  174. package/dist/modules/file-browser/fs-path.d.ts +16 -0
  175. package/dist/modules/file-browser/fs-read-directory.d.ts +20 -0
  176. package/dist/modules/file-browser/fs-scope.d.ts +22 -0
  177. package/dist/modules/file-browser/fs-stat.d.ts +25 -0
  178. package/dist/modules/file-browser/index.d.ts +3 -1
  179. package/dist/modules/file-browser/style.css +5009 -34
  180. package/dist/modules/file-browser/tree-info-copy.d.ts +15 -0
  181. package/dist/modules/file-browser/tree-info-copy.zh-CN.d.ts +15 -0
  182. package/dist/modules/file-browser/types.d.ts +189 -44
  183. package/dist/modules/file-browser/use-container-width.d.ts +17 -0
  184. package/dist/modules/file-browser/use-file-browser.d.ts +49 -0
  185. package/dist/modules/file-browser/use-fs-preview.d.ts +51 -0
  186. package/dist/modules/file-browser/use-fs-search.d.ts +35 -0
  187. package/dist/modules/file-browser/use-fs-tree.d.ts +43 -0
  188. package/dist/modules/file-browser/use-request-scope.d.ts +39 -0
  189. package/dist/modules/file-browser.js +1 -1
  190. package/dist/modules/scope-cascade/style.css +282 -76
  191. package/dist/modules/style.css +5445 -130
  192. package/dist/n~0.js +568 -236
  193. package/dist/o~0.js +103 -0
  194. package/dist/shared/components/divider/divider.d.ts +18 -0
  195. package/dist/shared/components/divider/index.d.ts +1 -0
  196. package/dist/shared/components/divider/types.d.ts +35 -0
  197. package/dist/shared/components/overlay/types.d.ts +7 -0
  198. package/dist/shared/components/overlay/use-overlay-position.d.ts +38 -0
  199. package/dist/shared/components/popover/index.d.ts +1 -0
  200. package/dist/shared/components/popover/popover.d.ts +23 -0
  201. package/dist/shared/components/popover/types.d.ts +50 -0
  202. package/dist/shared/components/resizable/clamp.d.ts +13 -0
  203. package/dist/shared/components/resizable/index.d.ts +2 -0
  204. package/dist/shared/components/resizable/resizable-handle.d.ts +25 -0
  205. package/dist/shared/components/resizable/types.d.ts +48 -0
  206. package/dist/shared/components/tooltip/index.d.ts +1 -0
  207. package/dist/shared/components/tooltip/tooltip.d.ts +25 -0
  208. package/dist/shared/components/tooltip/types.d.ts +42 -0
  209. package/dist/style.css +19664 -530
  210. package/dist/u~0.js +1597 -4
  211. package/dist/viking-bot-composer~0.js +164 -0
  212. package/dist/viking-bot-interaction~0.js +284 -0
  213. package/dist/w~0.js +19 -0
  214. package/package.json +23 -10
  215. package/dist/components/file-preview/file-preview-icons.d.ts +0 -2
  216. package/dist/components/file-preview/file-preview-operations.d.ts +0 -1
  217. package/dist/components/file-tree/file-tree-dom.d.ts +0 -4
  218. package/dist/components/file-tree/file-tree-labels.d.ts +0 -5
  219. package/dist/components/file-tree/file-tree-rows.d.ts +0 -12
  220. package/dist/components/file-tree/file-tree-tooltip.d.ts +0 -11
  221. package/dist/i~0.js +0 -21
  222. package/dist/modules/file-browser/file-browser-toolbar-button.d.ts +0 -10
  223. package/dist/modules/task-center/columns.d.ts +0 -129
  224. package/dist/modules/task-center/index.d.ts +0 -1
  225. package/dist/modules/task-center/style.css +0 -29
  226. package/dist/modules/task-center/task-center.d.ts +0 -4
  227. package/dist/modules/task-center/types.d.ts +0 -168
  228. package/dist/modules/task-center.js +0 -1
  229. /package/dist/{modules/task-center → components/file-browser-entries}/style.js +0 -0
@@ -1,23 +1,113 @@
1
+ .ov-agent-connect, .ov-divider, .ov-file-browser, .ov-file-browser-entries, .ov-file-preview, .ov-file-tree, .ov-module-placeholder, .ov-popover, .ov-scope-switcher, .ov-tooltip, .ov-tui, .ov-viking-bot, .ov-viking-bot__interaction {
2
+ --ov-ui-primary-default: #5252ff;
3
+ --ov-ui-primary-hover-default: #7075ff;
4
+ --ov-ui-primary-active-default: #3833d2;
5
+ --ov-ui-primary-light-default: #f5f7ff;
6
+ --ov-ui-connect-glow-warm-default: #ff952b0a;
7
+ --ov-ui-connect-glow-pink-default: #fb4fbc0f;
8
+ --ov-ui-connect-glow-pink-soft-default: #fb4fbc0a;
9
+ --ov-ui-on-primary-default: #fff;
10
+ --ov-ui-text-1-default: #0b0b0f;
11
+ --ov-ui-text-2-default: #3f3f51;
12
+ --ov-ui-text-3-default: #6e718c;
13
+ --ov-ui-text-description-default: #0006;
14
+ --ov-ui-text-disabled-default: #a5a7bb;
15
+ --ov-ui-border-1-default: #f0f2fa;
16
+ --ov-ui-border-2-default: #e1e4f2;
17
+ --ov-ui-border-3-default: #d7daea;
18
+ --ov-ui-bg-1-default: #fff;
19
+ --ov-ui-bg-3-default: #f7f8fd;
20
+ --ov-ui-bg-4-default: #f6f7fa;
21
+ --ov-ui-bg-5-default: #f1f2f9;
22
+ --ov-ui-status-success-default: #1f9d55;
23
+ --ov-ui-shadow-default: #0f172a;
24
+ --ov-ui-focus-default: #5252ff;
25
+ --ov-ui-fill-hover-default: #f1f2f9;
26
+ --ov-ui-status-error-default: #c43838;
27
+ --ov-ui-warning-default: #b26a00;
28
+ --ov-ui-warning-light-default: #fff0b3;
29
+ --ov-ui-tooltip-bg-default: #1f2329;
30
+ --ov-ui-tooltip-text-default: #fff;
31
+ }
32
+
33
+ .dark .ov-agent-connect, .dark .ov-divider, .dark .ov-file-browser, .dark .ov-file-browser-entries, .dark .ov-file-preview, .dark .ov-file-tree, .dark .ov-module-placeholder, .dark .ov-popover, .dark .ov-scope-switcher, .dark .ov-tooltip, .dark .ov-tui, .dark .ov-viking-bot, .dark .ov-viking-bot__interaction {
34
+ --ov-ui-primary-default: #5f5fff;
35
+ --ov-ui-primary-hover-default: #7075ff;
36
+ --ov-ui-primary-active-default: #4242ba;
37
+ --ov-ui-primary-light-default: #1a1632;
38
+ --ov-ui-connect-glow-warm-default: #ff952b05;
39
+ --ov-ui-connect-glow-pink-default: #fb4fbc08;
40
+ --ov-ui-connect-glow-pink-soft-default: #fb4fbc05;
41
+ --ov-ui-text-1-default: #c7ccd6;
42
+ --ov-ui-text-2-default: #9da3af;
43
+ --ov-ui-text-3-default: #737a87;
44
+ --ov-ui-text-description-default: #fff6;
45
+ --ov-ui-text-disabled-default: #42464e;
46
+ --ov-ui-border-1-default: #23252a;
47
+ --ov-ui-border-2-default: #2e3138;
48
+ --ov-ui-border-3-default: #3a3d45;
49
+ --ov-ui-bg-1-default: #131416;
50
+ --ov-ui-bg-3-default: #1b1d21;
51
+ --ov-ui-bg-4-default: #202227;
52
+ --ov-ui-bg-5-default: #23252a;
53
+ --ov-ui-focus-default: #5f5fff;
54
+ --ov-ui-fill-hover-default: #23252a;
55
+ --ov-ui-status-error-default: #ff9595;
56
+ --ov-ui-warning-default: #e0a04a;
57
+ --ov-ui-warning-light-default: #3a2f14;
58
+ --ov-ui-tooltip-bg-default: #2a2d33;
59
+ --ov-ui-tooltip-text-default: #f0f1f3;
60
+ }
61
+
62
+ .ov-agent-connect {
63
+ --ov-ui-connect-card-default: #fbfbfc;
64
+ --ov-ui-connect-tabs-default: #f7f7f9;
65
+ --ov-ui-connect-selected-default: #f3f4f7;
66
+ --ov-ui-connect-border-default: #edeef2;
67
+ --ov-ui-connect-outline-default: #e1e3ea;
68
+ --ov-ui-connect-muted-default: #787c91;
69
+ --ov-ui-connect-notice-default: #2e2984;
70
+ }
71
+
72
+ .dark .ov-agent-connect {
73
+ --ov-ui-connect-card-default: var(--ov-ui-bg-3-default);
74
+ --ov-ui-connect-tabs-default: var(--ov-ui-bg-3-default);
75
+ --ov-ui-connect-selected-default: var(--ov-ui-bg-4-default);
76
+ --ov-ui-connect-border-default: var(--ov-ui-border-1-default);
77
+ --ov-ui-connect-outline-default: var(--ov-ui-border-2-default);
78
+ --ov-ui-connect-muted-default: var(--ov-ui-text-3-default);
79
+ --ov-ui-connect-notice-default: var(--ov-ui-text-2-default);
80
+ }
81
+
1
82
  .ov-scope-switcher {
83
+ --ov-ui-scope-switcher-divider: var(--ov-ui-color-text-disabled, var(--ov-ui-text-disabled-default, #a5a7bb));
84
+ --ov-ui-scope-switcher-icon: var(--ov-ui-color-text-2, var(--ov-ui-text-2-default, #3f3f51));
85
+ --ov-ui-scope-switcher-option-icon: var(--ov-ui-scope-switcher-icon);
86
+ --ov-ui-scope-switcher-row-hover: var(--ov-ui-color-fill-hover, var(--ov-ui-fill-hover-default, #f1f2f9));
87
+ --ov-ui-scope-switcher-tag-background: var(--ov-ui-color-bg-5, var(--ov-ui-bg-5-default, #f1f2f9));
88
+ --ov-ui-scope-switcher-tag-text: var(--ov-ui-color-text-2, var(--ov-ui-text-2-default, #3f3f51));
89
+ --ov-ui-scope-switcher-panel-width: 272px;
90
+ --ov-ui-scope-switcher-option-height: 44px;
91
+ --ov-ui-scope-switcher-option-gap: 2px;
92
+ --ov-ui-scope-switcher-list-max-height: 288px;
93
+ --ov-ui-scope-switcher-panel-max-height: calc(var(--ov-ui-scope-switcher-list-max-height) + 54px);
94
+ --ov-ui-scope-switcher-option-icon-size: 24px;
95
+ --ov-ui-scope-switcher-option-icon-radius: 12px;
2
96
  box-sizing: border-box;
3
- border: 1px solid var(--ov-ui-border, #edeef2);
4
- background: var(--ov-ui-scope-background, transparent);
5
97
  max-width: 100%;
6
- min-height: 32px;
7
- color: var(--ov-ui-text, #0b0b0f);
98
+ height: 32px;
99
+ color: var(--ov-ui-color-text-1, var(--ov-ui-text-1-default, #0b0b0f));
8
100
  font-family: var(--ov-ui-font-family, "PingFang SC",
9
101
  -apple-system,
10
102
  BlinkMacSystemFont,
11
103
  "Segoe UI",
12
104
  sans-serif);
13
- letter-spacing: .036px;
14
- border-radius: 16px;
15
- flex-wrap: wrap;
105
+ letter-spacing: .039px;
106
+ flex-wrap: nowrap;
16
107
  align-items: center;
17
108
  gap: 4px;
18
- padding: 3px 4px;
19
- font-size: 12px;
20
- line-height: 20px;
109
+ font-size: 13px;
110
+ line-height: 22px;
21
111
  display: inline-flex;
22
112
  }
23
113
 
@@ -26,6 +116,7 @@
26
116
  }
27
117
 
28
118
  .ov-scope-switcher__level {
119
+ flex-shrink: 1;
29
120
  align-items: center;
30
121
  gap: 4px;
31
122
  min-width: 0;
@@ -36,7 +127,8 @@
36
127
 
37
128
  .ov-scope-switcher__level + .ov-scope-switcher__level:before {
38
129
  content: "/";
39
- color: var(--ov-ui-text-muted, #c9cbd4);
130
+ color: var(--ov-ui-color-text-disabled, var(--ov-ui-text-disabled-default, #a5a7bb));
131
+ letter-spacing: .039px;
40
132
  margin-right: 4px;
41
133
  font-size: 13px;
42
134
  font-weight: 500;
@@ -44,17 +136,19 @@
44
136
  }
45
137
 
46
138
  .ov-scope-switcher__trigger {
139
+ min-width: 0;
47
140
  max-width: min(260px, 100%);
48
- height: 24px;
141
+ height: 32px;
49
142
  color: inherit;
50
143
  font: inherit;
51
144
  vertical-align: middle;
52
145
  background: none;
53
- border: 0;
54
- border-radius: 99px;
146
+ border: 1px solid #0000;
147
+ border-radius: 16px;
55
148
  align-items: center;
56
- gap: 6px;
57
- padding: 2px 8px;
149
+ gap: 8px;
150
+ padding: 0 8px;
151
+ font-weight: 500;
58
152
  display: inline-flex;
59
153
  }
60
154
 
@@ -62,39 +156,53 @@ button.ov-scope-switcher__trigger {
62
156
  cursor: pointer;
63
157
  }
64
158
 
65
- .ov-scope-switcher__trigger:hover:not(:disabled), .ov-scope-switcher__trigger[aria-expanded="true"] {
66
- background: var(--ov-ui-hover, #edeffc);
159
+ button.ov-scope-switcher__trigger:hover:not(:disabled), button.ov-scope-switcher__trigger:focus-visible, button.ov-scope-switcher__trigger[aria-expanded="true"] {
160
+ border-color: var(--ov-ui-color-primary, var(--ov-ui-primary-default, #5252ff));
67
161
  }
68
162
 
69
163
  .ov-scope-switcher__label {
70
- white-space: nowrap;
71
164
  text-overflow: ellipsis;
165
+ white-space: nowrap;
166
+ min-width: 0;
72
167
  overflow: hidden;
73
168
  }
74
169
 
75
170
  .ov-scope-switcher__icon {
76
- flex: none;
77
- justify-content: center;
78
- align-items: center;
79
171
  width: 14px;
80
172
  height: 14px;
173
+ color: var(--ov-ui-scope-switcher-icon);
174
+ flex: 0 0 14px;
175
+ justify-content: center;
176
+ align-items: center;
81
177
  display: inline-flex;
82
178
  }
83
179
 
84
- .ov-scope-switcher__icon img {
180
+ .ov-scope-switcher__icon > svg, .ov-scope-switcher__icon > img {
181
+ width: 14px;
182
+ height: 14px;
85
183
  display: block;
86
184
  }
87
185
 
88
186
  .ov-scope-switcher__tag {
89
- color: var(--ov-ui-text-muted, #9295a5);
90
- font-size: 12px;
187
+ border: 1px solid
188
+ var(--ov-ui-color-border-2, var(--ov-ui-border-2-default, #e1e4f2));
189
+ background: var(--ov-ui-scope-switcher-tag-background);
190
+ color: var(--ov-ui-scope-switcher-tag-text);
191
+ border-radius: 4px;
192
+ flex-shrink: 0;
193
+ padding: 1px 6px;
194
+ font-size: 10px;
195
+ font-weight: 500;
196
+ line-height: 16px;
91
197
  }
92
198
 
93
199
  .ov-scope-switcher__arrow {
94
- flex: 0 0 14px;
95
200
  width: 14px;
96
201
  height: 14px;
97
- margin-left: -2px;
202
+ color: var(--ov-ui-scope-switcher-icon);
203
+ flex: 0 0 14px;
204
+ justify-content: center;
205
+ align-items: center;
98
206
  transition: transform .16s;
99
207
  display: inline-flex;
100
208
  }
@@ -103,6 +211,10 @@ button.ov-scope-switcher__trigger {
103
211
  transform: rotate(180deg);
104
212
  }
105
213
 
214
+ .ov-scope-switcher__trigger:disabled .ov-scope-switcher__arrow {
215
+ opacity: .55;
216
+ }
217
+
106
218
  @media (prefers-reduced-motion: reduce) {
107
219
  .ov-scope-switcher__arrow {
108
220
  transition: none;
@@ -111,51 +223,107 @@ button.ov-scope-switcher__trigger {
111
223
 
112
224
  .ov-scope-switcher__panel {
113
225
  z-index: 30;
114
- border: 1px solid var(--ov-ui-border, #edeef2);
115
- background: var(--ov-ui-surface, #fff);
116
- width: min(272px, 100vw - 32px);
117
- max-height: min(540px, 70vh);
118
- color: var(--ov-ui-text, #0b0b0f);
226
+ width: min(var(--ov-ui-scope-switcher-panel-width), calc(100vw - 32px));
227
+ max-height: min(var(--ov-ui-scope-switcher-panel-max-height),
228
+ calc(100vh - 128px));
229
+ border: 1px solid
230
+ var(--ov-ui-color-border-1, var(--ov-ui-border-1-default, #f0f2fa));
231
+ background: var(--ov-ui-color-bg-1, var(--ov-ui-bg-1-default, #fff));
232
+ color: var(--ov-ui-color-text-1, var(--ov-ui-text-1-default, #0b0b0f));
119
233
  letter-spacing: .039px;
120
234
  border-radius: 12px;
121
- padding: 7px;
235
+ flex-direction: column;
236
+ padding: 8px;
122
237
  font-size: 13px;
123
238
  line-height: 22px;
239
+ display: flex;
124
240
  position: absolute;
125
- top: calc(100% + 8px);
241
+ top: calc(100% + 4px);
126
242
  left: 0;
127
- overflow: auto;
243
+ overflow: hidden;
128
244
  box-shadow: 0 15px 35px -2px #0000000d, 0 5px 15px #0000000d;
129
245
  }
130
246
 
247
+ .ov-scope-switcher__panel--custom {
248
+ min-height: 0;
249
+ overflow-y: auto;
250
+ }
251
+
131
252
  .ov-scope-switcher__level:last-child:not(:first-child) .ov-scope-switcher__panel {
132
253
  left: auto;
133
254
  right: 0;
134
255
  }
135
256
 
257
+ .ov-scope-switcher__panel-inner {
258
+ flex-direction: column;
259
+ flex: auto;
260
+ min-height: 0;
261
+ display: flex;
262
+ }
263
+
264
+ .ov-scope-switcher__panel-body {
265
+ flex-direction: column;
266
+ flex: auto;
267
+ gap: 8px;
268
+ min-height: 0;
269
+ display: flex;
270
+ }
271
+
272
+ .ov-scope-switcher__search-field {
273
+ border: 1px solid
274
+ var(--ov-ui-color-border-3, var(--ov-ui-border-3-default, #d7daea));
275
+ background: var(--ov-ui-color-bg-1, var(--ov-ui-bg-1-default, #fff));
276
+ border-radius: 6px;
277
+ flex-shrink: 0;
278
+ align-items: center;
279
+ gap: 4px;
280
+ height: 28px;
281
+ padding: 3px 8px;
282
+ display: flex;
283
+ }
284
+
285
+ .ov-scope-switcher__search-field:focus-within {
286
+ border-color: var(--ov-ui-color-primary, var(--ov-ui-primary-default, #5252ff));
287
+ }
288
+
289
+ .ov-scope-switcher__search-icon {
290
+ width: 16px;
291
+ height: 16px;
292
+ color: var(--ov-ui-scope-switcher-icon);
293
+ flex: 0 0 16px;
294
+ }
295
+
136
296
  .ov-scope-switcher__search {
137
- border: 1px solid var(--ov-ui-border, #dfe1e8);
138
- width: 100%;
297
+ min-width: 0;
298
+ height: 100%;
139
299
  color: inherit;
140
300
  font: inherit;
141
301
  background: none;
142
- border-radius: 8px;
143
- margin-bottom: 8px;
144
- padding: 8px 10px;
302
+ border: 0;
303
+ outline: none;
304
+ flex: 1;
305
+ padding: 0;
306
+ font-size: 12px;
307
+ line-height: 22px;
308
+ }
309
+
310
+ .ov-scope-switcher__search::placeholder {
311
+ color: var(--ov-ui-color-text-3, var(--ov-ui-text-3-default, #6e718c));
145
312
  }
146
313
 
147
314
  .ov-scope-switcher__list {
315
+ gap: var(--ov-ui-scope-switcher-option-gap);
316
+ min-height: 0;
317
+ max-height: var(--ov-ui-scope-switcher-list-max-height);
148
318
  overscroll-behavior: contain;
149
319
  flex-direction: column;
150
- gap: 4px;
151
- max-height: 280px;
152
320
  display: flex;
153
- overflow: auto;
321
+ overflow-y: auto;
154
322
  }
155
323
 
156
324
  .ov-scope-switcher__option {
157
325
  width: 100%;
158
- min-height: 44px;
326
+ min-height: var(--ov-ui-scope-switcher-option-height);
159
327
  color: inherit;
160
328
  font: inherit;
161
329
  text-align: start;
@@ -170,8 +338,28 @@ button.ov-scope-switcher__trigger {
170
338
  display: flex;
171
339
  }
172
340
 
173
- .ov-scope-switcher__option:hover:not([aria-disabled="true"]), .ov-scope-switcher__option[aria-selected="true"] {
174
- background: var(--ov-ui-hover, #f5f7ff);
341
+ .ov-scope-switcher__option:hover:not([aria-disabled="true"]):not([aria-selected="true"]), .ov-scope-switcher__option:focus-visible:not([aria-disabled="true"]):not([aria-selected="true"]) {
342
+ background: var(--ov-ui-scope-switcher-row-hover);
343
+ }
344
+
345
+ .ov-scope-switcher__option[aria-selected="true"] {
346
+ background: var(--ov-ui-color-primary-light, var(--ov-ui-primary-light-default, #f5f7ff));
347
+ }
348
+
349
+ .ov-scope-switcher__option .ov-scope-switcher__icon {
350
+ flex: 0 0 var(--ov-ui-scope-switcher-option-icon-size);
351
+ width: var(--ov-ui-scope-switcher-option-icon-size);
352
+ height: var(--ov-ui-scope-switcher-option-icon-size);
353
+ border: .5px solid
354
+ var(--ov-ui-color-border-1, var(--ov-ui-border-1-default, #f0f2fa));
355
+ border-radius: var(--ov-ui-scope-switcher-option-icon-radius);
356
+ background: var(--ov-ui-color-bg-1, var(--ov-ui-bg-1-default, #fff));
357
+ color: var(--ov-ui-scope-switcher-option-icon);
358
+ }
359
+
360
+ .ov-scope-switcher__option .ov-scope-switcher__icon > svg, .ov-scope-switcher__option .ov-scope-switcher__icon > img {
361
+ width: 14px;
362
+ height: 14px;
175
363
  }
176
364
 
177
365
  .ov-scope-switcher__option-text {
@@ -182,42 +370,78 @@ button.ov-scope-switcher__trigger {
182
370
  overflow: hidden;
183
371
  }
184
372
 
373
+ .ov-scope-switcher__option-text > span {
374
+ text-overflow: ellipsis;
375
+ white-space: nowrap;
376
+ overflow: hidden;
377
+ }
378
+
185
379
  .ov-scope-switcher__option-text small {
186
- color: var(--ov-ui-text-muted, #737889);
380
+ color: var(--ov-ui-color-text-3, var(--ov-ui-text-3-default, #6e718c));
381
+ text-overflow: ellipsis;
382
+ white-space: nowrap;
383
+ font-size: 12px;
384
+ line-height: 20px;
385
+ overflow: hidden;
386
+ }
387
+
388
+ .ov-scope-switcher__option[aria-selected="true"] .ov-scope-switcher__option-text > span {
389
+ font-weight: 500;
187
390
  }
188
391
 
189
392
  .ov-scope-switcher__option mark {
190
- background: var(--ov-ui-highlight, #fff0b3);
191
- color: inherit;
393
+ color: var(--ov-ui-color-primary, var(--ov-ui-primary-default, #5252ff));
394
+ background: none;
395
+ padding: 0;
192
396
  }
193
397
 
194
398
  .ov-scope-switcher__check {
195
- flex: 0 0 16px;
196
399
  width: 16px;
197
400
  height: 16px;
401
+ color: var(--ov-ui-color-primary, var(--ov-ui-primary-default, #5252ff));
402
+ flex: 0 0 16px;
403
+ justify-content: center;
404
+ align-items: center;
198
405
  display: inline-flex;
199
406
  }
200
407
 
201
408
  .ov-scope-switcher__state {
202
- color: var(--ov-ui-text-muted, #737889);
203
- padding: 20px 10px;
409
+ min-height: 88px;
410
+ color: var(--ov-ui-color-text-3, var(--ov-ui-text-3-default, #6e718c));
411
+ text-align: center;
412
+ flex: 1;
413
+ justify-content: center;
414
+ align-items: center;
415
+ padding: 12px;
416
+ font-size: 13px;
417
+ line-height: 22px;
418
+ display: flex;
419
+ }
420
+
421
+ .ov-scope-switcher button:disabled {
422
+ cursor: default;
204
423
  }
205
424
 
206
- .ov-scope-switcher button:disabled, .ov-scope-switcher__option[aria-disabled="true"] {
425
+ .ov-scope-switcher__option[aria-disabled="true"] {
207
426
  opacity: .5;
208
427
  cursor: not-allowed;
209
428
  }
210
429
 
211
430
  .ov-scope-switcher :focus-visible {
212
- outline: 2px solid var(--ov-ui-primary, #6256d9);
431
+ outline: 2px solid
432
+ var(--ov-ui-color-primary, var(--ov-ui-primary-default, #5252ff));
213
433
  outline-offset: 2px;
214
434
  }
215
435
 
216
- @media (width <= 600px) {
217
- .ov-scope-switcher__trigger {
218
- max-width: 210px;
219
- }
436
+ .ov-scope-switcher__trigger:focus-visible, .ov-scope-switcher__search:focus-visible {
437
+ outline: none;
438
+ }
220
439
 
440
+ .ov-scope-switcher__option:focus-visible {
441
+ outline-offset: -2px;
442
+ }
443
+
444
+ @media (width <= 600px) {
221
445
  .ov-scope-switcher__panel, .ov-scope-switcher__level:last-child:not(:first-child) .ov-scope-switcher__panel {
222
446
  width: auto;
223
447
  max-height: 60dvh;
@@ -226,24 +450,6 @@ button.ov-scope-switcher__trigger {
226
450
  }
227
451
  }
228
452
 
229
- .ov-scope-switcher__option[aria-selected="true"] {
230
- font-weight: 500;
231
- }
232
-
233
- .ov-scope-switcher__option-text > span {
234
- text-overflow: ellipsis;
235
- white-space: nowrap;
236
- overflow: hidden;
237
- }
238
-
239
- .ov-scope-switcher__option .ov-scope-switcher__icon {
240
- border: .5px solid var(--ov-ui-border, #edeef2);
241
- background: var(--ov-ui-surface, #fff);
242
- border-radius: 50%;
243
- width: 24px;
244
- height: 24px;
245
- }
246
-
247
453
 
248
454
 
249
455