UNPKG

cozy-search

Version:

UI components about search bar and IA assistant

194 lines (151 loc) 7.95 kB
"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); Object.defineProperty(exports, "__esModule", { value: true }); exports.default = void 0; var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator")); var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator")); var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray")); var _twakeIcons = require("@linagora/twake-icons"); var _react = _interopRequireWildcard(require("react")); var _cozyClient = require("cozy-client"); var _Buttons = _interopRequireDefault(require("cozy-ui/transpiled/react/Buttons")); var _Dialog = _interopRequireWildcard(require("cozy-ui/transpiled/react/Dialog")); var _IconButton = _interopRequireDefault(require("cozy-ui/transpiled/react/IconButton")); var _Alert = require("cozy-ui/transpiled/react/providers/Alert"); var _twakeI18n = require("twake-i18n"); var _locales = require("../../locales"); var _AssistantProvider = require("../AssistantProvider"); var _queries = require("../queries"); function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); } function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; } var styles = { "BasicInfoStep": "styles__BasicInfoStep___2r0eM", "avatar-container": "styles__avatar-container___kJ_64", "avatar-image": "styles__avatar-image___2Mkxj", "file-input": "styles__file-input___2fB5n", "ModelSelectionStep": "styles__ModelSelectionStep___1auXB", "grid-container": "styles__grid-container___3wOus", "grid-container--mobile": "styles__grid-container--mobile___uCAg1", "model-card": "styles__model-card___fbAqF", "model-card--selected": "styles__model-card--selected___3hKq3", "model-card--openrag--light": "styles__model-card--openrag--light___1vabR", "model-card--openrag--dark": "styles__model-card--openrag--dark___1x0sK", "icon-container": "styles__icon-container___1vaTp", "icon-container--google": "styles__icon-container--google___3gtC7", "icon-container--custom": "styles__icon-container--custom___1_EFK", "icon-container--openai": "styles__icon-container--openai___3DsoO", "check-icon": "styles__check-icon___3uPUk", "CreateAssistantDialog": "styles__CreateAssistantDialog___1dSe_", "close-button": "styles__close-button___3jc_w" }; var DeleteAssistantDialog = function DeleteAssistantDialog(_ref) { var open = _ref.open, onClose = _ref.onClose; (0, _twakeI18n.useExtendI18n)(_locales.locales); var _useI18n = (0, _twakeI18n.useI18n)(), t = _useI18n.t; var client = (0, _cozyClient.useClient)(); var _useAssistant = (0, _AssistantProvider.useAssistant)(), assistantIdInAction = _useAssistant.assistantIdInAction, setAssistantIdInAction = _useAssistant.setAssistantIdInAction; var _useAlert = (0, _Alert.useAlert)(), showAlert = _useAlert.showAlert; var _useState = (0, _react.useState)(false), _useState2 = (0, _slicedToArray2.default)(_useState, 2), isDeleting = _useState2[0], setIsDeleting = _useState2[1]; var assistantQuery = (0, _queries.buildAssistantByIdQuery)(assistantIdInAction); var _ref2 = (0, _cozyClient.useQuery)(assistantQuery.definition, assistantQuery.options) || {}, assistant = _ref2.data, fetchStatus = _ref2.fetchStatus; var isLoading = fetchStatus === 'loading' || fetchStatus === 'pending'; var displayName = (assistant === null || assistant === void 0 ? void 0 : assistant.name) || assistantIdInAction || '...'; var handleDeleteAssistant = /*#__PURE__*/function () { var _ref3 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee() { var _yield$client$query, assistantDoc, included, provider; return _regenerator.default.wrap(function _callee$(_context) { while (1) { switch (_context.prev = _context.next) { case 0: if (assistantIdInAction) { _context.next = 2; break; } return _context.abrupt("return"); case 2: _context.prev = 2; setIsDeleting(true); _context.next = 6; return client.query(assistantQuery.definition()); case 6: _yield$client$query = _context.sent; assistantDoc = _yield$client$query.data; included = _yield$client$query.included; _context.next = 11; return client.destroy(assistantDoc); case 11: provider = included === null || included === void 0 ? void 0 : included[0]; if (!provider) { _context.next = 15; break; } _context.next = 15; return client.destroy(provider); case 15: setAssistantIdInAction(null); onClose(); _context.next = 22; break; case 19: _context.prev = 19; _context.t0 = _context["catch"](2); showAlert({ message: t('assistant.default_error'), severity: 'error' }); case 22: _context.prev = 22; setIsDeleting(false); return _context.finish(22); case 25: case "end": return _context.stop(); } } }, _callee, null, [[2, 19, 22, 25]]); })); return function handleDeleteAssistant() { return _ref3.apply(this, arguments); }; }(); return /*#__PURE__*/_react.default.createElement(_Dialog.default, { open: open, onClose: onClose, maxWidth: "sm", className: styles.CreateAssistantDialog }, /*#__PURE__*/_react.default.createElement(_Dialog.DialogTitle, { disableTypography: true }, t('assistant_delete.title')), /*#__PURE__*/_react.default.createElement(_IconButton.default, { "aria-label": t('assistant.dialog.close'), onClick: onClose, className: styles['close-button'] }, /*#__PURE__*/_react.default.createElement(_twakeIcons.Icon, { icon: _twakeIcons.Cross })), /*#__PURE__*/_react.default.createElement(_Dialog.DialogContent, null, t('assistant_delete.content', { name: displayName })), /*#__PURE__*/_react.default.createElement(_Dialog.DialogActions, null, /*#__PURE__*/_react.default.createElement(_Buttons.default, { variant: "text", onClick: onClose, label: t('assistant_delete.buttons.cancel') }), /*#__PURE__*/_react.default.createElement(_Buttons.default, { variant: "contained", color: "error", onClick: handleDeleteAssistant, disabled: isLoading || isDeleting || !assistantIdInAction, label: t('assistant_delete.buttons.confirm') }))); }; var _default = DeleteAssistantDialog; exports.default = _default;