UNPKG

cozy-search

Version:

UI components about search bar and IA assistant

119 lines (96 loc) 6.06 kB
"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); Object.defineProperty(exports, "__esModule", { value: true }); exports.default = void 0; var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty")); var _classnames = _interopRequireDefault(require("classnames")); var _react = _interopRequireDefault(require("react")); var _ListItem = _interopRequireDefault(require("cozy-ui/transpiled/react/ListItem")); var _ListItemIcon = _interopRequireDefault(require("cozy-ui/transpiled/react/ListItemIcon")); var _ListItemText = _interopRequireDefault(require("cozy-ui/transpiled/react/ListItemText")); var _Typography = _interopRequireDefault(require("cozy-ui/transpiled/react/Typography")); var _CozyTheme = require("cozy-ui-plus/dist/providers/CozyTheme"); var _twakeI18n = require("twake-i18n"); var _ConversationActions = _interopRequireDefault(require("./ConversationActions")); var _AssistantAvatar = _interopRequireDefault(require("../Assistant/AssistantAvatar")); var _helpers = require("../helpers"); var styles = { "composerContainer": "styles__composerContainer___3bNfY", "composerActions": "styles__composerActions___2xQEH", "conversationBar": "styles__conversationBar___2J-Us", "conversationBar--mobile": "styles__conversationBar--mobile___1jdg8", "conversationViewport": "styles__conversationViewport___24jYX", "conversationBar-input": "styles__conversationBar-input___2DfdZ", "chatConversation": "styles__chatConversation___2EmkA", "conversationHeaderBar": "styles__conversationHeaderBar___C8tlD", "conversationList": "styles__conversationList___2GCzV", "conversationList--container": "styles__conversationList--container___2xRAG", "conversationList--hidden": "styles__conversationList--hidden___20BsT", "conversationListItem--selected": "styles__conversationListItem--selected___2jCyB", "menuToggler": "styles__menuToggler___39GfB", "menuToggler--disabled": "styles__menuToggler--disabled___15vd4", "conversationChips-container": "styles__conversationChips-container___327dE", "conversationChips-startIcon": "styles__conversationChips-startIcon___1yOVn", "conversationChips-chipIcon": "styles__conversationChips-chipIcon___1wmF-", "conversationChips-deleteIcon": "styles__conversationChips-deleteIcon___s9C40", "is-warning": "styles__is-warning___3sa0v", "conversationChips-chip": "styles__conversationChips-chip___2PqQv", "cozyThread-messageContent": "styles__cozyThread-messageContent___2HjdB", "conversation-list-item": "styles__conversation-list-item___rQapI", "conversation-list-item-action": "styles__conversation-list-item-action___qiuKm", "conversation-list-item--selected--light": "styles__conversation-list-item--selected--light___3WvIn", "conversation-list-item--selected--dark": "styles__conversation-list-item--selected--dark___JDQlY", "conversation-list-item--wider": "styles__conversation-list-item--wider___2Tl2c", "conversation-list-item-divider": "styles__conversation-list-item-divider___2LOP1", "conversation-list-item-text": "styles__conversation-list-item-text___31VBM", "conversation-list-item-title": "styles__conversation-list-item-title___3je_6", "conversation-list-item-meta": "styles__conversation-list-item-meta___3Zk-r", "conversation-list-item-subtitle": "styles__conversation-list-item-subtitle___3e_h0" }; var ConversationListItemWider = function ConversationListItemWider(_ref) { var _conversation$cozyMet; var conversation = _ref.conversation, selected = _ref.selected, divider = _ref.divider, disableAction = _ref.disableAction, onOpenConversation = _ref.onOpenConversation; var _useI18n = (0, _twakeI18n.useI18n)(), t = _useI18n.t, lang = _useI18n.lang; var _useCozyTheme = (0, _CozyTheme.useCozyTheme)(), theme = _useCozyTheme.type; return /*#__PURE__*/_react.default.createElement(_ListItem.default, { divider: divider, button: true, onClick: function onClick() { return onOpenConversation(conversation._id); }, className: (0, _classnames.default)('u-bdrs-0 u-ov-hidden u-flex u-flex-items-center u-flex-justify-between u-w-100 u-pv-half u-ph-1', styles['conversation-list-item'], styles['conversation-list-item--wider'], (0, _defineProperty2.default)({}, styles["conversation-list-item--selected--".concat(theme)], selected)), selected: selected }, /*#__PURE__*/_react.default.createElement(_ListItemIcon.default, null, /*#__PURE__*/_react.default.createElement(_AssistantAvatar.default, { assistant: conversation.assistant, className: "u-mr-half u-w-1 u-h-1" })), /*#__PURE__*/_react.default.createElement(_ListItemText.default, { className: "u-pr-1", primary: /*#__PURE__*/_react.default.createElement("div", { className: "u-flex u-flex-items-center" }, /*#__PURE__*/_react.default.createElement(_Typography.default, { variant: "h6", className: "u-ellipsis u-mb-half" }, (0, _helpers.getNameOfConversation)(conversation)), !disableAction && /*#__PURE__*/_react.default.createElement(_ConversationActions.default, { buttonClassName: (0, _classnames.default)(styles['conversation-list-item-action']), conversation: conversation })), secondary: /*#__PURE__*/_react.default.createElement(_Typography.default, { variant: "h6", className: "u-coolGrey" }, (0, _helpers.getDescriptionOfConversation)(conversation)) }), /*#__PURE__*/_react.default.createElement(_Typography.default, { className: "u-miw-4 u-fz-xsmall u-ta-right u-dn-s" }, (0, _helpers.formatConversationDate)((_conversation$cozyMet = conversation.cozyMetadata) === null || _conversation$cozyMet === void 0 ? void 0 : _conversation$cozyMet.updatedAt, t, lang))); }; // Memoized for the same reason as ConversationListItem: skip re-rendering // list items whose props are unchanged on a conversation switch. var _default = /*#__PURE__*/_react.default.memo(ConversationListItemWider); exports.default = _default;