@coveo/atomic 3.57.1 → 3.57.2
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/custom-elements.json +12825 -12796
- package/dist/cjs/components/common/atomic-generated-answer-content/answer-context.cjs +37 -0
- package/dist/cjs/components/common/atomic-generated-answer-content/atomic-generated-answer-content.cjs +9 -1
- package/dist/cjs/components/common/atomic-generated-answer-inline-link/atomic-generated-answer-inline-link.cjs +160 -0
- package/dist/cjs/components/common/atomic-generated-answer-inline-link/atomic-generated-answer-inline-link.tw.css.cjs +59 -0
- package/dist/cjs/components/common/generated-answer/generated-answer-controller.cjs +6 -3
- package/dist/cjs/components/common/generated-answer/generated-content/generated-markdown-content.cjs +6 -1
- package/dist/cjs/components/common/generated-answer/generated-content/generated-markdown-content.tw.css.cjs +12 -0
- package/dist/cjs/components/common/generated-answer/generated-content/markdown-utils.cjs +6 -0
- package/dist/cjs/components/common/index.cjs +4 -0
- package/dist/cjs/components/common/lazy-index.cjs +1 -0
- package/dist/cjs/global/environment.cjs +1 -1
- package/dist/cjs/utils/custom-element-tags.cjs +1 -0
- package/dist/cjs/versions.cjs +1 -1
- package/dist/esm/components/common/atomic-generated-answer-content/answer-context.js +3 -0
- package/dist/esm/components/common/atomic-generated-answer-content/atomic-generated-answer-content.js +9 -1
- package/dist/esm/components/common/atomic-generated-answer-inline-link/atomic-generated-answer-inline-link.js +116 -0
- package/dist/esm/components/common/atomic-generated-answer-inline-link/atomic-generated-answer-inline-link.tw.css.js +4 -0
- package/dist/esm/components/common/generated-answer/generated-answer-controller.js +6 -3
- package/dist/esm/components/common/generated-answer/generated-content/generated-markdown-content.js +6 -1
- package/dist/esm/components/common/generated-answer/generated-content/generated-markdown-content.tw.css.js +1 -1
- package/dist/esm/components/common/generated-answer/generated-content/markdown-utils.js +6 -0
- package/dist/esm/components/common/index.js +1 -0
- package/dist/esm/components/common/lazy-index.js +1 -0
- package/dist/esm/global/environment.js +1 -1
- package/dist/esm/utils/custom-element-tags.js +1 -0
- package/dist/esm/versions.js +1 -1
- package/dist/types/components/common/atomic-generated-answer-content/answer-context.d.ts +3 -0
- package/dist/types/components/common/atomic-generated-answer-content/atomic-generated-answer-content.d.ts +1 -0
- package/dist/types/components/common/atomic-generated-answer-inline-link/atomic-generated-answer-inline-link.d.ts +27 -0
- package/dist/types/components/common/atomic-generated-answer-inline-link/atomic-generated-answer-inline-link.tw.css.d.ts +2 -0
- package/dist/types/components/common/generated-answer/generated-content/generated-markdown-content.d.ts +1 -0
- package/dist/types/components/common/index.d.ts +1 -0
- package/dist/types/components/search/atomic-generated-answer/atomic-generated-answer.d.ts +3 -0
- package/package.json +15 -14
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __webpack_require__ = {};
|
|
3
|
+
(()=>{
|
|
4
|
+
__webpack_require__.d = (exports1, definition)=>{
|
|
5
|
+
for(var key in definition)if (__webpack_require__.o(definition, key) && !__webpack_require__.o(exports1, key)) Object.defineProperty(exports1, key, {
|
|
6
|
+
enumerable: true,
|
|
7
|
+
get: definition[key]
|
|
8
|
+
});
|
|
9
|
+
};
|
|
10
|
+
})();
|
|
11
|
+
(()=>{
|
|
12
|
+
__webpack_require__.o = (obj, prop)=>Object.prototype.hasOwnProperty.call(obj, prop);
|
|
13
|
+
})();
|
|
14
|
+
(()=>{
|
|
15
|
+
__webpack_require__.r = (exports1)=>{
|
|
16
|
+
if ("u" > typeof Symbol && Symbol.toStringTag) Object.defineProperty(exports1, Symbol.toStringTag, {
|
|
17
|
+
value: 'Module'
|
|
18
|
+
});
|
|
19
|
+
Object.defineProperty(exports1, '__esModule', {
|
|
20
|
+
value: true
|
|
21
|
+
});
|
|
22
|
+
};
|
|
23
|
+
})();
|
|
24
|
+
var __webpack_exports__ = {};
|
|
25
|
+
__webpack_require__.r(__webpack_exports__);
|
|
26
|
+
__webpack_require__.d(__webpack_exports__, {
|
|
27
|
+
answerContext: ()=>answerContext
|
|
28
|
+
});
|
|
29
|
+
const context_namespaceObject = require("@lit/context");
|
|
30
|
+
const answerContext = (0, context_namespaceObject.createContext)(Symbol('answer-id'));
|
|
31
|
+
exports.answerContext = __webpack_exports__.answerContext;
|
|
32
|
+
for(var __rspack_i in __webpack_exports__)if (-1 === [
|
|
33
|
+
"answerContext"
|
|
34
|
+
].indexOf(__rspack_i)) exports[__rspack_i] = __webpack_exports__[__rspack_i];
|
|
35
|
+
Object.defineProperty(exports, '__esModule', {
|
|
36
|
+
value: true
|
|
37
|
+
});
|
|
@@ -36,6 +36,7 @@ __webpack_require__.d(__webpack_exports__, {
|
|
|
36
36
|
AtomicGeneratedAnswerContent: ()=>AtomicGeneratedAnswerContent
|
|
37
37
|
});
|
|
38
38
|
const external_lit_namespaceObject = require("lit");
|
|
39
|
+
const context_namespaceObject = require("@lit/context");
|
|
39
40
|
const decorators_js_namespaceObject = require("lit/decorators.js");
|
|
40
41
|
const when_js_namespaceObject = require("lit/directives/when.js");
|
|
41
42
|
const atomic_generated_answer_tw_css_cjs_namespaceObject = require("../../search/atomic-generated-answer/atomic-generated-answer.tw.css.cjs");
|
|
@@ -45,6 +46,7 @@ const generated_content_container_cjs_namespaceObject = require("../generated-an
|
|
|
45
46
|
const render_agent_generation_steps_cjs_namespaceObject = require("../generated-answer/render-agent-generation-steps.cjs");
|
|
46
47
|
const render_feedback_and_copy_buttons_cjs_namespaceObject = require("../generated-answer/render-feedback-and-copy-buttons.cjs");
|
|
47
48
|
const source_citations_cjs_namespaceObject = require("../generated-answer/source-citations.cjs");
|
|
49
|
+
const external_answer_context_cjs_namespaceObject = require("./answer-context.cjs");
|
|
48
50
|
function _ts_decorate(decorators, target, key, desc) {
|
|
49
51
|
var c = arguments.length, r = c < 3 ? target : null === desc ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
50
52
|
if ("object" == typeof Reflect && "function" == typeof Reflect.decorate) r = Reflect.decorate(decorators, target, key, desc);
|
|
@@ -62,6 +64,7 @@ class AtomicGeneratedAnswerContent extends external_lit_namespaceObject.LitEleme
|
|
|
62
64
|
}
|
|
63
65
|
render() {
|
|
64
66
|
const { answer, answerContentFormat, isStreaming, generationSteps, citations = [], answerId, error, cannotAnswer } = this.generatedAnswer || {};
|
|
67
|
+
this.answerId = answerId || '';
|
|
65
68
|
if (error) return this.renderError();
|
|
66
69
|
if (cannotAnswer) return this.renderCannotAnswer();
|
|
67
70
|
if (!answerId) return (0, external_lit_namespaceObject.html)``;
|
|
@@ -164,12 +167,17 @@ class AtomicGeneratedAnswerContent extends external_lit_namespaceObject.LitEleme
|
|
|
164
167
|
`;
|
|
165
168
|
}
|
|
166
169
|
constructor(...args){
|
|
167
|
-
super(...args), this.renderCitations = ()=>(0, external_lit_namespaceObject.html)``, this.onClickLike = ()=>{}, this.onClickDislike = ()=>{}, this.onCopyToClipboard = ()=>{}, this.copyState = 'idle';
|
|
170
|
+
super(...args), this.answerId = '', this.renderCitations = ()=>(0, external_lit_namespaceObject.html)``, this.onClickLike = ()=>{}, this.onClickDislike = ()=>{}, this.onCopyToClipboard = ()=>{}, this.copyState = 'idle';
|
|
168
171
|
}
|
|
169
172
|
}
|
|
170
173
|
AtomicGeneratedAnswerContent.styles = [
|
|
171
174
|
atomic_generated_answer_tw_css_cjs_default()
|
|
172
175
|
];
|
|
176
|
+
_ts_decorate([
|
|
177
|
+
(0, context_namespaceObject.provide)({
|
|
178
|
+
context: external_answer_context_cjs_namespaceObject.answerContext
|
|
179
|
+
})
|
|
180
|
+
], AtomicGeneratedAnswerContent.prototype, "answerId", void 0);
|
|
173
181
|
_ts_decorate([
|
|
174
182
|
(0, decorators_js_namespaceObject.property)({
|
|
175
183
|
attribute: false
|
|
@@ -0,0 +1,160 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __webpack_require__ = {};
|
|
3
|
+
(()=>{
|
|
4
|
+
__webpack_require__.n = (module)=>{
|
|
5
|
+
var getter = module && module.__esModule ? ()=>module['default'] : ()=>module;
|
|
6
|
+
__webpack_require__.d(getter, {
|
|
7
|
+
a: getter
|
|
8
|
+
});
|
|
9
|
+
return getter;
|
|
10
|
+
};
|
|
11
|
+
})();
|
|
12
|
+
(()=>{
|
|
13
|
+
__webpack_require__.d = (exports1, definition)=>{
|
|
14
|
+
for(var key in definition)if (__webpack_require__.o(definition, key) && !__webpack_require__.o(exports1, key)) Object.defineProperty(exports1, key, {
|
|
15
|
+
enumerable: true,
|
|
16
|
+
get: definition[key]
|
|
17
|
+
});
|
|
18
|
+
};
|
|
19
|
+
})();
|
|
20
|
+
(()=>{
|
|
21
|
+
__webpack_require__.o = (obj, prop)=>Object.prototype.hasOwnProperty.call(obj, prop);
|
|
22
|
+
})();
|
|
23
|
+
(()=>{
|
|
24
|
+
__webpack_require__.r = (exports1)=>{
|
|
25
|
+
if ("u" > typeof Symbol && Symbol.toStringTag) Object.defineProperty(exports1, Symbol.toStringTag, {
|
|
26
|
+
value: 'Module'
|
|
27
|
+
});
|
|
28
|
+
Object.defineProperty(exports1, '__esModule', {
|
|
29
|
+
value: true
|
|
30
|
+
});
|
|
31
|
+
};
|
|
32
|
+
})();
|
|
33
|
+
var __webpack_exports__ = {};
|
|
34
|
+
__webpack_require__.r(__webpack_exports__);
|
|
35
|
+
__webpack_require__.d(__webpack_exports__, {
|
|
36
|
+
AtomicGeneratedAnswerInlineLink: ()=>AtomicGeneratedAnswerInlineLink
|
|
37
|
+
});
|
|
38
|
+
const headless_namespaceObject = require("@coveo/headless");
|
|
39
|
+
const external_lit_namespaceObject = require("lit");
|
|
40
|
+
const decorators_js_namespaceObject = require("lit/decorators.js");
|
|
41
|
+
const external_atomic_generated_answer_inline_link_tw_css_cjs_namespaceObject = require("./atomic-generated-answer-inline-link.tw.css.cjs");
|
|
42
|
+
var external_atomic_generated_answer_inline_link_tw_css_cjs_default = /*#__PURE__*/ __webpack_require__.n(external_atomic_generated_answer_inline_link_tw_css_cjs_namespaceObject);
|
|
43
|
+
const if_defined_js_namespaceObject = require("lit/directives/if-defined.js");
|
|
44
|
+
const binding_guard_cjs_namespaceObject = require("../../../decorators/binding-guard.cjs");
|
|
45
|
+
const bindings_cjs_namespaceObject = require("../../../decorators/bindings.cjs");
|
|
46
|
+
const error_guard_cjs_namespaceObject = require("../../../decorators/error-guard.cjs");
|
|
47
|
+
const context_namespaceObject = require("@lit/context");
|
|
48
|
+
const answer_context_cjs_namespaceObject = require("../atomic-generated-answer-content/answer-context.cjs");
|
|
49
|
+
function _ts_decorate(decorators, target, key, desc) {
|
|
50
|
+
var c = arguments.length, r = c < 3 ? target : null === desc ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
51
|
+
if ("object" == typeof Reflect && "function" == typeof Reflect.decorate) r = Reflect.decorate(decorators, target, key, desc);
|
|
52
|
+
else for(var i = decorators.length - 1; i >= 0; i--)if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
53
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
54
|
+
}
|
|
55
|
+
function _ts_metadata(k, v) {
|
|
56
|
+
if ("object" == typeof Reflect && "function" == typeof Reflect.metadata) return Reflect.metadata(k, v);
|
|
57
|
+
}
|
|
58
|
+
class AtomicGeneratedAnswerInlineLink extends external_lit_namespaceObject.LitElement {
|
|
59
|
+
initialize() {
|
|
60
|
+
if (this.answerId && this.href) this.interactiveLink = (0, headless_namespaceObject.buildInteractiveGeneratedAnswerInlineLink)(this.bindings.engine, {
|
|
61
|
+
options: {
|
|
62
|
+
answerId: this.answerId,
|
|
63
|
+
link: {
|
|
64
|
+
linkText: this.textContent?.trim() || '',
|
|
65
|
+
linkURL: this.href
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
});
|
|
69
|
+
}
|
|
70
|
+
render() {
|
|
71
|
+
return (0, external_lit_namespaceObject.html)`
|
|
72
|
+
<a
|
|
73
|
+
part="answer-link"
|
|
74
|
+
href=${this.href}
|
|
75
|
+
title=${(0, if_defined_js_namespaceObject.ifDefined)(this.title || void 0)}
|
|
76
|
+
target="_blank"
|
|
77
|
+
rel="noopener noreferrer"
|
|
78
|
+
@click=${this.handleSelect}
|
|
79
|
+
@contextmenu=${this.handleSelect}
|
|
80
|
+
@mousedown=${this.handleSelect}
|
|
81
|
+
@mouseup=${this.handleSelect}
|
|
82
|
+
@touchstart=${this.handleBeginDelayedSelect}
|
|
83
|
+
@touchend=${this.handleCancelPendingSelect}
|
|
84
|
+
>
|
|
85
|
+
<span part="answer-link-text"><slot></slot></span>
|
|
86
|
+
<span class="icon-wrapper">
|
|
87
|
+
<svg
|
|
88
|
+
part="answer-link-icon"
|
|
89
|
+
width="100%"
|
|
90
|
+
height="100%"
|
|
91
|
+
viewBox="0 0 640 640"
|
|
92
|
+
aria-hidden="true"
|
|
93
|
+
focusable="false"
|
|
94
|
+
xmlns="http://www.w3.org/2000/svg"
|
|
95
|
+
>
|
|
96
|
+
<path
|
|
97
|
+
fill="currentColor"
|
|
98
|
+
d="M354.4 83.8C359.4 71.8 371.1 64 384 64L544 64C561.7 64 576 78.3 576 96L576 256C576 268.9 568.2 280.6 556.2 285.6C544.2 290.6 530.5 287.8 521.3 278.7L464 221.3L310.6 374.6C298.1 387.1 277.8 387.1 265.3 374.6C252.8 362.1 252.8 341.8 265.3 329.3L418.7 176L361.4 118.6C352.2 109.4 349.5 95.7 354.5 83.7zM64 240C64 195.8 99.8 160 144 160L224 160C241.7 160 256 174.3 256 192C256 209.7 241.7 224 224 224L144 224C135.2 224 128 231.2 128 240L128 496C128 504.8 135.2 512 144 512L400 512C408.8 512 416 504.8 416 496L416 416C416 398.3 430.3 384 448 384C465.7 384 480 398.3 480 416L480 496C480 540.2 444.2 576 400 576L144 576C99.8 576 64 540.2 64 496L64 240z"
|
|
99
|
+
/>
|
|
100
|
+
</svg>
|
|
101
|
+
</span>
|
|
102
|
+
</a>
|
|
103
|
+
`;
|
|
104
|
+
}
|
|
105
|
+
handleSelect() {
|
|
106
|
+
this.interactiveLink?.select();
|
|
107
|
+
}
|
|
108
|
+
handleBeginDelayedSelect() {
|
|
109
|
+
this.interactiveLink?.beginDelayedSelect();
|
|
110
|
+
}
|
|
111
|
+
handleCancelPendingSelect() {
|
|
112
|
+
this.interactiveLink?.cancelPendingSelect();
|
|
113
|
+
}
|
|
114
|
+
constructor(...args){
|
|
115
|
+
super(...args), this.initialized = false, this.href = '', this.title = '';
|
|
116
|
+
}
|
|
117
|
+
}
|
|
118
|
+
AtomicGeneratedAnswerInlineLink.styles = external_atomic_generated_answer_inline_link_tw_css_cjs_default();
|
|
119
|
+
_ts_decorate([
|
|
120
|
+
(0, context_namespaceObject.consume)({
|
|
121
|
+
context: answer_context_cjs_namespaceObject.answerContext
|
|
122
|
+
}),
|
|
123
|
+
_ts_metadata("design:type", Object)
|
|
124
|
+
], AtomicGeneratedAnswerInlineLink.prototype, "answerId", void 0);
|
|
125
|
+
_ts_decorate([
|
|
126
|
+
(0, decorators_js_namespaceObject.state)(),
|
|
127
|
+
_ts_metadata("design:type", "u" < typeof AnyBindings ? Object : AnyBindings)
|
|
128
|
+
], AtomicGeneratedAnswerInlineLink.prototype, "bindings", void 0);
|
|
129
|
+
_ts_decorate([
|
|
130
|
+
(0, decorators_js_namespaceObject.state)(),
|
|
131
|
+
_ts_metadata("design:type", "u" < typeof Error ? Object : Error)
|
|
132
|
+
], AtomicGeneratedAnswerInlineLink.prototype, "error", void 0);
|
|
133
|
+
_ts_decorate([
|
|
134
|
+
(0, decorators_js_namespaceObject.property)({
|
|
135
|
+
reflect: true
|
|
136
|
+
})
|
|
137
|
+
], AtomicGeneratedAnswerInlineLink.prototype, "href", void 0);
|
|
138
|
+
_ts_decorate([
|
|
139
|
+
(0, decorators_js_namespaceObject.property)({
|
|
140
|
+
reflect: true
|
|
141
|
+
})
|
|
142
|
+
], AtomicGeneratedAnswerInlineLink.prototype, "title", void 0);
|
|
143
|
+
_ts_decorate([
|
|
144
|
+
(0, binding_guard_cjs_namespaceObject.bindingGuard)(),
|
|
145
|
+
(0, error_guard_cjs_namespaceObject.errorGuard)(),
|
|
146
|
+
_ts_metadata("design:type", Function),
|
|
147
|
+
_ts_metadata("design:paramtypes", []),
|
|
148
|
+
_ts_metadata("design:returntype", void 0)
|
|
149
|
+
], AtomicGeneratedAnswerInlineLink.prototype, "render", null);
|
|
150
|
+
AtomicGeneratedAnswerInlineLink = _ts_decorate([
|
|
151
|
+
(0, decorators_js_namespaceObject.customElement)('atomic-generated-answer-inline-link'),
|
|
152
|
+
(0, bindings_cjs_namespaceObject.bindings)()
|
|
153
|
+
], AtomicGeneratedAnswerInlineLink);
|
|
154
|
+
exports.AtomicGeneratedAnswerInlineLink = __webpack_exports__.AtomicGeneratedAnswerInlineLink;
|
|
155
|
+
for(var __rspack_i in __webpack_exports__)if (-1 === [
|
|
156
|
+
"AtomicGeneratedAnswerInlineLink"
|
|
157
|
+
].indexOf(__rspack_i)) exports[__rspack_i] = __webpack_exports__[__rspack_i];
|
|
158
|
+
Object.defineProperty(exports, '__esModule', {
|
|
159
|
+
value: true
|
|
160
|
+
});
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __webpack_require__ = {};
|
|
3
|
+
(()=>{
|
|
4
|
+
__webpack_require__.d = (exports1, definition)=>{
|
|
5
|
+
for(var key in definition)if (__webpack_require__.o(definition, key) && !__webpack_require__.o(exports1, key)) Object.defineProperty(exports1, key, {
|
|
6
|
+
enumerable: true,
|
|
7
|
+
get: definition[key]
|
|
8
|
+
});
|
|
9
|
+
};
|
|
10
|
+
})();
|
|
11
|
+
(()=>{
|
|
12
|
+
__webpack_require__.o = (obj, prop)=>Object.prototype.hasOwnProperty.call(obj, prop);
|
|
13
|
+
})();
|
|
14
|
+
(()=>{
|
|
15
|
+
__webpack_require__.r = (exports1)=>{
|
|
16
|
+
if ("u" > typeof Symbol && Symbol.toStringTag) Object.defineProperty(exports1, Symbol.toStringTag, {
|
|
17
|
+
value: 'Module'
|
|
18
|
+
});
|
|
19
|
+
Object.defineProperty(exports1, '__esModule', {
|
|
20
|
+
value: true
|
|
21
|
+
});
|
|
22
|
+
};
|
|
23
|
+
})();
|
|
24
|
+
var __webpack_exports__ = {};
|
|
25
|
+
__webpack_require__.r(__webpack_exports__);
|
|
26
|
+
__webpack_require__.d(__webpack_exports__, {
|
|
27
|
+
default: ()=>atomic_generated_answer_inline_link_tw_css
|
|
28
|
+
});
|
|
29
|
+
const external_lit_namespaceObject = require("lit");
|
|
30
|
+
const styles = (0, external_lit_namespaceObject.css)`
|
|
31
|
+
@reference '../../../utils/tailwind.global.tw.css';
|
|
32
|
+
|
|
33
|
+
:host {
|
|
34
|
+
display: inline;
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
a {
|
|
38
|
+
@apply text-primary no-underline;
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
a [part='answer-link-text'] {
|
|
42
|
+
@apply underline;
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
.icon-wrapper {
|
|
46
|
+
display: inline-block;
|
|
47
|
+
width: 1em;
|
|
48
|
+
height: 1em;
|
|
49
|
+
vertical-align: text-bottom;
|
|
50
|
+
}
|
|
51
|
+
`;
|
|
52
|
+
const atomic_generated_answer_inline_link_tw_css = styles;
|
|
53
|
+
exports["default"] = __webpack_exports__["default"];
|
|
54
|
+
for(var __rspack_i in __webpack_exports__)if (-1 === [
|
|
55
|
+
"default"
|
|
56
|
+
].indexOf(__rspack_i)) exports[__rspack_i] = __webpack_exports__[__rspack_i];
|
|
57
|
+
Object.defineProperty(exports, '__esModule', {
|
|
58
|
+
value: true
|
|
59
|
+
});
|
|
@@ -60,12 +60,12 @@ class GeneratedAnswerController {
|
|
|
60
60
|
if (!state) return '';
|
|
61
61
|
const isHidden = !state.isVisible;
|
|
62
62
|
const isGenerating = !!state.isStreaming;
|
|
63
|
-
const
|
|
63
|
+
const hasNonEmptyAnswer = !!state.answer?.trim();
|
|
64
64
|
const hasError = !!state.error;
|
|
65
65
|
if (isHidden) return bindings.i18n.t('generated-answer-hidden');
|
|
66
66
|
if (isGenerating) return bindings.i18n.t('generating-answer');
|
|
67
67
|
if (hasError) return bindings.i18n.t('answer-could-not-be-generated');
|
|
68
|
-
if (
|
|
68
|
+
if (hasNonEmptyAnswer) return bindings.i18n.t('answer-generated', {
|
|
69
69
|
answer: state.answer
|
|
70
70
|
});
|
|
71
71
|
return '';
|
|
@@ -77,7 +77,10 @@ class GeneratedAnswerController {
|
|
|
77
77
|
}
|
|
78
78
|
get hasNoAnswerGenerated() {
|
|
79
79
|
const { answer, citations } = this.options.getGeneratedAnswerState() ?? {};
|
|
80
|
-
|
|
80
|
+
const isAnswerEmpty = !answer?.trim();
|
|
81
|
+
const hasNoCitations = !citations?.length;
|
|
82
|
+
const hasNoRetryableError = !this.hasRetryableError;
|
|
83
|
+
return isAnswerEmpty && hasNoCitations && hasNoRetryableError;
|
|
81
84
|
}
|
|
82
85
|
get isAnswerVisible() {
|
|
83
86
|
return !!this.options.getGeneratedAnswerState()?.isVisible;
|
package/dist/cjs/components/common/generated-answer/generated-content/generated-markdown-content.cjs
CHANGED
|
@@ -39,12 +39,17 @@ const external_dompurify_namespaceObject = require("dompurify");
|
|
|
39
39
|
var external_dompurify_default = /*#__PURE__*/ __webpack_require__.n(external_dompurify_namespaceObject);
|
|
40
40
|
const external_lit_namespaceObject = require("lit");
|
|
41
41
|
const unsafe_html_js_namespaceObject = require("lit/directives/unsafe-html.js");
|
|
42
|
+
require("../../atomic-generated-answer-inline-link/atomic-generated-answer-inline-link.cjs");
|
|
42
43
|
const external_markdown_utils_cjs_namespaceObject = require("./markdown-utils.cjs");
|
|
43
44
|
const renderGeneratedMarkdownContent = ({ props })=>{
|
|
44
45
|
const answerAsHtml = external_dompurify_default().sanitize((0, external_markdown_utils_cjs_namespaceObject.transformMarkdownToHtml)(props.answer ?? ''), {
|
|
45
46
|
ADD_ATTR: [
|
|
46
47
|
'part'
|
|
47
|
-
]
|
|
48
|
+
],
|
|
49
|
+
CUSTOM_ELEMENT_HANDLING: {
|
|
50
|
+
tagNameCheck: /^atomic-generated-answer-inline-link$/,
|
|
51
|
+
attributeNameCheck: /^(href|title)$/
|
|
52
|
+
}
|
|
48
53
|
});
|
|
49
54
|
return (0, external_lit_namespaceObject.html)`
|
|
50
55
|
<div
|
|
@@ -58,6 +58,18 @@ const styles = (0, external_lit_namespaceObject.css)`
|
|
|
58
58
|
@apply mb-3;
|
|
59
59
|
}
|
|
60
60
|
|
|
61
|
+
[part='generated-text']
|
|
62
|
+
[part^='answer-heading-']
|
|
63
|
+
atomic-generated-answer-inline-link::part(answer-link) {
|
|
64
|
+
@apply text-inherit;
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
[part='generated-text']
|
|
68
|
+
[part^='answer-heading-']
|
|
69
|
+
atomic-generated-answer-inline-link::part(answer-link-text) {
|
|
70
|
+
@apply no-underline;
|
|
71
|
+
}
|
|
72
|
+
|
|
61
73
|
[part='generated-text'] [part='answer-list-item'],
|
|
62
74
|
[part='generated-text'] [part='answer-paragraph'],
|
|
63
75
|
[part='generated-text'] [part='answer-quote-block'],
|
|
@@ -74,6 +74,12 @@ const customRenderer = {
|
|
|
74
74
|
const tag = ordered && 1 !== start ? `<${type} part="${part}" start="${start}">` : `<${type} part="${part}">`;
|
|
75
75
|
return `${tag}${body}</${type}>`;
|
|
76
76
|
},
|
|
77
|
+
link (href, title, text) {
|
|
78
|
+
const titleAttribute = title ? ` title="${escapeHtml(title)}"` : '';
|
|
79
|
+
const safeHref = href ? escapeHtml(href) : '';
|
|
80
|
+
if (!safeHref) return `<span>${text}</span>`;
|
|
81
|
+
return `<atomic-generated-answer-inline-link href="${safeHref}"${titleAttribute}>${text}</atomic-generated-answer-inline-link>`;
|
|
82
|
+
},
|
|
77
83
|
listitem (text) {
|
|
78
84
|
const unwrappedText = text.replace(/^<p[^>]*>/, '').replace(/<\/p>\n?$/, '');
|
|
79
85
|
const withClosedElement = completeUnclosedElement(unwrappedText);
|
|
@@ -42,6 +42,7 @@ __webpack_require__.d(__webpack_exports__, {
|
|
|
42
42
|
AtomicTabPopover: ()=>atomic_tab_popover_cjs_namespaceObject.AtomicTabPopover,
|
|
43
43
|
AtomicAskFollowUpInput: ()=>atomic_ask_follow_up_input_cjs_namespaceObject.AtomicAskFollowUpInput,
|
|
44
44
|
AtomicTimeframe: ()=>atomic_timeframe_cjs_namespaceObject.AtomicTimeframe,
|
|
45
|
+
AtomicGeneratedAnswerInlineLink: ()=>atomic_generated_answer_inline_link_cjs_namespaceObject.AtomicGeneratedAnswerInlineLink,
|
|
45
46
|
AtomicNumericRange: ()=>atomic_numeric_range_cjs_namespaceObject.AtomicNumericRange,
|
|
46
47
|
AtomicSmartSnippetCollapseWrapper: ()=>atomic_smart_snippet_collapse_wrapper_cjs_namespaceObject.AtomicSmartSnippetCollapseWrapper,
|
|
47
48
|
AtomicGeneratedAnswerFeedbackModal: ()=>atomic_generated_answer_feedback_modal_cjs_namespaceObject.AtomicGeneratedAnswerFeedbackModal,
|
|
@@ -60,6 +61,7 @@ const atomic_facet_placeholder_cjs_namespaceObject = require("./atomic-facet-pla
|
|
|
60
61
|
const atomic_focus_trap_cjs_namespaceObject = require("./atomic-focus-trap/atomic-focus-trap.cjs");
|
|
61
62
|
const atomic_generated_answer_content_cjs_namespaceObject = require("./atomic-generated-answer-content/atomic-generated-answer-content.cjs");
|
|
62
63
|
const atomic_generated_answer_feedback_modal_cjs_namespaceObject = require("./atomic-generated-answer-feedback-modal/atomic-generated-answer-feedback-modal.cjs");
|
|
64
|
+
const atomic_generated_answer_inline_link_cjs_namespaceObject = require("./atomic-generated-answer-inline-link/atomic-generated-answer-inline-link.cjs");
|
|
63
65
|
const atomic_generated_answer_thread_cjs_namespaceObject = require("./atomic-generated-answer-thread/atomic-generated-answer-thread.cjs");
|
|
64
66
|
const atomic_generated_answer_thread_item_cjs_namespaceObject = require("./atomic-generated-answer-thread-item/atomic-generated-answer-thread-item.cjs");
|
|
65
67
|
const atomic_icon_cjs_namespaceObject = require("./atomic-icon/atomic-icon.cjs");
|
|
@@ -85,6 +87,7 @@ exports.AtomicFacetPlaceholder = __webpack_exports__.AtomicFacetPlaceholder;
|
|
|
85
87
|
exports.AtomicFocusTrap = __webpack_exports__.AtomicFocusTrap;
|
|
86
88
|
exports.AtomicGeneratedAnswerContent = __webpack_exports__.AtomicGeneratedAnswerContent;
|
|
87
89
|
exports.AtomicGeneratedAnswerFeedbackModal = __webpack_exports__.AtomicGeneratedAnswerFeedbackModal;
|
|
90
|
+
exports.AtomicGeneratedAnswerInlineLink = __webpack_exports__.AtomicGeneratedAnswerInlineLink;
|
|
88
91
|
exports.AtomicGeneratedAnswerThread = __webpack_exports__.AtomicGeneratedAnswerThread;
|
|
89
92
|
exports.AtomicGeneratedAnswerThreadItem = __webpack_exports__.AtomicGeneratedAnswerThreadItem;
|
|
90
93
|
exports.AtomicIcon = __webpack_exports__.AtomicIcon;
|
|
@@ -111,6 +114,7 @@ for(var __rspack_i in __webpack_exports__)if (-1 === [
|
|
|
111
114
|
"AtomicFocusTrap",
|
|
112
115
|
"AtomicGeneratedAnswerContent",
|
|
113
116
|
"AtomicGeneratedAnswerFeedbackModal",
|
|
117
|
+
"AtomicGeneratedAnswerInlineLink",
|
|
114
118
|
"AtomicGeneratedAnswerThread",
|
|
115
119
|
"AtomicGeneratedAnswerThreadItem",
|
|
116
120
|
"AtomicIcon",
|
|
@@ -37,6 +37,7 @@ const __rspack_default_export = {
|
|
|
37
37
|
'atomic-focus-trap': async ()=>await import("./atomic-focus-trap/atomic-focus-trap.cjs"),
|
|
38
38
|
'atomic-generated-answer-content': async ()=>await import("./atomic-generated-answer-content/atomic-generated-answer-content.cjs"),
|
|
39
39
|
'atomic-generated-answer-feedback-modal': async ()=>await import("./atomic-generated-answer-feedback-modal/atomic-generated-answer-feedback-modal.cjs"),
|
|
40
|
+
'atomic-generated-answer-inline-link': async ()=>await import("./atomic-generated-answer-inline-link/atomic-generated-answer-inline-link.cjs"),
|
|
40
41
|
'atomic-generated-answer-thread': async ()=>await import("./atomic-generated-answer-thread/atomic-generated-answer-thread.cjs"),
|
|
41
42
|
'atomic-generated-answer-thread-item': async ()=>await import("./atomic-generated-answer-thread-item/atomic-generated-answer-thread-item.cjs"),
|
|
42
43
|
'atomic-icon': async ()=>await import("./atomic-icon/atomic-icon.cjs"),
|
|
@@ -79,6 +79,7 @@ const ATOMIC_CUSTOM_ELEMENT_TAGS = new Set([
|
|
|
79
79
|
'atomic-generated-answer',
|
|
80
80
|
'atomic-generated-answer-content',
|
|
81
81
|
'atomic-generated-answer-feedback-modal',
|
|
82
|
+
'atomic-generated-answer-inline-link',
|
|
82
83
|
'atomic-generated-answer-thread',
|
|
83
84
|
'atomic-generated-answer-thread-item',
|
|
84
85
|
'atomic-html',
|
package/dist/cjs/versions.cjs
CHANGED
|
@@ -28,7 +28,7 @@ __webpack_require__.d(__webpack_exports__, {
|
|
|
28
28
|
atomicVersion: ()=>atomicVersion
|
|
29
29
|
});
|
|
30
30
|
const package_json_namespaceObject = require("@coveo/headless/package.json");
|
|
31
|
-
const atomicVersion = "3.57.
|
|
31
|
+
const atomicVersion = "3.57.2";
|
|
32
32
|
exports.atomicVersion = __webpack_exports__.atomicVersion;
|
|
33
33
|
exports.headlessVersion = __webpack_exports__.headlessVersion;
|
|
34
34
|
for(var __rspack_i in __webpack_exports__)if (-1 === [
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { LitElement, html } from "lit";
|
|
2
|
+
import { provide } from "@lit/context";
|
|
2
3
|
import { customElement, property, state } from "lit/decorators.js";
|
|
3
4
|
import { when } from "lit/directives/when.js";
|
|
4
5
|
import atomic_generated_answer_tw_css from "../../search/atomic-generated-answer/atomic-generated-answer.tw.css.js";
|
|
@@ -7,6 +8,7 @@ import { renderGeneratedContentContainer } from "../generated-answer/generated-c
|
|
|
7
8
|
import { renderAgentGenerationSteps } from "../generated-answer/render-agent-generation-steps.js";
|
|
8
9
|
import { renderFeedbackAndCopyButtons } from "../generated-answer/render-feedback-and-copy-buttons.js";
|
|
9
10
|
import { renderSourceCitations } from "../generated-answer/source-citations.js";
|
|
11
|
+
import { answerContext } from "./answer-context.js";
|
|
10
12
|
function _ts_decorate(decorators, target, key, desc) {
|
|
11
13
|
var c = arguments.length, r = c < 3 ? target : null === desc ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
12
14
|
if ("object" == typeof Reflect && "function" == typeof Reflect.decorate) r = Reflect.decorate(decorators, target, key, desc);
|
|
@@ -24,6 +26,7 @@ class AtomicGeneratedAnswerContent extends LitElement {
|
|
|
24
26
|
}
|
|
25
27
|
render() {
|
|
26
28
|
const { answer, answerContentFormat, isStreaming, generationSteps, citations = [], answerId, error, cannotAnswer } = this.generatedAnswer || {};
|
|
29
|
+
this.answerId = answerId || '';
|
|
27
30
|
if (error) return this.renderError();
|
|
28
31
|
if (cannotAnswer) return this.renderCannotAnswer();
|
|
29
32
|
if (!answerId) return html``;
|
|
@@ -126,12 +129,17 @@ class AtomicGeneratedAnswerContent extends LitElement {
|
|
|
126
129
|
`;
|
|
127
130
|
}
|
|
128
131
|
constructor(...args){
|
|
129
|
-
super(...args), this.renderCitations = ()=>html``, this.onClickLike = ()=>{}, this.onClickDislike = ()=>{}, this.onCopyToClipboard = ()=>{}, this.copyState = 'idle';
|
|
132
|
+
super(...args), this.answerId = '', this.renderCitations = ()=>html``, this.onClickLike = ()=>{}, this.onClickDislike = ()=>{}, this.onCopyToClipboard = ()=>{}, this.copyState = 'idle';
|
|
130
133
|
}
|
|
131
134
|
}
|
|
132
135
|
AtomicGeneratedAnswerContent.styles = [
|
|
133
136
|
atomic_generated_answer_tw_css
|
|
134
137
|
];
|
|
138
|
+
_ts_decorate([
|
|
139
|
+
provide({
|
|
140
|
+
context: answerContext
|
|
141
|
+
})
|
|
142
|
+
], AtomicGeneratedAnswerContent.prototype, "answerId", void 0);
|
|
135
143
|
_ts_decorate([
|
|
136
144
|
property({
|
|
137
145
|
attribute: false
|
|
@@ -0,0 +1,116 @@
|
|
|
1
|
+
import { buildInteractiveGeneratedAnswerInlineLink } from "@coveo/headless";
|
|
2
|
+
import { LitElement, html } from "lit";
|
|
3
|
+
import { customElement, property, state } from "lit/decorators.js";
|
|
4
|
+
import atomic_generated_answer_inline_link_tw_css from "./atomic-generated-answer-inline-link.tw.css.js";
|
|
5
|
+
import { ifDefined } from "lit/directives/if-defined.js";
|
|
6
|
+
import { bindingGuard } from "../../../decorators/binding-guard.js";
|
|
7
|
+
import { bindings } from "../../../decorators/bindings.js";
|
|
8
|
+
import { errorGuard } from "../../../decorators/error-guard.js";
|
|
9
|
+
import { consume } from "@lit/context";
|
|
10
|
+
import { answerContext } from "../atomic-generated-answer-content/answer-context.js";
|
|
11
|
+
function _ts_decorate(decorators, target, key, desc) {
|
|
12
|
+
var c = arguments.length, r = c < 3 ? target : null === desc ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
13
|
+
if ("object" == typeof Reflect && "function" == typeof Reflect.decorate) r = Reflect.decorate(decorators, target, key, desc);
|
|
14
|
+
else for(var i = decorators.length - 1; i >= 0; i--)if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
15
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
16
|
+
}
|
|
17
|
+
function _ts_metadata(k, v) {
|
|
18
|
+
if ("object" == typeof Reflect && "function" == typeof Reflect.metadata) return Reflect.metadata(k, v);
|
|
19
|
+
}
|
|
20
|
+
class AtomicGeneratedAnswerInlineLink extends LitElement {
|
|
21
|
+
initialize() {
|
|
22
|
+
if (this.answerId && this.href) this.interactiveLink = buildInteractiveGeneratedAnswerInlineLink(this.bindings.engine, {
|
|
23
|
+
options: {
|
|
24
|
+
answerId: this.answerId,
|
|
25
|
+
link: {
|
|
26
|
+
linkText: this.textContent?.trim() || '',
|
|
27
|
+
linkURL: this.href
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
});
|
|
31
|
+
}
|
|
32
|
+
render() {
|
|
33
|
+
return html`
|
|
34
|
+
<a
|
|
35
|
+
part="answer-link"
|
|
36
|
+
href=${this.href}
|
|
37
|
+
title=${ifDefined(this.title || void 0)}
|
|
38
|
+
target="_blank"
|
|
39
|
+
rel="noopener noreferrer"
|
|
40
|
+
@click=${this.handleSelect}
|
|
41
|
+
@contextmenu=${this.handleSelect}
|
|
42
|
+
@mousedown=${this.handleSelect}
|
|
43
|
+
@mouseup=${this.handleSelect}
|
|
44
|
+
@touchstart=${this.handleBeginDelayedSelect}
|
|
45
|
+
@touchend=${this.handleCancelPendingSelect}
|
|
46
|
+
>
|
|
47
|
+
<span part="answer-link-text"><slot></slot></span>
|
|
48
|
+
<span class="icon-wrapper">
|
|
49
|
+
<svg
|
|
50
|
+
part="answer-link-icon"
|
|
51
|
+
width="100%"
|
|
52
|
+
height="100%"
|
|
53
|
+
viewBox="0 0 640 640"
|
|
54
|
+
aria-hidden="true"
|
|
55
|
+
focusable="false"
|
|
56
|
+
xmlns="http://www.w3.org/2000/svg"
|
|
57
|
+
>
|
|
58
|
+
<path
|
|
59
|
+
fill="currentColor"
|
|
60
|
+
d="M354.4 83.8C359.4 71.8 371.1 64 384 64L544 64C561.7 64 576 78.3 576 96L576 256C576 268.9 568.2 280.6 556.2 285.6C544.2 290.6 530.5 287.8 521.3 278.7L464 221.3L310.6 374.6C298.1 387.1 277.8 387.1 265.3 374.6C252.8 362.1 252.8 341.8 265.3 329.3L418.7 176L361.4 118.6C352.2 109.4 349.5 95.7 354.5 83.7zM64 240C64 195.8 99.8 160 144 160L224 160C241.7 160 256 174.3 256 192C256 209.7 241.7 224 224 224L144 224C135.2 224 128 231.2 128 240L128 496C128 504.8 135.2 512 144 512L400 512C408.8 512 416 504.8 416 496L416 416C416 398.3 430.3 384 448 384C465.7 384 480 398.3 480 416L480 496C480 540.2 444.2 576 400 576L144 576C99.8 576 64 540.2 64 496L64 240z"
|
|
61
|
+
/>
|
|
62
|
+
</svg>
|
|
63
|
+
</span>
|
|
64
|
+
</a>
|
|
65
|
+
`;
|
|
66
|
+
}
|
|
67
|
+
handleSelect() {
|
|
68
|
+
this.interactiveLink?.select();
|
|
69
|
+
}
|
|
70
|
+
handleBeginDelayedSelect() {
|
|
71
|
+
this.interactiveLink?.beginDelayedSelect();
|
|
72
|
+
}
|
|
73
|
+
handleCancelPendingSelect() {
|
|
74
|
+
this.interactiveLink?.cancelPendingSelect();
|
|
75
|
+
}
|
|
76
|
+
constructor(...args){
|
|
77
|
+
super(...args), this.initialized = false, this.href = '', this.title = '';
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
AtomicGeneratedAnswerInlineLink.styles = atomic_generated_answer_inline_link_tw_css;
|
|
81
|
+
_ts_decorate([
|
|
82
|
+
consume({
|
|
83
|
+
context: answerContext
|
|
84
|
+
}),
|
|
85
|
+
_ts_metadata("design:type", Object)
|
|
86
|
+
], AtomicGeneratedAnswerInlineLink.prototype, "answerId", void 0);
|
|
87
|
+
_ts_decorate([
|
|
88
|
+
state(),
|
|
89
|
+
_ts_metadata("design:type", "u" < typeof AnyBindings ? Object : AnyBindings)
|
|
90
|
+
], AtomicGeneratedAnswerInlineLink.prototype, "bindings", void 0);
|
|
91
|
+
_ts_decorate([
|
|
92
|
+
state(),
|
|
93
|
+
_ts_metadata("design:type", "u" < typeof Error ? Object : Error)
|
|
94
|
+
], AtomicGeneratedAnswerInlineLink.prototype, "error", void 0);
|
|
95
|
+
_ts_decorate([
|
|
96
|
+
property({
|
|
97
|
+
reflect: true
|
|
98
|
+
})
|
|
99
|
+
], AtomicGeneratedAnswerInlineLink.prototype, "href", void 0);
|
|
100
|
+
_ts_decorate([
|
|
101
|
+
property({
|
|
102
|
+
reflect: true
|
|
103
|
+
})
|
|
104
|
+
], AtomicGeneratedAnswerInlineLink.prototype, "title", void 0);
|
|
105
|
+
_ts_decorate([
|
|
106
|
+
bindingGuard(),
|
|
107
|
+
errorGuard(),
|
|
108
|
+
_ts_metadata("design:type", Function),
|
|
109
|
+
_ts_metadata("design:paramtypes", []),
|
|
110
|
+
_ts_metadata("design:returntype", void 0)
|
|
111
|
+
], AtomicGeneratedAnswerInlineLink.prototype, "render", null);
|
|
112
|
+
AtomicGeneratedAnswerInlineLink = _ts_decorate([
|
|
113
|
+
customElement('atomic-generated-answer-inline-link'),
|
|
114
|
+
bindings()
|
|
115
|
+
], AtomicGeneratedAnswerInlineLink);
|
|
116
|
+
export { AtomicGeneratedAnswerInlineLink };
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { css } from "lit";
|
|
2
|
+
const styles = css`/*! tailwindcss v4.2.4 | MIT License | https://tailwindcss.com */:host{display:inline}a{color:var(--atomic-primary);text-decoration-line:none}a [part=answer-link-text]{text-decoration-line:underline}.icon-wrapper{display:inline-block;height:1em;vertical-align:text-bottom;width:1em}`;
|
|
3
|
+
const atomic_generated_answer_inline_link_tw_css = styles;
|
|
4
|
+
export default atomic_generated_answer_inline_link_tw_css;
|
|
@@ -32,12 +32,12 @@ class GeneratedAnswerController {
|
|
|
32
32
|
if (!state) return '';
|
|
33
33
|
const isHidden = !state.isVisible;
|
|
34
34
|
const isGenerating = !!state.isStreaming;
|
|
35
|
-
const
|
|
35
|
+
const hasNonEmptyAnswer = !!state.answer?.trim();
|
|
36
36
|
const hasError = !!state.error;
|
|
37
37
|
if (isHidden) return bindings.i18n.t('generated-answer-hidden');
|
|
38
38
|
if (isGenerating) return bindings.i18n.t('generating-answer');
|
|
39
39
|
if (hasError) return bindings.i18n.t('answer-could-not-be-generated');
|
|
40
|
-
if (
|
|
40
|
+
if (hasNonEmptyAnswer) return bindings.i18n.t('answer-generated', {
|
|
41
41
|
answer: state.answer
|
|
42
42
|
});
|
|
43
43
|
return '';
|
|
@@ -49,7 +49,10 @@ class GeneratedAnswerController {
|
|
|
49
49
|
}
|
|
50
50
|
get hasNoAnswerGenerated() {
|
|
51
51
|
const { answer, citations } = this.options.getGeneratedAnswerState() ?? {};
|
|
52
|
-
|
|
52
|
+
const isAnswerEmpty = !answer?.trim();
|
|
53
|
+
const hasNoCitations = !citations?.length;
|
|
54
|
+
const hasNoRetryableError = !this.hasRetryableError;
|
|
55
|
+
return isAnswerEmpty && hasNoCitations && hasNoRetryableError;
|
|
53
56
|
}
|
|
54
57
|
get isAnswerVisible() {
|
|
55
58
|
return !!this.options.getGeneratedAnswerState()?.isVisible;
|