UNPKG

cozy-search

Version:

UI components about search bar and IA assistant

83 lines (64 loc) 3.12 kB
"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); Object.defineProperty(exports, "__esModule", { value: true }); exports.default = void 0; var _react = require("@assistant-ui/react"); var _twakeIcons = require("@linagora/twake-icons"); var _react2 = _interopRequireDefault(require("react")); var _Alert = _interopRequireDefault(require("cozy-ui/transpiled/react/Alert")); var _Box = _interopRequireDefault(require("cozy-ui/transpiled/react/Box")); var _Typography = _interopRequireDefault(require("cozy-ui/transpiled/react/Typography")); var _twakeI18n = require("twake-i18n"); var _MarkdownText = _interopRequireDefault(require("./MarkdownText")); var _TwakeAssistantIcon = require("../AssistantIcon/TwakeAssistantIcon"); var _Sources = _interopRequireDefault(require("../Conversations/Sources/Sources")); var useIsErrorMessage = function useIsErrorMessage() { return (0, _react.useMessage)(function (s) { var _s$metadata, _s$metadata$custom; return ((_s$metadata = s.metadata) === null || _s$metadata === void 0 ? void 0 : (_s$metadata$custom = _s$metadata.custom) === null || _s$metadata$custom === void 0 ? void 0 : _s$metadata$custom.isError) === true; }); }; var AssistantMessage = function AssistantMessage() { var _useI18n = (0, _twakeI18n.useI18n)(), t = _useI18n.t; var isThinking = (0, _react.useMessage)(function (s) { var _s$status; return ((_s$status = s.status) === null || _s$status === void 0 ? void 0 : _s$status.type) === 'requires-action'; }); var isError = useIsErrorMessage(); var messageId = (0, _react.useMessage)(function (s) { return s.id; }); var sources = (0, _react.useMessage)(function (s) { var _s$metadata2, _s$metadata2$custom; return (_s$metadata2 = s.metadata) === null || _s$metadata2 === void 0 ? void 0 : (_s$metadata2$custom = _s$metadata2.custom) === null || _s$metadata2$custom === void 0 ? void 0 : _s$metadata2$custom.sources; }); return /*#__PURE__*/_react2.default.createElement(_react.MessagePrimitive.Root, { className: "u-mt-1-half" }, isThinking && /*#__PURE__*/_react2.default.createElement(_Box.default, { display: "flex", alignItems: "center", gridGap: 12 }, /*#__PURE__*/_react2.default.createElement(_twakeIcons.Icon, { icon: _TwakeAssistantIcon.TwakeAssistantIcon, size: 24, className: "u-mh-half", color: "var(--primaryColor)" }), /*#__PURE__*/_react2.default.createElement(_Typography.default, { variant: "h6", display: "inline" }, t('assistant.message.running'))), isError ? /*#__PURE__*/_react2.default.createElement(_Alert.default, { severity: "error" }, t('assistant.default_error')) : /*#__PURE__*/_react2.default.createElement(_react.MessagePrimitive.Content, { components: { Text: _MarkdownText.default } }), (sources === null || sources === void 0 ? void 0 : sources.length) > 0 && /*#__PURE__*/_react2.default.createElement(_Sources.default, { messageId: messageId, sources: sources })); }; var _default = AssistantMessage; exports.default = _default;