Skip to content
This repository was archived by the owner on Jul 22, 2025. It is now read-only.

Commit 976d9a9

Browse files
committed
Address review feedback
1 parent 3775f4d commit 976d9a9

File tree

10 files changed

+65
-63
lines changed

10 files changed

+65
-63
lines changed

app/controllers/discourse_ai/ai_bot/conversations_controller.rb

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ def index
2626
total: total,
2727
page: page,
2828
per_page: per_page,
29-
more: total > (page + 1) * per_page,
29+
has_more: total > (page + 1) * per_page,
3030
},
3131
}
3232
end

assets/javascripts/discourse/controllers/discourse-ai-bot-conversations.js

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,10 @@ export default class DiscourseAiBotConversations extends Controller {
3131
}
3232
}
3333

34+
get displayPersonaSelector() {
35+
return this.personaOptions.length > 1;
36+
}
37+
3438
get filterable() {
3539
return this.personaOptions.length > 4;
3640
}

assets/javascripts/discourse/routes/discourse-ai-bot-conversations.js

Lines changed: 0 additions & 3 deletions
This file was deleted.

assets/javascripts/discourse/services/ai-bot-conversations-hidden-submit.js

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
import { action } from "@ember/object";
22
import { next } from "@ember/runloop";
33
import Service, { service } from "@ember/service";
4+
import { popupAjaxError } from "discourse/lib/ajax-error";
45
import { i18n } from "discourse-i18n";
56
import { composeAiBotMessage } from "../lib/ai-bot-helper";
67

@@ -54,9 +55,8 @@ export default class AiBotConversationsHiddenSubmit extends Service {
5455
// but avoids deleting too-short message on submit
5556
this.inputValue = "";
5657
}
57-
} catch (error) {
58-
// eslint-disable-next-line no-console
59-
console.error("Failed to submit message:", error);
58+
} catch (e) {
59+
popupAjaxError(e);
6060
}
6161
}
6262
}
Lines changed: 51 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,51 @@
1+
import { hash } from "@ember/helper";
2+
import { on } from "@ember/modifier";
3+
import didInsert from "@ember/render-modifiers/modifiers/did-insert";
4+
import RouteTemplate from "ember-route-template";
5+
import DButton from "discourse/components/d-button";
6+
import { i18n } from "discourse-i18n";
7+
import DropdownSelectBox from "select-kit/components/dropdown-select-box";
8+
9+
export default RouteTemplate(
10+
<template>
11+
<div class="ai-bot-conversations">
12+
{{#if @controller.displayPersonaSelector}}
13+
<div class="ai-bot-conversations__persona-selector">
14+
<DropdownSelectBox
15+
class="persona-llm-selector__persona-dropdown"
16+
@value={{@controller.selectedPersona}}
17+
@valueProperty="username"
18+
@content={{@controller.personaOptions}}
19+
@options={{hash icon="robot" filterable=@controller.filterable}}
20+
@onChange={{@controller.selectedPersonaChanged}}
21+
/>
22+
</div>
23+
{{/if}}
24+
25+
<div class="ai-bot-conversations__content-wrapper">
26+
27+
<h1>{{i18n "discourse_ai.ai_bot.conversations.header"}}</h1>
28+
<div class="ai-bot-conversations__input-wrapper">
29+
<textarea
30+
{{didInsert @controller.setTextArea}}
31+
{{on "input" @controller.updateInputValue}}
32+
{{on "keydown" @controller.handleKeyDown}}
33+
id="ai-bot-conversations-input"
34+
placeholder={{i18n "discourse_ai.ai_bot.conversations.placeholder"}}
35+
minlength="10"
36+
rows="1"
37+
/>
38+
<DButton
39+
@action={{@controller.aiBotConversationsHiddenSubmit.submitToBot}}
40+
@icon="paper-plane"
41+
@title="discourse_ai.ai_bot.conversations.header"
42+
class="ai-bot-button btn-primary ai-conversation-submit"
43+
/>
44+
</div>
45+
<p class="ai-disclaimer">
46+
{{i18n "discourse_ai.ai_bot.conversations.disclaimer"}}
47+
</p>
48+
</div>
49+
</div>
50+
</template>
51+
);

assets/javascripts/discourse/templates/discourse-ai-bot-conversations.hbs

Lines changed: 0 additions & 37 deletions
This file was deleted.

assets/javascripts/initializers/ai-conversations-sidebar.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -168,7 +168,7 @@ export default {
168168
}
169169

170170
this.totalTopicsCount = data.meta.total;
171-
this.hasMore = data.meta.more;
171+
this.hasMore = data.meta.has_more;
172172
this.isFetching = false;
173173
this.removeScrollListener();
174174
this.buildSidebarLinks();

assets/stylesheets/modules/ai-bot-conversations/common.scss

Lines changed: 0 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -241,22 +241,6 @@ body.has-ai-conversations-sidebar {
241241
}
242242
}
243243

244-
.ai-question-button {
245-
border-radius: var(--border-radius);
246-
border: 1px solid var(--primary-low);
247-
line-height: var(--line-height-medium);
248-
249-
.d-button-label {
250-
color: var(--primary-high);
251-
}
252-
253-
.discourse-no-touch & {
254-
&:hover {
255-
background: var(--primary-low);
256-
}
257-
}
258-
}
259-
260244
.ai-disclaimer {
261245
text-align: center;
262246
font-size: var(--font-down-1);

config/locales/client.en.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -719,7 +719,7 @@ en:
719719
conversations:
720720
header: "What can I help with?"
721721
submit: "Submit question"
722-
disclaimer: "Generative AI can make mistakes"
722+
disclaimer: "Generative AI can make mistakes. Verify important information."
723723
placeholder: "Ask a question..."
724724
new: "New Question"
725725
min_input_length_message: "Message must be longer than 10 characters"

spec/system/page_objects/components/ai_pm_homepage.rb

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,10 @@ def submit
1414
end
1515

1616
def has_too_short_dialog?
17-
page.find(".dialog-content", text: "Message must be longer than 10 characters")
17+
page.find(
18+
".dialog-content",
19+
text: I18n.t("js.discourse_ai.ai_bot.conversations.min_input_length_message"),
20+
)
1821
end
1922

2023
def has_homepage?

0 commit comments

Comments
 (0)