cozy-search 0.15.1 → 0.16.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.
Files changed (52) hide show
  1. package/dist/assets/anthropic.svg +7 -0
  2. package/dist/assets/gemini.svg +109 -0
  3. package/dist/assets/meta.svg +22 -0
  4. package/dist/assets/mistral.svg +19 -0
  5. package/dist/assets/open_ai.svg +10 -0
  6. package/dist/assets/openrag.png +0 -0
  7. package/dist/components/AssistantProvider.js +39 -2
  8. package/dist/components/Conversations/AssistantAvatar.d.ts +4 -0
  9. package/dist/components/Conversations/AssistantAvatar.js +67 -0
  10. package/dist/components/Conversations/AssistantSelection.d.ts +4 -0
  11. package/dist/components/Conversations/AssistantSelection.js +164 -0
  12. package/dist/components/Conversations/AssistantSelectionItem.d.ts +11 -0
  13. package/dist/components/Conversations/AssistantSelectionItem.js +119 -0
  14. package/dist/components/Conversations/ConversationBar.js +21 -1
  15. package/dist/components/Conversations/styles.styl +88 -0
  16. package/dist/components/CreateAssistantSteps/ApiKeyStep.d.ts +7 -0
  17. package/dist/components/CreateAssistantSteps/ApiKeyStep.js +151 -0
  18. package/dist/components/CreateAssistantSteps/AssistantDialogContent.d.ts +10 -0
  19. package/dist/components/CreateAssistantSteps/AssistantDialogContent.js +59 -0
  20. package/dist/components/CreateAssistantSteps/BasicInfoStep.d.ts +8 -0
  21. package/dist/components/CreateAssistantSteps/BasicInfoStep.js +136 -0
  22. package/dist/components/CreateAssistantSteps/Provider.d.ts +6 -0
  23. package/dist/components/CreateAssistantSteps/Provider.js +517 -0
  24. package/dist/components/CreateAssistantSteps/ProviderSelectionStep.d.ts +5 -0
  25. package/dist/components/CreateAssistantSteps/ProviderSelectionStep.js +122 -0
  26. package/dist/components/CreateAssistantSteps/helpers.d.ts +1 -0
  27. package/dist/components/CreateAssistantSteps/helpers.js +90 -0
  28. package/dist/components/CreateAssistantSteps/providers.json +63 -0
  29. package/dist/components/CreateAssistantSteps/styles.styl +62 -0
  30. package/dist/components/CreateAssistantSteps/useAssistantDialog.d.ts +53 -0
  31. package/dist/components/CreateAssistantSteps/useAssistantDialog.js +224 -0
  32. package/dist/components/Search/SearchBarMobile.js +21 -1
  33. package/dist/components/Views/AssistantDialog.js +38 -3
  34. package/dist/components/Views/CreateAssistantDialog.d.ts +5 -0
  35. package/dist/components/Views/CreateAssistantDialog.js +170 -0
  36. package/dist/components/Views/DeleteAssistantDialog.d.ts +5 -0
  37. package/dist/components/Views/DeleteAssistantDialog.js +176 -0
  38. package/dist/components/Views/EditAssistantDialog.d.ts +5 -0
  39. package/dist/components/Views/EditAssistantDialog.js +235 -0
  40. package/dist/components/constants.d.ts +4 -0
  41. package/dist/components/constants.js +11 -0
  42. package/dist/components/queries.d.ts +16 -0
  43. package/dist/components/queries.js +34 -2
  44. package/dist/index.d.ts +1 -0
  45. package/dist/index.js +8 -0
  46. package/dist/locales/en.json +103 -0
  47. package/dist/locales/fr.json +103 -0
  48. package/dist/locales/index.js +412 -0
  49. package/dist/locales/ru.json +104 -1
  50. package/dist/locales/vi.json +104 -1
  51. package/dist/stylesheet.css +147 -0
  52. package/package.json +6 -6
@@ -0,0 +1,90 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.getSelectedProviderByModel = void 0;
9
+
10
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
11
+
12
+ 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; }
13
+
14
+ 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; }
15
+
16
+ var providers = [{
17
+ id: "openrag",
18
+ name: "LINAGORA",
19
+ models: ["openrag"],
20
+ description: "assistant_create.steps.provider_selection.openrag.description",
21
+ icon: "OpenRagLogo",
22
+ baseUrl: "/api/openrag",
23
+ external: false
24
+ }, {
25
+ id: "google",
26
+ name: "Google",
27
+ models: ["gemini-3-pro", "gemini-3-pro-001", "gemini-3-flash", "gemini-2.5-pro", "gemini-2.5-flash", "gemini-nano-banana-pro"],
28
+ description: "assistant_create.steps.provider_selection.google.description",
29
+ icon: "GeminiLogo",
30
+ baseUrl: "https://generativelanguage.googleapis.com/v1beta",
31
+ external: true
32
+ }, {
33
+ id: "openai",
34
+ name: "OpenAI",
35
+ models: ["gpt-5.1", "gpt-5-2025-11-14", "o3", "o4-mini", "gpt-5-mini", "gpt-4.1-mini", "sora-v2"],
36
+ description: "assistant_create.steps.provider_selection.openai.description",
37
+ icon: "OpenAILogo",
38
+ baseUrl: "https://api.openai.com/v1",
39
+ external: true
40
+ }, {
41
+ id: "mistral_ai",
42
+ name: "Mistral AI",
43
+ models: ["mistral-large-3", "mistral-large-2512", "mistral-medium-3.1", "ministral-3b", "ministral-8b", "ministral-14b", "codestral-2", "devstral-small-2", "pixtral-large-2502"],
44
+ description: "assistant_create.steps.provider_selection.mistral_ai.description",
45
+ icon: "MistralLogo",
46
+ baseUrl: "https://api.mistral.ai/v1",
47
+ external: true
48
+ }, {
49
+ id: "anthropic",
50
+ name: "Anthropic",
51
+ models: ["claude-4-5-opus-20251124", "claude-4-5-sonnet-20250929", "claude-4-5-haiku-20251015", "claude-3-7-sonnet-20250219"],
52
+ description: "assistant_create.steps.provider_selection.anthropic.description",
53
+ icon: "AnthropicLogo",
54
+ baseUrl: "https://api.anthropic.com/v1",
55
+ external: true
56
+ }, {
57
+ id: "custom",
58
+ name: "assistant_create.steps.provider_selection.custom.name",
59
+ description: "assistant_create.steps.provider_selection.custom.description",
60
+ icon: "PlusSmallIcon",
61
+ external: true
62
+ }, {
63
+ id: "meta",
64
+ name: "Meta",
65
+ models: ["meta-llama/Llama-4-Scout-17B-16E-Instruct", "meta-llama/Llama-4-Maverick-402B-Instruct", "meta-llama/Llama-3.3-70B-Instruct", "meta-llama/Llama-3.2-90B-Vision-Instruct"],
66
+ description: "assistant_create.steps.provider_selection.meta.description",
67
+ icon: "MetaLogo",
68
+ baseUrl: "https://api.llama.com/v1",
69
+ external: true
70
+ }];
71
+ /**
72
+ * Get the provider corresponding to a given model name.
73
+ * If no provider matches, return the custom provider.
74
+ * @param {string} modelName - The name of the model.
75
+ * @returns {object} The provider object.
76
+ */
77
+
78
+ var getSelectedProviderByModel = function getSelectedProviderByModel(modelName) {
79
+ 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) {
84
+ return provider.id === 'custom';
85
+ })), {}, {
86
+ name: modelName
87
+ });
88
+ };
89
+
90
+ exports.getSelectedProviderByModel = getSelectedProviderByModel;
@@ -0,0 +1,63 @@
1
+ [
2
+ {
3
+ "id": "openrag",
4
+ "name": "LINAGORA",
5
+ "models": ["openrag"],
6
+ "description": "assistant_create.steps.provider_selection.openrag.description",
7
+ "icon": "OpenRagLogo",
8
+ "baseUrl": "/api/openrag",
9
+ "external": false
10
+ },
11
+ {
12
+ "id": "google",
13
+ "name": "Google",
14
+ "models": ["gemini-3-pro", "gemini-3-pro-001", "gemini-3-flash", "gemini-2.5-pro", "gemini-2.5-flash", "gemini-nano-banana-pro"],
15
+ "description": "assistant_create.steps.provider_selection.google.description",
16
+ "icon": "GeminiLogo",
17
+ "baseUrl": "https://generativelanguage.googleapis.com/v1beta",
18
+ "external": true
19
+ },
20
+ {
21
+ "id": "openai",
22
+ "name": "OpenAI",
23
+ "models": ["gpt-5.1", "gpt-5-2025-11-14", "o3", "o4-mini", "gpt-5-mini", "gpt-4.1-mini", "sora-v2"],
24
+ "description": "assistant_create.steps.provider_selection.openai.description",
25
+ "icon": "OpenAILogo",
26
+ "baseUrl": "https://api.openai.com/v1",
27
+ "external": true
28
+ },
29
+ {
30
+ "id": "mistral_ai",
31
+ "name": "Mistral AI",
32
+ "models": ["mistral-large-3", "mistral-large-2512", "mistral-medium-3.1", "ministral-3b", "ministral-8b", "ministral-14b", "codestral-2", "devstral-small-2", "pixtral-large-2502"],
33
+ "description": "assistant_create.steps.provider_selection.mistral_ai.description",
34
+ "icon": "MistralLogo",
35
+ "baseUrl": "https://api.mistral.ai/v1",
36
+ "external": true
37
+ },
38
+ {
39
+ "id": "anthropic",
40
+ "name": "Anthropic",
41
+ "models": ["claude-4-5-opus-20251124", "claude-4-5-sonnet-20250929", "claude-4-5-haiku-20251015", "claude-3-7-sonnet-20250219"],
42
+ "description": "assistant_create.steps.provider_selection.anthropic.description",
43
+ "icon": "AnthropicLogo",
44
+ "baseUrl": "https://api.anthropic.com/v1",
45
+ "external": true
46
+ },
47
+ {
48
+ "id": "custom",
49
+ "name": "assistant_create.steps.provider_selection.custom.name",
50
+ "description": "assistant_create.steps.provider_selection.custom.description",
51
+ "icon": "PlusSmallIcon",
52
+ "external": true
53
+ },
54
+ {
55
+ "id": "meta",
56
+ "name": "Meta",
57
+ "models": ["meta-llama/Llama-4-Scout-17B-16E-Instruct", "meta-llama/Llama-4-Maverick-402B-Instruct", "meta-llama/Llama-3.3-70B-Instruct", "meta-llama/Llama-3.2-90B-Vision-Instruct"],
58
+ "description": "assistant_create.steps.provider_selection.meta.description",
59
+ "icon": "MetaLogo",
60
+ "baseUrl": "https://api.llama.com/v1",
61
+ "external": true
62
+ }
63
+ ]
@@ -0,0 +1,62 @@
1
+
2
+
3
+ .BasicInfoStep
4
+ & .avatar-container
5
+ border-radius 50%
6
+ border: 1px solid #E5E5E5
7
+
8
+ & .avatar-image
9
+ border-radius 50%
10
+
11
+ & .file-input
12
+ display none
13
+
14
+ .ModelSelectionStep
15
+ & .grid-container
16
+ display grid
17
+ grid-template-columns 1fr 1fr
18
+ gap 16px
19
+
20
+ & .model-card
21
+ border-radius 16px
22
+ border 1px solid #E5E5E5
23
+ position relative
24
+ transition border-color 0.2s ease
25
+ text-align left
26
+ background inherit
27
+
28
+ &.selected
29
+ border 1px solid var(--primaryColor)
30
+
31
+ &.openrag
32
+ background linear-gradient(90deg, #EFF6FF 0%, #FAF5FF 100%)
33
+
34
+ & .icon-container
35
+ width 53px
36
+ height 53px
37
+ border-radius 16px
38
+ background-size cover
39
+ background-position center
40
+
41
+ &--google
42
+ background-color #f0f4fa
43
+
44
+ &--custom
45
+ background-color #f5f5f5
46
+
47
+ &--openai
48
+ background-color #ffffff
49
+
50
+ & .check-icon
51
+ position absolute
52
+ top 16px
53
+ right 16px
54
+ border-radius 100%
55
+ background-color var(--successColor)
56
+ color var(--white)
57
+
58
+ .CreateAssistantDialog
59
+ & .close-button
60
+ position absolute
61
+ top 10px
62
+ right 10px
@@ -0,0 +1,53 @@
1
+ export namespace STEPS {
2
+ let BASIC_INFO: number;
3
+ let MODEL_SELECTION: number;
4
+ let API_KEY: number;
5
+ }
6
+ export function useAssistantDialog({ onClose, initialData }: {
7
+ onClose: Function;
8
+ initialData?: Object | undefined;
9
+ }): {
10
+ step: number;
11
+ setStep: import("react").Dispatch<import("react").SetStateAction<number>>;
12
+ formData: {
13
+ constructor: Function;
14
+ toString(): string;
15
+ toLocaleString(): string;
16
+ valueOf(): Object;
17
+ hasOwnProperty(v: PropertyKey): boolean;
18
+ isPrototypeOf(v: Object): boolean;
19
+ propertyIsEnumerable(v: PropertyKey): boolean;
20
+ name: string;
21
+ description: string;
22
+ icon: null;
23
+ model: string;
24
+ baseUrl: string;
25
+ apiKey: string;
26
+ isCustomModel: boolean;
27
+ };
28
+ setFormData: import("react").Dispatch<import("react").SetStateAction<{
29
+ constructor: Function;
30
+ toString(): string;
31
+ toLocaleString(): string;
32
+ valueOf(): Object;
33
+ hasOwnProperty(v: PropertyKey): boolean;
34
+ isPrototypeOf(v: Object): boolean;
35
+ propertyIsEnumerable(v: PropertyKey): boolean;
36
+ name: string;
37
+ description: string;
38
+ icon: null;
39
+ model: string;
40
+ baseUrl: string;
41
+ apiKey: string;
42
+ isCustomModel: boolean;
43
+ }>>;
44
+ selectedProvider: any;
45
+ setSelectedProvider: import("react").Dispatch<any>;
46
+ handleChange: (field: any) => (event: any) => void;
47
+ handleAvatarChange: (avatarData: any) => void;
48
+ handleProviderSelection: (provider: any) => void;
49
+ handleBack: () => void;
50
+ handleNext: (onSubmit: Function) => Promise<void>;
51
+ isNextDisabled: (isAllowToSkipApiKey: any) => boolean;
52
+ handleChangeModel: (value: any) => void;
53
+ };
@@ -0,0 +1,224 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.useAssistantDialog = exports.STEPS = void 0;
9
+
10
+ var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
11
+
12
+ var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
13
+
14
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
15
+
16
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
17
+
18
+ var _react = require("react");
19
+
20
+ var _twakeI18n = require("twake-i18n");
21
+
22
+ var _Alert = require("cozy-ui/transpiled/react/providers/Alert");
23
+
24
+ var _locales = require("../../locales");
25
+
26
+ 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
+
28
+ 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
+
30
+ var STEPS = {
31
+ BASIC_INFO: 0,
32
+ MODEL_SELECTION: 1,
33
+ API_KEY: 2
34
+ };
35
+ /**
36
+ * Hook to manage the state and logic of Assistant Dialogs (Create/Edit).
37
+ * @param {Object} props
38
+ * @param {Function} props.onClose - Function to close the dialog
39
+ * @param {Object} [props.initialData] - Initial formData
40
+ */
41
+
42
+ exports.STEPS = STEPS;
43
+
44
+ var useAssistantDialog = function useAssistantDialog(_ref) {
45
+ var onClose = _ref.onClose,
46
+ _ref$initialData = _ref.initialData,
47
+ initialData = _ref$initialData === void 0 ? {} : _ref$initialData;
48
+ (0, _twakeI18n.useExtendI18n)(_locales.locales);
49
+
50
+ var _useI18n = (0, _twakeI18n.useI18n)(),
51
+ t = _useI18n.t;
52
+
53
+ var _useAlert = (0, _Alert.useAlert)(),
54
+ showAlert = _useAlert.showAlert;
55
+
56
+ var _useState = (0, _react.useState)(STEPS.BASIC_INFO),
57
+ _useState2 = (0, _slicedToArray2.default)(_useState, 2),
58
+ step = _useState2[0],
59
+ setStep = _useState2[1];
60
+
61
+ var _useState3 = (0, _react.useState)(initialData.selectedProvider || null),
62
+ _useState4 = (0, _slicedToArray2.default)(_useState3, 2),
63
+ selectedProvider = _useState4[0],
64
+ setSelectedProvider = _useState4[1];
65
+
66
+ var _useState5 = (0, _react.useState)(_objectSpread({
67
+ name: '',
68
+ description: '',
69
+ icon: null,
70
+ model: '',
71
+ baseUrl: '',
72
+ apiKey: '',
73
+ isCustomModel: false
74
+ }, initialData)),
75
+ _useState6 = (0, _slicedToArray2.default)(_useState5, 2),
76
+ formData = _useState6[0],
77
+ setFormData = _useState6[1];
78
+
79
+ var handleChange = function handleChange(field) {
80
+ return function (event) {
81
+ var _event$target;
82
+
83
+ var value = ((_event$target = event.target) === null || _event$target === void 0 ? void 0 : _event$target.value) !== undefined ? event.target.value : event;
84
+ setFormData(function (prev) {
85
+ return _objectSpread(_objectSpread({}, prev), {}, (0, _defineProperty2.default)({}, field, value));
86
+ });
87
+ };
88
+ };
89
+
90
+ var handleChangeModel = function handleChangeModel(value) {
91
+ handleChange('model')({
92
+ target: {
93
+ value: value
94
+ }
95
+ });
96
+ setSelectedProvider(function (prev) {
97
+ return prev ? _objectSpread(_objectSpread({}, prev), {}, {
98
+ model: value
99
+ }) : prev;
100
+ });
101
+ };
102
+
103
+ var handleAvatarChange = function handleAvatarChange(avatarData) {
104
+ setFormData(function (prev) {
105
+ return _objectSpread(_objectSpread({}, prev), {}, {
106
+ icon: avatarData
107
+ });
108
+ });
109
+ };
110
+
111
+ var handleProviderSelection = function handleProviderSelection(provider) {
112
+ setFormData(function (prev) {
113
+ return _objectSpread(_objectSpread({}, prev), {}, {
114
+ baseUrl: provider.baseUrl,
115
+ isCustomModel: provider.id === 'custom'
116
+ });
117
+ });
118
+ setSelectedProvider(_objectSpread(_objectSpread({}, provider), {}, {
119
+ name: provider.id === 'custom' ? undefined : provider.name
120
+ }));
121
+ };
122
+
123
+ var handleBack = function handleBack() {
124
+ if (step === STEPS.BASIC_INFO) {
125
+ onClose();
126
+ } else {
127
+ setStep(function (prev) {
128
+ return prev - 1;
129
+ });
130
+ }
131
+ };
132
+ /**
133
+ * Handles the Next button click.
134
+ * @param {Function} onSubmit - Async function to execute on the final step (Create/Edit).
135
+ */
136
+
137
+
138
+ var handleNext = /*#__PURE__*/function () {
139
+ var _ref2 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee(onSubmit) {
140
+ return _regenerator.default.wrap(function _callee$(_context) {
141
+ while (1) {
142
+ switch (_context.prev = _context.next) {
143
+ case 0:
144
+ _context.prev = 0;
145
+
146
+ if (!(step === STEPS.API_KEY)) {
147
+ _context.next = 7;
148
+ break;
149
+ }
150
+
151
+ _context.next = 4;
152
+ return onSubmit(formData);
153
+
154
+ case 4:
155
+ onClose();
156
+ _context.next = 8;
157
+ break;
158
+
159
+ case 7:
160
+ setStep(function (prev) {
161
+ return prev + 1;
162
+ });
163
+
164
+ case 8:
165
+ _context.next = 13;
166
+ break;
167
+
168
+ case 10:
169
+ _context.prev = 10;
170
+ _context.t0 = _context["catch"](0);
171
+ showAlert({
172
+ message: t('assistant.default_error'),
173
+ severity: 'error'
174
+ });
175
+
176
+ case 13:
177
+ case "end":
178
+ return _context.stop();
179
+ }
180
+ }
181
+ }, _callee, null, [[0, 10]]);
182
+ }));
183
+
184
+ return function handleNext(_x) {
185
+ return _ref2.apply(this, arguments);
186
+ };
187
+ }();
188
+
189
+ var isNextDisabled = function isNextDisabled(isAllowToSkipApiKey) {
190
+ var _formData$name, _formData$apiKey;
191
+
192
+ switch (step) {
193
+ case STEPS.BASIC_INFO:
194
+ return !((_formData$name = formData.name) !== null && _formData$name !== void 0 && _formData$name.trim());
195
+
196
+ case STEPS.MODEL_SELECTION:
197
+ return !selectedProvider;
198
+
199
+ case STEPS.API_KEY:
200
+ return !((_formData$apiKey = formData.apiKey) !== null && _formData$apiKey !== void 0 && _formData$apiKey.trim()) && !isAllowToSkipApiKey;
201
+
202
+ default:
203
+ return false;
204
+ }
205
+ };
206
+
207
+ return {
208
+ step: step,
209
+ setStep: setStep,
210
+ formData: formData,
211
+ setFormData: setFormData,
212
+ selectedProvider: selectedProvider,
213
+ setSelectedProvider: setSelectedProvider,
214
+ handleChange: handleChange,
215
+ handleAvatarChange: handleAvatarChange,
216
+ handleProviderSelection: handleProviderSelection,
217
+ handleBack: handleBack,
218
+ handleNext: handleNext,
219
+ isNextDisabled: isNextDisabled,
220
+ handleChangeModel: handleChangeModel
221
+ };
222
+ };
223
+
224
+ exports.useAssistantDialog = useAssistantDialog;
@@ -13,7 +13,27 @@ var _SearchBar = _interopRequireDefault(require("cozy-ui/transpiled/react/Search
13
13
 
14
14
  var styles = {
15
15
  "conversationBar": "styles__conversationBar___2J-Us",
16
- "conversationBar-input": "styles__conversationBar-input___2DfdZ"
16
+ "conversationBar-input": "styles__conversationBar-input___2DfdZ",
17
+ "chatConversation": "styles__chatConversation___2EmkA",
18
+ "conversationHeaderBar": "styles__conversationHeaderBar___C8tlD",
19
+ "conversationList": "styles__conversationList___2GCzV",
20
+ "conversationList--container": "styles__conversationList--container___2xRAG",
21
+ "conversationList--hidden": "styles__conversationList--hidden___20BsT",
22
+ "conversationListItem--selected": "styles__conversationListItem--selected___2jCyB",
23
+ "menuToggler": "styles__menuToggler___39GfB",
24
+ "menuToggler--disabled": "styles__menuToggler--disabled___15vd4",
25
+ "conversationChips-container": "styles__conversationChips-container___327dE",
26
+ "conversationChips-startIcon": "styles__conversationChips-startIcon___1yOVn",
27
+ "conversationChips-chipIcon": "styles__conversationChips-chipIcon___1wmF-",
28
+ "conversationChips-deleteIcon": "styles__conversationChips-deleteIcon___s9C40",
29
+ "is-warning": "styles__is-warning___3sa0v",
30
+ "conversationChips-chip": "styles__conversationChips-chip___2PqQv",
31
+ "trigger-button": "styles__trigger-button___EA3_H",
32
+ "assistant-icon": "styles__assistant-icon___3A2Fr",
33
+ "menu-item": "styles__menu-item___CjGL5",
34
+ "create-item": "styles__create-item___1l-0E",
35
+ "menu-item-icon-button": "styles__menu-item-icon-button___3jTu9",
36
+ "create-icon": "styles__create-icon___2LIb2"
17
37
  };
18
38
 
19
39
  var SearchBarMobile = function SearchBarMobile(_ref) {
@@ -13,6 +13,8 @@ var _react = _interopRequireDefault(require("react"));
13
13
 
14
14
  var _reactRouterDom = require("react-router-dom");
15
15
 
16
+ var _cozyFlags = _interopRequireDefault(require("cozy-flags"));
17
+
16
18
  var _CozyDialogs = require("cozy-ui/transpiled/react/CozyDialogs");
17
19
 
18
20
  var _Breakpoints = require("cozy-ui/transpiled/react/providers/Breakpoints");
@@ -21,6 +23,14 @@ var _CozyTheme = _interopRequireDefault(require("cozy-ui-plus/dist/providers/Coz
21
23
 
22
24
  var _AssistantProvider = _interopRequireWildcard(require("../AssistantProvider"));
23
25
 
26
+ var _CreateAssistantDialog = _interopRequireDefault(require("./CreateAssistantDialog"));
27
+
28
+ var _DeleteAssistantDialog = _interopRequireDefault(require("./DeleteAssistantDialog"));
29
+
30
+ var _EditAssistantDialog = _interopRequireDefault(require("./EditAssistantDialog"));
31
+
32
+ var _AssistantSelection = _interopRequireDefault(require("../Conversations/AssistantSelection"));
33
+
24
34
  var _Conversation = _interopRequireDefault(require("../Conversations/Conversation"));
25
35
 
26
36
  var _ConversationBar = _interopRequireDefault(require("../Conversations/ConversationBar"));
@@ -31,7 +41,13 @@ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj &&
31
41
 
32
42
  var AssistantDialog = function AssistantDialog() {
33
43
  var _useAssistant = (0, _AssistantProvider.useAssistant)(),
34
- assistantState = _useAssistant.assistantState;
44
+ assistantState = _useAssistant.assistantState,
45
+ isOpenCreateAssistant = _useAssistant.isOpenCreateAssistant,
46
+ setIsOpenCreateAssistant = _useAssistant.setIsOpenCreateAssistant,
47
+ isOpenEditAssistant = _useAssistant.isOpenEditAssistant,
48
+ setIsOpenEditAssistant = _useAssistant.setIsOpenEditAssistant,
49
+ isOpenDeleteAssistant = _useAssistant.isOpenDeleteAssistant,
50
+ setIsOpenDeleteAssistant = _useAssistant.setIsOpenDeleteAssistant;
35
51
 
36
52
  var _useBreakpoints = (0, _Breakpoints.useBreakpoints)(),
37
53
  isMobile = _useBreakpoints.isMobile;
@@ -78,9 +94,28 @@ var AssistantDialog = function AssistantDialog() {
78
94
  content: /*#__PURE__*/_react.default.createElement(_Conversation.default, {
79
95
  id: conversationId
80
96
  }),
81
- actions: /*#__PURE__*/_react.default.createElement(_ConversationBar.default, {
97
+ actions: /*#__PURE__*/_react.default.createElement("div", {
98
+ className: "u-w-100"
99
+ }, /*#__PURE__*/_react.default.createElement(_ConversationBar.default, {
82
100
  assistantStatus: assistantState.status
83
- }),
101
+ }), (0, _cozyFlags.default)('cozy.create-assistant.enabled') && /*#__PURE__*/_react.default.createElement(_AssistantSelection.default, {
102
+ className: "u-w-100 u-maw-7 u-mh-auto u-mt-1"
103
+ }), isOpenCreateAssistant && /*#__PURE__*/_react.default.createElement(_CreateAssistantDialog.default, {
104
+ open: isOpenCreateAssistant,
105
+ onClose: function onClose() {
106
+ return setIsOpenCreateAssistant(false);
107
+ }
108
+ }), isOpenEditAssistant && /*#__PURE__*/_react.default.createElement(_EditAssistantDialog.default, {
109
+ open: isOpenEditAssistant,
110
+ onClose: function onClose() {
111
+ return setIsOpenEditAssistant(false);
112
+ }
113
+ }), isOpenDeleteAssistant && /*#__PURE__*/_react.default.createElement(_DeleteAssistantDialog.default, {
114
+ open: isOpenDeleteAssistant,
115
+ onClose: function onClose() {
116
+ return setIsOpenDeleteAssistant(false);
117
+ }
118
+ })),
84
119
  onClose: onClose
85
120
  });
86
121
  };
@@ -0,0 +1,5 @@
1
+ export default CreateAssistantDialog;
2
+ declare function CreateAssistantDialog({ open, onClose }: {
3
+ open: any;
4
+ onClose: any;
5
+ }): JSX.Element;