cozy-search 0.19.2 → 0.20.0

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.
@@ -1,7 +1,6 @@
1
1
  export default ApiKeyStep;
2
- declare function ApiKeyStep({ apiKey, selectedProvider, onChange, onModelSelect }: {
2
+ declare function ApiKeyStep({ apiKey, selectedProvider, onChange }: {
3
3
  apiKey: any;
4
4
  selectedProvider: any;
5
5
  onChange: any;
6
- onModelSelect: any;
7
6
  }): JSX.Element;
@@ -9,9 +9,9 @@ exports.default = void 0;
9
9
 
10
10
  var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
11
11
 
12
- var _react = _interopRequireWildcard(require("react"));
12
+ var _classnames = _interopRequireDefault(require("classnames"));
13
13
 
14
- var _reactRouterDom = require("react-router-dom");
14
+ var _react = _interopRequireWildcard(require("react"));
15
15
 
16
16
  var _Card = _interopRequireDefault(require("cozy-ui/transpiled/react/Card"));
17
17
 
@@ -21,12 +21,12 @@ var _IconButton = _interopRequireDefault(require("cozy-ui/transpiled/react/IconB
21
21
 
22
22
  var _Eye = _interopRequireDefault(require("cozy-ui/transpiled/react/Icons/Eye"));
23
23
 
24
- var _SelectBox = _interopRequireDefault(require("cozy-ui/transpiled/react/SelectBox"));
25
-
26
24
  var _TextField = _interopRequireDefault(require("cozy-ui/transpiled/react/TextField"));
27
25
 
28
26
  var _Typography = _interopRequireDefault(require("cozy-ui/transpiled/react/Typography"));
29
27
 
28
+ var _CozyTheme = require("cozy-ui-plus/dist/providers/CozyTheme");
29
+
30
30
  var _twakeI18n = require("twake-i18n");
31
31
 
32
32
  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); }
@@ -36,8 +36,10 @@ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj &&
36
36
  var ApiKeyStep = function ApiKeyStep(_ref) {
37
37
  var apiKey = _ref.apiKey,
38
38
  selectedProvider = _ref.selectedProvider,
39
- onChange = _ref.onChange,
40
- onModelSelect = _ref.onModelSelect;
39
+ onChange = _ref.onChange;
40
+
41
+ var _useCozyTheme = (0, _CozyTheme.useCozyTheme)(),
42
+ theme = _useCozyTheme.type;
41
43
 
42
44
  var _useState = (0, _react.useState)(false),
43
45
  _useState2 = (0, _slicedToArray2.default)(_useState, 2),
@@ -48,22 +50,12 @@ var ApiKeyStep = function ApiKeyStep(_ref) {
48
50
  t = _useI18n.t;
49
51
 
50
52
  var _ref2 = selectedProvider || {},
51
- models = _ref2.models,
52
53
  id = _ref2.id,
53
54
  providerName = _ref2.name,
54
55
  model = _ref2.model,
55
56
  baseUrl = _ref2.baseUrl;
56
57
 
57
58
  var isCustomModel = id === 'custom';
58
- var mappedModels = (0, _react.useMemo)(function () {
59
- return models === null || models === void 0 ? void 0 : models.map(function (model) {
60
- return {
61
- label: model,
62
- value: model
63
- };
64
- });
65
- }, // eslint-disable-next-line react-hooks/preserve-manual-memoization
66
- [models]);
67
59
  return /*#__PURE__*/_react.default.createElement("div", {
68
60
  className: "u-flex u-flex-column u-gap-1"
69
61
  }, /*#__PURE__*/_react.default.createElement(_Typography.default, {
@@ -98,15 +90,13 @@ var ApiKeyStep = function ApiKeyStep(_ref) {
98
90
  }, /*#__PURE__*/_react.default.createElement(_Typography.default, {
99
91
  variant: "h6",
100
92
  className: "u-mb-half"
101
- }, t('assistant_create.steps.configuration.model.label')), /*#__PURE__*/_react.default.createElement(_SelectBox.default, {
102
- options: mappedModels,
103
- value: {
104
- label: model,
105
- value: model
106
- },
107
- onChange: function onChange(selectedModel) {
108
- return onModelSelect(selectedModel.value);
109
- }
93
+ }, t('assistant_create.steps.configuration.model.label')), /*#__PURE__*/_react.default.createElement(_TextField.default, {
94
+ fullWidth: true,
95
+ placeholder: t('assistant_create.steps.configuration.model.placeholder'),
96
+ value: model,
97
+ onChange: onChange('model'),
98
+ variant: "outlined",
99
+ type: "text"
110
100
  })), /*#__PURE__*/_react.default.createElement("div", {
111
101
  className: "u-mb-1"
112
102
  }, /*#__PURE__*/_react.default.createElement(_Typography.default, {
@@ -132,7 +122,10 @@ var ApiKeyStep = function ApiKeyStep(_ref) {
132
122
  }))
133
123
  }
134
124
  })), /*#__PURE__*/_react.default.createElement(_Card.default, {
135
- className: "u-bg-paleGrey u-p-1 u-bdw-0"
125
+ className: (0, _classnames.default)(' u-p-1 u-bdw-0', {
126
+ 'u-bg-primaryBackgroundLight': theme === 'light',
127
+ 'u-bg-coolGrey': theme === 'dark'
128
+ })
136
129
  }, /*#__PURE__*/_react.default.createElement(_Typography.default, {
137
130
  variant: "h6",
138
131
  className: "u-mb-half"
@@ -141,11 +134,7 @@ var ApiKeyStep = function ApiKeyStep(_ref) {
141
134
  color: "textSecondary"
142
135
  }, /*#__PURE__*/_react.default.createElement("span", null, t('assistant_create.steps.configuration.generate', {
143
136
  provider: !isCustomModel ? providerName : t('assistant_create.steps.configuration.custom_provider')
144
- })), /*#__PURE__*/_react.default.createElement(_reactRouterDom.Link, {
145
- underline: "hover",
146
- to: "/",
147
- className: "u-primaryColor"
148
- }, t('assistant_create.steps.configuration.read_docs')))));
137
+ })))));
149
138
  };
150
139
 
151
140
  var _default = ApiKeyStep;
@@ -32,8 +32,9 @@ var styles = {
32
32
  "grid-container": "styles__grid-container___3wOus",
33
33
  "grid-container--mobile": "styles__grid-container--mobile___uCAg1",
34
34
  "model-card": "styles__model-card___fbAqF",
35
- "selected": "styles__selected___2KyhU",
36
- "openrag": "styles__openrag___3wGb4",
35
+ "model-card--selected": "styles__model-card--selected___3hKq3",
36
+ "model-card--openrag--light": "styles__model-card--openrag--light___1vabR",
37
+ "model-card--openrag--dark": "styles__model-card--openrag--dark___1x0sK",
37
38
  "icon-container": "styles__icon-container___1vaTp",
38
39
  "icon-container--google": "styles__icon-container--google___3gtC7",
39
40
  "icon-container--custom": "styles__icon-container--custom___1_EFK",
@@ -7,6 +7,8 @@ Object.defineProperty(exports, "__esModule", {
7
7
  });
8
8
  exports.default = void 0;
9
9
 
10
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
11
+
10
12
  var _classnames = _interopRequireDefault(require("classnames"));
11
13
 
12
14
  var _react = _interopRequireDefault(require("react"));
@@ -21,6 +23,8 @@ var _Typography = _interopRequireDefault(require("cozy-ui/transpiled/react/Typog
21
23
 
22
24
  var _twakeI18n = require("twake-i18n");
23
25
 
26
+ var _CozyTheme = require("cozy-ui-plus/dist/providers/CozyTheme");
27
+
24
28
  var _openrag = _interopRequireDefault(require("../../assets/openrag.png"));
25
29
 
26
30
  var styles = {
@@ -32,8 +36,9 @@ var styles = {
32
36
  "grid-container": "styles__grid-container___3wOus",
33
37
  "grid-container--mobile": "styles__grid-container--mobile___uCAg1",
34
38
  "model-card": "styles__model-card___fbAqF",
35
- "selected": "styles__selected___2KyhU",
36
- "openrag": "styles__openrag___3wGb4",
39
+ "model-card--selected": "styles__model-card--selected___3hKq3",
40
+ "model-card--openrag--light": "styles__model-card--openrag--light___1vabR",
41
+ "model-card--openrag--dark": "styles__model-card--openrag--dark___1x0sK",
37
42
  "icon-container": "styles__icon-container___1vaTp",
38
43
  "icon-container--google": "styles__icon-container--google___3gtC7",
39
44
  "icon-container--custom": "styles__icon-container--custom___1_EFK",
@@ -479,6 +484,8 @@ var ICONS = {
479
484
  };
480
485
 
481
486
  var Provider = function Provider(_ref) {
487
+ var _cx;
488
+
482
489
  var selectedProvider = _ref.selectedProvider,
483
490
  provider = _ref.provider,
484
491
  onSelect = _ref.onSelect;
@@ -486,11 +493,14 @@ var Provider = function Provider(_ref) {
486
493
  var _useI18n = (0, _twakeI18n.useI18n)(),
487
494
  t = _useI18n.t;
488
495
 
496
+ var _useCozyTheme = (0, _CozyTheme.useCozyTheme)(),
497
+ theme = _useCozyTheme.type;
498
+
489
499
  var isSelected = (selectedProvider === null || selectedProvider === void 0 ? void 0 : selectedProvider.id) === provider.id;
490
500
  var isOpenRag = provider.id === 'openrag';
491
501
  return /*#__PURE__*/_react.default.createElement("button", {
492
502
  type: "button",
493
- className: "u-p-1 u-c-pointer u-flex u-flex-row u-flex-items-center ".concat(styles['model-card'], " ").concat(isSelected ? styles.selected : '', " ").concat(isOpenRag ? styles.openrag : ''),
503
+ className: (0, _classnames.default)('u-p-1 u-c-pointer u-flex u-flex-row u-flex-items-center', styles['model-card'], (_cx = {}, (0, _defineProperty2.default)(_cx, styles['model-card--selected'], isSelected), (0, _defineProperty2.default)(_cx, styles["model-card--openrag--".concat(theme)], isOpenRag), _cx)),
494
504
  onClick: function onClick() {
495
505
  return onSelect(provider);
496
506
  }
@@ -25,11 +25,10 @@ var _Provider = _interopRequireDefault(require("./Provider"));
25
25
 
26
26
  var providers = [{
27
27
  id: "openrag",
28
- name: "LINAGORA",
28
+ name: "Twake",
29
29
  models: ["openrag"],
30
30
  description: "assistant_create.steps.provider_selection.openrag.description",
31
31
  icon: "OpenRagLogo",
32
- baseUrl: "/api/openrag",
33
32
  external: false
34
33
  }, {
35
34
  id: "google",
@@ -87,8 +86,9 @@ var styles = {
87
86
  "grid-container": "styles__grid-container___3wOus",
88
87
  "grid-container--mobile": "styles__grid-container--mobile___uCAg1",
89
88
  "model-card": "styles__model-card___fbAqF",
90
- "selected": "styles__selected___2KyhU",
91
- "openrag": "styles__openrag___3wGb4",
89
+ "model-card--selected": "styles__model-card--selected___3hKq3",
90
+ "model-card--openrag--light": "styles__model-card--openrag--light___1vabR",
91
+ "model-card--openrag--dark": "styles__model-card--openrag--dark___1x0sK",
92
92
  "icon-container": "styles__icon-container___1vaTp",
93
93
  "icon-container--google": "styles__icon-container--google___3gtC7",
94
94
  "icon-container--custom": "styles__icon-container--custom___1_EFK",
@@ -1 +1 @@
1
- export function getSelectedProviderByModel(modelName: string): object;
1
+ export function getSelectedProviderById(providerId: string): object;
@@ -5,7 +5,7 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau
5
5
  Object.defineProperty(exports, "__esModule", {
6
6
  value: true
7
7
  });
8
- exports.getSelectedProviderByModel = void 0;
8
+ exports.getSelectedProviderById = void 0;
9
9
 
10
10
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
11
11
 
@@ -15,11 +15,10 @@ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { va
15
15
 
16
16
  var providers = [{
17
17
  id: "openrag",
18
- name: "LINAGORA",
18
+ name: "Twake",
19
19
  models: ["openrag"],
20
20
  description: "assistant_create.steps.provider_selection.openrag.description",
21
21
  icon: "OpenRagLogo",
22
- baseUrl: "/api/openrag",
23
22
  external: false
24
23
  }, {
25
24
  id: "google",
@@ -71,20 +70,16 @@ var providers = [{
71
70
  /**
72
71
  * Get the provider corresponding to a given model name.
73
72
  * If no provider matches, return the custom provider.
74
- * @param {string} modelName - The name of the model.
73
+ * @param {string} providerId - The ID of the provider.
75
74
  * @returns {object} The provider object.
76
75
  */
77
76
 
78
- var getSelectedProviderByModel = function getSelectedProviderByModel(modelName) {
77
+ var getSelectedProviderById = function getSelectedProviderById(providerId) {
79
78
  return providers.find(function (provider) {
80
- var _provider$models;
81
-
82
- return (_provider$models = provider.models) === null || _provider$models === void 0 ? void 0 : _provider$models.includes(modelName);
83
- }) || _objectSpread(_objectSpread({}, providers.find(function (provider) {
79
+ return provider.id === providerId;
80
+ }) || _objectSpread({}, providers.find(function (provider) {
84
81
  return provider.id === 'custom';
85
- })), {}, {
86
- name: modelName
87
- });
82
+ }));
88
83
  };
89
84
 
90
- exports.getSelectedProviderByModel = getSelectedProviderByModel;
85
+ exports.getSelectedProviderById = getSelectedProviderById;
@@ -1,11 +1,10 @@
1
1
  [
2
2
  {
3
3
  "id": "openrag",
4
- "name": "LINAGORA",
4
+ "name": "Twake",
5
5
  "models": ["openrag"],
6
6
  "description": "assistant_create.steps.provider_selection.openrag.description",
7
7
  "icon": "OpenRagLogo",
8
- "baseUrl": "/api/openrag",
9
8
  "external": false
10
9
  },
11
10
  {
@@ -28,11 +28,15 @@
28
28
  text-align left
29
29
  background inherit
30
30
 
31
- &.selected
31
+ &--selected
32
32
  border 1px solid var(--primaryColor)
33
33
 
34
- &.openrag
35
- background linear-gradient(90deg, #EFF6FF 0%, #FAF5FF 100%)
34
+ &--openrag
35
+ &--light
36
+ background linear-gradient(90deg, #EFF6FF 0%, #FAF5FF 100%)
37
+
38
+ &--dark
39
+ background linear-gradient(90deg, #3A2899 0%, #0C091B 100%)
36
40
 
37
41
  & .icon-container
38
42
  width 53px
@@ -23,7 +23,6 @@ export function useAssistantDialog({ onClose, initialData }: {
23
23
  model: string;
24
24
  baseUrl: string;
25
25
  apiKey: string;
26
- isCustomModel: boolean;
27
26
  };
28
27
  setFormData: import("react").Dispatch<import("react").SetStateAction<{
29
28
  constructor: Function;
@@ -39,7 +38,6 @@ export function useAssistantDialog({ onClose, initialData }: {
39
38
  model: string;
40
39
  baseUrl: string;
41
40
  apiKey: string;
42
- isCustomModel: boolean;
43
41
  }>>;
44
42
  selectedProvider: any;
45
43
  setSelectedProvider: import("react").Dispatch<any>;
@@ -50,4 +48,5 @@ export function useAssistantDialog({ onClose, initialData }: {
50
48
  handleNext: (onSubmit: Function) => Promise<void>;
51
49
  isNextDisabled: (isAllowToSkipApiKey: any) => boolean;
52
50
  handleChangeModel: (value: any) => void;
51
+ canSubmit: boolean;
53
52
  };
@@ -17,16 +17,21 @@ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/sli
17
17
 
18
18
  var _react = require("react");
19
19
 
20
+ var _cozyMinilog = _interopRequireDefault(require("cozy-minilog"));
21
+
20
22
  var _Alert = require("cozy-ui/transpiled/react/providers/Alert");
21
23
 
22
24
  var _twakeI18n = require("twake-i18n");
23
25
 
24
26
  var _locales = require("../../locales");
25
27
 
28
+ var _constants = require("../constants");
29
+
26
30
  function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
27
31
 
28
32
  function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
29
33
 
34
+ var log = (0, _cozyMinilog.default)('[AssistantDialog]');
30
35
  var STEPS = {
31
36
  BASIC_INFO: 0,
32
37
  MODEL_SELECTION: 1,
@@ -69,13 +74,16 @@ var useAssistantDialog = function useAssistantDialog(_ref) {
69
74
  icon: null,
70
75
  model: '',
71
76
  baseUrl: '',
72
- apiKey: '',
73
- isCustomModel: false
77
+ apiKey: ''
74
78
  }, initialData)),
75
79
  _useState6 = (0, _slicedToArray2.default)(_useState5, 2),
76
80
  formData = _useState6[0],
77
81
  setFormData = _useState6[1];
78
82
 
83
+ var canSubmit = (0, _react.useMemo)(function () {
84
+ return step === STEPS.API_KEY || step === STEPS.MODEL_SELECTION && (selectedProvider === null || selectedProvider === void 0 ? void 0 : selectedProvider.id) === _constants.OPENRAG_MODEL;
85
+ }, [step, selectedProvider === null || selectedProvider === void 0 ? void 0 : selectedProvider.id]);
86
+
79
87
  var handleChange = function handleChange(field) {
80
88
  return function (event) {
81
89
  var _event$target;
@@ -109,10 +117,16 @@ var useAssistantDialog = function useAssistantDialog(_ref) {
109
117
  };
110
118
 
111
119
  var handleProviderSelection = function handleProviderSelection(provider) {
120
+ var isOpenrag = provider.id === _constants.OPENRAG_MODEL;
112
121
  setFormData(function (prev) {
122
+ var _provider$baseUrl;
123
+
113
124
  return _objectSpread(_objectSpread({}, prev), {}, {
114
- baseUrl: provider.baseUrl,
115
- isCustomModel: provider.id === 'custom'
125
+ baseUrl: (_provider$baseUrl = provider.baseUrl) !== null && _provider$baseUrl !== void 0 ? _provider$baseUrl : '',
126
+ model: isOpenrag ? provider.models[0] : '',
127
+ apiKey: '',
128
+ encryptedApiKey: '',
129
+ providerId: provider.id
116
130
  });
117
131
  });
118
132
  setSelectedProvider(_objectSpread(_objectSpread({}, provider), {}, {
@@ -143,7 +157,7 @@ var useAssistantDialog = function useAssistantDialog(_ref) {
143
157
  case 0:
144
158
  _context.prev = 0;
145
159
 
146
- if (!(step === STEPS.API_KEY)) {
160
+ if (!canSubmit) {
147
161
  _context.next = 7;
148
162
  break;
149
163
  }
@@ -162,18 +176,19 @@ var useAssistantDialog = function useAssistantDialog(_ref) {
162
176
  });
163
177
 
164
178
  case 8:
165
- _context.next = 13;
179
+ _context.next = 14;
166
180
  break;
167
181
 
168
182
  case 10:
169
183
  _context.prev = 10;
170
184
  _context.t0 = _context["catch"](0);
185
+ log.error('Error in handleNext:', _context.t0);
171
186
  showAlert({
172
187
  message: t('assistant.default_error'),
173
188
  severity: 'error'
174
189
  });
175
190
 
176
- case 13:
191
+ case 14:
177
192
  case "end":
178
193
  return _context.stop();
179
194
  }
@@ -217,7 +232,8 @@ var useAssistantDialog = function useAssistantDialog(_ref) {
217
232
  handleBack: handleBack,
218
233
  handleNext: handleNext,
219
234
  isNextDisabled: isNextDisabled,
220
- handleChangeModel: handleChangeModel
235
+ handleChangeModel: handleChangeModel,
236
+ canSubmit: canSubmit
221
237
  };
222
238
  };
223
239
 
@@ -37,6 +37,8 @@ var _locales = require("../../locales");
37
37
 
38
38
  var _AssistantDialogContent = _interopRequireDefault(require("../CreateAssistantSteps/AssistantDialogContent"));
39
39
 
40
+ var _helpers = require("../CreateAssistantSteps/helpers");
41
+
40
42
  var _useAssistantDialog2 = require("../CreateAssistantSteps/useAssistantDialog");
41
43
 
42
44
  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); }
@@ -52,8 +54,9 @@ var styles = {
52
54
  "grid-container": "styles__grid-container___3wOus",
53
55
  "grid-container--mobile": "styles__grid-container--mobile___uCAg1",
54
56
  "model-card": "styles__model-card___fbAqF",
55
- "selected": "styles__selected___2KyhU",
56
- "openrag": "styles__openrag___3wGb4",
57
+ "model-card--selected": "styles__model-card--selected___3hKq3",
58
+ "model-card--openrag--light": "styles__model-card--openrag--light___1vabR",
59
+ "model-card--openrag--dark": "styles__model-card--openrag--dark___1x0sK",
57
60
  "icon-container": "styles__icon-container___1vaTp",
58
61
  "icon-container--google": "styles__icon-container--google___3gtC7",
59
62
  "icon-container--custom": "styles__icon-container--custom___1_EFK",
@@ -62,6 +65,7 @@ var styles = {
62
65
  "CreateAssistantDialog": "styles__CreateAssistantDialog___1dSe_",
63
66
  "close-button": "styles__close-button___3jc_w"
64
67
  };
68
+ var defaultProvider = (0, _helpers.getSelectedProviderById)('openrag');
65
69
 
66
70
  var CreateAssistantDialog = function CreateAssistantDialog(_ref) {
67
71
  var open = _ref.open,
@@ -80,11 +84,16 @@ var CreateAssistantDialog = function CreateAssistantDialog(_ref) {
80
84
  isMobile = _useBreakpoints.isMobile;
81
85
 
82
86
  var _useAssistantDialog = (0, _useAssistantDialog2.useAssistantDialog)({
83
- onClose: onClose
87
+ onClose: onClose,
88
+ initialData: {
89
+ selectedProvider: defaultProvider,
90
+ model: defaultProvider.models[0]
91
+ }
84
92
  }),
85
93
  step = _useAssistantDialog.step,
86
94
  formData = _useAssistantDialog.formData,
87
95
  selectedProvider = _useAssistantDialog.selectedProvider,
96
+ canSubmit = _useAssistantDialog.canSubmit,
88
97
  handleBack = _useAssistantDialog.handleBack,
89
98
  handleNext = _useAssistantDialog.handleNext,
90
99
  handleChange = _useAssistantDialog.handleChange,
@@ -115,7 +124,7 @@ var CreateAssistantDialog = function CreateAssistantDialog(_ref) {
115
124
  model: formData.model,
116
125
  apiKey: formData.apiKey,
117
126
  baseUrl: formData.baseUrl,
118
- isCustomModel: formData.isCustomModel
127
+ providerId: selectedProvider.id
119
128
  });
120
129
 
121
130
  case 2:
@@ -169,7 +178,7 @@ var CreateAssistantDialog = function CreateAssistantDialog(_ref) {
169
178
  return handleNext(onSubmit);
170
179
  },
171
180
  disabled: isNextDisabled(),
172
- label: step === _useAssistantDialog2.STEPS.API_KEY ? t('assistant_create.buttons.create') : t('assistant_create.buttons.next')
181
+ label: canSubmit ? t('assistant_create.buttons.create') : t('assistant_create.buttons.next')
173
182
  })));
174
183
  };
175
184
 
@@ -52,8 +52,9 @@ var styles = {
52
52
  "grid-container": "styles__grid-container___3wOus",
53
53
  "grid-container--mobile": "styles__grid-container--mobile___uCAg1",
54
54
  "model-card": "styles__model-card___fbAqF",
55
- "selected": "styles__selected___2KyhU",
56
- "openrag": "styles__openrag___3wGb4",
55
+ "model-card--selected": "styles__model-card--selected___3hKq3",
56
+ "model-card--openrag--light": "styles__model-card--openrag--light___1vabR",
57
+ "model-card--openrag--dark": "styles__model-card--openrag--dark___1x0sK",
57
58
  "icon-container": "styles__icon-container___1vaTp",
58
59
  "icon-container--google": "styles__icon-container--google___3gtC7",
59
60
  "icon-container--custom": "styles__icon-container--custom___1_EFK",
@@ -62,8 +62,9 @@ var styles = {
62
62
  "grid-container": "styles__grid-container___3wOus",
63
63
  "grid-container--mobile": "styles__grid-container--mobile___uCAg1",
64
64
  "model-card": "styles__model-card___fbAqF",
65
- "selected": "styles__selected___2KyhU",
66
- "openrag": "styles__openrag___3wGb4",
65
+ "model-card--selected": "styles__model-card--selected___3hKq3",
66
+ "model-card--openrag--light": "styles__model-card--openrag--light___1vabR",
67
+ "model-card--openrag--dark": "styles__model-card--openrag--dark___1x0sK",
67
68
  "icon-container": "styles__icon-container___1vaTp",
68
69
  "icon-container--google": "styles__icon-container--google___3gtC7",
69
70
  "icon-container--custom": "styles__icon-container--custom___1_EFK",
@@ -98,6 +99,7 @@ var EditAssistantDialog = function EditAssistantDialog(_ref) {
98
99
  step = _useAssistantDialog.step,
99
100
  formData = _useAssistantDialog.formData,
100
101
  selectedProvider = _useAssistantDialog.selectedProvider,
102
+ canSubmit = _useAssistantDialog.canSubmit,
101
103
  setFormData = _useAssistantDialog.setFormData,
102
104
  setSelectedProvider = _useAssistantDialog.setSelectedProvider,
103
105
  handleBack = _useAssistantDialog.handleBack,
@@ -113,9 +115,9 @@ var EditAssistantDialog = function EditAssistantDialog(_ref) {
113
115
 
114
116
  var fetchAssistant = /*#__PURE__*/function () {
115
117
  var _ref2 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee() {
116
- var _provider$auth, _provider$data, _provider$auth2, _provider$auth3, _provider$auth4, _provider$data2;
118
+ var _assistant$relationsh, _assistant$relationsh2, _assistant$relationsh3, _assistant$relationsh4, _provider$auth, _provider$data, _provider$auth2, _provider$auth3, _provider$auth4, _provider$data2, _provider$auth5;
117
119
 
118
- var response, assistant, provider, selectProviderDefault;
120
+ var response, assistant, provider, providerId, selectProviderDefault;
119
121
  return _regenerator.default.wrap(function _callee$(_context) {
120
122
  while (1) {
121
123
  switch (_context.prev = _context.next) {
@@ -127,22 +129,25 @@ var EditAssistantDialog = function EditAssistantDialog(_ref) {
127
129
  response = _context.sent;
128
130
  assistant = response.data;
129
131
  provider = response.included[0];
132
+ providerId = assistant === null || assistant === void 0 ? void 0 : (_assistant$relationsh = assistant.relationships) === null || _assistant$relationsh === void 0 ? void 0 : (_assistant$relationsh2 = _assistant$relationsh.provider) === null || _assistant$relationsh2 === void 0 ? void 0 : (_assistant$relationsh3 = _assistant$relationsh2.data) === null || _assistant$relationsh3 === void 0 ? void 0 : (_assistant$relationsh4 = _assistant$relationsh3.metadata) === null || _assistant$relationsh4 === void 0 ? void 0 : _assistant$relationsh4.providerId;
130
133
  setFormData({
131
134
  name: assistant.name || '',
132
135
  description: assistant.prompt || '',
133
136
  icon: assistant.icon || '',
134
- isCustomModel: assistant.isCustomModel || false,
135
137
  model: (provider === null || provider === void 0 ? void 0 : (_provider$auth = provider.auth) === null || _provider$auth === void 0 ? void 0 : _provider$auth.login) || '',
136
138
  baseUrl: (provider === null || provider === void 0 ? void 0 : (_provider$data = provider.data) === null || _provider$data === void 0 ? void 0 : _provider$data.baseUrl) || '',
137
- apiKey: (provider === null || provider === void 0 ? void 0 : (_provider$auth2 = provider.auth) === null || _provider$auth2 === void 0 ? void 0 : _provider$auth2.apiKey) || ''
139
+ apiKey: (provider === null || provider === void 0 ? void 0 : (_provider$auth2 = provider.auth) === null || _provider$auth2 === void 0 ? void 0 : _provider$auth2.apiKey) || '',
140
+ encryptedApiKey: (provider === null || provider === void 0 ? void 0 : (_provider$auth3 = provider.auth) === null || _provider$auth3 === void 0 ? void 0 : _provider$auth3.credentials_encrypted) || '',
141
+ providerId: providerId
138
142
  });
139
- selectProviderDefault = (0, _helpers.getSelectedProviderByModel)(provider === null || provider === void 0 ? void 0 : (_provider$auth3 = provider.auth) === null || _provider$auth3 === void 0 ? void 0 : _provider$auth3.login);
143
+ selectProviderDefault = (0, _helpers.getSelectedProviderById)(providerId);
140
144
  setSelectedProvider(_objectSpread(_objectSpread({}, selectProviderDefault), {}, {
141
145
  model: provider === null || provider === void 0 ? void 0 : (_provider$auth4 = provider.auth) === null || _provider$auth4 === void 0 ? void 0 : _provider$auth4.login,
142
- baseUrl: provider === null || provider === void 0 ? void 0 : (_provider$data2 = provider.data) === null || _provider$data2 === void 0 ? void 0 : _provider$data2.baseUrl
146
+ baseUrl: provider === null || provider === void 0 ? void 0 : (_provider$data2 = provider.data) === null || _provider$data2 === void 0 ? void 0 : _provider$data2.baseUrl,
147
+ name: selectProviderDefault.id === 'custom' ? provider === null || provider === void 0 ? void 0 : (_provider$auth5 = provider.auth) === null || _provider$auth5 === void 0 ? void 0 : _provider$auth5.login : selectProviderDefault.name
143
148
  }));
144
149
 
145
- case 8:
150
+ case 9:
146
151
  case "end":
147
152
  return _context.stop();
148
153
  }
@@ -180,7 +185,7 @@ var EditAssistantDialog = function EditAssistantDialog(_ref) {
180
185
  model: formData.model,
181
186
  apiKey: formData.apiKey,
182
187
  baseUrl: formData.baseUrl,
183
- isCustomModel: formData.isCustomModel
188
+ providerId: selectedProvider.id
184
189
  });
185
190
 
186
191
  case 2:
@@ -233,8 +238,8 @@ var EditAssistantDialog = function EditAssistantDialog(_ref) {
233
238
  onClick: function onClick() {
234
239
  return handleNext(onSubmit);
235
240
  },
236
- disabled: isNextDisabled(true),
237
- label: step === _useAssistantDialog2.STEPS.API_KEY ? t('assistant_edit.buttons.edit') : t('assistant_edit.buttons.next')
241
+ disabled: isNextDisabled(!!formData.encryptedApiKey),
242
+ label: canSubmit ? t('assistant_edit.buttons.edit') : t('assistant_edit.buttons.next')
238
243
  })));
239
244
  };
240
245
 
@@ -3,3 +3,4 @@ export namespace DEFAULT_ASSISTANT {
3
3
  let name: string;
4
4
  }
5
5
  export const FETCH_CONVERSATIONS_LIMIT: 50;
6
+ export const OPENRAG_MODEL: "openrag";
@@ -3,11 +3,13 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.FETCH_CONVERSATIONS_LIMIT = exports.DEFAULT_ASSISTANT = void 0;
6
+ exports.OPENRAG_MODEL = exports.FETCH_CONVERSATIONS_LIMIT = exports.DEFAULT_ASSISTANT = void 0;
7
7
  var DEFAULT_ASSISTANT = {
8
8
  id: 'ai_assistant',
9
9
  name: 'AI Assistant'
10
10
  };
11
11
  exports.DEFAULT_ASSISTANT = DEFAULT_ASSISTANT;
12
12
  var FETCH_CONVERSATIONS_LIMIT = 50;
13
- exports.FETCH_CONVERSATIONS_LIMIT = FETCH_CONVERSATIONS_LIMIT;
13
+ exports.FETCH_CONVERSATIONS_LIMIT = FETCH_CONVERSATIONS_LIMIT;
14
+ var OPENRAG_MODEL = 'openrag';
15
+ exports.OPENRAG_MODEL = OPENRAG_MODEL;
@@ -108,7 +108,7 @@
108
108
  "description": "Choose the AI model that best matches your requirements.",
109
109
  "by": "by",
110
110
  "openrag": {
111
- "description": "Work with drive files, chat, email from your Twake Workplace"
111
+ "description": "The AI assistant integrated into Twake, letting you work on your data without ever letting it leave your Workplace"
112
112
  },
113
113
  "google": {
114
114
  "description": "Google's most capable model for text and multimodal tasks"
@@ -135,7 +135,8 @@
135
135
  "description": "Enter provider URL, model and your API key to configure the new assistant. Your key will be stored securely.",
136
136
  "custom_provider_description": "Configure your custom AI provider settings",
137
137
  "model": {
138
- "label": "Model"
138
+ "label": "Model",
139
+ "placeholder": "Enter the model name of the provider"
139
140
  },
140
141
  "provider": {
141
142
  "label": "Provider name",
@@ -108,7 +108,7 @@
108
108
  "description": "Choisissez le modèle d'IA qui correspond le mieux à vos besoins.",
109
109
  "by": "par",
110
110
  "openrag": {
111
- "description": "Travaillez avec des fichiers Drive, le chat et les emails depuis votre Twake Workplace"
111
+ "description": "L'assistant IA intégré à Twake, pour travailler sur vos données sans jamais les faire sortir de votre Workplace"
112
112
  },
113
113
  "google": {
114
114
  "description": "Le modèle le plus performant de Google pour les tâches textuelles et multimodales"
@@ -135,7 +135,8 @@
135
135
  "description": "Saisissez l'URL du fournisseur, le modèle et votre clé API pour configurer le nouvel assistant. Votre clé sera stockée de manière sécurisée.",
136
136
  "custom_provider_description": "Configurez les paramètres de votre fournisseur d'IA personnalisé",
137
137
  "model": {
138
- "label": "Modèle"
138
+ "label": "Modèle",
139
+ "placeholder": "Entrez le nom du modèle du fournisseur"
139
140
  },
140
141
  "provider": {
141
142
  "label": "Nom du fournisseur",
@@ -114,7 +114,7 @@ var en = {
114
114
  description: "Choose the AI model that best matches your requirements.",
115
115
  by: "by",
116
116
  openrag: {
117
- description: "Work with drive files, chat, email from your Twake Workplace"
117
+ description: "The AI assistant integrated into Twake, letting you work on your data without ever letting it leave your Workplace"
118
118
  },
119
119
  google: {
120
120
  description: "Google's most capable model for text and multimodal tasks"
@@ -141,7 +141,8 @@ var en = {
141
141
  description: "Enter provider URL, model and your API key to configure the new assistant. Your key will be stored securely.",
142
142
  custom_provider_description: "Configure your custom AI provider settings",
143
143
  model: {
144
- label: "Model"
144
+ label: "Model",
145
+ placeholder: "Enter the model name of the provider"
145
146
  },
146
147
  provider: {
147
148
  label: "Provider name",
@@ -305,7 +306,7 @@ var fr = {
305
306
  description: "Choisissez le mod\xE8le d'IA qui correspond le mieux \xE0 vos besoins.",
306
307
  by: "par",
307
308
  openrag: {
308
- description: "Travaillez avec des fichiers Drive, le chat et les emails depuis votre Twake Workplace"
309
+ description: "L'assistant IA int\xE9gr\xE9 \xE0 Twake, pour travailler sur vos donn\xE9es sans jamais les faire sortir de votre Workplace"
309
310
  },
310
311
  google: {
311
312
  description: "Le mod\xE8le le plus performant de Google pour les t\xE2ches textuelles et multimodales"
@@ -332,7 +333,8 @@ var fr = {
332
333
  description: "Saisissez l'URL du fournisseur, le mod\xE8le et votre cl\xE9 API pour configurer le nouvel assistant. Votre cl\xE9 sera stock\xE9e de mani\xE8re s\xE9curis\xE9e.",
333
334
  custom_provider_description: "Configurez les param\xE8tres de votre fournisseur d'IA personnalis\xE9",
334
335
  model: {
335
- label: "Mod\xE8le"
336
+ label: "Mod\xE8le",
337
+ placeholder: "Entrez le nom du mod\xE8le du fournisseur"
336
338
  },
337
339
  provider: {
338
340
  label: "Nom du fournisseur",
@@ -496,7 +498,7 @@ var ru = {
496
498
  description: "\u0412\u044B\u0431\u0435\u0440\u0438\u0442\u0435 \u043C\u043E\u0434\u0435\u043B\u044C \u0418\u0418, \u043A\u043E\u0442\u043E\u0440\u0430\u044F \u043B\u0443\u0447\u0448\u0435 \u0432\u0441\u0435\u0433\u043E \u0441\u043E\u043E\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0443\u0435\u0442 \u0432\u0430\u0448\u0438\u043C \u0442\u0440\u0435\u0431\u043E\u0432\u0430\u043D\u0438\u044F\u043C.",
497
499
  by: "\u043E\u0442",
498
500
  openrag: {
499
- description: "\u0420\u0430\u0431\u043E\u0442\u0430\u0439\u0442\u0435 \u0441 \u0444\u0430\u0439\u043B\u0430\u043C\u0438 Drive, \u0447\u0430\u0442\u043E\u043C \u0438 \u044D\u043B\u0435\u043A\u0442\u0440\u043E\u043D\u043D\u043E\u0439 \u043F\u043E\u0447\u0442\u043E\u0439 \u0438\u0437 \u0432\u0430\u0448\u0435\u0433\u043E Twake Workplace"
501
+ description: "\u0418\u0418-\u0430\u0441\u0441\u0438\u0441\u0442\u0435\u043D\u0442, \u0438\u043D\u0442\u0435\u0433\u0440\u0438\u0440\u043E\u0432\u0430\u043D\u043D\u044B\u0439 \u0432 Twake, \u043F\u043E\u0437\u0432\u043E\u043B\u044F\u0435\u0442 \u0432\u0430\u043C \u0440\u0430\u0431\u043E\u0442\u0430\u0442\u044C \u0441\u043E \u0441\u0432\u043E\u0438\u043C\u0438 \u0434\u0430\u043D\u043D\u044B\u043C\u0438, \u0433\u0430\u0440\u0430\u043D\u0442\u0438\u0440\u0443\u044F, \u0447\u0442\u043E \u043E\u043D\u0438 \u043D\u0438\u043A\u043E\u0433\u0434\u0430 \u043D\u0435 \u043F\u043E\u043A\u0438\u043D\u0443\u0442 \u043F\u0440\u0435\u0434\u0435\u043B\u044B \u0432\u0430\u0448\u0435\u0433\u043E \u0440\u0430\u0431\u043E\u0447\u0435\u0433\u043E \u043F\u0440\u043E\u0441\u0442\u0440\u0430\u043D\u0441\u0442\u0432\u0430"
500
502
  },
501
503
  google: {
502
504
  description: "\u0421\u0430\u043C\u0430\u044F \u043C\u043E\u0449\u043D\u0430\u044F \u043C\u043E\u0434\u0435\u043B\u044C Google \u0434\u043B\u044F \u0442\u0435\u043A\u0441\u0442\u043E\u0432\u044B\u0445 \u0438 \u043C\u0443\u043B\u044C\u0442\u0438\u043C\u043E\u0434\u0430\u043B\u044C\u043D\u044B\u0445 \u0437\u0430\u0434\u0430\u0447"
@@ -523,7 +525,8 @@ var ru = {
523
525
  description: "\u0412\u0432\u0435\u0434\u0438\u0442\u0435 URL \u043F\u0440\u043E\u0432\u0430\u0439\u0434\u0435\u0440\u0430, \u043C\u043E\u0434\u0435\u043B\u044C \u0438 \u0432\u0430\u0448 API\u2011\u043A\u043B\u044E\u0447 \u0434\u043B\u044F \u043D\u0430\u0441\u0442\u0440\u043E\u0439\u043A\u0438 \u043D\u043E\u0432\u043E\u0433\u043E \u0430\u0441\u0441\u0438\u0441\u0442\u0435\u043D\u0442\u0430. \u0412\u0430\u0448 \u043A\u043B\u044E\u0447 \u0431\u0443\u0434\u0435\u0442 \u043D\u0430\u0434\u0435\u0436\u043D\u043E \u0441\u043E\u0445\u0440\u0430\u043D\u0435\u043D.",
524
526
  custom_provider_description: "\u041D\u0430\u0441\u0442\u0440\u043E\u0439\u0442\u0435 \u043F\u0430\u0440\u0430\u043C\u0435\u0442\u0440\u044B \u0432\u0430\u0448\u0435\u0433\u043E \u0441\u043E\u0431\u0441\u0442\u0432\u0435\u043D\u043D\u043E\u0433\u043E \u043F\u0440\u043E\u0432\u0430\u0439\u0434\u0435\u0440\u0430 \u0418\u0418",
525
527
  model: {
526
- label: "\u041C\u043E\u0434\u0435\u043B\u044C"
528
+ label: "\u041C\u043E\u0434\u0435\u043B\u044C",
529
+ placeholder: "\u0412\u0432\u0435\u0434\u0438\u0442\u0435 \u043D\u0430\u0437\u0432\u0430\u043D\u0438\u0435 \u043C\u043E\u0434\u0435\u043B\u0438 \u043F\u0440\u043E\u0432\u0430\u0439\u0434\u0435\u0440\u0430"
527
530
  },
528
531
  provider: {
529
532
  label: "\u041D\u0430\u0437\u0432\u0430\u043D\u0438\u0435 \u043F\u0440\u043E\u0432\u0430\u0439\u0434\u0435\u0440\u0430",
@@ -687,7 +690,7 @@ var vi = {
687
690
  description: "Ch\u1ECDn m\xF4 h\xECnh AI ph\xF9 h\u1EE3p nh\u1EA5t v\u1EDBi y\xEAu c\u1EA7u c\u1EE7a b\u1EA1n.",
688
691
  by: "b\u1EDFi",
689
692
  openrag: {
690
- description: "L\xE0m vi\u1EC7c v\u1EDBi t\u1EC7p tr\xEAn Drive, chat, email t\u1EEB Twake Workplace c\u1EE7a b\u1EA1n"
693
+ description: "Tr\u1EE3 l\xFD AI \u0111\u01B0\u1EE3c t\xEDch h\u1EE3p v\xE0o Twake, cho ph\xE9p b\u1EA1n x\u1EED l\xFD d\u1EEF li\u1EC7u c\u1EE7a m\xECnh m\xE0 kh\xF4ng bao gi\u1EDD ph\u1EA3i \u0111\u01B0a d\u1EEF li\u1EC7u ra kh\u1ECFi Kh\xF4ng gian l\xE0m vi\u1EC7c c\u1EE7a b\u1EA1n"
691
694
  },
692
695
  google: {
693
696
  description: "M\xF4 h\xECnh m\u1EA1nh nh\u1EA5t c\u1EE7a Google cho t\xE1c v\u1EE5 v\u0103n b\u1EA3n v\xE0 \u0111a ph\u01B0\u01A1ng th\u1EE9c"
@@ -714,7 +717,8 @@ var vi = {
714
717
  description: "Nh\u1EADp URL nh\xE0 cung c\u1EA5p, m\xF4 h\xECnh v\xE0 kh\xF3a API c\u1EE7a b\u1EA1n \u0111\u1EC3 \u0111\u1ECBnh c\u1EA5u h\xECnh tr\u1EE3 l\xFD m\u1EDBi. Kh\xF3a c\u1EE7a b\u1EA1n s\u1EBD \u0111\u01B0\u1EE3c l\u01B0u tr\u1EEF an to\xE0n.",
715
718
  custom_provider_description: "C\u1EA5u h\xECnh c\xE0i \u0111\u1EB7t nh\xE0 cung c\u1EA5p AI t\xF9y ch\u1EC9nh",
716
719
  model: {
717
- label: "M\xF4 h\xECnh"
720
+ label: "M\xF4 h\xECnh",
721
+ placeholder: "Nh\u1EADp t\xEAn m\xF4 h\xECnh c\u1EE7a nh\xE0 cung c\u1EA5p"
718
722
  },
719
723
  provider: {
720
724
  label: "T\xEAn nh\xE0 cung c\u1EA5p",
@@ -108,7 +108,7 @@
108
108
  "description": "Выберите модель ИИ, которая лучше всего соответствует вашим требованиям.",
109
109
  "by": "от",
110
110
  "openrag": {
111
- "description": "Работайте с файлами Drive, чатом и электронной почтой из вашего Twake Workplace"
111
+ "description": "ИИ-ассистент, интегрированный в Twake, позволяет вам работать со своими данными, гарантируя, что они никогда не покинут пределы вашего рабочего пространства"
112
112
  },
113
113
  "google": {
114
114
  "description": "Самая мощная модель Google для текстовых и мультимодальных задач"
@@ -135,7 +135,8 @@
135
135
  "description": "Введите URL провайдера, модель и ваш API‑ключ для настройки нового ассистента. Ваш ключ будет надежно сохранен.",
136
136
  "custom_provider_description": "Настройте параметры вашего собственного провайдера ИИ",
137
137
  "model": {
138
- "label": "Модель"
138
+ "label": "Модель",
139
+ "placeholder": "Введите название модели провайдера"
139
140
  },
140
141
  "provider": {
141
142
  "label": "Название провайдера",
@@ -108,7 +108,7 @@
108
108
  "description": "Chọn mô hình AI phù hợp nhất với yêu cầu của bạn.",
109
109
  "by": "bởi",
110
110
  "openrag": {
111
- "description": "Làm việc với tệp trên Drive, chat, email từ Twake Workplace của bạn"
111
+ "description": "Trợ lý AI được tích hợp vào Twake, cho phép bạn xử lý dữ liệu của mình mà không bao giờ phải đưa dữ liệu ra khỏi Không gian làm việc của bạn"
112
112
  },
113
113
  "google": {
114
114
  "description": "Mô hình mạnh nhất của Google cho tác vụ văn bản và đa phương thức"
@@ -135,7 +135,8 @@
135
135
  "description": "Nhập URL nhà cung cấp, mô hình và khóa API của bạn để định cấu hình trợ lý mới. Khóa của bạn sẽ được lưu trữ an toàn.",
136
136
  "custom_provider_description": "Cấu hình cài đặt nhà cung cấp AI tùy chỉnh",
137
137
  "model": {
138
- "label": "Mô hình"
138
+ "label": "Mô hình",
139
+ "placeholder": "Nhập tên mô hình của nhà cung cấp"
139
140
  },
140
141
  "provider": {
141
142
  "label": "Tên nhà cung cấp",
@@ -221,12 +221,15 @@
221
221
  text-align: left;
222
222
  background: inherit;
223
223
  }
224
- .styles__ModelSelectionStep___1auXB .styles__model-card___fbAqF.styles__selected___2KyhU {
224
+ .styles__ModelSelectionStep___1auXB .styles__model-card--selected___3hKq3 {
225
225
  border: 1px solid var(--primaryColor);
226
226
  }
227
- .styles__ModelSelectionStep___1auXB .styles__model-card___fbAqF.styles__openrag___3wGb4 {
227
+ .styles__ModelSelectionStep___1auXB .styles__model-card--openrag--light___1vabR {
228
228
  background: linear-gradient(90deg, #eff6ff 0%, #faf5ff 100%);
229
229
  }
230
+ .styles__ModelSelectionStep___1auXB .styles__model-card--openrag--dark___1x0sK {
231
+ background: linear-gradient(90deg, #3a2899 0%, #0c091b 100%);
232
+ }
230
233
  .styles__ModelSelectionStep___1auXB .styles__icon-container___1vaTp {
231
234
  width: 53px;
232
235
  height: 53px;
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "cozy-search",
3
3
  "description": "UI components about search bar and IA assistant",
4
- "version": "0.19.2",
4
+ "version": "0.20.0",
5
5
  "author": {
6
6
  "name": "Cozy Cloud",
7
7
  "url": "https://github.com/cozy"
@@ -27,7 +27,7 @@
27
27
  "babel-plugin-tsconfig-paths": "^1.0.3",
28
28
  "babel-preset-cozy-app": "^2.8.4",
29
29
  "cozy-bar": "^29.0.0",
30
- "cozy-client": "^60.21.0",
30
+ "cozy-client": "60.23.0",
31
31
  "cozy-device-helper": "^4.0.3",
32
32
  "cozy-flags": "^4.9.1",
33
33
  "cozy-intent": "^2.31.1",
@@ -94,5 +94,5 @@
94
94
  "lint": "cd .. && yarn eslint --ext js,jsx,ts packages/cozy-search"
95
95
  },
96
96
  "types": "dist/index.d.ts",
97
- "gitHead": "661b14497f4331618699916112fbdb1d5ed2d606"
97
+ "gitHead": "c999ba85348597a89f8b9f35dde2e8c529da0ee7"
98
98
  }