fix: no method error when conversation is nil (#7566)

This commit is contained in:
Shivam Mishra
2023-07-26 17:40:41 +05:30
committed by GitHub
parent 63dd2c5a93
commit f8ae6cd95c
3 changed files with 10 additions and 10 deletions

View File

@@ -8,7 +8,7 @@
<div class="wrap">
<div class="label-suggestion--container">
<h6 class="label-suggestion--title">Suggested labels</h6>
<div v-if="!fetchingSuggestions" class="label-suggestion--options">
<div class="label-suggestion--options">
<button
v-for="label in preparedLabels"
:key="label.title"
@@ -123,7 +123,6 @@ export default {
data() {
return {
isDismissed: false,
fetchingSuggestions: false,
isHovered: false,
selectedLabels: [],
};
@@ -160,11 +159,7 @@ export default {
if (this.isDismissed) return false;
if (!this.isAIIntegrationEnabled) return false;
return (
!this.fetchingSuggestions &&
this.preparedLabels.length &&
this.chatLabels.length === 0
);
return this.preparedLabels.length && this.chatLabels.length === 0;
},
},
watch: {

View File

@@ -50,6 +50,8 @@ export default {
}
},
async fetchLabelSuggestions({ conversationId }) {
if (!conversationId) return [];
try {
const result = await OpenAPI.processEvent({
type: 'label_suggestion',

View File

@@ -23,14 +23,17 @@ module Enterprise::Integrations::OpenaiProcessorService
end
def labels_with_messages
labels = hook.account.labels.pluck(:title).join(', ')
character_count = labels.length
conversation = find_conversation
# return nil if conversation is not present
return nil if conversation.nil?
# return nil if conversation has less than 3 incoming messages
return nil if conversation.messages.incoming.count < 3
labels = hook.account.labels.pluck(:title).join(', ')
character_count = labels.length
messages = init_messages_body(false)
add_messages_until_token_limit(conversation, messages, false, character_count)