Spaces:
Sleeping
Sleeping
| /******/ (() => { // webpackBootstrap | |
| /******/ "use strict"; | |
| /******/ var __webpack_modules__ = ({ | |
| /***/ 698: | |
| /***/ ((__unused_webpack_module, exports) => { | |
| var __webpack_unused_export__; | |
| /** | |
| * @license React | |
| * react-jsx-runtime.production.js | |
| * | |
| * Copyright (c) Meta Platforms, Inc. and affiliates. | |
| * | |
| * This source code is licensed under the MIT license found in the | |
| * LICENSE file in the root directory of this source tree. | |
| */ | |
| var REACT_ELEMENT_TYPE = Symbol.for("react.transitional.element"), | |
| REACT_FRAGMENT_TYPE = Symbol.for("react.fragment"); | |
| function jsxProd(type, config, maybeKey) { | |
| var key = null; | |
| void 0 !== maybeKey && (key = "" + maybeKey); | |
| void 0 !== config.key && (key = "" + config.key); | |
| if ("key" in config) { | |
| maybeKey = {}; | |
| for (var propName in config) | |
| "key" !== propName && (maybeKey[propName] = config[propName]); | |
| } else maybeKey = config; | |
| config = maybeKey.ref; | |
| return { | |
| $$typeof: REACT_ELEMENT_TYPE, | |
| type: type, | |
| key: key, | |
| ref: void 0 !== config ? config : null, | |
| props: maybeKey | |
| }; | |
| } | |
| __webpack_unused_export__ = REACT_FRAGMENT_TYPE; | |
| __webpack_unused_export__ = jsxProd; | |
| __webpack_unused_export__ = jsxProd; | |
| /***/ }), | |
| /***/ 848: | |
| /***/ ((module, __unused_webpack_exports, __webpack_require__) => { | |
| if (true) { | |
| /* unused reexport */ __webpack_require__(698); | |
| } else {} | |
| /***/ }) | |
| /******/ }); | |
| /************************************************************************/ | |
| /******/ // The module cache | |
| /******/ var __webpack_module_cache__ = {}; | |
| /******/ | |
| /******/ // The require function | |
| /******/ function __webpack_require__(moduleId) { | |
| /******/ // Check if module is in cache | |
| /******/ var cachedModule = __webpack_module_cache__[moduleId]; | |
| /******/ if (cachedModule !== undefined) { | |
| /******/ return cachedModule.exports; | |
| /******/ } | |
| /******/ // Create a new module (and put it into the cache) | |
| /******/ var module = __webpack_module_cache__[moduleId] = { | |
| /******/ // no module.id needed | |
| /******/ // no module.loaded needed | |
| /******/ exports: {} | |
| /******/ }; | |
| /******/ | |
| /******/ // Execute the module function | |
| /******/ __webpack_modules__[moduleId](module, module.exports, __webpack_require__); | |
| /******/ | |
| /******/ // Return the exports of the module | |
| /******/ return module.exports; | |
| /******/ } | |
| /******/ | |
| /************************************************************************/ | |
| var __webpack_exports__ = {}; | |
| // UNUSED EXPORTS: default | |
| // EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js | |
| var jsx_runtime = __webpack_require__(848); | |
| ;// ./src/interface/components/ui/card.tsx | |
| function card_Card(_a) { | |
| var children = _a.children, _b = _a.className, className = _b === void 0 ? '' : _b; | |
| return (_jsx("div", { className: "bg-white shadow rounded-lg overflow-hidden ".concat(className), children: children })); | |
| } | |
| function card_CardHeader(_a) { | |
| var children = _a.children, _b = _a.className, className = _b === void 0 ? '' : _b; | |
| return (_jsx("div", { className: "px-6 py-4 border-b border-gray-200 ".concat(className), children: children })); | |
| } | |
| function card_CardTitle(_a) { | |
| var children = _a.children, _b = _a.className, className = _b === void 0 ? '' : _b; | |
| return (_jsx("h3", { className: "text-lg font-semibold text-gray-900 ".concat(className), children: children })); | |
| } | |
| function card_CardContent(_a) { | |
| var children = _a.children, _b = _a.className, className = _b === void 0 ? '' : _b; | |
| return (_jsx("div", { className: "px-6 py-4 ".concat(className), children: children })); | |
| } | |
| ;// ./src/interface/components/market-analysis.tsx | |
| var MarketAnalysis = function (_a) { | |
| var data = _a.data; | |
| var getSentimentColor = function (sentiment) { | |
| if (sentiment > 0.6) | |
| return 'text-green-600'; | |
| if (sentiment < 0.4) | |
| return 'text-red-600'; | |
| return 'text-yellow-600'; | |
| }; | |
| return (_jsxs("div", { className: "space-y-6", children: [_jsxs(Card, { children: [_jsx(CardHeader, { children: _jsx(CardTitle, { children: "Conditions de march\u00E9 actuelles" }) }), _jsx(CardContent, { children: _jsxs("div", { className: "grid grid-cols-3 gap-4", children: [_jsxs("div", { className: "text-center", children: [_jsx("h3", { className: "text-sm font-medium text-gray-500", children: "R\u00E9gime" }), _jsx("p", { className: "mt-1 text-lg font-semibold text-gray-900", children: data.currentRegime })] }), _jsxs("div", { className: "text-center", children: [_jsx("h3", { className: "text-sm font-medium text-gray-500", children: "Sentiment" }), _jsxs("p", { className: "mt-1 text-lg font-semibold ".concat(getSentimentColor(data.marketSentiment)), children: [(data.marketSentiment * 100).toFixed(1), "%"] })] }), _jsxs("div", { className: "text-center", children: [_jsx("h3", { className: "text-sm font-medium text-gray-500", children: "Volatilit\u00E9" }), _jsxs("p", { className: "mt-1 text-lg font-semibold text-gray-900", children: [(data.volatilityLevel * 100).toFixed(1), "%"] })] })] }) })] }), _jsxs(Card, { children: [_jsx(CardHeader, { children: _jsx(CardTitle, { children: "M\u00E9triques de risque" }) }), _jsx(CardContent, { children: _jsxs("div", { className: "grid grid-cols-3 gap-4", children: [_jsxs("div", { className: "p-4 bg-gray-50 rounded text-center", children: [_jsx("h4", { className: "text-sm font-medium text-gray-500", children: "VaR (95%)" }), _jsxs("p", { className: "mt-1 text-lg font-semibold text-gray-900", children: [(data.metrics.var95 * 100).toFixed(1), "%"] })] }), _jsxs("div", { className: "p-4 bg-gray-50 rounded text-center", children: [_jsx("h4", { className: "text-sm font-medium text-gray-500", children: "Ratio de Sharpe" }), _jsx("p", { className: "mt-1 text-lg font-semibold text-gray-900", children: data.metrics.sharpeRatio.toFixed(2) })] }), _jsxs("div", { className: "p-4 bg-gray-50 rounded text-center", children: [_jsx("h4", { className: "text-sm font-medium text-gray-500", children: "Beta" }), _jsx("p", { className: "mt-1 text-lg font-semibold text-gray-900", children: data.metrics.beta.toFixed(2) })] })] }) })] }), _jsxs(Card, { children: [_jsx(CardHeader, { children: _jsx(CardTitle, { children: "\u00C9volution des indicateurs" }) }), _jsx(CardContent, { children: _jsx("div", { className: "h-96", children: _jsx(ResponsiveContainer, { width: "100%", height: "100%", children: _jsxs(LineChart, { data: data.history, children: [_jsx(CartesianGrid, { strokeDasharray: "3 3", className: "stroke-gray-200" }), _jsx(XAxis, { dataKey: "date", className: "text-xs" }), _jsx(YAxis, { className: "text-xs" }), _jsx(Tooltip, {}), _jsx(Legend, {}), _jsx(Line, { type: "monotone", dataKey: "volatility", stroke: "#ef4444", name: "Volatilit\u00E9", strokeWidth: 2, dot: false }), _jsx(Line, { type: "monotone", dataKey: "sentiment", stroke: "#3b82f6", name: "Sentiment", strokeWidth: 2, dot: false })] }) }) }) })] })] })); | |
| }; | |
| /* harmony default export */ const market_analysis = ((/* unused pure expression or super */ null && (MarketAnalysis))); | |
| /******/ })() | |
| ; |