@redocly/theme 0.59.0-next.3 → 0.59.0-next.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/components/Buttons/AIAssistantButton.js +5 -1
- package/lib/components/Search/SearchDialog.js +9 -0
- package/lib/core/hooks/use-telemetry-fallback.d.ts +1 -0
- package/lib/core/hooks/use-telemetry-fallback.js +1 -0
- package/package.json +2 -2
- package/src/components/Buttons/AIAssistantButton.tsx +5 -1
- package/src/components/Search/SearchDialog.tsx +9 -0
- package/src/core/hooks/use-telemetry-fallback.ts +1 -0
|
@@ -73,8 +73,9 @@ function AIAssistantButton() {
|
|
|
73
73
|
var _a, _b;
|
|
74
74
|
const [isOpen, setIsOpen] = (0, react_1.useState)(false);
|
|
75
75
|
const themeConfig = (0, hooks_1.useThemeConfig)();
|
|
76
|
-
const { useTranslate } = (0, hooks_1.useThemeHooks)();
|
|
76
|
+
const { useTranslate, useTelemetry } = (0, hooks_1.useThemeHooks)();
|
|
77
77
|
const { translate } = useTranslate();
|
|
78
|
+
const telemetry = useTelemetry();
|
|
78
79
|
const buttonConfig = Object.assign(Object.assign({}, defaultConfig), ((_b = (_a = themeConfig.aiAssistant) === null || _a === void 0 ? void 0 : _a.trigger) !== null && _b !== void 0 ? _b : {}));
|
|
79
80
|
const { hide, inputIcon, inputType } = buttonConfig;
|
|
80
81
|
if (hide) {
|
|
@@ -84,6 +85,9 @@ function AIAssistantButton() {
|
|
|
84
85
|
const text = translate('aiAssistant.trigger', 'Ask AI');
|
|
85
86
|
const handleOpen = () => {
|
|
86
87
|
setIsOpen(true);
|
|
88
|
+
telemetry.sendSearchAiOpenedMessage({
|
|
89
|
+
method: 'ai_trigger_button',
|
|
90
|
+
});
|
|
87
91
|
};
|
|
88
92
|
const handleClose = () => {
|
|
89
93
|
setIsOpen(false);
|
|
@@ -176,6 +176,9 @@ function SearchDialog({ onClose, className, initialMode = 'search', }) {
|
|
|
176
176
|
if (query.trim()) {
|
|
177
177
|
aiSearch.askQuestion(query);
|
|
178
178
|
}
|
|
179
|
+
telemetry.sendSearchAiOpenedMessage({
|
|
180
|
+
method: 'ai_search_button',
|
|
181
|
+
});
|
|
179
182
|
} }, translate('search.ai.button', 'Search with AI'))) : null,
|
|
180
183
|
showSearchFilterButton && (react_1.default.createElement(SearchFilterToggleButton, { icon: react_1.default.createElement(SettingsIcon_1.SettingsIcon, null), onClick: onFilterToggle })))))) : (react_1.default.createElement(AiDialogHeaderWrapper, null,
|
|
181
184
|
react_1.default.createElement(Button_1.Button, { variant: "secondary", onClick: () => {
|
|
@@ -194,12 +197,18 @@ function SearchDialog({ onClose, className, initialMode = 'search', }) {
|
|
|
194
197
|
if (query.trim()) {
|
|
195
198
|
aiSearch.askQuestion(query);
|
|
196
199
|
}
|
|
200
|
+
telemetry.sendSearchAiOpenedMessage({
|
|
201
|
+
method: 'ai_search_input',
|
|
202
|
+
});
|
|
197
203
|
}, onKeyDown: (e) => {
|
|
198
204
|
if (e.key === 'Enter') {
|
|
199
205
|
setMode('ai-dialog');
|
|
200
206
|
if (query.trim()) {
|
|
201
207
|
aiSearch.askQuestion(query);
|
|
202
208
|
}
|
|
209
|
+
telemetry.sendSearchAiOpenedMessage({
|
|
210
|
+
method: 'ai_search_input',
|
|
211
|
+
});
|
|
203
212
|
}
|
|
204
213
|
}, ref: aiQueryRef, tabIndex: 0, role: "option", "aria-selected": "true" },
|
|
205
214
|
react_1.default.createElement(AiStarsIcon_1.AiStarsIcon, { style: { flexShrink: 0 }, color: "var(--search-ai-icon-color)", size: "36px", background: "var(--search-ai-icon-bg-color)", margin: "0 var(--spacing-md) 0 0", borderRadius: "var(--border-radius-lg)" }),
|
|
@@ -36,6 +36,7 @@ export declare const useTelemetryFallback: () => {
|
|
|
36
36
|
sendLanguagePickerLocaleChangedMessage: () => void;
|
|
37
37
|
sendSearchOpenedMessage: () => void;
|
|
38
38
|
sendSearchQueryMessage: () => void;
|
|
39
|
+
sendSearchAiOpenedMessage: () => void;
|
|
39
40
|
sendSearchAIQueryMessage: () => void;
|
|
40
41
|
sendFeedbackMessage: () => void;
|
|
41
42
|
sendSearchResultClickedMessage: () => void;
|
|
@@ -40,6 +40,7 @@ const useTelemetryFallback = () => ({
|
|
|
40
40
|
sendLanguagePickerLocaleChangedMessage: () => { },
|
|
41
41
|
sendSearchOpenedMessage: () => { },
|
|
42
42
|
sendSearchQueryMessage: () => { },
|
|
43
|
+
sendSearchAiOpenedMessage: () => { },
|
|
43
44
|
sendSearchAIQueryMessage: () => { },
|
|
44
45
|
sendFeedbackMessage: () => { },
|
|
45
46
|
sendSearchResultClickedMessage: () => { },
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@redocly/theme",
|
|
3
|
-
"version": "0.59.0-next.
|
|
3
|
+
"version": "0.59.0-next.4",
|
|
4
4
|
"description": "Shared UI components lib",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"theme",
|
|
@@ -88,7 +88,7 @@
|
|
|
88
88
|
"react-calendar": "5.1.0",
|
|
89
89
|
"react-date-picker": "11.0.0",
|
|
90
90
|
"@redocly/config": "0.36.0",
|
|
91
|
-
"@redocly/realm-asyncapi-sdk": "0.5.0-next.
|
|
91
|
+
"@redocly/realm-asyncapi-sdk": "0.5.0-next.1"
|
|
92
92
|
},
|
|
93
93
|
"scripts": {
|
|
94
94
|
"watch": "tsc -p tsconfig.build.json && (concurrently \"tsc -w -p tsconfig.build.json\" \"tsc-alias -w -p tsconfig.build.json\")",
|
|
@@ -56,8 +56,9 @@ const getIcon = (
|
|
|
56
56
|
export function AIAssistantButton() {
|
|
57
57
|
const [isOpen, setIsOpen] = useState(false);
|
|
58
58
|
const themeConfig = useThemeConfig();
|
|
59
|
-
const { useTranslate } = useThemeHooks();
|
|
59
|
+
const { useTranslate, useTelemetry } = useThemeHooks();
|
|
60
60
|
const { translate } = useTranslate();
|
|
61
|
+
const telemetry = useTelemetry();
|
|
61
62
|
|
|
62
63
|
const buttonConfig = {
|
|
63
64
|
...defaultConfig,
|
|
@@ -75,6 +76,9 @@ export function AIAssistantButton() {
|
|
|
75
76
|
|
|
76
77
|
const handleOpen = () => {
|
|
77
78
|
setIsOpen(true);
|
|
79
|
+
telemetry.sendSearchAiOpenedMessage({
|
|
80
|
+
method: 'ai_trigger_button',
|
|
81
|
+
});
|
|
78
82
|
};
|
|
79
83
|
|
|
80
84
|
const handleClose = () => {
|
|
@@ -228,6 +228,9 @@ export function SearchDialog({
|
|
|
228
228
|
if (query.trim()) {
|
|
229
229
|
aiSearch.askQuestion(query);
|
|
230
230
|
}
|
|
231
|
+
telemetry.sendSearchAiOpenedMessage({
|
|
232
|
+
method: 'ai_search_button',
|
|
233
|
+
});
|
|
231
234
|
}}
|
|
232
235
|
>
|
|
233
236
|
{translate('search.ai.button', 'Search with AI')}
|
|
@@ -298,6 +301,9 @@ export function SearchDialog({
|
|
|
298
301
|
if (query.trim()) {
|
|
299
302
|
aiSearch.askQuestion(query);
|
|
300
303
|
}
|
|
304
|
+
telemetry.sendSearchAiOpenedMessage({
|
|
305
|
+
method: 'ai_search_input',
|
|
306
|
+
});
|
|
301
307
|
}}
|
|
302
308
|
onKeyDown={(e) => {
|
|
303
309
|
if (e.key === 'Enter') {
|
|
@@ -305,6 +311,9 @@ export function SearchDialog({
|
|
|
305
311
|
if (query.trim()) {
|
|
306
312
|
aiSearch.askQuestion(query);
|
|
307
313
|
}
|
|
314
|
+
telemetry.sendSearchAiOpenedMessage({
|
|
315
|
+
method: 'ai_search_input',
|
|
316
|
+
});
|
|
308
317
|
}
|
|
309
318
|
}}
|
|
310
319
|
ref={aiQueryRef}
|
|
@@ -37,6 +37,7 @@ export const useTelemetryFallback = () => ({
|
|
|
37
37
|
sendLanguagePickerLocaleChangedMessage: () => {},
|
|
38
38
|
sendSearchOpenedMessage: () => {},
|
|
39
39
|
sendSearchQueryMessage: () => {},
|
|
40
|
+
sendSearchAiOpenedMessage: () => {},
|
|
40
41
|
sendSearchAIQueryMessage: () => {},
|
|
41
42
|
sendFeedbackMessage: () => {},
|
|
42
43
|
sendSearchResultClickedMessage: () => {},
|