@openviking/react 0.1.7 → 0.1.8-beta.10.1.g8e5299efeb0a

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 (113) hide show
  1. package/README.md +11 -1
  2. package/dist/1~0.js +57 -0
  3. package/dist/3~0.js +171 -5
  4. package/dist/5~0.js +181 -0
  5. package/dist/6~0.js +48 -0
  6. package/dist/components/agent-connect/style.css +4 -2
  7. package/dist/components/api-key-login-form/api-key-login-form.d.ts +2 -0
  8. package/dist/components/api-key-login-form/index.d.ts +3 -0
  9. package/dist/components/api-key-login-form/style.css +438 -0
  10. package/dist/components/api-key-login-form/style.js +0 -0
  11. package/dist/components/api-key-login-form/types.d.ts +7 -0
  12. package/dist/components/api-key-login-form.js +1 -0
  13. package/dist/components/directory-tour/directory-tour-intro.d.ts +3 -0
  14. package/dist/components/directory-tour/index.d.ts +2 -1
  15. package/dist/components/directory-tour/style.css +154 -26
  16. package/dist/components/directory-tour/tour-card.d.ts +14 -0
  17. package/dist/components/directory-tour/types.d.ts +24 -1
  18. package/dist/components/directory-tour/use-tour-anchor.d.ts +1 -0
  19. package/dist/components/directory-tour/use-tour-position.d.ts +4 -1
  20. package/dist/components/directory-tour/use-tour-theme.d.ts +2 -0
  21. package/dist/components/directory-tour.js +52 -1
  22. package/dist/components/email-login-form/email-login-form.d.ts +2 -0
  23. package/dist/components/email-login-form/index.d.ts +3 -0
  24. package/dist/components/email-login-form/style.css +438 -0
  25. package/dist/components/email-login-form/style.js +0 -0
  26. package/dist/components/email-login-form/types.d.ts +11 -0
  27. package/dist/components/email-login-form.js +1 -0
  28. package/dist/components/experience-dashboard/experience-impact.d.ts +3 -1
  29. package/dist/components/experience-dashboard/style.css +4 -2
  30. package/dist/components/file-browser-entries/style.css +12 -6
  31. package/dist/components/file-preview/file-preview-header.d.ts +4 -21
  32. package/dist/components/file-preview/file-preview-toolbar.d.ts +7 -0
  33. package/dist/components/file-preview/locales/en-US.d.ts +9 -0
  34. package/dist/components/file-preview/locales/zh-CN.d.ts +9 -0
  35. package/dist/components/file-preview/style.css +116 -2
  36. package/dist/components/file-preview/types.d.ts +14 -21
  37. package/dist/components/file-tree/style.css +4 -2
  38. package/dist/components/invitation-confirmation/index.d.ts +3 -0
  39. package/dist/components/invitation-confirmation/invitation-confirmation.d.ts +2 -0
  40. package/dist/components/invitation-confirmation/style.css +438 -0
  41. package/dist/components/invitation-confirmation/style.js +0 -0
  42. package/dist/components/invitation-confirmation/types.d.ts +20 -0
  43. package/dist/components/invitation-confirmation.js +1 -0
  44. package/dist/components/login-method-selector/index.d.ts +2 -0
  45. package/dist/components/login-method-selector/login-method-selector.d.ts +2 -0
  46. package/dist/components/login-method-selector/style.css +438 -0
  47. package/dist/components/login-method-selector/style.js +0 -0
  48. package/dist/components/login-method-selector/types.d.ts +14 -0
  49. package/dist/components/login-method-selector.js +1 -0
  50. package/dist/components/password-reset-request-form/index.d.ts +3 -0
  51. package/dist/components/password-reset-request-form/password-reset-request-form.d.ts +2 -0
  52. package/dist/components/password-reset-request-form/style.css +438 -0
  53. package/dist/components/password-reset-request-form/style.js +0 -0
  54. package/dist/components/password-reset-request-form/types.d.ts +13 -0
  55. package/dist/components/password-reset-request-form.js +1 -0
  56. package/dist/components/password-setup-form/index.d.ts +3 -0
  57. package/dist/components/password-setup-form/password-setup-form.d.ts +2 -0
  58. package/dist/components/password-setup-form/style.css +438 -0
  59. package/dist/components/password-setup-form/style.js +0 -0
  60. package/dist/components/password-setup-form/types.d.ts +10 -0
  61. package/dist/components/password-setup-form.js +1 -0
  62. package/dist/components/scope-switcher/style.css +4 -2
  63. package/dist/components/scope-switcher.js +1 -1
  64. package/dist/components/style.css +2966 -58
  65. package/dist/components/tui/style.css +8 -4
  66. package/dist/components/viking-bot/style.css +12 -6
  67. package/dist/components/wiki-dashboard/index.d.ts +1 -1
  68. package/dist/components/wiki-dashboard/style.css +16 -4
  69. package/dist/components/wiki-dashboard/types.d.ts +12 -16
  70. package/dist/components/wiki-dashboard/wiki-action-button.d.ts +2 -9
  71. package/dist/components/wiki-dashboard/wiki-conflict-card.d.ts +3 -10
  72. package/dist/d~0.js +28 -0
  73. package/dist/ep~0.js +281 -133
  74. package/dist/fi~0.js +339 -0
  75. package/dist/fj~0.js +32 -67
  76. package/dist/fl~0.js +3 -2
  77. package/dist/f~0.js +63 -326
  78. package/dist/g~0.js +135 -0
  79. package/dist/icons/index.d.ts +2 -0
  80. package/dist/icons.js +1 -1
  81. package/dist/index.d.ts +12 -0
  82. package/dist/index.js +8 -2
  83. package/dist/k~0.js +44 -4
  84. package/dist/l5~0.js +3813 -0
  85. package/dist/lk~0.js +1 -1
  86. package/dist/l~0.js +54 -3811
  87. package/dist/modules/console/style.css +28 -14
  88. package/dist/modules/file-browser/file-browser-detail-icons.d.ts +0 -6
  89. package/dist/modules/file-browser/file-browser-detail.d.ts +2 -23
  90. package/dist/modules/file-browser/file-browser.d.ts +1 -1
  91. package/dist/modules/file-browser/fs-file-editing.d.ts +4 -0
  92. package/dist/modules/file-browser/fs-preview-images.d.ts +3 -0
  93. package/dist/modules/file-browser/fs-read-file.d.ts +1 -1
  94. package/dist/modules/file-browser/style.css +156 -70
  95. package/dist/modules/file-browser/types.d.ts +2 -0
  96. package/dist/modules/file-browser/use-file-browser-acl.d.ts +1 -0
  97. package/dist/modules/file-browser/wiki-dashboard-pane.d.ts +2 -4
  98. package/dist/modules/file-browser.js +1 -1
  99. package/dist/modules/scope-cascade/style.css +4 -2
  100. package/dist/modules/style.css +192 -88
  101. package/dist/n~0.js +1 -1
  102. package/dist/p0~0.js +27 -0
  103. package/dist/p~0.js +34 -25
  104. package/dist/shared/auth/agreements.d.ts +10 -0
  105. package/dist/shared/auth/fields.d.ts +15 -0
  106. package/dist/shared/auth/form-frame.d.ts +12 -0
  107. package/dist/shared/auth/locales/en-US.d.ts +24 -0
  108. package/dist/shared/auth/locales/zh-CN.d.ts +24 -0
  109. package/dist/shared/auth/types.d.ts +61 -0
  110. package/dist/shared/auth/use-auth-labels.d.ts +3 -0
  111. package/dist/shared/auth/use-form.d.ts +8 -0
  112. package/dist/style.css +3364 -350
  113. package/package.json +32 -2
@@ -0,0 +1,438 @@
1
+ .ov-button, .ov-input, .ov-textarea, .ov-directory-tour, .ov-wiki-dashboard, .ov-experience-dashboard, .ov-auth, .ov-agent-connect, .ov-console, .ov-divider, .ov-file-browser-entries, .ov-drawer, .ov-modal, .ov-file-browser, .ov-file-preview, .ov-file-tree, .ov-module-placeholder, .ov-popover, .ov-scope-switcher, .ov-tooltip, .ov-tui, .ov-viking-bot, .ov-viking-bot__popover, .ov-viking-bot__reference-picker--mention, .ov-viking-bot__interaction {
2
+ --ov-ui-tour-shadow-default: 0 15px 35px #0000000d, 0 5px 15px #0000000d;
3
+ --ov-ui-tour-highlight-default: #5252ff14;
4
+ --ov-ui-auth-on-primary-default: #fff;
5
+ --ov-ui-auth-backdrop-default: #0006;
6
+ --ov-ui-primary-default: #5252ff;
7
+ --ov-ui-primary-hover-default: #7075ff;
8
+ --ov-ui-primary-active-default: #3833d2;
9
+ --ov-ui-primary-disabled-default: #acb4ff;
10
+ --ov-ui-text-on-primary-default: #fff;
11
+ --ov-ui-primary-light-default: #f5f7ff;
12
+ --ov-ui-connect-glow-warm-default: #ff952b0a;
13
+ --ov-ui-connect-glow-pink-default: #fb4fbc0f;
14
+ --ov-ui-connect-glow-pink-soft-default: #fb4fbc0a;
15
+ --ov-ui-on-primary-default: #fff;
16
+ --ov-ui-text-1-default: #0b0b0f;
17
+ --ov-ui-text-2-default: #3f3f51;
18
+ --ov-ui-text-3-default: #6e718c;
19
+ --ov-ui-text-description-default: #0006;
20
+ --ov-ui-text-disabled-default: #a5a7bb;
21
+ --ov-ui-border-1-default: #f0f2fa;
22
+ --ov-ui-border-2-default: #e1e4f2;
23
+ --ov-ui-border-3-default: #d7daea;
24
+ --ov-ui-bg-1-default: #fff;
25
+ --ov-ui-bg-3-default: #f7f8fd;
26
+ --ov-ui-bg-4-default: #f6f7fa;
27
+ --ov-ui-bg-5-default: #f1f2f9;
28
+ --ov-ui-code-bg-default: #fbfbfc;
29
+ --ov-ui-status-success-default: #1f9d55;
30
+ --ov-ui-shadow-default: #0f172a;
31
+ --ov-ui-shadow-control-default: #0000000d;
32
+ --ov-ui-focus-default: #5252ff;
33
+ --ov-ui-fill-hover-default: #f1f2f9;
34
+ --ov-ui-status-error-default: #c43838;
35
+ --ov-ui-warning-default: #b26a00;
36
+ --ov-ui-warning-light-default: #fff0b3;
37
+ --ov-ui-overlay-default: #0006;
38
+ --ov-ui-tooltip-bg-default: #1f2329;
39
+ --ov-ui-tooltip-text-default: #fff;
40
+ --ov-ui-library-swatch-1-default: linear-gradient(145deg,
41
+ #ffd8ec 8%,
42
+ #ffabc8 46%,
43
+ #d8cbff 100%);
44
+ --ov-ui-library-swatch-2-default: linear-gradient(145deg,
45
+ #d9e8ff 8%,
46
+ #b8a6ff 52%,
47
+ #f3d6ff 100%);
48
+ --ov-ui-library-swatch-3-default: linear-gradient(145deg,
49
+ #ffe6bc 8%,
50
+ #ffaf96 48%,
51
+ #ff8bc5 100%);
52
+ --ov-ui-library-swatch-4-default: linear-gradient(145deg,
53
+ #eaf7ba 8%,
54
+ #b5efb8 52%,
55
+ #73d9c6 100%);
56
+ --ov-ui-library-swatch-5-default: linear-gradient(145deg,
57
+ #fff1ba 8%,
58
+ #ffc776 52%,
59
+ #bd9cff 100%);
60
+ }
61
+
62
+ html.dark .ov-button, html.dark .ov-input, html.dark .ov-textarea, .dark .ov-directory-tour, html.dark .ov-wiki-dashboard, html.dark .ov-experience-dashboard, .dark .ov-auth, .dark .ov-agent-connect, .dark .ov-console, .dark .ov-divider, .dark .ov-file-browser-entries, .dark .ov-drawer, .dark .ov-modal, .dark .ov-file-browser, .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__popover, .dark .ov-viking-bot__reference-picker--mention, .dark .ov-viking-bot__interaction {
63
+ --ov-ui-primary-default: #5f5fff;
64
+ --ov-ui-primary-hover-default: #7075ff;
65
+ --ov-ui-primary-active-default: #4242ba;
66
+ --ov-ui-primary-light-default: #1a1632;
67
+ --ov-ui-connect-glow-warm-default: #ff952b05;
68
+ --ov-ui-connect-glow-pink-default: #fb4fbc08;
69
+ --ov-ui-connect-glow-pink-soft-default: #fb4fbc05;
70
+ --ov-ui-text-1-default: #c7ccd6;
71
+ --ov-ui-text-2-default: #9da3af;
72
+ --ov-ui-text-3-default: #737a87;
73
+ --ov-ui-text-description-default: #fff6;
74
+ --ov-ui-text-disabled-default: #42464e;
75
+ --ov-ui-border-1-default: #23252a;
76
+ --ov-ui-border-2-default: #2e3138;
77
+ --ov-ui-border-3-default: #3a3d45;
78
+ --ov-ui-bg-1-default: #131416;
79
+ --ov-ui-bg-3-default: #1b1d21;
80
+ --ov-ui-bg-4-default: #202227;
81
+ --ov-ui-bg-5-default: #23252a;
82
+ --ov-ui-focus-default: #5f5fff;
83
+ --ov-ui-fill-hover-default: #23252a;
84
+ --ov-ui-status-error-default: #ff9595;
85
+ --ov-ui-warning-default: #e0a04a;
86
+ --ov-ui-warning-light-default: #3a2f14;
87
+ --ov-ui-tooltip-bg-default: #2a2d33;
88
+ --ov-ui-overlay-default: #000000a3;
89
+ --ov-ui-tooltip-text-default: #f0f1f3;
90
+ }
91
+
92
+ .ov-button, .ov-input, .ov-textarea {
93
+ --ov-ui-bg-white-default: var(--ov-ui-bg-1-default);
94
+ --ov-ui-bg-2-default: #fafbfd;
95
+ --ov-ui-bg-7-default: var(--ov-ui-border-1-default);
96
+ --ov-ui-bg-11-default: #e1e3ef;
97
+ --ov-ui-border-4-default: #acb0c5;
98
+ --ov-ui-neutral-4-default: #c9cdd4;
99
+ --ov-ui-primary-muted-default: #8e96ff;
100
+ --ov-ui-primary-strong-default: var(--ov-ui-primary-active-default);
101
+ --ov-ui-link-default: var(--ov-ui-primary-default);
102
+ --ov-ui-link-active-default: var(--ov-ui-primary-active-default);
103
+ --ov-ui-text-5-default: #c9c9d4;
104
+ --ov-ui-on-primary-disabled-default: var(--ov-ui-text-on-primary-default);
105
+ --ov-ui-input-focus-ring-default: color-mix(in srgb,
106
+ var(--ov-ui-color-primary, var(--ov-ui-primary-default)) 30%,
107
+ transparent);
108
+ --ov-ui-error-default: #e31b54;
109
+ --ov-ui-error-bg-default: #ffecec;
110
+ --ov-ui-error-border-default: #ffa3a0;
111
+ }
112
+
113
+ html.dark .ov-button, html.dark .ov-input, html.dark .ov-textarea {
114
+ --ov-ui-bg-white-default: #fff0;
115
+ --ov-ui-bg-2-default: #fcfdfe03;
116
+ --ov-ui-bg-4-default: #f6f8fa0f;
117
+ --ov-ui-bg-5-default: #f1f3f514;
118
+ --ov-ui-bg-7-default: #1a1b1e;
119
+ --ov-ui-bg-11-default: #1e2023;
120
+ --ov-ui-border-2-default: #dde2e926;
121
+ --ov-ui-border-3-default: #dde2e94d;
122
+ --ov-ui-border-4-default: #6d6d6d;
123
+ --ov-ui-neutral-4-default: #5f5f60;
124
+ --ov-ui-primary-disabled-default: #3f3a89;
125
+ --ov-ui-primary-muted-default: #4c48b4;
126
+ --ov-ui-primary-strong-default: var(--ov-ui-primary-hover-default);
127
+ --ov-ui-link-default: #787dff;
128
+ --ov-ui-link-active-default: #949cff;
129
+ --ov-ui-text-disabled-default: #42464e;
130
+ --ov-ui-text-5-default: #e1e3ef;
131
+ --ov-ui-on-primary-disabled-default: #ffffff4d;
132
+ --ov-ui-input-focus-ring-default: #4583ff4d;
133
+ --ov-ui-error-default: #ff706d;
134
+ --ov-ui-error-bg-default: #9f211c33;
135
+ --ov-ui-error-border-default: #ff706d4d;
136
+ }
137
+
138
+ .dark .ov-viking-bot {
139
+ --ov-ui-code-bg-default: var(--ov-ui-bg-3-default);
140
+ }
141
+
142
+ .ov-agent-connect {
143
+ --ov-ui-connect-card-default: #fbfbfc;
144
+ --ov-ui-connect-tabs-default: #f7f7f9;
145
+ --ov-ui-connect-selected-default: #f3f4f7;
146
+ --ov-ui-connect-border-default: #edeef2;
147
+ --ov-ui-connect-outline-default: #e1e3ea;
148
+ --ov-ui-connect-muted-default: #787c91;
149
+ --ov-ui-connect-notice-default: #2e2984;
150
+ }
151
+
152
+ .dark .ov-agent-connect {
153
+ --ov-ui-connect-card-default: var(--ov-ui-bg-3-default);
154
+ --ov-ui-connect-tabs-default: var(--ov-ui-bg-3-default);
155
+ --ov-ui-connect-selected-default: var(--ov-ui-bg-4-default);
156
+ --ov-ui-connect-border-default: var(--ov-ui-border-1-default);
157
+ --ov-ui-connect-outline-default: var(--ov-ui-border-2-default);
158
+ --ov-ui-connect-muted-default: var(--ov-ui-text-3-default);
159
+ --ov-ui-connect-notice-default: var(--ov-ui-text-2-default);
160
+ }
161
+
162
+ .ov-wiki-dashboard, .ov-experience-dashboard, .ov-file-browser {
163
+ --ov-ui-dashboard-surface-default: #f8f8f8;
164
+ --ov-ui-dashboard-card-default: #fafafa;
165
+ --ov-ui-dashboard-muted-default: #787c91;
166
+ --ov-ui-dashboard-border-default: #edeef2;
167
+ --ov-ui-dashboard-warning-default: #eb7d00;
168
+ --ov-ui-dashboard-warning-light-default: #fff0e5;
169
+ --ov-ui-dashboard-danger-default: #d92d54;
170
+ --ov-ui-dashboard-danger-light-default: #ffecee;
171
+ --ov-ui-dashboard-success-default: #4f9c70;
172
+ }
173
+
174
+ html.dark .ov-wiki-dashboard, html.dark .ov-experience-dashboard, html.dark .ov-file-browser {
175
+ --ov-ui-dashboard-surface-default: var(--ov-ui-bg-3-default);
176
+ --ov-ui-dashboard-card-default: var(--ov-ui-bg-3-default);
177
+ --ov-ui-dashboard-muted-default: var(--ov-ui-text-3-default);
178
+ --ov-ui-dashboard-border-default: var(--ov-ui-border-1-default);
179
+ --ov-ui-dashboard-warning-default: var(--ov-ui-warning-default);
180
+ --ov-ui-dashboard-warning-light-default: var(--ov-ui-warning-light-default);
181
+ --ov-ui-dashboard-danger-default: var(--ov-ui-status-error-default);
182
+ --ov-ui-dashboard-danger-light-default: var(--ov-ui-bg-5-default);
183
+ --ov-ui-dashboard-success-default: var(--ov-ui-status-success-default);
184
+ }
185
+
186
+ .ov-auth {
187
+ box-sizing: border-box;
188
+ width: 100%;
189
+ max-width: 440px;
190
+ color: var(--ov-ui-color-text-1, var(--ov-ui-text-1-default));
191
+ background: var(--ov-ui-color-bg-1, var(--ov-ui-bg-1-default));
192
+ font: inherit;
193
+ font-size: 14px;
194
+ line-height: 1.6;
195
+ }
196
+
197
+ .ov-auth *, .ov-auth :before, .ov-auth :after {
198
+ box-sizing: border-box;
199
+ }
200
+
201
+ .ov-auth h2 {
202
+ margin: 0 0 12px;
203
+ font-size: 24px;
204
+ font-weight: 600;
205
+ }
206
+
207
+ .ov-auth p {
208
+ margin: 8px 0;
209
+ }
210
+
211
+ .ov-auth fieldset {
212
+ border: 0;
213
+ min-width: 0;
214
+ margin: 0;
215
+ padding: 0;
216
+ }
217
+
218
+ .ov-auth button, .ov-auth input {
219
+ font: inherit;
220
+ }
221
+
222
+ .ov-auth button, .ov-auth a, .ov-auth input[type="checkbox"] {
223
+ cursor: pointer;
224
+ }
225
+
226
+ .ov-auth button:disabled, .ov-auth input:disabled {
227
+ cursor: not-allowed;
228
+ opacity: .6;
229
+ }
230
+
231
+ .ov-auth button {
232
+ border: 1px solid var(--ov-ui-color-border-2, var(--ov-ui-border-2-default));
233
+ background: var(--ov-ui-color-bg-1, var(--ov-ui-bg-1-default));
234
+ color: inherit;
235
+ border-radius: 8px;
236
+ padding: 8px 16px;
237
+ }
238
+
239
+ .ov-auth button:hover:not(:disabled) {
240
+ background: var(--ov-ui-color-fill-hover, var(--ov-ui-fill-hover-default));
241
+ }
242
+
243
+ .ov-auth a, .ov-auth .ov-auth__link {
244
+ color: var(--ov-ui-color-primary, var(--ov-ui-primary-default));
245
+ }
246
+
247
+ .ov-auth a {
248
+ text-decoration: none;
249
+ }
250
+
251
+ .ov-auth a:hover {
252
+ text-decoration: underline;
253
+ }
254
+
255
+ .ov-auth .ov-auth__link {
256
+ background: none;
257
+ border: 0;
258
+ padding: 4px 0;
259
+ display: inline-block;
260
+ }
261
+
262
+ .ov-auth button:focus-visible, .ov-auth input:focus-visible, .ov-auth a:focus-visible {
263
+ outline: 2px solid var(--ov-ui-color-focus, var(--ov-ui-focus-default));
264
+ outline-offset: 2px;
265
+ }
266
+
267
+ .ov-auth .ov-auth__primary {
268
+ background: var(--ov-ui-color-primary, var(--ov-ui-primary-default));
269
+ color: var(--ov-ui-color-on-primary, var(--ov-ui-auth-on-primary-default));
270
+ border-color: var(--ov-ui-color-primary, var(--ov-ui-primary-default));
271
+ }
272
+
273
+ .ov-auth .ov-auth__primary:hover:not(:disabled) {
274
+ background: var(--ov-ui-color-primary-hover, var(--ov-ui-primary-hover-default));
275
+ }
276
+
277
+ .ov-auth__submit {
278
+ min-width: 120px;
279
+ margin: 24px 0 12px;
280
+ }
281
+
282
+ .ov-auth__field {
283
+ margin: 24px 0 0;
284
+ }
285
+
286
+ .ov-auth__label {
287
+ justify-content: space-between;
288
+ align-items: center;
289
+ gap: 12px;
290
+ margin-bottom: 8px;
291
+ display: flex;
292
+ }
293
+
294
+ .ov-auth__input-wrap {
295
+ border: 1px solid var(--ov-ui-color-border-2, var(--ov-ui-border-2-default));
296
+ border-radius: 8px;
297
+ align-items: center;
298
+ min-height: 44px;
299
+ display: flex;
300
+ }
301
+
302
+ .ov-auth__input-wrap:focus-within {
303
+ border-color: var(--ov-ui-color-primary, var(--ov-ui-primary-default));
304
+ }
305
+
306
+ .ov-auth__input-wrap input {
307
+ color: inherit;
308
+ border-radius: inherit;
309
+ background: none;
310
+ border: 0;
311
+ width: 100%;
312
+ min-width: 0;
313
+ padding: 10px 12px;
314
+ }
315
+
316
+ .ov-auth__input-wrap input[aria-invalid="true"] {
317
+ outline: 1px solid
318
+ var(--ov-ui-color-status-error, var(--ov-ui-status-error-default));
319
+ }
320
+
321
+ .ov-auth .ov-auth__visibility {
322
+ border: 0;
323
+ align-items: center;
324
+ margin-right: 6px;
325
+ padding: 6px;
326
+ display: flex;
327
+ }
328
+
329
+ .ov-auth__visibility svg {
330
+ stroke: currentColor;
331
+ stroke-width: 1.3px;
332
+ stroke-linecap: round;
333
+ stroke-linejoin: round;
334
+ width: 16px;
335
+ height: 16px;
336
+ }
337
+
338
+ .ov-auth__description, .ov-auth__account span, .ov-auth__details dt {
339
+ color: var(--ov-ui-color-text-3, var(--ov-ui-text-3-default));
340
+ }
341
+
342
+ .ov-auth__error {
343
+ color: var(--ov-ui-color-status-error, var(--ov-ui-status-error-default));
344
+ font-size: 13px;
345
+ }
346
+
347
+ .ov-auth__consent {
348
+ align-items: baseline;
349
+ gap: 8px;
350
+ margin: 12px 0;
351
+ display: flex;
352
+ }
353
+
354
+ .ov-auth__consent input {
355
+ accent-color: var(--ov-ui-color-primary, var(--ov-ui-primary-default));
356
+ }
357
+
358
+ .ov-auth__account {
359
+ background: var(--ov-ui-color-bg-3, var(--ov-ui-bg-3-default));
360
+ overflow-wrap: anywhere;
361
+ border-radius: 8px;
362
+ flex-direction: column;
363
+ margin-top: 24px;
364
+ padding: 12px 16px;
365
+ display: flex;
366
+ }
367
+
368
+ .ov-auth__details {
369
+ border: 1px solid var(--ov-ui-color-border-2, var(--ov-ui-border-2-default));
370
+ border-radius: 12px;
371
+ margin: 24px 0 0;
372
+ padding: 0 16px;
373
+ }
374
+
375
+ .ov-auth__details > div {
376
+ justify-content: space-between;
377
+ gap: 16px;
378
+ padding: 12px 0;
379
+ display: flex;
380
+ }
381
+
382
+ .ov-auth__details > div + div {
383
+ border-top: 1px solid
384
+ var(--ov-ui-color-border-2, var(--ov-ui-border-2-default));
385
+ }
386
+
387
+ .ov-auth__details dd {
388
+ text-align: right;
389
+ overflow-wrap: anywhere;
390
+ min-width: 0;
391
+ margin: 0;
392
+ }
393
+
394
+ .ov-auth__methods {
395
+ gap: 12px;
396
+ margin-top: 24px;
397
+ display: grid;
398
+ }
399
+
400
+ .ov-auth.ov-auth__dialog {
401
+ border: 1px solid var(--ov-ui-color-border-2, var(--ov-ui-border-2-default));
402
+ border-radius: 12px;
403
+ max-width: min(420px, 100vw - 32px);
404
+ margin: auto;
405
+ padding: 24px;
406
+ }
407
+
408
+ .ov-auth__dialog h2 {
409
+ font-size: 18px;
410
+ }
411
+
412
+ .ov-auth__dialog::backdrop {
413
+ background: var(--ov-ui-color-mask, var(--ov-ui-auth-backdrop-default));
414
+ }
415
+
416
+ .ov-auth__actions {
417
+ flex-wrap: wrap;
418
+ justify-content: flex-end;
419
+ gap: 12px;
420
+ margin-top: 24px;
421
+ display: flex;
422
+ }
423
+
424
+ .ov-auth input[type="checkbox"] {
425
+ appearance: auto;
426
+ flex: 0 0 16px;
427
+ width: 16px;
428
+ height: 16px;
429
+ margin: 0;
430
+ }
431
+
432
+ .ov-auth > .ov-auth__link {
433
+ width: fit-content;
434
+ display: block;
435
+ }
436
+
437
+
438
+
File without changes
@@ -0,0 +1,11 @@
1
+ import type { AuthFormOptions, AuthAction } from '../../shared/auth/types.js';
2
+ export interface EmailLoginFormProps extends AuthFormOptions {
3
+ defaultEmail?: string;
4
+ readOnlyEmail?: boolean;
5
+ forgotPassword?: AuthAction;
6
+ alternateLogin?: AuthAction;
7
+ onSubmit?: (values: {
8
+ email: string;
9
+ password: string;
10
+ }) => void;
11
+ }
@@ -0,0 +1 @@
1
+ export { EmailLoginForm } from "../l~0.js";
@@ -1,8 +1,10 @@
1
1
  import type { DashboardStatus } from '../../shared/dashboard/dashboard-state.js';
2
+ import type { Locale } from '../../shared/locale.js';
2
3
  import type { ExperienceDashboardData, ExperienceDashboardLabels } from './types.js';
3
- export declare function ExperienceImpact({ data, labels: t, days, onDaysChange, outcomesState, trajectoriesState, onOpenUri, }: {
4
+ export declare function ExperienceImpact({ data, labels: t, locale, days, onDaysChange, outcomesState, trajectoriesState, onOpenUri, }: {
4
5
  data: ExperienceDashboardData;
5
6
  labels: ExperienceDashboardLabels;
7
+ locale: Locale;
6
8
  days: number;
7
9
  onDaysChange: (days: number) => void;
8
10
  outcomesState: DashboardStatus;
@@ -167,9 +167,11 @@
167
167
  }
168
168
  }
169
169
 
170
- .ov-button, .ov-input, .ov-textarea, .ov-directory-tour, .ov-wiki-dashboard, .ov-experience-dashboard, .ov-agent-connect, .ov-console, .ov-divider, .ov-file-browser-entries, .ov-drawer, .ov-modal, .ov-file-browser, .ov-file-preview, .ov-file-tree, .ov-module-placeholder, .ov-popover, .ov-scope-switcher, .ov-tooltip, .ov-tui, .ov-viking-bot, .ov-viking-bot__popover, .ov-viking-bot__reference-picker--mention, .ov-viking-bot__interaction {
170
+ .ov-button, .ov-input, .ov-textarea, .ov-directory-tour, .ov-wiki-dashboard, .ov-experience-dashboard, .ov-auth, .ov-agent-connect, .ov-console, .ov-divider, .ov-file-browser-entries, .ov-drawer, .ov-modal, .ov-file-browser, .ov-file-preview, .ov-file-tree, .ov-module-placeholder, .ov-popover, .ov-scope-switcher, .ov-tooltip, .ov-tui, .ov-viking-bot, .ov-viking-bot__popover, .ov-viking-bot__reference-picker--mention, .ov-viking-bot__interaction {
171
171
  --ov-ui-tour-shadow-default: 0 15px 35px #0000000d, 0 5px 15px #0000000d;
172
172
  --ov-ui-tour-highlight-default: #5252ff14;
173
+ --ov-ui-auth-on-primary-default: #fff;
174
+ --ov-ui-auth-backdrop-default: #0006;
173
175
  --ov-ui-primary-default: #5252ff;
174
176
  --ov-ui-primary-hover-default: #7075ff;
175
177
  --ov-ui-primary-active-default: #3833d2;
@@ -226,7 +228,7 @@
226
228
  #bd9cff 100%);
227
229
  }
228
230
 
229
- html.dark .ov-button, html.dark .ov-input, html.dark .ov-textarea, .dark .ov-directory-tour, html.dark .ov-wiki-dashboard, html.dark .ov-experience-dashboard, .dark .ov-agent-connect, .dark .ov-console, .dark .ov-divider, .dark .ov-file-browser-entries, .dark .ov-drawer, .dark .ov-modal, .dark .ov-file-browser, .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__popover, .dark .ov-viking-bot__reference-picker--mention, .dark .ov-viking-bot__interaction {
231
+ html.dark .ov-button, html.dark .ov-input, html.dark .ov-textarea, .dark .ov-directory-tour, html.dark .ov-wiki-dashboard, html.dark .ov-experience-dashboard, .dark .ov-auth, .dark .ov-agent-connect, .dark .ov-console, .dark .ov-divider, .dark .ov-file-browser-entries, .dark .ov-drawer, .dark .ov-modal, .dark .ov-file-browser, .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__popover, .dark .ov-viking-bot__reference-picker--mention, .dark .ov-viking-bot__interaction {
230
232
  --ov-ui-primary-default: #5f5fff;
231
233
  --ov-ui-primary-hover-default: #7075ff;
232
234
  --ov-ui-primary-active-default: #4242ba;
@@ -1,6 +1,8 @@
1
- .ov-button, .ov-input, .ov-textarea, .ov-directory-tour, .ov-wiki-dashboard, .ov-experience-dashboard, .ov-agent-connect, .ov-console, .ov-divider, .ov-file-browser-entries, .ov-drawer, .ov-modal, .ov-file-browser, .ov-file-preview, .ov-file-tree, .ov-module-placeholder, .ov-popover, .ov-scope-switcher, .ov-tooltip, .ov-tui, .ov-viking-bot, .ov-viking-bot__popover, .ov-viking-bot__reference-picker--mention, .ov-viking-bot__interaction {
1
+ .ov-button, .ov-input, .ov-textarea, .ov-directory-tour, .ov-wiki-dashboard, .ov-experience-dashboard, .ov-auth, .ov-agent-connect, .ov-console, .ov-divider, .ov-file-browser-entries, .ov-drawer, .ov-modal, .ov-file-browser, .ov-file-preview, .ov-file-tree, .ov-module-placeholder, .ov-popover, .ov-scope-switcher, .ov-tooltip, .ov-tui, .ov-viking-bot, .ov-viking-bot__popover, .ov-viking-bot__reference-picker--mention, .ov-viking-bot__interaction {
2
2
  --ov-ui-tour-shadow-default: 0 15px 35px #0000000d, 0 5px 15px #0000000d;
3
3
  --ov-ui-tour-highlight-default: #5252ff14;
4
+ --ov-ui-auth-on-primary-default: #fff;
5
+ --ov-ui-auth-backdrop-default: #0006;
4
6
  --ov-ui-primary-default: #5252ff;
5
7
  --ov-ui-primary-hover-default: #7075ff;
6
8
  --ov-ui-primary-active-default: #3833d2;
@@ -57,7 +59,7 @@
57
59
  #bd9cff 100%);
58
60
  }
59
61
 
60
- html.dark .ov-button, html.dark .ov-input, html.dark .ov-textarea, .dark .ov-directory-tour, html.dark .ov-wiki-dashboard, html.dark .ov-experience-dashboard, .dark .ov-agent-connect, .dark .ov-console, .dark .ov-divider, .dark .ov-file-browser-entries, .dark .ov-drawer, .dark .ov-modal, .dark .ov-file-browser, .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__popover, .dark .ov-viking-bot__reference-picker--mention, .dark .ov-viking-bot__interaction {
62
+ html.dark .ov-button, html.dark .ov-input, html.dark .ov-textarea, .dark .ov-directory-tour, html.dark .ov-wiki-dashboard, html.dark .ov-experience-dashboard, .dark .ov-auth, .dark .ov-agent-connect, .dark .ov-console, .dark .ov-divider, .dark .ov-file-browser-entries, .dark .ov-drawer, .dark .ov-modal, .dark .ov-file-browser, .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__popover, .dark .ov-viking-bot__reference-picker--mention, .dark .ov-viking-bot__interaction {
61
63
  --ov-ui-primary-default: #5f5fff;
62
64
  --ov-ui-primary-hover-default: #7075ff;
63
65
  --ov-ui-primary-active-default: #4242ba;
@@ -186,9 +188,11 @@ html.dark .ov-wiki-dashboard, html.dark .ov-experience-dashboard, html.dark .ov-
186
188
  display: block;
187
189
  }
188
190
 
189
- .ov-button, .ov-input, .ov-textarea, .ov-directory-tour, .ov-wiki-dashboard, .ov-experience-dashboard, .ov-agent-connect, .ov-console, .ov-divider, .ov-file-browser-entries, .ov-drawer, .ov-modal, .ov-file-browser, .ov-file-preview, .ov-file-tree, .ov-module-placeholder, .ov-popover, .ov-scope-switcher, .ov-tooltip, .ov-tui, .ov-viking-bot, .ov-viking-bot__popover, .ov-viking-bot__reference-picker--mention, .ov-viking-bot__interaction {
191
+ .ov-button, .ov-input, .ov-textarea, .ov-directory-tour, .ov-wiki-dashboard, .ov-experience-dashboard, .ov-auth, .ov-agent-connect, .ov-console, .ov-divider, .ov-file-browser-entries, .ov-drawer, .ov-modal, .ov-file-browser, .ov-file-preview, .ov-file-tree, .ov-module-placeholder, .ov-popover, .ov-scope-switcher, .ov-tooltip, .ov-tui, .ov-viking-bot, .ov-viking-bot__popover, .ov-viking-bot__reference-picker--mention, .ov-viking-bot__interaction {
190
192
  --ov-ui-tour-shadow-default: 0 15px 35px #0000000d, 0 5px 15px #0000000d;
191
193
  --ov-ui-tour-highlight-default: #5252ff14;
194
+ --ov-ui-auth-on-primary-default: #fff;
195
+ --ov-ui-auth-backdrop-default: #0006;
192
196
  --ov-ui-primary-default: #5252ff;
193
197
  --ov-ui-primary-hover-default: #7075ff;
194
198
  --ov-ui-primary-active-default: #3833d2;
@@ -245,7 +249,7 @@ html.dark .ov-wiki-dashboard, html.dark .ov-experience-dashboard, html.dark .ov-
245
249
  #bd9cff 100%);
246
250
  }
247
251
 
248
- html.dark .ov-button, html.dark .ov-input, html.dark .ov-textarea, .dark .ov-directory-tour, html.dark .ov-wiki-dashboard, html.dark .ov-experience-dashboard, .dark .ov-agent-connect, .dark .ov-console, .dark .ov-divider, .dark .ov-file-browser-entries, .dark .ov-drawer, .dark .ov-modal, .dark .ov-file-browser, .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__popover, .dark .ov-viking-bot__reference-picker--mention, .dark .ov-viking-bot__interaction {
252
+ html.dark .ov-button, html.dark .ov-input, html.dark .ov-textarea, .dark .ov-directory-tour, html.dark .ov-wiki-dashboard, html.dark .ov-experience-dashboard, .dark .ov-auth, .dark .ov-agent-connect, .dark .ov-console, .dark .ov-divider, .dark .ov-file-browser-entries, .dark .ov-drawer, .dark .ov-modal, .dark .ov-file-browser, .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__popover, .dark .ov-viking-bot__reference-picker--mention, .dark .ov-viking-bot__interaction {
249
253
  --ov-ui-primary-default: #5f5fff;
250
254
  --ov-ui-primary-hover-default: #7075ff;
251
255
  --ov-ui-primary-active-default: #4242ba;
@@ -635,9 +639,11 @@ html.dark .ov-wiki-dashboard, html.dark .ov-experience-dashboard, html.dark .ov-
635
639
  }
636
640
  }
637
641
 
638
- .ov-button, .ov-input, .ov-textarea, .ov-directory-tour, .ov-wiki-dashboard, .ov-experience-dashboard, .ov-agent-connect, .ov-console, .ov-divider, .ov-file-browser-entries, .ov-drawer, .ov-modal, .ov-file-browser, .ov-file-preview, .ov-file-tree, .ov-module-placeholder, .ov-popover, .ov-scope-switcher, .ov-tooltip, .ov-tui, .ov-viking-bot, .ov-viking-bot__popover, .ov-viking-bot__reference-picker--mention, .ov-viking-bot__interaction {
642
+ .ov-button, .ov-input, .ov-textarea, .ov-directory-tour, .ov-wiki-dashboard, .ov-experience-dashboard, .ov-auth, .ov-agent-connect, .ov-console, .ov-divider, .ov-file-browser-entries, .ov-drawer, .ov-modal, .ov-file-browser, .ov-file-preview, .ov-file-tree, .ov-module-placeholder, .ov-popover, .ov-scope-switcher, .ov-tooltip, .ov-tui, .ov-viking-bot, .ov-viking-bot__popover, .ov-viking-bot__reference-picker--mention, .ov-viking-bot__interaction {
639
643
  --ov-ui-tour-shadow-default: 0 15px 35px #0000000d, 0 5px 15px #0000000d;
640
644
  --ov-ui-tour-highlight-default: #5252ff14;
645
+ --ov-ui-auth-on-primary-default: #fff;
646
+ --ov-ui-auth-backdrop-default: #0006;
641
647
  --ov-ui-primary-default: #5252ff;
642
648
  --ov-ui-primary-hover-default: #7075ff;
643
649
  --ov-ui-primary-active-default: #3833d2;
@@ -694,7 +700,7 @@ html.dark .ov-wiki-dashboard, html.dark .ov-experience-dashboard, html.dark .ov-
694
700
  #bd9cff 100%);
695
701
  }
696
702
 
697
- html.dark .ov-button, html.dark .ov-input, html.dark .ov-textarea, .dark .ov-directory-tour, html.dark .ov-wiki-dashboard, html.dark .ov-experience-dashboard, .dark .ov-agent-connect, .dark .ov-console, .dark .ov-divider, .dark .ov-file-browser-entries, .dark .ov-drawer, .dark .ov-modal, .dark .ov-file-browser, .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__popover, .dark .ov-viking-bot__reference-picker--mention, .dark .ov-viking-bot__interaction {
703
+ html.dark .ov-button, html.dark .ov-input, html.dark .ov-textarea, .dark .ov-directory-tour, html.dark .ov-wiki-dashboard, html.dark .ov-experience-dashboard, .dark .ov-auth, .dark .ov-agent-connect, .dark .ov-console, .dark .ov-divider, .dark .ov-file-browser-entries, .dark .ov-drawer, .dark .ov-modal, .dark .ov-file-browser, .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__popover, .dark .ov-viking-bot__reference-picker--mention, .dark .ov-viking-bot__interaction {
698
704
  --ov-ui-primary-default: #5f5fff;
699
705
  --ov-ui-primary-hover-default: #7075ff;
700
706
  --ov-ui-primary-active-default: #4242ba;
@@ -1,5 +1,5 @@
1
1
  import type { ReactNode } from 'react';
2
- import type { FilePreviewActions, FilePreviewLevel } from './types.js';
2
+ import type { FilePreviewActions, FilePreviewLabels, FilePreviewLevel } from './types.js';
3
3
  /**
4
4
  * 标题行需要的最少信息。它按字段而不是按页签类型取值,文件页签与目录页签因此
5
5
  * 共用同一条渲染路径——两者的路径行本来就一样。
@@ -19,29 +19,12 @@ export interface FilePreviewHeaderProps {
19
19
  /** 标题行动作区,节点或接收上下文的函数。 */
20
20
  /** The header action area: a node, or a function of the actions context. */
21
21
  slotActions?: ReactNode | ((actions: FilePreviewActions) => ReactNode);
22
+ extraActions?: ReactNode;
22
23
  actions: FilePreviewActions;
23
24
  levels?: readonly FilePreviewLevel[];
24
25
  levelKey?: string;
25
26
  onLevelChange?: (key: string) => void;
26
- text: {
27
- copyPath: string;
28
- showHiddenPath: string;
29
- };
27
+ text: Required<FilePreviewLabels>;
30
28
  onOpenParent: (uri: string) => void;
31
29
  }
32
- /**
33
- * 内容区标题行:路径面包屑、复制路径与宿主提供的动作区。
34
- *
35
- * 复制路径是外壳的一部分——有 `source.path` 的文件在任何宿主下都需要它,因此
36
- * 内置在面包屑末尾。其余动作(复制正文、下载、视图切换、编辑)依赖宿主的产品
37
- * 语义与文案,由宿主在 `slots.actions` 里用 `actions` 上下文自行渲染。
38
- *
39
- * The content header: the path breadcrumb, copy-path, and a host-supplied action
40
- * area.
41
- *
42
- * Copy-path belongs to the shell — any file with a `source.path` needs it under
43
- * every host — so it sits at the end of the breadcrumb. The other actions (copy
44
- * body, download, view switch, edit) carry host product semantics and copy, and
45
- * the host renders them in `slots.actions` from the `actions` context.
46
- */
47
- export declare function FilePreviewHeader({ levels, levelKey, onLevelChange, path, fileName, canOpenParent, titleExtra, slotActions, actions, text, onOpenParent, }: FilePreviewHeaderProps): import("react").JSX.Element;
30
+ export declare function FilePreviewHeader({ levels, levelKey, onLevelChange, path, fileName, canOpenParent, titleExtra, slotActions, extraActions, actions, text, onOpenParent, }: FilePreviewHeaderProps): import("react").JSX.Element;
@@ -0,0 +1,7 @@
1
+ import { type ReactNode } from 'react';
2
+ import type { FilePreviewActions, FilePreviewLabels } from './types.js';
3
+ export declare function FilePreviewToolbar({ actions, text, extraActions, }: {
4
+ actions: FilePreviewActions;
5
+ text: Required<FilePreviewLabels>;
6
+ extraActions?: ReactNode;
7
+ }): import("react").JSX.Element | null;
@@ -1,6 +1,15 @@
1
1
  declare const messages: {
2
2
  showHiddenPath: string;
3
3
  copyPath: string;
4
+ copyContent: string;
5
+ copied: string;
6
+ copyFailed: string;
7
+ previewMode: string;
8
+ sourceMode: string;
9
+ viewSwitch: string;
10
+ edit: string;
11
+ editFile: string;
12
+ save: string;
4
13
  editor: string;
5
14
  leaveEditing: string;
6
15
  retry: string;
@@ -1,6 +1,15 @@
1
1
  declare const messages: {
2
2
  showHiddenPath: string;
3
3
  copyPath: string;
4
+ copyContent: string;
5
+ copied: string;
6
+ copyFailed: string;
7
+ previewMode: string;
8
+ sourceMode: string;
9
+ viewSwitch: string;
10
+ edit: string;
11
+ editFile: string;
12
+ save: string;
4
13
  editor: string;
5
14
  leaveEditing: string;
6
15
  retry: string;