cozy-search
Version:
UI components about search bar and IA assistant
125 lines (109 loc) • 5.2 kB
JavaScript
"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 _Alert = _interopRequireDefault(require("cozy-ui/transpiled/react/Alert"));
var _Typography = _interopRequireDefault(require("cozy-ui/transpiled/react/Typography"));
var _Breakpoints = require("cozy-ui/transpiled/react/providers/Breakpoints");
var _twakeI18n = require("twake-i18n");
var _Provider = _interopRequireDefault(require("./Provider"));
var providers = [{
id: "openrag",
name: "Twake",
models: ["openrag"],
description: "assistant_create.steps.provider_selection.openrag.description",
icon: "TwakeLogo",
external: false
}, {
id: "google",
name: "Google",
models: ["gemini-3-pro", "gemini-3-pro-001", "gemini-3-flash", "gemini-2.5-pro", "gemini-2.5-flash", "gemini-nano-banana-pro"],
description: "assistant_create.steps.provider_selection.google.description",
icon: "GeminiLogo",
baseUrl: "https://generativelanguage.googleapis.com/v1beta",
external: true
}, {
id: "openai",
name: "OpenAI",
models: ["gpt-5.1", "gpt-5-2025-11-14", "o3", "o4-mini", "gpt-5-mini", "gpt-4.1-mini", "sora-v2"],
unsupportedModels: ["o1", "o1-mini", "o1-preview"],
description: "assistant_create.steps.provider_selection.openai.description",
icon: "OpenAILogo",
baseUrl: "https://api.openai.com/v1",
external: true
}, {
id: "mistral_ai",
name: "Mistral AI",
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"],
description: "assistant_create.steps.provider_selection.mistral_ai.description",
icon: "MistralLogo",
baseUrl: "https://api.mistral.ai/v1",
external: true
}, {
id: "meta",
name: "Meta",
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"],
description: "assistant_create.steps.provider_selection.meta.description",
icon: "MetaLogo",
baseUrl: "https://api.llama.com/v1",
external: true
}, {
id: "custom",
name: "assistant_create.steps.provider_selection.custom.name",
description: "assistant_create.steps.provider_selection.custom.description",
icon: "PlusSmall",
external: true
}];
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 ProviderSelectionStep = function ProviderSelectionStep(_ref) {
var selectedProvider = _ref.selectedProvider,
onSelect = _ref.onSelect;
var _useI18n = (0, _twakeI18n.useI18n)(),
t = _useI18n.t;
var _useBreakpoints = (0, _Breakpoints.useBreakpoints)(),
isMobile = _useBreakpoints.isMobile;
return /*#__PURE__*/_react.default.createElement("div", {
className: (0, _classnames.default)('u-flex u-flex-column', styles.ModelSelectionStep)
}, /*#__PURE__*/_react.default.createElement(_Typography.default, {
variant: "body1",
className: "u-mb-1 u-c-text-secondary"
}, t('assistant_create.steps.provider_selection.description')), /*#__PURE__*/_react.default.createElement("div", {
className: (0, _classnames.default)(styles['grid-container'], (0, _defineProperty2.default)({}, styles['grid-container--mobile'], isMobile))
}, providers.map(function (provider) {
return /*#__PURE__*/_react.default.createElement(_Provider.default, {
key: provider.id,
provider: provider,
selectedProvider: selectedProvider,
onSelect: onSelect
});
})), (selectedProvider === null || selectedProvider === void 0 ? void 0 : selectedProvider.external) && /*#__PURE__*/_react.default.createElement(_Alert.default, {
severity: "primary",
className: "u-mt-1"
}, t('assistant_create.steps.provider_selection.external_warning')));
};
var _default = ProviderSelectionStep;
exports.default = _default;