commit 056fa7651452a8a2de31d66c89f3ded18d07e949 Author: Yaser Date: Thu Aug 13 20:26:04 2026 +0330 Initial commit diff --git a/.dockerignore b/.dockerignore new file mode 100644 index 0000000..756ad1e --- /dev/null +++ b/.dockerignore @@ -0,0 +1,10 @@ +node_modules +build +.git +debug.log +.env.development +.env.local +.env.*.local +npm-debug.log* +yarn-debug.log* +yarn-error.log* diff --git a/.env.development b/.env.development new file mode 100644 index 0000000..29daf5b --- /dev/null +++ b/.env.development @@ -0,0 +1,17 @@ +# Shahoo — local development (loaded automatically by CRA on `yarn start`) +# Restart dev server after changing this file. + +# Local dev only — skip 2FA requirement for API keys (BFF + Dalan must match) +REACT_APP_SKIP_API_KEY_2FA=true + +# API backend — Shahoo BFF (Fibitex local) +REACT_APP_API_URL=http://localhost:8082 + +# Legacy / staging fallback: +# REACT_APP_API_URL=http://ilaand.ir + +# When using setupProxy with same-origin /api (T1.8), use: +# REACT_APP_API_URL= + +PORT=3000 +BROWSER=none diff --git a/.env.development.example b/.env.development.example new file mode 100644 index 0000000..dfedee1 --- /dev/null +++ b/.env.development.example @@ -0,0 +1,2 @@ +# Copy to .env.development for local Shahoo dev (site key must match app.yml / Dalan barong). +REACT_APP_RECAPTCHA_SITE_KEY= diff --git a/.env.example b/.env.example new file mode 100644 index 0000000..5f74916 --- /dev/null +++ b/.env.example @@ -0,0 +1,25 @@ +# Copy to .env.local for personal overrides (gitignored). +# .env.development is committed with team defaults. + +# App domain (TradingView exchange label; first label used as brand name) +REACT_APP_DOMAIN=fibitex.com + +# API origin — no trailing slash +REACT_APP_API_URL=http://ilaand.ir + +# Fibitex local BFF (after T2.x): +# REACT_APP_API_URL=http://localhost:8082 + +# Same-origin via CRA proxy (after T1.8 setupProxy): +# REACT_APP_API_URL= + +# Production Docker build (same-origin behind Traefik/nginx): +# REACT_APP_API_URL= + +# Ranger / Rango WebSocket (Shahoo) +# REACT_APP_RANGER_ENABLED=true +# REACT_APP_RANGER_ENABLED=false # force HTTP polling fallback + +PORT=3000 +BROWSER=none + diff --git a/.env.production b/.env.production new file mode 100644 index 0000000..dcf91bf --- /dev/null +++ b/.env.production @@ -0,0 +1,2 @@ +# Production build — same-origin; nginx/Traefik serves /api/1 or proxies to BFF +REACT_APP_API_URL= diff --git a/.eslintignore b/.eslintignore new file mode 100644 index 0000000..093c30e --- /dev/null +++ b/.eslintignore @@ -0,0 +1,2 @@ +# TradingView vendor bundles — not project source +**/charting_library/** diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..6d05488 --- /dev/null +++ b/.gitignore @@ -0,0 +1,14 @@ +node_modules + +# Local env overrides (never commit secrets) +.env.local +.env.development.local +.env.production.local +.env.test.local + + +# Large design files +public/static/icons/Icon-Svg/Icon.sketch +public/static/icons/Icon-Svg/Icon/pages/*.json +public/static/icons/Content/Screen Shot* +public/static/icons/Content/Map.png \ No newline at end of file diff --git a/.nvmrc b/.nvmrc new file mode 100644 index 0000000..3c03207 --- /dev/null +++ b/.nvmrc @@ -0,0 +1 @@ +18 diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..fd4dcb0 --- /dev/null +++ b/Dockerfile @@ -0,0 +1,28 @@ +# syntax=docker/dockerfile:1.4 +# App image — node_modules from deps base (custom/shahoo-deps:1). +# Rebuild deps when yarn.lock changes: docker build -f Dockerfile.deps -t custom/shahoo-deps:1 . +ARG DEPS_IMAGE=custom/shahoo-deps:1 +FROM ${DEPS_IMAGE} AS builder + +WORKDIR /home/node + +COPY --chown=node:node . . + +ARG REACT_APP_API_URL= +ENV REACT_APP_API_URL=${REACT_APP_API_URL} +ARG REACT_APP_SKIP_API_KEY_2FA= +ENV REACT_APP_SKIP_API_KEY_2FA=${REACT_APP_SKIP_API_KEY_2FA} +ENV NODE_OPTIONS=--openssl-legacy-provider + +USER node + +RUN sed -i 's/\r$//' scripts/build.sh && sh scripts/build.sh + +FROM nginx:mainline-alpine + +COPY --from=builder /home/node/build /usr/share/nginx/html +COPY nginx.conf /etc/nginx/conf.d/default.conf +EXPOSE 3000 + +HEALTHCHECK --interval=30s --timeout=5s --start-period=15s --retries=3 \ + CMD wget -q -O /dev/null http://127.0.0.1:3000/health || exit 1 diff --git a/Dockerfile.deps b/Dockerfile.deps new file mode 100644 index 0000000..1c2b8f1 --- /dev/null +++ b/Dockerfile.deps @@ -0,0 +1,14 @@ +# syntax=docker/dockerfile:1.4 +# Heavy layer: yarn install. Rebuild when yarn.lock changes: +# docker build -f Dockerfile.deps -t custom/shahoo-deps:1 . +FROM node:18-alpine + +WORKDIR /home/node + +COPY package.json yarn.lock ./ + +ENV CYPRESS_INSTALL_BINARY=0 + +USER node + +RUN yarn install --frozen-lockfile --network-timeout 600000 --non-interactive diff --git a/README.md b/README.md new file mode 100644 index 0000000..dbe6585 --- /dev/null +++ b/README.md @@ -0,0 +1,69 @@ +# Shahoo — فرانت جایگزین Fibitex +React SPA — staging: `shahoo.fibitex.com`. API via [Shahoo-BFF](../Shahoo-BFF/). + +```bash +yarn install && yarn start +# BFF: cd ../Shahoo-BFF && yarn start + +``` +مستندات: `Docs/Shahoo/README.md` · `Docs/Fibitex-staging-deploy.md` + +--- + +# Getting Started with Create React App- +This project was bootstrapped with [Create React App](https://github.com/facebook/create-react-app). + +## Available Scripts +In the project directory, you can run: + +### `yarn start` +Runs the app in the development mode. +Open [http://localhost:3000](http://localhost:3000) to view it in the browser. + +The page will reload if you make edits. +You will also see any lint errors in the console. + +### `yarn test` +Launches the test runner in the interactive watch mode. +See the section about [running tests](https://facebook.github.io/create-react-app/docs/running-tests) for more information. + +### `yarn build` +Builds the app for production to the `build` folder. +It correctly bundles React in production mode and optimizes the build for the best performance. + +The build is minified and the filenames include the hashes. +Your app is ready to be deployed! + +See the section about [deployment](https://facebook.github.io/create-react-app/docs/deployment) for more information. + +### `yarn eject` +**Note: this is a one-way operation. Once you **`eject`**, you can’t go back!** + +If you aren’t satisfied with the build tool and configuration choices, you can `eject` at any time. This command will remove the single build dependency from your project. + +Instead, it will copy all the configuration files and the transitive dependencies (webpack, Babel, ESLint, etc) right into your project so you have full control over them. All of the commands except `eject` will still work, but they will point to the copied scripts so you can tweak them. At this point you’re on your own. + +You don’t have to ever use `eject`. The curated feature set is suitable for small and middle deployments, and you shouldn’t feel obligated to use this feature. However we understand that this tool wouldn’t be useful if you couldn’t customize it when you are ready for it. + +## Learn More +You can learn more in the [Create React App documentation](https://facebook.github.io/create-react-app/docs/getting-started). + +To learn React, check out the [React documentation](https://reactjs.org/). + +### Code Splitting +This section has moved here: [https://facebook.github.io/create-react-app/docs/code-splitting](https://facebook.github.io/create-react-app/docs/code-splitting) + +### Analyzing the Bundle Size +This section has moved here: [https://facebook.github.io/create-react-app/docs/analyzing-the-bundle-size](https://facebook.github.io/create-react-app/docs/analyzing-the-bundle-size) + +### Making a Progressive Web App +This section has moved here: [https://facebook.github.io/create-react-app/docs/making-a-progressive-web-app](https://facebook.github.io/create-react-app/docs/making-a-progressive-web-app) + +### Advanced Configuration +This section has moved here: [https://facebook.github.io/create-react-app/docs/advanced-configuration](https://facebook.github.io/create-react-app/docs/advanced-configuration) + +### Deployment +This section has moved here: [https://facebook.github.io/create-react-app/docs/deployment](https://facebook.github.io/create-react-app/docs/deployment) + +### `yarn build` fails to minify +This section has moved here: [https://facebook.github.io/create-react-app/docs/troubleshooting#npm-run-build-fails-to-minify](https://facebook.github.io/create-react-app/docs/troubleshooting#npm-run-build-fails-to-minify) \ No newline at end of file diff --git a/config-overrides.js b/config-overrides.js new file mode 100644 index 0000000..a8568fc --- /dev/null +++ b/config-overrides.js @@ -0,0 +1,19 @@ +const { override, addWebpackAlias } = require("customize-cra"); +const path = require("path"); + +module.exports = override( + // add an alias for "ag-grid-react" imports + addWebpackAlias({ + "@components": path.resolve(__dirname, "src/components/"), + "@features": path.resolve(__dirname, "src/features/"), + "@core": path.resolve(__dirname, "src/core/"), + "@api": path.resolve(__dirname, "src/api"), + "@hocs": path.resolve(__dirname, "src/hocs"), + "@consts": path.resolve(__dirname, "src/consts"), + "@context": path.resolve(__dirname, "src/context"), + "@hook": path.resolve(__dirname, "src/hook"), + "@lib": path.resolve(__dirname, "src/lib"), + }) + + // adjust the underlying workbox +); diff --git a/debug.log b/debug.log new file mode 100644 index 0000000..20c1d86 --- /dev/null +++ b/debug.log @@ -0,0 +1,15 @@ +[1215/164245.858:ERROR:directory_reader_win.cc(43)] FindFirstFile: The system cannot find the path specified. (0x3) +[1218/214410.135:ERROR:directory_reader_win.cc(43)] FindFirstFile: The system cannot find the path specified. (0x3) +[1221/101351.184:ERROR:directory_reader_win.cc(43)] FindFirstFile: The system cannot find the path specified. (0x3) +[1224/161828.253:ERROR:directory_reader_win.cc(43)] FindFirstFile: The system cannot find the path specified. (0x3) +[1226/114908.144:ERROR:directory_reader_win.cc(43)] FindFirstFile: The system cannot find the path specified. (0x3) +[1227/075634.482:ERROR:directory_reader_win.cc(43)] FindFirstFile: The system cannot find the path specified. (0x3) +[1227/153226.905:ERROR:directory_reader_win.cc(43)] FindFirstFile: The system cannot find the path specified. (0x3) +[1227/160628.451:ERROR:directory_reader_win.cc(43)] FindFirstFile: The system cannot find the path specified. (0x3) +[1229/081308.882:ERROR:directory_reader_win.cc(43)] FindFirstFile: The system cannot find the path specified. (0x3) +[0105/094552.093:ERROR:directory_reader_win.cc(43)] FindFirstFile: The system cannot find the path specified. (0x3) +[0112/163514.121:ERROR:directory_reader_win.cc(43)] FindFirstFile: The system cannot find the path specified. (0x3) +[0113/173228.926:ERROR:directory_reader_win.cc(43)] FindFirstFile: The system cannot find the path specified. (0x3) +[0119/111150.038:ERROR:directory_reader_win.cc(43)] FindFirstFile: The system cannot find the path specified. (0x3) +[0120/120628.380:ERROR:directory_reader_win.cc(43)] FindFirstFile: The system cannot find the path specified. (0x3)[0124/095536.392:ERROR:directory_reader_win.cc(43)] FindFirstFile: The system cannot find the path specified. (0x3) +[0125/110846.148:ERROR:directory_reader_win.cc(43)] FindFirstFile: The system cannot find the path specified. (0x3) diff --git a/docker-compose.yml b/docker-compose.yml new file mode 100644 index 0000000..274984a --- /dev/null +++ b/docker-compose.yml @@ -0,0 +1,8 @@ +version: '3.3' +services: + front: + ports: + - '3001:80' + restart: always + container_name: j2 + image: repo.teanab.com:5050/aragon/j2 diff --git a/docs/01-dynamic-markets-remediation.md b/docs/01-dynamic-markets-remediation.md new file mode 100644 index 0000000..4de82a8 --- /dev/null +++ b/docs/01-dynamic-markets-remediation.md @@ -0,0 +1,279 @@ +
+ +# اصلاح بازار داینامیک، نمودار یکپارچه، و حذف CAD→IRT + +**تاریخ:** 2026-07-19 +**محیط:** staging — https://shahoo.fibitex.com/ +**وابستگی:** Shahoo-BFF (ریپوی جدا) + +--- + +## ۱. خلاصه مشکل + +| # | علامت | علت ریشه‌ای | +|---|--------|-------------| +| ۱ | لیست بازار ثابت (IRT/USDT) | آرایه‌های hardcode در UI | +| ۲ | ارزهای اضافی/کم (مثلاً BNB نیست، LINK هست) | `CURRENCY.TYPE` + `IRTitems`/`USDTitems` ثابت | +| ۳ | نمودار USDT = Binance | `TradingViewWidget` به‌جای datafeed داخلی | +| ۴ | CAD به‌عنوان quote پشتیبانی نمی‌شود | UI فقط IRT/USDT؛ chart برای CAD `null` | +| ۵ | CAD→IRT در BFF (legacy) | `normalizeCurrencyForShahoo` — دیگر لازم نیست؛ IRT روی سرور فعال است | + +--- + +## ۲. وضعیت فعلی staging (baseline) + +API stats روی staging (2026-07-19): + +``` +BNB_CAD, BNB_IRT, BNB_USDT, BTC_CAD, BTC_IRT, BTC_USDT, +ETH_CAD, ETH_IRT, ETH_USDT, IRT_IRT, USDT_CAD, USDT_IRT +``` + +- **IRT** و **CAD** هر دو quote مستقل روی Peatio/Dena فعال‌اند. +- BFF endpoint `GET /api/1/ohlcvs/tradingView?market=BTC_USDT` داده صرافی برمی‌گرداند ✅ +- UI هنوز از hardcode استفاده می‌کند ❌ + +--- + +## ۳. اهداف (Definition of Done) + +- [x] لیست بازارها و quote currencies (**IRT, USDT, CAD**) از API لود شوند +- [x] تب‌های sidebar/header/popover داینامیک باشند +- [x] فقط markets فعال Peatio نمایش داده شوند +- [x] نمودار **همه** quoteها از `TVChartContainer` + BFF `/ohlcvs/tradingView` +- [x] mapping **CAD→IRT** از BFF حذف شود +- [ ] QA روی `shahoo.fibitex.com` سبز + redeploy images + +--- + +## ۴. معماری هدف + +``` +Peatio (Dena) + GET /public/markets + GET /public/currencies + ↓ +Shahoo-BFF + GET /api/1/markets/catalog ← جدید (public) + GET /api/1/ohlcvs/stats ← موجود + GET /api/1/ohlcvs/tradingView ← موجود + ↓ +Shahoo SPA + MarketsContext (bootstrap، بدون login) + MarketListPanel (تب quote + لیست base) + TVChartContainer (IRT | USDT | CAD) +``` + +--- + +## ۵. قرارداد API پیشنهادی — `GET /api/1/markets/catalog` + +**Auth:** public (بدون token) +**منبع BFF:** `denaClient.getMarkets()` + `denaClient.getCurrencies()` + +```json +{ + "statusCode": 200, + "content": { + "quoteCurrencies": ["IRT", "USDT", "CAD"], + "marketsByQuote": { + "IRT": ["BTC", "ETH", "BNB", "USDT"], + "USDT": ["BTC", "ETH", "BNB"], + "CAD": ["BTC", "ETH", "BNB", "USDT"] + }, + "markets": [ + { + "marketId": "btcirt", + "marketKey": "BTC_IRT", + "base": "BTC", + "quote": "IRT", + "symbol": "BTCIRT", + "route": "BTC-IRT", + "enabled": true, + "amountPrecision": 6, + "pricePrecision": 2 + } + ] + } +} +``` + +**قوانین mapping BFF:** + +- فقط markets با `state: enabled` +- `marketKey` = `{BASE}_{QUOTE}` (uppercase) +- `route` = `{BASE}-{QUOTE}` (مطابق react-router Shahoo) +- `symbol` = `{BASE}{QUOTE}` (مطابق TradingView datafeed) +- **بدون** تبدیل CAD→IRT + +--- + +## ۶. فازبندی و اولویت + +### فاز ۱ — 🔴 فوری + +| ID | تسک | repo | فایل(ها) | وضعیت | +|----|------|------|----------|--------| +| **T1.1** | یکپارچه‌سازی نمودار: حذف `TradingViewWidget`؛ `TVChartContainer` برای IRT/USDT/CAD | Shahoo | `MarketChart/index.js` | ✅ | +| **T1.2** | حذف CAD→IRT در BFF | Shahoo-BFF | `mapMarket.js`, `userPrefs.js`, `mapTransaction.js`, … | ✅ | + +**T1.1 جزئیات:** + +```js +// قبل: USDT → TradingViewWidget (Binance embed) +// بعد: همه quoteها → TVChartContainer + Datafeed → /api/1/ohlcvs/tradingView +``` + +symbol اولیه: `{BASE}{QUOTE}` — مثلاً `BTCUSDT`, `BTCIRT`, `BTCCAD` + +--- + +### فاز ۲ — 🔴 BFF catalog + +| ID | تسک | repo | فایل(ها) | وضعیت | +|----|------|------|----------|--------| +| **T2.1** | Endpoint `GET /api/1/markets/catalog` | Shahoo-BFF | `routes/markets.js`, `lib/mapMarketsCatalog.js` | ✅ | +| **T2.2** | حذف/جایگزینی `SHAAHO_CURRENCIES` whitelist | Shahoo-BFF | `mapMarket.js`, `mapConstants.js` | ✅ | + +--- + +### فاز ۳ — 🔴 Shahoo UI داینامیک + +| ID | تسک | repo | فایل(ها) | وضعیت | +|----|------|------|----------|--------| +| **T3.1** | `MarketsContext` + `useMarkets` + fetch bootstrap | Shahoo | `context/marketsContext.js`, `api/markets.js`, `Layout/App` | ✅ | +| **T3.2** | کامپوننت مشترک `MarketListPanel` | Shahoo | `MarketListPanel/` | ✅ | +| **T3.3** | refactor سه فایل تکراری → `MarketListPanel` | Shahoo | `MarketSelectCurrency`, `MarketSelectTab`, `MarketDropDown` | ✅ | +| **T3.4** | `CURRENCY.TYPE` → fallback | Shahoo | `core/utils/getCurrencyMeta.js` | ✅ | + +**فایل‌های hardcode برای حذف/جایگزینی:** + +``` +src/features/Market/MainComponents/MarketSelectCurrency/index.js → IRTitems, USDTitems +src/features/Market/MainComponents/MarketHeader/.../MarketSelectTab/index.js +src/features/PopOverComponents/Market/MarketDropDown/index.js +``` + +--- + +### فاز ۴ — 🟡 سطوح ثانویه + +| ID | تسک | repo | فایل(ها) | وضعیت | +|----|------|------|----------|--------| +| **T4.1** | `SwitchCurrency` — تب quote داینامیک | Shahoo | `SwitchCurrency/index.js` | ✅ | +| **T4.2** | Landing — لیست از catalog | Shahoo | `Landing/pages/index.js` | ✅ | +| **T4.3** | TradingView datafeed — symbols داینامیک | Shahoo | `datafeeds/datafeed.js` | ✅ | +| **T4.4** | `MarketChart` — symbol از catalog | Shahoo | `MarketChart/index.js` | ✅ | +| **T4.5** | WatchList — quote از destMarket | Shahoo | `WatchList/index.js` | ✅ | +| **T4.6** | Route guard — redirect به market معتبر | Shahoo | `Market/pages/index.js` | ✅ | + +--- + +### فاز ۵ — 🟢 QA + Deploy + +| ID | تسک | وضعیت | +|----|------|--------| +| **T5.1** | تب IRT/USDT/CAD فقط markets واقعی Peatio | ⬜ | +| **T5.2** | BNB در لیست؛ LINK/LTC بدون market نباشند | ⬜ | +| **T5.3** | نمودار BTC-USDT / BTC-IRT / BTC-CAD — داده صرافی | ⬜ | +| **T5.4** | Wallet: balance IRT و CAD جدا | ⬜ | +| **T5.5** | Order book + place order روی BNB-USDT | ⬜ | +| **T5.6** | Rebuild `custom/shahoo:1` + `custom/shahoo-bff:1` + redeploy staging | ⬜ | + +--- + +## ۷. مسیر بحرانی (Critical Path) + +``` +T1.2 → T2.1 → T3.1 → T3.2 → T3.3 + ↑ +T1.1 (موازی — می‌توان همزمان با T1.2 شروع کرد) + ↓ +T4.* → T5.* +``` + +**ترتیب پیشنهادی اجرا:** + +1. T1.1 + T1.2 (نمودار + پاکسازی BFF) +2. T2.1 + T2.2 (catalog API) +3. T3.1 → T3.3 (UI داینامیک) +4. T4.* (polish) +5. T5.* (QA staging) + +**تخمین:** ۴–۵ روز کاری + +--- + +## ۸. تست دستی (staging) + +```bash +# statMap — کلیدهای IRT/USDT/CAD +curl -s https://shahoo.fibitex.com/api/1/ohlcvs/stats | jq '.content.statMap | keys' + +# catalog (بعد از T2.1) +curl -s https://shahoo.fibitex.com/api/1/markets/catalog | jq . + +# نمودار USDT از صرافی (بعد از T1.1) +curl -s "https://shahoo.fibitex.com/api/1/ohlcvs/tradingView?market=BTC_USDT&resolution=240&from=1700000000&to=1800000000" | jq '.content | length' +``` + +**چک UI:** + +- [ ] `/market/BNB-IRT` — لیست + قیمت + نمودار +- [ ] `/market/BTC-USDT` — نمودار Fibitex (نه Binance watermark) +- [ ] `/market/BTC-CAD` — صفحه باز شود (بعد از T1.1/T3) + +--- + +## ۹. خارج از scope (این سند) + +- حذف کامل `CURRENCY.TYPE` (فقط به fallback تبدیل می‌شود) +- فیچرهای ایران (Jibit/Vandar/IRT Pay) + +**Real-time (Rango WebSocket):** برنامه جدا — [02-rango-websocket-plan.md](./02-rango-websocket-plan.md) +شروع توصیه‌شده: **بعد از T3.1 MarketsContext** (marketId برای subscribe). + +--- + +## ۱۰. Todo checklist (کپی برای commit/PR) + +``` +فاز ۱ +[x] T1.1 MarketChart → TVChartContainer برای همه quote +[x] T1.2 BFF: حذف CAD→IRT + +فاز ۲ +[x] T2.1 BFF: GET /api/1/markets/catalog +[x] T2.2 BFF: SHAAHO_CURRENCIES → dynamic + +فاز ۳ +[x] T3.1 MarketsContext + useMarkets + api/markets.js +[x] T3.2 MarketListPanel (کامپوننت مشترک) +[x] T3.3 refactor MarketSelectCurrency / MarketSelectTab / MarketDropDown +[x] T3.4 CURRENCY.TYPE fallback + getCurrencyMeta + +فاز ۴ +[x] T4.1 SwitchCurrency داینامیک +[x] T4.2 Landing از catalog +[x] T4.3 datafeed symbols داینامیک +[x] T4.4 MarketChart symbol از context +[x] T4.5 WatchList quote selector +[x] T4.6 Route guard market معتبر + +فاز ۵ +[ ] T5 QA staging + redeploy +``` + +**مرحله بعد (real-time):** [02-rango-websocket-plan.md](./02-rango-websocket-plan.md) + +--- + +## ۱۱. commit message convention + +``` +T1.1: unify market chart on TVChartContainer for all quotes +T2.1: add GET /api/1/markets/catalog from Dena public API +T3.2: replace hardcoded IRTitems/USDTitems with MarketListPanel +``` + +
diff --git a/docs/02-rango-websocket-plan.md b/docs/02-rango-websocket-plan.md new file mode 100644 index 0000000..5216695 --- /dev/null +++ b/docs/02-rango-websocket-plan.md @@ -0,0 +1,366 @@ +
+ +# Rango WebSocket — جایگزینی Polling در Shahoo + +**تاریخ:** 2026-07-19 +**آخرین به‌روزرسانی پیاده‌سازی:** 2026-07-20 +**وابستگی:** [01-dynamic-markets-remediation.md](./01-dynamic-markets-remediation.md) (فاز ۳+ توصیه می‌شود) +**مرجع Gereh:** `Gereh/src/modules/public/ranger/` +**Infra:** Rango 2.6.1 — `quay.io/openware/rango:2.6.1` + +> **وضعیت کد (۲۰۲۶-۰۷-۲۰):** WS-0 → WS-4 پیاده‌سازی شده؛ follow-up: thrashing/refcount، sequence resync، private reconnect، compose shahoo-ranger، setupProxy. +> باقی ops: WS0.3/0.4 staging + Cloudflare، WS5.1/5.3 latency/load. +> Public: `RangerProvider` + `global.tickers` / `ob-inc` / `trades` / `kline-*`. +> Private: BFF `GET /api/1/ranger/credentials` + WS proxy `/api/1/ranger/ws` → Rango private با cookie session. +> Fallback: `REACT_APP_RANGER_ENABLED=false` یا قطع WS → polling قبلی. + +--- + +## ۱. خلاصه اجرایی + +Shahoo امروز **HTTP polling** دارد؛ Gereh از **Rango (Ranger) WebSocket** استفاده می‌کند. هدف: latency کمتر در order book، tickers، trades و (در فاز بعد) balances/orders. + +| معیار | Polling (فعلی) | Rango WS (هدف) | +|-------|----------------|----------------| +| Order book | هر **۵s** | push فوری (`ob-inc` / `update`) | +| Tickers (stats) | هر **۵s** | `global.tickers` | +| Recent trades | هر **۱۰s** | `{market}.trades` | +| Chart realtime | stub (CryptoCompare comment) | `{market}.kline-{period}` | +| بار سرور | N × clients × freq | یک WS per client | +| Auth private | — | `order`, `trade`, `balances` | + +**توصیه:** بعد از **MarketsContext داینامیک** (doc 01 فاز ۳) شروع شود — subscribe به streamها به `marketId` Peatio (مثلاً `btcirt`) وابسته است. + +--- + +## ۲. وضعیت فعلی Shahoo (Polling Map) + +| فایل | interval | API | جایگزین Rango | +|------|----------|-----|----------------| +| `src/features/User/context/index.js` | 5s | `GET /api/1/ohlcvs/stats` | `global.tickers` | +| `OrderBook/RecentTransactionsList/index.js` | 5s | `GET /api/1/orders/orderBook/...` | `{id}.ob-inc` یا `{id}.update` | +| `hook/useGetOdrerBook/useGetOdrerBook.js` | 8s | order book | همان | +| `MarketTable/RecentMarketTrades/index.js` | 10s | trades | `{id}.trades` | +| `MarketRecentTransactions/index.js` | 10s | trades | `{id}.trades` | +| `TVChartContainer/datafeeds/streaming.js` | — | stub (غیرفعال) | `{id}.kline-{period}` | + +**تنظیمات interval:** `src/core/utils/IntervalApiTime.js` + +```js +export const orderBookTime = 5; +export const statsTime = 5; +export const recentMarketTime = 10; +``` + +--- + +## ۳. پروتکل Rango (OpenDAX) + +### ۳.۱. URL اتصال + +``` +wss://{domain}/api/v2/ranger/public/?stream=global.tickers&stream=btcirt.trades&... +wss://{domain}/api/v2/ranger/private/?stream=order&stream=trade&... +``` + +الگوی Gereh (`helpers.ts`): + +```ts +generateSocketURI(baseUrl, streams) => + `${baseUrl}/?stream=${streams.sort().join('&stream=')}` +``` + +### ۳.۲. کانال‌های public + +| Stream | payload | مصرف Shahoo | +|--------|---------|-------------| +| `global.tickers` | `{ btcusdt: { last, open, high, low, volume, ... } }` | `StatsContext` / sidebar قیمت | +| `{market}.trades` | `{ trades: [...] }` | Recent trades | +| `{market}.update` | full order book snapshot | Order book (legacy) | +| `{market}.ob-snap` | snapshot | incremental OB | +| `{market}.ob-inc` | incremental + sequence | Order book (preferred) | +| `{market}.kline-{period}` | OHLCV bar | TradingView streaming | + +`period`: `1h`, `4h`, `1d`, … (مطابق Gereh `periodsMapString`) + +### ۳.۳. کانال‌های private (JWT / session) + +| Stream | مصرف | +|--------|------| +| `order` | open orders update | +| `trade` | history push | +| `balances` | wallet realtime (Finex) | +| `deposit_address` | آدرس واریز | + +### ۳.۴. پیام subscribe/unsubscribe + +```json +{ "event": "subscribe", "streams": ["btcirt.trades"] } +{ "event": "unsubscribe", "streams": ["btcirt.trades"] } +``` + +پاسخ: `{ "success": { "message": "subscribed", "streams": [...] } }` + +--- + +## ۴. شکاف‌های اتصال Shahoo ↔ Rango + +### G1 — URL runtime ندارد 🔴 + +Shahoo `public/config/env.js` فقط `app`, `captcha` دارد — **`rangerUrl` نیست**. + +**راه‌حل:** اضافه به `window.env`: + +```js +window.env.api = { + rangerUrl: 'wss://shahoo.fibitex.com/api/v2/ranger', +}; +``` + +Traefik روی `shahoo.*` باید `/api/v2/ranger` → Rango route داشته باشد (مثل Gereh روی `www.*`). + +### G2 — Auth model متفاوت 🔴 + +| Gereh | Shahoo | +|-------|--------| +| Cookie + Envoy JWT | BFF opaque token + Barong cookies در server-side | +| WS private با session مرورگر | مرورگر JWT Peatio ندارد | + +**گزینه‌ها:** + +| # | رویکرد | + | − | +|---|--------|---|---| +| **A** | Public WS مستقیم از browser؛ private همچنان polling/BFF | سریع MVP | orders/balances realtime نمی‌آید | +| **B** | BFF: `GET /api/1/ranger/credentials` → Peatio JWT از gateway | private channels | endpoint + امنیت | +| **C** | BFF WebSocket proxy | مخفی JWT | پیچیدگی ops | + +**توصیه:** **A برای MVP** (public market data) → **B برای فاز ۲** (private). + +### G3 — نگاشت ticker 🔴 + +Rango: `{ "btcirt": { last, open, ... } }` (market id lowercase) +Shahoo: `statMap["BTC_IRT"]` (uppercase key) + +**راه‌حل:** mapper مشترک در `src/lib/ranger/mapTickers.js` (یا reuse BFF `marketIdToShahooStatKeys` logic در frontend). + +### G4 — Order book format 🟡 + +BFF فعلی: `{ sells: [{unitPrice, size}], buys: [...] }` +Rango `ob-inc`: `{ asks, bids, sequence }` — نیاز adapter مثل Gereh `depthDataIncrement`. + +### G5 — Incremental sequence 🟡 + +Gereh: اگر `sequence` break شود → disconnect + reconnect + REST prefetch. +Shahoo باید همان pattern را پیاده کند. + +### G6 — Cloudflare / Traefik 🟡 + +WebSocket روی staging/production: +- Cloudflare: WebSocket proxy **فعال** +- Traefik: `Upgrade` header pass-through +- تست: `wscat -c "wss://shahoo.fibitex.com/api/v2/ranger/public/?stream=global.tickers"` + +--- + +## ۵. معماری هدف + +``` +┌─────────────────────────────────────────────────────────┐ +│ Shahoo SPA │ +│ RangerContext (singleton WS manager) │ +│ ├─ public: global.tickers + market streams │ +│ ├─ private: (فاز ۲) order, trade │ +│ └─ mappers → StatsContext, OrderBook, Trades, Chart │ +└───────────────────────┬─────────────────────────────────┘ + │ wss://shahoo.fibitex.com/api/v2/ranger + ▼ + Traefik → Rango :8080 + ▲ + RabbitMQ ← Dena pushers +``` + +**Fallback:** اگر WS قطع شد → polling قبلی (feature flag `REACT_APP_RANGER_ENABLED`). + +--- + +## ۶. فازبندی اجرایی + +### فاز WS-0 — زیرساخت (DevOps + config) 🔴 + +| ID | تسک | repo | وضعیت | +|----|------|------|--------| +| **WS0.1** | `rangerUrl` در `public/config/env.js` + Alvand-P template `shahoo.env.js.erb` | Shahoo + Alvand-P | ✅ | +| **WS0.2** | Traefik route `/api/v2/ranger` روی host `shahoo.*` → rango | Alvand-P | ✅ | +| **WS0.3** | تست connectivity: `global.tickers` از staging | QA | ⬜ | +| **WS0.4** | Cloudflare WebSocket برای `shahoo.fibitex.com` | DevOps | ⬜ | + +--- + +### فاز WS-1 — Core client (Shahoo) 🔴 + +| ID | تسک | فایل(ها) | وضعیت | +|----|------|----------|--------| +| **WS1.1** | `src/lib/ranger/rangerClient.js` — connect, reconnect, heartbeat | جدید | ✅ | +| **WS1.2** | `generateSocketURI`, subscribe/unsubscribe | `rangerClient.js` | ✅ | +| **WS1.3** | `RangerContext` + `useRanger()` | `src/context/rangerContext.js` | ✅ | +| **WS1.4** | Feature flag: `REACT_APP_RANGER_ENABLED` + fallback polling | `.env`, hooks | ✅ | +| **WS1.5** | `mapRangerTickersToStatMap` | `src/lib/ranger/mapTickers.js` | ✅ | + +**مرجع پیاده‌سازی:** `Gereh/src/modules/public/ranger/sagas/rangerSaga.ts` (بدون Redux — Context + useReducer). + +--- + +### فاز WS-2 — جایگزینی polling (public) 🔴 + +| ID | تسک | جایگزین | polling حذف‌شده | وضعیت | +|----|------|---------|-----------------|--------| +| **WS2.1** | Tickers → `StatsContext` | `global.tickers` | `User/context` stats loop | ✅ | +| **WS2.2** | Order book | `{id}.ob-inc` + REST prefetch | `RecentTransactionsList`, `useGetOdrerBook` | ✅ | +| **WS2.3** | Recent trades | `{id}.trades` | `RecentMarketTrades`, `MarketRecentTransactions` | ✅ | +| **WS2.4** | Market switch → resubscribe | `rangerSubscribeMarket` pattern | — | ✅ | +| **WS2.5** | Landing tickers (public page) | `global.tickers` | `Landing/pages` getStats | ✅ | + +**WS2.4:** هنگام تغییر route `/market/BTC-IRT` → unsubscribe `ethirt.*` → subscribe `btcirt.*`. + +--- + +### فاز WS-3 — Chart streaming 🟡 + +| ID | تسک | فایل | وضعیت | +|----|------|------|--------| +| **WS3.1** | فعال‌سازی `streaming.js` با Rango kline | `datafeeds/streaming.js` | ✅ | +| **WS3.2** | subscribe `{marketId}.kline-4h` (match TV resolution) | `rangerClient` + datafeed | ✅ | +| **WS3.3** | unsubscribe on symbol change / unmount | datafeed | ✅ | + +--- + +### فاز WS-4 — Private channels 🟡 + +| ID | تسک | repo | وضعیت | +|----|------|------|--------| +| **WS4.1** | BFF: `GET /api/1/ranger/credentials` (+ alias `/token`) + private WS proxy | Shahoo-BFF | ✅ | +| **WS4.2** | اتصال private بعد از login (`connectPrivate`) | Shahoo `rangerContext` | ✅ | +| **WS4.3** | `order` stream → refresh open orders | Market / Orders UI | ✅ | +| **WS4.4** | `trade` stream → history refresh | MarketYourTransaction | ✅ | +| **WS4.5** | `balances` → wallets refetch | Wallets context | ✅ | + +--- + +### فاز WS-5 — QA + Performance 🟢 + +| ID | تسک | وضعیت | +|----|------|--------| +| **WS5.1** | Latency: order book update < 500ms vs polling 5s | ⬜ staging | +| **WS5.2** | Reconnect بعد از sleep/tab background | ✅ (client 1s reconnect) | +| **WS5.3** | 50+ concurrent WS روی staging (load) | ⬜ ops | +| **WS5.4** | Fallback polling وقتی WS down | ✅ | +| **WS5.5** | حذف intervalهای unused از `IntervalApiTime.js` | ⏸️ نگه داشته (fallback) | + +--- + +## ۷. مسیر بحرانی و وابستگی + +``` +doc-01: T3.1 MarketsContext (marketId از catalog) + ↓ +WS0.* (infra + rangerUrl) + ↓ +WS1.* (rangerClient + Context) + ↓ +WS2.1 (tickers) → WS2.2 (orderbook) → WS2.3 (trades) + ↓ +WS3.* (chart) — موازی با WS2.3 + ↓ +WS4.* (private) — بعد از تصمیم auth + ↓ +WS5.* (QA) +``` + +**موازی با doc-01:** WS0 می‌تواند همزمان با فاز ۱ doc-01 (نمودار/CAD) شروع شود. +**WS2+** بعد از `MarketsContext` — market id باید از catalog بیاید نه hardcode. + +--- + +## ۸. تخمین زمان + +| فاز | تخمین | +|-----|--------| +| WS-0 | ۰.۵–۱ روز (DevOps) | +| WS-1 | ۱–۲ روز | +| WS-2 | ۲–۳ روز | +| WS-3 | ۱ روز | +| WS-4 | ۲–۳ روز | +| WS-5 | ۱ روز | +| **جمع MVP (WS-0→2)** | **~۵–۷ روز** | + +--- + +## ۹. تست + +```bash +# connectivity (بعد از WS0) +npx wscat -c "wss://shahoo.fibitex.com/api/v2/ranger/public/?stream=global.tickers" + +# browser DevTools → Network → WS → frames +# انتظار: JSON با کلید btcirt, btcusdt, ... +``` + +**چک UI:** +- [ ] قیمت sidebar بدون 5s delay به‌روز شود +- [ ] order book بعد از trade دیگران فوری update +- [ ] Network tab: polling `/ohlcvs/stats` متوقف (با flag روشن) +- [ ] قطع WS → fallback polling کار کند + +--- + +## ۱۰. Todo checklist + +``` +فاز WS-0 — Infra +[x] WS0.1 rangerUrl در env.js + template +[x] WS0.2 Traefik /api/v2/ranger روی shahoo.* +[ ] WS0.3 تست global.tickers staging +[ ] WS0.4 Cloudflare WebSocket + +فاز WS-1 — Core +[x] WS1.1 rangerClient.js +[x] WS1.2 subscribe/unsubscribe +[x] WS1.3 RangerContext + useRanger +[x] WS1.4 REACT_APP_RANGER_ENABLED + fallback +[x] WS1.5 mapRangerTickersToStatMap + +فاز WS-2 — Public replace polling +[x] WS2.1 tickers → StatsContext +[x] WS2.2 order book ob-inc +[x] WS2.3 recent trades +[x] WS2.4 market switch resubscribe +[x] WS2.5 landing tickers + +فاز WS-3 — Chart +[x] WS3.1 streaming.js + Rango kline +[x] WS3.2 resolution mapping +[x] WS3.3 cleanup on unmount + +فاز WS-4 — Private +[x] WS4.1 BFF ranger credentials + private WS proxy +[x] WS4.2 private WS connect after login +[x] WS4.3 order stream → refresh +[x] WS4.4 trade stream → refresh +[x] WS4.5 balances → wallets refresh + +فاز WS-5 — QA +[x] WS5.2 reconnect + WS5.4 fallback +[ ] WS5.1 latency / WS5.3 load / Cloudflare +``` + +--- + +## ۱۱. commit message convention + +``` +WS1.1: add rangerClient with reconnect +WS2.1: replace stats polling with global.tickers +WS2.2: incremental order book via ob-inc +``` + +
diff --git a/docs/README.md b/docs/README.md new file mode 100644 index 0000000..5c0afe3 --- /dev/null +++ b/docs/README.md @@ -0,0 +1,28 @@ +
+ +# مستندات Shahoo + +| # | عنوان | فایل | اولویت | وضعیت | +|---|--------|------|--------|--------| +| ۱ | اصلاح بازار داینامیک + نمودار + حذف CAD→IRT | [01-dynamic-markets-remediation.md](./01-dynamic-markets-remediation.md) | 🔴 | 🔄 در حال اجرا | +| ۲ | Rango WebSocket — جایگزینی polling | [02-rango-websocket-plan.md](./02-rango-websocket-plan.md) | 🟡 | ⬜ بعد از doc-01 | + +## وضعیت staging + +- **URL:** https://shahoo.fibitex.com/ +- **BFF:** `Shahoo-BFF/` (ریپوی جدا) +- **Real-time:** HTTP polling — Rango در doc-02 + +## ترتیب اجرای پیشنهادی + +``` +01 فاز ۱–۴ (پیاده‌سازی — 2026-07-19) + ↓ +01 فاز ۵ QA + redeploy staging + ↓ +02 Rango WebSocket +``` + +**آخرین به‌روزرسانی doc-01:** 2026-07-19 — فاز ۱–۴ پیاده‌سازی شد؛ فاز ۵ QA باقی‌مانده. + +
diff --git a/jsconfig.json b/jsconfig.json new file mode 100644 index 0000000..84b15cf --- /dev/null +++ b/jsconfig.json @@ -0,0 +1,9 @@ +{ + "compilerOptions": { + "baseUrl": "./", + "paths": { + "@*": ["src/*"] + } + }, + "include": ["src"] +} \ No newline at end of file diff --git a/nginx.conf b/nginx.conf new file mode 100644 index 0000000..f4a2862 --- /dev/null +++ b/nginx.conf @@ -0,0 +1,65 @@ +map $sent_http_content_type $expires { + default off; + text/html 1h; + text/css max; + application/javascript 10m; + ~image/ max; +} + +server { + listen 3000; + server_name localhost; + absolute_redirect off; + expires $expires; + gzip on; + gzip_comp_level 5; + gzip_min_length 256; + gzip_types + application/atom+xml + application/javascript + application/json + application/ld+json + application/manifest+json + application/rss+xml + application/vnd.geo+json + application/vnd.ms-fontobject + application/x-font-ttf + application/x-web-app-manifest+json + application/xhtml+xml + application/xml + font/opentype + image/bmp + image/svg+xml + image/x-icon + text/cache-manifest + text/css + text/plain + text/vcard + text/vnd.rim.location.xloc + text/vtt + text/x-component + text/x-cross-domain-policy; + + location = /health { + access_log off; + default_type text/plain; + return 200 "ok\n"; + } + + # Missing hashed chunks must 404 — never SPA-fallback HTML (breaks browsers with "<"). + location /static/ { + root /usr/share/nginx/html; + try_files $uri =404; + access_log off; + } + + location / { + root /usr/share/nginx/html; + index index.html; + try_files $uri $uri/ /index.html?/$request_uri; + sendfile on; + sendfile_max_chunk 1m; + tcp_nopush on; + gzip_static on; + } +} diff --git a/package.json b/package.json new file mode 100644 index 0000000..1a3fbc1 --- /dev/null +++ b/package.json @@ -0,0 +1,82 @@ +{ + "name": "fibitex", + "version": "0.1.0", + "private": true, + "dependencies": { + "@date-io/jalaali": "^1.3.13", + "@date-io/moment": "^1.3.13", + "@hookform/resolvers": "^1.3.1", + "@material-ui/core": "^4.11.2", + "@material-ui/data-grid": "^4.0.0-alpha.14", + "@material-ui/icons": "^4.11.2", + "@material-ui/lab": "^4.0.0-alpha.57", + "@material-ui/pickers": "^3.2.10", + "@testing-library/jest-dom": "^5.11.8", + "@testing-library/react": "^11.2.2", + "@testing-library/user-event": "^12.6.0", + "axios": "^0.21.1", + "image-upload-react": "^1.4.9", + "jalali-moment": "^3.3.9", + "jss-rtl": "^0.3.0", + "material-ui-dropzone": "^3.5.0", + "material-ui-image": "^3.3.1", + "moment": "^2.29.1", + "moment-jalaali": "^0.9.2", + "prop-types": "^15.7.2", + "qrcode.react": "^1.0.1", + "react": "^17.0.1", + "react-compound-timer": "^1.2.0", + "react-dom": "^17.0.1", + "react-dropzone": "^11.2.4", + "react-dropzone-uploader": "^2.11.0", + "react-google-recaptcha": "^2.1.0", + "react-hook-form": "^6.14.0", + "react-intl": "^5.10.11", + "react-notifications-component": "^2.4.1", + "react-number-format": "^4.4.1", + "react-promise-tracker": "^2.1.0", + "react-router-dom": "^5.2.0", + "react-scripts": "4.0.0", + "react-text-mask": "^5.4.3", + "react-tradingview-widget": "^1.3.2", + "recharts": "^1.8.5", + "web-vitals": "^0.2.4", + "yup": "^0.29.3" + }, + "scripts": { + "start": "react-app-rewired start", + "build": "react-app-rewired build", + "test": "react-scripts test", + "eject": "react-scripts eject", + "check:ranger": "node scripts/check-ranger-mappers.js", + "check:datetime": "node scripts/check-format-display-datetime.js" + }, + "eslintConfig": { + "extends": [ + "react-app", + "react-app/jest" + ] + }, + "browserslist": { + "production": [ + ">0.2%", + "not dead", + "not op_mini all" + ], + "development": [ + "last 1 chrome version", + "last 1 firefox version", + "last 1 safari version" + ] + }, + "devDependencies": { + "customize-cra": "^1.0.0", + "patch-package": "^8.0.1", + "react-app-rewired": "^2.1.8", + "typescript": "~4.4.4" + }, + "resolutions": { + "postcss": "7.0.39", + "postcss-safe-parser": "4.0.2" + } +} diff --git a/public/charting_library/charting_library.min.d.ts b/public/charting_library/charting_library.min.d.ts new file mode 100644 index 0000000..a0c3bd7 --- /dev/null +++ b/public/charting_library/charting_library.min.d.ts @@ -0,0 +1,1520 @@ +/// + +/** + * This is the generic type useful for declaring a nominal type, + * which does not structurally matches with the base type and + * the other types declared over the same base type + * + * Usage: + * @example + * type Index = Nominal; + * // let i: Index = 42; // this fails to compile + * let i: Index = 42 as Index; // OK + * @example + * type TagName = Nominal; + */ +export declare type Nominal = T & { + [Symbol.species]: Name; +}; +export declare const enum ConnectionStatus { + Connected = 1, + Connecting = 2, + Disconnected = 3, + Error = 4 +} +export declare const enum NotificationType { + Error = 0, + Success = 1 +} +export declare const enum OrderStatus { + Canceled = 1, + Filled = 2, + Inactive = 3, + Placing = 4, + Rejected = 5, + Working = 6 +} +export declare const enum OrderStatusFilter { + All = 0, + Canceled = 1, + Filled = 2, + Inactive = 3, + Rejected = 5, + Working = 6 +} +export declare const enum OrderTicketFocusControl { + StopLoss = 1, + StopPrice = 2, + TakeProfit = 3 +} +export declare const enum OrderType { + Limit = 1, + Market = 2, + Stop = 3, + StopLimit = 4 +} +export declare const enum ParentType { + Order = 1, + Position = 2, + Trade = 3 +} +export declare const enum PriceScaleMode { + Normal = 0, + Log = 1, + Percentage = 2, + IndexedTo100 = 3 +} +export declare const enum SeriesStyle { + Bars = 0, + Candles = 1, + Line = 2, + Area = 3, + HeikenAshi = 8, + HollowCandles = 9, + Renko = 4, + Kagi = 5, + PointAndFigure = 6, + LineBreak = 7 +} +export declare const enum Side { + Buy = 1, + Sell = -1 +} +export declare const widget: ChartingLibraryWidgetConstructor; +export declare function version(): string; +export declare type ActionMetaInfo = ActionDescriptionWithCallback | MenuSeparator; +export declare type AvailableSaveloadVersions = '1.0' | '1.1'; +export declare type ChartActionId = 'chartProperties' | 'compareOrAdd' | 'scalesProperties' | 'tmzProperties' | 'paneObjectTree' | 'insertIndicator' | 'symbolSearch' | 'changeInterval' | 'timeScaleReset' | 'chartReset' | 'seriesHide' | 'studyHide' | 'lineToggleLock' | 'lineHide' | 'showLeftAxis' | 'showRightAxis' | 'scaleSeriesOnly' | 'drawingToolbarAction' | 'stayInDrawingModeAction' | 'hideAllMarks' | 'showCountdown' | 'showSeriesLastValue' | 'showSymbolLabelsAction' | 'showStudyLastValue' | 'showStudyPlotNamesAction' | 'undo' | 'redo' | 'paneRemoveAllStudiesDrawingTools'; +export declare type Direction = 'buy' | 'sell'; +export declare type DomeCallback = (data: DOMData) => void; +export declare type DrawingEventType = 'click' | 'move' | 'remove' | 'hide' | 'show'; +export declare type EditObjectDialogObjectType = 'mainSeries' | 'drawing' | 'study' | 'other'; +export declare type EmptyCallback = () => void; +export declare type EntityId = Nominal; +export declare type ErrorCallback = (reason: string) => void; +export declare type FieldDescriptor = TimeFieldDescriptor | SeriesFieldDescriptor | StudyFieldDescriptor; +export declare type GetMarksCallback = (marks: T[]) => void; +export declare type HistoryCallback = (bars: Bar[], meta: HistoryMetadata) => void; +export declare type IBasicDataFeed = IDatafeedChartApi & IExternalDatafeed; +export declare type InputFieldValidator = (value: any) => InputFieldValidatorResult; +export declare type InputFieldValidatorResult = PositiveBaseInputFieldValidatorResult | NegativeBaseInputFieldValidatorResult; +export declare type LanguageCode = 'ar' | 'zh' | 'cs' | 'da_DK' | 'nl_NL' | 'en' | 'et_EE' | 'fr' | 'de' | 'el' | 'he_IL' | 'hu_HU' | 'id_ID' | 'it' | 'ja' | 'ko' | 'fa' | 'pl' | 'pt' | 'ro' | 'ru' | 'sk_SK' | 'es' | 'sv' | 'th' | 'tr' | 'vi'; +export declare type LayoutType = SingleChartLayoutType | MultipleChartsLayoutType; +export declare type MarkConstColors = 'red' | 'green' | 'blue' | 'yellow'; +export declare type MultipleChartsLayoutType = '2h' | '2v' | '2-1' | '3s' | '3h' | '3v' | '4' | '6' | '8' | '1-2' | '3r' | '4h' | '4v' | '4s' | '1-3' | '2-2' | '1-4' | '5s' | '6c' | '8c'; +export declare type OnReadyCallback = (configuration: DatafeedConfiguration) => void; +export declare type Order = OrderWithParent | PlacedOrder; +export declare type OrderDialogCustomField = TextWithCheckboxFieldMetaInfo | CustomComboBoxMetaInfo; +export declare type PineJS = any; +export declare type QuoteData = QuoteOkData | QuoteErrorData; +export declare type QuotesCallback = (data: QuoteData[]) => void; +export declare type ResolutionBackValues = 'D' | 'M'; +export declare type ResolutionString = string; +export declare type ResolveCallback = (symbolInfo: LibrarySymbolInfo) => void; +export declare type RssNewsFeedItem = RssNewsFeedInfo | RssNewsFeedInfo[]; +export declare type SearchSymbolsCallback = (items: SearchSymbolResultItem[]) => void; +export declare type SeriesFormat = 'price' | 'volume'; +export declare type ServerTimeCallback = (serverTime: number) => void; +export declare type ShapePoint = StickedPoint | PricedPoint | TimePoint; +export declare type SingleChartLayoutType = 's'; +export declare type StandardFormatterName = 'date' | 'default' | 'fixed' | 'formatQuantity' | 'formatPrice' | 'formatPriceForexSup' | 'integerSeparated' | 'localDate' | 'percentage' | 'pips' | 'profit' | 'side' | 'status' | 'symbol' | 'type' | 'unixTimeAgo'; +export declare type StudyInputId = Nominal; +export declare type StudyInputValue = string | number | boolean; +export declare type StudyOverrideValueType = string | number | boolean; +export declare type StudyPriceScale = 'left' | 'right' | 'no-scale' | 'as-series'; +export declare type SubscribeBarsCallback = (bar: Bar) => void; +export declare type SupportedLineTools = 'text' | 'anchored_text' | 'note' | 'anchored_note' | 'double_curve' | 'arc' | 'icon' | 'arrow_up' | 'arrow_down' | 'arrow_left' | 'arrow_right' | 'price_label' | 'flag' | 'vertical_line' | 'horizontal_line' | 'cross_line' | 'horizontal_ray' | 'trend_line' | 'info_line' | 'trend_angle' | 'arrow' | 'ray' | 'extended' | 'parallel_channel' | 'disjoint_angle' | 'flat_bottom' | 'pitchfork' | 'schiff_pitchfork_modified' | 'schiff_pitchfork' | 'balloon' | 'inside_pitchfork' | 'pitchfan' | 'gannbox' | 'gannbox_square' | 'gannbox_fixed' | 'gannbox_fan' | 'fib_retracement' | 'fib_trend_ext' | 'fib_speed_resist_fan' | 'fib_timezone' | 'fib_trend_time' | 'fib_circles' | 'fib_spiral' | 'fib_speed_resist_arcs' | 'fib_channel' | 'xabcd_pattern' | 'cypher_pattern' | 'abcd_pattern' | 'callout' | 'triangle_pattern' | '3divers_pattern' | 'head_and_shoulders' | 'fib_wedge' | 'elliott_impulse_wave' | 'elliott_triangle_wave' | 'elliott_triple_combo' | 'elliott_correction' | 'elliott_double_combo' | 'cyclic_lines' | 'time_cycles' | 'sine_line' | 'long_position' | 'short_position' | 'forecast' | 'date_range' | 'price_range' | 'date_and_price_range' | 'bars_pattern' | 'ghost_feed' | 'projection' | 'rectangle' | 'rotated_rectangle' | 'ellipse' | 'triangle' | 'polyline' | 'curve' | 'cursor' | 'dot' | 'arrow_cursor' | 'eraser' | 'measure' | 'zoom' | 'brush'; +export declare type SymbolType = 'stock' | 'index' | 'forex' | 'futures' | 'bitcoin' | 'crypto' | 'undefined' | 'expression' | 'spread' | 'cfd'; +export declare type TableElementFormatFunction = (inputs: TableFormatterInputs) => string | JQuery; +export declare type TextInputFieldValidator = (value: string) => InputFieldValidatorResult; +export declare type ThemeName = 'Light' | 'Dark'; +export declare type Timezone = 'Etc/UTC' | CustomTimezones; +export declare type WatchListSymbolListAddedCallback = (listId: string, symbols: string[]) => void; +export declare type WatchListSymbolListRemovedCallback = (listId: string) => void; +export declare type WatchListSymbolListRenamedCallback = (listId: string, oldName: string, newName: string) => void; +export declare type WatchedValueCallback = (value: T) => void; +export interface AccessList { + type: 'black' | 'white'; + tools: AccessListItem[]; +} +export interface AccessListItem { + name: string; + grayed?: boolean; +} +export interface AccountInfo { + id: string; + name: string; + currency?: string; + currencySign?: string; +} +export interface AccountManagerColumn { + id?: string; + label: string; + className?: string; + formatter?: StandardFormatterName | 'orderSettings' | 'posSettings' | string; + property?: string; + sortProp?: string; + modificationProperty?: string; + notSortable?: boolean; + help?: string; + highlightDiff?: boolean; + fixedWidth?: boolean; + notHideable?: boolean; + hideByDefault?: boolean; +} +export interface AccountManagerInfo { + accountTitle: string; + accountsList?: AccountInfo[]; + account?: IWatchedValue; + summary: AccountManagerSummaryField[]; + customFormatters?: TableElementFormatter[]; + orderColumns: OrderTableColumn[]; + orderColumnsSorting?: SortingParameters; + historyColumns?: AccountManagerColumn[]; + historyColumnsSorting?: SortingParameters; + positionColumns?: AccountManagerColumn[]; + tradeColumns?: AccountManagerColumn[]; + pages: AccountManagerPage[]; + possibleOrderStatuses?: OrderStatus[]; + marginUsed?: IWatchedValue; + contextMenuActions?(contextMenuEvent: JQueryEventObject, activePageActions: ActionMetaInfo[]): Promise; +} +export interface AccountManagerPage { + id: string; + title: string; + tables: AccountManagerTable[]; +} +export interface AccountManagerSummaryField { + text: string; + wValue: IWatchedValueReadonly; + formatter?: string; +} +export interface AccountManagerTable { + id: string; + title?: string; + columns: AccountManagerColumn[]; + initialSorting?: SortingParameters; + changeDelegate: ISubscription<(data: {}) => void>; + flags?: AccountManagerTableFlags; + getData(paginationLastId?: string | number): Promise<{}[]>; +} +export interface AccountManagerTableFlags { + supportPagination?: boolean; +} +export interface ActionDescription { + text?: '-' | string; + separator?: boolean; + shortcut?: string; + tooltip?: string; + checked?: boolean; + checkable?: boolean; + enabled?: boolean; + externalLink?: boolean; + icon?: string; +} +export interface ActionDescriptionWithCallback extends ActionDescription { + action: (a: ActionDescription) => void; +} +export interface Bar { + time: number; + open: number; + high: number; + low: number; + close: number; + volume?: number; +} +export interface BaseInputFieldValidatorResult { + valid: boolean; +} +export interface Brackets { + stopLoss?: number; + takeProfit?: number; +} +export interface BrokerConfigFlags { + showQuantityInsteadOfAmount?: boolean; + supportOrderBrackets?: boolean; + supportPositions?: boolean; + supportPositionBrackets?: boolean; + supportTradeBrackets?: boolean; + supportTrades?: boolean; + supportClosePosition?: boolean; + supportCloseTrade?: boolean; + supportEditAmount?: boolean; + supportLevel2Data?: boolean; + supportDOM?: boolean; + supportMultiposition?: boolean; + supportPLUpdate?: boolean; + supportReducePosition?: boolean; + supportReversePosition?: boolean; + supportMarketOrders?: boolean; + supportLimitOrders?: boolean; + supportStopOrders?: boolean; + supportStopLimitOrders?: boolean; + supportDemoLiveSwitcher?: boolean; + supportMarketBrackets?: boolean; + supportSymbolSearch?: boolean; + supportModifyDuration?: boolean; + supportModifyOrder?: boolean; + supportMargin?: boolean; + calculatePLUsingLast?: boolean; + cancellingBracketCancelsParentOrder?: boolean; + cancellingOnePositionBracketsCancelsOther?: boolean; + requiresFIFOCloseTrades?: boolean; + supportBottomWidget?: boolean; + /** + * @deprecated + */ + supportBrackets?: boolean; +} +export interface BrokerCustomUI { + showOrderDialog?: (order: PreOrder | Order, focus?: OrderTicketFocusControl) => Promise; + showPositionDialog?: (position: Position | Trade, brackets: Brackets, focus?: OrderTicketFocusControl) => Promise; +} +export interface ChartData { + id: string; + name: string; + symbol: string; + resolution: ResolutionString; + content: string; +} +export interface ChartMetaInfo { + id: string; + name: string; + symbol: string; + resolution: ResolutionString; + timestamp: number; +} +export interface ChartingLibraryWidgetConstructor { + new (options: ChartingLibraryWidgetOptions | TradingTerminalWidgetOptions): IChartingLibraryWidget; +} +export interface ChartingLibraryWidgetOptions { + container_id: string; + datafeed: IBasicDataFeed | (IBasicDataFeed & IDatafeedQuotesApi); + interval: ResolutionString; + symbol?: string; + auto_save_delay?: number; + autosize?: boolean; + debug?: boolean; + disabled_features?: string[]; + drawings_access?: AccessList; + enabled_features?: string[]; + fullscreen?: boolean; + height?: number; + library_path?: string; + locale: LanguageCode; + numeric_formatting?: NumericFormattingParams; + saved_data?: object; + studies_access?: AccessList; + study_count_limit?: number; + symbol_search_request_delay?: number; + timeframe?: string; + timezone?: 'exchange' | Timezone; + toolbar_bg?: string; + width?: number; + charts_storage_url?: string; + charts_storage_api_version?: AvailableSaveloadVersions; + client_id?: string; + user_id?: string; + load_last_chart?: boolean; + studies_overrides?: StudyOverrides; + customFormatters?: CustomFormatters; + overrides?: Overrides; + snapshot_url?: string; + preset?: 'mobile'; + time_frames?: TimeFrameItem[]; + custom_css_url?: string; + favorites?: Favorites; + save_load_adapter?: IExternalSaveLoadAdapter; + loading_screen?: LoadingScreenOptions; + settings_adapter?: ISettingsAdapter; + theme?: ThemeName; + custom_indicators_getter?: (PineJS: PineJS) => Promise>; +} +export interface ContextMenuItem { + position: 'top' | 'bottom'; + text: string; + click: EmptyCallback; +} +export interface CreateButtonOptions { + align: 'right' | 'left'; +} +export interface CreateShapeOptions { + shape?: 'arrow_up' | 'arrow_down' | 'flag' | 'vertical_line' | 'horizontal_line'; + text?: string; + lock?: boolean; + disableSelection?: boolean; + disableSave?: boolean; + disableUndo?: boolean; + overrides?: TOverrides; + zOrder?: 'top' | 'bottom'; + showInObjectsTree?: boolean; +} +export interface CreateStudyOptions { + checkLimit?: boolean; + priceScale?: StudyPriceScale; +} +export interface CreateStudyTemplateOptions { + saveInterval?: boolean; +} +export interface CreateTradingPrimitiveOptions { + disableUndo?: boolean; +} +export interface CrossHairMovedEventParams { + time: number; + price: number; +} +export interface CustomComboBoxItem { + text: string; + value: string; +} +export interface CustomComboBoxMetaInfo extends CustomInputFieldMetaInfo { + inputType: 'ComboBox'; + items: CustomComboBoxItem[]; +} +export interface CustomFields { + [key: string]: any; +} +export interface CustomFormatter { + format(date: Date): string; + formatLocal(date: Date): string; +} +export interface CustomFormatters { + timeFormatter: CustomFormatter; + dateFormatter: CustomFormatter; +} +export interface CustomIndicator { + readonly name: string; + readonly metainfo: any; + readonly constructor: any; +} +export interface CustomInputFieldMetaInfo { + inputType: string; + id: string; + title: string; + placeHolder?: string; + value?: any; + validator?: InputFieldValidator; + customInfo?: any; +} +export interface CustomInputFieldsValues { + [fieldId: string]: TextWithCheckboxValue | string | any; +} +export interface DOMData { + snapshot: boolean; + asks: DOMLevel[]; + bids: DOMLevel[]; +} +export interface DOMLevel { + price: number; + volume: number; +} +export interface DatafeedConfiguration { + exchanges?: Exchange[]; + supported_resolutions?: ResolutionString[]; + supports_marks?: boolean; + supports_time?: boolean; + supports_timescale_marks?: boolean; + symbols_types?: DatafeedSymbolType[]; +} +export interface DatafeedQuoteValues { + ch?: number; + chp?: number; + short_name?: string; + exchange?: string; + description?: string; + lp?: number; + ask?: number; + bid?: number; + spread?: number; + open_price?: number; + high_price?: number; + low_price?: number; + prev_close_price?: number; + volume?: number; + original_name?: string; + [valueName: string]: string | number | undefined; +} +export interface DatafeedSymbolType { + name: string; + value: string; +} +export interface DefaultContextMenuActionsParams { +} +export interface DefaultDropdownActionsParams { + showFloatingToolbar?: boolean; + showDOM?: boolean; + showOrderPanel?: boolean; + tradingProperties?: boolean; + selectAnotherBroker?: boolean; + disconnect?: boolean; + showHowToUse?: boolean; +} +export interface DialogParams { + title: string; + body: string; + callback: CallbackType; +} +export interface EditObjectDialogEventParams { + objectType: EditObjectDialogObjectType; + scriptTitle: string; +} +export interface EntityInfo { + id: EntityId; + name: string; +} +export interface ErrorFormatterParseResult extends FormatterParseResult { + error?: string; + res: false; +} +export interface Exchange { + value: string; + name: string; + desc: string; +} +export interface Execution extends CustomFields { + symbol: string; + brokerSymbol?: string; + price: number; + qty: number; + side: Side; + time: number; +} +export interface ExportDataOptions { + from?: number; + to?: number; + includeTime?: boolean; + includeSeries?: boolean; + includedStudies: ReadonlyArray | 'all'; +} +export interface ExportedData { + schema: FieldDescriptor[]; + data: Float64Array[]; +} +export interface Favorites { + intervals: ResolutionString[]; + chartTypes: string[]; +} +export interface FormatterParseResult { + res: boolean; +} +export interface GrayedObject { + type: 'drawing' | 'study'; + name: string; +} +export interface HistoryDepth { + resolutionBack: ResolutionBackValues; + intervalBack: number; +} +export interface HistoryMetadata { + noData: boolean; + nextTime?: number | null; +} +export interface IBrokerCommon { + chartContextMenuActions(context: ITradeContext, options?: DefaultContextMenuActionsParams): Promise; + isTradable(symbol: string): Promise; + connectionStatus(): ConnectionStatus; + orders(): Promise; + positions?(): Promise; + trades?(): Promise; + executions(symbol: string): Promise; + symbolInfo(symbol: string): Promise; + accountInfo(): Promise; + accountManagerInfo(): AccountManagerInfo; + formatter?(symbol: string, alignToMinMove: boolean): Promise; + spreadFormatter?(symbol: string): Promise; + quantityFormatter?(symbol: string): Promise; +} +export interface IBrokerConnectionAdapterFactory { + createDelegate(): IDelegate; + createWatchedValue(value?: T): IWatchedValue; + createPriceFormatter(priceScale: number, minMove: number, fractional: boolean, minMove2: number): IFormatter; +} +export interface IBrokerConnectionAdapterHost { + factory: IBrokerConnectionAdapterFactory; + connectionStatusUpdate(status: ConnectionStatus, message?: string): void; + defaultFormatter(symbol: string, alignToMinMove: boolean): Promise; + numericFormatter(decimalPlaces: number): Promise; + quantityFormatter(decimalPlaces?: number): Promise; + defaultContextMenuActions(context: ITradeContext, params?: DefaultContextMenuActionsParams): Promise; + defaultDropdownMenuActions(options?: Partial): ActionMetaInfo[]; + floatingTradingPanelVisibility(): IWatchedValue; + domPanelVisibility(): IWatchedValue; + orderPanelVisibility(): IWatchedValue; + silentOrdersPlacement(): IWatchedValue; + patchConfig(config: Partial): void; + patchOrderDialogOptions(options: OrderDialogOptions): void; + setDurations(durations: OrderDurationMetaInfo[]): void; + orderUpdate(order: Order, isHistoryUpdate?: boolean): void; + orderPartialUpdate(id: string, orderChanges: Partial): void; + positionUpdate(position: Position, isHistoryUpdate?: boolean): void; + positionPartialUpdate(id: string, positionChanges: Partial): void; + tradeUpdate(trade: Trade, isHistoryUpdate?: boolean): void; + tradePartialUpdate(id: string, tradeChanges: Partial): void; + executionUpdate(execution: Execution, isHistoryUpdate?: boolean): void; + fullUpdate(): void; + realtimeUpdate(symbol: string, data: TradingQuotes): void; + plUpdate(positionId: string, pl: number): void; + pipValueUpdate(symbol: string, pipValues: PipValues): void; + tradePLUpdate(tradeId: string, pl: number): void; + equityUpdate(equity: number): void; + marginAvailableUpdate(marginAvailable: number): void; + domeUpdate(symbol: string, equity: DOMData): void; + showOrderDialog(order: T, handler: (order: T) => Promise, focus?: OrderTicketFocusControl, options?: OrderDialogOptions): Promise; + showCancelOrderDialog(orderId: string, handler: () => Promise): Promise; + showCancelMultipleOrdersDialog(symbol: string, side: Side | undefined, qty: number, handler: () => Promise): Promise; + showCancelBracketsDialog(orderId: string, handler: () => Promise): Promise; + showCancelMultipleBracketsDialog(orderId: string, handler: () => Promise): Promise; + showClosePositionDialog(positionId: string, handler: () => Promise): Promise; + showReversePositionDialog(position: Position, handler: () => Promise): Promise; + showPositionBracketsDialog(position: Position | Trade, brackets: Brackets, focus: OrderTicketFocusControl | null, handler: (brackets: Brackets) => Promise): Promise; + showNotification(title: string, text: string, notificationType?: NotificationType): void; + setButtonDropdownActions(descriptions: ActionMetaInfo[]): void; + activateBottomWidget(): Promise; + showTradingProperties(): void; + suggestedQty(): SuggestedQuantity; + symbolSnapshot(symbol: string): Promise; + showMessageDialog(caption: string, message: string): void; +} +export interface IBrokerTerminal extends IBrokerWithoutRealtime { + subscribeRealtime(symbol: string): void; + unsubscribeRealtime(symbol: string): void; +} +export interface IBrokerWithoutRealtime extends IBrokerCommon { + subscribeDOME?(symbol: string): void; + unsubscribeDOME?(symbol: string): void; + placeOrder(order: PreOrder): Promise; + modifyOrder(order: Order): Promise; + cancelOrder(orderId: string): Promise; + cancelOrders(symbol: string, side: Side | undefined, ordersIds: string[]): Promise; + reversePosition?(positionId: string): Promise; + closePosition?(positionId: string): Promise; + closeTrade?(tradeId: string): Promise; + editPositionBrackets?(positionId: string, brackets?: Brackets): Promise; + editTradeBrackets?(tradeId: string, brackets?: Brackets): Promise; + /** + * @deprecated Brokers should always send PL and equity updates + */ + subscribePL?(positionId: string): void; + subscribeEquity?(): void; + subscribeMarginAvailable?(symbol: string): void; + subscribePipValue?(symbol: string): void; + unsubscribePipValue?(symbol: string): void; + unsubscribeMarginAvailable?(symbol: string): void; + /** + * @deprecated + */ + unsubscribePL?(positionId: string): void; + unsubscribeEquity?(): void; +} +export interface IChartWidgetApi { + onDataLoaded(): ISubscription<() => void>; + onSymbolChanged(): ISubscription<() => void>; + onIntervalChanged(): ISubscription<(interval: ResolutionString, timeFrameParameters: { + timeframe?: string; + }) => void>; + onVisibleRangeChanged(): ISubscription<() => void>; + dataReady(callback: () => void): boolean; + crossHairMoved(callback: (params: CrossHairMovedEventParams) => void): void; + setVisibleRange(range: VisibleTimeRange, options?: SetVisibleRangeOptions): Promise; + setSymbol(symbol: string, callback: () => void): void; + setResolution(resolution: ResolutionString, callback: () => void): void; + resetData(): void; + executeActionById(actionId: ChartActionId): void; + getCheckableActionState(actionId: ChartActionId): boolean; + refreshMarks(): void; + clearMarks(): void; + setChartType(type: SeriesStyle): void; + getAllShapes(): EntityInfo[]; + getAllStudies(): EntityInfo[]; + /** + * @deprecated Use shape/study API instead ([getStudyById] / [getShapeById]) + */ + setEntityVisibility(entityId: EntityId, isVisible: boolean): void; + createStudy(name: string, forceOverlay: boolean, lock?: boolean, inputs?: TStudyInputValue[], overrides?: TOverrides, options?: CreateStudyOptions): Promise; + getStudyById(entityId: EntityId): IStudyApi; + getSeries(): ISeriesApi; + createShape(point: ShapePoint, options: CreateShapeOptions): EntityId | null; + createMultipointShape(points: ShapePoint[], options: CreateShapeOptions): EntityId | null; + getShapeById(entityId: EntityId): ILineDataSourceApi; + removeEntity(entityId: EntityId): void; + removeAllShapes(): void; + removeAllStudies(): void; + selection(): ISelectionApi; + showPropertiesDialog(studyId: EntityId): void; + createStudyTemplate(options: CreateStudyTemplateOptions): object; + applyStudyTemplate(template: object): void; + createOrderLine(options: CreateTradingPrimitiveOptions): IOrderLineAdapter; + createPositionLine(options: CreateTradingPrimitiveOptions): IPositionLineAdapter; + createExecutionShape(options: CreateTradingPrimitiveOptions): IExecutionLineAdapter; + symbol(): string; + symbolExt(): SymbolExt; + resolution(): ResolutionString; + getVisibleRange(): VisibleTimeRange; + /** + * @deprecated Use Price Scale API instead + */ + getVisiblePriceRange(): VisiblePriceRange; + scrollPosition(): number; + defaultScrollPosition(): number; + priceFormatter(): IFormatter; + chartType(): SeriesStyle; + setTimezone(timezone: 'exchange' | Timezone): void; + getTimezone(): 'exchange' | Timezone; + getPanes(): IPaneApi[]; + exportData(options?: ExportDataOptions): Promise; + canZoomOut(): boolean; + zoomOut(): void; + setZoomEnabled(enabled: boolean): void; + setScrollEnabled(enabled: boolean): void; +} +export interface IChartingLibraryWidget { + headerReady(): Promise; + onChartReady(callback: EmptyCallback): void; + onGrayedObjectClicked(callback: (obj: GrayedObject) => void): void; + onShortcut(shortCut: string, callback: EmptyCallback): void; + subscribe(event: EventName, callback: SubscribeEventsMap[EventName]): void; + unsubscribe(event: EventName, callback: SubscribeEventsMap[EventName]): void; + chart(index?: number): IChartWidgetApi; + setLanguage(lang: LanguageCode): void; + setSymbol(symbol: string, interval: ResolutionString, callback: EmptyCallback): void; + remove(): void; + closePopupsAndDialogs(): void; + selectLineTool(linetool: SupportedLineTools): void; + selectedLineTool(): SupportedLineTools; + save(callback: (state: object) => void): void; + load(state: object): void; + getSavedCharts(callback: (chartRecords: SaveLoadChartRecord[]) => void): void; + loadChartFromServer(chartRecord: SaveLoadChartRecord): void; + saveChartToServer(onComplete?: EmptyCallback, onFail?: EmptyCallback, options?: SaveChartToServerOptions): void; + removeChartFromServer(chartId: string, onCompleteCallback: EmptyCallback): void; + onContextMenu(callback: (unixTime: number, price: number) => ContextMenuItem[]): void; + createButton(options?: CreateButtonOptions): HTMLElement; + showNoticeDialog(params: DialogParams<() => void>): void; + showConfirmDialog(params: DialogParams<(confirmed: boolean) => void>): void; + showLoadChartDialog(): void; + showSaveAsChartDialog(): void; + symbolInterval(): SymbolIntervalResult; + mainSeriesPriceFormatter(): IFormatter; + getIntervals(): string[]; + getStudiesList(): string[]; + addCustomCSSFile(url: string): void; + applyOverrides(overrides: TOverrides): void; + applyStudiesOverrides(overrides: object): void; + watchList(): WatchListApi; + activeChart(): IChartWidgetApi; + chartsCount(): number; + layout(): LayoutType; + setLayout(layout: LayoutType): void; + layoutName(): string; + changeTheme(themeName: ThemeName): void; + takeScreenshot(): void; + lockAllDrawingTools(): IWatchedValue; + hideAllDrawingTools(): IWatchedValue; + magnetEnabled(): IWatchedValue; + magnetMode(): IWatchedValue; + undoRedoState(): UndoRedoState; +} +export interface IDatafeedChartApi { + calculateHistoryDepth?(resolution: ResolutionString, resolutionBack: ResolutionBackValues, intervalBack: number): HistoryDepth | undefined; + getMarks?(symbolInfo: LibrarySymbolInfo, from: number, to: number, onDataCallback: GetMarksCallback, resolution: ResolutionString): void; + getTimescaleMarks?(symbolInfo: LibrarySymbolInfo, from: number, to: number, onDataCallback: GetMarksCallback, resolution: ResolutionString): void; + /** + * This function is called if configuration flag supports_time is set to true when chart needs to know the server time. + * The charting library expects callback to be called once. + * The time is provided without milliseconds. Example: 1445324591. It is used to display Countdown on the price scale. + */ + getServerTime?(callback: ServerTimeCallback): void; + searchSymbols(userInput: string, exchange: string, symbolType: string, onResult: SearchSymbolsCallback): void; + resolveSymbol(symbolName: string, onResolve: ResolveCallback, onError: ErrorCallback): void; + getBars(symbolInfo: LibrarySymbolInfo, resolution: ResolutionString, rangeStartDate: number, rangeEndDate: number, onResult: HistoryCallback, onError: ErrorCallback, isFirstCall: boolean): void; + subscribeBars(symbolInfo: LibrarySymbolInfo, resolution: ResolutionString, onTick: SubscribeBarsCallback, listenerGuid: string, onResetCacheNeededCallback: () => void): void; + unsubscribeBars(listenerGuid: string): void; + subscribeDepth?(symbol: string, callback: DomeCallback): string; + unsubscribeDepth?(subscriberUID: string): void; +} +export interface IDatafeedQuotesApi { + getQuotes(symbols: string[], onDataCallback: QuotesCallback, onErrorCallback: (msg: string) => void): void; + subscribeQuotes(symbols: string[], fastSymbols: string[], onRealtimeCallback: QuotesCallback, listenerGUID: string): void; + unsubscribeQuotes(listenerGUID: string): void; +} +export interface IDelegate extends ISubscription { + fire: TFunc; +} +export interface IExecutionLineAdapter { + remove(): void; + getPrice(): number; + setPrice(value: number): this; + getTime(): number; + setTime(value: number): this; + getDirection(): Direction; + setDirection(value: Direction): this; + getText(): string; + setText(value: string): this; + getTooltip(): string; + setTooltip(value: string): this; + getArrowHeight(): number; + setArrowHeight(value: number): this; + getArrowSpacing(): number; + setArrowSpacing(value: number): this; + getFont(): string; + setFont(value: string): this; + getTextColor(): string; + setTextColor(value: string): this; + getArrowColor(): string; + setArrowColor(value: string): this; +} +export interface IExternalDatafeed { + onReady(callback: OnReadyCallback): void; +} +export interface IExternalSaveLoadAdapter { + getAllCharts(): Promise; + removeChart(chartId: string): Promise; + saveChart(chartData: ChartData): Promise; + getChartContent(chartId: string): Promise; + getAllStudyTemplates(): Promise; + removeStudyTemplate(studyTemplateInfo: StudyTemplateMetaInfo): Promise; + saveStudyTemplate(studyTemplateData: StudyTemplateData): Promise; + getStudyTemplateContent(studyTemplateInfo: StudyTemplateMetaInfo): Promise; +} +export interface IFormatter { + format(value: any): string; + parse?(value: string): ErrorFormatterParseResult | SuccessFormatterParseResult; +} +export interface ILineDataSourceApi { + isSelectionEnabled(): boolean; + setSelectionEnabled(enable: boolean): void; + isSavingEnabled(): boolean; + setSavingEnabled(enable: boolean): void; + isShowInObjectsTreeEnabled(): boolean; + setShowInObjectsTreeEnabled(enabled: boolean): void; + isUserEditEnabled(): boolean; + setUserEditEnabled(enabled: boolean): void; + bringToFront(): void; + sendToBack(): void; + getProperties(): object; + setProperties(newProperties: object): void; + getPoints(): PricedPoint[]; + setPoints(points: ShapePoint[]): void; +} +export interface IOrderLineAdapter { + remove(): void; + onModify(callback: () => void): this; + onModify(data: T, callback: (data: T) => void): this; + onMove(callback: () => void): this; + onMove(data: T, callback: (data: T) => void): this; + onCancel(callback: () => void): this; + onCancel(data: T, callback: (data: T) => void): this; + getPrice(): number; + setPrice(value: number): this; + getText(): string; + setText(value: string): this; + getTooltip(): string; + setTooltip(value: string): this; + getModifyTooltip(): string; + setModifyTooltip(value: string): this; + getCancelTooltip(): string; + setCancelTooltip(value: string): this; + getQuantity(): string; + setQuantity(value: string): this; + getEditable(): boolean; + setEditable(value: boolean): this; + getExtendLeft(): boolean; + setExtendLeft(value: boolean): this; + getLineLength(): number; + setLineLength(value: number): this; + getLineStyle(): number; + setLineStyle(value: number): this; + getLineWidth(): number; + setLineWidth(value: number): this; + getBodyFont(): string; + setBodyFont(value: string): this; + getQuantityFont(): string; + setQuantityFont(value: string): this; + getLineColor(): string; + setLineColor(value: string): this; + getBodyBorderColor(): string; + setBodyBorderColor(value: string): this; + getBodyBackgroundColor(): string; + setBodyBackgroundColor(value: string): this; + getBodyTextColor(): string; + setBodyTextColor(value: string): this; + getQuantityBorderColor(): string; + setQuantityBorderColor(value: string): this; + getQuantityBackgroundColor(): string; + setQuantityBackgroundColor(value: string): this; + getQuantityTextColor(): string; + setQuantityTextColor(value: string): this; + getCancelButtonBorderColor(): string; + setCancelButtonBorderColor(value: string): this; + getCancelButtonBackgroundColor(): string; + setCancelButtonBackgroundColor(value: string): this; + getCancelButtonIconColor(): string; + setCancelButtonIconColor(value: string): this; +} +export interface IPaneApi { + hasMainSeries(): boolean; + getLeftPriceScales(): ReadonlyArray; + getRightPriceScales(): ReadonlyArray; + getMainSourcePriceScale(): IPriceScaleApi | null; + getHeight(): number; + setHeight(height: number): void; + moveTo(paneIndex: number): void; + paneIndex(): number; +} +export interface IPositionLineAdapter { + remove(): void; + onClose(callback: () => void): this; + onClose(data: T, callback: (data: T) => void): this; + onModify(callback: () => void): this; + onModify(data: T, callback: (data: T) => void): this; + onReverse(callback: () => void): this; + onReverse(data: T, callback: (data: T) => void): this; + getPrice(): number; + setPrice(value: number): this; + getText(): string; + setText(value: string): this; + getTooltip(): string; + setTooltip(value: string): this; + getProtectTooltip(): string; + setProtectTooltip(value: string): this; + getCloseTooltip(): string; + setCloseTooltip(value: string): this; + getReverseTooltip(): string; + setReverseTooltip(value: string): this; + getQuantity(): string; + setQuantity(value: string): this; + getExtendLeft(): boolean; + setExtendLeft(value: boolean): this; + getLineLength(): number; + setLineLength(value: number): this; + getLineStyle(): number; + setLineStyle(value: number): this; + getLineWidth(): number; + setLineWidth(value: number): this; + getBodyFont(): string; + setBodyFont(value: string): this; + getQuantityFont(): string; + setQuantityFont(value: string): this; + getLineColor(): string; + setLineColor(value: string): this; + getBodyBorderColor(): string; + setBodyBorderColor(value: string): this; + getBodyBackgroundColor(): string; + setBodyBackgroundColor(value: string): this; + getBodyTextColor(): string; + setBodyTextColor(value: string): this; + getQuantityBorderColor(): string; + setQuantityBorderColor(value: string): this; + getQuantityBackgroundColor(): string; + setQuantityBackgroundColor(value: string): this; + getQuantityTextColor(): string; + setQuantityTextColor(value: string): this; + getReverseButtonBorderColor(): string; + setReverseButtonBorderColor(value: string): this; + getReverseButtonBackgroundColor(): string; + setReverseButtonBackgroundColor(value: string): this; + getReverseButtonIconColor(): string; + setReverseButtonIconColor(value: string): this; + getCloseButtonBorderColor(): string; + setCloseButtonBorderColor(value: string): this; + getCloseButtonBackgroundColor(): string; + setCloseButtonBackgroundColor(value: string): this; + getCloseButtonIconColor(): string; + setCloseButtonIconColor(value: string): this; +} +export interface IPriceScaleApi { + getMode(): PriceScaleMode; + setMode(newMode: PriceScaleMode): void; + isInverted(): boolean; + setInverted(isInverted: boolean): void; + getVisiblePriceRange(): VisiblePriceRange | null; + setVisiblePriceRange(range: VisiblePriceRange): void; +} +export interface ISelectionApi { + add(entities: EntityId[]): void; + set(entities: EntityId[]): void; + remove(entities: EntityId[]): void; + contains(entity: EntityId): boolean; + allSources(): EntityId[]; + isEmpty(): boolean; + clear(): void; + onChanged(): ISubscription<() => void>; +} +export interface ISeriesApi { + isUserEditEnabled(): boolean; + setUserEditEnabled(enabled: boolean): void; + mergeUp(): void; + mergeDown(): void; + unmergeUp(): void; + unmergeDown(): void; + detachToRight(): void; + detachToLeft(): void; + detachNoScale(): void; + moveToOtherSourceScale(entityId: EntityId): void; + isVisible(): boolean; + setVisible(visible: boolean): void; + bringToFront(): void; + sendToBack(): void; + entityId(): EntityId; +} +export interface ISettingsAdapter { + initialSettings?: InitialSettingsMap; + setValue(key: string, value: string): void; + removeValue(key: string): void; +} +export interface IStudyApi { + isUserEditEnabled(): boolean; + setUserEditEnabled(enabled: boolean): void; + getInputsInfo(): StudyInputInfo[]; + getInputValues(): StudyInputValueItem[]; + setInputValues(values: StudyInputValueItem[]): void; + mergeUp(): void; + mergeDown(): void; + unmergeUp(): void; + unmergeDown(): void; + changePriceScale(newPriceScale: StudyPriceScale): void; + isVisible(): boolean; + setVisible(visible: boolean): void; + bringToFront(): void; + sendToBack(): void; + applyOverrides(overrides: TOverrides): void; +} +export interface ISubscription { + subscribe(obj: object | null, member: TFunc, singleshot?: boolean): void; + unsubscribe(obj: object | null, member: TFunc): void; + unsubscribeAll(obj: object | null): void; +} +export interface ITradeContext { + symbol: string; + displaySymbol: string; + value: number | null; + formattedValue: string; + last: number; +} +export interface IWatchedValue extends IWatchedValueReadonly { + value(): T; + setValue(value: T, forceUpdate?: boolean): void; + subscribe(callback: WatchedValueCallback, options?: WatchedValueSubscribeOptions): void; + unsubscribe(callback?: WatchedValueCallback | null): void; +} +export interface IWatchedValueReadonly { + value(): T; + subscribe(callback: (value: T) => void, options?: WatchedValueSubscribeOptions): void; + unsubscribe(callback?: ((value: T) => void) | null): void; +} +export interface InitialSettingsMap { + [key: string]: string; +} +export interface InstrumentInfo { + qty: QuantityMetainfo; + pipValue: number; + pipSize: number; + minTick: number; + lotSize?: number; + type?: SymbolType; + brokerSymbol?: string; + description: string; + domVolumePrecision?: number; + leverage?: string; + marginRate?: number; +} +export interface IsTradableResult { + tradable: boolean; + reason?: string; +} +export interface LibrarySymbolInfo { + /** + * Symbol Name + */ + name: string; + full_name: string; + base_name?: [string]; + /** + * Unique symbol id + */ + ticker?: string; + description: string; + type: string; + /** + * @example "1700-0200" + */ + session: string; + /** + * Traded exchange + * @example "NYSE" + */ + exchange: string; + listed_exchange: string; + timezone: Timezone; + /** + * Prices format: "price" or "volume" + */ + format: SeriesFormat; + /** + * Code (Tick) + * @example 8/16/.../256 (1/8/100 1/16/100 ... 1/256/100) or 1/10/.../10000000 (1 0.1 ... 0.0000001) + */ + pricescale: number; + /** + * The number of units that make up one tick. + * @example For example, U.S. equities are quotes in decimals, and tick in decimals, and can go up +/- .01. So the tick increment is 1. But the e-mini S&P futures contract, though quoted in decimals, goes up in .25 increments, so the tick increment is 25. (see also Tick Size) + */ + minmov: number; + fractional?: boolean; + /** + * @example Quarters of 1/32: pricescale=128, minmovement=1, minmovement2=4 + */ + minmove2?: number; + /** + * false if DWM only + */ + has_intraday?: boolean; + /** + * An array of resolutions which should be enabled in resolutions picker for this symbol. + */ + supported_resolutions: ResolutionString[]; + /** + * @example (for ex.: "1,5,60") - only these resolutions will be requested, all others will be built using them if possible + */ + intraday_multipliers?: string[]; + has_seconds?: boolean; + /** + * It is an array containing seconds resolutions (in seconds without a postfix) the datafeed builds by itself. + */ + seconds_multipliers?: string[]; + has_daily?: boolean; + has_weekly_and_monthly?: boolean; + has_empty_bars?: boolean; + force_session_rebuild?: boolean; + has_no_volume?: boolean; + /** + * Integer showing typical volume value decimal places for this symbol + */ + volume_precision?: number; + data_status?: 'streaming' | 'endofday' | 'pulsed' | 'delayed_streaming'; + /** + * Boolean showing whether this symbol is expired futures contract or not. + */ + expired?: boolean; + /** + * Unix timestamp of expiration date. + */ + expiration_date?: number; + sector?: string; + industry?: string; + currency_code?: string; +} +export interface LoadingScreenOptions { + foregroundColor?: string; + backgroundColor?: string; +} +export interface Mark { + id: string | number; + time: number; + color: MarkConstColors | MarkCustomColor; + text: string; + label: string; + labelFontColor: string; + minSize: number; +} +export interface MarkCustomColor { + color: string; + background: string; +} +export interface MenuSeparator extends ActionDescription { + separator: boolean; +} +export interface MouseEventParams { + clientX: number; + clientY: number; + pageX: number; + pageY: number; + screenX: number; + screenY: number; +} +export interface NegativeBaseInputFieldValidatorResult extends BaseInputFieldValidatorResult { + valid: false; + errorMessage: string; +} +export interface NewsItem { + fullDescription: string; + link?: string; + published: number; + shortDescription?: string; + source: string; + title: string; +} +export interface NewsProvider { + is_news_generic?: boolean; + get_news(symbol: string, callback: (items: NewsItem[]) => void): void; +} +export interface NumericFormattingParams { + decimal_sign: string; +} +export interface OrderDialogOptions { + customFields?: OrderDialogCustomField[]; +} +export interface OrderDuration { + /** + * type is OrderDurationMetaInfo.value + */ + type: string; + datetime?: number; +} +export interface OrderDurationMetaInfo { + hasDatePicker?: boolean; + hasTimePicker?: boolean; + default?: boolean; + name: string; + value: string; +} +export interface OrderTableColumn extends AccountManagerColumn { + supportedStatusFilters?: OrderStatusFilter[]; +} +export interface OrderWithParent extends PlacedOrder { + parentId: string; + parentType: ParentType; +} +export interface Overrides { + [key: string]: string | number | boolean; +} +export interface PipValues { + buyPipValue: number; + sellPipValue: number; +} +export interface PlacedOrder extends PreOrder, CustomFields { + id: string; + filledQty?: number; + avgPrice?: number; + updateTime?: number; /** unix timestamp in milliseconds */ + takeProfit?: number; + stopLoss?: number; + type: OrderType; + side: Side; + status: OrderStatus; +} +export interface Position { + id: string; + symbol: string; + brokerSymbol?: string; + qty: number; + side: Side; + avgPrice: number; + [key: string]: any; +} +export interface PositiveBaseInputFieldValidatorResult extends BaseInputFieldValidatorResult { + valid: true; +} +export interface PreOrder { + symbol: string; + brokerSymbol?: string; + type?: OrderType; + side?: Side; + qty: number; + status?: OrderStatus; + stopPrice?: number; + limitPrice?: number; + stopLoss?: number; + takeProfit?: number; + duration?: OrderDuration; + customFields?: CustomInputFieldsValues; +} +export interface PricedPoint extends TimePoint { + price: number; +} +export interface QuantityMetainfo { + min: number; + max: number; + step: number; + default?: number; +} +export interface QuoteErrorData { + s: 'error'; + n: string; + v: object; +} +export interface QuoteOkData { + s: 'ok'; + n: string; + v: DatafeedQuoteValues; +} +export interface QuotesBase { + change: number; + change_percent: number; + last_price: number; + fractional: boolean; + minmov: number; + minmove2: number; + pricescale: number; + description: string; +} +export interface RestBrokerMetaInfo { + url: string; + access_token: string; +} +export interface RssNewsFeedInfo { + url: string; + name: string; +} +export interface RssNewsFeedParams { + default: RssNewsFeedItem; + [symbolType: string]: RssNewsFeedItem; +} +export interface SaveChartToServerOptions { + chartName?: string; + defaultChartName?: string; +} +export interface SaveLoadChartRecord { + id: string; + name: string; + image_url: string; + modified_iso: number; + short_symbol: string; + interval: ResolutionString; +} +export interface SearchSymbolResultItem { + symbol: string; + full_name: string; + description: string; + exchange: string; + ticker: string; + type: string; +} +export interface SeriesFieldDescriptor { + type: 'value'; + sourceType: 'series'; + plotTitle: string; +} +export interface SetVisibleRangeOptions { + applyDefaultRightMargin?: boolean; + percentRightMargin?: number; +} +export interface SingleBrokerMetaInfo { + configFlags: BrokerConfigFlags; + customNotificationFields?: string[]; + durations?: OrderDurationMetaInfo[]; + orderDialogOptions?: OrderDialogOptions; + customUI?: BrokerCustomUI; +} +export interface SortingParameters { + columnId: string; + asc?: boolean; +} +export interface StickedPoint extends TimePoint { + channel: 'open' | 'high' | 'low' | 'close'; +} +export interface StudyFieldDescriptor { + type: 'value'; + sourceType: 'study'; + sourceId: string; + sourceTitle: string; + plotTitle: string; +} +export interface StudyInputInfo { + id: StudyInputId; + name: string; + type: string; + localizedName: string; +} +export interface StudyInputValueItem { + id: StudyInputId; + value: StudyInputValue; +} +export interface StudyOrDrawingAddedToChartEventParams { + value: string; +} +export interface StudyOverrides { + [key: string]: StudyOverrideValueType; +} +export interface StudyTemplateData { + name: string; + content: string; +} +export interface StudyTemplateMetaInfo { + name: string; +} +export interface SubscribeEventsMap { + toggle_sidebar: (isHidden: boolean) => void; + indicators_dialog: EmptyCallback; + toggle_header: (isHidden: boolean) => void; + edit_object_dialog: (params: EditObjectDialogEventParams) => void; + chart_load_requested: (savedData: object) => void; + chart_loaded: EmptyCallback; + mouse_down: (params: MouseEventParams) => void; + mouse_up: (params: MouseEventParams) => void; + drawing: (params: StudyOrDrawingAddedToChartEventParams) => void; + study: (params: StudyOrDrawingAddedToChartEventParams) => void; + undo: EmptyCallback; + redo: EmptyCallback; + undoRedoStackChanged: (state: UndoRedoState) => void; + reset_scales: EmptyCallback; + compare_add: EmptyCallback; + add_compare: EmptyCallback; + 'load_study template': EmptyCallback; + onTick: (tick: Bar) => void; + onAutoSaveNeeded: EmptyCallback; + onScreenshotReady: (url: string) => void; + onMarkClick: (markId: Mark['id']) => void; + onTimescaleMarkClick: (markId: TimescaleMark['id']) => void; + onSelectedLineToolChanged: EmptyCallback; + layout_about_to_be_changed: (newLayoutType: LayoutType) => void; + layout_changed: EmptyCallback; + activeChartChanged: (chartIndex: number) => void; + drawing_event: (soursceId: string, drawingEventType: DrawingEventType) => void; +} +export interface SuccessFormatterParseResult extends FormatterParseResult { + res: true; + suggest?: string; +} +export interface SuggestedQuantity { + changed: IDelegate<(symbol: string) => void>; + value(symbol: string): Promise; + setValue(symbol: string, value: number): void; +} +export interface SymbolExt { + symbol: string; + full_name: string; + exchange: string; + description: string; + type: string; +} +export interface SymbolIntervalResult { + symbol: string; + interval: ResolutionString; +} +export interface TableElementFormatter { + name: string; + format: TableElementFormatFunction; +} +export interface TableFormatterInputs { + value: number | string | Side | OrderType | OrderStatus; + prevValue?: number | undefined; + row: TableRow; + $container: JQuery; + priceFormatter?: IFormatter; +} +export interface TableRow { + priceFormatter?: IFormatter; + [name: string]: any; +} +export interface TextWithCheckboxFieldCustomInfo { + checkboxTitle: string; + asterix?: boolean; +} +export interface TextWithCheckboxFieldMetaInfo extends CustomInputFieldMetaInfo { + inputType: 'TextWithCheckBox'; + value: TextWithCheckboxValue; + customInfo: TextWithCheckboxFieldCustomInfo; + validator?: TextInputFieldValidator; +} +export interface TextWithCheckboxValue { + text: string; + checked: boolean; +} +export interface TimeFieldDescriptor { + type: 'time'; +} +export interface TimeFrameItem { + text: string; + resolution: ResolutionString; + description?: string; + title?: string; +} +export interface TimePoint { + time: number; +} +export interface TimescaleMark { + id: string | number; + time: number; + color: MarkConstColors | string; + label: string; + tooltip: string[]; +} +export interface Trade extends CustomFields { + id: string; + date: number; + symbol: string; + brokerSymbol?: string; + qty: number; + side: Side; + price: number; +} +export interface TradingCustomization { + position: Overrides; + order: Overrides; +} +export interface TradingQuotes { + trade?: number; + size?: number; + bid?: number; + bid_size?: number; + ask?: number; + ask_size?: number; + spread?: number; +} +export interface TradingTerminalWidgetOptions extends ChartingLibraryWidgetOptions { + brokerConfig?: SingleBrokerMetaInfo; + restConfig?: RestBrokerMetaInfo; + widgetbar?: WidgetBarParams; + rss_news_feed?: RssNewsFeedParams; + news_provider?: NewsProvider; + trading_customization?: TradingCustomization; + brokerFactory?(host: IBrokerConnectionAdapterHost): IBrokerWithoutRealtime | IBrokerTerminal; +} +export interface UndoRedoState { + enableUndo: boolean; + undoText: string | undefined; + enableRedo: boolean; + redoText: string | undefined; +} +export interface VisiblePriceRange { + from: number; + to: number; +} +export interface VisibleTimeRange { + from: number; + to: number; +} +export interface WatchListApi { + defaultList(): string[]; + getList(id?: string): string[] | null; + getAllLists(): WatchListSymbolListMap | null; + getActiveListId(): string | null; + setList(symbols: string[]): void; + updateList(listId: string, symbols: string[]): void; + renameList(listId: string, newName: string): void; + createList(listName?: string, symbols?: string[]): WatchListSymbolList | null; + saveList(list: WatchListSymbolList): boolean; + deleteList(listId: string): void; + onListChanged(): ISubscription; + onActiveListChanged(): ISubscription; + onListAdded(): ISubscription; + onListRemoved(): ISubscription; + onListRenamed(): ISubscription; +} +export interface WatchListSymbolList extends WatchListSymbolListData { + id: string; +} +export interface WatchListSymbolListData { + symbols: string[]; + title: string; +} +export interface WatchListSymbolListMap { + [listId: string]: WatchListSymbolList; +} +export interface WatchedValueSubscribeOptions { + once?: boolean; + callWithLast?: boolean; +} +export interface WidgetBarParams { + details?: boolean; + watchlist?: boolean; + news?: boolean; + watchlist_settings?: { + default_symbols: string[]; + readonly?: boolean; + }; +} +export type CustomTimezones = 'Africa/Cairo' | 'Africa/Johannesburg' | 'Africa/Lagos' | 'America/Argentina/Buenos_Aires' | 'America/Bogota' | 'America/Caracas' | 'America/Chicago' | 'America/El_Salvador' | 'America/Juneau' | 'America/Lima' | 'America/Los_Angeles' | 'America/Mexico_City' | 'America/New_York' | 'America/Phoenix' | 'America/Santiago' | 'America/Sao_Paulo' | 'America/Toronto' | 'America/Vancouver' | 'Asia/Almaty' | 'Asia/Ashkhabad' | 'Asia/Bahrain' | 'Asia/Bangkok' | 'Asia/Chongqing' | 'Asia/Dubai' | 'Asia/Ho_Chi_Minh' | 'Asia/Hong_Kong' | 'Asia/Jakarta' | 'Asia/Jerusalem' | 'Asia/Kathmandu' | 'Asia/Kolkata' | 'Asia/Kuwait' | 'Asia/Muscat' | 'Asia/Qatar' | 'Asia/Riyadh' | 'Asia/Seoul' | 'Asia/Shanghai' | 'Asia/Singapore' | 'Asia/Taipei' | 'Asia/Tehran' | 'Asia/Tokyo' | 'Atlantic/Reykjavik' | 'Australia/ACT' | 'Australia/Adelaide' | 'Australia/Brisbane' | 'Australia/Perth' | 'Australia/Sydney' | 'Europe/Athens' | 'Europe/Belgrade' | 'Europe/Berlin' | 'Europe/Copenhagen' | 'Europe/Helsinki' | 'Europe/Istanbul' | 'Europe/London' | 'Europe/Luxembourg' | 'Europe/Madrid' | 'Europe/Moscow' | 'Europe/Oslo' | 'Europe/Paris' | 'Europe/Riga' | 'Europe/Rome' | 'Europe/Stockholm' | 'Europe/Tallinn' | 'Europe/Vilnius' | 'Europe/Warsaw' | 'Europe/Zurich' | 'Pacific/Auckland' | 'Pacific/Chatham' | 'Pacific/Fakaofo' | 'Pacific/Honolulu' | 'Pacific/Norfolk' | 'US/Mountain'; + +export as namespace TradingView; diff --git a/public/charting_library/charting_library.min.js b/public/charting_library/charting_library.min.js new file mode 100644 index 0000000..00b993f --- /dev/null +++ b/public/charting_library/charting_library.min.js @@ -0,0 +1 @@ +!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?e(exports):"function"==typeof define&&define.amd?define(["exports"],e):e(t.TradingView={})}(this,function(t){"use strict";var e=Object.assign||function(t){for(var e,o=1,i=arguments.length;o'},t}();window.TradingView=window.TradingView||{},window.TradingView.version=s,t.version=s,t.widget=r,Object.defineProperty(t,"__esModule",{value:!0})}); diff --git a/public/charting_library/datafeed-api.d.ts b/public/charting_library/datafeed-api.d.ts new file mode 100644 index 0000000..1f243cf --- /dev/null +++ b/public/charting_library/datafeed-api.d.ts @@ -0,0 +1,225 @@ +export declare type DomeCallback = (data: DOMData) => void; +export declare type ErrorCallback = (reason: string) => void; +export declare type GetMarksCallback = (marks: T[]) => void; +export declare type HistoryCallback = (bars: Bar[], meta: HistoryMetadata) => void; +export declare type MarkConstColors = 'red' | 'green' | 'blue' | 'yellow'; +export declare type OnReadyCallback = (configuration: DatafeedConfiguration) => void; +export declare type QuoteData = QuoteOkData | QuoteErrorData; +export declare type QuotesCallback = (data: QuoteData[]) => void; +export declare type ResolutionBackValues = 'D' | 'M'; +export declare type ResolutionString = string; +export declare type ResolveCallback = (symbolInfo: LibrarySymbolInfo) => void; +export declare type SearchSymbolsCallback = (items: SearchSymbolResultItem[]) => void; +export declare type SeriesFormat = 'price' | 'volume'; +export declare type ServerTimeCallback = (serverTime: number) => void; +export declare type SubscribeBarsCallback = (bar: Bar) => void; +export declare type Timezone = 'Etc/UTC' | CustomTimezones; +export interface Bar { + time: number; + open: number; + high: number; + low: number; + close: number; + volume?: number; +} +export interface DOMData { + snapshot: boolean; + asks: DOMLevel[]; + bids: DOMLevel[]; +} +export interface DOMLevel { + price: number; + volume: number; +} +export interface DatafeedConfiguration { + exchanges?: Exchange[]; + supported_resolutions?: ResolutionString[]; + supports_marks?: boolean; + supports_time?: boolean; + supports_timescale_marks?: boolean; + symbols_types?: DatafeedSymbolType[]; +} +export interface DatafeedQuoteValues { + ch?: number; + chp?: number; + short_name?: string; + exchange?: string; + description?: string; + lp?: number; + ask?: number; + bid?: number; + spread?: number; + open_price?: number; + high_price?: number; + low_price?: number; + prev_close_price?: number; + volume?: number; + original_name?: string; + [valueName: string]: string | number | undefined; +} +export interface DatafeedSymbolType { + name: string; + value: string; +} +export interface Exchange { + value: string; + name: string; + desc: string; +} +export interface HistoryDepth { + resolutionBack: ResolutionBackValues; + intervalBack: number; +} +export interface HistoryMetadata { + noData: boolean; + nextTime?: number | null; +} +export interface IDatafeedChartApi { + calculateHistoryDepth?(resolution: ResolutionString, resolutionBack: ResolutionBackValues, intervalBack: number): HistoryDepth | undefined; + getMarks?(symbolInfo: LibrarySymbolInfo, from: number, to: number, onDataCallback: GetMarksCallback, resolution: ResolutionString): void; + getTimescaleMarks?(symbolInfo: LibrarySymbolInfo, from: number, to: number, onDataCallback: GetMarksCallback, resolution: ResolutionString): void; + /** + * This function is called if configuration flag supports_time is set to true when chart needs to know the server time. + * The charting library expects callback to be called once. + * The time is provided without milliseconds. Example: 1445324591. It is used to display Countdown on the price scale. + */ + getServerTime?(callback: ServerTimeCallback): void; + searchSymbols(userInput: string, exchange: string, symbolType: string, onResult: SearchSymbolsCallback): void; + resolveSymbol(symbolName: string, onResolve: ResolveCallback, onError: ErrorCallback): void; + getBars(symbolInfo: LibrarySymbolInfo, resolution: ResolutionString, rangeStartDate: number, rangeEndDate: number, onResult: HistoryCallback, onError: ErrorCallback, isFirstCall: boolean): void; + subscribeBars(symbolInfo: LibrarySymbolInfo, resolution: ResolutionString, onTick: SubscribeBarsCallback, listenerGuid: string, onResetCacheNeededCallback: () => void): void; + unsubscribeBars(listenerGuid: string): void; + subscribeDepth?(symbol: string, callback: DomeCallback): string; + unsubscribeDepth?(subscriberUID: string): void; +} +export interface IDatafeedQuotesApi { + getQuotes(symbols: string[], onDataCallback: QuotesCallback, onErrorCallback: (msg: string) => void): void; + subscribeQuotes(symbols: string[], fastSymbols: string[], onRealtimeCallback: QuotesCallback, listenerGUID: string): void; + unsubscribeQuotes(listenerGUID: string): void; +} +export interface IExternalDatafeed { + onReady(callback: OnReadyCallback): void; +} +export interface LibrarySymbolInfo { + /** + * Symbol Name + */ + name: string; + full_name: string; + base_name?: [string]; + /** + * Unique symbol id + */ + ticker?: string; + description: string; + type: string; + /** + * @example "1700-0200" + */ + session: string; + /** + * Traded exchange + * @example "NYSE" + */ + exchange: string; + listed_exchange: string; + timezone: Timezone; + /** + * Prices format: "price" or "volume" + */ + format: SeriesFormat; + /** + * Code (Tick) + * @example 8/16/.../256 (1/8/100 1/16/100 ... 1/256/100) or 1/10/.../10000000 (1 0.1 ... 0.0000001) + */ + pricescale: number; + /** + * The number of units that make up one tick. + * @example For example, U.S. equities are quotes in decimals, and tick in decimals, and can go up +/- .01. So the tick increment is 1. But the e-mini S&P futures contract, though quoted in decimals, goes up in .25 increments, so the tick increment is 25. (see also Tick Size) + */ + minmov: number; + fractional?: boolean; + /** + * @example Quarters of 1/32: pricescale=128, minmovement=1, minmovement2=4 + */ + minmove2?: number; + /** + * false if DWM only + */ + has_intraday?: boolean; + /** + * An array of resolutions which should be enabled in resolutions picker for this symbol. + */ + supported_resolutions: ResolutionString[]; + /** + * @example (for ex.: "1,5,60") - only these resolutions will be requested, all others will be built using them if possible + */ + intraday_multipliers?: string[]; + has_seconds?: boolean; + /** + * It is an array containing seconds resolutions (in seconds without a postfix) the datafeed builds by itself. + */ + seconds_multipliers?: string[]; + has_daily?: boolean; + has_weekly_and_monthly?: boolean; + has_empty_bars?: boolean; + force_session_rebuild?: boolean; + has_no_volume?: boolean; + /** + * Integer showing typical volume value decimal places for this symbol + */ + volume_precision?: number; + data_status?: 'streaming' | 'endofday' | 'pulsed' | 'delayed_streaming'; + /** + * Boolean showing whether this symbol is expired futures contract or not. + */ + expired?: boolean; + /** + * Unix timestamp of expiration date. + */ + expiration_date?: number; + sector?: string; + industry?: string; + currency_code?: string; +} +export interface Mark { + id: string | number; + time: number; + color: MarkConstColors | MarkCustomColor; + text: string; + label: string; + labelFontColor: string; + minSize: number; +} +export interface MarkCustomColor { + color: string; + background: string; +} +export interface QuoteErrorData { + s: 'error'; + n: string; + v: object; +} +export interface QuoteOkData { + s: 'ok'; + n: string; + v: DatafeedQuoteValues; +} +export interface SearchSymbolResultItem { + symbol: string; + full_name: string; + description: string; + exchange: string; + ticker: string; + type: string; +} +export interface TimescaleMark { + id: string | number; + time: number; + color: MarkConstColors | string; + label: string; + tooltip: string[]; +} +export type CustomTimezones = 'Africa/Cairo' | 'Africa/Johannesburg' | 'Africa/Lagos' | 'America/Argentina/Buenos_Aires' | 'America/Bogota' | 'America/Caracas' | 'America/Chicago' | 'America/El_Salvador' | 'America/Juneau' | 'America/Lima' | 'America/Los_Angeles' | 'America/Mexico_City' | 'America/New_York' | 'America/Phoenix' | 'America/Santiago' | 'America/Sao_Paulo' | 'America/Toronto' | 'America/Vancouver' | 'Asia/Almaty' | 'Asia/Ashkhabad' | 'Asia/Bahrain' | 'Asia/Bangkok' | 'Asia/Chongqing' | 'Asia/Dubai' | 'Asia/Ho_Chi_Minh' | 'Asia/Hong_Kong' | 'Asia/Jakarta' | 'Asia/Jerusalem' | 'Asia/Kathmandu' | 'Asia/Kolkata' | 'Asia/Kuwait' | 'Asia/Muscat' | 'Asia/Qatar' | 'Asia/Riyadh' | 'Asia/Seoul' | 'Asia/Shanghai' | 'Asia/Singapore' | 'Asia/Taipei' | 'Asia/Tehran' | 'Asia/Tokyo' | 'Atlantic/Reykjavik' | 'Australia/ACT' | 'Australia/Adelaide' | 'Australia/Brisbane' | 'Australia/Perth' | 'Australia/Sydney' | 'Europe/Athens' | 'Europe/Belgrade' | 'Europe/Berlin' | 'Europe/Copenhagen' | 'Europe/Helsinki' | 'Europe/Istanbul' | 'Europe/London' | 'Europe/Luxembourg' | 'Europe/Madrid' | 'Europe/Moscow' | 'Europe/Oslo' | 'Europe/Paris' | 'Europe/Riga' | 'Europe/Rome' | 'Europe/Stockholm' | 'Europe/Tallinn' | 'Europe/Vilnius' | 'Europe/Warsaw' | 'Europe/Zurich' | 'Pacific/Auckland' | 'Pacific/Chatham' | 'Pacific/Fakaofo' | 'Pacific/Honolulu' | 'Pacific/Norfolk' | 'US/Mountain'; + +export as namespace TradingView; diff --git a/public/charting_library/static/ar-tv-chart.8562c7b8f7bdb50c1f5d.html b/public/charting_library/static/ar-tv-chart.8562c7b8f7bdb50c1f5d.html new file mode 100644 index 0000000..ac34e97 --- /dev/null +++ b/public/charting_library/static/ar-tv-chart.8562c7b8f7bdb50c1f5d.html @@ -0,0 +1,111 @@ + + + + + + + + + + + + + +
+ + + + + + + + + + \ No newline at end of file diff --git a/public/charting_library/static/bundles/0.1d4cbcaddbec7d8c5363.js b/public/charting_library/static/bundles/0.1d4cbcaddbec7d8c5363.js new file mode 100644 index 0000000..1a9f745 --- /dev/null +++ b/public/charting_library/static/bundles/0.1d4cbcaddbec7d8c5363.js @@ -0,0 +1,2 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[0],{"29gu":function(e,t,o){"use strict";var n="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},s=o("uOxu").getLogger("CommonUI.CreateTVBlockPlugin");e.exports.createTvBlockPlugin=function(e){if(e)return function(t,o,n){function s(t,o){return o?e[t](l,o):e[t](l)}var a,l=$(this);return"get"===t?"function"==typeof e[a=o]?s(a,n):e[a]:e[t]?l.each(function(){return s(t,void 0)}):l}},e.exports.createTvBlockWithInstance=function(e,t){function o(e,t,o){return void 0===o?e[t]():e[t](o)}if(e&&t)return e=e.toString(),function(a,l,i){var c,r,d;return"get"===a?c=l:(r=l,"object"===(void 0===a?"undefined":n(a))&&void 0===l?(r=a,a="init"):"string"!=typeof a&&(a="init")),"getInstance"===a?$(this).eq(0).data(e):"destroy"===a?(d=$(this).eq(0).data(e))?void("function"==typeof d.destroy?(o(d,"destroy",r),$(this).eq(0).removeData(e)):s.logError("[Block Plugin] "+e+" does not support destroy command")):void console.warn("[Block Plugin] Trying to execute destroy method of "+e+" but it has not been inited"):"get"===a?(d=$(this).eq(0).data(e))?"function"==typeof d[c]?o(d,c,i):d[c]:void console.warn("[Block Plugin] Trying to get prop or execute method of "+e+" but it has not been inited"):$(this).each(function(){var n=$(this),l=n.data(e);void 0===l&&(l=void 0===r?t(n):t(n,r),n.data(e,l)),"init"!==a&&("function"==typeof l[a]?o(l,a,r):s.logError("[Block Plugin] "+e+" does not support command "+a))})}}},QwKQ:function(e,t,o){"use strict";(function(n){var s,a,l,i,c,r;Object.defineProperty(t,"__esModule",{value:!0}),s=function(){function e(e,t){var o,n;for(o=0;o{{#labelLeft}}{{labelLeft}}{{/labelLeft}}{{> inputWrapper }}{{#labelRight}}{{labelRight}}{{/labelRight}}{{/hasLabel}}{{^hasLabel}}{{> inputWrapper }}{{/hasLabel}}',inputWrapper:'<{{ tag }} class="{{ customClass }}{{#disabled}} i-disabled{{/disabled}}">{{^hasCheckbox}}{{> checkbox }}{{/hasCheckbox}}{{> box }}{{> ripple }}',checkbox:'',checkboxClass:"{{ customClass }}__input",box:''+o("aLUT")+"",ripple:''},c="i-inited",r=function(){function e(t){ +var o,n=t.customClass,s=void 0===n?"tv-control-checkbox":n,a=t.$checkbox,i=t.tag,r=t.id,d=t.name,u=t.checked,b=t.disabled,h=t.labelLeft,p=t.labelRight,f=t.labelAddClass,k=t.boxAddClass;if(function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.$el=null,void 0===i&&(i=h||p?"span":"label"),o=a instanceof $&&!!a.length){if(!a.is("input[type=checkbox]"))return void l.logError("`$checkbox` need to be input[type=checkbox]");if(a.hasClass(c))return;this._setInputId(a,r),this._setInputClass(a,s),this._setInputName(a,d),this._setInputChecked(a,u),this._setInputDisabled(a,b),u=!!a.prop("checked"),b=!!a.attr("disabled")}this.$el=this.render({$checkbox:a,hasCheckbox:o,customClass:s,tag:i,id:r,name:d,checked:u,disabled:b,labelLeft:h,labelRight:p,hasLabel:h||p,labelAddClass:f,boxAddClass:k}),this.$checkbox=o?a:this.$el.find("input[type=checkbox]")}return s(e,[{key:"_setInputId",value:function(e,t){void 0!==t&&e.attr("id",t)}},{key:"_setInputClass",value:function(e,t){var o=n.render(i.checkboxClass,{customClass:t});e.addClass(o)}},{key:"_setInputName",value:function(e,t){void 0!==t&&e.attr("name",t)}},{key:"_setInputChecked",value:function(e,t){void 0!==t&&e.prop("checked",!!t)}},{key:"_setInputDisabled",value:function(e,t){void 0!==t&&(t?e.setAttribute("disabled","disabled"):e.removeAttr("disabled"))}},{key:"render",value:function(e){var t=e.$checkbox,o=$(n.render(i.labelWrapper,e,i));return e.hasCheckbox&&(o.insertBefore(t),o.find("."+e.customClass).andSelf().filter("."+e.customClass).eq(0).prepend(t.detach()),t.addClass(c)),o}},{key:"checked",set:function(e){this._setInputChecked(this.$checkbox,!!e)},get:function(){return!!this.$checkbox.prop("checked")}}]),e}(),$.fn.tvControlCheckbox=(0,a.createTvBlockWithInstance)("tv-control-checkbox",function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return new r(TradingView.mergeObj(t,{$checkbox:e}))}),t.default=r,e.exports=t.default}).call(this,o("OiQe"))},aLUT:function(e,t){e.exports=''},"b6p+":function(e,t,o){}}]); \ No newline at end of file diff --git a/public/charting_library/static/bundles/1.2fa13f88d2bf6ae6f3f0.css b/public/charting_library/static/bundles/1.2fa13f88d2bf6ae6f3f0.css new file mode 100644 index 0000000..53ae2e3 --- /dev/null +++ b/public/charting_library/static/bundles/1.2fa13f88d2bf6ae6f3f0.css @@ -0,0 +1 @@ +.tv-control-checkbox{cursor:pointer;-webkit-tap-highlight-color:transparent}.tv-control-checkbox--in-actions{max-width:50%}@media screen and (max-width:479px){.tv-control-checkbox--in-actions{max-width:none}}.tv-control-checkbox,.tv-control-checkbox__label{position:relative;display:inline-block;vertical-align:middle;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.tv-control-checkbox--nowrap,.tv-control-checkbox__label--nowrap{white-space:nowrap}.tv-control-checkbox__input{position:absolute;top:0;left:0;width:18px;height:18px;opacity:0}.tv-control-checkbox__box{display:block;width:18px;height:18px;line-height:1;border-radius:2px;box-sizing:border-box;pointer-events:none;transition:background-color .35s ease}.tv-control-checkbox__box:before{top:50%;left:50%;margin-top:-9px;margin-left:-9px;border-radius:2px;background-color:transparent;transform:scale(1);transition:transform .35s ease,background-color .35s ease,border-radius .35s ease}.tv-control-checkbox__box:after,.tv-control-checkbox__box:before{content:"";display:block;position:absolute;width:18px;height:18px}.tv-control-checkbox__box:after{top:0;left:0;border:2px solid #758696;border-radius:2px;box-sizing:border-box;transition:border-color .35s ease}.tv-control-checkbox__box svg{display:block;position:absolute;top:50%;left:50%;margin-top:-6px;margin-left:-6px;width:12px;height:12px;stroke:transparent;transform:scale(0);transition:stroke .35s ease 1ms,transform .35s ease 1ms}.tv-control-checkbox__label{white-space:normal;margin-right:10px}.tv-control-checkbox__label--two-lines{width:155px}.tv-control-checkbox__label--nowrap{white-space:nowrap}.tv-control-checkbox__label--lil-line-height{line-height:16px;min-width:50%;max-width:80%}.tv-control-checkbox__label+.tv-control-checkbox{margin-left:0}.tv-control-checkbox+.tv-control-checkbox__label{margin-right:0;margin-left:10px;max-width:calc(100% - 1ex - 28px)}.tv-control-checkbox:active .tv-control-checkbox__box,.tv-control-checkbox__input:focus+.tv-control-checkbox__box{will-change:background-color}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){.tv-control-checkbox:hover .tv-control-checkbox__box{will-change:background-color}}.tv-control-checkbox:active .tv-control-checkbox__box:before,.tv-control-checkbox__input:focus+.tv-control-checkbox__box:before{will-change:transform,border-radius}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){.tv-control-checkbox:hover .tv-control-checkbox__box:before{will-change:transform,border-radius}}.tv-control-checkbox:active .tv-control-checkbox__box:after,.tv-control-checkbox__input:focus+.tv-control-checkbox__box:after{will-change:border-color}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){.tv-control-checkbox:hover .tv-control-checkbox__box:after{will-change:border-color;border-color:#627384}}.tv-control-checkbox:active .tv-control-checkbox__box:after,.tv-control-checkbox__input:focus+.tv-control-checkbox__box:after{border-color:#2196f3}.tv-control-checkbox__input:checked+.tv-control-checkbox__box{background-color:#2196f3}.tv-control-checkbox__input:checked+.tv-control-checkbox__box,.tv-control-checkbox__input:checked+.tv-control-checkbox__box:after,.tv-control-checkbox__input:checked+.tv-control-checkbox__box:before{transition-timing-function:cubic-bezier(.215,.61,.355,1)}.tv-control-checkbox__input:checked+.tv-control-checkbox__box:before{border-radius:50%;transform:scale(0)}.tv-control-checkbox__input:checked+.tv-control-checkbox__box:after{border-color:#2196f3}.tv-control-checkbox__input:checked+.tv-control-checkbox__box svg{stroke:#fff;transform:scale(1);transition-timing-function:cubic-bezier(.215,.61,.355,1);transition-delay:.0875s;will-change:stroke,transform}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){.tv-control-checkbox:hover .tv-control-checkbox__input:checked+.tv-control-checkbox__box{background-color:#1e88e5}}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){.tv-control-checkbox:hover .tv-control-checkbox__input:checked+.tv-control-checkbox__box:after{border-color:#1e88e5}}.tv-control-checkbox:active .tv-control-checkbox__input:checked+.tv-control-checkbox__box,.tv-control-checkbox__input:focus:checked+.tv-control-checkbox__box{background-color:#049ddc}.tv-control-checkbox:active .tv-control-checkbox__input:checked+.tv-control-checkbox__box:after,.tv-control-checkbox__input:focus:checked+.tv-control-checkbox__box:after{border-color:#049ddc}.tv-control-checkbox:active .tv-control-checkbox__input[disabled]+.tv-control-checkbox__box:after,.tv-control-checkbox:active .tv-control-checkbox__input[disabled]:checked+.tv-control-checkbox__box:after,.tv-control-checkbox__input[disabled]+.tv-control-checkbox__box:after,.tv-control-checkbox__input[disabled]:checked+.tv-control-checkbox__box:after{border-color:#dadde0}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){.tv-control-checkbox:hover .tv-control-checkbox__input[disabled]+.tv-control-checkbox__box:after,.tv-control-checkbox:hover .tv-control-checkbox__input[disabled]:checked+.tv-control-checkbox__box:after{border-color:#dadde0}}html.theme-dark .tv-control-checkbox:active .tv-control-checkbox__input[disabled]+.tv-control-checkbox__box:after,html.theme-dark .tv-control-checkbox:active .tv-control-checkbox__input[disabled]:checked+.tv-control-checkbox__box:after,html.theme-dark .tv-control-checkbox__input[disabled]+.tv-control-checkbox__box:after,html.theme-dark .tv-control-checkbox__input[disabled]:checked+.tv-control-checkbox__box:after{border-color:#363c4e}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){html.theme-dark .tv-control-checkbox:hover .tv-control-checkbox__input[disabled]+.tv-control-checkbox__box:after,html.theme-dark .tv-control-checkbox:hover .tv-control-checkbox__input[disabled]:checked+.tv-control-checkbox__box:after{border-color:#363c4e}}.tv-control-checkbox:active .tv-control-checkbox__input[disabled]+.tv-control-checkbox__box:before,.tv-control-checkbox:active .tv-control-checkbox__input[disabled]:checked+.tv-control-checkbox__box:before{background-color:#f1f3f6;transition:background-color .35s ease}html.theme-dark .tv-control-checkbox:active .tv-control-checkbox__input[disabled]+.tv-control-checkbox__box:before,html.theme-dark .tv-control-checkbox:active .tv-control-checkbox__input[disabled]:checked+.tv-control-checkbox__box:before{background-color:#2f3241}.tv-control-checkbox:active .tv-control-checkbox__input[disabled]:checked+.tv-control-checkbox__box,.tv-control-checkbox__input[disabled]:checked+.tv-control-checkbox__box{background-color:#dadde0}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){.tv-control-checkbox:hover .tv-control-checkbox__input[disabled]:checked+.tv-control-checkbox__box{background-color:#dadde0}}.tv-control-checkbox__ripple{display:block;position:absolute;top:0;right:0;width:100%;height:100%;margin:-10px;padding:10px;overflow:hidden;border-radius:50%;-webkit-mask-image:radial-gradient(circle,#fff 100%,#000 0);mask-image:radial-gradient(circle,#fff 100%,#000 0)}.tv-control-checkbox__input:checked+.tv-control-checkbox__box+.tv-control-checkbox__ripple .tv-ripple{background-color:rgba(33,150,243,.25)}.tv-control-checkbox__input[disabled]+.tv-control-checkbox__box+.tv-control-checkbox__ripple .tv-ripple,.tv-control-checkbox__input[disabled]:checked+.tv-control-checkbox__box+.tv-control-checkbox__ripple .tv-ripple{background-color:transparent}.tv-control-checkbox.i-error .tv-control-checkbox__box:after{border-color:#ff4a68}.tv-control-checkbox.i-disabled{cursor:default} \ No newline at end of file diff --git a/public/charting_library/static/bundles/1.2fa13f88d2bf6ae6f3f0.rtl.css b/public/charting_library/static/bundles/1.2fa13f88d2bf6ae6f3f0.rtl.css new file mode 100644 index 0000000..d6cab17 --- /dev/null +++ b/public/charting_library/static/bundles/1.2fa13f88d2bf6ae6f3f0.rtl.css @@ -0,0 +1 @@ +.tv-control-checkbox{cursor:pointer;-webkit-tap-highlight-color:transparent}.tv-control-checkbox--in-actions{max-width:50%}@media screen and (max-width:479px){.tv-control-checkbox--in-actions{max-width:none}}.tv-control-checkbox,.tv-control-checkbox__label{position:relative;display:inline-block;vertical-align:middle;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.tv-control-checkbox--nowrap,.tv-control-checkbox__label--nowrap{white-space:nowrap}.tv-control-checkbox__input{position:absolute;top:0;right:0;width:18px;height:18px;opacity:0}.tv-control-checkbox__box{display:block;width:18px;height:18px;line-height:1;border-radius:2px;box-sizing:border-box;pointer-events:none;transition:background-color .35s ease}.tv-control-checkbox__box:before{top:50%;right:50%;margin-top:-9px;margin-right:-9px;border-radius:2px;background-color:transparent;transform:scale(1);transition:transform .35s ease,background-color .35s ease,border-radius .35s ease}.tv-control-checkbox__box:after,.tv-control-checkbox__box:before{content:"";display:block;position:absolute;width:18px;height:18px}.tv-control-checkbox__box:after{top:0;right:0;border:2px solid #758696;border-radius:2px;box-sizing:border-box;transition:border-color .35s ease}.tv-control-checkbox__box svg{display:block;position:absolute;top:50%;right:50%;margin-top:-6px;margin-right:-6px;width:12px;height:12px;stroke:transparent;transform:scale(0);transition:stroke .35s ease 1ms,transform .35s ease 1ms}.tv-control-checkbox__label{white-space:normal;margin-left:10px}.tv-control-checkbox__label--two-lines{width:155px}.tv-control-checkbox__label--nowrap{white-space:nowrap}.tv-control-checkbox__label--lil-line-height{line-height:16px;min-width:50%;max-width:80%}.tv-control-checkbox__label+.tv-control-checkbox{margin-right:0}.tv-control-checkbox+.tv-control-checkbox__label{margin-left:0;margin-right:10px;max-width:calc(100% - 1ex - 28px)}.tv-control-checkbox:active .tv-control-checkbox__box,.tv-control-checkbox__input:focus+.tv-control-checkbox__box{will-change:background-color}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){.tv-control-checkbox:hover .tv-control-checkbox__box{will-change:background-color}}.tv-control-checkbox:active .tv-control-checkbox__box:before,.tv-control-checkbox__input:focus+.tv-control-checkbox__box:before{will-change:transform,border-radius}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){.tv-control-checkbox:hover .tv-control-checkbox__box:before{will-change:transform,border-radius}}.tv-control-checkbox:active .tv-control-checkbox__box:after,.tv-control-checkbox__input:focus+.tv-control-checkbox__box:after{will-change:border-color}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){.tv-control-checkbox:hover .tv-control-checkbox__box:after{will-change:border-color;border-color:#627384}}.tv-control-checkbox:active .tv-control-checkbox__box:after,.tv-control-checkbox__input:focus+.tv-control-checkbox__box:after{border-color:#2196f3}.tv-control-checkbox__input:checked+.tv-control-checkbox__box{background-color:#2196f3}.tv-control-checkbox__input:checked+.tv-control-checkbox__box,.tv-control-checkbox__input:checked+.tv-control-checkbox__box:after,.tv-control-checkbox__input:checked+.tv-control-checkbox__box:before{transition-timing-function:cubic-bezier(.215,.61,.355,1)}.tv-control-checkbox__input:checked+.tv-control-checkbox__box:before{border-radius:50%;transform:scale(0)}.tv-control-checkbox__input:checked+.tv-control-checkbox__box:after{border-color:#2196f3}.tv-control-checkbox__input:checked+.tv-control-checkbox__box svg{stroke:#fff;transform:scale(1);transition-timing-function:cubic-bezier(.215,.61,.355,1);transition-delay:.0875s;will-change:stroke,transform}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){.tv-control-checkbox:hover .tv-control-checkbox__input:checked+.tv-control-checkbox__box{background-color:#1e88e5}}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){.tv-control-checkbox:hover .tv-control-checkbox__input:checked+.tv-control-checkbox__box:after{border-color:#1e88e5}}.tv-control-checkbox:active .tv-control-checkbox__input:checked+.tv-control-checkbox__box,.tv-control-checkbox__input:focus:checked+.tv-control-checkbox__box{background-color:#049ddc}.tv-control-checkbox:active .tv-control-checkbox__input:checked+.tv-control-checkbox__box:after,.tv-control-checkbox__input:focus:checked+.tv-control-checkbox__box:after{border-color:#049ddc}.tv-control-checkbox:active .tv-control-checkbox__input[disabled]+.tv-control-checkbox__box:after,.tv-control-checkbox:active .tv-control-checkbox__input[disabled]:checked+.tv-control-checkbox__box:after,.tv-control-checkbox__input[disabled]+.tv-control-checkbox__box:after,.tv-control-checkbox__input[disabled]:checked+.tv-control-checkbox__box:after{border-color:#dadde0}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){.tv-control-checkbox:hover .tv-control-checkbox__input[disabled]+.tv-control-checkbox__box:after,.tv-control-checkbox:hover .tv-control-checkbox__input[disabled]:checked+.tv-control-checkbox__box:after{border-color:#dadde0}}html.theme-dark .tv-control-checkbox:active .tv-control-checkbox__input[disabled]+.tv-control-checkbox__box:after,html.theme-dark .tv-control-checkbox:active .tv-control-checkbox__input[disabled]:checked+.tv-control-checkbox__box:after,html.theme-dark .tv-control-checkbox__input[disabled]+.tv-control-checkbox__box:after,html.theme-dark .tv-control-checkbox__input[disabled]:checked+.tv-control-checkbox__box:after{border-color:#363c4e}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){html.theme-dark .tv-control-checkbox:hover .tv-control-checkbox__input[disabled]+.tv-control-checkbox__box:after,html.theme-dark .tv-control-checkbox:hover .tv-control-checkbox__input[disabled]:checked+.tv-control-checkbox__box:after{border-color:#363c4e}}.tv-control-checkbox:active .tv-control-checkbox__input[disabled]+.tv-control-checkbox__box:before,.tv-control-checkbox:active .tv-control-checkbox__input[disabled]:checked+.tv-control-checkbox__box:before{background-color:#f1f3f6;transition:background-color .35s ease}html.theme-dark .tv-control-checkbox:active .tv-control-checkbox__input[disabled]+.tv-control-checkbox__box:before,html.theme-dark .tv-control-checkbox:active .tv-control-checkbox__input[disabled]:checked+.tv-control-checkbox__box:before{background-color:#2f3241}.tv-control-checkbox:active .tv-control-checkbox__input[disabled]:checked+.tv-control-checkbox__box,.tv-control-checkbox__input[disabled]:checked+.tv-control-checkbox__box{background-color:#dadde0}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){.tv-control-checkbox:hover .tv-control-checkbox__input[disabled]:checked+.tv-control-checkbox__box{background-color:#dadde0}}.tv-control-checkbox__ripple{display:block;position:absolute;top:0;left:0;width:100%;height:100%;margin:-10px;padding:10px;overflow:hidden;border-radius:50%;-webkit-mask-image:radial-gradient(circle,#fff 100%,#000 0);mask-image:radial-gradient(circle,#fff 100%,#000 0)}.tv-control-checkbox__input:checked+.tv-control-checkbox__box+.tv-control-checkbox__ripple .tv-ripple{background-color:rgba(33,150,243,.25)}.tv-control-checkbox__input[disabled]+.tv-control-checkbox__box+.tv-control-checkbox__ripple .tv-ripple,.tv-control-checkbox__input[disabled]:checked+.tv-control-checkbox__box+.tv-control-checkbox__ripple .tv-ripple{background-color:transparent}.tv-control-checkbox.i-error .tv-control-checkbox__box:after{border-color:#ff4a68}.tv-control-checkbox.i-disabled{cursor:default} \ No newline at end of file diff --git a/public/charting_library/static/bundles/1.ea828ac684caa2b94a1b.js b/public/charting_library/static/bundles/1.ea828ac684caa2b94a1b.js new file mode 100644 index 0000000..5cb2eb0 --- /dev/null +++ b/public/charting_library/static/bundles/1.ea828ac684caa2b94a1b.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[1],[]]); \ No newline at end of file diff --git a/public/charting_library/static/bundles/10.0501e55a3ef6aa50aec6.js b/public/charting_library/static/bundles/10.0501e55a3ef6aa50aec6.js new file mode 100644 index 0000000..d57c266 --- /dev/null +++ b/public/charting_library/static/bundles/10.0501e55a3ef6aa50aec6.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[10],[]]); \ No newline at end of file diff --git a/public/charting_library/static/bundles/10.c0a8664f16f3834961e4.css b/public/charting_library/static/bundles/10.c0a8664f16f3834961e4.css new file mode 100644 index 0000000..e30c608 --- /dev/null +++ b/public/charting_library/static/bundles/10.c0a8664f16f3834961e4.css @@ -0,0 +1 @@ +.ui-slider{position:relative;text-align:left}.ui-slider .ui-slider-handle{position:absolute;z-index:2;width:1.2em;height:1.2em;cursor:default}.ui-slider .ui-slider-range{position:absolute;z-index:1;font-size:.7em;display:block;border:0;background-position:0 0}.ui-slider-horizontal{height:.8em}.ui-slider-horizontal .ui-slider-handle{top:-.3em;margin-left:-.6em}.ui-slider-horizontal .ui-slider-range{top:0;height:100%}.ui-slider-horizontal .ui-slider-range-min{left:0}.ui-slider-horizontal .ui-slider-range-max{right:0}.ui-slider-vertical{width:.8em;height:100px}.ui-slider-vertical .ui-slider-handle{left:-.3em;margin-left:0;margin-bottom:-.6em}.ui-slider-vertical .ui-slider-range{left:0;width:100%}.ui-slider-vertical .ui-slider-range-min{bottom:0}.ui-slider-vertical .ui-slider-range-max{top:0}.colorpicker.main{border:1px solid #c9cbcd;box-shadow:0 1px 3px rgba(0,0,0,.4)}.tvcolorpicker-widget{vertical-align:middle;background-image:url(../images/tvcolorpicker-bg.png);background-position:0 0;background-repeat:no-repeat;border:1px solid #cacaca;overflow:hidden;padding:0;width:25px;height:25px;cursor:pointer;font-size:0;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.tvcolorpicker-gradient-widget{background-image:url(../images/tvcolorpicker-bg.png),url(../images/tvcolorpicker-bg-gradient.png);background-size:cover}.tvcolorpicker-popup{position:absolute;z-index:1000;padding:4px;background:#fff;border:1px solid;border-color:#b5b7b9;box-shadow:0 1px 2px rgba(0,0,0,.3)}html.theme-dark .tvcolorpicker-popup{border-color:#363c4e;background:#131722}.tvcolorpicker-table{border-collapse:collapse;table-layout:fixed;margin:0 0 6px}.tvcolorpicker-popup .tvcolorpicker-table:last-of-type{margin-bottom:0}.tvcolorpicker-table td{padding:0;width:18px;height:18px}.tvcolorpicker-swatch{width:16px;height:16px;border:0 none;margin:1px;cursor:pointer;overflow:hidden}.tvcolorpicker-swatch.low-contrast{margin:0;border:1px solid #ccc}.tvcolorpicker-swatch.tvcolorpicker-user{border:1px solid #eee;margin:0}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){.tvcolorpicker-cell:hover .tvcolorpicker-swatch{border:1px solid #000;margin:0}}.tvcolorpicker-swatch.active{background:url(../images/tvcolorpicker-check.png) 50% 50% no-repeat;border:1px solid #fff;outline:1px solid #000;margin:0}.tvcolorpicker-custom-button{display:block}.tvcolorpicker-hsv{position:relative;top:4px;height:130px;width:160px;margin:0 auto}.tvcolorpicker-hs{position:absolute;top:0;left:-7px;width:147px;height:148px;background:url(../images/tvcolorpicker-sprite.png) 0 0 no-repeat;border:1px solid #eee}.tvcolorpicker-hs-area,.tvcolorpicker-v-area{position:absolute;top:0;left:0;width:100%;height:100%}.tvcolorpicker-v{position:absolute;background:url(../images/tvcolorpicker-sprite.png) -165px 1px no-repeat;border:1px solid #eee;height:149px;width:9px;margin:auto;left:0;right:0}.tvcolorpicker-vv{position:relative;top:0;left:145px;width:25px;height:128px;cursor:default}.tvcolorpicker-hs-handle{width:11px;height:11px;position:absolute;left:0;top:0;margin:-5px 0 0 -5px;background:url(../images/tvcolorpicker-sprite.png) -37px -148px no-repeat}.tvcolorpicker-v-handle{position:absolute;left:0;top:0;width:25px;height:11px;margin:-5px 0 0 -8px;background:url(../images/tvcolorpicker-sprite.png) -48px -148px no-repeat}.tvcolorpicker-custom-button,.tvcolorpicker-user-swatches{margin:6px 0 0}.tvcolorpicker-user-swatches .tvcolorpicker-transparency{background:url(../images/dialogs/opacity-slider.png)!important}.some-colorpicker .tvcolorpicker-container{display:inline-block;margin-right:8px}.tvcolorpicker-container{display:inline-block;position:relative;width:27px;height:27px}div .tvcolorpicker-container:last-of-type{border-right-width:0}.tvcolorpicker-container .tvcolorpicker-transparency{background:url(../images/dialogs/opacity-slider.png)!important;position:absolute;width:25px;height:25px;z-index:1}.tvcolorpicker-container .tvcolorpicker-widget{z-index:2;position:absolute}.widgetbar-widgetheader .colorpicker-widget:not(.disabled):not(.selected){position:relative}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){.widgetbar-widgetheader .colorpicker-widget:not(.disabled):not(.selected):not(.disabled):hover{border:1px solid;border-color:#d6d8e0;z-index:1}}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){html.theme-dark .widgetbar-widgetheader .colorpicker-widget:not(.disabled):not(.selected):not(.disabled):hover{border-color:#131722}} \ No newline at end of file diff --git a/public/charting_library/static/bundles/10.c0a8664f16f3834961e4.rtl.css b/public/charting_library/static/bundles/10.c0a8664f16f3834961e4.rtl.css new file mode 100644 index 0000000..82d01d8 --- /dev/null +++ b/public/charting_library/static/bundles/10.c0a8664f16f3834961e4.rtl.css @@ -0,0 +1 @@ +.ui-slider{position:relative;text-align:right}.ui-slider .ui-slider-handle{position:absolute;z-index:2;width:1.2em;height:1.2em;cursor:default}.ui-slider .ui-slider-range{position:absolute;z-index:1;font-size:.7em;display:block;border:0;background-position:100% 0}.ui-slider-horizontal{height:.8em}.ui-slider-horizontal .ui-slider-handle{top:-.3em;margin-right:-.6em}.ui-slider-horizontal .ui-slider-range{top:0;height:100%}.ui-slider-horizontal .ui-slider-range-min{right:0}.ui-slider-horizontal .ui-slider-range-max{left:0}.ui-slider-vertical{width:.8em;height:100px}.ui-slider-vertical .ui-slider-handle{right:-.3em;margin-right:0;margin-bottom:-.6em}.ui-slider-vertical .ui-slider-range{right:0;width:100%}.ui-slider-vertical .ui-slider-range-min{bottom:0}.ui-slider-vertical .ui-slider-range-max{top:0}.colorpicker.main{border:1px solid #c9cbcd;box-shadow:0 1px 3px rgba(0,0,0,.4)}.tvcolorpicker-widget{vertical-align:middle;background-image:url(../images/tvcolorpicker-bg.png);background-position:100% 0;background-repeat:no-repeat;border:1px solid #cacaca;overflow:hidden;padding:0;width:25px;height:25px;cursor:pointer;font-size:0;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.tvcolorpicker-gradient-widget{background-image:url(../images/tvcolorpicker-bg.png),url(../images/tvcolorpicker-bg-gradient.png);background-size:cover}.tvcolorpicker-popup{position:absolute;z-index:1000;padding:4px;background:#fff;border:1px solid;border-color:#b5b7b9;box-shadow:0 1px 2px rgba(0,0,0,.3)}html.theme-dark .tvcolorpicker-popup{border-color:#363c4e;background:#131722}.tvcolorpicker-table{border-collapse:collapse;table-layout:fixed;margin:0 0 6px}.tvcolorpicker-popup .tvcolorpicker-table:last-of-type{margin-bottom:0}.tvcolorpicker-table td{padding:0;width:18px;height:18px}.tvcolorpicker-swatch{width:16px;height:16px;border:0 none;margin:1px;cursor:pointer;overflow:hidden}.tvcolorpicker-swatch.low-contrast{margin:0;border:1px solid #ccc}.tvcolorpicker-swatch.tvcolorpicker-user{border:1px solid #eee;margin:0}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){.tvcolorpicker-cell:hover .tvcolorpicker-swatch{border:1px solid #000;margin:0}}.tvcolorpicker-swatch.active{background:url(../images/tvcolorpicker-check.png) 50% 50% no-repeat;border:1px solid #fff;outline:1px solid #000;margin:0}.tvcolorpicker-custom-button{display:block}.tvcolorpicker-hsv{position:relative;top:4px;height:130px;width:160px;margin:0 auto}.tvcolorpicker-hs{position:absolute;top:0;right:-7px;width:147px;height:148px;background:url(../images/tvcolorpicker-sprite.png) 0 0 no-repeat;border:1px solid #eee}.tvcolorpicker-hs-area,.tvcolorpicker-v-area{position:absolute;top:0;right:0;width:100%;height:100%}.tvcolorpicker-v{position:absolute;background:url(../images/tvcolorpicker-sprite.png) -165px 1px no-repeat;border:1px solid #eee;height:149px;width:9px;margin:auto;right:0;left:0}.tvcolorpicker-vv{position:relative;top:0;right:145px;width:25px;height:128px;cursor:default}.tvcolorpicker-hs-handle{width:11px;height:11px;position:absolute;right:0;top:0;margin:-5px -5px 0 0;background:url(../images/tvcolorpicker-sprite.png) -37px -148px no-repeat}.tvcolorpicker-v-handle{position:absolute;right:0;top:0;width:25px;height:11px;margin:-5px -8px 0 0;background:url(../images/tvcolorpicker-sprite.png) -48px -148px no-repeat}.tvcolorpicker-custom-button,.tvcolorpicker-user-swatches{margin:6px 0 0}.tvcolorpicker-user-swatches .tvcolorpicker-transparency{background:url(../images/dialogs/opacity-slider.png)!important}.some-colorpicker .tvcolorpicker-container{display:inline-block;margin-left:8px}.tvcolorpicker-container{display:inline-block;position:relative;width:27px;height:27px}div .tvcolorpicker-container:last-of-type{border-left-width:0}.tvcolorpicker-container .tvcolorpicker-transparency{background:url(../images/dialogs/opacity-slider.png)!important;position:absolute;width:25px;height:25px;z-index:1}.tvcolorpicker-container .tvcolorpicker-widget{z-index:2;position:absolute}.widgetbar-widgetheader .colorpicker-widget:not(.disabled):not(.selected){position:relative}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){.widgetbar-widgetheader .colorpicker-widget:not(.disabled):not(.selected):not(.disabled):hover{border:1px solid;border-color:#d6d8e0;z-index:1}}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){html.theme-dark .widgetbar-widgetheader .colorpicker-widget:not(.disabled):not(.selected):not(.disabled):hover{border-color:#131722}} \ No newline at end of file diff --git a/public/charting_library/static/bundles/11.b900b9cb8ed6dd3bc321.css b/public/charting_library/static/bundles/11.b900b9cb8ed6dd3bc321.css new file mode 100644 index 0000000..e8c737a --- /dev/null +++ b/public/charting_library/static/bundles/11.b900b9cb8ed6dd3bc321.css @@ -0,0 +1 @@ +.item-2xPVYue0-{display:flex;flex-flow:row nowrap;align-items:center;white-space:nowrap;padding:2px 10px 2px 8px;font-size:14px;background-color:#fff;cursor:default;transition-property:none;color:#131722}html.theme-dark .item-2xPVYue0-{color:#b2b5be;background-color:#1e222d}.item-2xPVYue0-.hovered-1uf45E05-,.item-2xPVYue0-:active{color:#000}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){.item-2xPVYue0-:hover{color:#000}}html.theme-dark .item-2xPVYue0-.hovered-1uf45E05-,html.theme-dark .item-2xPVYue0-:active{color:#c1c4cd}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){html.theme-dark .item-2xPVYue0-:hover{color:#c1c4cd}}.item-2xPVYue0-.hovered-1uf45E05-,.item-2xPVYue0-:active{background-color:#f0f3fa}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){.item-2xPVYue0-:hover{background-color:#f0f3fa}}html.theme-dark .item-2xPVYue0-.hovered-1uf45E05-,html.theme-dark .item-2xPVYue0-:active{background-color:#2a2e39}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){html.theme-dark .item-2xPVYue0-:hover{background-color:#2a2e39}}.item-2xPVYue0-.isDisabled-1wLqKupj-{opacity:.3;cursor:default}.item-2xPVYue0-.isDisabled-1wLqKupj-,.item-2xPVYue0-.isDisabled-1wLqKupj-:active{color:#131722;background-color:#fff}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){.item-2xPVYue0-.isDisabled-1wLqKupj-:hover{color:#131722;background-color:#fff}}html.theme-dark .item-2xPVYue0-.isDisabled-1wLqKupj-,html.theme-dark .item-2xPVYue0-.isDisabled-1wLqKupj-:active{background-color:#1e222d}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){html.theme-dark .item-2xPVYue0-.isDisabled-1wLqKupj-:hover{background-color:#1e222d}}html.theme-dark .item-2xPVYue0-.isDisabled-1wLqKupj-,html.theme-dark .item-2xPVYue0-.isDisabled-1wLqKupj-:active{color:#b2b5be}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){html.theme-dark .item-2xPVYue0-.isDisabled-1wLqKupj-:hover{color:#b2b5be}}.item-2xPVYue0-.isActive-2j-GhQs_-,.item-2xPVYue0-.isActive-2j-GhQs_-:active{color:#fff;background-color:#2196f3}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){.item-2xPVYue0-.isActive-2j-GhQs_-:hover{color:#fff;background-color:#2196f3}}html.theme-dark .item-2xPVYue0-.isActive-2j-GhQs_-,html.theme-dark .item-2xPVYue0-.isActive-2j-GhQs_-:active{background-color:#1976d2}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){html.theme-dark .item-2xPVYue0-.isActive-2j-GhQs_-:hover{background-color:#1976d2}}html.theme-dark .item-2xPVYue0-.isActive-2j-GhQs_-,html.theme-dark .item-2xPVYue0-.isActive-2j-GhQs_-:active{color:#131722}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){html.theme-dark .item-2xPVYue0-.isActive-2j-GhQs_-:hover{color:#131722}}.item-2xPVYue0-.isActive-2j-GhQs_- .icon-2Qm7YIcz- svg,.item-2xPVYue0-.isActive-2j-GhQs_-:active .icon-2Qm7YIcz- svg{fill:currentColor}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){.item-2xPVYue0-.isActive-2j-GhQs_-:hover .icon-2Qm7YIcz- svg{fill:currentColor}}.item-2xPVYue0-.isActive-2j-GhQs_- .shortcut-30pveiCO-,.item-2xPVYue0-.isActive-2j-GhQs_-:active .shortcut-30pveiCO-{color:hsla(0,0%,100%,.7)}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){.item-2xPVYue0-.isActive-2j-GhQs_-:hover .shortcut-30pveiCO-{color:hsla(0,0%,100%,.7)}}html.theme-dark .item-2xPVYue0-.isActive-2j-GhQs_- .shortcut-30pveiCO-,html.theme-dark .item-2xPVYue0-.isActive-2j-GhQs_-:active .shortcut-30pveiCO-{color:rgba(19,23,34,.7)}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){html.theme-dark .item-2xPVYue0-.isActive-2j-GhQs_-:hover .shortcut-30pveiCO-{color:rgba(19,23,34,.7)}}.item-2xPVYue0-.isActive-2j-GhQs_- .toolbox-3ulPxfe--,.item-2xPVYue0-.isActive-2j-GhQs_-:active .toolbox-3ulPxfe--{color:#fff}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){.item-2xPVYue0-.isActive-2j-GhQs_-:hover .toolbox-3ulPxfe--{color:#fff}}html.theme-dark .item-2xPVYue0-.isActive-2j-GhQs_- .toolbox-3ulPxfe--,html.theme-dark .item-2xPVYue0-.isActive-2j-GhQs_-:active .toolbox-3ulPxfe--{color:#fff}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){html.theme-dark .item-2xPVYue0-.isActive-2j-GhQs_-:hover .toolbox-3ulPxfe--{color:#fff}}.item-2xPVYue0-.withIcon-1xBjf-oB-{padding-top:6px;padding-bottom:6px}.item-2xPVYue0-:before{content:" ";display:block;height:28px}.icon-2Qm7YIcz-{display:flex;margin-right:7px;align-items:center;justify-content:center;width:28px;height:28px}.icon-2Qm7YIcz- svg{display:block;fill:currentColor}.labelRow-3Q0rdE8--{display:flex;flex-direction:row;align-items:baseline;justify-content:space-between;flex:1 0 auto;margin-right:14px}.labelRow-3Q0rdE8--:first-child{margin-left:4px}.labelRow-3Q0rdE8--:last-child{margin-right:4px}.label-3Xqxy756-{display:flex;flex:0 0 auto}.shortcut-30pveiCO-{font-size:11px;margin-right:14px;min-width:27px;color:#b2b5be}html.theme-dark .shortcut-30pveiCO-{color:#787b86}.toolbox-3ulPxfe--{display:flex;position:relative;align-items:center;color:#9db2bd}html.theme-dark .toolbox-3ulPxfe--{color:#9db2bd}.feature-no-mobiletouch .toolbox-3ulPxfe--.showOnHover-1q6ySzZc-{opacity:0}.toolbox-3ulPxfe-->:not(:last-child){margin-right:10px}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){.feature-no-mobiletouch .item-2xPVYue0-:hover .toolbox-3ulPxfe--.showOnHover-1q6ySzZc-{opacity:1}}.separator-25lkUpN--{margin:6px 0;height:1px;background-color:#e1ecf2}html.theme-dark .separator-25lkUpN--{background-color:#363c4e} \ No newline at end of file diff --git a/public/charting_library/static/bundles/11.b900b9cb8ed6dd3bc321.rtl.css b/public/charting_library/static/bundles/11.b900b9cb8ed6dd3bc321.rtl.css new file mode 100644 index 0000000..8c5ea95 --- /dev/null +++ b/public/charting_library/static/bundles/11.b900b9cb8ed6dd3bc321.rtl.css @@ -0,0 +1 @@ +.item-2xPVYue0-{display:flex;flex-flow:row nowrap;align-items:center;white-space:nowrap;padding:2px 8px 2px 10px;font-size:14px;background-color:#fff;cursor:default;transition-property:none;color:#131722}html.theme-dark .item-2xPVYue0-{color:#b2b5be;background-color:#1e222d}.item-2xPVYue0-.hovered-1uf45E05-,.item-2xPVYue0-:active{color:#000}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){.item-2xPVYue0-:hover{color:#000}}html.theme-dark .item-2xPVYue0-.hovered-1uf45E05-,html.theme-dark .item-2xPVYue0-:active{color:#c1c4cd}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){html.theme-dark .item-2xPVYue0-:hover{color:#c1c4cd}}.item-2xPVYue0-.hovered-1uf45E05-,.item-2xPVYue0-:active{background-color:#f0f3fa}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){.item-2xPVYue0-:hover{background-color:#f0f3fa}}html.theme-dark .item-2xPVYue0-.hovered-1uf45E05-,html.theme-dark .item-2xPVYue0-:active{background-color:#2a2e39}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){html.theme-dark .item-2xPVYue0-:hover{background-color:#2a2e39}}.item-2xPVYue0-.isDisabled-1wLqKupj-{opacity:.3;cursor:default}.item-2xPVYue0-.isDisabled-1wLqKupj-,.item-2xPVYue0-.isDisabled-1wLqKupj-:active{color:#131722;background-color:#fff}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){.item-2xPVYue0-.isDisabled-1wLqKupj-:hover{color:#131722;background-color:#fff}}html.theme-dark .item-2xPVYue0-.isDisabled-1wLqKupj-,html.theme-dark .item-2xPVYue0-.isDisabled-1wLqKupj-:active{background-color:#1e222d}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){html.theme-dark .item-2xPVYue0-.isDisabled-1wLqKupj-:hover{background-color:#1e222d}}html.theme-dark .item-2xPVYue0-.isDisabled-1wLqKupj-,html.theme-dark .item-2xPVYue0-.isDisabled-1wLqKupj-:active{color:#b2b5be}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){html.theme-dark .item-2xPVYue0-.isDisabled-1wLqKupj-:hover{color:#b2b5be}}.item-2xPVYue0-.isActive-2j-GhQs_-,.item-2xPVYue0-.isActive-2j-GhQs_-:active{color:#fff;background-color:#2196f3}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){.item-2xPVYue0-.isActive-2j-GhQs_-:hover{color:#fff;background-color:#2196f3}}html.theme-dark .item-2xPVYue0-.isActive-2j-GhQs_-,html.theme-dark .item-2xPVYue0-.isActive-2j-GhQs_-:active{background-color:#1976d2}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){html.theme-dark .item-2xPVYue0-.isActive-2j-GhQs_-:hover{background-color:#1976d2}}html.theme-dark .item-2xPVYue0-.isActive-2j-GhQs_-,html.theme-dark .item-2xPVYue0-.isActive-2j-GhQs_-:active{color:#131722}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){html.theme-dark .item-2xPVYue0-.isActive-2j-GhQs_-:hover{color:#131722}}.item-2xPVYue0-.isActive-2j-GhQs_- .icon-2Qm7YIcz- svg,.item-2xPVYue0-.isActive-2j-GhQs_-:active .icon-2Qm7YIcz- svg{fill:currentColor}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){.item-2xPVYue0-.isActive-2j-GhQs_-:hover .icon-2Qm7YIcz- svg{fill:currentColor}}.item-2xPVYue0-.isActive-2j-GhQs_- .shortcut-30pveiCO-,.item-2xPVYue0-.isActive-2j-GhQs_-:active .shortcut-30pveiCO-{color:hsla(0,0%,100%,.7)}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){.item-2xPVYue0-.isActive-2j-GhQs_-:hover .shortcut-30pveiCO-{color:hsla(0,0%,100%,.7)}}html.theme-dark .item-2xPVYue0-.isActive-2j-GhQs_- .shortcut-30pveiCO-,html.theme-dark .item-2xPVYue0-.isActive-2j-GhQs_-:active .shortcut-30pveiCO-{color:rgba(19,23,34,.7)}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){html.theme-dark .item-2xPVYue0-.isActive-2j-GhQs_-:hover .shortcut-30pveiCO-{color:rgba(19,23,34,.7)}}.item-2xPVYue0-.isActive-2j-GhQs_- .toolbox-3ulPxfe--,.item-2xPVYue0-.isActive-2j-GhQs_-:active .toolbox-3ulPxfe--{color:#fff}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){.item-2xPVYue0-.isActive-2j-GhQs_-:hover .toolbox-3ulPxfe--{color:#fff}}html.theme-dark .item-2xPVYue0-.isActive-2j-GhQs_- .toolbox-3ulPxfe--,html.theme-dark .item-2xPVYue0-.isActive-2j-GhQs_-:active .toolbox-3ulPxfe--{color:#fff}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){html.theme-dark .item-2xPVYue0-.isActive-2j-GhQs_-:hover .toolbox-3ulPxfe--{color:#fff}}.item-2xPVYue0-.withIcon-1xBjf-oB-{padding-top:6px;padding-bottom:6px}.item-2xPVYue0-:before{content:" ";display:block;height:28px}.icon-2Qm7YIcz-{display:flex;margin-left:7px;align-items:center;justify-content:center;width:28px;height:28px}.icon-2Qm7YIcz- svg{display:block;fill:currentColor}.labelRow-3Q0rdE8--{display:flex;flex-direction:row;align-items:baseline;justify-content:space-between;flex:1 0 auto;margin-left:14px}.labelRow-3Q0rdE8--:first-child{margin-right:4px}.labelRow-3Q0rdE8--:last-child{margin-left:4px}.label-3Xqxy756-{display:flex;flex:0 0 auto}.shortcut-30pveiCO-{font-size:11px;margin-left:14px;min-width:27px;color:#b2b5be}html.theme-dark .shortcut-30pveiCO-{color:#787b86}.toolbox-3ulPxfe--{display:flex;position:relative;align-items:center;color:#9db2bd}html.theme-dark .toolbox-3ulPxfe--{color:#9db2bd}.feature-no-mobiletouch .toolbox-3ulPxfe--.showOnHover-1q6ySzZc-{opacity:0}.toolbox-3ulPxfe-->:not(:last-child){margin-left:10px}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){.feature-no-mobiletouch .item-2xPVYue0-:hover .toolbox-3ulPxfe--.showOnHover-1q6ySzZc-{opacity:1}}.separator-25lkUpN--{margin:6px 0;height:1px;background-color:#e1ecf2}html.theme-dark .separator-25lkUpN--{background-color:#363c4e} \ No newline at end of file diff --git a/public/charting_library/static/bundles/11.dd520838f92e45cd91e3.js b/public/charting_library/static/bundles/11.dd520838f92e45cd91e3.js new file mode 100644 index 0000000..7a62800 --- /dev/null +++ b/public/charting_library/static/bundles/11.dd520838f92e45cd91e3.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[11],[]]); \ No newline at end of file diff --git a/public/charting_library/static/bundles/12.18e3c4b9c329e737cb80.js b/public/charting_library/static/bundles/12.18e3c4b9c329e737cb80.js new file mode 100644 index 0000000..068e5bb --- /dev/null +++ b/public/charting_library/static/bundles/12.18e3c4b9c329e737cb80.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[12],[]]); \ No newline at end of file diff --git a/public/charting_library/static/bundles/12.87f9777d9fe2086ce090.css b/public/charting_library/static/bundles/12.87f9777d9fe2086ce090.css new file mode 100644 index 0000000..4954f55 --- /dev/null +++ b/public/charting_library/static/bundles/12.87f9777d9fe2086ce090.css @@ -0,0 +1 @@ +.dialog-2APwxL3O-{display:flex;min-width:280px;text-align:left;box-sizing:border-box;background-color:#fff;flex-direction:column}html.theme-dark .dialog-2APwxL3O-{background-color:#1e222d}.dialog-2APwxL3O-.rounded-tXI9mwGE-{border-radius:4px}.dialog-2APwxL3O-.shadowed-2M13-xZa-{box-shadow:0 1px 2px 1px rgba(0,0,0,.275)}.dialog-2APwxL3O-.fullscreen-2RqU2pqU-{position:fixed;width:100%;max-width:100%;height:100%;max-height:100%;min-height:100%} \ No newline at end of file diff --git a/public/charting_library/static/bundles/12.87f9777d9fe2086ce090.rtl.css b/public/charting_library/static/bundles/12.87f9777d9fe2086ce090.rtl.css new file mode 100644 index 0000000..0a73eff --- /dev/null +++ b/public/charting_library/static/bundles/12.87f9777d9fe2086ce090.rtl.css @@ -0,0 +1 @@ +.dialog-2APwxL3O-{display:flex;min-width:280px;text-align:right;box-sizing:border-box;background-color:#fff;flex-direction:column}html.theme-dark .dialog-2APwxL3O-{background-color:#1e222d}.dialog-2APwxL3O-.rounded-tXI9mwGE-{border-radius:4px}.dialog-2APwxL3O-.shadowed-2M13-xZa-{box-shadow:0 1px 2px 1px rgba(0,0,0,.275)}.dialog-2APwxL3O-.fullscreen-2RqU2pqU-{position:fixed;width:100%;max-width:100%;height:100%;max-height:100%;min-height:100%} \ No newline at end of file diff --git a/public/charting_library/static/bundles/13.46f312828e93b6546d0c.js b/public/charting_library/static/bundles/13.46f312828e93b6546d0c.js new file mode 100644 index 0000000..ab82e13 --- /dev/null +++ b/public/charting_library/static/bundles/13.46f312828e93b6546d0c.js @@ -0,0 +1,3 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[13],{"+EG+":function(e,t,n){"use strict";var o,r,i,s;n.d(t,"a",function(){return i}),n.d(t,"b",function(){return s}),o=n("mrSG"),r=n("q1tI"),i=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return o.__extends(t,e),t.prototype.shouldComponentUpdate=function(){return!1},t.prototype.render=function(){return r.createElement("div",{style:{position:"fixed",zIndex:150,left:0,top:0},ref:this.props.reference})},t}(r.Component),s=r.createContext(null)},AVTG:function(e,t,n){"use strict";function o(e){var t=e.hideIcon?null:s.createElement(a.a,{className:u.close,icon:c,onClick:e.onClose});return s.createElement("div",{className:u.header,"data-dragg-area":!0,ref:e.reference},e.children,t)}function r(e){return s.createElement("div",{className:l(d.body,e.className),ref:e.reference},e.children)}function i(e){var t,n;return e.text?t=s.createElement("span",null,e.text):e.html&&(t=s.createElement("span",{dangerouslySetInnerHTML:{__html:e.html}})),n=p.message,e.isError&&(n+=" "+p.error),t?s.createElement("div",{className:n,key:"0"},s.createElement(h.a,{mouseDown:!0,touchStart:!0,handler:e.onClickOutside},t)):s.createElement("div",null)}var s=n("q1tI"),u=n("kgsH"),c=n("uo4K"),a=n("jjrI"),d=(n("kQXJ"),n("XYXm")),l=n("TSYQ"),p=n("cJj4"),h=n("RgaO");n.d(t,"b",function(){return o}),n.d(t,"a",function(){return r}),n.d(t,"c",function(){return i})},RgaO:function(e,t,n){"use strict";var o,r,i;n.d(t,"a",function(){return i}),o=n("mrSG"),r=n("q1tI"),i=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t._scope=null,t._handleScopeRef=function(e){return t._scope=e},t._handleOutsideEvent=function(e){void 0!==t.props.handler&&null!==t._scope&&e.target instanceof Node&&(t._scope.contains(e.target)||t.props.handler(e))},t}return o.__extends(t,e),t.prototype.componentDidMount=function(){this.props.click&&document.addEventListener("click",this._handleOutsideEvent,!1),this.props.mouseDown&&document.addEventListener("mousedown",this._handleOutsideEvent,!1),this.props.touchEnd&&document.addEventListener("touchend",this._handleOutsideEvent,!1),this.props.touchStart&&document.addEventListener("touchstart",this._handleOutsideEvent,!1)},t.prototype.componentWillUnmount=function(){document.removeEventListener("click",this._handleOutsideEvent,!1),document.removeEventListener("mousedown",this._handleOutsideEvent,!1),document.removeEventListener("touchend",this._handleOutsideEvent,!1),document.removeEventListener("touchstart",this._handleOutsideEvent,!1)},t.prototype.render=function(){var e=this.props,t=(e.click,e.handler,e.mouseDown,e.touchEnd,e.touchStart,e.ctor),n=void 0===t?"span":t,i=o.__rest(e,["click","handler","mouseDown","touchEnd","touchStart","ctor"]);return r.createElement(n,o.__assign({},i,{ref:this._handleScopeRef}))},t}(r.PureComponent)},XYXm:function(e,t,n){e.exports={body:"body-2N-vuwQW-"}},cJj4:function(e,t,n){e.exports={message:"message-2o-rtQm0-",error:"error-2EW0C6z--"}},jAh7:function(e,t,n){"use strict";function o(e){var t,n,o +;return void 0===e&&(e=document),null!==(t=e.getElementById("overlap-manager-root"))?Object(r.ensureDefined)(u.get(t)):(n=new s(e),o=function(e){var t=e.createElement("div");return t.style.position="absolute",t.style.zIndex=150..toString(),t.style.top="0px",t.style.left="0px",t.id="overlap-manager-root",t}(e),u.set(o,n),n.setContainer(o),e.body.appendChild(o),n)}var r,i,s,u;n.r(t),n.d(t,"OverlapManager",function(){return s}),n.d(t,"getRootOverlapManager",function(){return o}),r=n("Eyy1"),i=function(){function e(){this._storage=[]}return e.prototype.add=function(e){this._storage.push(e)},e.prototype.remove=function(e){this._storage=this._storage.filter(function(t){return e!==t})},e.prototype.has=function(e){return this._storage.includes(e)},e.prototype.getItems=function(){return this._storage},e}(),s=function(){function e(e){void 0===e&&(e=document),this._storage=new i,this._windows=new Map,this._index=0,this._document=e,this._container=e.createDocumentFragment()}return e.prototype.setContainer=function(e){var t=this._container,n=null===e?this._document.createDocumentFragment():e;!function(e,t){Array.from(e.childNodes).forEach(function(e){e.nodeType===Node.ELEMENT_NODE&&t.appendChild(e)})}(t,n),this._container=n},e.prototype.registerWindow=function(e){this._storage.has(e)||this._storage.add(e)},e.prototype.ensureWindow=function(e,t){var n,o;return void 0===t&&(t={position:"fixed"}),void 0!==(n=this._windows.get(e))?n:(this.registerWindow(e),(o=this._document.createElement("div")).style.position=t.position,o.style.zIndex=this._index.toString(),o.dataset.id=e,this._container.appendChild(o),this._windows.set(e,o),++this._index,o)},e.prototype.unregisterWindow=function(e){this._storage.remove(e);var t=this._windows.get(e);void 0!==t&&(null!==t.parentElement&&t.parentElement.removeChild(t),this._windows.delete(e))},e.prototype.getZindex=function(e){var t=this.ensureWindow(e);return parseInt(t.style.zIndex||"0")},e.prototype.moveToTop=function(e){this.getZindex(e)!==this._index&&(this.ensureWindow(e).style.zIndex=(++this._index).toString())},e.prototype.removeWindow=function(e){this.unregisterWindow(e)},e}(),u=new WeakMap},jjrI:function(e,t,n){"use strict";function o(e){var t=e.className,n=e.icon,o=void 0===n?"":n,s=e.title,u=e.onClick,c=e.onMouseDown,a=e.onMouseUp,d=e.onMouseLeave,l=e.reference,p=r.__rest(e,["className","icon","title","onClick","onMouseDown","onMouseUp","onMouseLeave","reference"]);return i.createElement("span",r.__assign({},p,{title:s,className:t,dangerouslySetInnerHTML:{__html:o},onClick:u,onMouseDown:c,onMouseUp:a,onMouseLeave:d,ref:l}))}var r,i;n.d(t,"a",function(){return o}),r=n("mrSG"),i=n("q1tI")},kQXJ:function(e,t,n){e.exports={footer:"footer-2Zoji8zg-"}},kgsH:function(e,t,n){e.exports={header:"header-dpl-vtN_-",close:"close-3kPn4OTV-"}},uo4K:function(e,t){ +e.exports=''},"ycI/":function(e,t,n){"use strict";var o,r,i;n.d(t,"a",function(){return i}),o=n("mrSG"),r=n("q1tI"),i=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t._handleKeyDown=function(e){e.keyCode===t.props.keyCode&&t.props.handler(e)},t}return o.__extends(t,e),t.prototype.componentDidMount=function(){document.addEventListener(this.props.eventType||"keydown",this._handleKeyDown,!1)},t.prototype.componentWillUnmount=function(){document.removeEventListener(this.props.eventType||"keydown",this._handleKeyDown,!1)},t.prototype.render=function(){return null},t}(r.PureComponent)}}]); \ No newline at end of file diff --git a/public/charting_library/static/bundles/14.579d7892443d1a90180c.js b/public/charting_library/static/bundles/14.579d7892443d1a90180c.js new file mode 100644 index 0000000..21068f1 --- /dev/null +++ b/public/charting_library/static/bundles/14.579d7892443d1a90180c.js @@ -0,0 +1,4 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[14],{"1O6C":function(t,e,n){"use strict";var o,i,r,s,a,u,h,l;n.d(e,"a",function(){return l}),o=n("mrSG"),i=n("q1tI"),r=n("TSYQ"),s=n("+EG+"),a=n("jAh7"),u=n("QpNh"),h=n("aYmi"),l=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e._manager=new a.OverlapManager,e._handleSlot=function(t){e._manager.setContainer(t)},e}return o.__extends(e,t),e.prototype.render=function(){var t=this.props,e=t.rounded,n=void 0===e||e,a=t.shadowed,l=void 0===a||a,c=t.fullscreen,d=void 0!==c&&c,p=t.className,_=r(p,h.dialog,n&&h.rounded,l&&h.shadowed,d&&h.fullscreen),g=Object(u.a)(this.props);return i.createElement(i.Fragment,null,i.createElement(s.b.Provider,{value:this._manager},i.createElement("div",o.__assign({},g,{className:_,style:this._createStyles(),ref:this.props.reference,onFocus:this.props.onFocus,onMouseDown:this.props.onMouseDown,onMouseUp:this.props.onMouseUp,onClick:this.props.onClick,onKeyDown:this.props.onKeyDown,tabIndex:-1}),this.props.children)),i.createElement(s.a,{reference:this._handleSlot}))},e.prototype._createStyles=function(){var t=this.props,e=t.bottom,n=t.left,o=t.width;return{bottom:e,left:n,right:t.right,top:t.top,zIndex:t.zIndex,maxWidth:o,height:t.height}},e}(i.PureComponent)},AiMB:function(t,e,n){"use strict";var o,i,r,s,a,u,h,l;n.d(e,"a",function(){return h}),n.d(e,"b",function(){return l}),o=n("mrSG"),i=n("q1tI"),r=n("i8i4"),s=n("0waE"),a=n("jAh7"),u=n("+EG+"),h=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e._uuid=Object(s.guid)(),e}return o.__extends(e,t),e.prototype.componentWillUnmount=function(){this._manager().removeWindow(this._uuid)},e.prototype.render=function(){return r.createPortal(i.createElement(l.Provider,{value:this},this.props.children),this._manager().ensureWindow(this._uuid))},e.prototype.moveToTop=function(){this._manager().moveToTop(this._uuid)},e.prototype._manager=function(){return null===this.context?Object(a.getRootOverlapManager)():this.context},e.contextType=u.b,e}(i.PureComponent),l=i.createContext(null)},QpNh:function(t,e,n){"use strict";function o(t){var e,n,o,r,s,a=Object.entries(t).filter(i),u={};for(e=0,n=a;eo&&(t=o-e),t
{{text}}'+s+'
{{^removeOkButton}}
{{/removeOkButton}}',{captionClassName:r,classSuffix:e.classSuffix||"",text:o,removeOkButton:e&&e.removeOkButton})),n.modalDialog.find("._tv-button.ok").on("click",function(){n.destroy(),e.onOkButtonClick&&e.onOkButtonClick()}),n.positionDialog(),n.applyHandlers(!1,{doNotCloseOnBgClickIfShadowbox:a,beforeDestroy:e.onClose}),n.modalDialog},showCustomDialog:function(t){function o(t){n.destroy(),t.preventDefault()}return n.createModalDialog(t.title||$.t("Dialog"),{addClass:""}),n.modalDialog.find("._tv-dialog").css("width",t.width||"400px"),n.modalDialog.find("._tv-dialog-content").html('
'+(t.html||$.t("Content"))+"
"),n.modalDialog.find(".ok").click(o),n.modalDialog.find("form").submit(o),n.modalDialog.find(".cancel").click(o),n.modalDialog.find("._tv-dialog-title-close").click(o),n.positionDialog(),n.applyHandlers(), +n.modalDialog},createModalDialog:function(t,o){var e,i;return o=o||{},null!==n.modalDialog&&n.destroy(),n.modalDialog=$('
'+(o.noHeader?"":'
'+(o.noClose?"":'')+''+t+"
")+'
').appendTo($("body")).data("title",t),n._addMessageCloseButton(n.modalDialog.find("._tv-dialog-error")),n._addMessageCloseButton(n.modalDialog.find("._tv-dialog-message")),o.noShadowBox&&n.modalDialog.addClass("transparent"),o.addClass&&n.modalDialog.addClass(o.addClass),o.width&&n.modalDialog.find("._tv-dialog").css({width:o.width}),o.content&&n.modalDialog.find("._tv-dialog-content").html(o.content),(e=$(".fancybox-overlay")).length&&(i=e.css("z-index"),$("._tv-dialog-shadowbox").css("z-index",i+1)),o.draggable&&s(n.modalDialog).draggable(n._constrainDraggableOptionsIfNeeded({handle:n.modalDialog.find("._tv-dialog-title")})),o.zIndex&&n.modalDialog.css("z-index",o.zIndex),n.modalDialog},_addMessageCloseButton:function(t){var o=$(e("BhuR")).attr({class:"close",title:$.t("Close message")});t.append(o),$(o).on("click",function(){t.animate({marginTop:n.NOTIFICATION_ANIMATION_START_OFFSET,opacity:0},"fast",function(){t.hide()})})},createDialog:function(t,o){var e,d,r,c,u,g;return n.isOpen(t)?((e=n.get(t)).find("._tv-dialog-content").html(""),e.data("new",!1),e):(d=(o=o||{}).ownerDocument||document,c=(r=l(d)).ensureWindow(t,{position:"relative"}),e=$(i.render('
{{^hideTitle}} {{&title}}{{/hideTitle}}{{^hideCloseCross}}{{/hideCloseCross}}
',{addClass:o.addClass||"",hideTitle:o.hideTitle,hideCloseCross:o.hideCloseCross,title:t}),d).appendTo(c),n._addMessageCloseButton(e.find("._tv-dialog-error")),n._addMessageCloseButton(e.find("._tv-dialog-message")),o.width&&e.css({width:o.width}),o.content&&e.find("._tv-dialog-content").html(o.content),u=0,u=o.zIndex?o.zIndex:n.dialogs&&n.dialogs.length?a($.map(n.dialogs,function(t){return parseInt((t.dialog||t).css("z-index"),10)}))+1:110,e.css("z-index",u),e.data("new",!0),e.data("title",t),e.data("id",n.dialogs.length+1),n.dialogs.push({title:t,dialog:e,id:n.dialogs.length+1}),e.on("mousedown touchstart",function(){r.moveToTop(t)}),g={start:function(t,o){var e,i,a=o.helper.css("z-index"),s=0,l=null;for(e=0;es&&(s=i,l=n.dialogs[e].dialog) +;o.helper.css("z-index",s),l.css("z-index",a)}},o.dragHandle?g.handle=o.dragHandle:o.hideTitle||(g.handle="._tv-dialog-title"),o.dragOptions&&$.extend(g,o.dragOptions),s(e).draggable(n._constrainDraggableOptionsIfNeeded(g)),e)},positionDialog:function(t,o,e){function i(){a.css("margin-left",-Math.round(a.outerWidth()/2)+"px"),a.css("margin-top",-Math.round(a.outerHeight()/2)+"px")}var a,s,l,d,r,c,u,g,p,f;e=e||{},o=o||e.position,t?(l=(s=t.prop("ownerDocument")).defaultView,d=t.width(),r=t.height(),c=$(l).width(),u=$(l).height(),o&&o.top&&o.left?(p=e.forcePosition?o.left:Math.max(2,Math.min(c-d-4,o.left))+"px",g=e.forcePosition?o.top:Math.max(2,Math.min(u-r-4,o.top))+"px"):o&&o.considerScroll?(f=$(s),p=Math.round((c-d)/2+f.scrollLeft())+"px",g=Math.round((u-r)/2+f.scrollTop())+"px"):(p=Math.round((c-d)/2)+"px",g=Math.round((u-r)/2)+"px"),e.fadeIn?t.css({left:p,top:g}).hide().fadeIn("fast"):e.smooth?t.animate({left:p,top:g}):t.css({left:p,top:g})):(t=n.modalDialog,a=t.find("._tv-dialog"),i(),a.resize(i))},applyHandlers:function(t,o){var e,i,a,s=!t||t===this.modalDialog;o=o||{},e=s?function(){n.destroy()}:function(){n.destroy(t.data("title"))},t=t||n.modalDialog.find("._tv-dialog"),i=t.prop("ownerDocument"),o.beforeDestroy&&t.on("destroy",o.beforeDestroy),t.find("._tv-dialog-title ._tv-dialog-title-close, .js-dialog-close").on("click",function(t){o.closeHandler&&"function"==typeof o.closeHandler?o.closeHandler(t):e()}),o.doNotCloseOnBgClick||setTimeout(function(){$(i).on("mousedown.closeDialog",function(n){var a=$(n.target).parents().andSelf();a.is(t)||o.doNotCloseOnBgClickIfShadowbox&&a.is("._tv-dialog-shadowbox, .tv-dialog__modal-wrap")||a.is(".colorpicker, .charts-popup-list, ._tv-dialog, .tvcolorpicker-popup, .symbol-edit-popup, .ui-datepicker, .clockpicker-popover, .pac-container, .context-menu-wrapper")||($(i).off("mousedown.closeDialog"),e())})},0),t.find('input[type="checkbox"]').change(function(){var t=$(this),o=t.next("._tv-dialog-checkbox-mask");o.toggleClass("disabled",t.prop("disabled")).toggleClass("_tv-dialog-checkbox-mask-active",t.is(":checked"))}),a=t.find('input[type="text"]').focus(function(){$(this).addClass("_tv-dialog-content-textactive")}).blur(function(){$(this).removeClass("_tv-dialog-content-textactive")}).first(),Modernizr.mobiletouch||o.notFocusFirst||a.focus(),t.find('input[type="password"]').focus(function(){$(this).addClass("_tv-dialog-content-textactive")}).blur(function(){$(this).removeClass("_tv-dialog-content-textactive")}),t.find("textarea").focus(function(){$(this).addClass("_tv-dialog-content-textareaactive")}).blur(function(){$(this).removeClass("_tv-dialog-content-textareaactive")}),t.find("._tv-dialog-checkbox-mask").click(function(){var t=$(this).prev();t.prop("disabled")||(t.prop("checked",!t[0].checked),t.change())}),o.doNotCloseOnEsc||$(i).bind("keyup.hideDialog",function(o){if(27===o.keyCode)return t?n.destroy(t.data("title")):n.destroy(),!1}),o.processEnterButton&&$(i).bind("keyup.confirmAndCloseDialog",function(t){ +13===t.keyCode&&"textarea"!==t.target.tagName.toLowerCase()&&(o.processEnterButton.click(),$(i).unbind("keyup.confirmAndCloseDialog"))})},showError:function(t,o,e){n.showMessage(t,o,$.extend(e||{},{isError:!0}))},showMessage:function(t,o,e){var i,a,s;o||(o=$("._tv-dialog")),i=(e=e||{}).isError?"_tv-dialog-error":"_tv-dialog-message",s=(a=o.find("."+i)).find(".message"),e.html?s.html("string"==typeof e.html?e.html:t):s.text(t),s.css("width",o.width()).toggleClass("selectable",Boolean(e.selectable)),a.toggleClass("with-close",Boolean(e.withClose)).css({marginTop:n.NOTIFICATION_ANIMATION_START_OFFSET,opacity:"0"}).show().animate({marginTop:0,opacity:1},"fast"),e.withClose||(e.hideWithoutAnimation?a.on("touchstartoutside mousedownoutside keydownoutside",function t(){a.hide(),a.off("touchstartoutside mousedownoutside keydownoutside",t)}):a.on("touchstartoutside mousedownoutside keydownoutside",function t(){a.animate({marginTop:n.NOTIFICATION_ANIMATION_START_OFFSET,opacity:0},"fast",function(){a.hide()}),a.off("touchstartoutside mousedownoutside keydownoutside",t)}))},isOpen:function(t){for(var o=0;oi&&(n-=t-i,n=Math.max(0,n),o.height(n))}},t.exports.TVOldDialogs=n}).call(this,e("Kxc7"),e("OiQe"))},PVgW:function(t,o,e){"use strict";function i(t){return t=Math.abs(t),!Object(r.isInteger)(t)&&t>1&&(t=parseFloat(t.toString().replace(/^.+\./,"0."))),0').appendTo(l.parent()),e=$('
').html(c).appendTo(o),i=$('
').html(c).appendTo(o),o.on("mousedown",function(t){t.preventDefault(),l.focus()}),e.click(function(){l.is(":disabled")||a(l)}),i.click(function(){l.is(":disabled")||s(l)}),l.keydown(function(t){l.is(":disabled")||(38===t.keyCode?e.addClass("i-active"):40===t.keyCode&&i.addClass("i-active"))}),l.keyup(function(t){l.is(":disabled")||(38===t.keyCode?(a(l),e.removeClass("i-active")):40===t.keyCode&&(s(l),i.removeClass("i-active")))}),l.mousewheel(function(t){t.deltaY*(t.deltaFactor/100)>0?e.click():i.click()}))})}},"R4+T":function(t,o){t.exports=''},jAh7:function(t,o,e){"use strict";function i(t){var o,e,i;return void 0===t&&(t=document),null!==(o=t.getElementById("overlap-manager-root"))?Object(n.ensureDefined)(l.get(o)):(e=new s(t),i=function(t){var o=t.createElement("div");return o.style.position="absolute",o.style.zIndex=150..toString(),o.style.top="0px",o.style.left="0px",o.id="overlap-manager-root",o}(t),l.set(i,e),e.setContainer(i),t.body.appendChild(i),e)}var n,a,s,l;e.r(o),e.d(o,"OverlapManager",function(){return s}),e.d(o,"getRootOverlapManager",function(){return i}),n=e("Eyy1"),a=function(){function t(){this._storage=[]}return t.prototype.add=function(t){this._storage.push(t)},t.prototype.remove=function(t){this._storage=this._storage.filter(function(o){return t!==o})},t.prototype.has=function(t){return this._storage.includes(t)},t.prototype.getItems=function(){return this._storage},t}(),s=function(){function t(t){void 0===t&&(t=document),this._storage=new a,this._windows=new Map,this._index=0,this._document=t,this._container=t.createDocumentFragment()}return t.prototype.setContainer=function(t){var o=this._container,e=null===t?this._document.createDocumentFragment():t;!function(t,o){Array.from(t.childNodes).forEach(function(t){t.nodeType===Node.ELEMENT_NODE&&o.appendChild(t)})}(o,e),this._container=e},t.prototype.registerWindow=function(t){this._storage.has(t)||this._storage.add(t)},t.prototype.ensureWindow=function(t,o){var e,i;return void 0===o&&(o={position:"fixed"}),void 0!==(e=this._windows.get(t))?e:(this.registerWindow(t),(i=this._document.createElement("div")).style.position=o.position,i.style.zIndex=this._index.toString(), +i.dataset.id=t,this._container.appendChild(i),this._windows.set(t,i),++this._index,i)},t.prototype.unregisterWindow=function(t){this._storage.remove(t);var o=this._windows.get(t);void 0!==o&&(null!==o.parentElement&&o.parentElement.removeChild(o),this._windows.delete(t))},t.prototype.getZindex=function(t){var o=this.ensureWindow(t);return parseInt(o.style.zIndex||"0")},t.prototype.moveToTop=function(t){this.getZindex(t)!==this._index&&(this.ensureWindow(t).style.zIndex=(++this._index).toString())},t.prototype.removeWindow=function(t){this.unregisterWindow(t)},t}(),l=new WeakMap},"y1L/":function(t,o,e){},zjLg:function(t,o,e){}}]); \ No newline at end of file diff --git a/public/charting_library/static/bundles/16.cc58f582c191485d9392.css b/public/charting_library/static/bundles/16.cc58f582c191485d9392.css new file mode 100644 index 0000000..c714af6 --- /dev/null +++ b/public/charting_library/static/bundles/16.cc58f582c191485d9392.css @@ -0,0 +1 @@ +.header-dpl-vtN_-{position:relative;font-size:14px;font-weight:700;color:#212121;padding:30px 60px 30px 30px;border-bottom:1px solid;border-bottom-color:#dadde0}html.theme-dark .header-dpl-vtN_-{border-bottom-color:#363c4e;color:#c5cbce}@media screen and (max-width:767px){.header-dpl-vtN_-{padding:20px 60px 20px 20px}}.header-dpl-vtN_- .close-3kPn4OTV-{position:absolute;padding:15px;top:17px;right:15px;cursor:pointer;opacity:.5;transition:opacity .35s ease;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}@media screen and (max-width:767px){.header-dpl-vtN_- .close-3kPn4OTV-{top:7px;right:7px}}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){.header-dpl-vtN_- .close-3kPn4OTV-:hover{opacity:1;transition-duration:.06s}}.header-dpl-vtN_- .close-3kPn4OTV- svg{display:block;width:13px;height:13px;fill:#4a4a4a}html.theme-dark .header-dpl-vtN_- .close-3kPn4OTV- svg{fill:#c5cbce}.footer-2Zoji8zg-{padding:0 30px 30px}@media screen and (max-width:767px){.footer-2Zoji8zg-{padding:0 20px 20px}}.body-2N-vuwQW-{flex-grow:1;padding:30px;overflow:auto;-webkit-overflow-scrolling:touch}.body-2N-vuwQW-::-webkit-scrollbar{width:5px;height:5px}.body-2N-vuwQW-::-webkit-scrollbar-thumb{border:1px solid;border-color:#f1f3f6;border-radius:3px;background-color:#9db2bd}html.theme-dark .body-2N-vuwQW-::-webkit-scrollbar-thumb{background-color:#363c4e;border-color:#1c2030}.body-2N-vuwQW-::-webkit-scrollbar-track{background-color:transparent;border-radius:3px}@media screen and (max-width:767px){.body-2N-vuwQW-{padding:20px}}.message-2o-rtQm0-{position:absolute;left:0;top:0;right:0;font-size:14px;padding:30px;text-align:center;color:#37bc9b;background:#ebf9f5;transition:opacity .2625s ease,transform .2625s ease}html.theme-dark .message-2o-rtQm0-{background:#21384d}.message-2o-rtQm0-.error-2EW0C6z--{color:#ff4a68;background:#ffedf0}html.theme-dark .message-2o-rtQm0-.error-2EW0C6z--{background:#6f2626} \ No newline at end of file diff --git a/public/charting_library/static/bundles/16.cc58f582c191485d9392.rtl.css b/public/charting_library/static/bundles/16.cc58f582c191485d9392.rtl.css new file mode 100644 index 0000000..2ae2f1e --- /dev/null +++ b/public/charting_library/static/bundles/16.cc58f582c191485d9392.rtl.css @@ -0,0 +1 @@ +.header-dpl-vtN_-{position:relative;font-size:14px;font-weight:700;color:#212121;padding:30px 30px 30px 60px;border-bottom:1px solid;border-bottom-color:#dadde0}html.theme-dark .header-dpl-vtN_-{border-bottom-color:#363c4e;color:#c5cbce}@media screen and (max-width:767px){.header-dpl-vtN_-{padding:20px 20px 20px 60px}}.header-dpl-vtN_- .close-3kPn4OTV-{position:absolute;padding:15px;top:17px;left:15px;cursor:pointer;opacity:.5;transition:opacity .35s ease;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}@media screen and (max-width:767px){.header-dpl-vtN_- .close-3kPn4OTV-{top:7px;left:7px}}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){.header-dpl-vtN_- .close-3kPn4OTV-:hover{opacity:1;transition-duration:.06s}}.header-dpl-vtN_- .close-3kPn4OTV- svg{display:block;width:13px;height:13px;fill:#4a4a4a}html.theme-dark .header-dpl-vtN_- .close-3kPn4OTV- svg{fill:#c5cbce}.footer-2Zoji8zg-{padding:0 30px 30px}@media screen and (max-width:767px){.footer-2Zoji8zg-{padding:0 20px 20px}}.body-2N-vuwQW-{flex-grow:1;padding:30px;overflow:auto;-webkit-overflow-scrolling:touch}.body-2N-vuwQW-::-webkit-scrollbar{width:5px;height:5px}.body-2N-vuwQW-::-webkit-scrollbar-thumb{border:1px solid;border-color:#f1f3f6;border-radius:3px;background-color:#9db2bd}html.theme-dark .body-2N-vuwQW-::-webkit-scrollbar-thumb{background-color:#363c4e;border-color:#1c2030}.body-2N-vuwQW-::-webkit-scrollbar-track{background-color:transparent;border-radius:3px}@media screen and (max-width:767px){.body-2N-vuwQW-{padding:20px}}.message-2o-rtQm0-{position:absolute;right:0;top:0;left:0;font-size:14px;padding:30px;text-align:center;color:#37bc9b;background:#ebf9f5;transition:opacity .2625s ease,transform .2625s ease}html.theme-dark .message-2o-rtQm0-{background:#21384d}.message-2o-rtQm0-.error-2EW0C6z--{color:#ff4a68;background:#ffedf0}html.theme-dark .message-2o-rtQm0-.error-2EW0C6z--{background:#6f2626} \ No newline at end of file diff --git a/public/charting_library/static/bundles/16.e0d00f8a564954896734.js b/public/charting_library/static/bundles/16.e0d00f8a564954896734.js new file mode 100644 index 0000000..1be04ea --- /dev/null +++ b/public/charting_library/static/bundles/16.e0d00f8a564954896734.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[16],[]]); \ No newline at end of file diff --git a/public/charting_library/static/bundles/17.00b04a06a8cd9c6f5f6c.js b/public/charting_library/static/bundles/17.00b04a06a8cd9c6f5f6c.js new file mode 100644 index 0000000..d0e5e33 --- /dev/null +++ b/public/charting_library/static/bundles/17.00b04a06a8cd9c6f5f6c.js @@ -0,0 +1,5 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[17],{bR4N:function(t,e,a){"use strict";var n,o=a("wmOI").ESC,s=a("0waE").guid,i=a("jAh7").getRootOverlapManager,p=function(t,e,n){var l,c,r,u,d,h,f=".popup-menu";t=$(t),(n=n||{}).activeClass=n.activeClass||"",l=(n.event||"click")+f,n.hideEvent&&(c=n.hideEvent+f),u=r=function(){},d={},h=function(l,h,v){function m(e){var a=$(e.target).parents().andSelf();a.is(w)||a.is(t)||a.is(".charts-popup-tab-headers, .charts-popup-itemheader")||u()}function g(t){if(d.preventFirstProcessClick)d.preventFirstProcessClick=!1;else{var e=$(t.target).parents().andSelf();e.is(".charts-popup-tab-headers, .charts-popup-itemheader")||n.notCloseOnButtons&&e.is(".icon-delete")||u()}}function b(t){t.keyCode===o&&u()}var C,w,y,T,x,D,_,k,S,M,A,I,N,L,E,O,W,P,R,z,B,F,G,H=s(),J=l.target.ownerDocument,U=J.defaultView,V=i(J),K=h||e;if("function"==typeof K&&(K=K()),$(this).hasClass("open")||$(this).hasClass("active"))return l.preventDefault(),u(),void(C=d.scrollTop);switch(u=function(){d.scrollTop=w.scrollTop(),w.remove(),V.removeWindow(H),t.removeClass("active open "+n.activeClass),t.data("popup-menu",null),$(J).off("click",g),$(J).off("mousedown",m),Modernizr.mobiletouch&&$(J).off("touchstart.chartgui",m),$(J).off("selectstart."+f),J.removeEventListener("keydown",b,!1),u=r,n.onRemove&&n.onRemove()},t.addClass("active open "+n.activeClass),w=$('
'),n.addClass&&w.addClass(n.addClass),n.zIndex&&w.css("z-index",n.zIndex),y=w,n.listInner&&(y=$('
').appendTo(y)),n.listTable&&(y=$('').text(o.title));else{if(o.separator)return h=$(''),void i.append(h);h=$(''),o.url&&h.attr("href",o.url),o.target&&h.attr("target",o.target),s||h.addClass("first"),"function"==typeof o.active?o.active(o)&&h.addClass("active"):o.active&&h.addClass("active"),o.addClass&&h.addClass(o.addClass),o.addData&&h.data(o.addData),o.disabled&&h.addClass("disabled"),"function"==typeof o.action&&(f=o.action,v=function(t){$(t.target).parents().andSelf().is(T)||(f.apply(h,arguments),!o.url&&t&&"function"==typeof t.preventDefault&&t.preventDefault())},n.upAction?h.bind("mouseup",v):h.bind("click",v)),o.date?(m=$('').appendTo(h),$('').text(o.date||"").appendTo(h)):o.icon&&!n.svg?((g=$('').appendTo(h)).css("background-image",o.icon.image||""),o.icon.offset&&g.css("background-position","string"==typeof o.icon.offset?o.icon.offset:o.icon.offset.x+"px "+o.icon.offset.y+"px"),m=$('').appendTo(h)):!0===n.svg&&o.svg?(n.wrapIcon?h.append($('').addClass(o.iconClass).append(o.svg)):h.append(o.svg),m=$('').appendTo(h)):o.iconClass?(h.append($('').addClass(o.iconClass)),m=$('').appendTo(h)):m=$('').appendTo(h),o.html?m.html(o.html):m.text(TradingView.clean(o.title,!0)||""),b=$('').appendTo(h),o.shortcut&&b.text(o.shortcut.keys),"function"==typeof o.deleteAction&&(C=o.deleteAction,y=o.deleteAction.title||$.t("Delete"),(T=$('')).html(a("uo4K")),T.attr("title",y),T.on("click",function(t){C.apply(h,arguments),t.preventDefault()}),h.append(T)),o.buttons instanceof Array&&o.buttons.length&&o.buttons.forEach(function(t){t.el instanceof $||(t.el=$(t.el)),t.el.appendTo(h),t.handler&&t.el.on("click",function(e){t.handler.apply(h,arguments)})}),void 0!==o.counter&&("function"==typeof o.counter?$('').html(o.counter()).appendTo(h):(x=o.counterBlue?"blue":"",$('').text(o.counter+"").addClass(x).appendTo(h))),i.append(h),t.data("popup-menu",i)}}(this,e,y)}),c||(d.preventFirstProcessClick=!0),$(J).on("click",g),$(J).on("mousedown",m),J.addEventListener("keydown",b,!1),Modernizr.mobiletouch&&$(J).on("touchstart.chartgui",m),n.upAction&&$(J).on("selectstart.popup-menu",function(){return!1}),w.appendTo(V.ensureWindow(H)),T=J.documentElement.clientWidth,x=J.documentElement.clientHeight,D=t.outerWidth(),_=t.outerHeight(),k=t.offset(),C=$(U).scrollTop()||0,k.top-=C, +k.top=Math.round(k.top),k.left=Math.round(k.left),S=w.outerWidth(),M=w.outerHeight(),A=void 0!==n.viewportSpacing?n.viewportSpacing:10,I=n.popupSpacing?~~n.popupSpacing:1,N=n.popupDrift?~~n.popupDrift:0,L=M-w.height(),E="down",n.direction&&(E="function"==typeof n.direction?n.direction():n.direction),O=!!n.reverse,"down"===E?(W=x-k.top-_-I-A-L,P=k.top-I-A-L,WW&&(E="up")):"right"===E&&(R=T-k.left-D-I-A-L,z=k.left-I-A-L,RR&&(E="left")),E){case"down":case"up":"down"===E?w.css("top",k.top+_+I+"px"):w.css("bottom",x-k.top+I+"px").css("top","auto"),O?w.css("left",Math.max(k.left+N+D-S,A)+"px").css("right","auto"):w.css("left",k.left+N+"px").css("right","auto");break;case"right":case"left":I=Math.max(I,4),"right"===E?w.css("left",Math.floor(k.left+D+I)+"px").css("right","auto"):w.css("left",Math.floor(Math.max(k.left-S-I,A))+"px").css("right","auto"),O?w.css("top",Math.floor(Math.max(k.top+N+_-M,A))+"px"):w.css("top",Math.floor(k.top+N)+"px")}w.show(),B=k.top,"up"===E||{left:1,right:1}[E]&&O?"up"!==E?B+=_:B-=_+I+L+A:B=x-B-_-2*I-L,w.height()>B&&w.addClass("popup-menu-scroll-y"),w.css("max-height",B+"px"),n.careRightBorder&&(F=T+$(U).scrollLeft(),parseInt(w.css("left"))+w.width()+A>F&&w.css("left",F-w.width()-A+"px").css("right","auto")),n.careBottomBorder&&parseInt(w.css("top"))+w.height()+A>x+C&&w.css("top",x-w.height()-A+C+"px"),G=w.offset(),w.css({position:"fixed",left:G.left-$(J).scrollLeft(),right:"auto"}),w[0].scrollHeight>w.height()&&w.addClass("popup-with-scroll"),l&&l.preventDefault()},l&&t.bind(l,h),c&&t.bind(c,function(){u()}),n.runOpened&&h()};p.TabGroup=function t(e){if(!(this instanceof t))return new t(e);e=e||{},this.tabs=[],"function"==typeof e.onChange&&(this.onChange=e.onChange)},p.TabGroup.prototype.appendTab=function(t,e,a){if(null==t?t="":t+="",e||(e=[]),a||(a={}),!Array.isArray(e))throw new TypeError("items must be an array");return this.tabs.push({name:t,items:e,active:!!a.active}),e},p.Header=function t(e){if(!(this instanceof t))return new t(e);this.title=e},p.Group=function t(e){if(!(this instanceof t))return new t(e);e=e||{},this.items=[],this.title=null==e.title?"":e.title+"",this.collapsible=!!e.collapsible,this.collapsed=!!e.collapsed,"function"==typeof e.onChange&&(this.onChange=e.onChange)},p.Group.prototype.push=function(){this.items.push.apply(this.items,arguments)},e.bindPopupMenu=p,n=function(t){(t=$(t)).unbind(".popup-menu"),t.removeData("popup-menu")},e.unbindPopupMenu=n},guTw:function(t,e,a){"use strict";(function(e){function n(t,a,n){var o={saveAsText:$.t("Save As..."),applyDefaultText:$.t("Apply Defaults")};this._toolName=t,this._applyTemplate=a,this._options=$.extend(o,n||{}),this._list=[],e.enabled("charting_library_base")||(this.templatesDeferred=this.loadData())}var o=a("bR4N").bindPopupMenu,s=a("UJLt").SaveRenameDialog,i=a("hkLy").InputField,p=a("oNDq").createConfirmDialog,l=a("uOxu").getLogger("Chart.LineToolTemplatesList");n._cache={},n.prototype.getData=function(){return this._list},n.prototype.loadData=function(){var t=this +;return this._toolName in n._cache?(this._list=n._cache[this._toolName],$.Deferred().resolve()):$.get("/drawing-templates/"+this._toolName+"/",function(e){t._list=e,n._cache[t._toolName]=e}).error(function(){l.logWarn("Failed to load drawing template: "+t._toolName)})},n.prototype.templatesLoaded=function(){return this.templatesDeferred},n.prototype.invalidateToolCache=function(){delete n._cache[this._toolName]},n.prototype.createButton=function(t){var e,a=this;return t=$.extend({},t,a._options),e=$("").addClass(t.buttonClass?t.buttonClass:"_tv-button").html(t.buttonInner?t.buttonInner:$.t("Template")+''),o(e,null,{event:"button-popup",hideEvent:"hide-popup",zIndex:t.popupZIndex,activeClass:t.popupActiveClass,direction:t.popupDirection}),e.bind("click",function(e){var n,o,s;e.stopPropagation(),$(this).is("active")||(n=[],"function"==typeof t.getDataForSaveAs&&(o=function(e){var n=JSON.stringify(t.getDataForSaveAs());a.saveTemplate(e,n)},n.push({title:t.saveAsText,action:a.showSaveDialog.bind(a,o),addClass:"special"})),"function"==typeof t.defaultsCallback&&n.push({title:t.applyDefaultText,action:t.defaultsCallback,addClass:"special"}),s=[],$.each(a._list,function(e,n){s.push({title:n,action:function(){a.loadTemplate.call(a,n,t.loadTemplateCallback)},deleteAction:function(){runOrSignIn(function(){var t=$.t("Do you really want to delete Drawing Template '{0}' ?").format(n);p({type:"modal",content:t}).then(function(t){t.on("action:yes",function(t){a.removeTemplate.call(a,n),t.close()}),t.open()})},{source:"Delete line tool template"})}})}),s.length&&(s.sort(function(t,e){return(t=t.title.toUpperCase())===(e=e.title.toUpperCase())?0:t>e?1:-1}),n.push({separator:!0}),n=n.concat(s)),$(this).trigger("button-popup",[n]))}),e},n.prototype.loadTemplate=function(t,e){var a=this;return $.get("/drawing-template/"+this._toolName+"/?templateName="+encodeURIComponent(t),function(t){a._applyTemplate(JSON.parse(t.content)),e&&e()}).error(function(t){l.logWarn(t.responseText)})},n.prototype.removeTemplate=function(t){if(t){$.post("/remove-drawing-template/",{name:t,tool:this._toolName}).error(function(t){l.logWarn(t.responseText)}),this.invalidateToolCache(),this._list=$.grep(this._list,function(e){return e!==t})}},n.prototype.saveTemplate=function(t,e){var a,n=this;t&&e&&(t=TradingView.clean(t),a=-1!==$.inArray(t,n._list),function(){var o={name:t,tool:n._toolName,content:e},s=function(){a||n._list.push(t)};$.post("/save-drawing-template/",o,s).error(function(t){l.logWarn(t.responseText)}),n.invalidateToolCache()}())},n.prototype.deleteAction=function(t){var e=t,a=this;runOrSignIn(function(){var t=$.t(" Do you really want to delete Drawing Template '{0}' ?").format(e);p({type:"modal",content:t}).then(function(t){t.on("action:yes",function(t){a.removeTemplate.call(a,e),t.close()}),t.open()})},{source:"Delete line tool template"})},n.prototype.showSaveDialog=function(t){var e=this,a="text",n=function(t){return TradingView.clean(t[a])},o=new s({fields:[new i({name:a,label:$.t("Template name")+":", +maxLength:64,error:$.t("Please enter template name")})],title:$.t("Save Drawing Template As"),confirm:{shouldShowDialog:function(t){return-1!==e._list.indexOf(n(t))},getMessage:function(t){return $.t("Drawing Template '{0}' already exists. Do you really want to replace it?").format(n(t))}}});runOrSignIn(function(){o.show().then(function(e){t(e[a])})},{source:"Save line tool template",sourceMeta:"Chart"})},t.exports=n}).call(this,a("Kxc7"))},uo4K:function(t,e){t.exports=''}}]); \ No newline at end of file diff --git a/public/charting_library/static/bundles/18.183d41ade16dae257526.css b/public/charting_library/static/bundles/18.183d41ade16dae257526.css new file mode 100644 index 0000000..71a8e58 --- /dev/null +++ b/public/charting_library/static/bundles/18.183d41ade16dae257526.css @@ -0,0 +1 @@ +.inputWrapper-6bNZbTW4-{display:flex;flex-grow:1;position:relative;border-radius:2px 2px 2px 2px}.textInput-3WRWEmm7-{background-color:#fff;border:1px solid;box-sizing:border-box;color:#535353;display:flex;font-size:13px;height:34px;padding:0 12px;transition:border-color .35s ease 0s,background-color .35s ease 0s;width:100%;-webkit-appearance:none;-moz-appearance:none;appearance:none;border-radius:inherit;border-color:#dadde0;flex:1}html.theme-dark .textInput-3WRWEmm7-{border-color:#363c4e;color:#f2f3f5;background-color:#131722}.textInput-3WRWEmm7-:-ms-input-placeholder,.textInput-3WRWEmm7-::-ms-input-placeholder{color:#adaeb0;opacity:1}.textInput-3WRWEmm7-::placeholder{color:#adaeb0;opacity:1}html.theme-dark .textInput-3WRWEmm7-:-ms-input-placeholder,html.theme-dark .textInput-3WRWEmm7-::-ms-input-placeholder{color:#4f5966}html.theme-dark .textInput-3WRWEmm7-::placeholder{color:#4f5966}.textInput-3WRWEmm7-[readonly],.textInput-3WRWEmm7-[readonly]:focus{border-color:#dadde0;color:#8a8a8a}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){.textInput-3WRWEmm7-[readonly]:hover{border-color:#dadde0;color:#8a8a8a}}html.theme-dark .textInput-3WRWEmm7-[readonly],html.theme-dark .textInput-3WRWEmm7-[readonly]:focus{color:#758696}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){html.theme-dark .textInput-3WRWEmm7-[readonly]:hover{color:#758696}}html.theme-dark .textInput-3WRWEmm7-[readonly],html.theme-dark .textInput-3WRWEmm7-[readonly]:focus{border-color:#363c4e}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){html.theme-dark .textInput-3WRWEmm7-[readonly]:hover{border-color:#363c4e}}.textInput-3WRWEmm7-[disabled]{color:#ececec;border-color:#ececec;background-color:#fff;cursor:auto}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){.textInput-3WRWEmm7-[disabled]:hover{color:#ececec;border-color:#ececec;background-color:#fff;cursor:auto}}html.theme-dark .textInput-3WRWEmm7-[disabled]{background-color:#131722}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){html.theme-dark .textInput-3WRWEmm7-[disabled]:hover{background-color:#131722}}html.theme-dark .textInput-3WRWEmm7-[disabled]{border-color:#262b3e}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){html.theme-dark .textInput-3WRWEmm7-[disabled]:hover{border-color:#262b3e}}html.theme-dark .textInput-3WRWEmm7-[disabled]{color:#262b3e}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){html.theme-dark .textInput-3WRWEmm7-[disabled]:hover{color:#262b3e}}.textInput-3WRWEmm7-[disabled]:-ms-input-placeholder,.textInput-3WRWEmm7-[disabled]::-ms-input-placeholder{color:#ececec}.textInput-3WRWEmm7-[disabled]::placeholder{color:#ececec}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){.textInput-3WRWEmm7-[disabled]:hover:-ms-input-placeholder,.textInput-3WRWEmm7-[disabled]:hover::-ms-input-placeholder{color:#ececec}.textInput-3WRWEmm7-[disabled]:hover::placeholder{color:#ececec}}html.theme-dark .textInput-3WRWEmm7-[disabled]:-ms-input-placeholder,html.theme-dark .textInput-3WRWEmm7-[disabled]::-ms-input-placeholder{color:#262b3e}html.theme-dark .textInput-3WRWEmm7-[disabled]::placeholder{color:#262b3e}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){html.theme-dark .textInput-3WRWEmm7-[disabled]:hover:-ms-input-placeholder,html.theme-dark .textInput-3WRWEmm7-[disabled]:hover::-ms-input-placeholder{color:#262b3e}html.theme-dark .textInput-3WRWEmm7-[disabled]:hover::placeholder{color:#262b3e}}.textInput-3WRWEmm7-.error-v0663AtN-,.textInput-3WRWEmm7-.error-v0663AtN-[disabled],.textInput-3WRWEmm7-.error-v0663AtN-[readonly]{border-color:#f24965!important}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){.textInput-3WRWEmm7-.error-v0663AtN-:hover{border-color:#f24965!important}}.textInput-3WRWEmm7-.success-7iP8kTY5-,.textInput-3WRWEmm7-.success-7iP8kTY5-[disabled],.textInput-3WRWEmm7-.success-7iP8kTY5-[readonly]{border-color:#38b395!important}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){.textInput-3WRWEmm7-.success-7iP8kTY5-:hover{border-color:#38b395!important}}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){.textInput-3WRWEmm7-:hover{border-color:#c8c8c8;transition-duration:.06s}}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){html.theme-dark .textInput-3WRWEmm7-:hover{border-color:#4c525e}}.textInput-3WRWEmm7-:focus{border-color:#2196f3!important;transition-duration:.06s}.textInput-3WRWEmm7-.textInputLeftDirection-mlAXPh8V-{text-align:left;direction:ltr}.xsmall-3Ah_Or2--{height:19px}.small-2bmxiJCE-{height:27px}.large-1JDowW2I-{height:48px}.iconed-3ZQvxTot- .textInput-3WRWEmm7-{padding-left:30px}.iconed-3ZQvxTot- .inputIcon-W_Bse-a1-{opacity:.4}.iconed-3ZQvxTot- .inputIcon-W_Bse-a1- svg{display:inline-block;position:absolute;width:14px;height:14px;margin:10px 0 0 10px;fill:#4a4a4a;stroke:#4a4a4a}.clearable-2tabt_rj- .textInput-3WRWEmm7-{display:inline-block;width:100%}.clearable-2tabt_rj- .clearIcon-389FR5J4-{display:inline-flex;position:absolute;right:12px;top:10px;cursor:pointer;opacity:.4}.clearable-2tabt_rj- .clearIcon-389FR5J4- svg{max-width:16px;height:16px;fill:#4a4a4a;stroke:#4a4a4a} \ No newline at end of file diff --git a/public/charting_library/static/bundles/18.183d41ade16dae257526.rtl.css b/public/charting_library/static/bundles/18.183d41ade16dae257526.rtl.css new file mode 100644 index 0000000..cc585cf --- /dev/null +++ b/public/charting_library/static/bundles/18.183d41ade16dae257526.rtl.css @@ -0,0 +1 @@ +.inputWrapper-6bNZbTW4-{display:flex;flex-grow:1;position:relative;border-radius:2px 2px 2px 2px}.textInput-3WRWEmm7-{background-color:#fff;border:1px solid;box-sizing:border-box;color:#535353;display:flex;font-size:13px;height:34px;padding:0 12px;transition:border-color .35s ease 0s,background-color .35s ease 0s;width:100%;-webkit-appearance:none;-moz-appearance:none;appearance:none;border-radius:inherit;border-color:#dadde0;flex:1}html.theme-dark .textInput-3WRWEmm7-{border-color:#363c4e;color:#f2f3f5;background-color:#131722}.textInput-3WRWEmm7-:-ms-input-placeholder,.textInput-3WRWEmm7-::-ms-input-placeholder{color:#adaeb0;opacity:1}.textInput-3WRWEmm7-::placeholder{color:#adaeb0;opacity:1}html.theme-dark .textInput-3WRWEmm7-:-ms-input-placeholder,html.theme-dark .textInput-3WRWEmm7-::-ms-input-placeholder{color:#4f5966}html.theme-dark .textInput-3WRWEmm7-::placeholder{color:#4f5966}.textInput-3WRWEmm7-[readonly],.textInput-3WRWEmm7-[readonly]:focus{border-color:#dadde0;color:#8a8a8a}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){.textInput-3WRWEmm7-[readonly]:hover{border-color:#dadde0;color:#8a8a8a}}html.theme-dark .textInput-3WRWEmm7-[readonly],html.theme-dark .textInput-3WRWEmm7-[readonly]:focus{color:#758696}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){html.theme-dark .textInput-3WRWEmm7-[readonly]:hover{color:#758696}}html.theme-dark .textInput-3WRWEmm7-[readonly],html.theme-dark .textInput-3WRWEmm7-[readonly]:focus{border-color:#363c4e}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){html.theme-dark .textInput-3WRWEmm7-[readonly]:hover{border-color:#363c4e}}.textInput-3WRWEmm7-[disabled]{color:#ececec;border-color:#ececec;background-color:#fff;cursor:auto}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){.textInput-3WRWEmm7-[disabled]:hover{color:#ececec;border-color:#ececec;background-color:#fff;cursor:auto}}html.theme-dark .textInput-3WRWEmm7-[disabled]{background-color:#131722}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){html.theme-dark .textInput-3WRWEmm7-[disabled]:hover{background-color:#131722}}html.theme-dark .textInput-3WRWEmm7-[disabled]{border-color:#262b3e}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){html.theme-dark .textInput-3WRWEmm7-[disabled]:hover{border-color:#262b3e}}html.theme-dark .textInput-3WRWEmm7-[disabled]{color:#262b3e}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){html.theme-dark .textInput-3WRWEmm7-[disabled]:hover{color:#262b3e}}.textInput-3WRWEmm7-[disabled]:-ms-input-placeholder,.textInput-3WRWEmm7-[disabled]::-ms-input-placeholder{color:#ececec}.textInput-3WRWEmm7-[disabled]::placeholder{color:#ececec}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){.textInput-3WRWEmm7-[disabled]:hover:-ms-input-placeholder,.textInput-3WRWEmm7-[disabled]:hover::-ms-input-placeholder{color:#ececec}.textInput-3WRWEmm7-[disabled]:hover::placeholder{color:#ececec}}html.theme-dark .textInput-3WRWEmm7-[disabled]:-ms-input-placeholder,html.theme-dark .textInput-3WRWEmm7-[disabled]::-ms-input-placeholder{color:#262b3e}html.theme-dark .textInput-3WRWEmm7-[disabled]::placeholder{color:#262b3e}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){html.theme-dark .textInput-3WRWEmm7-[disabled]:hover:-ms-input-placeholder,html.theme-dark .textInput-3WRWEmm7-[disabled]:hover::-ms-input-placeholder{color:#262b3e}html.theme-dark .textInput-3WRWEmm7-[disabled]:hover::placeholder{color:#262b3e}}.textInput-3WRWEmm7-.error-v0663AtN-,.textInput-3WRWEmm7-.error-v0663AtN-[disabled],.textInput-3WRWEmm7-.error-v0663AtN-[readonly]{border-color:#f24965!important}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){.textInput-3WRWEmm7-.error-v0663AtN-:hover{border-color:#f24965!important}}.textInput-3WRWEmm7-.success-7iP8kTY5-,.textInput-3WRWEmm7-.success-7iP8kTY5-[disabled],.textInput-3WRWEmm7-.success-7iP8kTY5-[readonly]{border-color:#38b395!important}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){.textInput-3WRWEmm7-.success-7iP8kTY5-:hover{border-color:#38b395!important}}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){.textInput-3WRWEmm7-:hover{border-color:#c8c8c8;transition-duration:.06s}}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){html.theme-dark .textInput-3WRWEmm7-:hover{border-color:#4c525e}}.textInput-3WRWEmm7-:focus{border-color:#2196f3!important;transition-duration:.06s}.textInput-3WRWEmm7-.textInputLeftDirection-mlAXPh8V-{text-align:left;direction:ltr}.xsmall-3Ah_Or2--{height:19px}.small-2bmxiJCE-{height:27px}.large-1JDowW2I-{height:48px}.iconed-3ZQvxTot- .textInput-3WRWEmm7-{padding-right:30px}.iconed-3ZQvxTot- .inputIcon-W_Bse-a1-{opacity:.4}.iconed-3ZQvxTot- .inputIcon-W_Bse-a1- svg{display:inline-block;position:absolute;width:14px;height:14px;margin:10px 10px 0 0;fill:#4a4a4a;stroke:#4a4a4a}.clearable-2tabt_rj- .textInput-3WRWEmm7-{display:inline-block;width:100%}.clearable-2tabt_rj- .clearIcon-389FR5J4-{display:inline-flex;position:absolute;left:12px;top:10px;cursor:pointer;opacity:.4}.clearable-2tabt_rj- .clearIcon-389FR5J4- svg{max-width:16px;height:16px;fill:#4a4a4a;stroke:#4a4a4a} \ No newline at end of file diff --git a/public/charting_library/static/bundles/18.e4c458360dbad4de5cf6.js b/public/charting_library/static/bundles/18.e4c458360dbad4de5cf6.js new file mode 100644 index 0000000..85ee7de --- /dev/null +++ b/public/charting_library/static/bundles/18.e4c458360dbad4de5cf6.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[18],[]]); \ No newline at end of file diff --git a/public/charting_library/static/bundles/19.aba848e28ec755548668.css b/public/charting_library/static/bundles/19.aba848e28ec755548668.css new file mode 100644 index 0000000..a5b87a7 --- /dev/null +++ b/public/charting_library/static/bundles/19.aba848e28ec755548668.css @@ -0,0 +1 @@ +.loader-3Pj8ExOX-{position:absolute;top:0;left:0;right:0;bottom:0;height:100%;margin:0 auto;text-align:center;font-size:0;opacity:1;transition:opacity .35s ease}.loader-3Pj8ExOX-:after{content:" ";display:inline-block;height:100%;vertical-align:middle}.loader-3Pj8ExOX- .item-2n55_7om-{margin-right:2px;margin-left:2px;display:inline-block;vertical-align:middle;width:10px;height:10px;opacity:1;border-radius:100%;transform:translateY(0) scale(.6);transition:transform .35s cubic-bezier(.68,-.55,.265,1.55);animation:tv-button-loader-SKpJjjYw- .96s infinite ease-in-out both}.loader-3Pj8ExOX- .item-2n55_7om-:nth-child(2){transition-delay:.11666667s;animation-delay:.151s}.loader-3Pj8ExOX- .item-2n55_7om-:nth-child(3){transition-delay:.23333333s;animation-delay:.32s}.loader-3Pj8ExOX- .item-2n55_7om-.black-eFIQWyf4-{background-color:#757575}.loader-3Pj8ExOX- .item-2n55_7om-.white-2Ma0ajvT-{background-color:#fff}.loader-3Pj8ExOX- .item-2n55_7om-.gray-24fvVR0S-{background-color:#8797a5}.loader-3Pj8ExOX-.loader-initial{opacity:.1}.loader-3Pj8ExOX-.loader-initial .item-2n55_7om-{animation:none;transform:translateY(12px) scale(.6)}.loader-3Pj8ExOX-.loader-appear{opacity:1;transition:opacity .7s ease}.loader-3Pj8ExOX-.loader-appear .item-2n55_7om-{animation:none;transform:translateY(0) scale(.6)}@keyframes tv-button-loader-SKpJjjYw-{0%,to{transform:scale(.6)}50%{transform:scale(.9)}} \ No newline at end of file diff --git a/public/charting_library/static/bundles/19.aba848e28ec755548668.rtl.css b/public/charting_library/static/bundles/19.aba848e28ec755548668.rtl.css new file mode 100644 index 0000000..069a2e6 --- /dev/null +++ b/public/charting_library/static/bundles/19.aba848e28ec755548668.rtl.css @@ -0,0 +1 @@ +.loader-3Pj8ExOX-{position:absolute;top:0;right:0;left:0;bottom:0;height:100%;margin:0 auto;text-align:center;font-size:0;opacity:1;transition:opacity .35s ease}.loader-3Pj8ExOX-:after{content:" ";display:inline-block;height:100%;vertical-align:middle}.loader-3Pj8ExOX- .item-2n55_7om-{margin-left:2px;margin-right:2px;display:inline-block;vertical-align:middle;width:10px;height:10px;opacity:1;border-radius:100%;transform:translateY(0) scale(.6);transition:transform .35s cubic-bezier(.68,-.55,.265,1.55);animation:tv-button-loader-SKpJjjYw- .96s infinite ease-in-out both}.loader-3Pj8ExOX- .item-2n55_7om-:nth-child(2){transition-delay:.11666667s;animation-delay:.151s}.loader-3Pj8ExOX- .item-2n55_7om-:nth-child(3){transition-delay:.23333333s;animation-delay:.32s}.loader-3Pj8ExOX- .item-2n55_7om-.black-eFIQWyf4-{background-color:#757575}.loader-3Pj8ExOX- .item-2n55_7om-.white-2Ma0ajvT-{background-color:#fff}.loader-3Pj8ExOX- .item-2n55_7om-.gray-24fvVR0S-{background-color:#8797a5}.loader-3Pj8ExOX-.loader-initial{opacity:.1}.loader-3Pj8ExOX-.loader-initial .item-2n55_7om-{animation:none;transform:translateY(12px) scale(.6)}.loader-3Pj8ExOX-.loader-appear{opacity:1;transition:opacity .7s ease}.loader-3Pj8ExOX-.loader-appear .item-2n55_7om-{animation:none;transform:translateY(0) scale(.6)}@keyframes tv-button-loader-SKpJjjYw-{0%,to{transform:scale(.6)}50%{transform:scale(.9)}} \ No newline at end of file diff --git a/public/charting_library/static/bundles/19.c5542d290eefbb001433.js b/public/charting_library/static/bundles/19.c5542d290eefbb001433.js new file mode 100644 index 0000000..eded22f --- /dev/null +++ b/public/charting_library/static/bundles/19.c5542d290eefbb001433.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[19],[]]); \ No newline at end of file diff --git a/public/charting_library/static/bundles/2.195070ea59b3395625da.js b/public/charting_library/static/bundles/2.195070ea59b3395625da.js new file mode 100644 index 0000000..8d153e3 --- /dev/null +++ b/public/charting_library/static/bundles/2.195070ea59b3395625da.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[2],[]]); \ No newline at end of file diff --git a/public/charting_library/static/bundles/2.a3e34146d368d13b6bc1.css b/public/charting_library/static/bundles/2.a3e34146d368d13b6bc1.css new file mode 100644 index 0000000..854e846 --- /dev/null +++ b/public/charting_library/static/bundles/2.a3e34146d368d13b6bc1.css @@ -0,0 +1 @@ +.tv-button{position:relative;display:inline-block;vertical-align:middle;min-width:40px;margin:0;padding:1px 22px;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;line-height:32px;text-align:center;white-space:nowrap;text-decoration:none;font-size:14px;color:#757575;fill:currentColor;border:none;border-radius:4px;outline:0;background-color:transparent;cursor:pointer;overflow:hidden;box-sizing:border-box;-webkit-tap-highlight-color:transparent;transition:background-color .35s ease,border-color .35s ease,color .35s ease}.tv-button.tv-button--danger_ghost,.tv-button.tv-button--default,.tv-button.tv-button--default_ghost,.tv-button.tv-button--primary_ghost,.tv-button.tv-button--secondary_ghost,.tv-button.tv-button--state,.tv-button.tv-button--success_ghost,.tv-button.tv-button--warning_ghost{padding:0 21px}.tv-button.i-active,.tv-button.i-hover,.tv-button:active{transition-duration:.06s}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){.tv-button:hover{transition-duration:.06s}}.tv-button svg{vertical-align:middle}.tv-button--block{display:block;width:100%;text-align:center}.tv-button+.tv-button{margin-left:15px}.tv-button.tv-button--no-left-margin{margin-left:0}.tv-button__text{position:relative;display:inline-block}.tv-button__text--full-height{display:flex;align-items:center;justify-content:center;height:100%;width:100%;white-space:normal;word-wrap:break-word;line-height:1.2em;margin:11px 5px}.tv-button--default,.tv-button--default_ghost{color:#fff;border-color:#fff;background-color:#fff}html.theme-dark .tv-button--default,html.theme-dark .tv-button--default_ghost{background-color:#171b29;border-color:#171b29}.tv-button--default_ghost{color:#fff}html.theme-dark .tv-button--default_ghost{color:#171b29}.tv-button--default_ghost.i-checked{color:#fff;border-color:#fff;background-color:#fff}html.theme-dark .tv-button--default_ghost.i-checked{background-color:#171b29;border-color:#171b29}.tv-button--default.i-hover,.tv-button--default_ghost.i-hover{color:#fff;border-color:#f2f2f2;background-color:#f2f2f2}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){.tv-button--default:hover,.tv-button--default_ghost:hover{color:#fff;border-color:#f2f2f2;background-color:#f2f2f2}}html.theme-dark .tv-button--default.i-hover,html.theme-dark .tv-button--default_ghost.i-hover{background-color:#1c2030}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){html.theme-dark .tv-button--default:hover,html.theme-dark .tv-button--default_ghost:hover{background-color:#1c2030}}html.theme-dark .tv-button--default.i-hover,html.theme-dark .tv-button--default_ghost.i-hover{border-color:#1c2030}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){html.theme-dark .tv-button--default:hover,html.theme-dark .tv-button--default_ghost:hover{border-color:#1c2030}}.tv-button--default.i-active,.tv-button--default:active,.tv-button--default_ghost.i-active,.tv-button--default_ghost:active{color:#fff;border-color:#ececec;background-color:#ececec;transform:translateY(1px)}html.theme-dark .tv-button--default.i-active,html.theme-dark .tv-button--default:active,html.theme-dark .tv-button--default_ghost.i-active,html.theme-dark .tv-button--default_ghost:active{background-color:#1c2030;border-color:#1c2030}.tv-button--default,.tv-button--default.i-checked,.tv-button--default_ghost,.tv-button--default_ghost.i-checked{color:#757575;border:1px solid;border-color:#b5b7b9}html.theme-dark .tv-button--default,html.theme-dark .tv-button--default.i-checked,html.theme-dark .tv-button--default_ghost,html.theme-dark .tv-button--default_ghost.i-checked{border-color:#363c4e;color:#758696}.tv-button--default.i-hover,.tv-button--default_ghost.i-hover{color:#757575;border-color:#b5b7b9}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){.tv-button--default:hover,.tv-button--default_ghost:hover{color:#757575;border-color:#b5b7b9}}html.theme-dark .tv-button--default.i-hover,html.theme-dark .tv-button--default_ghost.i-hover{border-color:#363c4e}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){html.theme-dark .tv-button--default:hover,html.theme-dark .tv-button--default_ghost:hover{border-color:#363c4e}}html.theme-dark .tv-button--default.i-hover,html.theme-dark .tv-button--default_ghost.i-hover{color:#758696}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){html.theme-dark .tv-button--default:hover,html.theme-dark .tv-button--default_ghost:hover{color:#758696}}.tv-button--default.i-active,.tv-button--default:active,.tv-button--default_ghost.i-active,.tv-button--default_ghost:active{color:#757575;border-color:#b5b7b9}html.theme-dark .tv-button--default.i-active,html.theme-dark .tv-button--default:active,html.theme-dark .tv-button--default_ghost.i-active,html.theme-dark .tv-button--default_ghost:active{border-color:#363c4e;color:#758696}.tv-button--primary,.tv-button--primary_ghost{color:#fff;border-color:#2196f3;background-color:#2196f3}.tv-button--primary_ghost{color:#2196f3}.tv-button--primary_ghost.i-checked{color:#fff;border-color:#2196f3;background-color:#2196f3}.tv-button--primary.i-hover,.tv-button--primary_ghost.i-hover{color:#fff;border-color:#1e88e5;background-color:#1e88e5}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){.tv-button--primary:hover,.tv-button--primary_ghost:hover{color:#fff;border-color:#1e88e5;background-color:#1e88e5}}.tv-button--primary.i-active,.tv-button--primary:active,.tv-button--primary_ghost.i-active,.tv-button--primary_ghost:active{color:#fff;border-color:#049ddc;background-color:#049ddc;transform:translateY(1px)}.tv-button--secondary,.tv-button--secondary_ghost{color:#757575;border-color:#e9eff2;background-color:#e9eff2}.tv-button--secondary_ghost{color:#757575}.tv-button--secondary_ghost.i-checked{color:#757575;border-color:#e9eff2;background-color:#e9eff2}.tv-button--secondary.i-hover,.tv-button--secondary_ghost.i-hover{color:#757575;border-color:#dce6ea;background-color:#dce6ea}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){.tv-button--secondary:hover,.tv-button--secondary_ghost:hover{color:#757575;border-color:#dce6ea;background-color:#dce6ea}}.tv-button--secondary.i-active,.tv-button--secondary:active,.tv-button--secondary_ghost.i-active,.tv-button--secondary_ghost:active{color:#757575;border-color:#cfdce3;background-color:#cfdce3;transform:translateY(1px)}.tv-button--success,.tv-button--success_ghost{color:#fff;border-color:#3cbc98;background-color:#3cbc98}.tv-button--success_ghost{color:#3cbc98}.tv-button--success_ghost.i-checked{color:#fff;border-color:#3cbc98;background-color:#3cbc98}.tv-button--success.i-hover,.tv-button--success_ghost.i-hover{color:#fff;border-color:#38b395;background-color:#38b395}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){.tv-button--success:hover,.tv-button--success_ghost:hover{color:#fff;border-color:#38b395;background-color:#38b395}}.tv-button--success.i-active,.tv-button--success:active,.tv-button--success_ghost.i-active,.tv-button--success_ghost:active{color:#fff;border-color:#00a97f;background-color:#00a97f;transform:translateY(1px)}.tv-button--danger,.tv-button--danger_ghost{color:#fff;border-color:#ff4a68;background-color:#ff4a68}.tv-button--danger_ghost{color:#ff4a68}.tv-button--danger_ghost.i-checked{color:#fff;border-color:#ff4a68;background-color:#ff4a68}.tv-button--danger.i-hover,.tv-button--danger_ghost.i-hover{color:#fff;border-color:#f24965;background-color:#f24965}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){.tv-button--danger:hover,.tv-button--danger_ghost:hover{color:#fff;border-color:#f24965;background-color:#f24965}}.tv-button--danger.i-active,.tv-button--danger:active,.tv-button--danger_ghost.i-active,.tv-button--danger_ghost:active{color:#fff;border-color:#ff173e;background-color:#ff173e;transform:translateY(1px)}.tv-button--warning,.tv-button--warning_ghost{color:#fff;border-color:#f89e30;background-color:#f89e30}.tv-button--warning_ghost{color:#f89e30}.tv-button--warning_ghost.i-checked{color:#fff;border-color:#f89e30;background-color:#f89e30}.tv-button--warning.i-hover,.tv-button--warning_ghost.i-hover{color:#fff;border-color:#f79217;background-color:#f79217}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){.tv-button--warning:hover,.tv-button--warning_ghost:hover{color:#fff;border-color:#f79217;background-color:#f79217}}.tv-button--warning.i-active,.tv-button--warning:active,.tv-button--warning_ghost.i-active,.tv-button--warning_ghost:active{color:#fff;border-color:#d47807;background-color:#d47807;transform:translateY(1px)}.tv-button--link{color:#2196f3;transition:color .35s ease}html.theme-dark .tv-button--link{color:#1976d2}.tv-button--link:visited{color:#2196f3;fill:#2196f3}html.theme-dark .tv-button--link:visited{fill:#1976d2;color:#1976d2}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){.tv-button--link:hover{color:#1e88e5;fill:#1e88e5;transition-duration:.06s}}.tv-button--link:active{color:#1e88e5;fill:#1e88e5;transition-duration:.06s}.tv-button--danger_ghost,.tv-button--default_ghost,.tv-button--primary_ghost,.tv-button--secondary_ghost,.tv-button--success_ghost,.tv-button--warning_ghost{border-width:1px;border-style:solid;background-color:transparent}.tv-button--danger_ghost.tv-button--size_large,.tv-button--default_ghost.tv-button--size_large,.tv-button--primary_ghost.tv-button--size_large,.tv-button--secondary_ghost.tv-button--size_large,.tv-button--success_ghost.tv-button--size_large,.tv-button--warning_ghost.tv-button--size_large{border-width:2px}.tv-button .tv-ripple{background-color:hsla(0,0%,100%,.25)}.tv-button--default .tv-ripple,.tv-button--default_ghost .tv-ripple{background-color:rgba(117,134,150,.25)}.tv-button.i-disabled .tv-ripple{background-color:transparent}.tv-button.i-disabled,.tv-button.i-disabled:active,.tv-button:disabled,.tv-button:disabled:active{cursor:default;color:#9db2bd;border-color:#f1f3f6;background-color:#f1f3f6}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){.tv-button.i-disabled:hover,.tv-button:disabled:hover{cursor:default;color:#9db2bd;border-color:#f1f3f6;background-color:#f1f3f6}}html.theme-dark .tv-button.i-disabled,html.theme-dark .tv-button.i-disabled:active,html.theme-dark .tv-button:disabled,html.theme-dark .tv-button:disabled:active{background-color:#262b3e}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){html.theme-dark .tv-button.i-disabled:hover,html.theme-dark .tv-button:disabled:hover{background-color:#262b3e}}html.theme-dark .tv-button.i-disabled,html.theme-dark .tv-button.i-disabled:active,html.theme-dark .tv-button:disabled,html.theme-dark .tv-button:disabled:active{border-color:#262b3e}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){html.theme-dark .tv-button.i-disabled:hover,html.theme-dark .tv-button:disabled:hover{border-color:#262b3e}}html.theme-dark .tv-button.i-disabled,html.theme-dark .tv-button.i-disabled:active,html.theme-dark .tv-button:disabled,html.theme-dark .tv-button:disabled:active{color:#363c4e}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){html.theme-dark .tv-button.i-disabled:hover,html.theme-dark .tv-button:disabled:hover{color:#363c4e}}.tv-button.i-disabled:active,.tv-button:disabled:active{transform:translateY(0)}.tv-button--size_xsmall{padding:2px 7px;line-height:15px;border-radius:1px;font-size:11px;font-weight:400}.tv-button--size_xsmall.tv-button--danger_ghost,.tv-button--size_xsmall.tv-button--default,.tv-button--size_xsmall.tv-button--default_ghost,.tv-button--size_xsmall.tv-button--primary_ghost,.tv-button--size_xsmall.tv-button--secondary_ghost,.tv-button--size_xsmall.tv-button--state,.tv-button--size_xsmall.tv-button--success_ghost,.tv-button--size_xsmall.tv-button--warning_ghost{padding:1px 6px}.tv-button--size_xsmall+.tv-button--size_xsmall{margin-left:10px}.tv-button--size_small{padding:1px 12px;line-height:25px;font-size:13px}.tv-button--size_small.tv-button--danger_ghost,.tv-button--size_small.tv-button--default,.tv-button--size_small.tv-button--default_ghost,.tv-button--size_small.tv-button--primary_ghost,.tv-button--size_small.tv-button--secondary_ghost,.tv-button--size_small.tv-button--state,.tv-button--size_small.tv-button--success_ghost,.tv-button--size_small.tv-button--warning_ghost{padding:0 11px}.tv-button--size_small+.tv-button--size_small{margin-left:10px}.tv-button--size_large{padding:1px 30px;font-size:17px;letter-spacing:1px;line-height:44px}.tv-button--size_large.tv-button--danger_ghost,.tv-button--size_large.tv-button--default,.tv-button--size_large.tv-button--default_ghost,.tv-button--size_large.tv-button--primary_ghost,.tv-button--size_large.tv-button--secondary_ghost,.tv-button--size_large.tv-button--state,.tv-button--size_large.tv-button--success_ghost,.tv-button--size_large.tv-button--warning_ghost{padding:0 29px}.tv-button--max-width{max-width:300px}.tv-button--no-padding{padding:1px}.tv-button--no-padding.tv-button--danger_ghost,.tv-button--no-padding.tv-button--default,.tv-button--no-padding.tv-button--default_ghost,.tv-button--no-padding.tv-button--primary_ghost,.tv-button--no-padding.tv-button--secondary_ghost,.tv-button--no-padding.tv-button--state,.tv-button--no-padding.tv-button--success_ghost,.tv-button--no-padding.tv-button--warning_ghost{padding:0}.tv-button--content-center{display:flex;align-items:center;justify-content:center;height:100%;margin:0 auto;max-width:220px}.tv-button--state{text-align:center;background:transparent;border-width:1px;border-style:solid}.tv-button--state:after{content:"";display:inline-block}.tv-button--state__checked,.tv-button--state__uncheck-hint,.tv-button--state__unchecked{display:block;height:0;transition:opacity .2625s ease,transform .2625s ease}.tv-button--state__ellipsis-text{display:block;white-space:nowrap;text-overflow:ellipsis;overflow-x:hidden}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){.tv-button--state.i-checked:hover .tv-button--state__checked,.tv-button--state.i-checked:hover .tv-button--state__uncheck-hint,.tv-button--state.i-checked:hover .tv-button--state__unchecked{will-change:opacity,transform}}.tv-button--state.i-checked .tv-button--state__unchecked,.tv-button--state__checked,.tv-button--state__uncheck-hint{opacity:0}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){.tv-button--state.i-checked:hover .tv-button--state__checked{opacity:0}}.tv-button--state.i-checked .tv-button--state__checked,.tv-button--state__unchecked{opacity:1}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){.tv-button--state.i-checked:hover .tv-button--state__uncheck-hint{opacity:1}}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){.tv-button--state.i-checked:hover .tv-button--state__checked{transform:translateY(-5px)}}.tv-button--state.i-checked .tv-button--state__unchecked,.tv-button--state__checked,.tv-button--state__uncheck-hint{transform:translateY(5px)}.tv-button--state.i-checked .tv-button--state__checked{transform:translateY(0)}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){.tv-button--state.i-checked:hover .tv-button--state__uncheck-hint{transform:translateY(0)}}.tv-button--state.tv-button--success{color:#3cbc98;background-color:transparent}.tv-button--state.tv-button--success.i-checked{color:#fff;background-color:#3cbc98}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){.tv-button--state.tv-button--success:hover{color:#fff;background-color:#38b395}}.tv-button--state.tv-button--success:active{color:#fff;background-color:#00a97f}.tv-button--state.tv-button--danger{color:#ff4a68;background-color:transparent}.tv-button--state.tv-button--danger.i-checked{color:#fff;background-color:#ff4a68}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){.tv-button--state.tv-button--danger:hover{color:#fff;background-color:#f24965}}.tv-button--state.tv-button--danger:active{color:#fff;background-color:#ff173e}.tv-button--state.tv-button--primary{color:#2196f3;background-color:transparent}.tv-button--state.tv-button--primary.i-checked{color:#fff;background-color:#2196f3}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){.tv-button--state.tv-button--primary:hover{color:#fff;background-color:#1e88e5}}.tv-button--state.tv-button--primary:active{color:#fff;background-color:#049ddc}.tv-button--state.tv-button--secondary{color:#757575;background-color:transparent}.tv-button--state.tv-button--secondary.i-checked{color:#757575;background-color:#e9eff2}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){.tv-button--state.tv-button--secondary:hover{color:#757575;background-color:#dce6ea}}.tv-button--state.tv-button--secondary:active{color:#757575;background-color:#cfdce3}.tv-button--state.tv-button--warning{color:#f89e30;background-color:transparent}.tv-button--state.tv-button--warning.i-checked{color:#fff;background-color:#f89e30}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){.tv-button--state.tv-button--warning:hover{color:#fff;background-color:#f79217}}.tv-button--state.tv-button--warning:active{color:#fff;background-color:#d47807}.tv-button--loader .tv-button__text{transition:opacity .175s ease,transform .175s ease}.tv-button--loader.i-start-load .tv-button__text{opacity:0;transform:translateY(-5px)}.tv-button--loader.i-loading .tv-button__text{opacity:0;transform:translateY(5px)}.tv-button--loader.i-stop-load .tv-button__text{opacity:1;transform:translateY(0);transition-delay:.175s}.tv-button__loader{position:absolute;top:0;left:0;right:0;bottom:0;height:100%;margin:0 auto;text-align:center;font-size:0;opacity:0;transition:opacity .35s ease}.tv-button__loader:after{content:"";display:inline-block;height:100%;vertical-align:middle}.tv-button--loader.i-loading .tv-button__loader,.tv-button--loader.i-start-load .tv-button__loader{opacity:1}.tv-button--loader.i-stop-load .tv-button__loader{opacity:0}.tv-button__loader-item{margin-right:2px;margin-left:2px;display:inline-block;vertical-align:middle;width:10px;height:10px;opacity:0;border-radius:100%;background-color:#fff;transform:translateY(12px) scale(.6);transition:transform .35s cubic-bezier(.68,-.55,.265,1.55),opacity .35s ease}.tv-button__loader-item:nth-child(2){transition-delay:.11666667s}.tv-button__loader-item:nth-child(3){transition-delay:.23333333s}.tv-button--default .tv-button__loader-item{background-color:#757575}.tv-button--loader.i-loading .tv-button__loader-item,.tv-button--loader.i-start-load .tv-button__loader-item{opacity:1}.tv-button--loader.i-stop-load .tv-button__loader-item{opacity:0}.tv-button--loader.i-loading .tv-button__loader-item,.tv-button--loader.i-start-load .tv-button__loader-item,.tv-button--loader.i-stop-load .tv-button__loader-item{transform:translateY(0) scale(.6)}.tv-button--loader.i-loading .tv-button__loader-item,.tv-button--loader.i-stop-load .tv-button__loader-item{animation:tv-button-loader .96s infinite ease-in-out both}.tv-button--loader.i-loading .tv-button__loader-item:nth-child(2),.tv-button--loader.i-stop-load .tv-button__loader-item:nth-child(2){animation-delay:.151s}.tv-button--loader.i-loading .tv-button__loader-item:nth-child(3),.tv-button--loader.i-stop-load .tv-button__loader-item:nth-child(3){animation-delay:.32s}.tv-button--no-border-radius{border-radius:0}.tv-button--no-border{border:none}.tv-button--connect{border-radius:0}.tv-button--connect_left{border-top-left-radius:0;border-bottom-left-radius:0}.tv-button--connect_right{border-top-right-radius:0;border-bottom-right-radius:0}@keyframes tv-button-loader{0%,to{transform:scale(.6)}50%{transform:scale(.9)}}@media screen and (max-width:767px){.tv-button.tv-button--phone-compact{padding-left:4px;padding-right:4px}}.sb-inner-shadow{box-shadow:0 0 5px rgba(0,0,0,.15);position:absolute;bottom:-10px;width:100%;height:10px;background:#fff;z-index:5;pointer-events:none;transform:translateY(0);transition:opacity .11666667s ease,transform .11666667s ease}html.theme-dark .sb-inner-shadow{background:#171b29}.sb-inner-shadow.top{box-shadow:0 0 5px rgba(0,0,0,.15);top:-10px}.sb-inner-shadow.i-invisible{transform:translateY(5px)}.sb-inner-shadow.i-invisible.top{transform:translateY(-5px)}.sb-inner-shadow.i-invisible{opacity:0}.sb-scrollbar{position:absolute!important;opacity:0;width:7px;height:100px;top:73px;right:1px;z-index:1;transition:opacity .3s}.sb-scrollbar.active,.sb-scrollbar.active-always{opacity:1}.sb-scrollbar__content-wrapper--scroll-inited{position:relative}.sb-scrollbar__content--scroll-inited{position:absolute}.sb-scrollbar-wrap{position:absolute;top:0;right:1px;width:6px;height:100%;z-index:1}.sb-scrollbar-wrap .sb-scrollbar{right:0}.sb-scrollbar-body{width:6px;border:0;background:#d8d8d8}html.theme-dark .sb-scrollbar-body{background:#4f5966}.gray .sb-scrollbar-body{background:#75757a;border-color:#75757a;border-radius:3px}.sb-scrollbar-bottom,.sb-scrollbar-top{display:none}.active-always.gray,.gray{opacity:.5}.i-hidden{display:none!important}.i-invisible{visibility:hidden!important}.i-clearfix:after{clear:both;display:table;content:""}.i-align_left{text-align:left!important}.i-align_right{text-align:right!important}.i-align_center{text-align:center!important}.i-float_left{float:left!important}.i-float_right{float:right!important}.i-float_none{float:none!important}@media screen and (min-width:1020px){.i-device-only{display:none!important}}@media screen and (max-width:1019px){.i-desktop-only{display:none!important}}@media screen and (min-width:479px){.i-phones-only{display:none!important}}@media screen and (max-width:479px){.i-except-phones-only{display:none!important}}.i-no-break{white-space:nowrap}.wrapper-2KWBfDVB-.touch-E6yQTRo_-.wrapper-2KWBfDVB-.touch-E6yQTRo_-{overflow-y:auto;-webkit-overflow-scrolling:touch;-ms-overflow-style:scrollbar}.wrapper-2KWBfDVB-.touch-E6yQTRo_-.wrapper-2KWBfDVB-.touch-E6yQTRo_-::-webkit-scrollbar{width:5px;height:5px}.wrapper-2KWBfDVB-.touch-E6yQTRo_-.wrapper-2KWBfDVB-.touch-E6yQTRo_-::-webkit-scrollbar-thumb{border:1px solid;border-color:#f1f3f6;border-radius:3px;background-color:#9db2bd}html.theme-dark .wrapper-2KWBfDVB-.touch-E6yQTRo_-.wrapper-2KWBfDVB-.touch-E6yQTRo_-::-webkit-scrollbar-thumb{background-color:#363c4e;border-color:#1c2030}.wrapper-2KWBfDVB-.touch-E6yQTRo_-.wrapper-2KWBfDVB-.touch-E6yQTRo_-::-webkit-scrollbar-track{background-color:transparent;border-radius:3px} \ No newline at end of file diff --git a/public/charting_library/static/bundles/2.a3e34146d368d13b6bc1.rtl.css b/public/charting_library/static/bundles/2.a3e34146d368d13b6bc1.rtl.css new file mode 100644 index 0000000..dbdf793 --- /dev/null +++ b/public/charting_library/static/bundles/2.a3e34146d368d13b6bc1.rtl.css @@ -0,0 +1 @@ +.tv-button{position:relative;display:inline-block;vertical-align:middle;min-width:40px;margin:0;padding:1px 22px;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;line-height:32px;text-align:center;white-space:nowrap;text-decoration:none;font-size:14px;color:#757575;fill:currentColor;border:none;border-radius:4px;outline:0;background-color:transparent;cursor:pointer;overflow:hidden;box-sizing:border-box;-webkit-tap-highlight-color:transparent;transition:background-color .35s ease,border-color .35s ease,color .35s ease}.tv-button.tv-button--danger_ghost,.tv-button.tv-button--default,.tv-button.tv-button--default_ghost,.tv-button.tv-button--primary_ghost,.tv-button.tv-button--secondary_ghost,.tv-button.tv-button--state,.tv-button.tv-button--success_ghost,.tv-button.tv-button--warning_ghost{padding:0 21px}.tv-button.i-active,.tv-button.i-hover,.tv-button:active{transition-duration:.06s}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){.tv-button:hover{transition-duration:.06s}}.tv-button svg{vertical-align:middle}.tv-button--block{display:block;width:100%;text-align:center}.tv-button+.tv-button{margin-right:15px}.tv-button.tv-button--no-left-margin{margin-right:0}.tv-button__text{position:relative;display:inline-block}.tv-button__text--full-height{display:flex;align-items:center;justify-content:center;height:100%;width:100%;white-space:normal;word-wrap:break-word;line-height:1.2em;margin:11px 5px}.tv-button--default,.tv-button--default_ghost{color:#fff;border-color:#fff;background-color:#fff}html.theme-dark .tv-button--default,html.theme-dark .tv-button--default_ghost{background-color:#171b29;border-color:#171b29}.tv-button--default_ghost{color:#fff}html.theme-dark .tv-button--default_ghost{color:#171b29}.tv-button--default_ghost.i-checked{color:#fff;border-color:#fff;background-color:#fff}html.theme-dark .tv-button--default_ghost.i-checked{background-color:#171b29;border-color:#171b29}.tv-button--default.i-hover,.tv-button--default_ghost.i-hover{color:#fff;border-color:#f2f2f2;background-color:#f2f2f2}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){.tv-button--default:hover,.tv-button--default_ghost:hover{color:#fff;border-color:#f2f2f2;background-color:#f2f2f2}}html.theme-dark .tv-button--default.i-hover,html.theme-dark .tv-button--default_ghost.i-hover{background-color:#1c2030}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){html.theme-dark .tv-button--default:hover,html.theme-dark .tv-button--default_ghost:hover{background-color:#1c2030}}html.theme-dark .tv-button--default.i-hover,html.theme-dark .tv-button--default_ghost.i-hover{border-color:#1c2030}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){html.theme-dark .tv-button--default:hover,html.theme-dark .tv-button--default_ghost:hover{border-color:#1c2030}}.tv-button--default.i-active,.tv-button--default:active,.tv-button--default_ghost.i-active,.tv-button--default_ghost:active{color:#fff;border-color:#ececec;background-color:#ececec;transform:translateY(1px)}html.theme-dark .tv-button--default.i-active,html.theme-dark .tv-button--default:active,html.theme-dark .tv-button--default_ghost.i-active,html.theme-dark .tv-button--default_ghost:active{background-color:#1c2030;border-color:#1c2030}.tv-button--default,.tv-button--default.i-checked,.tv-button--default_ghost,.tv-button--default_ghost.i-checked{color:#757575;border:1px solid;border-color:#b5b7b9}html.theme-dark .tv-button--default,html.theme-dark .tv-button--default.i-checked,html.theme-dark .tv-button--default_ghost,html.theme-dark .tv-button--default_ghost.i-checked{border-color:#363c4e;color:#758696}.tv-button--default.i-hover,.tv-button--default_ghost.i-hover{color:#757575;border-color:#b5b7b9}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){.tv-button--default:hover,.tv-button--default_ghost:hover{color:#757575;border-color:#b5b7b9}}html.theme-dark .tv-button--default.i-hover,html.theme-dark .tv-button--default_ghost.i-hover{border-color:#363c4e}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){html.theme-dark .tv-button--default:hover,html.theme-dark .tv-button--default_ghost:hover{border-color:#363c4e}}html.theme-dark .tv-button--default.i-hover,html.theme-dark .tv-button--default_ghost.i-hover{color:#758696}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){html.theme-dark .tv-button--default:hover,html.theme-dark .tv-button--default_ghost:hover{color:#758696}}.tv-button--default.i-active,.tv-button--default:active,.tv-button--default_ghost.i-active,.tv-button--default_ghost:active{color:#757575;border-color:#b5b7b9}html.theme-dark .tv-button--default.i-active,html.theme-dark .tv-button--default:active,html.theme-dark .tv-button--default_ghost.i-active,html.theme-dark .tv-button--default_ghost:active{border-color:#363c4e;color:#758696}.tv-button--primary,.tv-button--primary_ghost{color:#fff;border-color:#2196f3;background-color:#2196f3}.tv-button--primary_ghost{color:#2196f3}.tv-button--primary_ghost.i-checked{color:#fff;border-color:#2196f3;background-color:#2196f3}.tv-button--primary.i-hover,.tv-button--primary_ghost.i-hover{color:#fff;border-color:#1e88e5;background-color:#1e88e5}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){.tv-button--primary:hover,.tv-button--primary_ghost:hover{color:#fff;border-color:#1e88e5;background-color:#1e88e5}}.tv-button--primary.i-active,.tv-button--primary:active,.tv-button--primary_ghost.i-active,.tv-button--primary_ghost:active{color:#fff;border-color:#049ddc;background-color:#049ddc;transform:translateY(1px)}.tv-button--secondary,.tv-button--secondary_ghost{color:#757575;border-color:#e9eff2;background-color:#e9eff2}.tv-button--secondary_ghost{color:#757575}.tv-button--secondary_ghost.i-checked{color:#757575;border-color:#e9eff2;background-color:#e9eff2}.tv-button--secondary.i-hover,.tv-button--secondary_ghost.i-hover{color:#757575;border-color:#dce6ea;background-color:#dce6ea}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){.tv-button--secondary:hover,.tv-button--secondary_ghost:hover{color:#757575;border-color:#dce6ea;background-color:#dce6ea}}.tv-button--secondary.i-active,.tv-button--secondary:active,.tv-button--secondary_ghost.i-active,.tv-button--secondary_ghost:active{color:#757575;border-color:#cfdce3;background-color:#cfdce3;transform:translateY(1px)}.tv-button--success,.tv-button--success_ghost{color:#fff;border-color:#3cbc98;background-color:#3cbc98}.tv-button--success_ghost{color:#3cbc98}.tv-button--success_ghost.i-checked{color:#fff;border-color:#3cbc98;background-color:#3cbc98}.tv-button--success.i-hover,.tv-button--success_ghost.i-hover{color:#fff;border-color:#38b395;background-color:#38b395}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){.tv-button--success:hover,.tv-button--success_ghost:hover{color:#fff;border-color:#38b395;background-color:#38b395}}.tv-button--success.i-active,.tv-button--success:active,.tv-button--success_ghost.i-active,.tv-button--success_ghost:active{color:#fff;border-color:#00a97f;background-color:#00a97f;transform:translateY(1px)}.tv-button--danger,.tv-button--danger_ghost{color:#fff;border-color:#ff4a68;background-color:#ff4a68}.tv-button--danger_ghost{color:#ff4a68}.tv-button--danger_ghost.i-checked{color:#fff;border-color:#ff4a68;background-color:#ff4a68}.tv-button--danger.i-hover,.tv-button--danger_ghost.i-hover{color:#fff;border-color:#f24965;background-color:#f24965}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){.tv-button--danger:hover,.tv-button--danger_ghost:hover{color:#fff;border-color:#f24965;background-color:#f24965}}.tv-button--danger.i-active,.tv-button--danger:active,.tv-button--danger_ghost.i-active,.tv-button--danger_ghost:active{color:#fff;border-color:#ff173e;background-color:#ff173e;transform:translateY(1px)}.tv-button--warning,.tv-button--warning_ghost{color:#fff;border-color:#f89e30;background-color:#f89e30}.tv-button--warning_ghost{color:#f89e30}.tv-button--warning_ghost.i-checked{color:#fff;border-color:#f89e30;background-color:#f89e30}.tv-button--warning.i-hover,.tv-button--warning_ghost.i-hover{color:#fff;border-color:#f79217;background-color:#f79217}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){.tv-button--warning:hover,.tv-button--warning_ghost:hover{color:#fff;border-color:#f79217;background-color:#f79217}}.tv-button--warning.i-active,.tv-button--warning:active,.tv-button--warning_ghost.i-active,.tv-button--warning_ghost:active{color:#fff;border-color:#d47807;background-color:#d47807;transform:translateY(1px)}.tv-button--link{color:#2196f3;transition:color .35s ease}html.theme-dark .tv-button--link{color:#1976d2}.tv-button--link:visited{color:#2196f3;fill:#2196f3}html.theme-dark .tv-button--link:visited{fill:#1976d2;color:#1976d2}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){.tv-button--link:hover{color:#1e88e5;fill:#1e88e5;transition-duration:.06s}}.tv-button--link:active{color:#1e88e5;fill:#1e88e5;transition-duration:.06s}.tv-button--danger_ghost,.tv-button--default_ghost,.tv-button--primary_ghost,.tv-button--secondary_ghost,.tv-button--success_ghost,.tv-button--warning_ghost{border-width:1px;border-style:solid;background-color:transparent}.tv-button--danger_ghost.tv-button--size_large,.tv-button--default_ghost.tv-button--size_large,.tv-button--primary_ghost.tv-button--size_large,.tv-button--secondary_ghost.tv-button--size_large,.tv-button--success_ghost.tv-button--size_large,.tv-button--warning_ghost.tv-button--size_large{border-width:2px}.tv-button .tv-ripple{background-color:hsla(0,0%,100%,.25)}.tv-button--default .tv-ripple,.tv-button--default_ghost .tv-ripple{background-color:rgba(117,134,150,.25)}.tv-button.i-disabled .tv-ripple{background-color:transparent}.tv-button.i-disabled,.tv-button.i-disabled:active,.tv-button:disabled,.tv-button:disabled:active{cursor:default;color:#9db2bd;border-color:#f1f3f6;background-color:#f1f3f6}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){.tv-button.i-disabled:hover,.tv-button:disabled:hover{cursor:default;color:#9db2bd;border-color:#f1f3f6;background-color:#f1f3f6}}html.theme-dark .tv-button.i-disabled,html.theme-dark .tv-button.i-disabled:active,html.theme-dark .tv-button:disabled,html.theme-dark .tv-button:disabled:active{background-color:#262b3e}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){html.theme-dark .tv-button.i-disabled:hover,html.theme-dark .tv-button:disabled:hover{background-color:#262b3e}}html.theme-dark .tv-button.i-disabled,html.theme-dark .tv-button.i-disabled:active,html.theme-dark .tv-button:disabled,html.theme-dark .tv-button:disabled:active{border-color:#262b3e}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){html.theme-dark .tv-button.i-disabled:hover,html.theme-dark .tv-button:disabled:hover{border-color:#262b3e}}html.theme-dark .tv-button.i-disabled,html.theme-dark .tv-button.i-disabled:active,html.theme-dark .tv-button:disabled,html.theme-dark .tv-button:disabled:active{color:#363c4e}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){html.theme-dark .tv-button.i-disabled:hover,html.theme-dark .tv-button:disabled:hover{color:#363c4e}}.tv-button.i-disabled:active,.tv-button:disabled:active{transform:translateY(0)}.tv-button--size_xsmall{padding:2px 7px;line-height:15px;border-radius:1px;font-size:11px;font-weight:400}.tv-button--size_xsmall.tv-button--danger_ghost,.tv-button--size_xsmall.tv-button--default,.tv-button--size_xsmall.tv-button--default_ghost,.tv-button--size_xsmall.tv-button--primary_ghost,.tv-button--size_xsmall.tv-button--secondary_ghost,.tv-button--size_xsmall.tv-button--state,.tv-button--size_xsmall.tv-button--success_ghost,.tv-button--size_xsmall.tv-button--warning_ghost{padding:1px 6px}.tv-button--size_xsmall+.tv-button--size_xsmall{margin-right:10px}.tv-button--size_small{padding:1px 12px;line-height:25px;font-size:13px}.tv-button--size_small.tv-button--danger_ghost,.tv-button--size_small.tv-button--default,.tv-button--size_small.tv-button--default_ghost,.tv-button--size_small.tv-button--primary_ghost,.tv-button--size_small.tv-button--secondary_ghost,.tv-button--size_small.tv-button--state,.tv-button--size_small.tv-button--success_ghost,.tv-button--size_small.tv-button--warning_ghost{padding:0 11px}.tv-button--size_small+.tv-button--size_small{margin-right:10px}.tv-button--size_large{padding:1px 30px;font-size:17px;letter-spacing:1px;line-height:44px}.tv-button--size_large.tv-button--danger_ghost,.tv-button--size_large.tv-button--default,.tv-button--size_large.tv-button--default_ghost,.tv-button--size_large.tv-button--primary_ghost,.tv-button--size_large.tv-button--secondary_ghost,.tv-button--size_large.tv-button--state,.tv-button--size_large.tv-button--success_ghost,.tv-button--size_large.tv-button--warning_ghost{padding:0 29px}.tv-button--max-width{max-width:300px}.tv-button--no-padding{padding:1px}.tv-button--no-padding.tv-button--danger_ghost,.tv-button--no-padding.tv-button--default,.tv-button--no-padding.tv-button--default_ghost,.tv-button--no-padding.tv-button--primary_ghost,.tv-button--no-padding.tv-button--secondary_ghost,.tv-button--no-padding.tv-button--state,.tv-button--no-padding.tv-button--success_ghost,.tv-button--no-padding.tv-button--warning_ghost{padding:0}.tv-button--content-center{display:flex;align-items:center;justify-content:center;height:100%;margin:0 auto;max-width:220px}.tv-button--state{text-align:center;background:transparent;border-width:1px;border-style:solid}.tv-button--state:after{content:"";display:inline-block}.tv-button--state__checked,.tv-button--state__uncheck-hint,.tv-button--state__unchecked{display:block;height:0;transition:opacity .2625s ease,transform .2625s ease}.tv-button--state__ellipsis-text{display:block;white-space:nowrap;text-overflow:ellipsis;overflow-x:hidden}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){.tv-button--state.i-checked:hover .tv-button--state__checked,.tv-button--state.i-checked:hover .tv-button--state__uncheck-hint,.tv-button--state.i-checked:hover .tv-button--state__unchecked{will-change:opacity,transform}}.tv-button--state.i-checked .tv-button--state__unchecked,.tv-button--state__checked,.tv-button--state__uncheck-hint{opacity:0}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){.tv-button--state.i-checked:hover .tv-button--state__checked{opacity:0}}.tv-button--state.i-checked .tv-button--state__checked,.tv-button--state__unchecked{opacity:1}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){.tv-button--state.i-checked:hover .tv-button--state__uncheck-hint{opacity:1}}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){.tv-button--state.i-checked:hover .tv-button--state__checked{transform:translateY(-5px)}}.tv-button--state.i-checked .tv-button--state__unchecked,.tv-button--state__checked,.tv-button--state__uncheck-hint{transform:translateY(5px)}.tv-button--state.i-checked .tv-button--state__checked{transform:translateY(0)}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){.tv-button--state.i-checked:hover .tv-button--state__uncheck-hint{transform:translateY(0)}}.tv-button--state.tv-button--success{color:#3cbc98;background-color:transparent}.tv-button--state.tv-button--success.i-checked{color:#fff;background-color:#3cbc98}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){.tv-button--state.tv-button--success:hover{color:#fff;background-color:#38b395}}.tv-button--state.tv-button--success:active{color:#fff;background-color:#00a97f}.tv-button--state.tv-button--danger{color:#ff4a68;background-color:transparent}.tv-button--state.tv-button--danger.i-checked{color:#fff;background-color:#ff4a68}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){.tv-button--state.tv-button--danger:hover{color:#fff;background-color:#f24965}}.tv-button--state.tv-button--danger:active{color:#fff;background-color:#ff173e}.tv-button--state.tv-button--primary{color:#2196f3;background-color:transparent}.tv-button--state.tv-button--primary.i-checked{color:#fff;background-color:#2196f3}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){.tv-button--state.tv-button--primary:hover{color:#fff;background-color:#1e88e5}}.tv-button--state.tv-button--primary:active{color:#fff;background-color:#049ddc}.tv-button--state.tv-button--secondary{color:#757575;background-color:transparent}.tv-button--state.tv-button--secondary.i-checked{color:#757575;background-color:#e9eff2}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){.tv-button--state.tv-button--secondary:hover{color:#757575;background-color:#dce6ea}}.tv-button--state.tv-button--secondary:active{color:#757575;background-color:#cfdce3}.tv-button--state.tv-button--warning{color:#f89e30;background-color:transparent}.tv-button--state.tv-button--warning.i-checked{color:#fff;background-color:#f89e30}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){.tv-button--state.tv-button--warning:hover{color:#fff;background-color:#f79217}}.tv-button--state.tv-button--warning:active{color:#fff;background-color:#d47807}.tv-button--loader .tv-button__text{transition:opacity .175s ease,transform .175s ease}.tv-button--loader.i-start-load .tv-button__text{opacity:0;transform:translateY(-5px)}.tv-button--loader.i-loading .tv-button__text{opacity:0;transform:translateY(5px)}.tv-button--loader.i-stop-load .tv-button__text{opacity:1;transform:translateY(0);transition-delay:.175s}.tv-button__loader{position:absolute;top:0;right:0;left:0;bottom:0;height:100%;margin:0 auto;text-align:center;font-size:0;opacity:0;transition:opacity .35s ease}.tv-button__loader:after{content:"";display:inline-block;height:100%;vertical-align:middle}.tv-button--loader.i-loading .tv-button__loader,.tv-button--loader.i-start-load .tv-button__loader{opacity:1}.tv-button--loader.i-stop-load .tv-button__loader{opacity:0}.tv-button__loader-item{margin-left:2px;margin-right:2px;display:inline-block;vertical-align:middle;width:10px;height:10px;opacity:0;border-radius:100%;background-color:#fff;transform:translateY(12px) scale(.6);transition:transform .35s cubic-bezier(.68,-.55,.265,1.55),opacity .35s ease}.tv-button__loader-item:nth-child(2){transition-delay:.11666667s}.tv-button__loader-item:nth-child(3){transition-delay:.23333333s}.tv-button--default .tv-button__loader-item{background-color:#757575}.tv-button--loader.i-loading .tv-button__loader-item,.tv-button--loader.i-start-load .tv-button__loader-item{opacity:1}.tv-button--loader.i-stop-load .tv-button__loader-item{opacity:0}.tv-button--loader.i-loading .tv-button__loader-item,.tv-button--loader.i-start-load .tv-button__loader-item,.tv-button--loader.i-stop-load .tv-button__loader-item{transform:translateY(0) scale(.6)}.tv-button--loader.i-loading .tv-button__loader-item,.tv-button--loader.i-stop-load .tv-button__loader-item{animation:tv-button-loader .96s infinite ease-in-out both}.tv-button--loader.i-loading .tv-button__loader-item:nth-child(2),.tv-button--loader.i-stop-load .tv-button__loader-item:nth-child(2){animation-delay:.151s}.tv-button--loader.i-loading .tv-button__loader-item:nth-child(3),.tv-button--loader.i-stop-load .tv-button__loader-item:nth-child(3){animation-delay:.32s}.tv-button--no-border-radius{border-radius:0}.tv-button--no-border{border:none}.tv-button--connect{border-radius:0}.tv-button--connect_left{border-top-right-radius:0;border-bottom-right-radius:0}.tv-button--connect_right{border-top-left-radius:0;border-bottom-left-radius:0}@keyframes tv-button-loader{0%,to{transform:scale(.6)}50%{transform:scale(.9)}}@media screen and (max-width:767px){.tv-button.tv-button--phone-compact{padding-right:4px;padding-left:4px}}.sb-inner-shadow{box-shadow:0 0 5px rgba(0,0,0,.15);position:absolute;bottom:-10px;width:100%;height:10px;background:#fff;z-index:5;pointer-events:none;transform:translateY(0);transition:opacity .11666667s ease,transform .11666667s ease}html.theme-dark .sb-inner-shadow{background:#171b29}.sb-inner-shadow.top{box-shadow:0 0 5px rgba(0,0,0,.15);top:-10px}.sb-inner-shadow.i-invisible{transform:translateY(5px)}.sb-inner-shadow.i-invisible.top{transform:translateY(-5px)}.sb-inner-shadow.i-invisible{opacity:0}.sb-scrollbar{position:absolute!important;opacity:0;width:7px;height:100px;top:73px;left:1px;z-index:1;transition:opacity .3s}.sb-scrollbar.active,.sb-scrollbar.active-always{opacity:1}.sb-scrollbar__content-wrapper--scroll-inited{position:relative}.sb-scrollbar__content--scroll-inited{position:absolute}.sb-scrollbar-wrap{position:absolute;top:0;left:1px;width:6px;height:100%;z-index:1}.sb-scrollbar-wrap .sb-scrollbar{left:0}.sb-scrollbar-body{width:6px;border:0;background:#d8d8d8}html.theme-dark .sb-scrollbar-body{background:#4f5966}.gray .sb-scrollbar-body{background:#75757a;border-color:#75757a;border-radius:3px}.sb-scrollbar-bottom,.sb-scrollbar-top{display:none}.active-always.gray,.gray{opacity:.5}.i-hidden{display:none!important}.i-invisible{visibility:hidden!important}.i-clearfix:after{clear:both;display:table;content:""}.i-align_left{text-align:right!important}.i-align_right{text-align:left!important}.i-align_center{text-align:center!important}.i-float_left{float:right!important}.i-float_right{float:left!important}.i-float_none{float:none!important}@media screen and (min-width:1020px){.i-device-only{display:none!important}}@media screen and (max-width:1019px){.i-desktop-only{display:none!important}}@media screen and (min-width:479px){.i-phones-only{display:none!important}}@media screen and (max-width:479px){.i-except-phones-only{display:none!important}}.i-no-break{white-space:nowrap}.wrapper-2KWBfDVB-.touch-E6yQTRo_-.wrapper-2KWBfDVB-.touch-E6yQTRo_-{overflow-y:auto;-webkit-overflow-scrolling:touch;-ms-overflow-style:scrollbar}.wrapper-2KWBfDVB-.touch-E6yQTRo_-.wrapper-2KWBfDVB-.touch-E6yQTRo_-::-webkit-scrollbar{width:5px;height:5px}.wrapper-2KWBfDVB-.touch-E6yQTRo_-.wrapper-2KWBfDVB-.touch-E6yQTRo_-::-webkit-scrollbar-thumb{border:1px solid;border-color:#f1f3f6;border-radius:3px;background-color:#9db2bd}html.theme-dark .wrapper-2KWBfDVB-.touch-E6yQTRo_-.wrapper-2KWBfDVB-.touch-E6yQTRo_-::-webkit-scrollbar-thumb{background-color:#363c4e;border-color:#1c2030}.wrapper-2KWBfDVB-.touch-E6yQTRo_-.wrapper-2KWBfDVB-.touch-E6yQTRo_-::-webkit-scrollbar-track{background-color:transparent;border-radius:3px} \ No newline at end of file diff --git a/public/charting_library/static/bundles/20.2416da4fc4c075b56691.js b/public/charting_library/static/bundles/20.2416da4fc4c075b56691.js new file mode 100644 index 0000000..d1d1baa --- /dev/null +++ b/public/charting_library/static/bundles/20.2416da4fc4c075b56691.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[20],[]]); \ No newline at end of file diff --git a/public/charting_library/static/bundles/20.f75162343321d7d9178c.css b/public/charting_library/static/bundles/20.f75162343321d7d9178c.css new file mode 100644 index 0000000..f5f1079 --- /dev/null +++ b/public/charting_library/static/bundles/20.f75162343321d7d9178c.css @@ -0,0 +1 @@ +.tv-caret{content:"";display:inline-block;width:0;height:0;border-style:solid;border-width:4px 4px 0;border-color:currentColor transparent transparent;margin-left:5px;vertical-align:middle;transition:transform .35s ease}.active .tv-caret,.i-dropped .tv-caret:not(.tv-caret--strict),.tv-caret--strict.i-dropped{transform:rotate(-180deg);will-change:transform;transition-duration:.33}.tv-caret--small{margin-left:3px;margin-right:-1px;border-top-width:3px;border-right-width:3px;border-left-width:3px}.tv-caret--colored{transition:transform .35s ease,color .35s ease}.tv-caret--no-margin{margin-left:0} \ No newline at end of file diff --git a/public/charting_library/static/bundles/20.f75162343321d7d9178c.rtl.css b/public/charting_library/static/bundles/20.f75162343321d7d9178c.rtl.css new file mode 100644 index 0000000..14180c7 --- /dev/null +++ b/public/charting_library/static/bundles/20.f75162343321d7d9178c.rtl.css @@ -0,0 +1 @@ +.tv-caret{content:"";display:inline-block;width:0;height:0;border-style:solid;border-width:4px 4px 0;border-color:currentColor transparent transparent;margin-right:5px;vertical-align:middle;transition:transform .35s ease}.active .tv-caret,.i-dropped .tv-caret:not(.tv-caret--strict),.tv-caret--strict.i-dropped{transform:rotate(180deg);will-change:transform;transition-duration:.33}.tv-caret--small{margin-right:3px;margin-left:-1px;border-top-width:3px;border-left-width:3px;border-right-width:3px}.tv-caret--colored{transition:transform .35s ease,color .35s ease}.tv-caret--no-margin{margin-right:0} \ No newline at end of file diff --git a/public/charting_library/static/bundles/21.7e987db0ed47cc3f789c.css b/public/charting_library/static/bundles/21.7e987db0ed47cc3f789c.css new file mode 100644 index 0000000..f87b608 --- /dev/null +++ b/public/charting_library/static/bundles/21.7e987db0ed47cc3f789c.css @@ -0,0 +1 @@ +._tv-dialog-shadowbox{position:fixed;left:0;top:0;width:100%;height:100%;background:rgba(0,0,0,.5);z-index:110;-webkit-transform:translateZ(0)}._tv-dialog-shadowbox.transparent{background:none}._tv-dialog{position:absolute;min-height:18px;left:50%;top:50%;background:#fff;border:1px solid;border-color:#b5b7b9;box-shadow:0 0 10px 0 rgba(0,0,0,.15)}html.theme-dark ._tv-dialog{border-color:#363c4e;background:#1e222d}._tv-dialog__link{color:#2196f3;transition:color .35s ease}html.theme-dark ._tv-dialog__link{color:#1976d2}._tv-dialog__link:visited{color:#2196f3;fill:#2196f3}html.theme-dark ._tv-dialog__link:visited{fill:#1976d2;color:#1976d2}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){._tv-dialog__link:hover{color:#1e88e5;fill:#1e88e5;transition-duration:.06s}}._tv-dialog__link:active{color:#1e88e5;fill:#1e88e5;transition-duration:.06s}._tv-dialog__indented-list{padding-left:20px}._tv-dialog__highlightedText{box-shadow:0 0 0 .37em #fff2cf;background:#fff2cf}html.theme-dark ._tv-dialog__highlightedText{background:#194453;box-shadow:0 0 0 .37em #194453}._tv-dialog__highlightedText:empty{background:transparent;box-shadow:none}._tv-dialog__subTitle{margin-top:20px;font-weight:700;display:block}._tv-dialog._tv-dialog-min-width{min-width:400px}._tv-dialog--alert-email a,._tv-dialog--open-a-chart a{color:#2196f3;transition:color .35s ease}html.theme-dark ._tv-dialog--alert-email a,html.theme-dark ._tv-dialog--open-a-chart a{color:#1976d2}._tv-dialog--alert-email a:visited,._tv-dialog--open-a-chart a:visited{color:#2196f3;fill:#2196f3}html.theme-dark ._tv-dialog--alert-email a:visited,html.theme-dark ._tv-dialog--open-a-chart a:visited{fill:#1976d2;color:#1976d2}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){._tv-dialog--alert-email a:hover,._tv-dialog--open-a-chart a:hover{color:#1e88e5;fill:#1e88e5;transition-duration:.06s}}._tv-dialog--alert-email a:active,._tv-dialog--open-a-chart a:active{color:#1e88e5;fill:#1e88e5;transition-duration:.06s}._tv-dialog.ui-resizable{position:absolute}._tv-dialog-title{color:#4c525e;font-weight:700;font-size:15px;padding:17px 35px 17px 20px;cursor:default;word-wrap:break-word}html.theme-dark ._tv-dialog-title{color:#d6d8e0}._tv-dialog-title._tv-dialog-title-no-close{padding-right:20px}._tv-dialog-title._tv-dialog-title-hidden{padding:0;font-size:0;color:transparent;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}._tv-dialog-title ._tv-dialog-title-close{width:21px;height:21px;display:block;position:absolute;right:15px;top:13px;cursor:pointer;z-index:1}._tv-dialog-title ._tv-dialog-title-close:after{width:9px;height:9px;content:" ";position:absolute;top:6px;left:6px;background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAkAAAASCAYAAACJgPRIAAAAUElEQVR42pWQMQoAIAwD++d+x8HJbyoOWXJDSSBgwpVS62vtc8ulXg/ZAZkFMycNoBJgXoUcX1cm9N1NSL0esgMyC2ZOGkAlwLwKObhu/qcHp/zWImEdH8EAAAAASUVORK5CYII=);display:block}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){._tv-dialog-title ._tv-dialog-title-close:hover:after{background-position:bottom}}._tv-dialog-content{color:#131722;max-width:100%}html.theme-dark ._tv-dialog-content{color:#d6d8e0}._tv-dialog-content a:not([class*=button]):not([class*=btn]):not([class*=tabs]):not([class*=tab]):not([class*=sbSelector]):not([class*=filter]):not(a[href="#yes"]):not(a[href="#no"]){color:#2196f3;transition:color .35s ease}html.theme-dark ._tv-dialog-content a:not([class*=button]):not([class*=btn]):not([class*=tabs]):not([class*=tab]):not([class*=sbSelector]):not([class*=filter]):not(a[href="#yes"]):not(a[href="#no"]){color:#1976d2}._tv-dialog-content a:not([class*=button]):not([class*=btn]):not([class*=tabs]):not([class*=tab]):not([class*=sbSelector]):not([class*=filter]):not(a[href="#yes"]):not(a[href="#no"]):visited{color:#2196f3;fill:#2196f3}html.theme-dark ._tv-dialog-content a:not([class*=button]):not([class*=btn]):not([class*=tabs]):not([class*=tab]):not([class*=sbSelector]):not([class*=filter]):not(a[href="#yes"]):not(a[href="#no"]):visited{fill:#1976d2;color:#1976d2}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){._tv-dialog-content a:not([class*=button]):not([class*=btn]):not([class*=tabs]):not([class*=tab]):not([class*=sbSelector]):not([class*=filter]):not(a[href="#yes"]):not(a[href="#no"]):hover{color:#1e88e5;fill:#1e88e5;transition-duration:.06s}}._tv-dialog-content a:not([class*=button]):not([class*=btn]):not([class*=tabs]):not([class*=tab]):not([class*=sbSelector]):not([class*=filter]):not(a[href="#yes"]):not(a[href="#no"]):active{color:#1e88e5;fill:#1e88e5;transition-duration:.06s}._tv-dialog-content .main{padding:0 20px 20px}._tv-dialog-content .main p:first-child{margin-top:0}._tv-dialog-content .main p:last-child{margin-bottom:0}._tv-dialog-content .main .buttons{margin-top:25px;text-align:right}._tv-dialog-content .main .buttons.center{text-align:center}._tv-dialog-content .main .buttons ._tv-button{min-width:60px;text-transform:uppercase}._tv-dialog-content .main-properties{padding:25px}._tv-dialog-content .main-properties.alert-aftertabs,._tv-dialog-content .main-properties.main-properties-aftertabs{padding-top:5px}._tv-dialog-content .main-properties.main-properties-tabless{padding-top:40px}._tv-dialog-content .main-properties td{padding:3px 4px;height:27px}._tv-dialog-content .main-properties td:empty{padding:0}._tv-dialog-content .main-properties td.no-left-indent,._tv-dialog-content .main-properties td:first-child{padding-left:0}._tv-dialog-content .main-properties td:last-child{padding-right:0}._tv-dialog-content .main-properties .percents-label{position:relative;top:5px;left:5px}._tv-dialog-content .main-browser-extension{padding:40px 70px 40px 52px;padding:0}._tv-dialog-content .main-browser-extension .extension-poster{width:328px;height:377px;background:url(../images/dialogs/browser-extension/demo.png) 0 0}._tv-dialog-content .main-browser-extension .left,._tv-dialog-content .main-browser-extension .right{width:50%;box-sizing:border-box}._tv-dialog-content .main-browser-extension .left{float:left;padding:32px 0 0 46px}._tv-dialog-content .main-browser-extension .right{float:right;padding:51px 70px 0 44px}._tv-dialog-content .main-browser-extension .logo{float:left;width:36px;height:36px;background-size:36px 36px;margin-right:10px}._tv-dialog-content .main-browser-extension .logo.chrome{background:url(../images/svg/google-chrome-logo.svg) 0 0}._tv-dialog-content .main-browser-extension .info,._tv-dialog-content .main-browser-extension .name{float:left;clear:right;color:#a9a9a9;width:200px}._tv-dialog-content .main-browser-extension .name{font-size:20px;height:20px;line-height:20px}._tv-dialog-content .main-browser-extension .info{font-size:12px;height:14px;line-height:20px}._tv-dialog-content .main-browser-extension h1{margin-top:48px;margin-bottom:0;font-size:20px;line-height:20px}._tv-dialog-content .main-browser-extension p{color:#c2c5cb;margin:14px 0 28px}._tv-dialog-content .main-browser-extension .install-extension button{height:42px;padding:0 25px;line-height:42px;text-align:center;border:none;font-size:12px;text-transform:uppercase;background:#52c3e7;color:#fff;cursor:pointer}._tv-dialog-content .properties-separator{border-bottom:1px solid #b5b7b9}html.theme-dark ._tv-dialog-content .properties-separator{border-bottom:1px solid #363c4e}._tv-dialog-content ._tv-dialog-checkbox-mask{width:18px;height:16px;position:absolute;top:2px;left:2px;background:url(../images/dialogs/checkbox.png) 0 0}._tv-dialog-content ._tv-dialog-checkbox-mask.radio{background:#fff url(../images/icons.png);background-position:-100px -140px;width:16px}._tv-dialog-content ._tv-dialog-checkbox-mask.disabled{background-position:0 -32px}._tv-dialog-content ._tv-dialog-checkbox-mask-active{background:url(../images/dialogs/checkbox.png) 0 -16px}._tv-dialog-content ._tv-dialog-checkbox-mask-active.radio{background-position:-120px -140px}._tv-dialog-content--with-padding-top{padding-top:40px}._tv-dialog-content form input:not(.tv-control-input)[type=text],._tv-dialog-content form input[type=password],._tv-dialog-text-input{width:100%;box-sizing:border-box;height:33px;border:1px solid #b5b7b9;margin:1px;padding:0 5px;background-color:#fff;color:#4a4a4a}html.theme-dark ._tv-dialog-content form input:not(.tv-control-input)[type=text],html.theme-dark ._tv-dialog-content form input[type=password],html.theme-dark ._tv-dialog-text-input{color:#c5cbce;background-color:#1e222d;border:1px solid #363c4e}._tv-dialog-content form input:not(.tv-control-input)[type=text]:disabled,._tv-dialog-content form input[type=password]:disabled,._tv-dialog-text-input:disabled{color:#5a5a5a;opacity:.5}._tv-dialog-content ._tv-dialog-text-input{height:27px}._tv-dialog-text-input.disabled{color:#909292!important}._tv-dialog-content form input[type=password].error,._tv-dialog-content form input[type=text].error{margin:0;border:2px solid #de5764;background:#f7e4e6;color:#e06571}._tv-dialog-content textarea{color:#4a4a4a;font-size:12px;line-height:18px;border:1px solid;border-color:#b5b7b9;padding:8px 5px;box-sizing:border-box}html.theme-dark ._tv-dialog-content textarea{background:#1e222d;border-color:#363c4e;color:#c5cbce}._tv-dialog-content textarea:disabled{color:#5a5a5a;opacity:.5}._tv-dialog-content form input:not(.tv-control-input)._tv-dialog-content-textactive,._tv-dialog-text-input:focus{background:#fff;border-color:#2196f3!important;color:#595959}html.theme-dark ._tv-dialog-content form input:not(.tv-control-input)._tv-dialog-content-textactive,html.theme-dark ._tv-dialog-text-input:focus{color:#9db2bd;border-color:#1976d2!important;background:#1e222d}._tv-dialog-content textarea{border:1px solid #b5b7b9;background:#fff}html.theme-dark ._tv-dialog-content textarea{border:1px solid #363c4e}._tv-dialog-content textarea._tv-dialog-content-textareaactive{color:#595959;border-color:#2196f3!important}html.theme-dark ._tv-dialog-content textarea._tv-dialog-content-textareaactive{border-color:#1976d2!important}._tv-dialog-content .caption{font-size:11px;color:#4f5966;margin-bottom:3px;margin-top:7px;font-weight:700}html.theme-dark ._tv-dialog-content .caption{color:#f7f8fa}._tv-dialog-content .caption.half{float:left;width:50%}._tv-dialog-content .caption-big{font-size:12px;color:#4f5966;margin:15px 0}html.theme-dark ._tv-dialog-content .caption-big{color:#f7f8fa}._tv-dialog-content .caption-big-center{font-size:12px;color:#4f5966;margin:15px 0;text-align:center}html.theme-dark ._tv-dialog-content .caption-big-center{color:#f7f8fa}._tv-dialog-content .caption-big-center.slim{margin:0;text-align:left}._tv-dialog-content .caption-big-center.slim ul{padding-left:20px}._tv-dialog-content .caption-big.slim{margin:0;text-align:left}._tv-dialog-content .caption.first{margin-top:0}._tv-dialog-content .critical,._tv-dialog-content .disconnect{padding-bottom:15px}._tv-dialog-content .disconnect ol,._tv-dialog-content .disconnect ul{padding-left:1.5em;margin-bottom:0}._tv-dialog-content .disconnect ul{list-style:square}._tv-dialog-content .input input{width:298px!important}._tv-dialog-content .input{margin-bottom:7px}._tv-dialog-content .big-button ._tv-button{padding:10px 50px;background:#fff}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){._tv-dialog-content .big-button ._tv-button:hover{background:#fcfcfc}}._tv-dialog-content label{color:#4a4a4a}html.theme-dark ._tv-dialog-content label{color:#c5cbce}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){._tv-dialog-content .flat:hover:before{border-width:0!important}}._tv-dialog-error,._tv-dialog-message{display:none;position:absolute;top:0;width:100%;font-size:12px;z-index:100;text-align:center}._tv-dialog-error .message,._tv-dialog-message .message{display:table-cell;vertical-align:middle;padding:10px;height:32px}._tv-dialog-error .close,._tv-dialog-message .close{display:none;position:absolute;top:4px;right:4px;width:9px;height:9px;border:4px solid transparent;cursor:pointer;opacity:.7}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){._tv-dialog-error .close:hover,._tv-dialog-message .close:hover{opacity:1}}._tv-dialog-error.with-close .message,._tv-dialog-message.with-close .message{padding:10px 30px}._tv-dialog-error.with-close .close,._tv-dialog-message.with-close .close{display:block}._tv-dialog-error a,._tv-dialog-message a{color:#2196f3;transition:color .35s ease}html.theme-dark ._tv-dialog-error a,html.theme-dark ._tv-dialog-message a{color:#1976d2}._tv-dialog-error a:visited,._tv-dialog-message a:visited{color:#2196f3;fill:#2196f3}html.theme-dark ._tv-dialog-error a:visited,html.theme-dark ._tv-dialog-message a:visited{fill:#1976d2;color:#1976d2}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){._tv-dialog-error a:hover,._tv-dialog-message a:hover{color:#1e88e5;fill:#1e88e5;transition-duration:.06s}}._tv-dialog-error a:active,._tv-dialog-message a:active{color:#1e88e5;fill:#1e88e5;transition-duration:.06s}._tv-dialog-error{color:#c34c36;background:#f9e3e6}html.theme-dark ._tv-dialog-error{background:#6f2626;color:#ffedf0}._tv-dialog-error .close{fill:#9b0202}html.theme-dark ._tv-dialog-error .close{fill:#ffa4b3}._tv-dialog-message{color:#0a8415;background:#e2fde1}html.theme-dark ._tv-dialog-message{background:#21384d;color:#9addcc}._tv-dialog-message .close{fill:#096201}html.theme-dark ._tv-dialog-message .close{fill:#3bc2a1}._tv-dialog-content .dialog-buttons{text-align:right;margin-top:10px}._tv-dialog-content .dialog-comment{float:left;margin-top:15px}._tv-dialog-content .dialog-buttons a{margin:0 0 0 5px;min-width:50px;text-align:center;position:relative}._tv-dialog-content .dialog-buttons a.tv-left{margin:0 5px 0 0}._tv-dialog .ui-resizable-handle{width:11px;height:11px;background:url(../images/dialogs/resize-handle.png) 0 0 no-repeat}._tv-dialog.change-interval-dialog ._tv-dialog-title{text-align:center;font-size:13px;padding:28px 0 23px}._tv-dialog.change-interval-dialog ._tv-dialog-content{padding:0 50px 13px;text-align:center}._tv-dialog.change-interval-dialog ._tv-dialog-content .change-interval-input{box-sizing:border-box;display:block;width:150px;height:76px;border:1px solid #2196f3;text-align:inherit;font-size:43px;color:#4a4a4a;background-color:#fff;text-transform:uppercase}html.theme-dark ._tv-dialog.change-interval-dialog ._tv-dialog-content .change-interval-input{background-color:#2f3241;color:#c5cbce;border:1px solid #1976d2}._tv-dialog.change-interval-dialog ._tv-dialog-content .change-interval-input.error{border-color:#d75442;background-color:#ffefef}._tv-dialog.change-interval-dialog ._tv-dialog-content i{display:block;font-style:normal}._tv-dialog.change-interval-dialog ._tv-dialog-content i.interval-caption{margin:8px 0 15px;color:#a8a8a8;font-size:12px;font-weight:600;cursor:default}._tv-dialog.change-interval-dialog ._tv-dialog-content i.interval-caption.error{color:#d75442}._tv-dialog.change-interval-dialog ._tv-dialog-content i.help-tooltip-trigger{margin:0 auto;width:12px;height:12px;font-size:11px;font-weight:700;line-height:12px;border:1px solid;border-color:rgba(0,0,0,.5);border-radius:50%;cursor:default}html.theme-dark ._tv-dialog.change-interval-dialog ._tv-dialog-content i.help-tooltip-trigger{border-color:rgba(157,178,189,.5)}._tv-dialog-charting-library._tv-dialog{font-size:14px;font-weight:400;background:#f2f5f8}._tv-dialog-charting-library .main{padding:0 20px 20px}._tv-dialog-charting-library .line{height:1px;background:#ced5db;overflow:hidden}._tv-dialog-charting-library .lead-in{margin-bottom:5px}._tv-dialog-charting-library h3{font-size:26px;font-weight:400;text-transform:uppercase;color:#26282f;margin:0}._tv-dialog-charting-library li,._tv-dialog-charting-library p{line-height:28px;margin:0}._tv-dialog-charting-library p,._tv-dialog-charting-library ul{margin:12px 1px}._tv-dialog-charting-library form .dropzone{margin:1px;border:1px dashed rgba(0,0,0,.3);background:#fff;display:inline-block;padding:20px 0;width:140px;height:110px;float:left;box-sizing:border-box}._tv-dialog-charting-library form .dropzone *{box-sizing:border-box}._tv-dialog-charting-library form .dropzone.dz-clickable{cursor:pointer}._tv-dialog-charting-library form .dropzone.dz-started .dz-message{display:none}._tv-dialog-charting-library form .dropzone.dz-drag-hover{border-style:solid}._tv-dialog-charting-library form .dropzone.dz-drag-hover .dz-message{opacity:.5}._tv-dialog-charting-library form .dropzone .dz-message{text-align:center}._tv-dialog-charting-library form .dropzone .dz-message .link{color:#0099d4}._tv-dialog-charting-library form .dropzone .dz-filename{text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-transform:lowercase}._tv-dialog-charting-library form .dropzone .dz-filename span{padding:0 .4em}._tv-dialog-charting-library form .dropzone .dz-icon{padding:1px 42px}._tv-dialog-charting-library form .dropzone .dz-remove{fill:#ff6565;position:relative;top:-80px;left:110px}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){._tv-dialog-charting-library form .dropzone .dz-remove:hover{fill:red}}._tv-dialog-charting-library form>div{margin-bottom:12px}._tv-dialog-charting-library form .description{margin:6px 0}._tv-dialog-charting-library form .agreement{margin-bottom:10px}._tv-dialog-charting-library form .agreement .description{display:inline-block;padding:27px 5px;width:388px}._tv-dialog-charting-library form textarea{width:100%;height:90px;margin:1px}._tv-dialog-charting-library form .attach{cursor:pointer;font-size:14px;font-weight:400}._tv-dialog-charting-library form input[type=text].error{margin:1px}._tv-dialog-charting-library form .two-columns .column-wrap{box-sizing:border-box;display:inline-block;width:50%}._tv-dialog-charting-library form .two-columns .column-wrap:first-child{padding-right:10px}._tv-dialog-charting-library .big-buttons{text-align:right;padding:10px 0}._tv-dialog-charting-library .big-buttons .cancel-button{cursor:pointer;border:1px solid transparent;font-size:15px;margin:0 15px;color:#686868;background:#f2f5f8}._tv-dialog-charting-library .big-buttons .big-button{cursor:pointer;border:1px solid transparent;background-color:#06b2ce;color:#fff;font-size:15px;text-transform:uppercase;padding:10px 45px;background-image:url(../images/button-base-process.gif);background-position:-9999px -9999px;background-repeat:no-repeat}._tv-dialog-charting-library .big-buttons .big-button.process{background-position:0 0;background-repeat:repeat}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){._tv-dialog-charting-library .big-buttons .big-button:hover{background-color:#06bbd8}}._tv-dialog-charting-library .big-buttons .big-button:active{background-color:#07c3e2}._tv-dialog-charting-library .big-buttons .big-button.disabled{cursor:default;background-color:#c3c8cf}._tv-dialog.dialog-highlight .main .message textarea{width:350px;height:130px} \ No newline at end of file diff --git a/public/charting_library/static/bundles/21.7e987db0ed47cc3f789c.rtl.css b/public/charting_library/static/bundles/21.7e987db0ed47cc3f789c.rtl.css new file mode 100644 index 0000000..ddd64e5 --- /dev/null +++ b/public/charting_library/static/bundles/21.7e987db0ed47cc3f789c.rtl.css @@ -0,0 +1 @@ +._tv-dialog-shadowbox{position:fixed;right:0;top:0;width:100%;height:100%;background:rgba(0,0,0,.5);z-index:110;-webkit-transform:translateZ(0)}._tv-dialog-shadowbox.transparent{background:none}._tv-dialog{position:absolute;min-height:18px;left:50%;top:50%;background:#fff;border:1px solid;border-color:#b5b7b9;box-shadow:0 0 10px 0 rgba(0,0,0,.15)}html.theme-dark ._tv-dialog{border-color:#363c4e;background:#1e222d}._tv-dialog__link{color:#2196f3;transition:color .35s ease}html.theme-dark ._tv-dialog__link{color:#1976d2}._tv-dialog__link:visited{color:#2196f3;fill:#2196f3}html.theme-dark ._tv-dialog__link:visited{fill:#1976d2;color:#1976d2}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){._tv-dialog__link:hover{color:#1e88e5;fill:#1e88e5;transition-duration:.06s}}._tv-dialog__link:active{color:#1e88e5;fill:#1e88e5;transition-duration:.06s}._tv-dialog__indented-list{padding-right:20px}._tv-dialog__highlightedText{box-shadow:0 0 0 .37em #fff2cf;background:#fff2cf}html.theme-dark ._tv-dialog__highlightedText{background:#194453;box-shadow:0 0 0 .37em #194453}._tv-dialog__highlightedText:empty{background:transparent;box-shadow:none}._tv-dialog__subTitle{margin-top:20px;font-weight:700;display:block}._tv-dialog._tv-dialog-min-width{min-width:400px}._tv-dialog--alert-email a,._tv-dialog--open-a-chart a{color:#2196f3;transition:color .35s ease}html.theme-dark ._tv-dialog--alert-email a,html.theme-dark ._tv-dialog--open-a-chart a{color:#1976d2}._tv-dialog--alert-email a:visited,._tv-dialog--open-a-chart a:visited{color:#2196f3;fill:#2196f3}html.theme-dark ._tv-dialog--alert-email a:visited,html.theme-dark ._tv-dialog--open-a-chart a:visited{fill:#1976d2;color:#1976d2}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){._tv-dialog--alert-email a:hover,._tv-dialog--open-a-chart a:hover{color:#1e88e5;fill:#1e88e5;transition-duration:.06s}}._tv-dialog--alert-email a:active,._tv-dialog--open-a-chart a:active{color:#1e88e5;fill:#1e88e5;transition-duration:.06s}._tv-dialog.ui-resizable{position:absolute}._tv-dialog-title{color:#4c525e;font-weight:700;font-size:15px;padding:17px 20px 17px 35px;cursor:default;word-wrap:break-word}html.theme-dark ._tv-dialog-title{color:#d6d8e0}._tv-dialog-title._tv-dialog-title-no-close{padding-left:20px}._tv-dialog-title._tv-dialog-title-hidden{padding:0;font-size:0;color:transparent;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}._tv-dialog-title ._tv-dialog-title-close{width:21px;height:21px;display:block;position:absolute;left:15px;top:13px;cursor:pointer;z-index:1}._tv-dialog-title ._tv-dialog-title-close:after{width:9px;height:9px;content:" ";position:absolute;top:6px;right:6px;background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAkAAAASCAYAAACJgPRIAAAAUElEQVR42pWQMQoAIAwD++d+x8HJbyoOWXJDSSBgwpVS62vtc8ulXg/ZAZkFMycNoBJgXoUcX1cm9N1NSL0esgMyC2ZOGkAlwLwKObhu/qcHp/zWImEdH8EAAAAASUVORK5CYII=);display:block}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){._tv-dialog-title ._tv-dialog-title-close:hover:after{background-position:bottom}}._tv-dialog-content{color:#131722;max-width:100%}html.theme-dark ._tv-dialog-content{color:#d6d8e0}._tv-dialog-content a:not([class*=button]):not([class*=btn]):not([class*=tabs]):not([class*=tab]):not([class*=sbSelector]):not([class*=filter]):not(a[href="#yes"]):not(a[href="#no"]){color:#2196f3;transition:color .35s ease}html.theme-dark ._tv-dialog-content a:not([class*=button]):not([class*=btn]):not([class*=tabs]):not([class*=tab]):not([class*=sbSelector]):not([class*=filter]):not(a[href="#yes"]):not(a[href="#no"]){color:#1976d2}._tv-dialog-content a:not([class*=button]):not([class*=btn]):not([class*=tabs]):not([class*=tab]):not([class*=sbSelector]):not([class*=filter]):not(a[href="#yes"]):not(a[href="#no"]):visited{color:#2196f3;fill:#2196f3}html.theme-dark ._tv-dialog-content a:not([class*=button]):not([class*=btn]):not([class*=tabs]):not([class*=tab]):not([class*=sbSelector]):not([class*=filter]):not(a[href="#yes"]):not(a[href="#no"]):visited{fill:#1976d2;color:#1976d2}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){._tv-dialog-content a:not([class*=button]):not([class*=btn]):not([class*=tabs]):not([class*=tab]):not([class*=sbSelector]):not([class*=filter]):not(a[href="#yes"]):not(a[href="#no"]):hover{color:#1e88e5;fill:#1e88e5;transition-duration:.06s}}._tv-dialog-content a:not([class*=button]):not([class*=btn]):not([class*=tabs]):not([class*=tab]):not([class*=sbSelector]):not([class*=filter]):not(a[href="#yes"]):not(a[href="#no"]):active{color:#1e88e5;fill:#1e88e5;transition-duration:.06s}._tv-dialog-content .main{padding:0 20px 20px}._tv-dialog-content .main p:first-child{margin-top:0}._tv-dialog-content .main p:last-child{margin-bottom:0}._tv-dialog-content .main .buttons{margin-top:25px;text-align:left}._tv-dialog-content .main .buttons.center{text-align:center}._tv-dialog-content .main .buttons ._tv-button{min-width:60px;text-transform:uppercase}._tv-dialog-content .main-properties{padding:25px}._tv-dialog-content .main-properties.alert-aftertabs,._tv-dialog-content .main-properties.main-properties-aftertabs{padding-top:5px}._tv-dialog-content .main-properties.main-properties-tabless{padding-top:40px}._tv-dialog-content .main-properties td{padding:3px 4px;height:27px}._tv-dialog-content .main-properties td:empty{padding:0}._tv-dialog-content .main-properties td.no-left-indent,._tv-dialog-content .main-properties td:first-child{padding-right:0}._tv-dialog-content .main-properties td:last-child{padding-left:0}._tv-dialog-content .main-properties .percents-label{position:relative;top:5px;right:5px}._tv-dialog-content .main-browser-extension{padding:40px 52px 40px 70px;padding:0}._tv-dialog-content .main-browser-extension .extension-poster{width:328px;height:377px;background:url(../images/dialogs/browser-extension/demo.png) 100% 0}._tv-dialog-content .main-browser-extension .left,._tv-dialog-content .main-browser-extension .right{width:50%;box-sizing:border-box}._tv-dialog-content .main-browser-extension .left{float:right;padding:32px 46px 0 0}._tv-dialog-content .main-browser-extension .right{float:left;padding:51px 44px 0 70px}._tv-dialog-content .main-browser-extension .logo{float:right;width:36px;height:36px;background-size:36px 36px;margin-left:10px}._tv-dialog-content .main-browser-extension .logo.chrome{background:url(../images/svg/google-chrome-logo.svg) 100% 0}._tv-dialog-content .main-browser-extension .info,._tv-dialog-content .main-browser-extension .name{float:right;clear:left;color:#a9a9a9;width:200px}._tv-dialog-content .main-browser-extension .name{font-size:20px;height:20px;line-height:20px}._tv-dialog-content .main-browser-extension .info{font-size:12px;height:14px;line-height:20px}._tv-dialog-content .main-browser-extension h1{margin-top:48px;margin-bottom:0;font-size:20px;line-height:20px}._tv-dialog-content .main-browser-extension p{color:#c2c5cb;margin:14px 0 28px}._tv-dialog-content .main-browser-extension .install-extension button{height:42px;padding:0 25px;line-height:42px;text-align:center;border:none;font-size:12px;text-transform:uppercase;background:#52c3e7;color:#fff;cursor:pointer}._tv-dialog-content .properties-separator{border-bottom:1px solid #b5b7b9}html.theme-dark ._tv-dialog-content .properties-separator{border-bottom:1px solid #363c4e}._tv-dialog-content ._tv-dialog-checkbox-mask{width:18px;height:16px;position:absolute;top:2px;right:2px;background:url(../images/dialogs/checkbox.png) 100% 0}._tv-dialog-content ._tv-dialog-checkbox-mask.radio{background:#fff url(../images/icons.png);background-position:-100px -140px;width:16px}._tv-dialog-content ._tv-dialog-checkbox-mask.disabled{background-position:100% -32px}._tv-dialog-content ._tv-dialog-checkbox-mask-active{background:url(../images/dialogs/checkbox.png) 100% -16px}._tv-dialog-content ._tv-dialog-checkbox-mask-active.radio{background-position:-120px -140px}._tv-dialog-content--with-padding-top{padding-top:40px}._tv-dialog-content form input:not(.tv-control-input)[type=text],._tv-dialog-content form input[type=password],._tv-dialog-text-input{width:100%;box-sizing:border-box;height:33px;border:1px solid #b5b7b9;margin:1px;padding:0 5px;background-color:#fff;color:#4a4a4a}html.theme-dark ._tv-dialog-content form input:not(.tv-control-input)[type=text],html.theme-dark ._tv-dialog-content form input[type=password],html.theme-dark ._tv-dialog-text-input{color:#c5cbce;background-color:#1e222d;border:1px solid #363c4e}._tv-dialog-content form input:not(.tv-control-input)[type=text]:disabled,._tv-dialog-content form input[type=password]:disabled,._tv-dialog-text-input:disabled{color:#5a5a5a;opacity:.5}._tv-dialog-content ._tv-dialog-text-input{height:27px}._tv-dialog-text-input.disabled{color:#909292!important}._tv-dialog-content form input[type=password].error,._tv-dialog-content form input[type=text].error{margin:0;border:2px solid #de5764;background:#f7e4e6;color:#e06571}._tv-dialog-content textarea{color:#4a4a4a;font-size:12px;line-height:18px;border:1px solid;border-color:#b5b7b9;padding:8px 5px;box-sizing:border-box}html.theme-dark ._tv-dialog-content textarea{background:#1e222d;border-color:#363c4e;color:#c5cbce}._tv-dialog-content textarea:disabled{color:#5a5a5a;opacity:.5}._tv-dialog-content form input:not(.tv-control-input)._tv-dialog-content-textactive,._tv-dialog-text-input:focus{background:#fff;border-color:#2196f3!important;color:#595959}html.theme-dark ._tv-dialog-content form input:not(.tv-control-input)._tv-dialog-content-textactive,html.theme-dark ._tv-dialog-text-input:focus{color:#9db2bd;border-color:#1976d2!important;background:#1e222d}._tv-dialog-content textarea{border:1px solid #b5b7b9;background:#fff}html.theme-dark ._tv-dialog-content textarea{border:1px solid #363c4e}._tv-dialog-content textarea._tv-dialog-content-textareaactive{color:#595959;border-color:#2196f3!important}html.theme-dark ._tv-dialog-content textarea._tv-dialog-content-textareaactive{border-color:#1976d2!important}._tv-dialog-content .caption{font-size:11px;color:#4f5966;margin-bottom:3px;margin-top:7px;font-weight:700}html.theme-dark ._tv-dialog-content .caption{color:#f7f8fa}._tv-dialog-content .caption.half{float:right;width:50%}._tv-dialog-content .caption-big{font-size:12px;color:#4f5966;margin:15px 0}html.theme-dark ._tv-dialog-content .caption-big{color:#f7f8fa}._tv-dialog-content .caption-big-center{font-size:12px;color:#4f5966;margin:15px 0;text-align:center}html.theme-dark ._tv-dialog-content .caption-big-center{color:#f7f8fa}._tv-dialog-content .caption-big-center.slim{margin:0;text-align:right}._tv-dialog-content .caption-big-center.slim ul{padding-right:20px}._tv-dialog-content .caption-big.slim{margin:0;text-align:right}._tv-dialog-content .caption.first{margin-top:0}._tv-dialog-content .critical,._tv-dialog-content .disconnect{padding-bottom:15px}._tv-dialog-content .disconnect ol,._tv-dialog-content .disconnect ul{padding-right:1.5em;margin-bottom:0}._tv-dialog-content .disconnect ul{list-style:square}._tv-dialog-content .input input{width:298px!important}._tv-dialog-content .input{margin-bottom:7px}._tv-dialog-content .big-button ._tv-button{padding:10px 50px;background:#fff}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){._tv-dialog-content .big-button ._tv-button:hover{background:#fcfcfc}}._tv-dialog-content label{color:#4a4a4a}html.theme-dark ._tv-dialog-content label{color:#c5cbce}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){._tv-dialog-content .flat:hover:before{border-width:0!important}}._tv-dialog-error,._tv-dialog-message{display:none;position:absolute;top:0;width:100%;font-size:12px;z-index:100;text-align:center}._tv-dialog-error .message,._tv-dialog-message .message{display:table-cell;vertical-align:middle;padding:10px;height:32px}._tv-dialog-error .close,._tv-dialog-message .close{display:none;position:absolute;top:4px;left:4px;width:9px;height:9px;border:4px solid transparent;cursor:pointer;opacity:.7}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){._tv-dialog-error .close:hover,._tv-dialog-message .close:hover{opacity:1}}._tv-dialog-error.with-close .message,._tv-dialog-message.with-close .message{padding:10px 30px}._tv-dialog-error.with-close .close,._tv-dialog-message.with-close .close{display:block}._tv-dialog-error a,._tv-dialog-message a{color:#2196f3;transition:color .35s ease}html.theme-dark ._tv-dialog-error a,html.theme-dark ._tv-dialog-message a{color:#1976d2}._tv-dialog-error a:visited,._tv-dialog-message a:visited{color:#2196f3;fill:#2196f3}html.theme-dark ._tv-dialog-error a:visited,html.theme-dark ._tv-dialog-message a:visited{fill:#1976d2;color:#1976d2}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){._tv-dialog-error a:hover,._tv-dialog-message a:hover{color:#1e88e5;fill:#1e88e5;transition-duration:.06s}}._tv-dialog-error a:active,._tv-dialog-message a:active{color:#1e88e5;fill:#1e88e5;transition-duration:.06s}._tv-dialog-error{color:#c34c36;background:#f9e3e6}html.theme-dark ._tv-dialog-error{background:#6f2626;color:#ffedf0}._tv-dialog-error .close{fill:#9b0202}html.theme-dark ._tv-dialog-error .close{fill:#ffa4b3}._tv-dialog-message{color:#0a8415;background:#e2fde1}html.theme-dark ._tv-dialog-message{background:#21384d;color:#9addcc}._tv-dialog-message .close{fill:#096201}html.theme-dark ._tv-dialog-message .close{fill:#3bc2a1}._tv-dialog-content .dialog-buttons{text-align:left;margin-top:10px}._tv-dialog-content .dialog-comment{float:right;margin-top:15px}._tv-dialog-content .dialog-buttons a{margin:0 5px 0 0;min-width:50px;text-align:center;position:relative}._tv-dialog-content .dialog-buttons a.tv-left{margin:0 0 0 5px}._tv-dialog .ui-resizable-handle{width:11px;height:11px;background:url(../images/dialogs/resize-handle.png) 100% 0 no-repeat}._tv-dialog.change-interval-dialog ._tv-dialog-title{text-align:center;font-size:13px;padding:28px 0 23px}._tv-dialog.change-interval-dialog ._tv-dialog-content{padding:0 50px 13px;text-align:center}._tv-dialog.change-interval-dialog ._tv-dialog-content .change-interval-input{box-sizing:border-box;display:block;width:150px;height:76px;border:1px solid #2196f3;text-align:inherit;font-size:43px;color:#4a4a4a;background-color:#fff;text-transform:uppercase}html.theme-dark ._tv-dialog.change-interval-dialog ._tv-dialog-content .change-interval-input{background-color:#2f3241;color:#c5cbce;border:1px solid #1976d2}._tv-dialog.change-interval-dialog ._tv-dialog-content .change-interval-input.error{border-color:#d75442;background-color:#ffefef}._tv-dialog.change-interval-dialog ._tv-dialog-content i{display:block;font-style:normal}._tv-dialog.change-interval-dialog ._tv-dialog-content i.interval-caption{margin:8px 0 15px;color:#a8a8a8;font-size:12px;font-weight:600;cursor:default}._tv-dialog.change-interval-dialog ._tv-dialog-content i.interval-caption.error{color:#d75442}._tv-dialog.change-interval-dialog ._tv-dialog-content i.help-tooltip-trigger{margin:0 auto;width:12px;height:12px;font-size:11px;font-weight:700;line-height:12px;border:1px solid;border-color:rgba(0,0,0,.5);border-radius:50%;cursor:default}html.theme-dark ._tv-dialog.change-interval-dialog ._tv-dialog-content i.help-tooltip-trigger{border-color:rgba(157,178,189,.5)}._tv-dialog-charting-library._tv-dialog{font-size:14px;font-weight:400;background:#f2f5f8}._tv-dialog-charting-library .main{padding:0 20px 20px}._tv-dialog-charting-library .line{height:1px;background:#ced5db;overflow:hidden}._tv-dialog-charting-library .lead-in{margin-bottom:5px}._tv-dialog-charting-library h3{font-size:26px;font-weight:400;text-transform:uppercase;color:#26282f;margin:0}._tv-dialog-charting-library li,._tv-dialog-charting-library p{line-height:28px;margin:0}._tv-dialog-charting-library p,._tv-dialog-charting-library ul{margin:12px 1px}._tv-dialog-charting-library form .dropzone{margin:1px;border:1px dashed rgba(0,0,0,.3);background:#fff;display:inline-block;padding:20px 0;width:140px;height:110px;float:right;box-sizing:border-box}._tv-dialog-charting-library form .dropzone *{box-sizing:border-box}._tv-dialog-charting-library form .dropzone.dz-clickable{cursor:pointer}._tv-dialog-charting-library form .dropzone.dz-started .dz-message{display:none}._tv-dialog-charting-library form .dropzone.dz-drag-hover{border-style:solid}._tv-dialog-charting-library form .dropzone.dz-drag-hover .dz-message{opacity:.5}._tv-dialog-charting-library form .dropzone .dz-message{text-align:center}._tv-dialog-charting-library form .dropzone .dz-message .link{color:#0099d4}._tv-dialog-charting-library form .dropzone .dz-filename{text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-transform:lowercase}._tv-dialog-charting-library form .dropzone .dz-filename span{padding:0 .4em}._tv-dialog-charting-library form .dropzone .dz-icon{padding:1px 42px}._tv-dialog-charting-library form .dropzone .dz-remove{fill:#ff6565;position:relative;top:-80px;right:110px}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){._tv-dialog-charting-library form .dropzone .dz-remove:hover{fill:red}}._tv-dialog-charting-library form>div{margin-bottom:12px}._tv-dialog-charting-library form .description{margin:6px 0}._tv-dialog-charting-library form .agreement{margin-bottom:10px}._tv-dialog-charting-library form .agreement .description{display:inline-block;padding:27px 5px;width:388px}._tv-dialog-charting-library form textarea{width:100%;height:90px;margin:1px}._tv-dialog-charting-library form .attach{cursor:pointer;font-size:14px;font-weight:400}._tv-dialog-charting-library form input[type=text].error{margin:1px}._tv-dialog-charting-library form .two-columns .column-wrap{box-sizing:border-box;display:inline-block;width:50%}._tv-dialog-charting-library form .two-columns .column-wrap:first-child{padding-left:10px}._tv-dialog-charting-library .big-buttons{text-align:left;padding:10px 0}._tv-dialog-charting-library .big-buttons .cancel-button{cursor:pointer;border:1px solid transparent;font-size:15px;margin:0 15px;color:#686868;background:#f2f5f8}._tv-dialog-charting-library .big-buttons .big-button{cursor:pointer;border:1px solid transparent;background-color:#06b2ce;color:#fff;font-size:15px;text-transform:uppercase;padding:10px 45px;background-image:url(../images/button-base-process.gif);background-position:-9999px -9999px;background-repeat:no-repeat}._tv-dialog-charting-library .big-buttons .big-button.process{background-position:100% 0;background-repeat:repeat}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){._tv-dialog-charting-library .big-buttons .big-button:hover{background-color:#06bbd8}}._tv-dialog-charting-library .big-buttons .big-button:active{background-color:#07c3e2}._tv-dialog-charting-library .big-buttons .big-button.disabled{cursor:default;background-color:#c3c8cf}._tv-dialog.dialog-highlight .main .message textarea{width:350px;height:130px} \ No newline at end of file diff --git a/public/charting_library/static/bundles/21.fc856808959a5b8734f7.js b/public/charting_library/static/bundles/21.fc856808959a5b8734f7.js new file mode 100644 index 0000000..c2fd308 --- /dev/null +++ b/public/charting_library/static/bundles/21.fc856808959a5b8734f7.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[21],[]]); \ No newline at end of file diff --git a/public/charting_library/static/bundles/22.c118eafc7686081984c8.js b/public/charting_library/static/bundles/22.c118eafc7686081984c8.js new file mode 100644 index 0000000..cf9d765 --- /dev/null +++ b/public/charting_library/static/bundles/22.c118eafc7686081984c8.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[22],[]]); \ No newline at end of file diff --git a/public/charting_library/static/bundles/22.f31ebffc8672752a2d4b.css b/public/charting_library/static/bundles/22.f31ebffc8672752a2d4b.css new file mode 100644 index 0000000..849acdb --- /dev/null +++ b/public/charting_library/static/bundles/22.f31ebffc8672752a2d4b.css @@ -0,0 +1 @@ +.button-2ioYhFEY-{display:flex;align-items:center;height:100%;box-sizing:border-box;cursor:default;transition:background-color 60ms ease,opacity 60ms ease,color 60ms ease;color:#131722}html.theme-dark .button-2ioYhFEY-{color:#787b86}.button-2ioYhFEY-:active{color:#000}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){.button-2ioYhFEY-:hover{color:#000}}html.theme-dark .button-2ioYhFEY-:active{color:#868993}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){html.theme-dark .button-2ioYhFEY-:hover{color:#868993}}.button-2ioYhFEY- svg{display:block;fill:currentColor;-moz-transform:translateX(0)}.button-2ioYhFEY-.isInteractive-20uLObIc-{position:relative;z-index:0}.button-2ioYhFEY-.isInteractive-20uLObIc-.hover-yHQNmTbI-:before,.button-2ioYhFEY-.isInteractive-20uLObIc-:active:before{content:"";display:block;position:absolute;z-index:-1;top:2px;right:2px;bottom:2px;left:2px;background-color:#f0f3fa;border-radius:2px}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){.button-2ioYhFEY-.isInteractive-20uLObIc-:hover:before{content:"";display:block;position:absolute;z-index:-1;top:2px;right:2px;bottom:2px;left:2px;background-color:#f0f3fa;border-radius:2px}}html.theme-dark .button-2ioYhFEY-.isInteractive-20uLObIc-.hover-yHQNmTbI-:before,html.theme-dark .button-2ioYhFEY-.isInteractive-20uLObIc-:active:before{background-color:#2a2e39}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){html.theme-dark .button-2ioYhFEY-.isInteractive-20uLObIc-:hover:before{background-color:#2a2e39}}.button-2ioYhFEY-.isInteractive-20uLObIc-.isGrouped-2BBXQnbO-{position:relative;z-index:0}.button-2ioYhFEY-.isInteractive-20uLObIc-.isGrouped-2BBXQnbO-.hover-yHQNmTbI-:before,.button-2ioYhFEY-.isInteractive-20uLObIc-.isGrouped-2BBXQnbO-:active:before{content:"";display:block;position:absolute;z-index:-1;top:2px;right:2px;bottom:2px;left:2px;background-color:#f0f3fa;border-radius:2px;right:0;left:0}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){.button-2ioYhFEY-.isInteractive-20uLObIc-.isGrouped-2BBXQnbO-:hover:before{content:"";display:block;position:absolute;z-index:-1;top:2px;right:2px;bottom:2px;left:2px;background-color:#f0f3fa;border-radius:2px;right:0;left:0}}html.theme-dark .button-2ioYhFEY-.isInteractive-20uLObIc-.isGrouped-2BBXQnbO-.hover-yHQNmTbI-:before,html.theme-dark .button-2ioYhFEY-.isInteractive-20uLObIc-.isGrouped-2BBXQnbO-:active:before{background-color:#2a2e39}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){html.theme-dark .button-2ioYhFEY-.isInteractive-20uLObIc-.isGrouped-2BBXQnbO-:hover:before{background-color:#2a2e39}}.button-2ioYhFEY-.isInteractive-20uLObIc-.isActive-22S-lGpa-{color:#2196f3}html.theme-sa .button-2ioYhFEY-.isInteractive-20uLObIc-.isActive-22S-lGpa-{color:#ff7200}html.theme-dark .button-2ioYhFEY-.isInteractive-20uLObIc-.isActive-22S-lGpa-{color:#1976d2}.button-2ioYhFEY-.isInteractive-20uLObIc-.isActive-22S-lGpa-:active{color:#1e88e5}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){.button-2ioYhFEY-.isInteractive-20uLObIc-.isActive-22S-lGpa-:hover{color:#1e88e5}}html.theme-dark .button-2ioYhFEY-.isInteractive-20uLObIc-.isActive-22S-lGpa-:active{color:#1e88e5}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){html.theme-dark .button-2ioYhFEY-.isInteractive-20uLObIc-.isActive-22S-lGpa-:hover{color:#1e88e5}}.button-2ioYhFEY-.isInteractive-20uLObIc-.isOpened-p-Ume5l9-.hover-yHQNmTbI-:before,.button-2ioYhFEY-.isInteractive-20uLObIc-.isOpened-p-Ume5l9-:active:before,.button-2ioYhFEY-.isInteractive-20uLObIc-.isOpened-p-Ume5l9-:before{content:"";display:block;position:absolute;z-index:-1;top:0;right:0;bottom:0;left:0;border-radius:0;background-color:#f0f3fa}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){.button-2ioYhFEY-.isInteractive-20uLObIc-.isOpened-p-Ume5l9-:hover:before{content:"";display:block;position:absolute;z-index:-1;top:0;right:0;bottom:0;left:0;border-radius:0;background-color:#f0f3fa}}html.theme-dark .button-2ioYhFEY-.isInteractive-20uLObIc-.isOpened-p-Ume5l9-.hover-yHQNmTbI-:before,html.theme-dark .button-2ioYhFEY-.isInteractive-20uLObIc-.isOpened-p-Ume5l9-:active:before,html.theme-dark .button-2ioYhFEY-.isInteractive-20uLObIc-.isOpened-p-Ume5l9-:before{background-color:#2a2e39}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){html.theme-dark .button-2ioYhFEY-.isInteractive-20uLObIc-.isOpened-p-Ume5l9-:hover:before{background-color:#2a2e39}}.button-2ioYhFEY-.isDisabled-1_tmrLfP-{opacity:.3}.button-2ioYhFEY-.isDisabled-1_tmrLfP-,.button-2ioYhFEY-.isDisabled-1_tmrLfP-:active{background-color:transparent}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){.button-2ioYhFEY-.isDisabled-1_tmrLfP-:hover{background-color:transparent}}.button-2ioYhFEY-.isDisabled-1_tmrLfP-.isActive-22S-lGpa-{opacity:1;color:#2196f3}html.theme-sa .button-2ioYhFEY-.isDisabled-1_tmrLfP-.isActive-22S-lGpa-{color:#ff7200}html.theme-dark .button-2ioYhFEY-.isDisabled-1_tmrLfP-.isActive-22S-lGpa-{color:#1976d2}.icon-beK_KS0k-+.text-1sK7vbvh-,.text-1sK7vbvh-+.icon-beK_KS0k-{margin-left:2px} \ No newline at end of file diff --git a/public/charting_library/static/bundles/22.f31ebffc8672752a2d4b.rtl.css b/public/charting_library/static/bundles/22.f31ebffc8672752a2d4b.rtl.css new file mode 100644 index 0000000..60fdd2d --- /dev/null +++ b/public/charting_library/static/bundles/22.f31ebffc8672752a2d4b.rtl.css @@ -0,0 +1 @@ +.button-2ioYhFEY-{display:flex;align-items:center;height:100%;box-sizing:border-box;cursor:default;transition:background-color 60ms ease,opacity 60ms ease,color 60ms ease;color:#131722}html.theme-dark .button-2ioYhFEY-{color:#787b86}.button-2ioYhFEY-:active{color:#000}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){.button-2ioYhFEY-:hover{color:#000}}html.theme-dark .button-2ioYhFEY-:active{color:#868993}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){html.theme-dark .button-2ioYhFEY-:hover{color:#868993}}.button-2ioYhFEY- svg{display:block;fill:currentColor;-moz-transform:translateX(0)}.button-2ioYhFEY-.isInteractive-20uLObIc-{position:relative;z-index:0}.button-2ioYhFEY-.isInteractive-20uLObIc-.hover-yHQNmTbI-:before,.button-2ioYhFEY-.isInteractive-20uLObIc-:active:before{content:"";display:block;position:absolute;z-index:-1;top:2px;left:2px;bottom:2px;right:2px;background-color:#f0f3fa;border-radius:2px}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){.button-2ioYhFEY-.isInteractive-20uLObIc-:hover:before{content:"";display:block;position:absolute;z-index:-1;top:2px;left:2px;bottom:2px;right:2px;background-color:#f0f3fa;border-radius:2px}}html.theme-dark .button-2ioYhFEY-.isInteractive-20uLObIc-.hover-yHQNmTbI-:before,html.theme-dark .button-2ioYhFEY-.isInteractive-20uLObIc-:active:before{background-color:#2a2e39}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){html.theme-dark .button-2ioYhFEY-.isInteractive-20uLObIc-:hover:before{background-color:#2a2e39}}.button-2ioYhFEY-.isInteractive-20uLObIc-.isGrouped-2BBXQnbO-{position:relative;z-index:0}.button-2ioYhFEY-.isInteractive-20uLObIc-.isGrouped-2BBXQnbO-.hover-yHQNmTbI-:before,.button-2ioYhFEY-.isInteractive-20uLObIc-.isGrouped-2BBXQnbO-:active:before{content:"";display:block;position:absolute;z-index:-1;top:2px;left:2px;bottom:2px;right:2px;background-color:#f0f3fa;border-radius:2px;left:0;right:0}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){.button-2ioYhFEY-.isInteractive-20uLObIc-.isGrouped-2BBXQnbO-:hover:before{content:"";display:block;position:absolute;z-index:-1;top:2px;left:2px;bottom:2px;right:2px;background-color:#f0f3fa;border-radius:2px;left:0;right:0}}html.theme-dark .button-2ioYhFEY-.isInteractive-20uLObIc-.isGrouped-2BBXQnbO-.hover-yHQNmTbI-:before,html.theme-dark .button-2ioYhFEY-.isInteractive-20uLObIc-.isGrouped-2BBXQnbO-:active:before{background-color:#2a2e39}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){html.theme-dark .button-2ioYhFEY-.isInteractive-20uLObIc-.isGrouped-2BBXQnbO-:hover:before{background-color:#2a2e39}}.button-2ioYhFEY-.isInteractive-20uLObIc-.isActive-22S-lGpa-{color:#2196f3}html.theme-sa .button-2ioYhFEY-.isInteractive-20uLObIc-.isActive-22S-lGpa-{color:#ff7200}html.theme-dark .button-2ioYhFEY-.isInteractive-20uLObIc-.isActive-22S-lGpa-{color:#1976d2}.button-2ioYhFEY-.isInteractive-20uLObIc-.isActive-22S-lGpa-:active{color:#1e88e5}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){.button-2ioYhFEY-.isInteractive-20uLObIc-.isActive-22S-lGpa-:hover{color:#1e88e5}}html.theme-dark .button-2ioYhFEY-.isInteractive-20uLObIc-.isActive-22S-lGpa-:active{color:#1e88e5}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){html.theme-dark .button-2ioYhFEY-.isInteractive-20uLObIc-.isActive-22S-lGpa-:hover{color:#1e88e5}}.button-2ioYhFEY-.isInteractive-20uLObIc-.isOpened-p-Ume5l9-.hover-yHQNmTbI-:before,.button-2ioYhFEY-.isInteractive-20uLObIc-.isOpened-p-Ume5l9-:active:before,.button-2ioYhFEY-.isInteractive-20uLObIc-.isOpened-p-Ume5l9-:before{content:"";display:block;position:absolute;z-index:-1;top:0;left:0;bottom:0;right:0;border-radius:0;background-color:#f0f3fa}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){.button-2ioYhFEY-.isInteractive-20uLObIc-.isOpened-p-Ume5l9-:hover:before{content:"";display:block;position:absolute;z-index:-1;top:0;left:0;bottom:0;right:0;border-radius:0;background-color:#f0f3fa}}html.theme-dark .button-2ioYhFEY-.isInteractive-20uLObIc-.isOpened-p-Ume5l9-.hover-yHQNmTbI-:before,html.theme-dark .button-2ioYhFEY-.isInteractive-20uLObIc-.isOpened-p-Ume5l9-:active:before,html.theme-dark .button-2ioYhFEY-.isInteractive-20uLObIc-.isOpened-p-Ume5l9-:before{background-color:#2a2e39}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){html.theme-dark .button-2ioYhFEY-.isInteractive-20uLObIc-.isOpened-p-Ume5l9-:hover:before{background-color:#2a2e39}}.button-2ioYhFEY-.isDisabled-1_tmrLfP-{opacity:.3}.button-2ioYhFEY-.isDisabled-1_tmrLfP-,.button-2ioYhFEY-.isDisabled-1_tmrLfP-:active{background-color:transparent}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){.button-2ioYhFEY-.isDisabled-1_tmrLfP-:hover{background-color:transparent}}.button-2ioYhFEY-.isDisabled-1_tmrLfP-.isActive-22S-lGpa-{opacity:1;color:#2196f3}html.theme-sa .button-2ioYhFEY-.isDisabled-1_tmrLfP-.isActive-22S-lGpa-{color:#ff7200}html.theme-dark .button-2ioYhFEY-.isDisabled-1_tmrLfP-.isActive-22S-lGpa-{color:#1976d2}.icon-beK_KS0k-+.text-1sK7vbvh-,.text-1sK7vbvh-+.icon-beK_KS0k-{margin-right:2px} \ No newline at end of file diff --git a/public/charting_library/static/bundles/23.7c4be219df640cb3880c.css b/public/charting_library/static/bundles/23.7c4be219df640cb3880c.css new file mode 100644 index 0000000..2d72481 --- /dev/null +++ b/public/charting_library/static/bundles/23.7c4be219df640cb3880c.css @@ -0,0 +1 @@ +.dialog-34XTwGTT-{position:fixed;min-width:280px;width:100%;max-width:380px}.dialog-34XTwGTT- [data-dragg-area]{cursor:url(grab.bc156522a6b55a60be9fae15c14b66c5.cur),move;cursor:grab}.dialog-34XTwGTT- [data-dragg-area].dragging-33JfMDO6-{cursor:url(grabbing.1c0862a8a8c0fb02885557bc97fdafe7.cur),move;cursor:grabbing} \ No newline at end of file diff --git a/public/charting_library/static/bundles/23.7c4be219df640cb3880c.rtl.css b/public/charting_library/static/bundles/23.7c4be219df640cb3880c.rtl.css new file mode 100644 index 0000000..2d72481 --- /dev/null +++ b/public/charting_library/static/bundles/23.7c4be219df640cb3880c.rtl.css @@ -0,0 +1 @@ +.dialog-34XTwGTT-{position:fixed;min-width:280px;width:100%;max-width:380px}.dialog-34XTwGTT- [data-dragg-area]{cursor:url(grab.bc156522a6b55a60be9fae15c14b66c5.cur),move;cursor:grab}.dialog-34XTwGTT- [data-dragg-area].dragging-33JfMDO6-{cursor:url(grabbing.1c0862a8a8c0fb02885557bc97fdafe7.cur),move;cursor:grabbing} \ No newline at end of file diff --git a/public/charting_library/static/bundles/23.e89d09694523563b8f86.js b/public/charting_library/static/bundles/23.e89d09694523563b8f86.js new file mode 100644 index 0000000..0c17a67 --- /dev/null +++ b/public/charting_library/static/bundles/23.e89d09694523563b8f86.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[23],[]]); \ No newline at end of file diff --git a/public/charting_library/static/bundles/24.319f9ed9725f3cea260a.js b/public/charting_library/static/bundles/24.319f9ed9725f3cea260a.js new file mode 100644 index 0000000..d211dd2 --- /dev/null +++ b/public/charting_library/static/bundles/24.319f9ed9725f3cea260a.js @@ -0,0 +1,8 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[24],{"2dtg":function(o,e){o.exports=''},"2lje":function(o,e){o.exports=''},"3s8f":function(o,e){o.exports=''},"43BO":function(o,e){o.exports=''},"6oLA":function(o,e){o.exports=''},Csdk:function(o,e){o.exports=''},FVBd:function(o,e){ +o.exports=''},G1jy:function(o,e){o.exports=''},Ijvb:function(o,e,i){"use strict";i.d(e,"a",function(){return n});var n={SyncDrawing:i("G1jy"),arrow:i("tceb"),cursor:i("WHEt"),dot:i("Csdk"),drawginmode:i("2dtg"),drawginmodeActive:i("FVBd"),eraser:i("2lje"),group:i("lZXH"),hideAllDrawings:i("6oLA"),hideAllDrawingsActive:i("dmHa"),lockAllDrawings:i("Uh5y"),lockAllDrawingsActive:i("43BO"),magnet:i("3s8f"),strongMagnet:i("xjKU"),measure:i("oCKS"),removeAllDrawingTools:i("aVjL"),showObjectTree:i("qQ3E"),zoom:i("kmdM"),"zoom-out":i("mbEK")}},"MP+M":function(o,e,i){"use strict";var n,l,t,a,c,s,r;i.d(e,"a",function(){return r}),i("YFKU"),n=i("ei7k"),l=i("zxD0"),t=i("Ijvb"),a={keys:["Shift"],text:window.t("{0} — drawing a straight line at angles of 45")},c={keys:["Shift"],text:window.t("{0} — circle")},s={keys:["Shift"],text:window.t("{0} — square")},r={LineTool5PointsPattern:{icon:l.lineToolsIcons.LineTool5PointsPattern,localizedName:window.t("XABCD Pattern")},LineToolABCD:{icon:l.lineToolsIcons.LineToolABCD,localizedName:window.t("ABCD Pattern")},LineToolArc:{icon:l.lineToolsIcons.LineToolArc,localizedName:window.t("Arc")},LineToolArrow:{icon:l.lineToolsIcons.LineToolArrow,localizedName:window.t("Arrow")},LineToolArrowMarkDown:{icon:l.lineToolsIcons.LineToolArrowMarkDown,localizedName:window.t("Arrow Mark Down")},LineToolArrowMarkLeft:{icon:l.lineToolsIcons.LineToolArrowMarkLeft,localizedName:window.t("Arrow Mark Left")},LineToolArrowMarkRight:{icon:l.lineToolsIcons.LineToolArrowMarkRight,localizedName:window.t("Arrow Mark Right")},LineToolArrowMarkUp:{ +icon:l.lineToolsIcons.LineToolArrowMarkUp,localizedName:window.t("Arrow Mark Up")},LineToolBalloon:{icon:l.lineToolsIcons.LineToolBalloon,localizedName:window.t("Balloon")},LineToolBarsPattern:{icon:l.lineToolsIcons.LineToolBarsPattern,localizedName:window.t("Bars Pattern")},LineToolBezierCubic:{icon:l.lineToolsIcons.LineToolBezierCubic,localizedName:window.t("Double Curve")},LineToolBezierQuadro:{icon:l.lineToolsIcons.LineToolBezierQuadro,localizedName:window.t("Curve")},LineToolBrush:{icon:l.lineToolsIcons.LineToolBrush,localizedName:window.t("Brush")},LineToolCallout:{icon:l.lineToolsIcons.LineToolCallout,localizedName:window.t("Callout")},LineToolCircleLines:{icon:l.lineToolsIcons.LineToolCircleLines,localizedName:window.t("Cyclic Lines")},LineToolCypherPattern:{icon:l.lineToolsIcons.LineToolCypherPattern,localizedName:window.t("Cypher Pattern")},LineToolDateAndPriceRange:{icon:l.lineToolsIcons.LineToolDateAndPriceRange,localizedName:window.t("Date and Price Range")},LineToolDateRange:{icon:l.lineToolsIcons.LineToolDateRange,localizedName:window.t("Date Range")},LineToolDisjointAngle:{icon:l.lineToolsIcons.LineToolDisjointAngle,localizedName:window.t("Disjoint Angle"),hotKey:Object(n.b)(a)},LineToolElliottCorrection:{icon:l.lineToolsIcons.LineToolElliottCorrection,localizedName:window.t("Elliott Correction Wave (ABC)")},LineToolElliottDoubleCombo:{icon:l.lineToolsIcons.LineToolElliottDoubleCombo,localizedName:window.t("Elliott Double Combo Wave (WXY)")},LineToolElliottImpulse:{icon:l.lineToolsIcons.LineToolElliottImpulse,localizedName:window.t("Elliott Impulse Wave (12345)")},LineToolElliottTriangle:{icon:l.lineToolsIcons.LineToolElliottTriangle,localizedName:window.t("Elliott Triangle Wave (ABCDE)")},LineToolElliottTripleCombo:{icon:l.lineToolsIcons.LineToolElliottTripleCombo,localizedName:window.t("Elliott Triple Combo Wave (WXYXZ)")},LineToolEllipse:{icon:l.lineToolsIcons.LineToolEllipse,localizedName:window.t("Ellipse"),hotKey:Object(n.b)(c)},LineToolExtended:{icon:l.lineToolsIcons.LineToolExtended,localizedName:window.t("Extended")},LineToolFibChannel:{icon:l.lineToolsIcons.LineToolFibChannel,localizedName:window.t("Fib Channel")},LineToolFibCircles:{icon:l.lineToolsIcons.LineToolFibCircles,localizedName:window.t("Fib Circles"),hotKey:Object(n.b)(c)},LineToolFibRetracement:{icon:l.lineToolsIcons.LineToolFibRetracement,localizedName:window.t("Fib Retracement")},LineToolFibSpeedResistanceArcs:{icon:l.lineToolsIcons.LineToolFibSpeedResistanceArcs,localizedName:window.t("Fib Speed Resistance Arcs")},LineToolFibSpeedResistanceFan:{icon:l.lineToolsIcons.LineToolFibSpeedResistanceFan,localizedName:window.t("Fib Speed Resistance Fan"),hotKey:Object(n.b)(s)},LineToolFibSpiral:{icon:l.lineToolsIcons.LineToolFibSpiral,localizedName:window.t("Fib Spiral")},LineToolFibTimeZone:{icon:l.lineToolsIcons.LineToolFibTimeZone,localizedName:window.t("Fib Time Zone")},LineToolFibWedge:{icon:l.lineToolsIcons.LineToolFibWedge,localizedName:window.t("Fib Wedge")},LineToolFlagMark:{icon:l.lineToolsIcons.LineToolFlagMark, +localizedName:window.t("Flag Mark")},LineToolFlatBottom:{icon:l.lineToolsIcons.LineToolFlatBottom,localizedName:window.t("Flat Top/Bottom"),hotKey:Object(n.b)(a)},LineToolGannComplex:{icon:l.lineToolsIcons.LineToolGannComplex,localizedName:window.t("Gann Square")},LineToolGannFixed:{icon:l.lineToolsIcons.LineToolGannFixed,localizedName:window.t("Gann Square Fixed")},LineToolGannFan:{icon:l.lineToolsIcons.LineToolGannFan,localizedName:window.t("Gann Fan")},LineToolGannSquare:{icon:l.lineToolsIcons.LineToolGannSquare,localizedName:window.t("Gann Box"),hotKey:Object(n.b)({keys:["Shift"],text:window.t("{0} — fixed increments")})},LineToolGhostFeed:{icon:l.lineToolsIcons.LineToolGhostFeed,localizedName:window.t("Ghost Feed")},LineToolHeadAndShoulders:{icon:l.lineToolsIcons.LineToolHeadAndShoulders,localizedName:window.t("Head and Shoulders")},LineToolHorzLine:{icon:l.lineToolsIcons.LineToolHorzLine,localizedName:window.t("Horizontal Line"),hotKey:Object(n.b)({keys:["Alt","H"],text:"{0} + {1}"})},LineToolHorzRay:{icon:l.lineToolsIcons.LineToolHorzRay,localizedName:window.t("Horizontal Ray")},LineToolIcon:{icon:l.lineToolsIcons.LineToolIcon,localizedName:window.t("Font Icons")},LineToolInsidePitchfork:{icon:l.lineToolsIcons.LineToolInsidePitchfork,localizedName:window.t("Inside Pitchfork")},LineToolNote:{icon:l.lineToolsIcons.LineToolNote,localizedName:window.t("Note")},LineToolNoteAbsolute:{icon:l.lineToolsIcons.LineToolNoteAbsolute,localizedName:window.t("Anchored Note")},LineToolParallelChannel:{icon:l.lineToolsIcons.LineToolParallelChannel,localizedName:window.t("Parallel Channel"),hotKey:Object(n.b)(a)},LineToolPitchfan:{icon:l.lineToolsIcons.LineToolPitchfan,localizedName:window.t("Pitchfan")},LineToolPitchfork:{icon:l.lineToolsIcons.LineToolPitchfork,localizedName:window.t("Pitchfork")},LineToolPolyline:{icon:l.lineToolsIcons.LineToolPolyline,localizedName:window.t("Polyline")},LineToolPrediction:{icon:l.lineToolsIcons.LineToolPrediction,localizedName:window.t("Forecast")},LineToolPriceLabel:{icon:l.lineToolsIcons.LineToolPriceLabel,localizedName:window.t("Price Label")},LineToolPriceRange:{icon:l.lineToolsIcons.LineToolPriceRange,localizedName:window.t("Price Range")},LineToolProjection:{icon:l.lineToolsIcons.LineToolProjection,localizedName:window.t("Projection")},LineToolRay:{icon:l.lineToolsIcons.LineToolRay,localizedName:window.t("Ray")},LineToolRectangle:{icon:l.lineToolsIcons.LineToolRectangle,localizedName:window.t("Rectangle"),hotKey:Object(n.b)({keys:["Shift"],text:window.t("{0} — square")})},LineToolRegressionTrend:{icon:l.lineToolsIcons.LineToolRegressionTrend,localizedName:window.t("Regression Trend")},LineToolRiskRewardLong:{icon:l.lineToolsIcons.LineToolRiskRewardLong,localizedName:window.t("Long Position")},LineToolRiskRewardShort:{icon:l.lineToolsIcons.LineToolRiskRewardShort,localizedName:window.t("Short Position")},LineToolRotatedRectangle:{icon:l.lineToolsIcons.LineToolRotatedRectangle,localizedName:window.t("Rotated Rectangle"),hotKey:Object(n.b)(a)},LineToolSchiffPitchfork:{ +icon:l.lineToolsIcons.LineToolSchiffPitchfork,localizedName:window.t("Modified Schiff Pitchfork")},LineToolSchiffPitchfork2:{icon:l.lineToolsIcons.LineToolSchiffPitchfork2,localizedName:window.t("Schiff Pitchfork")},LineToolSineLine:{icon:l.lineToolsIcons.LineToolSineLine,localizedName:window.t("Sine Line")},LineToolText:{icon:l.lineToolsIcons.LineToolText,localizedName:window.t("Text",{context:"tool"})},LineToolTextAbsolute:{icon:l.lineToolsIcons.LineToolTextAbsolute,localizedName:window.t("Anchored Text")},LineToolThreeDrivers:{icon:l.lineToolsIcons.LineToolThreeDrivers,localizedName:window.t("Three Drives Pattern")},LineToolTimeCycles:{icon:l.lineToolsIcons.LineToolTimeCycles,localizedName:window.t("Time Cycles")},LineToolTrendAngle:{icon:l.lineToolsIcons.LineToolTrendAngle,localizedName:window.t("Trend Angle"),hotKey:Object(n.b)(a)},LineToolTrendBasedFibExtension:{icon:l.lineToolsIcons.LineToolTrendBasedFibExtension,localizedName:window.t("Trend-Based Fib Extension")},LineToolTrendBasedFibTime:{icon:l.lineToolsIcons.LineToolTrendBasedFibTime,localizedName:window.t("Trend-Based Fib Time")},LineToolTrendLine:{icon:l.lineToolsIcons.LineToolTrendLine,localizedName:window.t("Trend Line"),hotKey:Object(n.b)(a)},LineToolInfoLine:{icon:l.lineToolsIcons.LineToolInfoLine,localizedName:window.t("Info Line")},LineToolTriangle:{icon:l.lineToolsIcons.LineToolTriangle,localizedName:window.t("Triangle")},LineToolTrianglePattern:{icon:l.lineToolsIcons.LineToolTrianglePattern,localizedName:window.t("Triangle Pattern")},LineToolVertLine:{icon:l.lineToolsIcons.LineToolVertLine,localizedName:window.t("Vertical Line"),hotKey:Object(n.b)({keys:["Alt","V"],text:"{0} + {1}"})},LineToolCrossLine:{icon:l.lineToolsIcons.LineToolCrossLine,localizedName:$.t("Cross Line")},SyncDrawing:{icon:t.a.SyncDrawing,iconActive:t.a.SyncDrawingActive,localizedName:window.t("New drawings are replicated to all charts in the layout and shown when the same ticker is selected")},arrow:{icon:t.a.arrow,localizedName:window.t("Arrow")},cursor:{icon:t.a.cursor,localizedName:window.t("Cross")},dot:{icon:t.a.dot,localizedName:window.t("Dot")},drawginmode:{icon:t.a.drawginmode,iconActive:t.a.drawginmodeActive,localizedName:window.t("Stay in Drawing Mode")},eraser:{icon:t.a.eraser,localizedName:window.t("Eraser")},group:{icon:t.a.group,localizedName:window.t("Show Hidden Tools")},hideAllDrawings:{icon:t.a.hideAllDrawings,iconActive:t.a.hideAllDrawingsActive,localizedName:window.t("Hide All Drawing Tools")},lockAllDrawings:{icon:t.a.lockAllDrawings,iconActive:t.a.lockAllDrawingsActive,localizedName:window.t("Lock All Drawing Tools")},magnet:{icon:t.a.magnet,localizedName:window.t("Magnet Mode snaps drawings placed near price bars to the closest OHLC value")},measure:{icon:t.a.measure,localizedName:window.t("Measure"),hotKey:Object(n.b)({keys:["Shift"],text:window.t("{0} + Click on the chart")})},removeAllDrawingTools:{icon:t.a.removeAllDrawingTools,localizedName:window.t("Remove All Drawing Tools")},showObjectsTree:{icon:t.a.showObjectTree, +localizedName:window.t("Show Object Tree")},zoom:{icon:t.a.zoom,localizedName:window.t("Zoom In")},"zoom-out":{icon:t.a["zoom-out"],localizedName:window.t("Zoom Out")}}},Uh5y:function(o,e){o.exports=''},WHEt:function(o,e){o.exports=''},aVjL:function(o,e){o.exports=''},b2d7:function(o,e,i){"use strict";var n,l,t,a,c;i.d(e,"a",function(){return c}),n=i("aIyQ"),l=i.n(n),t=i("Vdly"),function(o){function e(){o.favorites=[],Object(t.getJSON)("chart.favoriteDrawings",[]).forEach(function(e){o.favorites.push(e.tool||e)}),o.favoritesSynced.fire()}o.favorites=[],o.favoritesSynced=new l.a,o.favoriteIndex=function(e){return o.favorites.indexOf(e)},o.saveFavorites=function(){Object(t.setJSON)("chart.favoriteDrawings",o.favorites)},e(),t.onSync.subscribe(null,e)}(a||(a={})),function(o){function e(){return a.favorites.length}function i(o){return-1!==a.favoriteIndex(o)}o.favoriteAdded=new l.a,o.favoriteRemoved=new l.a,o.favoriteMoved=new l.a,o.favoritesSynced=a.favoritesSynced,o.favorites=function(){return a.favorites.slice()},o.favoritesCount=e,o.favorite=function(o){return o<0||o>=e()?"":a.favorites[o]},o.addFavorite=function(e){return!i(e)&&(a.favorites.push(e),a.saveFavorites(),o.favoriteAdded.fire(e),!0)},o.removeFavorite=function(e){var i=a.favoriteIndex(e);return-1!==i&&(a.favorites.splice(i,1),a.saveFavorites(),o.favoriteRemoved.fire(e),!0)},o.isFavorite=i,o.moveFavorite=function(i,n){if(n<0||n>=e())return!1;var l=a.favoriteIndex(i);return-1!==l&&n!==l&&(a.favorites.splice(l,1),a.favorites.splice(n,0,i),a.saveFavorites(),o.favoriteMoved.fire(i,l,n),!0)}}(c||(c={}))},dmHa:function(o,e){ +o.exports=''},kmdM:function(o,e){o.exports=''},lZXH:function(o,e){o.exports=''},mbEK:function(o,e){o.exports=''},oCKS:function(o,e){o.exports=''},qQ3E:function(o,e){o.exports=''},tceb:function(o,e){ +o.exports=''},xjKU:function(o,e){o.exports=''}}]); \ No newline at end of file diff --git a/public/charting_library/static/bundles/25.15d449d35706e01821dd.js b/public/charting_library/static/bundles/25.15d449d35706e01821dd.js new file mode 100644 index 0000000..0c2e56d --- /dev/null +++ b/public/charting_library/static/bundles/25.15d449d35706e01821dd.js @@ -0,0 +1,4 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[25],{"5YsI":function(t,e,o){t.exports={button:"button-13wlLwhJ-",hover:"hover-3L87f6Kw-",arrow:"arrow-2pXEy7ej-",arrowWrap:"arrowWrap-r5l5nQXU-",isOpened:"isOpened-1939ai3F-"}},"82wv":function(t,e,o){"use strict";var n,i,r,a,s,c,l,u;o.d(e,"a",function(){return u}),n=o("mrSG"),i=o("q1tI"),r=o("TSYQ"),a=o("9dlw"),s=o("ML8+"),c=o("5YsI"),l=o("Iksw"),u=function(t){function e(e){var o=t.call(this,e)||this;return o._wrapperRef=null,o._handleWrapperRef=function(t){return o._wrapperRef=t},o._handleClick=function(t){t.target instanceof Node&&t.currentTarget.contains(t.target)&&o._handleToggleDropdown()},o._handleToggleDropdown=function(t){var e=o.state.isOpened,n="boolean"==typeof t?t:!e;o.setState({isOpened:n})},o._handleClose=function(){o._handleToggleDropdown(!1)},o.state={isOpened:!1},o}return n.__extends(e,t),e.prototype.render=function(){var t,e=this.props,o=e.id,n=e.arrow,u=e.children,p=e.content,d=e.isDisabled,h=e.minWidth,v=e.title,f=e.className,m=e.hotKey,g=this.state.isOpened,b=r(f,c.button,"apply-common-tooltip",((t={})[c.isDisabled]=d,t[c.isOpened]=g,t)),O={horizontalMargin:this.props.horizontalMargin||0,verticalMargin:this.props.verticalMargin||2,verticalAttachEdge:this.props.verticalAttachEdge,horizontalAttachEdge:this.props.horizontalAttachEdge,verticalDropDirection:this.props.verticalDropDirection,horizontalDropDirection:this.props.horizontalDropDirection};return i.createElement("div",{id:o,className:b,onClick:d?void 0:this._handleClick,title:v,"data-tooltip-hotkey":m,ref:this._handleWrapperRef},p,n&&i.createElement("div",{className:c.arrow},i.createElement("div",{className:c.arrowWrap},i.createElement(s.a,{dropped:g}))),i.createElement(a.a,{closeOnClickOutside:this.props.closeOnClickOutside,doNotCloseOn:this,isOpened:g,minWidth:h,onClose:this._handleClose,position:Object(l.c)(this._wrapperRef,O)},u))},e.defaultProps={arrow:!0,closeOnClickOutside:!0},e}(i.PureComponent)},"9dlw":function(t,e,o){"use strict";var n,i,r,a,s,c,l,u,p;o.d(e,"a",function(){return p}),n=o("mrSG"),i=o("bf9a"),r=o("q1tI"),a=o("i8i4"),s=o("17x9"),c=o("RgaO"),l=o("AiMB"),u=o("DTHj"),p=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e._handleClose=function(){e.props.onClose()},e._handleClickOutside=function(t){var o,n=e.props,i=n.closeOnClickOutside,r=n.onClickOutside,s=n.doNotCloseOn;r&&r(t),i&&(s&&t.target instanceof Node&&(o=a.findDOMNode(s))instanceof Node&&o.contains(t.target)||e._handleClose())},e._handleScroll=function(t){var o=e.props.onScroll;o&&o(t),t.stopPropagation()},e}return n.__extends(e,t),e.prototype.componentWillReceiveProps=function(t){this.props.isOpened&&!t.isOpened&&this.setState({isMeasureValid:void 0})},e.prototype.render=function(){var t=this.props,e=t.children,o=t.isOpened,i=(t.closeOnClickOutside,t.doNotCloseOn,t.onClickOutside,t.onClose,n.__rest(t,["children","isOpened","closeOnClickOutside","doNotCloseOn","onClickOutside","onClose"]));return o?r.createElement(l.a,null,r.createElement(c.a,{handler:this._handleClickOutside, +mouseDown:!0,touchStart:!0},r.createElement(u.a,n.__assign({},i,{isOpened:o,onClose:this._handleClose,onScroll:this._handleScroll,customCloseDelegate:this.context.customCloseDelegate}),e))):null},e.contextTypes={customCloseDelegate:s.any},e.defaultProps={closeOnClickOutside:!0},e}(r.PureComponent)},AiMB:function(t,e,o){"use strict";var n,i,r,a,s,c,l,u;o.d(e,"a",function(){return l}),o.d(e,"b",function(){return u}),n=o("mrSG"),i=o("q1tI"),r=o("i8i4"),a=o("0waE"),s=o("jAh7"),c=o("+EG+"),l=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e._uuid=Object(a.guid)(),e}return n.__extends(e,t),e.prototype.componentWillUnmount=function(){this._manager().removeWindow(this._uuid)},e.prototype.render=function(){return r.createPortal(i.createElement(u.Provider,{value:this},this.props.children),this._manager().ensureWindow(this._uuid))},e.prototype.moveToTop=function(){this._manager().moveToTop(this._uuid)},e.prototype._manager=function(){return null===this.context?Object(s.getRootOverlapManager)():this.context},e.contextType=c.b,e}(i.PureComponent),u=i.createContext(null)},Iksw:function(t,e,o){"use strict";function n(t,e){return function(o,n){var u=Object(i.ensureNotNull)(t).getBoundingClientRect(),p=e.verticalAttachEdge,d=void 0===p?l.verticalAttachEdge:p,h=e.verticalDropDirection,v=void 0===h?l.verticalDropDirection:h,f=e.horizontalAttachEdge,m=void 0===f?l.horizontalAttachEdge:f,g=e.horizontalDropDirection,b=void 0===g?l.horizontalDropDirection:g,O=e.horizontalMargin,_=void 0===O?l.horizontalMargin:O,w=e.verticalMargin,C=void 0===w?l.verticalMargin:w,D=d===r.Top?-1*C:C,E=m===a.Right?u.right:u.left,T=d===r.Top?u.top:u.bottom,N=E-(b===c.FromRightToLeft?o:0),k=T-(v===s.FromBottomToTop?n:0);return{x:N+_,y:k+D}}}var i,r,a,s,c,l;o.d(e,"a",function(){return r}),o.d(e,"b",function(){return s}),o.d(e,"c",function(){return n}),i=o("Eyy1"),function(t){t[t.Top=0]="Top",t[t.Bottom=1]="Bottom"}(r||(r={})),function(t){t[t.Left=0]="Left",t[t.Right=1]="Right"}(a||(a={})),function(t){t[t.FromTopToBottom=0]="FromTopToBottom",t[t.FromBottomToTop=1]="FromBottomToTop"}(s||(s={})),function(t){t[t.FromLeftToRight=0]="FromLeftToRight",t[t.FromRightToLeft=1]="FromRightToLeft"}(c||(c={})),l={verticalAttachEdge:r.Bottom,horizontalAttachEdge:a.Left,verticalDropDirection:s.FromTopToBottom,horizontalDropDirection:c.FromLeftToRight,verticalMargin:0,horizontalMargin:0}},KKsp:function(t,e,o){"use strict";function n(t){return i.createElement("div",{className:r.separator})}var i,r;o.d(e,"a",function(){return n}),i=o("q1tI"),r=o("NOPy")},"ML8+":function(t,e,o){"use strict";function n(t){var e,o=t.dropped,n=t.className;return i.createElement(a.a,{className:r(n,s.icon,(e={},e[s.dropped]=o,e)),icon:c})}var i,r,a,s,c;o.d(e,"a",function(){return n}),i=o("q1tI"),r=o("TSYQ"),a=o("jjrI"),s=o("cvzQ"),c=o("R4+T")},N5tr:function(t,e,o){"use strict";function n(t){return a.createElement(t.href?"a":"div",t)}function i(t){t.stopPropagation()}var r,a,s,c,l,u,p,d;o.d(e,"a",function(){return d}),r=o("mrSG"),a=o("q1tI"),s=o("TSYQ"),c=o("tWVy"), +l=o("tITk"),u=o("QpNh"),p=o("v1bN"),d=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e._handleClick=function(t){var o=e.props,n=o.dontClosePopup,i=o.isDisabled,r=o.onClick,a=o.onClickArg,s=o.trackEventObject;i||(s&&Object(l.trackEvent)(s.category,s.event,s.label),r&&r(a,t),n||Object(c.b)())},e._handleMouseUp=function(t){var o=e.props,n=o.link,i=o.trackEventObject;1===t.button&&n&&i&&Object(l.trackEvent)(i.category,i.event,i.label)},e._formatShortcut=function(t){return t&&t.split("+").join(" + ")},e}return r.__extends(e,t),e.prototype.render=function(){var t,e,o=this.props,c=o.className,l=o.shortcut,d=o.forceShowShortcuts,h=o.icon,v=o.isActive,f=o.isDisabled,m=o.isHovered,g=o.appearAsDisabled,b=o.label,O=o.link,_=o.showToolboxOnHover,w=o.target,C=o.toolbox,D=o.theme,E=void 0===D?p:D,T=Object(u.a)(this.props);return a.createElement(n,r.__assign({},T,{className:s(c,E.item,h&&E.withIcon,(t={},t[E.isActive]=v,t[E.isDisabled]=f||g,t[E.hovered]=m,t)),href:O,target:w,onClick:this._handleClick,onMouseUp:this._handleMouseUp}),void 0!==h&&a.createElement("div",{className:E.icon,dangerouslySetInnerHTML:{__html:h}}),a.createElement("div",{className:E.labelRow},a.createElement("div",{className:E.label},b)),(void 0!==l||d)&&a.createElement("div",{className:E.shortcut},this._formatShortcut(l)),void 0!==C&&a.createElement("div",{onClick:i,className:s(E.toolbox,(e={},e[E.showOnHover]=_,e))},C))},e}(a.PureComponent)},NOPy:function(t,e,o){t.exports={separator:"separator-25lkUpN--"}},QpNh:function(t,e,o){"use strict";function n(t){var e,o,n,r,a,s=Object.entries(t).filter(i),c={};for(e=0,o=s;e'},"D/i5":function(e,t,n){e.exports={inputWrapper:"inputWrapper-6bNZbTW4-",textInput:"textInput-3WRWEmm7-",error:"error-v0663AtN-",success:"success-7iP8kTY5-",textInputLeftDirection:"textInputLeftDirection-mlAXPh8V-",xsmall:"xsmall-3Ah_Or2--",small:"small-2bmxiJCE-",large:"large-1JDowW2I-",iconed:"iconed-3ZQvxTot-",inputIcon:"inputIcon-W_Bse-a1-",clearable:"clearable-2tabt_rj-",clearIcon:"clearIcon-389FR5J4-"}},K5ke:function(e,t,n){e.exports={loader:"loader-3Pj8ExOX-",item:"item-2n55_7om-","tv-button-loader":"tv-button-loader-SKpJjjYw-",black:"black-eFIQWyf4-",white:"white-2Ma0ajvT-",gray:"gray-24fvVR0S-"}},L0Sj:function(e,t,n){"use strict";function a(e){var t,n=e.className,a=e.icon,d=e.clearable,p=e.onClear,m=e.size,f=e.strictLeftDirectionInput,h=r.__rest(e,["className","icon","clearable","onClear","size","strictLeftDirectionInput"]),g=s(l.inputWrapper,((t={})[n]=Boolean(n),t[l.iconed]=Boolean(a),t[l.clearable]=d,t));return o.createElement(u,r.__assign({theme:l,className:g,leftComponent:a?o.createElement(i.a,{key:"inputIcon",icon:a,className:l.inputIcon}):void 0,rightComponent:d?o.createElement(i.a,{className:l.clearIcon,icon:c,key:"clearIcon",onClick:p}):void 0,sizeMode:m,strictLeftDirectionInput:f},h))}var r,o,s,i,c,l,u;n.d(t,"a",function(){return u}),n.d(t,"b",function(){return a}),r=n("mrSG"),o=n("q1tI"),s=n("TSYQ"),i=n("jjrI"),c=n("Ald9"),l=n("D/i5"),u=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return r.__extends(t,e),t.prototype.render=function(){var e,t,n,a,i=this.props,c=i.theme,u=i.error,d=i.success,p=i.sizeMode,m=i.leftComponent,f=i.rightComponent,h=i.grouped,g=i.columnGrouped,v=i.fontSize,I=i.reference,b=i.className,w=(i.strictLeftDirectionInput,r.__rest(i,["theme","error","success","sizeMode","leftComponent","rightComponent","grouped","columnGrouped","fontSize","reference","className","strictLeftDirectionInput"])),x={fontSize:v},y=s(c.textInput,this.props.strictLeftDirectionInput&&l.textInputLeftDirection,((e={})[c.error]=u,e[c.success]=d,e[c[p]]=Boolean(p),e)),C=s(c.inputWrapper,((t={})[b]=Boolean(b),t[c.grouped]=h,t[c.column]=g,t)),_=[],N=o.createElement("input",r.__assign({ref:I,className:y,key:"textInput",style:x},w));return m&&(n={className:s(c.leftComponent,m.props.className),key:"leftComponent"},_.push(o.cloneElement(m,n))),_.push(N),f&&(a={className:s(c.rightComponent,f.props.className),key:"rightComponent"},_.push(o.cloneElement(f,a))),o.createElement("div",{className:C},_)},t}(o.PureComponent)},ntfI:function(e,t,n){"use strict";var a,r,o,s,i,c,l +;n.d(t,"a",function(){return l}),a=n("mrSG"),r=n("q1tI"),o=n("TSYQ"),s=n("j1f4"),i=n("K5ke"),function(e){e[e.Initial=0]="Initial",e[e.Appear=1]="Appear",e[e.Active=2]="Active"}(c||(c={})),l=function(e){function t(t){var n=e.call(this,t)||this;return n._stateChangeTimeout=null,n.state={state:c.Initial},n}return a.__extends(t,e),t.prototype.render=function(){var e,t=this.props,n=t.className,a=t.color,s=void 0===a?"black":a,c=o(i.item,((e={})[i[s]]=Boolean(s),e));return r.createElement("span",{className:o(i.loader,n,this._getStateClass())},r.createElement("span",{className:c}),r.createElement("span",{className:c}),r.createElement("span",{className:c}))},t.prototype.componentDidMount=function(){var e=this;this.setState({state:c.Appear}),this._stateChangeTimeout=setTimeout(function(){e.setState({state:c.Active})},2*s.dur)},t.prototype.componentWillUnmount=function(){this._stateChangeTimeout&&(clearTimeout(this._stateChangeTimeout),this._stateChangeTimeout=null)},t.prototype._getStateClass=function(){switch(this.state.state){case c.Initial:return"loader-initial";case c.Appear:return"loader-appear";default:return""}},t}(r.PureComponent)},oj21:function(e,t,n){"use strict";function a(e){var t,n=e.active,a=void 0===n||n,l=e.children,u=e.className,d=void 0===u?"":u,p=e.disabled,m=void 0!==p&&p,f=e.grouped,h=void 0!==f&&f,g=e.growable,v=void 0!==g&&g,I=e.onClick,b=e.reference,w=e.size,x=e.theme,y=e.type,C=void 0===y?"default":y,_=e.loading,N=void 0!==_&&_,k=e.withPadding,E=void 0===k||k,S=e.title,W=void 0===S?"":S,T=e.disabledClassName,L=e.tabIndex,D=void 0===L?0:L,j=e.target,z=void 0===j?"":j,A=e.href,B=void 0===A?"":A,O=e.rounded,q=void 0!==O&&O,P=s(((t={})[d]=Boolean(d),t[i.button]=!0,t[i.active]=a&&!m,t[T||i.disabled]=m,t[i.grouped]=h,t[i.growable]=v,t[i.withPadding]=E,t[function(e){switch(e){case"xsmall":return i.xsmall;case"small":return i.small;case"large":return i.large;default:return""}}(w)]=Boolean(w),t[function(e){switch(e){case"ghost":return i.ghost;default:return""}}(x)]=Boolean(x),t[function(e){switch(e){case"default":return i.base;case"primary":return i.primary;case"secondary":return i.secondary;case"secondary-script":return i.secondaryScript;case"success":return i.success;case"warning":return i.warning;case"danger":return i.danger;case"link":return i.link;default:return""}}(C)]=!0,t[i.rounded]=q,t)),J="default"===C?"black":"white",M={disabled:m,title:W,target:z,href:B};return o.createElement("button",r.__assign({className:P,tabIndex:D,onClick:N?void 0:I,ref:b},M),o.createElement("span",{className:i.hiddenText},l),N?o.createElement("span",{className:i.loader},o.createElement(c.a,{color:J})):o.createElement("span",{className:i.text},l))}var r,o,s,i,c;n.d(t,"a",function(){return a}),r=n("mrSG"),o=n("q1tI"),s=n("TSYQ"),i=n("qsaw"),c=n("ntfI")},qsaw:function(e,t,n){e.exports={ghost:"ghost-3yO24wIn-",primary:"primary-1rSzOFdX-",success:"success-1qQ3_tEI-",danger:"danger-jKTO4wDd-",warning:"warning-2uDfz7Zc-",secondary:"secondary-3ll81brZ-",button:"button-2O-nMUcz-",withPadding:"withPadding-_5CJoO5q-", +hiddenText:"hiddenText-3qcN5Wif-",text:"text-2KOWx3rB-",loader:"loader-1CC-1F8J-",base:"base-2d4XFcnI-",secondaryScript:"secondaryScript-2iIeFIWW-",link:"link-2sR0CShp-",xsmall:"xsmall-1aiWe3Hs-",rounded:"rounded-3qEdyiAz-",small:"small-2-nQtW8O-",large:"large-33HYhX8D-",grouped:"grouped-1WsMjajI-",growable:"growable-F6tv8R_j-",active:"active-2UxWxOgk-",disabled:"disabled-3u0ULovv-"}}}]); \ No newline at end of file diff --git a/public/charting_library/static/bundles/27.54aad15135c7ea57b345.js b/public/charting_library/static/bundles/27.54aad15135c7ea57b345.js new file mode 100644 index 0000000..a7fb70d --- /dev/null +++ b/public/charting_library/static/bundles/27.54aad15135c7ea57b345.js @@ -0,0 +1,5 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[27],{"/NcV":function(t,e){t.exports=''},FxnJ:function(t,e,i){},MjtL:function(t,e){t.exports=''},NhD9:function(t,e,i){"use strict";(function(t){var s,a,o,r,n;Object.defineProperty(e,"__esModule",{value:!0}),e.createTabbedDialog=function(e){var i,l,d,c,h,p,u,_,f,g,v;if(e=$.extend({},n,e),i=$(t.render(o,{tabs:e.tabs,customControls:e.customControls,customControlsAddClass:e.customControlsContainerAddClass},{additionalHeaderContent:e.additionalHeaderContent})),d=l=$(r),e.contentAddClass&&l.addClass(e.contentAddClass),!1!==e.withScroll&&(l=$('
').append(d.addClass("tv-dialog__scroll-wrap-inner"))),c=$('
').append(i).append(l),e.customControls&&i.find(".js-custom-controls").append(e.customControls),!0!==e.doNotCreatePages)for(h=0;h').append(e.tabs[h].page));return p=e.tabStateSaveKey,u=e.activeTab,_=e.tabsScrollBoxAddClass,f=e.tabAddClass,delete e.tabs,delete e.activeTab,delete e.customControls,delete e.tabStateSaveKey,delete e.customControlsContainerAddClass,delete e.tabsScrollBoxAddClass,delete e.tabAddClass,e.closeButtonAddClass="tv-tabbed-dialog__close",e.contentWrapTemplate=c,g=(0,a.createDialog)(e),v=new s.Tabs(i.find(".tv-tabs").get(0),d.get(0),{addLeftArrowsClass:"tv-tabbed-dialog__tabs-arrow-left",addRightArrowsClass:"tv-tabbed-dialog__tabs-arrow-right",addScrollBoxClass:_,tabClass:f,saveTab:p,activeTab:u}),g.on("afterOpen",function(){v.setActivePage(v.index(),!0,!0)}),{dialog:g,tabs:v}},s=i("pIOw"),a=i("YDhE"),i("FxnJ"),o='
{{#tabs}}
{{name}}
{{/tabs}}
{{#customControls}}
{{/customControls}}
{{>additionalHeaderContent}}',r='
',n={tabs:[]}}).call(this,i("OiQe"))},pIOw:function(t,e,i){"use strict";function s(){return new Promise(function(t){i.e("lazy-velocity").then(function(e){i("WJ2Z"),t()}.bind(null,i)).catch(i.oe)})}var a,o,r,n,l,d,c,h,p,u,_,f,g;i.r(e),a=i("Eyy1"),i("P5fv"),$.fn.velocity=function(){var t,e=this,i=[];for(t=0;t'+f.leftArrow+"
"),this._elArrowRight=this._findOrCreateElement(this._options.rArrowClass||"",this._elTabs,"append",'
'+f.rightArrow+"
"),this._addClass(this._elArrowLeft,this._options.addLeftArrowsClass),this._addClass(this._elArrowRight,this._options.addRightArrowsClass)),this._addClass(this._elScrollBox,this._options.addScrollBoxClass),this._addClass(this._elSlider,this._options.addSliderClass),this._addClass(this._elTabs,this._options.tabsContainerClass),this._addClass(this.getTabsArray(),this._options.tabClass),this._addClass(this._elTabs,this._options.loadedClass),this.checkScrollArrows(!0),this._initActivePage(),this._bindEvents()}return t.prototype.getTabsArray=function(){var t,e,i,s=this._elScrollBox.children;if(!this._options.sliderClass)return Array.prototype.slice.call(s);for(t=[],e=0;e=n?e(this._elArrowLeft):(a<=n||this._elScrollWrap.scrollWidth<=r)&&i(this._elArrowLeft,u.Left)),this._elArrowRight&&(l-a>1?e(this._elArrowRight):(a>=l||this._elScrollWrap.scrollWidth<=r)&&i(this._elArrowRight,u.Right))},t.prototype.index=function(){var t=this.getElActiveTab();return t?this.getTabsArray().indexOf(t):-1},t.prototype.getElActiveTab=function(){return this._getActiveElement(this.getTabsArray(),this._options.activeTabClass||"",this._options.inactiveTabClass)},t.prototype.getElActivePage=function(){return this._getActiveElement(this.getPagesArray(),this._options.activePageClass||"",this._options.inactivePageClass)},t.prototype.setActivePage=function(t,e,i){function s(e,i,s){e.forEach(function(e,a){var o=t===a,r=e.classList;i&&r.toggle(i,o),s&&r.toggle(s,!o)})}if(-1!==t&&(t!==this.index()||i)){var a=this.index();s(this.getTabsArray(),this._options.activeTabClass,this._options.inactiveTabClass),s(this.getPagesArray(),this._options.activePageClass,this._options.inactivePageClass),this._options.noSlider||this.updateSlider(a,t,e),this._options.saveTab&&h.setValue(this._options.saveTab,t),this.tabChanged.fire(t)}},t.prototype.updateSlider=function(t,e,i){var a,r,n,l,d,c,h=this;this._options.noSlider||0===(a=this.getTabsArray()[e]).clientWidth||0===a.clientHeight||"none"===window.getComputedStyle(a).getPropertyValue("display")||(r=window.getComputedStyle(a),n=a.offsetLeft+parseInt(r.getPropertyValue("padding-left")),l=this._getElWidth(a),(d=a.querySelector(".js-tabs__slider-pos"))&&(c=window.getComputedStyle(d),n+=parseInt(c.getPropertyValue("padding-left"))+d.offsetLeft,l-=l-this._getElWidth(d)),(i=i||-1===t||document.all&&!window.atob)?(this._elSlider.style.left=n+"px",this._elSlider.style.width=l+"px"):(this._animating=!0,s().then(function(){$.Velocity.animate(h._elSlider,{left:n},{duration:o.dur,easing:"easeOutCubic",queue:!1}),$.Velocity.animate(h._elSlider,{width:l},{complete:function(){h._animating=!1},duration:o.dur,easing:"easeOutCubic",queue:!1})})))},t.prototype.onTabClick=function(t){var e=t.currentTarget||t.target,i=this.getTabsArray().indexOf(e);-1===i||this._isTabDisabled(e)||this.setActivePage(i),document.activeElement.blur(),t.preventDefault()},t.prototype.resizeSlider=function(){var t,e;this._options.noSlider||(t=this._elTabs.offsetWidth)!==this._prevWidth&&(this._prevWidth=t,e=this.index(),this.updateSlider(e,e,!0))},t.prototype.count=function(){return this.getTabsArray().length},t.prototype.add=function(t,e){this._elScrollBox.appendChild(t),this._elPages&&e&&this._elPages.appendChild(e),this._bindTabEvents(t),this.checkScrollArrows(!0)},t.prototype.remove=function(t){function e(t){t.parentElement&&t.parentElement.removeChild(t)}var i,s,a=this.tabAt(t);a&&(this._unbindTabEvents(a),e(a)),(i=this.pageAt(t))&&e(i),s=t-1>=0?t-1:0,this.setActivePage(s),this.checkScrollArrows(!0)},t.prototype.indexOfTab=function(t){return this.getTabsArray().indexOf(t)},t.prototype.indexOfPage=function(t){return this.getPagesArray().indexOf(t)}, +t.prototype.pageAt=function(t){return this.getPagesArray()[t]||null},t.prototype.tabAt=function(t){return this.getTabsArray()[t]||null},t.prototype.deselect=function(t){var e,i=this.getElActiveTab();return this._options.activeTabClass&&i&&i.classList.remove(this._options.activeTabClass),e=this.getElActivePage(),this._options.activePageClass&&e&&e.classList.remove(this._options.activePageClass),this._elSlider&&(this._elSlider.style.left="",this._elSlider.style.width=""),this},t.prototype.stop=function(){this._unbindEvents({})},t.prototype._getElWidth=function(t){if(0===t.offsetWidth)return 0;var e=window.getComputedStyle(t);return t.offsetWidth-parseFloat(e.getPropertyValue("padding-left"))-parseFloat(e.getPropertyValue("padding-right"))-parseFloat(e.getPropertyValue("border-left-width"))-parseFloat(e.getPropertyValue("border-right-width"))},t.prototype._findOrCreateElement=function(t,e,i,s){var a,o,r,n=e.querySelector("."+t);if(!n)if((a=document.createElement("div")).innerHTML=s||'
',n=a.firstElementChild,"append"===i)e.appendChild(n);else{if("wrapInner"!==i)throw new Error("Unknown insertMethod");for(o=Array.prototype.slice.call(e.childNodes),r=0;rn?r=!0:a=e}}),s().then(function(){$.Velocity.animate(e._elScrollWrap,"scroll",{axis:"x",container:$(e._elScrollWrap),duration:o.dur/2,easing:"easeInOutCubic",offset:Math.floor(a-n-e._getElWidth(e._elArrowLeft)),queue:!1})})},target:this._elArrowLeft}),this._elArrowRight&&this._bindOneEvent({eventName:"click",listener:function(t){var i=e.getTabsArray(),r=0,n=p.IS_RTL?0:e._elScrollWrap.scrollLeft+e._getElWidth(e._elScrollWrap);p.IS_RTL&&i.reverse(),i.forEach(function(t){if(0===r){var e=t.offsetLeft+t.offsetWidth;e>n&&(r=e)}}),s().then(function(){$.Velocity.animate(e._elScrollWrap,"scroll",{axis:"x",container:$(e._elScrollWrap),duration:o.dur/2,easing:"easeInOutCubic",offset:Math.ceil(r-n+e._getElWidth(Object(a.ensureDefined)(e._elArrowRight))),queue:!1})})},target:this._elArrowRight}),(t=Array.prototype.slice.call(this._elTabs.querySelectorAll(".js-tabs__slider-hover")||[])).length&&t.forEach(function(t){return e._bindOneEvent({eventName:"mouseenter", +listener:function(t){if(!e._animating){var i=t.currentTarget;i&&e._options.activeTabClass&&i.classList&&i.classList.contains(e._options.activeTabClass)&&e._hoverSlider(i)}},target:t})}),this._bindOneEvent({eventName:"resize",listener:function(){e.checkScrollArrows(!0),e._options.noSlider||e.resizeSlider()},target:window})},t.prototype._bindTabEvents=function(t){var e=this;this._bindOneEvent({eventName:"click",listener:function(t){"function"==typeof e._options.onTabClick?e._options.onTabClick(t):e.onTabClick(t)},target:t})},t.prototype._unbindTabEvents=function(t){this._unbindEvents({target:t})},t.prototype._bindOneEvent=function(t){t.target.addEventListener(t.eventName,t.listener),this._bindings.push(t)},t.prototype._unbindEvents=function(t){var e=function(e){return!(void 0!==e.eventName&&e.eventName!==t.eventName||void 0!==e.target&&e.target!==t.target||void 0!==e.listener&&e.listener!==t.listener)};this._bindings.filter(e).forEach(function(t){return t.target.removeEventListener(t.eventName,t.listener)}),this._bindings=this._bindings.filter(function(t){return!e(t)})},t.prototype._getActiveElement=function(t,e,i){return t.filter(function(t,s,a){return e?t.classList.contains(e):!!i&&!t.classList.contains(i)})[0]||null},t.prototype._isTabDisabled=function(t){return t.classList.contains("i-disabled")||this._options.tabDisabledClass&&t.classList.contains(this._options.tabDisabledClass)||t.hasAttribute("disabled")},t.prototype._hoverSlider=function(t){var e,i=this,a=this._getElWidth(t),r=window.getComputedStyle(t),n=t.offsetLeft+parseInt(r.getPropertyValue("padding-left"))+parseInt(r.getPropertyValue("margin-left")),l={duration:o.dur/4,easing:"easeOutCubic",queue:!1};s().then(function(){$.Velocity.animate(i._elSlider,{left:n},l),$.Velocity.animate(i._elSlider,{width:a},l)}),e=function(){i.getElActiveTab()===t&&i._unhoverSlider(t),t.removeEventListener("mousleave",e)},t.addEventListener("mouseleave",e)},t.prototype._unhoverSlider=function(t){var e=this,i=window.getComputedStyle(t),a=t.querySelector(".js-tabs__slider-pos"),r=window.getComputedStyle(a),n=t.offsetLeft+parseInt(i.getPropertyValue("padding-left"))+parseInt(i.getPropertyValue("margin-left"))+parseInt(r.getPropertyValue("padding-left"))+a.offsetLeft,l=this._getElWidth(t),d=l-(l-this._getElWidth(a)),c={duration:o.dur/2,easing:"easeInSine",queue:!1};s().then(function(){$.Velocity.animate(e._elSlider,{left:n},c),$.Velocity.animate(e._elSlider,{width:d},c)})},t}()}}]); \ No newline at end of file diff --git a/public/charting_library/static/bundles/28.3f2589cd73664ea3f3e3.js b/public/charting_library/static/bundles/28.3f2589cd73664ea3f3e3.js new file mode 100644 index 0000000..68782de --- /dev/null +++ b/public/charting_library/static/bundles/28.3f2589cd73664ea3f3e3.js @@ -0,0 +1,5 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[28],{"75D8":function(t,e,n){"use strict";function o(t){return{x:t.pageX,y:t.pageY}}function r(t){return{x:t.touches[0].pageX,y:t.touches[0].pageY}}function s(t,e,n,o){var r=function(t,e,n,o){return 180*(Math.atan2(o-e,n-t)+Math.PI/2)/Math.PI}(t,e,n,o);return r<0?360+r:r}function i(t,e,n){var o,r,s;for(void 0===n&&(n=1),o=Math.max(Math.ceil((e-t)/n),0),r=Array(o),s=0;s0&&n.props.selected<=12},n}return l.__extends(e,t),e.prototype.render=function(){var t=this,e=this.props,n=e.center,o=e.radius,r=e.spacing,s=e.selected;return d.createElement("div",null,d.createElement(v,{radius:o,spacing:r,numbers:y,activeNumber:s,format:a,onMouseDown:this._onMouseDown,onTouchStart:this._onTouchStart}),this._renderInnerFace(o*w),d.createElement(g,{ref:function(e){return t._hand=e},length:o-(this.state.isInner?o*w:r)-this.props.numberRadius,angle:s*M,step:M,center:n,onMove:this._onHandMove,onMoveEnd:this._onHandMoveEnd}))},e.prototype._renderInnerFace=function(t){return d.createElement(v,{radius:this.props.radius,spacing:t,numbers:b,activeNumber:this.props.selected,onMouseDown:this._onMouseDown,onTouchStart:this._onTouchStart,isInner:!0})},e.prototype._valueFromDegrees=function(t){return this.state.isInner?b[t/M]:y[t/M]},e}(d.PureComponent),S=i(0,60,5),T=6,C=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e._onMouseDown=function(t){e._hand.mouseStart(t)},e._onTouchStart=function(t){e._hand.touchStart(t)},e._onHandMove=function(t){e.props.onChange(t/T)},e._onHandMoveEnd=function(t){e.props.onSelect&&e.props.onSelect(t)},e}return l.__extends(e,t),e.prototype.render=function(){var t=this;return d.createElement("div",null,d.createElement(v,{radius:this.props.radius,spacing:this.props.spacing,numbers:S,activeNumber:this.props.selected,format:a,onMouseDown:this._onMouseDown,onTouchStart:this._onTouchStart}),d.createElement(g,{ref:function(e){return t._hand=e},length:this.props.radius-this.props.spacing-this.props.numberRadius,angle:this.props.selected*T,step:T,center:this.props.center,onMove:this._onHandMove,onMoveEnd:this._onHandMoveEnd}))},e}(d.PureComponent);n.d(e,"a",function(){return h}),c=.18,p=13,function(t){t[t.Hours=0]="Hours",t[t.Minutes=1]="Minutes"}(u||(u={})),h=function(t){function e(e){var n=t.call(this,e)||this;return n._clockFace=null,n._raf=null,n._recalculateTimeout=null,n._calculateShapeBinded=n._calculateShape.bind(n),n._onChangeHours=function(t){n.state.time.hours()!==t&&n._onChange(n.state.time.clone().hours(t))}, +n._onChangeMinutes=function(t){n.state.time.minutes()!==t&&n._onChange(n.state.time.clone().minutes(t))},n._onSelectHours=function(){n._displayMinutes()},n._onSelectMinutes=function(t){t&&t.target instanceof Node&&n._clockFace&&n._clockFace.contains(t.target)&&t.preventDefault(),n.props.onSelect&&n.props.onSelect(n.state.time.clone())},n._displayHours=function(){n.setState({faceType:u.Hours})},n._displayMinutes=function(){n.setState({faceType:u.Minutes})},n._setClockFace=function(t){n._clockFace=t},n.state={center:{x:0,y:0},radius:0,time:n.props.selectedTime,faceType:u.Hours},n}return l.__extends(e,t),e.prototype.render=function(){var t,e;return d.createElement("div",{className:_(f.clock,this.props.className)},d.createElement("div",{className:f.header},d.createElement("span",{className:_(f.number,(t={},t[f.active]=this.state.faceType===u.Hours,t)),onClick:this._displayHours},this.state.time.format("HH")),d.createElement("span",null,":"),d.createElement("span",{className:_(f.number,(e={},e[f.active]=this.state.faceType===u.Minutes,e)),onClick:this._displayMinutes},this.state.time.format("mm"))),d.createElement("div",{className:f.body},d.createElement("div",{className:f.clockFace,ref:this._setClockFace},this.state.faceType===u.Hours?this._renderHours():null,this.state.faceType===u.Minutes?this._renderMinutes():null,d.createElement("span",{className:f.centerDot}))))},e.prototype.componentDidMount=function(){this._calculateShape(),this._recalculateTimeout=setTimeout(this._calculateShapeBinded,1),window.addEventListener("resize",this._calculateShapeBinded),window.addEventListener("scroll",this._calculateShapeBinded,!0)},e.prototype.componentWillUnmount=function(){this._clearTimeout(),window.removeEventListener("resize",this._calculateShapeBinded),window.removeEventListener("scroll",this._calculateShapeBinded,!0),null!==this._raf&&(cancelAnimationFrame(this._raf),this._raf=null)},e.prototype._clearTimeout=function(){null!==this._recalculateTimeout&&(clearTimeout(this._recalculateTimeout),this._recalculateTimeout=null)},e.prototype._renderHours=function(){return d.createElement(E,{center:this.state.center,radius:this.state.radius,spacing:this.state.radius*c,selected:this.state.time.hours(),numberRadius:p,onChange:this._onChangeHours,onSelect:this._onSelectHours})},e.prototype._renderMinutes=function(){return d.createElement(C,{center:this.state.center,radius:this.state.radius,spacing:this.state.radius*c,selected:this.state.time.minutes(),numberRadius:p,onChange:this._onChangeMinutes,onSelect:this._onSelectMinutes})},e.prototype._onChange=function(t){this.setState({time:t}),this.props.onChange&&this.props.onChange(t.clone())},e.prototype._calculateShape=function(){var t=this;null===this._raf&&(this._raf=requestAnimationFrame(function(){var e=Object(m.ensureNotNull)(t._clockFace).getBoundingClientRect(),n=e.left,o=e.top,r=e.width;t.setState({center:{x:n+r/2,y:o+r/2},radius:r/2}),t._raf=null}))},e}(d.PureComponent)},"Db/h":function(t,e,n){t.exports={errors:"errors-C3KBJakt-",show:"show-2G4PY7Uu-",error:"error-3G4k6KUC-"}}, +Oehf:function(t,e,n){t.exports={clock:"clock-3pqBsiNm-",header:"header-pTWMGSpm-",number:"number-9PC9lvyt-",active:"active-1sonmMLV-",body:"body-2Q-g3GDd-",clockFace:"clockFace-eHYbqh-S-",face:"face-2iCoBAOV-",inner:"inner-1mVlhYbe-",hand:"hand-2ZG8pJQb-",knob:"knob-31dEppHa-",centerDot:"centerDot-210Fo0oV-"}},kSQs:function(t,e,n){"use strict";var o,r,s,i,a=n("mrSG"),c=n("q1tI"),p=n("TSYQ"),u=n("uqKQ"),h=n("i8i4"),l=n("Db/h"),d=n("Ialn");n.d(e,"b",function(){return o}),n.d(e,"a",function(){return r}),o=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return a.__extends(e,t),e.prototype.render=function(){var t,e,n,o=this.props,r=o.children,s=void 0===r?[]:r,i=o.show,u=void 0!==i&&i,h=o.customErrorClass,m=p(l.errors,((t={})[l.show]=u,t),h),f=s.map(function(t,e){return c.createElement("div",{className:l.error,key:e},t)}),_={position:"absolute",top:this.props.top,width:this.props.width,height:this.props.height,bottom:void 0!==this.props.bottom?this.props.bottom:"100%",right:void 0!==this.props.right?this.props.right:0,left:this.props.left,zIndex:this.props.zIndex};return d.IS_RTL&&(e=_.left,n=_.right,_=a.__assign({},_,{left:n,right:e})),c.createElement("div",{style:_,className:m},f)},e}(c.PureComponent),r=Object(u.a)((s=o,(i=function(t){function e(e){var n=t.call(this,e)||this;return n._getComponentInstance=function(t){n._instance=t},n._throttleCalcProps=function(){requestAnimationFrame(function(){return n._calcProps(n.props)})},n.state={bottom:n.props.bottom,left:n.props.left,right:n.props.right,top:"number"==typeof n.props.top?n.props.top:-1e4,width:n.props.inheritWidthFromTarget?n.props.target&&n.props.target.getBoundingClientRect().width:n.props.width},n}return a.__extends(e,t),e.prototype.componentDidMount=function(){this._instanceElem=h.findDOMNode(this._instance),this.props.attachOnce||this._subscribe(),this._calcProps(this.props)},e.prototype.componentWillReceiveProps=function(t){if(t.top!==this.props.top&&this.setState({top:t.top}),t.left!==this.props.left&&this.setState({left:t.left}),t.width!==this.props.width&&this.setState({width:t.width}),t.attachmentCommand!==this.props.attachmentCommand&&t.attachmentCommand)switch(t.attachmentCommand.name){case"update":this._calcProps(t)}},e.prototype.componentDidUpdate=function(t){t.children!==this.props.children&&this._calcProps(this.props)},e.prototype.render=function(){return c.createElement(s,a.__assign({},this.props,{ref:this._getComponentInstance,top:this.state.top,bottom:void 0!==this.state.bottom?this.state.bottom:"auto",right:void 0!==this.state.right?this.state.right:"auto",left:this.state.left,width:this.state.width}),this.props.children)},e.prototype.componentWillUnmount=function(){this._unsubsribe()},e.prototype._calcProps=function(t){var e,n,o,r,s;if(t.target&&t.attachment&&t.targetAttachment){switch(e=this._calcTargetProps(t.target,t.attachment,t.targetAttachment),o=(n=this.props).width,s={width:void 0===(r=n.inheritWidthFromTarget)||r?e.width:o},t.attachment.vertical){case"bottom":case"middle":s.top=e.y;break;default: +s[t.attachment.vertical]=e.y}switch(t.attachment.horizontal){case"right":case"center":s.left=e.x;break;default:s[t.attachment.horizontal]=e.x}this.setState(s)}},e.prototype._calcTargetProps=function(t,e,n){var o=t.getBoundingClientRect(),r=this._instanceElem.getBoundingClientRect(),s="parent"===this.props.root?this._getCoordsRelToParentEl(t,o):this._getCoordsRelToDocument(o),i=this._getDimensions(r),a=this._getDimensions(o),c=a.width,p=0,u=0;switch(e.vertical){case"top":u=s[n.vertical];break;case"bottom":u=s[n.vertical]-i.height;break;case"middle":u=s[n.vertical]-i.height/2}switch(e.horizontal){case"left":p=s[n.horizontal];break;case"right":p=s[n.horizontal]-i.width;break;case"center":p=s[n.horizontal]-i.width/2}return"number"==typeof this.props.attachmentOffsetY&&(u+=this.props.attachmentOffsetY),"number"==typeof this.props.attachmentOffsetX&&(p+=this.props.attachmentOffsetX),{x:p,y:u,width:c}},e.prototype._getCoordsRelToDocument=function(t){var e=pageYOffset,n=pageXOffset,o=t.top+e,r=t.bottom+e,s=t.left+n,i=t.right+n,a=(o+t.height)/2,c=s+t.width/2;return{top:o,bottom:r,left:s,right:i,middle:a,center:c}},e.prototype._getCoordsRelToParentEl=function(t,e){var n=t.offsetParent,o=n.scrollTop,r=n.scrollLeft,s=t.offsetTop+o,i=t.offsetLeft+r,a=e.width+i,c=e.height+s,p=(s+e.height)/2,u=(i+e.width)/2;return{top:s,bottom:c,left:i,right:a,middle:p,center:u}},e.prototype._getDimensions=function(t){return{height:t.height,width:t.width}},e.prototype._subscribe=function(){"document"===this.props.root&&(window.addEventListener("scroll",this._throttleCalcProps,!0),window.addEventListener("resize",this._throttleCalcProps))},e.prototype._unsubsribe=function(){window.removeEventListener("scroll",this._throttleCalcProps,!0),window.removeEventListener("resize",this._throttleCalcProps)},e}(c.PureComponent)).displayName="Attachable Component",i))},nPPD:function(t,e,n){"use strict";function o(t,e,n){var o,r,s,i,a;for(void 0===n&&(n={}),o=Object.assign({},e),r=0,s=Object.keys(e);r");i.appendTo(t),i.css("padding-left","0px"),i.css("padding-right","0px"),(o=$("")).attr("type","text"),o.addClass("ticker"),o.css("width","40px"),o.attr("id",e),o.appendTo(i)},s=function(t,e,o){var i,n=$("");n.css("padding-left",o),n.css("padding-right",o),n.appendTo(t),(i=$("
")).appendTo(n),i.append(e),i.css("font-size","150%")},(r=$("")).appendTo(t),(a=$("")).appendTo(r),l=["start_hours","start_minutes","end_hours","end_minutes"],n.call(this,a,l[0]),s.call(this,a,":",0),n.call(this,a,l[1]),s.call(this,a,"-",4),n.call(this,a,l[2]),s.call(this,a,":",0),n.call(this,a,l[3]),d=!1,this.bindControl(new p(a,l,e,d,this.model(),i))):w.logError("Session editor adding FAILED: wrong input type.")},i.prototype.prepareControl=function(e,o,i){var n,s,r,a,p,l,d,u,h,c,f,y,m,v,_,C,x,T,S,k,I,O=this,P=null,E=null,L=null;if("resolution"===e.type)P=$('");else if("symbol"===e.type)P=$(''),g().bindToInput(P,{onPopupOpen:function(t){this._$symbolSearchPopup=t,this._symbolSearchZindex&&t.css("z-index",this._symbolSearchZindex)}.bind(this),onPopupClose:function(){this._$symbolSearchPopup=null}.bind(this),callback:function(t){e.value=t}}),o.attr("colspan",5);else if("session"===e.type)this._addSessionEditor(o,this._property.inputs[e.id],e,i);else if("source"===e.type){for(n={},s={open:window.t("open"),high:window.t("high"),low:window.t("low"),close:window.t("close"),hl2:window.t("hl2"),hlc3:window.t("hlc3"),ohlc4:window.t("ohlc4")},r=Object.keys(s),a=0;a").attr("value",S).text(k).appendTo(P);o.addClass("js-value-cell")}else e.options?(P=$(""),"bool"===e.type?P.attr("type","checkbox"):P.attr("type","text"));return P&&(P.appendTo(o),P.is(":checkbox")||"symbol"===e.type||P.css("width","100px")),{valueEditor:P,valueSetter:E,propertyChangedHook:L}},i.prototype._symbolInfoBySymbolProperty=function(t){return this._study.resolvedSymbolInfoBySymbol(t.value())},i.prototype._sortInputs=function(t){return t},i.prototype.prepareLayoutImpl=function(t,e){function o(t){return(new _).format(t)}var i,n,p,l,b,w,g,C,x,T,S,k,I,O,P,E,L,B,V=this._sortInputs(t.inputs);for(i=0;i")).appendTo(e),(g=$("
")).appendTo(w),g.addClass("propertypage-name-label"),g.text(window.t(l,{context:"input"})),(C=$("")).appendTo(w),x=this.prepareControl(n,C,b),T=x.valueEditor,S=x.valueSetter,k=x.propertyChangedHook,n.options?this.bindControl(new y(T,this._property.inputs[p],null,!0,this.model(),b,S,k)):"bar_time"===n.type?(I=10,this.bindControl(new a(T,this._property.inputs[p],!0,this.model(),b,this.model().mainSeries(),I)), +T.addClass("ticker")):"integer"===n.type?(O=[h(n.defval)],(0===n.min||n.min)&&O.push(d(n.min)),(0===n.max||n.max)&&O.push(u(n.max)),this.bindControl(new v(T,this._property.inputs[p],O,!1,this.model(),b)),T.addClass("ticker"),isFinite(n.step)&&n.step>0&&T.attr("data-step",n.step)):"float"===n.type?(O=[c(n.defval)],(0===n.min||n.min)&&O.push(d(n.min)),(0===n.max||n.max)&&O.push(u(n.max)),(P=new v(T,this._property.inputs[p],O,!1,this.model(),b)).addFormatter(o),this.bindControl(P),T.addClass("ticker"),isFinite(n.step)&&n.step>0&&T.attr("data-step",n.step)):"text"===n.type?this.bindControl(new v(T,this._property.inputs[p],null,!1,this.model(),b)):"bool"===n.type?this.bindControl(new m(T,this._property.inputs[p],!0,this.model(),b)):"resolution"===n.type?this.bindControl(new y(T,this._property.inputs[p],s,!0,this.model(),"Change Interval")):"symbol"===n.type&&(E=this._symbolInfoBySymbolProperty.bind(this,this._property.inputs[p]),L=f(E,this._property.inputs[p]),B=new r(T,this._property.inputs[p],!0,this.model(),"Change Symbol",L,this._study.symbolsResolved()),this.bindControl(B))));this._property.offset&&(l=this._property.offset.title?this._property.offset.title.value():window.t("Offset"),T=this.addOffsetEditorRow(e,l),(O=[h(this._property.offset.val)]).push(d(this._property.offset.min)),O.push(u(this._property.offset.max)),this.bindControl(new v(T,this._property.offset.val,O,!1,this.model(),"Undo "+l))),this._property.offsets&&$.each(t.plots,function(t,o){var i,n,s;this._property.offsets[o.id]&&(void 0!==(i=this._property.offsets[o.id]).isHidden&&i.isHidden.value()||(n=i.title.value(),T=this.addOffsetEditorRow(e,n),(s=[h(i.val)]).push(d(i.min)),s.push(u(i.max)),this.bindControl(new v(T,i.val,s,!1,this.model(),"Undo "+n))))}.bind(this))},i.prototype.prepareLayout=function(){this._table=$(""),this._table.addClass("property-page"),this._table.attr("cellspacing","0"),this._table.attr("cellpadding","2");var t=this._study.metaInfo();this.prepareLayoutImpl(t,this._table),this.loadData()},i.prototype.symbolSearchPopup=function(){return this._$symbolSearchPopup},i.prototype.widget=function(){return this._table},e.StudyInputsPropertyPage=i}).call(this,o("Kxc7"))},PVgW:function(t,e,o){"use strict";function i(t){return t=Math.abs(t),!Object(l.isInteger)(t)&&t>1&&(t=parseFloat(t.toString().replace(/^.+\./,"0."))),0').appendTo(a.parent()),o=$('
').html(d).appendTo(e),i=$('
').html(d).appendTo(e),e.on("mousedown",function(t){t.preventDefault(),a.focus()}),o.click(function(){a.is(":disabled")||s(a)}),i.click(function(){a.is(":disabled")||r(a)}),a.keydown(function(t){a.is(":disabled")||(38===t.keyCode?o.addClass("i-active"):40===t.keyCode&&i.addClass("i-active"))}),a.keyup(function(t){a.is(":disabled")||(38===t.keyCode?(s(a),o.removeClass("i-active")):40===t.keyCode&&(r(a),i.removeClass("i-active")))}),a.mousewheel(function(t){t.deltaY*(t.deltaFactor/100)>0?o.click():i.click()}))})}},"R4+T":function(t,e){t.exports=''},"y1L/":function(t,e,o){}}]); \ No newline at end of file diff --git a/public/charting_library/static/bundles/3.f41fdd1a128935b63e5b.js b/public/charting_library/static/bundles/3.f41fdd1a128935b63e5b.js new file mode 100644 index 0000000..40b5ed0 --- /dev/null +++ b/public/charting_library/static/bundles/3.f41fdd1a128935b63e5b.js @@ -0,0 +1,3 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[3],{"+EG+":function(e,t,n){"use strict";var o,i,r,s;n.d(t,"a",function(){return r}),n.d(t,"b",function(){return s}),o=n("mrSG"),i=n("q1tI"),r=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return o.__extends(t,e),t.prototype.shouldComponentUpdate=function(){return!1},t.prototype.render=function(){return i.createElement("div",{style:{position:"fixed",zIndex:150,left:0,top:0},ref:this.props.reference})},t}(i.Component),s=i.createContext(null)},"6uNr":function(e,t,n){e.exports={menuWrap:"menuWrap-1gEtmoET-",isMeasuring:"isMeasuring-FZ0EJCM2-",scrollWrap:"scrollWrap-1B5MfTJt-",momentumBased:"momentumBased-1Jq4gQt2-",menuBox:"menuBox-20sJGjtG-",isHidden:"isHidden-2vLQpR1t-"}},DTHj:function(e,t,n){"use strict";var o,i,r,s,a,u,d,l,c,p,h;n.d(t,"a",function(){return h}),o=n("mrSG"),i=n("q1tI"),r=n("TSYQ"),s=n("Eyy1"),a=n("Hr11"),u=n("XAms"),d=n("+EG+"),l=n("tWVy"),c=n("jAh7"),p=n("6uNr"),h=function(e){function t(t){var n=e.call(this,t)||this;return n._containerRef=null,n._scrollWrapRef=null,n._raf=null,n._manager=new c.OverlapManager,n._handleContainerRef=function(e){return n._containerRef=e},n._handleScrollWrapRef=function(e){return n._scrollWrapRef=e},n._handleMeasure=function(){var e,t,o,i,r,u,d,l,c,p,h,m,f,_,v,g;n.state.isMeasureValid||(e=n.props.position,o=(t=Object(s.ensureNotNull)(n._containerRef)).getBoundingClientRect(),i=document.documentElement.clientHeight,r=document.documentElement.clientWidth,u=i-10,(d=o.height>u)&&(Object(s.ensureNotNull)(n._scrollWrapRef).style.overflowY="scroll",o=t.getBoundingClientRect()),l=o.width,c=o.height,p="function"==typeof e?e(l,c):e,h=5,m=r-l-5,f=Object(a.clamp)(p.x,h,Math.max(h,m)),_=5,v=i-(p.overrideHeight||c)-5,g=Object(a.clamp)(p.y,_,Math.max(_,v)),n.setState({appearingMenuHeight:p.overrideHeight||(d?u:void 0),appearingMenuWidth:p.overrideWidth,appearingPosition:{x:f,y:g},isMeasureValid:!0},n._scrollToFocusedElement))},n._scrollToFocusedElement=function(){var e=document.activeElement,t=Object(s.ensureNotNull)(n._containerRef);null!==e&&t.contains(e)&&e.scrollIntoView()},n._resize=function(){null===n._raf&&(n._raf=requestAnimationFrame(function(){n.setState({appearingMenuHeight:void 0,appearingMenuWidth:void 0,appearingPosition:void 0,isMeasureValid:void 0}),n._raf=null}))},n._handleGlobalClose=function(){n.props.onClose()},n._handleSlot=function(e){n._manager.setContainer(e)},n.state={},n}return o.__extends(t,e),t.prototype.componentWillReceiveProps=function(e){this.props.isOpened&&!e.isOpened&&this.setState({isMeasureValid:void 0})},t.prototype.componentDidMount=function(){this._handleMeasure();var e=this.props.customCloseDelegate;(void 0===e?l.a:e).subscribe(this,this._handleGlobalClose),window.addEventListener("resize",this._resize)},t.prototype.componentDidUpdate=function(){this._handleMeasure()},t.prototype.componentWillUnmount=function(){var e=this.props.customCloseDelegate;(void 0===e?l.a:e).unsubscribe(this,this._handleGlobalClose),window.removeEventListener("resize",this._resize), +null!==this._raf&&(cancelAnimationFrame(this._raf),this._raf=null)},t.prototype.render=function(){var e=this.props,t=e.children,n=e.minWidth,o=e.theme,s=void 0===o?p:o,a=e.className,l=this.state,c=l.appearingMenuHeight,h=l.appearingMenuWidth,m=l.appearingPosition,f=l.isMeasureValid;return i.createElement(i.Fragment,null,i.createElement(d.b.Provider,{value:this._manager},i.createElement("div",{className:r(a,s.menuWrap,!f&&s.isMeasuring),style:{height:c,left:m&&m.x,minWidth:n,position:"fixed",top:m&&m.y,width:h},ref:this._handleContainerRef,onScroll:this.props.onScroll,onContextMenu:u.b},i.createElement("div",{className:r(s.scrollWrap,!this.props.noMomentumBasedScroll&&s.momentumBased),style:{overflowY:void 0!==c?"scroll":"auto"},ref:this._handleScrollWrapRef},i.createElement("div",{className:s.menuBox},t)))),i.createElement(d.a,{reference:this._handleSlot}))},t}(i.PureComponent)},RgaO:function(e,t,n){"use strict";var o,i,r;n.d(t,"a",function(){return r}),o=n("mrSG"),i=n("q1tI"),r=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t._scope=null,t._handleScopeRef=function(e){return t._scope=e},t._handleOutsideEvent=function(e){void 0!==t.props.handler&&null!==t._scope&&e.target instanceof Node&&(t._scope.contains(e.target)||t.props.handler(e))},t}return o.__extends(t,e),t.prototype.componentDidMount=function(){this.props.click&&document.addEventListener("click",this._handleOutsideEvent,!1),this.props.mouseDown&&document.addEventListener("mousedown",this._handleOutsideEvent,!1),this.props.touchEnd&&document.addEventListener("touchend",this._handleOutsideEvent,!1),this.props.touchStart&&document.addEventListener("touchstart",this._handleOutsideEvent,!1)},t.prototype.componentWillUnmount=function(){document.removeEventListener("click",this._handleOutsideEvent,!1),document.removeEventListener("mousedown",this._handleOutsideEvent,!1),document.removeEventListener("touchend",this._handleOutsideEvent,!1),document.removeEventListener("touchstart",this._handleOutsideEvent,!1)},t.prototype.render=function(){var e=this.props,t=(e.click,e.handler,e.mouseDown,e.touchEnd,e.touchStart,e.ctor),n=void 0===t?"span":t,r=o.__rest(e,["click","handler","mouseDown","touchEnd","touchStart","ctor"]);return i.createElement(n,o.__assign({},r,{ref:this._handleScopeRef}))},t}(i.PureComponent)},jAh7:function(e,t,n){"use strict";function o(e){var t,n,o;return void 0===e&&(e=document),null!==(t=e.getElementById("overlap-manager-root"))?Object(i.ensureDefined)(a.get(t)):(n=new s(e),o=function(e){var t=e.createElement("div");return t.style.position="absolute",t.style.zIndex=150..toString(),t.style.top="0px",t.style.left="0px",t.id="overlap-manager-root",t}(e),a.set(o,n),n.setContainer(o),e.body.appendChild(o),n)}var i,r,s,a;n.r(t),n.d(t,"OverlapManager",function(){return s}),n.d(t,"getRootOverlapManager",function(){return o}),i=n("Eyy1"),r=function(){function e(){this._storage=[]}return e.prototype.add=function(e){this._storage.push(e)},e.prototype.remove=function(e){this._storage=this._storage.filter(function(t){return e!==t}) +},e.prototype.has=function(e){return this._storage.includes(e)},e.prototype.getItems=function(){return this._storage},e}(),s=function(){function e(e){void 0===e&&(e=document),this._storage=new r,this._windows=new Map,this._index=0,this._document=e,this._container=e.createDocumentFragment()}return e.prototype.setContainer=function(e){var t=this._container,n=null===e?this._document.createDocumentFragment():e;!function(e,t){Array.from(e.childNodes).forEach(function(e){e.nodeType===Node.ELEMENT_NODE&&t.appendChild(e)})}(t,n),this._container=n},e.prototype.registerWindow=function(e){this._storage.has(e)||this._storage.add(e)},e.prototype.ensureWindow=function(e,t){var n,o;return void 0===t&&(t={position:"fixed"}),void 0!==(n=this._windows.get(e))?n:(this.registerWindow(e),(o=this._document.createElement("div")).style.position=t.position,o.style.zIndex=this._index.toString(),o.dataset.id=e,this._container.appendChild(o),this._windows.set(e,o),++this._index,o)},e.prototype.unregisterWindow=function(e){this._storage.remove(e);var t=this._windows.get(e);void 0!==t&&(null!==t.parentElement&&t.parentElement.removeChild(t),this._windows.delete(e))},e.prototype.getZindex=function(e){var t=this.ensureWindow(e);return parseInt(t.style.zIndex||"0")},e.prototype.moveToTop=function(e){this.getZindex(e)!==this._index&&(this.ensureWindow(e).style.zIndex=(++this._index).toString())},e.prototype.removeWindow=function(e){this.unregisterWindow(e)},e}(),a=new WeakMap}}]); \ No newline at end of file diff --git a/public/charting_library/static/bundles/30.c3cc90c5fbe9a2b87ffb.js b/public/charting_library/static/bundles/30.c3cc90c5fbe9a2b87ffb.js new file mode 100644 index 0000000..de3554e --- /dev/null +++ b/public/charting_library/static/bundles/30.c3cc90c5fbe9a2b87ffb.js @@ -0,0 +1,2 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[30],{"4Cm8":function(t,e,i){"use strict";function s(t){var e;return c.createElement("div",{className:h(b.fadeLeft,(e={},e[b.isVisible]=t.isVisible,e))})}function r(t){var e;return c.createElement("div",{className:h(b.fadeRight,(e={},e[b.isVisible]=t.isVisible,e))})}function n(t){return c.createElement(l,a.__assign({},t,{className:b.scrollLeft}))}function o(t){return c.createElement(l,a.__assign({},t,{className:b.scrollRight}))}function l(t){var e;return c.createElement("div",{className:h(t.className,(e={},e[b.isVisible]=t.isVisible,e)),onClick:t.onClick},c.createElement("div",{className:b.iconWrap},c.createElement(p.a,{icon:m,className:b.icon})))}var a,c,h,u,p,d,f,w,m,b,_,R,S,V,v,g;i.d(e,"a",function(){return _}),a=i("mrSG"),c=i("q1tI"),h=i("TSYQ"),u=i("XmVn"),p=i("jjrI"),d=i("beCu"),f=i("j1f4"),w=i("Ialn"),m=i("Vike"),b=i("ji/R"),S=o,V=s,v=r,void 0===(R=n)&&(R=n),void 0===S&&(S=o),void 0===V&&(V=s),void 0===v&&(v=r),(g=function(t){function e(e){var i=t.call(this,e)||this;return i._scroll=c.createRef(),i._wrapMeasureRef=c.createRef(),i._contentMeasureRef=c.createRef(),i._handleScrollLeft=function(){i.props.onScrollButtonClick?i.props.onScrollButtonClick("left"):i.animateTo(Math.max(0,i.currentPosition()-(i.state.widthWrap-50)))},i._handleScrollRight=function(){i.props.onScrollButtonClick?i.props.onScrollButtonClick("right"):i.animateTo(Math.min((i.state.widthContent||0)-(i.state.widthWrap||0),i.currentPosition()+(i.state.widthWrap-50)))},i._handleResizeWrap=function(t){i.props.onMeasureWrap&&i.props.onMeasureWrap(t),i.setState({widthWrap:t.width}),i._checkButtonsVisibility()},i._handleResizeContent=function(t){i.props.onMeasureContent&&i.props.onMeasureContent(t);var e=i.props,s=e.shouldDecreaseWidthContent,r=e.buttonsWidthIfDecreasedWidthContent;s&&r?i.setState({widthContent:t.width+2*r}):i.setState({widthContent:t.width})},i._handleScroll=function(){var t=i.props.onScroll;t&&t(i.currentPosition(),i.isAtLeft(),i.isAtRight()),i._checkButtonsVisibility()},i._checkButtonsVisibility=function(){var t,e,s,r,n;(i.props.isVisibleButtons||i.props.isVisibleFade)&&(e=(t=i.state).isVisibleLeftButton,s=t.isVisibleRightButton,r=i.isAtLeft(),n=i.isAtRight(),r||e?r&&e&&i.setState({isVisibleLeftButton:!1}):i.setState({isVisibleLeftButton:!0}),n||s?n&&s&&i.setState({isVisibleRightButton:!1}):i.setState({isVisibleRightButton:!0}))},i.state={widthContent:0,widthWrap:0,isVisibleRightButton:!1,isVisibleLeftButton:!1},i}return a.__extends(e,t),e.prototype.componentDidMount=function(){this._checkButtonsVisibility()},e.prototype.componentDidUpdate=function(t,e){e.widthWrap===this.state.widthWrap&&e.widthContent===this.state.widthContent||this._handleScroll(),this.props.shouldMeasure&&this._wrapMeasureRef.current&&this._contentMeasureRef.current&&(this._wrapMeasureRef.current.measure(),this._contentMeasureRef.current.measure())},e.prototype.currentPosition=function(){return this._scroll.current?w.IS_RTL?Object(w.getLTRScrollLeft)(this._scroll.current):this._scroll.current.scrollLeft:0}, +e.prototype.isAtLeft=function(){return!this._isOverflowed()||this.currentPosition()<=this.props.hideButtonsFrom},e.prototype.isAtRight=function(){return!this._isOverflowed()||this.currentPosition()+this.state.widthWrap>=this.state.widthContent-this.props.hideButtonsFrom},e.prototype.animateTo=function(t,e){void 0===e&&(e=f.dur);var i=this._scroll.current;i&&(w.IS_RTL&&(t=Object(w.getLTRScrollLeftOffset)(i,t)),e<=0?i.scrollLeft=Math.round(t):Object(d.doAnimate)({onStep:function(t,e){i.scrollLeft=Math.round(e)},from:i.scrollLeft,to:Math.round(t),easing:f.easingFunc.easeInOutCubic,duration:e}))},e.prototype.render=function(){var t,e=this.props,i=e.children,s=e.isVisibleScrollbar,r=e.isVisibleFade,n=e.isVisibleButtons,o=e.shouldMeasure,l=e.shouldDecreaseWidthContent,a=e.buttonsWidthIfDecreasedWidthContent,p=this.state,d=p.isVisibleRightButton,f=p.isVisibleLeftButton,w=l&&a;return c.createElement(u,{whitelist:["width"],onMeasure:this._handleResizeWrap,shouldMeasure:o,ref:this._wrapMeasureRef},c.createElement("div",{className:b.wrapOverflow},c.createElement("div",{className:h(b.wrap,w?b.wrapWithArrowsOuting:"")},c.createElement("div",{className:h(b.scrollWrap,(t={},t[b.noScrollBar]=!s,t)),onScroll:this._handleScroll,ref:this._scroll},c.createElement(u,{onMeasure:this._handleResizeContent,whitelist:["width"],shouldMeasure:o,ref:this._contentMeasureRef},i)),r&&c.createElement(V,{isVisible:f}),r&&c.createElement(v,{isVisible:d}),n&&c.createElement(R,{onClick:this._handleScrollLeft,isVisible:f}),n&&c.createElement(S,{onClick:this._handleScrollRight,isVisible:d}))))},e.prototype._isOverflowed=function(){var t=this.state;return t.widthContent>t.widthWrap},e}(c.PureComponent)).defaultProps={isVisibleScrollbar:!0,shouldMeasure:!0,hideButtonsFrom:1},_=g},Vike:function(t,e){t.exports=''},"ji/R":function(t,e,i){t.exports={wrap:"wrap-5DN0XnS4-",wrapWithArrowsOuting:"wrapWithArrowsOuting-1OPNi0IP-",wrapOverflow:"wrapOverflow-2FHnhKaN-",scrollWrap:"scrollWrap-nAnkzkWd-",noScrollBar:"noScrollBar-34JzryqI-",icon:"icon-1nfNqIRh-",scrollLeft:"scrollLeft-2cl_k1e7-",scrollRight:"scrollRight-2SEqCpTf-",isVisible:"isVisible-Stm3XOHb-",iconWrap:"iconWrap-1E4GEP7h-",fadeLeft:"fadeLeft-244lj3pA-",fadeRight:"fadeRight-1JnS42hI-"}}}]); \ No newline at end of file diff --git a/public/charting_library/static/bundles/31.5c895c4f655400b0b4e2.css b/public/charting_library/static/bundles/31.5c895c4f655400b0b4e2.css new file mode 100644 index 0000000..84adb0d --- /dev/null +++ b/public/charting_library/static/bundles/31.5c895c4f655400b0b4e2.css @@ -0,0 +1 @@ +.icon-3yfDkFjY-{display:flex;flex-direction:row;align-items:center;transition:transform .35s cubic-bezier(.175,.885,.32,1.275)}.icon-3yfDkFjY- svg{display:block;fill:currentColor;width:8px;height:4px}.icon-3yfDkFjY-.dropped-50rfOQ8V-{transform:rotate(180deg)}.button-13wlLwhJ-{display:flex;flex:1 0 auto;align-items:center;height:100%;cursor:default;color:#131722;position:relative;z-index:0;transition:background-color .35s ease,color 60ms ease}html.theme-dark .button-13wlLwhJ-{color:#787b86}.button-13wlLwhJ-:active{color:#000}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){.button-13wlLwhJ-:hover{color:#000}}html.theme-dark .button-13wlLwhJ-:active{color:#868993}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){html.theme-dark .button-13wlLwhJ-:hover{color:#868993}}.button-13wlLwhJ-.hover-3L87f6Kw-:before,.button-13wlLwhJ-:active:before{content:"";display:block;position:absolute;z-index:-1;top:2px;right:2px;bottom:2px;left:2px;background-color:#f0f3fa;border-radius:2px}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){.button-13wlLwhJ-:hover:before{content:"";display:block;position:absolute;z-index:-1;top:2px;right:2px;bottom:2px;left:2px;background-color:#f0f3fa;border-radius:2px}}html.theme-dark .button-13wlLwhJ-.hover-3L87f6Kw-:before,html.theme-dark .button-13wlLwhJ-:active:before{background-color:#2a2e39}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){html.theme-dark .button-13wlLwhJ-:hover:before{background-color:#2a2e39}}.button-13wlLwhJ- svg{display:block;fill:currentColor}.button-13wlLwhJ- .arrow-2pXEy7ej-{display:flex;contain:content;align-items:center;height:100%}.button-13wlLwhJ- .arrowWrap-r5l5nQXU-{margin:0 6px;transition:transform .35s ease}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){.button-13wlLwhJ-:hover .arrowWrap-r5l5nQXU-{transform:translateY(2px)}}.button-13wlLwhJ-.isOpened-1939ai3F-.hover-3L87f6Kw-:before,.button-13wlLwhJ-.isOpened-1939ai3F-:active:before,.button-13wlLwhJ-.isOpened-1939ai3F-:before{content:"";display:block;position:absolute;z-index:-1;top:0;right:0;bottom:0;left:0;border-radius:0;background-color:#f0f3fa}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){.button-13wlLwhJ-.isOpened-1939ai3F-:hover:before{content:"";display:block;position:absolute;z-index:-1;top:0;right:0;bottom:0;left:0;border-radius:0;background-color:#f0f3fa}}html.theme-dark .button-13wlLwhJ-.isOpened-1939ai3F-.hover-3L87f6Kw-:before,html.theme-dark .button-13wlLwhJ-.isOpened-1939ai3F-:active:before,html.theme-dark .button-13wlLwhJ-.isOpened-1939ai3F-:before{background-color:#2a2e39}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){html.theme-dark .button-13wlLwhJ-.isOpened-1939ai3F-:hover:before{background-color:#2a2e39}}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){.button-13wlLwhJ-.isOpened-1939ai3F-:hover .arrowWrap-r5l5nQXU-{transform:none}} \ No newline at end of file diff --git a/public/charting_library/static/bundles/31.5c895c4f655400b0b4e2.rtl.css b/public/charting_library/static/bundles/31.5c895c4f655400b0b4e2.rtl.css new file mode 100644 index 0000000..d0c0441 --- /dev/null +++ b/public/charting_library/static/bundles/31.5c895c4f655400b0b4e2.rtl.css @@ -0,0 +1 @@ +.icon-3yfDkFjY-{display:flex;flex-direction:row;align-items:center;transition:transform .35s cubic-bezier(.175,.885,.32,1.275)}.icon-3yfDkFjY- svg{display:block;fill:currentColor;width:8px;height:4px}.icon-3yfDkFjY-.dropped-50rfOQ8V-{transform:rotate(-180deg)}.button-13wlLwhJ-{display:flex;flex:1 0 auto;align-items:center;height:100%;cursor:default;color:#131722;position:relative;z-index:0;transition:background-color .35s ease,color 60ms ease}html.theme-dark .button-13wlLwhJ-{color:#787b86}.button-13wlLwhJ-:active{color:#000}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){.button-13wlLwhJ-:hover{color:#000}}html.theme-dark .button-13wlLwhJ-:active{color:#868993}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){html.theme-dark .button-13wlLwhJ-:hover{color:#868993}}.button-13wlLwhJ-.hover-3L87f6Kw-:before,.button-13wlLwhJ-:active:before{content:"";display:block;position:absolute;z-index:-1;top:2px;left:2px;bottom:2px;right:2px;background-color:#f0f3fa;border-radius:2px}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){.button-13wlLwhJ-:hover:before{content:"";display:block;position:absolute;z-index:-1;top:2px;left:2px;bottom:2px;right:2px;background-color:#f0f3fa;border-radius:2px}}html.theme-dark .button-13wlLwhJ-.hover-3L87f6Kw-:before,html.theme-dark .button-13wlLwhJ-:active:before{background-color:#2a2e39}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){html.theme-dark .button-13wlLwhJ-:hover:before{background-color:#2a2e39}}.button-13wlLwhJ- svg{display:block;fill:currentColor}.button-13wlLwhJ- .arrow-2pXEy7ej-{display:flex;contain:content;align-items:center;height:100%}.button-13wlLwhJ- .arrowWrap-r5l5nQXU-{margin:0 6px;transition:transform .35s ease}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){.button-13wlLwhJ-:hover .arrowWrap-r5l5nQXU-{transform:translateY(2px)}}.button-13wlLwhJ-.isOpened-1939ai3F-.hover-3L87f6Kw-:before,.button-13wlLwhJ-.isOpened-1939ai3F-:active:before,.button-13wlLwhJ-.isOpened-1939ai3F-:before{content:"";display:block;position:absolute;z-index:-1;top:0;left:0;bottom:0;right:0;border-radius:0;background-color:#f0f3fa}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){.button-13wlLwhJ-.isOpened-1939ai3F-:hover:before{content:"";display:block;position:absolute;z-index:-1;top:0;left:0;bottom:0;right:0;border-radius:0;background-color:#f0f3fa}}html.theme-dark .button-13wlLwhJ-.isOpened-1939ai3F-.hover-3L87f6Kw-:before,html.theme-dark .button-13wlLwhJ-.isOpened-1939ai3F-:active:before,html.theme-dark .button-13wlLwhJ-.isOpened-1939ai3F-:before{background-color:#2a2e39}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){html.theme-dark .button-13wlLwhJ-.isOpened-1939ai3F-:hover:before{background-color:#2a2e39}}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){.button-13wlLwhJ-.isOpened-1939ai3F-:hover .arrowWrap-r5l5nQXU-{transform:none}} \ No newline at end of file diff --git a/public/charting_library/static/bundles/31.d081df3316799b489847.js b/public/charting_library/static/bundles/31.d081df3316799b489847.js new file mode 100644 index 0000000..9b84033 --- /dev/null +++ b/public/charting_library/static/bundles/31.d081df3316799b489847.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[31],[]]); \ No newline at end of file diff --git a/public/charting_library/static/bundles/32.48df7a8cdc38d60b308b.js b/public/charting_library/static/bundles/32.48df7a8cdc38d60b308b.js new file mode 100644 index 0000000..bae5831 --- /dev/null +++ b/public/charting_library/static/bundles/32.48df7a8cdc38d60b308b.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[32],[]]); \ No newline at end of file diff --git a/public/charting_library/static/bundles/32.b92773bfff0363a69bb9.css b/public/charting_library/static/bundles/32.b92773bfff0363a69bb9.css new file mode 100644 index 0000000..c941075 --- /dev/null +++ b/public/charting_library/static/bundles/32.b92773bfff0363a69bb9.css @@ -0,0 +1 @@ +.errors-C3KBJakt-{position:absolute;z-index:2;margin-bottom:1px;padding:10px 15px;color:#fff;opacity:0;text-align:center;border-radius:3px;background-color:#2a2e39;pointer-events:none;transform:translateY(-3px);box-sizing:border-box}html.theme-dark .errors-C3KBJakt-{background-color:#363c4e}.errors-C3KBJakt-:empty{display:none}.errors-C3KBJakt-.show-2G4PY7Uu-{opacity:1}.errors-C3KBJakt- .error-3G4k6KUC-{font-size:12px;line-height:1.4;text-transform:none}.clock-3pqBsiNm-{display:flex;flex-direction:column;border-radius:3px;background-color:#fff;box-shadow:0 2px 4px 0 rgba(107,121,136,.4)}html.theme-dark .clock-3pqBsiNm-{background-color:#1e222d;box-shadow:0 2px 4px 0 #000}.header-pTWMGSpm-{flex:0 0 50px;height:50px;box-sizing:border-box;font-size:24px;line-height:1;text-align:center;padding:10px 0;border-bottom:1px solid;border-bottom-color:#eceff2;color:#262b3e}html.theme-dark .header-pTWMGSpm-{color:#c5cbce;border-bottom-color:#363c4e}.header-pTWMGSpm- .number-9PC9lvyt-{padding:0 3px;cursor:pointer}.header-pTWMGSpm- .number-9PC9lvyt-.active-1sonmMLV-{color:#2196f3}.body-2Q-g3GDd-{padding:10px;background:#f7f8fa;flex:1 1 auto;display:flex;flex-direction:column;justify-content:center}html.theme-dark .body-2Q-g3GDd-{background:#1c2030}.clockFace-eHYbqh-S-{position:relative;width:200px;height:200px;border-radius:50%;box-sizing:border-box;margin:0 auto;background:#fff}html.theme-dark .clockFace-eHYbqh-S-{background:#262b3e}.clockFace-eHYbqh-S- div{position:absolute;width:100%;height:100%}.clockFace-eHYbqh-S- .face-2iCoBAOV-{position:absolute;top:0;left:0;border-radius:50%;font-size:15px;pointer-events:none}.clockFace-eHYbqh-S- .face-2iCoBAOV- .number-9PC9lvyt-{position:absolute;width:28px;height:28px;margin-top:-14px;margin-left:-14px;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;cursor:pointer;border-radius:50%;display:flex;align-items:center;text-align:center;pointer-events:all;color:#262b3e;transition:background-color 60ms ease}html.theme-dark .clockFace-eHYbqh-S- .face-2iCoBAOV- .number-9PC9lvyt-{color:#c5cbce}.clockFace-eHYbqh-S- .face-2iCoBAOV- .number-9PC9lvyt->span{flex:1 1 auto}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){.clockFace-eHYbqh-S- .face-2iCoBAOV- .number-9PC9lvyt-:hover{background-color:rgba(247,248,250,.5)}}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){html.theme-dark .clockFace-eHYbqh-S- .face-2iCoBAOV- .number-9PC9lvyt-:hover{background-color:rgba(28,32,48,.5)}}.clockFace-eHYbqh-S- .face-2iCoBAOV- .number-9PC9lvyt-:active{background-color:#f7f8fa}html.theme-dark .clockFace-eHYbqh-S- .face-2iCoBAOV- .number-9PC9lvyt-:active{background-color:#1c2030}.clockFace-eHYbqh-S- .face-2iCoBAOV- .number-9PC9lvyt-.inner-1mVlhYbe-{font-size:120%}.clockFace-eHYbqh-S- .hand-2ZG8pJQb-{position:absolute;display:block;pointer-events:none;bottom:50%;left:50%;width:1px;margin-left:-.5px;transform-origin:50% 100%;background:#2196f3}.clockFace-eHYbqh-S- .hand-2ZG8pJQb- .knob-31dEppHa-{position:absolute;top:-26px;left:50%;width:26px;height:26px;margin-left:-13px;box-sizing:border-box;border-radius:50%;border:2px solid;border-color:#2196f3}html.theme-dark .clockFace-eHYbqh-S- .hand-2ZG8pJQb- .knob-31dEppHa-{border-color:#1976d2}.clockFace-eHYbqh-S- .centerDot-210Fo0oV-{position:absolute;top:50%;left:50%;width:4px;height:4px;margin-top:-2px;margin-left:-2px;content:"";border-radius:50%;background:#2196f3} \ No newline at end of file diff --git a/public/charting_library/static/bundles/32.b92773bfff0363a69bb9.rtl.css b/public/charting_library/static/bundles/32.b92773bfff0363a69bb9.rtl.css new file mode 100644 index 0000000..435de72 --- /dev/null +++ b/public/charting_library/static/bundles/32.b92773bfff0363a69bb9.rtl.css @@ -0,0 +1 @@ +.errors-C3KBJakt-{position:absolute;z-index:2;margin-bottom:1px;padding:10px 15px;color:#fff;opacity:0;text-align:center;border-radius:3px;background-color:#2a2e39;pointer-events:none;transform:translateY(-3px);box-sizing:border-box}html.theme-dark .errors-C3KBJakt-{background-color:#363c4e}.errors-C3KBJakt-:empty{display:none}.errors-C3KBJakt-.show-2G4PY7Uu-{opacity:1}.errors-C3KBJakt- .error-3G4k6KUC-{font-size:12px;line-height:1.4;text-transform:none}.clock-3pqBsiNm-{display:flex;flex-direction:column;border-radius:3px;background-color:#fff;box-shadow:0 2px 4px 0 rgba(107,121,136,.4)}html.theme-dark .clock-3pqBsiNm-{background-color:#1e222d;box-shadow:0 2px 4px 0 #000}.header-pTWMGSpm-{flex:0 0 50px;height:50px;box-sizing:border-box;font-size:24px;line-height:1;text-align:center;padding:10px 0;border-bottom:1px solid;border-bottom-color:#eceff2;color:#262b3e}html.theme-dark .header-pTWMGSpm-{color:#c5cbce;border-bottom-color:#363c4e}.header-pTWMGSpm- .number-9PC9lvyt-{padding:0 3px;cursor:pointer}.header-pTWMGSpm- .number-9PC9lvyt-.active-1sonmMLV-{color:#2196f3}.body-2Q-g3GDd-{padding:10px;background:#f7f8fa;flex:1 1 auto;display:flex;flex-direction:column;justify-content:center}html.theme-dark .body-2Q-g3GDd-{background:#1c2030}.clockFace-eHYbqh-S-{position:relative;width:200px;height:200px;border-radius:50%;box-sizing:border-box;margin:0 auto;background:#fff}html.theme-dark .clockFace-eHYbqh-S-{background:#262b3e}.clockFace-eHYbqh-S- div{position:absolute;width:100%;height:100%}.clockFace-eHYbqh-S- .face-2iCoBAOV-{position:absolute;top:0;right:0;border-radius:50%;font-size:15px;pointer-events:none}.clockFace-eHYbqh-S- .face-2iCoBAOV- .number-9PC9lvyt-{position:absolute;width:28px;height:28px;margin-top:-14px;margin-left:-14px;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;cursor:pointer;border-radius:50%;display:flex;align-items:center;text-align:center;pointer-events:all;color:#262b3e;transition:background-color 60ms ease}html.theme-dark .clockFace-eHYbqh-S- .face-2iCoBAOV- .number-9PC9lvyt-{color:#c5cbce}.clockFace-eHYbqh-S- .face-2iCoBAOV- .number-9PC9lvyt->span{flex:1 1 auto}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){.clockFace-eHYbqh-S- .face-2iCoBAOV- .number-9PC9lvyt-:hover{background-color:rgba(247,248,250,.5)}}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){html.theme-dark .clockFace-eHYbqh-S- .face-2iCoBAOV- .number-9PC9lvyt-:hover{background-color:rgba(28,32,48,.5)}}.clockFace-eHYbqh-S- .face-2iCoBAOV- .number-9PC9lvyt-:active{background-color:#f7f8fa}html.theme-dark .clockFace-eHYbqh-S- .face-2iCoBAOV- .number-9PC9lvyt-:active{background-color:#1c2030}.clockFace-eHYbqh-S- .face-2iCoBAOV- .number-9PC9lvyt-.inner-1mVlhYbe-{font-size:120%}.clockFace-eHYbqh-S- .hand-2ZG8pJQb-{position:absolute;display:block;pointer-events:none;bottom:50%;right:50%;width:1px;margin-right:-.5px;transform-origin:50% 100%;background:#2196f3}.clockFace-eHYbqh-S- .hand-2ZG8pJQb- .knob-31dEppHa-{position:absolute;top:-26px;right:50%;width:26px;height:26px;margin-right:-13px;box-sizing:border-box;border-radius:50%;border:2px solid;border-color:#2196f3}html.theme-dark .clockFace-eHYbqh-S- .hand-2ZG8pJQb- .knob-31dEppHa-{border-color:#1976d2}.clockFace-eHYbqh-S- .centerDot-210Fo0oV-{position:absolute;top:50%;right:50%;width:4px;height:4px;margin-top:-2px;margin-right:-2px;content:"";border-radius:50%;background:#2196f3} \ No newline at end of file diff --git a/public/charting_library/static/bundles/33.4a74c62095be3045c87e.js b/public/charting_library/static/bundles/33.4a74c62095be3045c87e.js new file mode 100644 index 0000000..28ac26b --- /dev/null +++ b/public/charting_library/static/bundles/33.4a74c62095be3045c87e.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[33],[]]); \ No newline at end of file diff --git a/public/charting_library/static/bundles/33.ac320c107772f8e72252.css b/public/charting_library/static/bundles/33.ac320c107772f8e72252.css new file mode 100644 index 0000000..d66f779 --- /dev/null +++ b/public/charting_library/static/bundles/33.ac320c107772f8e72252.css @@ -0,0 +1 @@ +.ghost-3yO24wIn-.primary-1rSzOFdX-{color:#2196f3;border:1px solid #2196f3;background-color:transparent}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){.ghost-3yO24wIn-.primary-1rSzOFdX-:hover{color:#fff;transition-duration:.06s}}.ghost-3yO24wIn-.success-1qQ3_tEI-{color:#3cbc98;border:1px solid #3cbc98;background-color:transparent}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){.ghost-3yO24wIn-.success-1qQ3_tEI-:hover{color:#fff;transition-duration:.06s}}.ghost-3yO24wIn-.danger-jKTO4wDd-{color:#ff4a68;border:1px solid #ff4a68;background-color:transparent}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){.ghost-3yO24wIn-.danger-jKTO4wDd-:hover{color:#fff;transition-duration:.06s}}.ghost-3yO24wIn-.warning-2uDfz7Zc-{color:#f89e30;border:1px solid #f89e30;background-color:transparent}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){.ghost-3yO24wIn-.warning-2uDfz7Zc-:hover{color:#fff;transition-duration:.06s}}.ghost-3yO24wIn-.secondary-3ll81brZ-{color:#757575;border:1px solid #e9eff2;background-color:transparent}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){.ghost-3yO24wIn-.secondary-3ll81brZ-:hover{color:#757575;transition-duration:.06s}}.button-2O-nMUcz-{display:inline-flex;justify-content:center;align-items:center;padding:0;position:relative;min-width:35px;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;text-align:center;white-space:nowrap;outline:0;cursor:pointer;overflow:hidden;box-sizing:border-box;line-height:32px;font-size:14px;transition:background-color .35s ease,border-color .35s ease,color .35s ease;border-radius:2px;border:1px solid transparent}.button-2O-nMUcz-.withPadding-_5CJoO5q-{padding:0 22px}.button-2O-nMUcz-+.button-2O-nMUcz-{margin-left:15px}.hiddenText-3qcN5Wif-{visibility:hidden;flex:1 1 auto}.text-2KOWx3rB-{position:absolute;left:0;right:0;bottom:0;top:0;text-align:center;display:inline-flex;justify-content:center;align-items:center;transition:opacity .175s ease,transform .175s ease}.loader-1CC-1F8J-{display:inline-block;transition:opacity .35s ease;opacity:1}.base-2d4XFcnI-{color:#757575;border-color:#adaeb0;background-color:transparent}html.theme-dark .base-2d4XFcnI-{border-color:#4f5966;color:#758696}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){.base-2d4XFcnI-:hover{background-color:#f2f2f2;transition-duration:.06s}}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){html.theme-dark .base-2d4XFcnI-:hover{background-color:#1c2030}}.base-2d4XFcnI-:active{background-color:#ececec;transition-duration:.06s}html.theme-dark .base-2d4XFcnI-:active{background-color:#262b3e}.primary-1rSzOFdX-{color:#fff;border-color:#2196f3;background-color:#2196f3}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){.primary-1rSzOFdX-:hover{background-color:#1e88e5;transition-duration:.06s}}.primary-1rSzOFdX-:active{background-color:#049ddc;transition-duration:.06s}.success-1qQ3_tEI-{color:#fff;border-color:#3cbc98;background-color:#3cbc98}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){.success-1qQ3_tEI-:hover{background-color:#38b395;transition-duration:.06s}}.success-1qQ3_tEI-:active{background-color:#00a97f;transition-duration:.06s}.danger-jKTO4wDd-{color:#fff;border-color:#ff4a68;background-color:#ff4a68}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){.danger-jKTO4wDd-:hover{background-color:#f24965;transition-duration:.06s}}.danger-jKTO4wDd-:active{background-color:#ff173e;transition-duration:.06s}.warning-2uDfz7Zc-{color:#fff;border-color:#f89e30;background-color:#f89e30}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){.warning-2uDfz7Zc-:hover{background-color:#f79217;transition-duration:.06s}}.warning-2uDfz7Zc-:active{background-color:#d47807;transition-duration:.06s}.secondary-3ll81brZ-{color:#757575;border-color:#eceff2;background-color:#eceff2}html.theme-dark .secondary-3ll81brZ-{background-color:#363c4e;border-color:#363c4e;color:#c5cbce}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){.secondary-3ll81brZ-:hover{background-color:#dce6ea;transition-duration:.06s}}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){html.theme-dark .secondary-3ll81brZ-:hover{background-color:#4f5966}}.secondary-3ll81brZ-:active{background-color:#cfdce3;transition-duration:.06s}html.theme-dark .secondary-3ll81brZ-:active{background-color:#4f5966}.secondaryScript-2iIeFIWW-{color:#fff;border-color:#9db2bd;background-color:#9db2bd}html.theme-dark .secondaryScript-2iIeFIWW-{background-color:#363c4e;border-color:#363c4e}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){.secondaryScript-2iIeFIWW-:hover{background-color:#9db2bd;transition-duration:.06s}}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){html.theme-dark .secondaryScript-2iIeFIWW-:hover{background-color:#363c4e}}.secondaryScript-2iIeFIWW-:active{background-color:#cfdce3;transition-duration:.06s}html.theme-dark .secondaryScript-2iIeFIWW-:active{background-color:#363c4e}.link-2sR0CShp-{color:#2196f3;transition:color .35s ease;background-color:transparent}html.theme-dark .link-2sR0CShp-{color:#1976d2}.link-2sR0CShp-:visited{color:#2196f3;fill:#2196f3}html.theme-dark .link-2sR0CShp-:visited{fill:#1976d2;color:#1976d2}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){.link-2sR0CShp-:hover{color:#1e88e5;fill:#1e88e5;transition-duration:.06s}}.link-2sR0CShp-:active{color:#1e88e5;fill:#1e88e5;transition-duration:.06s}.xsmall-1aiWe3Hs-{line-height:17px;border-radius:1px;font-size:11px;font-weight:400}.xsmall-1aiWe3Hs-.withPadding-_5CJoO5q-{padding:0 7px}.xsmall-1aiWe3Hs-+.xsmall-1aiWe3Hs-{margin-left:10px}.xsmall-1aiWe3Hs-.rounded-3qEdyiAz-{border-radius:10px}.small-2-nQtW8O-{line-height:25px;font-size:13px}.small-2-nQtW8O-.withPadding-_5CJoO5q-{padding:0 12px}.small-2-nQtW8O-+.small-2-nQtW8O-{margin-left:10px}.small-2-nQtW8O-.rounded-3qEdyiAz-{border-radius:14px}.large-33HYhX8D-{line-height:46px;font-size:17px;letter-spacing:1px}.large-33HYhX8D-.withPadding-_5CJoO5q-{padding:0 30px}.large-33HYhX8D-.rounded-3qEdyiAz-{border-radius:24px}.grouped-1WsMjajI-:not(:first-child):not(:last-child){border-radius:0}.grouped-1WsMjajI-+.grouped-1WsMjajI-{margin-left:-1px}.grouped-1WsMjajI-:first-child{margin-left:0}.grouped-1WsMjajI-:not(:last-child){border-bottom-right-radius:0;border-top-right-radius:0}.grouped-1WsMjajI-:not(:first-child){border-bottom-left-radius:0;border-top-left-radius:0}.growable-F6tv8R_j-{flex:1}.growable-F6tv8R_j-.withPadding-_5CJoO5q-{padding:0}.active-2UxWxOgk-:active{transform:translateY(1px)}.disabled-3u0ULovv-{color:#adaeb0;border-color:#f1f3f6;background-color:#f1f3f6;cursor:default}html.theme-dark .disabled-3u0ULovv-{background-color:#262b3e;border-color:#262b3e;color:#363c4e}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){.disabled-3u0ULovv-:hover{background-color:#f1f3f6;transition-duration:.06s}}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){html.theme-dark .disabled-3u0ULovv-:hover{background-color:#262b3e}}.disabled-3u0ULovv-:active{background-color:#f1f3f6;transition-duration:.06s}html.theme-dark .disabled-3u0ULovv-:active{background-color:#262b3e}.disabled-3u0ULovv-:active{transform:none}.rounded-3qEdyiAz-{border-radius:17px} \ No newline at end of file diff --git a/public/charting_library/static/bundles/33.ac320c107772f8e72252.rtl.css b/public/charting_library/static/bundles/33.ac320c107772f8e72252.rtl.css new file mode 100644 index 0000000..7a6d8ad --- /dev/null +++ b/public/charting_library/static/bundles/33.ac320c107772f8e72252.rtl.css @@ -0,0 +1 @@ +.ghost-3yO24wIn-.primary-1rSzOFdX-{color:#2196f3;border:1px solid #2196f3;background-color:transparent}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){.ghost-3yO24wIn-.primary-1rSzOFdX-:hover{color:#fff;transition-duration:.06s}}.ghost-3yO24wIn-.success-1qQ3_tEI-{color:#3cbc98;border:1px solid #3cbc98;background-color:transparent}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){.ghost-3yO24wIn-.success-1qQ3_tEI-:hover{color:#fff;transition-duration:.06s}}.ghost-3yO24wIn-.danger-jKTO4wDd-{color:#ff4a68;border:1px solid #ff4a68;background-color:transparent}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){.ghost-3yO24wIn-.danger-jKTO4wDd-:hover{color:#fff;transition-duration:.06s}}.ghost-3yO24wIn-.warning-2uDfz7Zc-{color:#f89e30;border:1px solid #f89e30;background-color:transparent}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){.ghost-3yO24wIn-.warning-2uDfz7Zc-:hover{color:#fff;transition-duration:.06s}}.ghost-3yO24wIn-.secondary-3ll81brZ-{color:#757575;border:1px solid #e9eff2;background-color:transparent}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){.ghost-3yO24wIn-.secondary-3ll81brZ-:hover{color:#757575;transition-duration:.06s}}.button-2O-nMUcz-{display:inline-flex;justify-content:center;align-items:center;padding:0;position:relative;min-width:35px;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;text-align:center;white-space:nowrap;outline:0;cursor:pointer;overflow:hidden;box-sizing:border-box;line-height:32px;font-size:14px;transition:background-color .35s ease,border-color .35s ease,color .35s ease;border-radius:2px;border:1px solid transparent}.button-2O-nMUcz-.withPadding-_5CJoO5q-{padding:0 22px}.button-2O-nMUcz-+.button-2O-nMUcz-{margin-right:15px}.hiddenText-3qcN5Wif-{visibility:hidden;flex:1 1 auto}.text-2KOWx3rB-{position:absolute;right:0;left:0;bottom:0;top:0;text-align:center;display:inline-flex;justify-content:center;align-items:center;transition:opacity .175s ease,transform .175s ease}.loader-1CC-1F8J-{display:inline-block;transition:opacity .35s ease;opacity:1}.base-2d4XFcnI-{color:#757575;border-color:#adaeb0;background-color:transparent}html.theme-dark .base-2d4XFcnI-{border-color:#4f5966;color:#758696}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){.base-2d4XFcnI-:hover{background-color:#f2f2f2;transition-duration:.06s}}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){html.theme-dark .base-2d4XFcnI-:hover{background-color:#1c2030}}.base-2d4XFcnI-:active{background-color:#ececec;transition-duration:.06s}html.theme-dark .base-2d4XFcnI-:active{background-color:#262b3e}.primary-1rSzOFdX-{color:#fff;border-color:#2196f3;background-color:#2196f3}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){.primary-1rSzOFdX-:hover{background-color:#1e88e5;transition-duration:.06s}}.primary-1rSzOFdX-:active{background-color:#049ddc;transition-duration:.06s}.success-1qQ3_tEI-{color:#fff;border-color:#3cbc98;background-color:#3cbc98}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){.success-1qQ3_tEI-:hover{background-color:#38b395;transition-duration:.06s}}.success-1qQ3_tEI-:active{background-color:#00a97f;transition-duration:.06s}.danger-jKTO4wDd-{color:#fff;border-color:#ff4a68;background-color:#ff4a68}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){.danger-jKTO4wDd-:hover{background-color:#f24965;transition-duration:.06s}}.danger-jKTO4wDd-:active{background-color:#ff173e;transition-duration:.06s}.warning-2uDfz7Zc-{color:#fff;border-color:#f89e30;background-color:#f89e30}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){.warning-2uDfz7Zc-:hover{background-color:#f79217;transition-duration:.06s}}.warning-2uDfz7Zc-:active{background-color:#d47807;transition-duration:.06s}.secondary-3ll81brZ-{color:#757575;border-color:#eceff2;background-color:#eceff2}html.theme-dark .secondary-3ll81brZ-{background-color:#363c4e;border-color:#363c4e;color:#c5cbce}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){.secondary-3ll81brZ-:hover{background-color:#dce6ea;transition-duration:.06s}}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){html.theme-dark .secondary-3ll81brZ-:hover{background-color:#4f5966}}.secondary-3ll81brZ-:active{background-color:#cfdce3;transition-duration:.06s}html.theme-dark .secondary-3ll81brZ-:active{background-color:#4f5966}.secondaryScript-2iIeFIWW-{color:#fff;border-color:#9db2bd;background-color:#9db2bd}html.theme-dark .secondaryScript-2iIeFIWW-{background-color:#363c4e;border-color:#363c4e}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){.secondaryScript-2iIeFIWW-:hover{background-color:#9db2bd;transition-duration:.06s}}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){html.theme-dark .secondaryScript-2iIeFIWW-:hover{background-color:#363c4e}}.secondaryScript-2iIeFIWW-:active{background-color:#cfdce3;transition-duration:.06s}html.theme-dark .secondaryScript-2iIeFIWW-:active{background-color:#363c4e}.link-2sR0CShp-{color:#2196f3;transition:color .35s ease;background-color:transparent}html.theme-dark .link-2sR0CShp-{color:#1976d2}.link-2sR0CShp-:visited{color:#2196f3;fill:#2196f3}html.theme-dark .link-2sR0CShp-:visited{fill:#1976d2;color:#1976d2}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){.link-2sR0CShp-:hover{color:#1e88e5;fill:#1e88e5;transition-duration:.06s}}.link-2sR0CShp-:active{color:#1e88e5;fill:#1e88e5;transition-duration:.06s}.xsmall-1aiWe3Hs-{line-height:17px;border-radius:1px;font-size:11px;font-weight:400}.xsmall-1aiWe3Hs-.withPadding-_5CJoO5q-{padding:0 7px}.xsmall-1aiWe3Hs-+.xsmall-1aiWe3Hs-{margin-right:10px}.xsmall-1aiWe3Hs-.rounded-3qEdyiAz-{border-radius:10px}.small-2-nQtW8O-{line-height:25px;font-size:13px}.small-2-nQtW8O-.withPadding-_5CJoO5q-{padding:0 12px}.small-2-nQtW8O-+.small-2-nQtW8O-{margin-right:10px}.small-2-nQtW8O-.rounded-3qEdyiAz-{border-radius:14px}.large-33HYhX8D-{line-height:46px;font-size:17px;letter-spacing:1px}.large-33HYhX8D-.withPadding-_5CJoO5q-{padding:0 30px}.large-33HYhX8D-.rounded-3qEdyiAz-{border-radius:24px}.grouped-1WsMjajI-:not(:first-child):not(:last-child){border-radius:0}.grouped-1WsMjajI-+.grouped-1WsMjajI-{margin-right:-1px}.grouped-1WsMjajI-:first-child{margin-right:0}.grouped-1WsMjajI-:not(:last-child){border-bottom-left-radius:0;border-top-left-radius:0}.grouped-1WsMjajI-:not(:first-child){border-bottom-right-radius:0;border-top-right-radius:0}.growable-F6tv8R_j-{flex:1}.growable-F6tv8R_j-.withPadding-_5CJoO5q-{padding:0}.active-2UxWxOgk-:active{transform:translateY(1px)}.disabled-3u0ULovv-{color:#adaeb0;border-color:#f1f3f6;background-color:#f1f3f6;cursor:default}html.theme-dark .disabled-3u0ULovv-{background-color:#262b3e;border-color:#262b3e;color:#363c4e}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){.disabled-3u0ULovv-:hover{background-color:#f1f3f6;transition-duration:.06s}}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){html.theme-dark .disabled-3u0ULovv-:hover{background-color:#262b3e}}.disabled-3u0ULovv-:active{background-color:#f1f3f6;transition-duration:.06s}html.theme-dark .disabled-3u0ULovv-:active{background-color:#262b3e}.disabled-3u0ULovv-:active{transform:none}.rounded-3qEdyiAz-{border-radius:17px} \ No newline at end of file diff --git a/public/charting_library/static/bundles/34.17e0ce399a577f17ba55.js b/public/charting_library/static/bundles/34.17e0ce399a577f17ba55.js new file mode 100644 index 0000000..34f0a44 --- /dev/null +++ b/public/charting_library/static/bundles/34.17e0ce399a577f17ba55.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[34],[]]); \ No newline at end of file diff --git a/public/charting_library/static/bundles/34.dd27b311326fd1fc6fde.css b/public/charting_library/static/bundles/34.dd27b311326fd1fc6fde.css new file mode 100644 index 0000000..d723cd8 --- /dev/null +++ b/public/charting_library/static/bundles/34.dd27b311326fd1fc6fde.css @@ -0,0 +1 @@ +.tv-search-row{width:100%;position:relative;cursor:default;display:flex;border-bottom:1px solid;border-bottom-color:#dadde0}html.theme-dark .tv-search-row{border-bottom-color:#363c4e}.tv-search-row__input{background-color:#fff;box-sizing:border-box;width:100%;padding:9px 50px 9px 60px;min-height:50px;height:50px;margin:0;border:none}html.theme-dark .tv-search-row__input{background-color:#1e222d}@media screen and (max-width:767px){.tv-search-row__input{min-height:34px;height:34px;padding-left:50px;padding-right:40px}.feature-mobiletouch .tv-search-row__input{min-height:50px;height:50px}}.tv-search-row--without-controls .tv-search-row__input{padding-right:30px;padding-left:30px}@media screen and (max-width:767px){.tv-search-row--without-controls .tv-search-row__input{padding-left:20px;padding-right:20px}}.tv-search-row__input-reset{top:0;right:16px;bottom:0;width:36px;position:absolute;text-align:center;opacity:.5;cursor:pointer;transition:opacity .35s ease}.tv-search-row__input-reset:after{content:"";display:inline-block;vertical-align:middle;height:100%}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){.tv-search-row__input-reset:hover{opacity:1;transition-duration:.06s}}.tv-search-row__input-reset svg{display:inline-block;fill:#4a4a4a;width:9px;height:9px;vertical-align:middle}html.theme-dark .tv-search-row__input-reset svg{fill:#c5cbce}@media screen and (max-width:767px){.tv-search-row__input-reset{right:10px}}.tv-search-row__search-icon{position:absolute;display:block;top:50%;left:30px;margin-top:-9px;opacity:.8;pointer-events:none;transition:opacity .35s ease}@media screen and (max-width:767px){.tv-search-row__search-icon{left:20px}}.tv-search-row__search-icon svg{display:block;fill:#adaeb0;width:18px;height:18px;overflow:visible}html.theme-dark .tv-search-row__search-icon svg{fill:#4f5966}.tv-search-row--without-controls .tv-search-row__input-reset,.tv-search-row--without-controls .tv-search-row__search-icon{display:none} \ No newline at end of file diff --git a/public/charting_library/static/bundles/34.dd27b311326fd1fc6fde.rtl.css b/public/charting_library/static/bundles/34.dd27b311326fd1fc6fde.rtl.css new file mode 100644 index 0000000..136b0ca --- /dev/null +++ b/public/charting_library/static/bundles/34.dd27b311326fd1fc6fde.rtl.css @@ -0,0 +1 @@ +.tv-search-row{width:100%;position:relative;cursor:default;display:flex;border-bottom:1px solid;border-bottom-color:#dadde0}html.theme-dark .tv-search-row{border-bottom-color:#363c4e}.tv-search-row__input{background-color:#fff;box-sizing:border-box;width:100%;padding:9px 60px 9px 50px;min-height:50px;height:50px;margin:0;border:none}html.theme-dark .tv-search-row__input{background-color:#1e222d}@media screen and (max-width:767px){.tv-search-row__input{min-height:34px;height:34px;padding-right:50px;padding-left:40px}.feature-mobiletouch .tv-search-row__input{min-height:50px;height:50px}}.tv-search-row--without-controls .tv-search-row__input{padding-left:30px;padding-right:30px}@media screen and (max-width:767px){.tv-search-row--without-controls .tv-search-row__input{padding-right:20px;padding-left:20px}}.tv-search-row__input-reset{top:0;left:16px;bottom:0;width:36px;position:absolute;text-align:center;opacity:.5;cursor:pointer;transition:opacity .35s ease}.tv-search-row__input-reset:after{content:"";display:inline-block;vertical-align:middle;height:100%}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){.tv-search-row__input-reset:hover{opacity:1;transition-duration:.06s}}.tv-search-row__input-reset svg{display:inline-block;fill:#4a4a4a;width:9px;height:9px;vertical-align:middle}html.theme-dark .tv-search-row__input-reset svg{fill:#c5cbce}@media screen and (max-width:767px){.tv-search-row__input-reset{left:10px}}.tv-search-row__search-icon{position:absolute;display:block;top:50%;right:30px;margin-top:-9px;opacity:.8;pointer-events:none;transition:opacity .35s ease}@media screen and (max-width:767px){.tv-search-row__search-icon{right:20px}}.tv-search-row__search-icon svg{display:block;fill:#adaeb0;width:18px;height:18px;overflow:visible}html.theme-dark .tv-search-row__search-icon svg{fill:#4f5966}.tv-search-row--without-controls .tv-search-row__input-reset,.tv-search-row--without-controls .tv-search-row__search-icon{display:none} \ No newline at end of file diff --git a/public/charting_library/static/bundles/35.47b9d16b3fa10b495a11.css b/public/charting_library/static/bundles/35.47b9d16b3fa10b495a11.css new file mode 100644 index 0000000..343e562 --- /dev/null +++ b/public/charting_library/static/bundles/35.47b9d16b3fa10b495a11.css @@ -0,0 +1 @@ +.tv-tabbed-dialog{background-color:#fff;color:#4a4a4a}html.theme-dark .tv-tabbed-dialog{color:#c5cbce;background-color:#1e222d}.tv-tabbed-dialog__header{display:flex;position:relative;padding-top:0;padding-left:0;padding-bottom:0;border-bottom:none!important;margin-bottom:-1px;z-index:6}.tv-tabbed-dialog__bottom-border{position:absolute;left:0;right:0;bottom:0;height:1px;background-color:#dadde0;z-index:-1}html.theme-dark .tv-tabbed-dialog__bottom-border{background-color:#363c4e}.tv-tabbed-dialog__tab-page{height:100%;display:none}.tv-tabbed-dialog__tab-page.active{overflow-y:auto;-webkit-overflow-scrolling:touch;-ms-overflow-style:-ms-autohiding-scrollbar;display:block}.tv-tabbed-dialog__close{z-index:6;top:5px}.tv-tabbed-dialog__tabs{width:100%;flex-shrink:1;height:53px}.tv-tabbed-dialog__custom-controls{margin-left:10px;flex-shrink:0}.tv-tabbed-dialog__tabs-arrow-left:before,.tv-tabbed-dialog__tabs-arrow-right:before{content:"";position:absolute;bottom:1px;left:0;right:0;height:1px}.tv-tabbed-dialog__tabs-arrow-left:before{background:linear-gradient(90deg,#dadde0 0,#dadde0 85%,hsla(0,0%,100%,0))}.tv-tabbed-dialog__tabs-arrow-right:before{background:linear-gradient(270deg,#dadde0 0,#dadde0 85%,hsla(0,0%,100%,0))} \ No newline at end of file diff --git a/public/charting_library/static/bundles/35.47b9d16b3fa10b495a11.rtl.css b/public/charting_library/static/bundles/35.47b9d16b3fa10b495a11.rtl.css new file mode 100644 index 0000000..04972da --- /dev/null +++ b/public/charting_library/static/bundles/35.47b9d16b3fa10b495a11.rtl.css @@ -0,0 +1 @@ +.tv-tabbed-dialog{background-color:#fff;color:#4a4a4a}html.theme-dark .tv-tabbed-dialog{color:#c5cbce;background-color:#1e222d}.tv-tabbed-dialog__header{display:flex;position:relative;padding-top:0;padding-right:0;padding-bottom:0;border-bottom:none!important;margin-bottom:-1px;z-index:6}.tv-tabbed-dialog__bottom-border{position:absolute;right:0;left:0;bottom:0;height:1px;background-color:#dadde0;z-index:-1}html.theme-dark .tv-tabbed-dialog__bottom-border{background-color:#363c4e}.tv-tabbed-dialog__tab-page{height:100%;display:none}.tv-tabbed-dialog__tab-page.active{overflow-y:auto;-webkit-overflow-scrolling:touch;-ms-overflow-style:-ms-autohiding-scrollbar;display:block}.tv-tabbed-dialog__close{z-index:6;top:5px}.tv-tabbed-dialog__tabs{width:100%;flex-shrink:1;height:53px}.tv-tabbed-dialog__custom-controls{margin-right:10px;flex-shrink:0}.tv-tabbed-dialog__tabs-arrow-left:before,.tv-tabbed-dialog__tabs-arrow-right:before{content:"";position:absolute;bottom:1px;right:0;left:0;height:1px}.tv-tabbed-dialog__tabs-arrow-left:before{background:linear-gradient(270deg,#dadde0 0,#dadde0 85%,hsla(0,0%,100%,0))}.tv-tabbed-dialog__tabs-arrow-right:before{background:linear-gradient(90deg,#dadde0 0,#dadde0 85%,hsla(0,0%,100%,0))} \ No newline at end of file diff --git a/public/charting_library/static/bundles/35.58433cec10095e3c1b7e.js b/public/charting_library/static/bundles/35.58433cec10095e3c1b7e.js new file mode 100644 index 0000000..8cc7499 --- /dev/null +++ b/public/charting_library/static/bundles/35.58433cec10095e3c1b7e.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[35],[]]); \ No newline at end of file diff --git a/public/charting_library/static/bundles/36.2ee80b40751fcc88a65c.js b/public/charting_library/static/bundles/36.2ee80b40751fcc88a65c.js new file mode 100644 index 0000000..5222a3a --- /dev/null +++ b/public/charting_library/static/bundles/36.2ee80b40751fcc88a65c.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[36],[]]); \ No newline at end of file diff --git a/public/charting_library/static/bundles/36.e9a6bec06ee11d2c2d4a.css b/public/charting_library/static/bundles/36.e9a6bec06ee11d2c2d4a.css new file mode 100644 index 0000000..78806e4 --- /dev/null +++ b/public/charting_library/static/bundles/36.e9a6bec06ee11d2c2d4a.css @@ -0,0 +1 @@ +.tv-text-input{color:#4a4a4a;margin:0;border:1px solid;border-color:#dadde0;display:inline-block;overflow:hidden;width:100px;height:26px;vertical-align:top;padding:0 5px}html.theme-dark .tv-text-input{border-color:#363c4e;color:#c5cbce}.tv-text-input:focus{border-color:#2196f3}html.theme-dark .tv-text-input:focus{border-color:#1976d2}.tv-text-input.inset{background:#fff}html.theme-dark .tv-text-input.inset{background:#131722}.tv-text-input.ticker{height:25px;width:60px}.tv-text-input.ticker--longer-sign_8{width:72px}.tv-text-input.ticker--evenlonger{width:90px} \ No newline at end of file diff --git a/public/charting_library/static/bundles/36.e9a6bec06ee11d2c2d4a.rtl.css b/public/charting_library/static/bundles/36.e9a6bec06ee11d2c2d4a.rtl.css new file mode 100644 index 0000000..72a7a5e --- /dev/null +++ b/public/charting_library/static/bundles/36.e9a6bec06ee11d2c2d4a.rtl.css @@ -0,0 +1 @@ +.tv-text-input{color:#4a4a4a;margin:0;border:1px solid;border-color:#dadde0;display:inline-block;overflow:hidden;width:100px;height:26px;vertical-align:top;padding:0 5px;direction:ltr;text-align:right}html.theme-dark .tv-text-input{border-color:#363c4e;color:#c5cbce}.tv-text-input:focus{border-color:#2196f3}html.theme-dark .tv-text-input:focus{border-color:#1976d2}.tv-text-input.inset{background:#fff}html.theme-dark .tv-text-input.inset{background:#131722}.tv-text-input.ticker{height:25px;width:60px}.tv-text-input.ticker--longer-sign_8{width:72px}.tv-text-input.ticker--evenlonger{width:90px} \ No newline at end of file diff --git a/public/charting_library/static/bundles/37.065a5f2249aafcfe50ec.css b/public/charting_library/static/bundles/37.065a5f2249aafcfe50ec.css new file mode 100644 index 0000000..d500f6c --- /dev/null +++ b/public/charting_library/static/bundles/37.065a5f2249aafcfe50ec.css @@ -0,0 +1 @@ +.star-uhAI7sV4-{display:block;opacity:.7;box-sizing:border-box;transition:opacity .35s ease;padding:4px;margin:-4px}.star-uhAI7sV4- svg{display:block;fill:currentColor;pointer-events:none}.star-uhAI7sV4-.checked-2bhy04CF- svg{fill:#ffca3b}.star-uhAI7sV4-:active{opacity:1;transition-duration:60ms}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){.star-uhAI7sV4-:hover{opacity:1;transition-duration:60ms}} \ No newline at end of file diff --git a/public/charting_library/static/bundles/37.065a5f2249aafcfe50ec.rtl.css b/public/charting_library/static/bundles/37.065a5f2249aafcfe50ec.rtl.css new file mode 100644 index 0000000..d500f6c --- /dev/null +++ b/public/charting_library/static/bundles/37.065a5f2249aafcfe50ec.rtl.css @@ -0,0 +1 @@ +.star-uhAI7sV4-{display:block;opacity:.7;box-sizing:border-box;transition:opacity .35s ease;padding:4px;margin:-4px}.star-uhAI7sV4- svg{display:block;fill:currentColor;pointer-events:none}.star-uhAI7sV4-.checked-2bhy04CF- svg{fill:#ffca3b}.star-uhAI7sV4-:active{opacity:1;transition-duration:60ms}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){.star-uhAI7sV4-:hover{opacity:1;transition-duration:60ms}} \ No newline at end of file diff --git a/public/charting_library/static/bundles/37.1735365b01406a8d696d.js b/public/charting_library/static/bundles/37.1735365b01406a8d696d.js new file mode 100644 index 0000000..7f6fcf6 --- /dev/null +++ b/public/charting_library/static/bundles/37.1735365b01406a8d696d.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[37],[]]); \ No newline at end of file diff --git a/public/charting_library/static/bundles/38.4073381c29c4e2bc2209.css b/public/charting_library/static/bundles/38.4073381c29c4e2bc2209.css new file mode 100644 index 0000000..b6244f2 --- /dev/null +++ b/public/charting_library/static/bundles/38.4073381c29c4e2bc2209.css @@ -0,0 +1 @@ +.wrap-5DN0XnS4-{position:relative;direction:ltr;width:100%;height:100%;overflow:hidden}.wrap-5DN0XnS4- svg{display:block}.wrapWithArrowsOuting-1OPNi0IP-{width:calc(100% - 40px);margin-left:auto;margin-right:auto;overflow:visible}.wrapOverflow-2FHnhKaN-{overflow:hidden;width:100%}.scrollWrap-nAnkzkWd-{position:relative;width:100%;height:100%;overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch}.scrollWrap-nAnkzkWd-::-webkit-scrollbar{width:5px;height:5px}.scrollWrap-nAnkzkWd-::-webkit-scrollbar-thumb{border:1px solid;border-color:#f1f3f6;border-radius:3px;background-color:#9db2bd}html.theme-dark .scrollWrap-nAnkzkWd-::-webkit-scrollbar-thumb{background-color:#363c4e;border-color:#1c2030}.scrollWrap-nAnkzkWd-::-webkit-scrollbar-track{background-color:transparent;border-radius:3px}.scrollWrap-nAnkzkWd-.noScrollBar-34JzryqI-{padding-bottom:100px;margin-bottom:-100px;-ms-overflow-style:none}.scrollWrap-nAnkzkWd-.noScrollBar-34JzryqI-.sb-scrollbar-wrap{display:none}.scrollWrap-nAnkzkWd-.noScrollBar-34JzryqI-::-webkit-scrollbar{display:none;width:0;height:0}.scrollWrap-nAnkzkWd-.noScrollBar-34JzryqI-::-webkit-scrollbar-thumb,.scrollWrap-nAnkzkWd-.noScrollBar-34JzryqI-::-webkit-scrollbar-track{display:none}.icon-1nfNqIRh-{display:block;transition:transform 60ms ease}.scrollLeft-2cl_k1e7-,.scrollRight-2SEqCpTf-{display:flex;position:absolute;top:0;height:100%;width:24px;background-color:rgba(38,43,62,.7);color:#fff;transition:background-color .35s ease,transform .11666667s cubic-bezier(.55,.055,.675,.19);flex-direction:column;justify-content:center;align-items:center}.scrollLeft-2cl_k1e7-:active,.scrollRight-2SEqCpTf-:active{transition:background-color 58.33333ms ease,transform .11666667s cubic-bezier(.215,.61,.355,1)}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){.scrollLeft-2cl_k1e7-:hover,.scrollRight-2SEqCpTf-:hover{transition:background-color 58.33333ms ease,transform .11666667s cubic-bezier(.215,.61,.355,1)}}.scrollLeft-2cl_k1e7-:active .icon-1nfNqIRh-,.scrollRight-2SEqCpTf-:active .icon-1nfNqIRh-{transform:translateY(1px)}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){.scrollLeft-2cl_k1e7-:hover .icon-1nfNqIRh-,.scrollRight-2SEqCpTf-:hover .icon-1nfNqIRh-{transform:translateY(1px)}}.scrollLeft-2cl_k1e7-.isVisible-Stm3XOHb-,.scrollRight-2SEqCpTf-.isVisible-Stm3XOHb-{transform:translateX(0);transition-timing-function:cubic-bezier(.215,.61,.355,1)}.scrollLeft-2cl_k1e7-{left:0;transform:translateX(-100%)}.scrollLeft-2cl_k1e7- .iconWrap-1E4GEP7h-{transform:rotate(90deg)}.scrollRight-2SEqCpTf-{right:0;transform:translateX(100%)}.scrollRight-2SEqCpTf- .iconWrap-1E4GEP7h-{transform:rotate(-90deg)}.fadeLeft-244lj3pA-,.fadeRight-1JnS42hI-{position:absolute;pointer-events:none;width:50px;height:100%;top:0}.fadeLeft-244lj3pA-.isVisible-Stm3XOHb-,.fadeRight-1JnS42hI-.isVisible-Stm3XOHb-{transform:translateX(0);transition-timing-function:cubic-bezier(.215,.61,.355,1)}.fadeLeft-244lj3pA-{left:0;background-image:linear-gradient(270deg,hsla(0,0%,100%,0),#fff);transform:translateX(-100%)}html.theme-dark .fadeLeft-244lj3pA-{background-image:linear-gradient(270deg,rgba(19,23,34,0),#131722)}.fadeRight-1JnS42hI-{right:0;background-image:linear-gradient(90deg,hsla(0,0%,100%,0),#fff);transform:translateX(100%)}html.theme-dark .fadeRight-1JnS42hI-{background-image:linear-gradient(90deg,rgba(19,23,34,0),#131722)} \ No newline at end of file diff --git a/public/charting_library/static/bundles/38.4073381c29c4e2bc2209.rtl.css b/public/charting_library/static/bundles/38.4073381c29c4e2bc2209.rtl.css new file mode 100644 index 0000000..43d285f --- /dev/null +++ b/public/charting_library/static/bundles/38.4073381c29c4e2bc2209.rtl.css @@ -0,0 +1 @@ +.wrap-5DN0XnS4-{position:relative;direction:rtl;width:100%;height:100%;overflow:hidden}.wrap-5DN0XnS4- svg{display:block}.wrapWithArrowsOuting-1OPNi0IP-{width:calc(100% - 40px);margin-right:auto;margin-left:auto;overflow:visible}.wrapOverflow-2FHnhKaN-{overflow:hidden;width:100%}.scrollWrap-nAnkzkWd-{position:relative;width:100%;height:100%;overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch}.scrollWrap-nAnkzkWd-::-webkit-scrollbar{width:5px;height:5px}.scrollWrap-nAnkzkWd-::-webkit-scrollbar-thumb{border:1px solid;border-color:#f1f3f6;border-radius:3px;background-color:#9db2bd}html.theme-dark .scrollWrap-nAnkzkWd-::-webkit-scrollbar-thumb{background-color:#363c4e;border-color:#1c2030}.scrollWrap-nAnkzkWd-::-webkit-scrollbar-track{background-color:transparent;border-radius:3px}.scrollWrap-nAnkzkWd-.noScrollBar-34JzryqI-{padding-bottom:100px;margin-bottom:-100px;-ms-overflow-style:none}.scrollWrap-nAnkzkWd-.noScrollBar-34JzryqI-.sb-scrollbar-wrap{display:none}.scrollWrap-nAnkzkWd-.noScrollBar-34JzryqI-::-webkit-scrollbar{display:none;width:0;height:0}.scrollWrap-nAnkzkWd-.noScrollBar-34JzryqI-::-webkit-scrollbar-thumb,.scrollWrap-nAnkzkWd-.noScrollBar-34JzryqI-::-webkit-scrollbar-track{display:none}.icon-1nfNqIRh-{display:block;transition:transform 60ms ease}.scrollLeft-2cl_k1e7-,.scrollRight-2SEqCpTf-{display:flex;position:absolute;top:0;height:100%;width:24px;background-color:rgba(38,43,62,.7);color:#fff;transition:background-color .35s ease,transform .11666667s cubic-bezier(.55,.055,.675,.19);flex-direction:column;justify-content:center;align-items:center}.scrollLeft-2cl_k1e7-:active,.scrollRight-2SEqCpTf-:active{transition:background-color 58.33333ms ease,transform .11666667s cubic-bezier(.215,.61,.355,1)}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){.scrollLeft-2cl_k1e7-:hover,.scrollRight-2SEqCpTf-:hover{transition:background-color 58.33333ms ease,transform .11666667s cubic-bezier(.215,.61,.355,1)}}.scrollLeft-2cl_k1e7-:active .icon-1nfNqIRh-,.scrollRight-2SEqCpTf-:active .icon-1nfNqIRh-{transform:translateY(1px)}@media (any-hover:hover),(min--moz-device-pixel-ratio:0),(min-width:0\0){.scrollLeft-2cl_k1e7-:hover .icon-1nfNqIRh-,.scrollRight-2SEqCpTf-:hover .icon-1nfNqIRh-{transform:translateY(1px)}}.scrollLeft-2cl_k1e7-.isVisible-Stm3XOHb-,.scrollRight-2SEqCpTf-.isVisible-Stm3XOHb-{transform:translateX(0);transition-timing-function:cubic-bezier(.215,.61,.355,1)}.scrollLeft-2cl_k1e7-{left:0;transform:translateX(-100%)}.scrollLeft-2cl_k1e7- .iconWrap-1E4GEP7h-{transform:rotate(90deg)}.scrollRight-2SEqCpTf-{right:0;transform:translateX(100%)}.scrollRight-2SEqCpTf- .iconWrap-1E4GEP7h-{transform:rotate(-90deg)}.fadeLeft-244lj3pA-,.fadeRight-1JnS42hI-{position:absolute;pointer-events:none;width:50px;height:100%;top:0}.fadeLeft-244lj3pA-.isVisible-Stm3XOHb-,.fadeRight-1JnS42hI-.isVisible-Stm3XOHb-{transform:translateX(0);transition-timing-function:cubic-bezier(.215,.61,.355,1)}.fadeLeft-244lj3pA-{right:0;background-image:linear-gradient(90deg,hsla(0,0%,100%,0),#fff);transform:translateX(100%)}html.theme-dark .fadeLeft-244lj3pA-{background-image:linear-gradient(90deg,rgba(19,23,34,0),#131722)}.fadeRight-1JnS42hI-{left:0;background-image:linear-gradient(270deg,hsla(0,0%,100%,0),#fff);transform:translateX(-100%)}html.theme-dark .fadeRight-1JnS42hI-{background-image:linear-gradient(270deg,rgba(19,23,34,0),#131722)} \ No newline at end of file diff --git a/public/charting_library/static/bundles/38.9ae2eea9402c30aa3046.js b/public/charting_library/static/bundles/38.9ae2eea9402c30aa3046.js new file mode 100644 index 0000000..2bf9df0 --- /dev/null +++ b/public/charting_library/static/bundles/38.9ae2eea9402c30aa3046.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[38],[]]); \ No newline at end of file diff --git a/public/charting_library/static/bundles/39.5f64b4bc2e263edfbf6e.css b/public/charting_library/static/bundles/39.5f64b4bc2e263edfbf6e.css new file mode 100644 index 0000000..3efdd28 --- /dev/null +++ b/public/charting_library/static/bundles/39.5f64b4bc2e263edfbf6e.css @@ -0,0 +1 @@ +.tabs-1LGqoVz6-{display:flex;position:relative;width:100%}.tab-1Yr0rq0J-{flex:1 1;padding:13px 0;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;text-align:center;border-bottom:1px solid;border-color:#e1ecf2;transition:color .35s ease;color:#131722}html.theme-dark .tab-1Yr0rq0J-{color:#b2b5be;border-color:#363c4e}.tab-1Yr0rq0J-.noBorder-oc3HwerO-{border-bottom:0}.tab-1Yr0rq0J-.disabled-s8cEYElA-{color:#eceff2}.tab-1Yr0rq0J-.active-37sipdzm-{color:#2196f3}html.theme-dark .tab-1Yr0rq0J-.active-37sipdzm-{color:#1976d2}.defaultCursor-Np9BHjTg-{cursor:default}.slider-1-X4lOmE-{position:absolute;bottom:0;left:0;height:3px;background-color:#2196f3;transition-timing-function:cubic-bezier(.215,.61,.355,1)}html.theme-dark .slider-1-X4lOmE-{background-color:#1976d2}.content-2asssfGq-{width:100%} \ No newline at end of file diff --git a/public/charting_library/static/bundles/39.5f64b4bc2e263edfbf6e.rtl.css b/public/charting_library/static/bundles/39.5f64b4bc2e263edfbf6e.rtl.css new file mode 100644 index 0000000..3efdd28 --- /dev/null +++ b/public/charting_library/static/bundles/39.5f64b4bc2e263edfbf6e.rtl.css @@ -0,0 +1 @@ +.tabs-1LGqoVz6-{display:flex;position:relative;width:100%}.tab-1Yr0rq0J-{flex:1 1;padding:13px 0;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;text-align:center;border-bottom:1px solid;border-color:#e1ecf2;transition:color .35s ease;color:#131722}html.theme-dark .tab-1Yr0rq0J-{color:#b2b5be;border-color:#363c4e}.tab-1Yr0rq0J-.noBorder-oc3HwerO-{border-bottom:0}.tab-1Yr0rq0J-.disabled-s8cEYElA-{color:#eceff2}.tab-1Yr0rq0J-.active-37sipdzm-{color:#2196f3}html.theme-dark .tab-1Yr0rq0J-.active-37sipdzm-{color:#1976d2}.defaultCursor-Np9BHjTg-{cursor:default}.slider-1-X4lOmE-{position:absolute;bottom:0;left:0;height:3px;background-color:#2196f3;transition-timing-function:cubic-bezier(.215,.61,.355,1)}html.theme-dark .slider-1-X4lOmE-{background-color:#1976d2}.content-2asssfGq-{width:100%} \ No newline at end of file diff --git a/public/charting_library/static/bundles/39.7e524b82ef9947f0f19f.js b/public/charting_library/static/bundles/39.7e524b82ef9947f0f19f.js new file mode 100644 index 0000000..bcd80d7 --- /dev/null +++ b/public/charting_library/static/bundles/39.7e524b82ef9947f0f19f.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[39],[]]); \ No newline at end of file diff --git a/public/charting_library/static/bundles/4.80bf1a925965757be6d4.js b/public/charting_library/static/bundles/4.80bf1a925965757be6d4.js new file mode 100644 index 0000000..9261d87 --- /dev/null +++ b/public/charting_library/static/bundles/4.80bf1a925965757be6d4.js @@ -0,0 +1,4 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[4],{"56W2":function(e,t,s){(function(t){var s;s=void 0!==t?t:this,e.exports=function(e){if(e.CSS&&e.CSS.escape)return e.CSS.escape;var t=function(e){var t,s,n,i,o,l;if(0==arguments.length)throw new TypeError("`CSS.escape` requires an argument.");for(t=String(e),s=t.length,n=-1,o="",l=t.charCodeAt(0);++n=1&&i<=31||127==i||0==n&&i>=48&&i<=57||1==n&&i>=48&&i<=57&&45==l?"\\"+i.toString(16)+" ":0==n&&1==s&&45==i||!(i>=128||45==i||95==i||i>=48&&i<=57||i>=65&&i<=90||i>=97&&i<=122)?"\\"+t.charAt(n):t.charAt(n):o+="�";return o};return e.CSS||(e.CSS={}),e.CSS.escape=t,t}(s)}).call(this,s("yLpj"))},Gs9W:function(e,t,s){},jgM0:function(e,t,s){"use strict";var n=s("56W2");s("Gs9W"),function(e,t){function s(){this._state=[],this._defaults={classHolder:"sbHolder",classHolderDisabled:"sbHolderDisabled",classHolderOpen:"sbHolderOpen",classSelector:"sbSelector",classOptions:"sbOptions",classGroup:"sbGroup",classSub:"sbSub",classDisabled:"sbDisabled",classToggleOpen:"sbToggleOpen",classToggle:"sbToggle",classSeparator:"sbSeparator",useCustomPrependWithSelector:"",customPrependSelectorClass:"",speed:200,slidesUp:!1,effect:"slide",onChange:null,beforeOpen:null,onOpen:null,onClose:null}}function i(t,s,n,i){function o(){s.removeClass(t.settings.customPrependSelectorClass),t._lastSelectorPrepend&&(t._lastSelectorPrepend.remove(),delete t._lastSelectorPrepend),n.data("custom-option-prepend")&&(t.settings.customPrependSelectorClass&&s.addClass(t.settings.customPrependSelectorClass),t._lastSelectorPrepend=e(n.data("custom-option-prepend")).clone(),s[t.settings.useCustomPrependWithSelector](t._lastSelectorPrepend))}t.settings.useCustomPrependWithSelector&&(i?t._onAttachCallback=o:o())}e.extend(s.prototype,{_refreshSelectbox:function(e,t){if(!e)return!1;var s=this._getInst(e);return null!=s&&(this._fillList(e,s,t),!0)},_isOpenSelectbox:function(e){return!!e&&this._getInst(e).isOpen},_isDisabledSelectbox:function(e){return!!e&&this._getInst(e).isDisabled},_attachSelectbox:function(t,s){function i(){var t,s=this.attr("id").split("_")[1];for(t in a._state)t!==s&&a._state.hasOwnProperty(t)&&e(":input[sb='"+t+"']")[0]&&a._closeSelectbox(e(":input[sb='"+t+"']")[0])}function o(s){l.children().each(function(n){var i;if(e(this).is(":selected")){if(38==s&&n>0)return i=e(l.children()[n-1]),a._changeSelectbox(t,i.val(),i.text()),!1;if(40==s&&n",{id:"sbHolder_"+c.uid,class:c.settings.classHolder}),(b=l.data("selectbox-css"))&&d.css(b),r=e("",{id:"sbSelector_"+c.uid,href:"#",class:c.settings.classSelector,click:function(s){s.preventDefault(),s.stopPropagation(),i.apply(e(this),[]);var n=e(this).attr("id").split("_")[1] +;a._state[n]?a._closeSelectbox(t):(a._openSelectbox(t),p.focus())},keyup:function(e){o(e.keyCode)}}),p=e("",{id:"sbToggle_"+c.uid,href:"#",class:c.settings.classToggle,click:function(s){s.preventDefault(),s.stopPropagation(),i.apply(e(this),[]);var n=e(this).attr("id").split("_")[1];a._state[n]?a._closeSelectbox(t):(a._openSelectbox(t),p.focus())},keyup:function(e){o(e.keyCode)}}),e('
').appendTo(p),p.appendTo(d),u=e("
").appendTo(t),i=$("").appendTo(this._table),$('").appendTo(this._table),$('").appendTo(this._table),$("
"),$("
").appendTo(e);return $('').appendTo(i)},r.prototype._labelToId=function(t){return"control"+t.replace(/(^| )\w/g,function(t){return"-"+t.trim().toLowerCase()})+Math.floor(1e3*Math.random())},r.prototype.addRow=function(t){return $(document.createElement("tr")).appendTo(t)},r.prototype.addLabeledRow=function(t,e,i,r){var n,s=e&&e.length>0?$.t(e):"",a=$(document.createElement("tr")),l=$(document.createElement("td")).html(s);return r&&(r=parseInt(r),V(r)&&(r=2),l.attr("colspan",r)),i&&(n=this._labelToId(e),i.attr("id",n),l.html(o(s,n))),a.append(l).appendTo(t)},r.prototype.addEditorRow=function(t,e,i,o){var r=$(document.createElement("td"));return i.row=this.addLabeledRow(t,e,i,o),i.appendTo(r.appendTo(i.row)),i},r.prototype.addColorPickerRow=function(t,e){return this.addEditorRow(t,e,this.createColorPicker())},r.prototype.addOffsetEditorRow=function(t,e){var i=$("");return i.attr("type","text"),i.css("width","100px"),i.addClass("ticker"),this.addEditorRow(t,e,i)},r.prototype.addFontEditorRow=function(t,e){return this.addEditorRow(t,e,this.createFontEditor())},r.prototype.refreshStateControls=function(t,e,i){var o,r,n;for(o=0;o0&&(i=e[0],this._control.selectbox("change",i.value,i.text))}catch(t){}},f.prototype.propertyChanged=function(t){var e=t.value();"function"==typeof this._propertyChangedHook&&(e=this._propertyChangedHook(e)),this.setValue(e)},inherit(v,H),v.prototype.value=function(){return this._property.value()},v.prototype.setValue=function(t){return this._control.html(t) +},inherit(g,H),g.prototype.value=function(){return this.control().is(":checked")},g.prototype.setValue=function(t){var e,i,o,r;return this.control().is(".visibility-checker")&&(t?(this.control().closest("tr").find(".slider-range").slider("enable"),this.control().closest("tr").find('input[type="text"]').each(function(){$(this).prop("disabled",!1)})):(this.control().closest("tr").find(".slider-range").slider("disable"),this.control().closest("tr").find('input[type="text"]').each(function(){$(this).prop("disabled",!0)}))),this.control().is(".visibility-switch")&&(e={opacity:t?1:.5},i=t?"enable":"disable",(o=this.control().data("hides"))?o.closest("td").css(e):(r=this.control()).parent().parent().data("visible",t).find("td").filter(function(){var t=$(this);return!t.find("label").length&&t.find(":checkbox").attr("id")!==r.attr("id")}).each(function(){var o=$(this),r=o.children();r.each(function(){var r=$(this);r.is(".ui-slider")?r.slider(i):r.is("select")?(r.selectbox(i),o.css(e)):r.is(".custom-select")?(r.data(i)(),o.css(e)):r.is(".tvcolorpicker-container")?(r.find("input").prop("disabled",!t),o.css(e)):(r.prop("disabled",!t),o.css(e))})})),this.control().attr("checked",!!t)},g.prototype.destroy=function(){H.prototype.destroy.call(this),this._control.off("change")},inherit(_,H),_.prototype.value=function(){return this.control().is(":disabled")},_.prototype.setValue=function(t){return t=Boolean(t),this._inverted&&(t=!t),this.control().parents("label").toggleClass("disabled",t),this.control().attr("disabled",t)},inherit(m,H),m.prototype.value=function(){return this.control().hasClass("active")},m.prototype.setValue=function(t){return this.control().toggleClass("active",!!t)},inherit(b,H),b.prototype.applyOldTransparency=function(){var t,e,i;this.transparencyProperty()&&(R.isHexColor(this.property().value())?(t=this.transparencyProperty().value?this.transparencyProperty().value():this.transparencyProperty(),e=O(this.property().value()),i=(100-t)/100,this.control().val(P(E(e,i)))):this.control().val(this.property().value()),this.control().change())},b.prototype.transparencyProperty=function(){return this._transparencyProperty},b.prototype.value=function(){return this._control.val()},b.prototype.setValue=function(t){this._control.val(t),this._control.change(),this._control.color&&this._control.color.fromString(t)},inherit(y,H),y.prototype.value=function(){return this._control.slider("option","value")},y.prototype.setValue=function(t){this._control.slider("option","value",t)},C.prototype._attachToControl=function(t){var e=this;this._wv.subscribe(this._setValueBinded,{callWithLast:!0}),$(this._control).on("change",function(){e.setValueToProperty(e.value())})},C.prototype.control=function(){return this._control},C.prototype.value=function(){var t=$(this._control).val();return this._transformFunction&&(t=this._transformFunction(t)),t},C.prototype.setValue=function(t){$(this._control).val(t)},C.prototype.setValueToProperty=function(t){this._undoModel.undoHistory.setWatchedValue(this._wv,t,this._undoText)}, +C.prototype.watchedValue=function(){return this._wv},C.prototype.destroy=function(){this._wv.unsubscribe(this._setValueBinded)},inherit(T,C),T.prototype._attachToControl=function(t){var e=this;this._wv.subscribe(this.setValue.bind(this),{callWithLast:!0}),$(this._control).on("click",function(){e.setValueToProperty(e.value())})},T.prototype.value=function(){var t=$(this._control).attr("checked");return this._not&&(t=!t),this._transformFunction&&(t=this._transformFunction(t)),t},T.prototype.setValue=function(t){this._not&&(t=!t),$(this._control).attr("checked",!!t)},k.prototype.properties=function(){return this._properties},k.prototype.value=function(t){return this._control.slider("values",t)},k.prototype.setValue=function(t,e){void 0===e&&(t===this._propFrom&&(e=0),t===this._propTo&&(e=1)),this._control.slider("values",e,t.value()),this._inputsText&&$(this._inputsText[e]).val(t.value())},k.prototype.propertyChanged=function(t){this.setValue(t)},k.prototype.setValueToProperty=function(t,e){($(e).hasClass("from")||"from"===e)&&(this._undoModel.beginUndoMacro(this._undoText[0]),this._undoModel.setProperty(this._propFrom,t[0],this._undoText[0]),this._propFrom.setValue(t[0],0),this._undoModel.endUndoMacro()),($(e).hasClass("to")||"to"===e)&&(this._undoModel.beginUndoMacro(this._undoText[1]),this._undoModel.setProperty(this._propTo,t[1],this._undoText[1]),this._propTo.setValue(t[1],1),this._undoModel.endUndoMacro())},k.prototype.destroy=function(){this._propFrom&&this._propTo&&(this._propFrom.listeners().unsubscribe(this,H.prototype.propertyChanged),this._propTo.listeners().unsubscribe(this,H.prototype.propertyChanged))},inherit(w,H),w.prototype.value=function(){var t=[];return this._control.each(function(){var e=$(this);e.is(":checked")&&t.push(e.attr("value"))}),t.join(this._separator)},w.prototype.setValue=function(t){var e=t.split(this._separator).filter(Boolean);this._control.each(function(){var t=$(this),i=-1!==e.indexOf(t.attr("value"));t.attr("checked",i),t.parents("label").toggleClass("active",i)})},e.PropertyPage=r,e.UppercaseTransformer=function(t){return t.toUpperCase()},e.GreateTransformer=n,e.LessTransformer=s,e.ToIntTransformer=a,e.ToFloatTransformer=l,e.ToFloatTransformerWithDynamicDefaultValue=function(t){var e=new I;return function(i){var o=e.parse(i);return V(o)?t():o}},e.ToFloatLimitedPrecisionTransformer=function(t,e){var i=new D(e);return function(e){var o=i.format(e);return V(o)?t:o}},e.ToAsciiTransformer=function(){return function(t){for(var e=t,i=t.replace(/[^\u0000-\u007F]/,"");i.length!==e.length;)i=(e=i).replace(/[^\u0000-\u007F]/,"");return i}},e.ReplaceEmptyTransformer=function(t){return function(e){return 0===e.length?t:e}},e.SymbolInfoSymbolTransformer=function(t,e){return function(i){var o=t();return i===e.value()&&o&&(o.ticker||o.full_name)?o.ticker||o.full_name:i}},e.SimpleStringBinder=c,e.FloatBinder=u,e.SessionBinder=h,e.BarTimeBinder=p,e.SymbolBinder=d,e.SimpleComboBinder=f,e.StaticContentBinder=v,e.BooleanBinder=g,e.DisabledBinder=_,e.ColorBinding=b,e.SliderBinder=y, +e.CheckboxWVBinding=T,e.RangeBinder=k,e.generateLabelElementStr=o}).call(this,i("tc+8"))},QBwY:function(t,e,i){var o,r,n;r=[i("P5fv"),i("iGnl"),i("vBzC"),i("Qwlt"),i("MIQu")],void 0===(n="function"==typeof(o=function(t){return t.widget("ui.slider",t.ui.mouse,{version:"1.12.1",widgetEventPrefix:"slide",options:{animate:!1,classes:{"ui-slider":"ui-corner-all","ui-slider-handle":"ui-corner-all","ui-slider-range":"ui-corner-all ui-widget-header"},distance:0,max:100,min:0,orientation:"horizontal",range:!1,step:1,value:0,values:null,change:null,slide:null,start:null,stop:null},numPages:5,_create:function(){this._keySliding=!1,this._mouseSliding=!1,this._animateOff=!0,this._handleIndex=null,this._detectOrientation(),this._mouseInit(),this._calculateNewMax(),this._addClass("ui-slider ui-slider-"+this.orientation,"ui-widget ui-widget-content"),this._refresh(),this._animateOff=!1},_refresh:function(){this._createRange(),this._createHandles(),this._setupEvents(),this._refreshValue()},_createHandles:function(){var e,i,o=this.options,r=this.element.find(".ui-slider-handle"),n=[];for(i=o.values&&o.values.length||1,r.length>i&&(r.slice(i).remove(),r=r.slice(0,i)),e=r.length;e");this.handles=r.add(t(n.join("")).appendTo(this.element)),this._addClass(this.handles,"ui-slider-handle","ui-state-default"),this.handle=this.handles.eq(0),this.handles.each(function(e){t(this).data("ui-slider-handle-index",e).attr("tabIndex",0)})},_createRange:function(){var e=this.options;e.range?(!0===e.range&&(e.values?e.values.length&&2!==e.values.length?e.values=[e.values[0],e.values[0]]:t.isArray(e.values)&&(e.values=e.values.slice(0)):e.values=[this._valueMin(),this._valueMin()]),this.range&&this.range.length?(this._removeClass(this.range,"ui-slider-range-min ui-slider-range-max"),this.range.css({left:"",bottom:""})):(this.range=t("
").appendTo(this.element),this._addClass(this.range,"ui-slider-range")),"min"!==e.range&&"max"!==e.range||this._addClass(this.range,"ui-slider-range-"+e.range)):(this.range&&this.range.remove(),this.range=null)},_setupEvents:function(){this._off(this.handles),this._on(this.handles,this._handleEvents),this._hoverable(this.handles),this._focusable(this.handles)},_destroy:function(){this.handles.remove(),this.range&&this.range.remove(),this._mouseDestroy()},_mouseCapture:function(e){var i,o,r,n,s,a,l,c=this,u=this.options;return!u.disabled&&(this.elementSize={width:this.element.outerWidth(),height:this.element.outerHeight()},this.elementOffset=this.element.offset(),i={x:e.pageX,y:e.pageY},o=this._normValueFromMouse(i),r=this._valueMax()-this._valueMin()+1,this.handles.each(function(e){var i=Math.abs(o-c.values(e));(r>i||r===i&&(e===c._lastChangedValue||c.values(e)===u.min))&&(r=i,n=t(this),s=e)}),!1!==this._start(e,s)&&(this._mouseSliding=!0,this._handleIndex=s,this._addClass(n,null,"ui-state-active"),n.trigger("focus"),a=n.offset(),l=!t(e.target).parents().addBack().is(".ui-slider-handle"),this._clickOffset=l?{left:0,top:0}:{left:e.pageX-a.left-n.width()/2, +top:e.pageY-a.top-n.height()/2-(parseInt(n.css("borderTopWidth"),10)||0)-(parseInt(n.css("borderBottomWidth"),10)||0)+(parseInt(n.css("marginTop"),10)||0)},this.handles.hasClass("ui-state-hover")||this._slide(e,s,o),this._animateOff=!0,!0))},_mouseStart:function(){return!0},_mouseDrag:function(t){var e={x:t.pageX,y:t.pageY},i=this._normValueFromMouse(e);return this._slide(t,this._handleIndex,i),!1},_mouseStop:function(t){return this._removeClass(this.handles,null,"ui-state-active"),this._mouseSliding=!1,this._stop(t,this._handleIndex),this._change(t,this._handleIndex),this._handleIndex=null,this._clickOffset=null,this._animateOff=!1,!1},_detectOrientation:function(){this.orientation="vertical"===this.options.orientation?"vertical":"horizontal"},_normValueFromMouse:function(t){var e,i,o,r,n;return"horizontal"===this.orientation?(e=this.elementSize.width,i=t.x-this.elementOffset.left-(this._clickOffset?this._clickOffset.left:0)):(e=this.elementSize.height,i=t.y-this.elementOffset.top-(this._clickOffset?this._clickOffset.top:0)),(o=i/e)>1&&(o=1),o<0&&(o=0),"vertical"===this.orientation&&(o=1-o),r=this._valueMax()-this._valueMin(),n=this._valueMin()+o*r,this._trimAlignValue(n)},_uiHash:function(t,e,i){var o={handle:this.handles[t],handleIndex:t,value:void 0!==e?e:this.value()};return this._hasMultipleValues()&&(o.value=void 0!==e?e:this.values(t),o.values=i||this.values()),o},_hasMultipleValues:function(){return this.options.values&&this.options.values.length},_start:function(t,e){return this._trigger("start",t,this._uiHash(e))},_slide:function(t,e,i){var o,r=this.value(),n=this.values();this._hasMultipleValues()&&(o=this.values(e?0:1),r=this.values(e),2===this.options.values.length&&!0===this.options.range&&(i=0===e?Math.min(o,i):Math.max(o,i)),n[e]=i),i!==r&&!1!==this._trigger("slide",t,this._uiHash(e,i,n))&&(this._hasMultipleValues()?this.values(e,i):this.value(i))},_stop:function(t,e){this._trigger("stop",t,this._uiHash(e))},_change:function(t,e){this._keySliding||this._mouseSliding||(this._lastChangedValue=e,this._trigger("change",t,this._uiHash(e)))},value:function(t){return arguments.length?(this.options.value=this._trimAlignValue(t),this._refreshValue(),void this._change(null,0)):this._value()},values:function(e,i){var o,r,n;if(arguments.length>1)return this.options.values[e]=this._trimAlignValue(i),this._refreshValue(),void this._change(null,e);if(!arguments.length)return this._values();if(!t.isArray(arguments[0]))return this._hasMultipleValues()?this._values(e):this.value();for(o=this.options.values,r=arguments[0],n=0;n=0;o--)this._change(null,o);this._animateOff=!1;break;case"step":case"min":case"max":this._animateOff=!0,this._calculateNewMax(),this._refreshValue(),this._animateOff=!1;break;case"range":this._animateOff=!0,this._refresh(),this._animateOff=!1}},_setOptionDisabled:function(t){this._super(t),this._toggleClass(null,"ui-state-disabled",!!t)},_value:function(){var t=this.options.value;return t=this._trimAlignValue(t)},_values:function(t){var e,i,o;if(arguments.length)return e=this.options.values[t],e=this._trimAlignValue(e);if(this._hasMultipleValues()){for(i=this.options.values.slice(),o=0;o=this._valueMax())return this._valueMax();var e=this.options.step>0?this.options.step:1,i=(t-this._valueMin())%e,o=t-i;return 2*Math.abs(i)>=e&&(o+=i>0?e:-e),parseFloat(o.toFixed(5))},_calculateNewMax:function(){var t=this.options.max,e=this._valueMin(),i=this.options.step,o=Math.round((t-e)/i)*i;(t=o+e)>this.options.max&&(t-=i),this.max=parseFloat(t.toFixed(this._precision()))},_precision:function(){var t=this._precisionOf(this.options.step);return null!==this.options.min&&(t=Math.max(t,this._precisionOf(this.options.min))),t},_precisionOf:function(t){var e=t.toString(),i=e.indexOf(".");return-1===i?0:e.length-i-1},_valueMin:function(){return this.options.min},_valueMax:function(){return this.max},_refreshRange:function(t){"vertical"===t&&this.range.css({width:"",left:""}),"horizontal"===t&&this.range.css({height:"",bottom:""})},_refreshValue:function(){var e,i,o,r,n,s=this.options.range,a=this.options,l=this,c=!this._animateOff&&a.animate,u={};this._hasMultipleValues()?this.handles.each(function(o){i=(l.values(o)-l._valueMin())/(l._valueMax()-l._valueMin())*100,u["horizontal"===l.orientation?"left":"bottom"]=i+"%",t(this).stop(1,1)[c?"animate":"css"](u,a.animate),!0===l.options.range&&("horizontal"===l.orientation?(0===o&&l.range.stop(1,1)[c?"animate":"css"]({left:i+"%"},a.animate),1===o&&l.range[c?"animate":"css"]({width:i-e+"%"},{queue:!1,duration:a.animate})):(0===o&&l.range.stop(1,1)[c?"animate":"css"]({bottom:i+"%"},a.animate),1===o&&l.range[c?"animate":"css"]({height:i-e+"%"},{queue:!1,duration:a.animate}))),e=i}):(o=this.value(),r=this._valueMin(),n=this._valueMax(),i=n!==r?(o-r)/(n-r)*100:0,u["horizontal"===this.orientation?"left":"bottom"]=i+"%",this.handle.stop(1,1)[c?"animate":"css"](u,a.animate),"min"===s&&"horizontal"===this.orientation&&this.range.stop(1,1)[c?"animate":"css"]({width:i+"%"},a.animate),"max"===s&&"horizontal"===this.orientation&&this.range.stop(1,1)[c?"animate":"css"]({ +width:100-i+"%"},a.animate),"min"===s&&"vertical"===this.orientation&&this.range.stop(1,1)[c?"animate":"css"]({height:i+"%"},a.animate),"max"===s&&"vertical"===this.orientation&&this.range.stop(1,1)[c?"animate":"css"]({height:100-i+"%"},a.animate))},_handleEvents:{keydown:function(e){var i,o,r,n=t(e.target).data("ui-slider-handle-index");switch(e.keyCode){case t.ui.keyCode.HOME:case t.ui.keyCode.END:case t.ui.keyCode.PAGE_UP:case t.ui.keyCode.PAGE_DOWN:case t.ui.keyCode.UP:case t.ui.keyCode.RIGHT:case t.ui.keyCode.DOWN:case t.ui.keyCode.LEFT:if(e.preventDefault(),!this._keySliding&&(this._keySliding=!0,this._addClass(t(e.target),null,"ui-state-active"),!1===this._start(e,n)))return}switch(r=this.options.step,i=o=this._hasMultipleValues()?this.values(n):this.value(),e.keyCode){case t.ui.keyCode.HOME:o=this._valueMin();break;case t.ui.keyCode.END:o=this._valueMax();break;case t.ui.keyCode.PAGE_UP:o=this._trimAlignValue(i+(this._valueMax()-this._valueMin())/this.numPages);break;case t.ui.keyCode.PAGE_DOWN:o=this._trimAlignValue(i-(this._valueMax()-this._valueMin())/this.numPages);break;case t.ui.keyCode.UP:case t.ui.keyCode.RIGHT:if(i===this._valueMax())return;o=this._trimAlignValue(i+r);break;case t.ui.keyCode.DOWN:case t.ui.keyCode.LEFT:if(i===this._valueMin())return;o=this._trimAlignValue(i-r)}this._slide(e,n,o)},keyup:function(e){var i=t(e.target).data("ui-slider-handle-index");this._keySliding&&(this._keySliding=!1,this._stop(e,i),this._change(e,i),this._removeClass(t(e.target),null,"ui-state-active"))}}})})?o.apply(e,r):o)||(t.exports=n)},"Y+MS":function(t,e,i){"use strict";var o=function(){function t(t,e){this.mouseFlag=!1,this.accuracy=2,this.value=1,this.colorInput=t,this.$el=$('
',t.prop("ownerDocument")),e&&this.$el.hide(),this.$gradient=$('
').appendTo(this.$el),this.$roller=$('').appendTo(this.$gradient)}return t.prototype.calculateRollerPosition=function(t){var e=t.pageX,i=this.$gradient.offset().left,o=e-i,r=this.$gradient.width();return o>r?100:o<0?0:~~(o/r*100)},t.prototype.toRgb=function(t){var e;return~t.indexOf("#")?t:(e=t.match(/[0-9.]+/g))?"rgb("+e.slice(0,3).join(", ")+")":"rgb(127, 127, 127)"},t.prototype.setValue=function(t){this.value=1!==t?t.toFixed(this.accuracy):t},t.prototype.updateRoller=function(){this.$roller.css("left",100-100*this.value+"%")},t.prototype.rollerMoveHandler=function(t){if(this.mouseFlag){var e=this.calculateRollerPosition(t);this.setValue((100-e)/100),$(this).trigger("change",[this.val()]),this.$roller.css("left",e+"%")}t.preventDefault()},t.prototype.mouseupHandler=function(t){this.mouseFlag&&(this.mouseFlag=!1,$(this).trigger("afterChange",[this.val()]))},t.prototype.initEvents=function(){var t=this.$el.prop("ownerDocument"),e=function(t){return this.rollerMoveHandler(t)}.bind(this),i=function(o){return $(t).off("mousemove mouseup",e), +$(t).off("mouseup",i),this.mouseupHandler(o)}.bind(this);this.$el.on("mousedown",function(o){this.mouseFlag=!0,$(t).on("mousemove mouseup",e),$(t).on("mouseup",i),o.preventDefault()}.bind(this)),this.colorInput.on("change",function(t){this.updateColor()}.bind(this))},t.prototype.removeEvents=function(){},t.prototype.updateColor=function(){var t=this.colorInput.val()||"black",e=this.toRgb(t),i=["-moz-linear-gradient(left, %COLOR 0%, transparent 100%)","-webkit-gradient(linear, left top, right top, color-stop(0%,%COLOR), color-stop(100%,transparent))","-webkit-linear-gradient(left, %COLOR 0%,transparent 100%)","-o-linear-gradient(left, %COLOR 0%,transparent 100%)","linear-gradient(to right, %COLOR 0%,transparent 100%)"];$.browser.msie?this.$gradient.css("filter",["progid:DXImageTransform.Microsoft.gradient(startColorstr='",e,"', EndColor=0, GradientType=1)"].join("")):i.forEach(function(t){this.$gradient.css("background-image",t.replace(/%COLOR/,e))}.bind(this))},t.prototype.val=function(t){return void 0!==t&&(this.setValue(+t),this.updateRoller()),this.value},function(e,i){return new t(e,i)}}();t.exports=o},"d2+F":function(t,e,i){"use strict";var o,r,n,s,a,l,c,u,h,p,d,f,v,g,_,m;i("zNST"),i("utoz"),o=i("eJTA"),r=o.rgba,n=o.areEqualRgb,s=o.areEqualRgba,a=o.normalizeHue,l=o.normalizeHsvSaturation,c=o.normalizeValue,u=o.hsv,h=o.rgbToHsv,p=o.hsvToRgb,d=o.rgbToString,f=o.rgbaToString,v=o.parseRgb,g=o.parseRgba,_=i("Y+MS"),m=i("wmOI").ESC,function(t){function e(t){return""===t?t:f(g(t))}function i(t){t&&(t.join||(t=t?(""+t).split(","):[]),C=t)}function o(k){function w(e,i,o){var n=t(this);e=f(r(v(e),i)),$.call(this,e),n.removeData("tvcolorpicker").removeData("tvcolorpicker-custom-color"),o&&(S.call(n),n.blur())}function $(e){var i=t(this);i.val(e),i.change(),e?i.trigger("pick-color",e):i.trigger("pick-transparent"),x.call(this,e)}function x(e){""!==e?(t(this).removeClass("tvcolorpicker-gradient-widget"),t(this).css({backgroundColor:e,color:e})):t(this).addClass("tvcolorpicker-gradient-widget")}function M(e,i){var o,r,s,a,l,c,u;return i=i||{},r=(o=this).prop("ownerDocument"),s=t(o).val().toLowerCase(),a=r.createElement("table"),l=r.createElement("tbody"),a.appendChild(l),u=0,t.each(e,function(e,r){var a,h;u++,e%y==0&&(c=t("
").appendTo(l)),a=t('').appendTo(c),h=t('
').appendTo(a).find(".tvcolorpicker-swatch").data("color",r),i.addClass&&h.addClass(i.addClass),r&&(r=r.toLowerCase(),s&&n(v(s),v(r))&&h.addClass("active"),h.css({backgroundColor:r}).data("color",r),h.bind("click",function(){w.call(o,r,P.val(),!0)}))}),t(a).addClass("tvcolorpicker-table"),u?a:t()}function V(e){function i(t){var e=t.originalEvent,i=t.offsetX||t.layerX||e&&(e.offsetX||e.layerX)||0,o=t.offsetY||t.layerY||e&&(e.offsetY||e.layerY)||0;V.css({left:i+"px",top:o+"px"}),z[0]=a(i/A),z[1]=l(1-o/R),F.css({backgroundColor:d(p(u(z[0],z[1],1)))}),b()}function o(e){1==e.which&&(H=!1,j.is(".opened")&&t(W).get(0).focus())}function n(e){ +var i=function(e){var i=e.pageY,o=t(D),r=i-o.offset().top;return r>o.height()?o.height():r<0?0:r}(e);I.css({top:i+"px"}),z[2]=c(1-Math.max(0,Math.min(i,R))/R),b()}function m(e){1==e.which&&(B=!1,t(U).unbind("mouseup",m),j.is(".opened")&&t(W).get(0).focus())}function b(){var t,e;L&&(L=!1,j.find(".tvcolorpicker-swatch.active").removeClass("active")),t=r(p(z),P.val()),s(g(W.val().toUpperCase()),t)||(e=f(t),W.data("tvcolorpicker-custom-color",e),$.call(W,e))}var y,k,x,V,S,O,F,I,D,R,A,H,B,L,z,N=!1,W=t(this),U=W.prop("ownerDocument"),j=t('
'),G=t('
').appendTo(j);return G.append(M.call(this,["rgb(0, 0, 0)","rgb(66, 66, 66)","rgb(101, 101, 101)","rgb(152, 152, 152)","rgb(182, 182, 182)","rgb(203, 203, 203)","rgb(216, 216, 216)","rgb(238, 238, 238)","rgb(242, 242, 242)","rgb(255, 255, 255)"])),G.append(M.call(this,["rgb(151, 0, 0)","rgb(255, 0, 0)","rgb(255, 152, 0)","rgb(255, 255, 0)","rgb(0, 255, 0)","rgb(0, 255, 255)","rgb(73, 133, 231)","rgb(0, 0, 255)","rgb(152, 0, 255)","rgb(255, 0, 255)"])),G.append(M.call(this,["rgb(230, 184, 175)","rgb(244, 204, 204)","rgb(252, 229, 205)","rgb(255, 242, 204)","rgb(217, 234, 211)","rgb(208, 224, 227)","rgb(201, 218, 248)","rgb(207, 226, 243)","rgb(217, 210, 233)","rgb(234, 209, 220)","rgb(221, 126, 107)","rgb(234, 153, 153)","rgb(249, 203, 156)","rgb(255, 229, 153)","rgb(182, 215, 168)","rgb(162, 196, 201)","rgb(164, 194, 244)","rgb(159, 197, 232)","rgb(180, 167, 214)","rgb(213, 166, 189)","rgb(204, 65, 37)","rgb(224, 102, 102)","rgb(246, 178, 107)","rgb(255, 217, 102)","rgb(147, 196, 125)","rgb(118, 165, 175)","rgb(109, 158, 235)","rgb(111, 168, 220)","rgb(142, 124, 195)","rgb(194, 123, 160)","rgb(166, 28, 0)","rgb(204, 0, 0)","rgb(230, 145, 56)","rgb(241, 194, 50)","rgb(106, 168, 79)","rgb(69, 129, 142)","rgb(60, 120, 216)","rgb(61, 133, 198)","rgb(103, 78, 167)","rgb(166, 77, 121)","rgb(133, 32, 12)","rgb(153, 0, 0)","rgb(180, 95, 6)","rgb(191, 144, 0)","rgb(56, 118, 29)","rgb(19, 79, 92)","rgb(17, 85, 204)","rgb(11, 83, 148)","rgb(53, 28, 117)","rgb(116, 27, 71)","rgb(91, 15, 0)","rgb(102, 0, 0)","rgb(120, 63, 4)","rgb(127, 96, 0)","rgb(39, 78, 19)","rgb(12, 52, 61)","rgb(28, 69, 135)","rgb(7, 55, 99)","rgb(32, 18, 77)","rgb(76, 17, 48)"])),y=t('
').css({display:"none"}).appendTo(j),k=t('
').appendTo(y),x=t('
').appendTo(k),V=t('
').appendTo(x),S=t('
').appendTo(x),O=t('
').appendTo(k),F=t('
').appendTo(O),I=t('
').appendTo(F),D=t('
').appendTo(F),(P=_(t(this),e.hideTransparency)).initEvents(),P.updateColor(),P.$el.appendTo(j),P.val(g(W.val()||T)[3]),R=x.height(),A=x.width(),H=!1,B=!1,L=!0,z=[0,0,.5],S.bind("mousedown",function(e){1==e.which&&(H=!0, +t(U).bind("mouseup",o),i(e),e.preventDefault())}),S.bind("mousemove",function(t){H&&(i(t),t.preventDefault())}),t(P).on("change",function(){N?b():w.call(this,t(this).val()||T,P.val())}.bind(this)),t(P).on("afterChange",function(){t(this).focus()}.bind(this)),O.bind("mousedown",function(e){1==e.which&&(B=!0,t(U).bind("mouseup",m),n(e),e.preventDefault())}),t(U).bind("mousemove",function(t){B&&(n(t),t.preventDefault())}),t('
'+window.t("Custom color...")+"").appendTo(j).bind("click",function(){var e,i=t(this).is(".active");i||y.css({minWidth:G.width()+"px",minHeight:G.height()+"px"}),t(this)[i?"removeClass":"addClass"]("active"),N=t(this).is(".active"),y.css({display:i?"none":"block"}),G.css({display:i?"block":"none"}),i?W.removeData("tvcolorpicker-custom-color"):(R=x.height(),A=x.width(),e=v(W.val()||T),z=h(e),V.css({left:~~(z[0]*A)+"px",top:~~((1-z[1])*R)+"px"}),I.css({top:~~((1-z[2])*R)+"px"}),F.css({backgroundColor:d(p(u(z[0],z[1],1)))}))}),j.append(t(M.call(this,C,{addClass:"tvcolorpicker-user"})).addClass("tvcolorpicker-user-swatches")),t(U.body).append(j),function(e,i,o){var r,n=t(e).prop("ownerDocument"),s=n.defaultView,a=t(e).offset(),l=(t(n).scrollLeft(),t(n).scrollTop()),c=t(e).outerWidth(),u=t(e).outerHeight(),h=t(s).width(),p=t(s).height(),d=t(i).outerWidth(),f=t(i).outerHeight(),v="function"==typeof o.direction?o.direction():o.direction;switch(v){default:case"down":r={top:a.top+u+o.offset,left:a.left+o.drift};break;case"right":r={top:a.top+o.drift,left:a.left+c+o.offset}}r.top+f>p+l&&(r.top=p-f+l),a.left+d>h&&(r.left=h-d),r.left+="px",r.top+="px",i.css(r)}(W,j,e),U.addEventListener("keydown",E,!1),j}function S(){var e=t(this).prop("ownerDocument")||document;t(e).find(".tvcolorpicker-popup").removeClass("opened").remove(),t(P).off("change"),t(P).off("afterChange"),e.removeEventListener("keydown",E,!1),t(O).data("tvcolorpicker",null),t(O).each(function(){var e,i=t(this).data("tvcolorpicker-custom-color");i&&(function(e){var i=!1,o=v(e);return t.each(C,function(t,e){if(n(v(e),o))return i=!0,!1}),!i&&(C=[d(o)].concat(C.slice(0,b-1)),!0)}(i)&&t(this).trigger("customcolorchange",[C]),t(this).data("tvcolorpicker-custom-color",null)),(e=t(this).data("tvcolorpicker-previous-color"))&&e!=t(this).val()&&t(this).trigger("change"),t(this).removeData("tvcolorpicker-previous-color")})}function E(t){t.keyCode===m&&(S.call(O),O.blur())}var P,O;return k=t.extend({},o.options,k||{}),O=this,k&&"customColors"in k&&i(k.customColors),this.each(function(){function i(){var t=e(s.val());x.call(s,t)}var o,r,n,s=t(this);s.val(e(s.val())),o=null,r=!1,s.addClass("tvcolorpicker-widget").attr("autocomplete","off").attr("readonly",!0),n=function(){s.data("tvcolorpicker")||(S.call(s),o=V.call(s,k),s.data("tvcolorpicker-custom-color",null),s.data("tvcolorpicker",o),s.data("tvcolorpicker-previous-color",s.val()),o.bind("mousedown click",function(e){t(e.target).parents().andSelf().is(o)&&(s.focus(),r=!0,setTimeout(function(){r=!1},0))}))},s.on("touchstart",n),s.focus(n),S.call(s), +s.bind("blur",function(t){r?t.stopPropagation():S.call(s)}),s.change(function(t){i()}),i()})}var b,y,C,T;if(!t)throw new Error("This program cannot be run in DOS mode");o.setCustomColors=i,t.fn.tvcolorpicker=o,b=29,y=10,C=[],T="rgb(14, 15, 16)",o.options={direction:"down",offset:0,drift:0}}(window.jQuery)},jNEI:function(t,e,i){"use strict";function o(t,e){void 0===e&&(e={});var i=$('');return null!==t&&i.appendTo(t),void 0!==e.addClass&&i.addClass(e.addClass),$('
').appendTo(i),$('').tvcolorpicker({customColors:function(t){var e,i,o,r=[];for(e=0,i=t;e50?t-50:0}),Object(s.rgbToString)(i)))}).bind("customcolorchange",function(t,e){Object(a.setJSON)("pickerCustomColors",e)}).appendTo(i),i}var r,n,s,a,l;i.r(e),i.d(e,"addColorPicker",function(){return o}),r=i("P5fv"),n=i("d2+F"),s=i("eJTA"),a=i("Vdly"),l="#727272"},utoz:function(t,e,i){},vBzC:function(t,e,i){var o,r,n;r=[i("P5fv"),i("Qwlt")],void 0===(n="function"==typeof(o=function(t){return t.ui.keyCode={BACKSPACE:8,COMMA:188,DELETE:46,DOWN:40,END:35,ENTER:13,ESCAPE:27,HOME:36,LEFT:37,PAGE_DOWN:34,PAGE_UP:33,PERIOD:190,RIGHT:39,SPACE:32,TAB:9,UP:38}})?o.apply(e,r):o)||(t.exports=n)},zNST:function(t,e,i){}}]); \ No newline at end of file diff --git a/public/charting_library/static/bundles/add-compare-dialog.e9db1b14483f3e7358f4.js b/public/charting_library/static/bundles/add-compare-dialog.e9db1b14483f3e7358f4.js new file mode 100644 index 0000000..12f6e13 --- /dev/null +++ b/public/charting_library/static/bundles/add-compare-dialog.e9db1b14483f3e7358f4.js @@ -0,0 +1,3 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([["add-compare-dialog"],{UnpO:function(t,e,o){"use strict";var a,n,i,c;Object.defineProperty(e,"__esModule",{value:!0}),e.AddSymbolTab=void 0,a=function(){function t(t,e){var o,a;for(o=0;o\n\t\t\n\t\t
\n\t
',e.AddSymbolTab=function(){function t(e,o){!function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,t),this._chartWidgetCollection=e,this._dialog=o,this._$popup=null,this.init()}return a(t,[{key:"init",value:function(){var t=this;this.$tab=$(c),this._$input=this.$tab.find(".js-add-symbol-tab-input"),this._checkbox=new n.AddSymbolCheckbox({labelRight:$.t("Overlay the main chart"),labelAddClass:"tv-add-symbol-tab__checkbox-label",boxAddClass:"tv-add-symbol-tab__checkbox-box"}),this.$tab.find(".js-add-symbol-tab-checkbox").append(this._checkbox.$el),(0,i.symbolSearchUIService)().bindToInput(this._$input,{callback:function(e){var o=t._chartWidgetCollection.activeChartWidget.value();o&&o.addOverlayStudy(e,t._checkbox.checked)},onPopupOpen:function(e){e.css("z-index",t._dialog.getZIndex()),t._$popup=e},onPopupClose:function(){t._$popup=null},keepFocus:!0,clearAfterAccept:!0})}},{key:"focus",value:function(){Modernizr.mobiletouch||this._$input.focus()}},{key:"isClickOnTab",value:function(t){return!!this._$popup&&!(this._$popup[0]!==t.target&&!this._$popup[0].contains(t.target))}}]),t}()},UxRG:function(t,e,o){},dKfe:function(t,e,o){"use strict";var a,n,i;Object.defineProperty(e,"__esModule",{value:!0}),e.AddSymbolCheckbox=void 0,a=o("QwKQ"),n=(i=a)&&i.__esModule?i:{default:i},e.AddSymbolCheckbox=function(t){function e(t){!function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,e),t.checked=TVSettings.getBool("showAddSymbolDialog.checkboxState",!0);var o=function(t,e){if(!t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!e||"object"!=typeof e&&"function"!=typeof e?t:e}(this,(e.__proto__||Object.getPrototypeOf(e)).call(this,t));return o.$checkbox.change(function(){setTimeout(function(){TVSettings.setValue("showAddSymbolDialog.checkboxState",o.checked)})}),o}return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}(e,n.default),e}()},frtK:function(t,e,o){},jPTo:function(t,e,o){},k47Q:function(t,e,o){}, +ocUP:function(t,e,o){"use strict";(function(t,a){var n,i,c,l,r,s;Object.defineProperty(e,"__esModule",{value:!0}),e.CompareTab=void 0,n=function(){function t(t,e){var o,a;for(o=0;o\n\t\t\n\t
',r='
',s='\n\t
\n\t\t\n\t
',e.CompareTab=function(){function e(t,o){!function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,e),this._chartWidgetCollection=t,this._dialog=o,this._$popup=null,this._predefines={},this._symbolAlias={},this.init()}return n(e,[{key:"_addCompareSymbol",value:function(t,e,o){var a=this._chartWidgetCollection.activeChartWidget.value();if(a)return a.addCompareStudy(t).then(function(t){var e=null!==t;return e&&(0,c.trackEvent)("GUI","Add Compare"),e})}},{key:"removeCompareSymbol",value:function(t){var e,o=this,a=this._chartWidgetCollection.activeChartWidget.value();a&&(e=a.model())&&e.dataSources().forEach(function(a){if(a._metaInfo&&"Compare@tv-basicstudies"===a._metaInfo.id){var n=a.properties().inputs.symbol.value();(n===t||o._symbolAlias[n]&&o._symbolAlias[n]===t)&&e.removeSource(a)}})}},{key:"init",value:function(){var e,o,a,n=this,i=this._chartWidgetCollection.activeChartWidget.value();i&&(e=i.model())&&(o=e.dataSources(),this.$tab=$(l),this._initSymbolSearch(),t.enabled("charting_library_base")||(this._createPredefinesList(),(a=this.$tab.find(".js-compare-tab-predefines")).find(".js-predefine-checkbox").attr("checked",!1),Object.keys(this._predefines).forEach(function(t){var e=n._symbolToId(t),i=a.find("#"+e);o.forEach(function(e){if(e._metaInfo&&"Compare@tv-basicstudies"===e._metaInfo.id){var o=e.properties().inputs.symbol.value();(o===t||n._symbolAlias[o]&&n._symbolAlias[o]===t)&&i.attr("checked",!0)}})})))}},{key:"_initSymbolSearch",value:function(){var t=this;this._$input=this.$tab.find(".js-compare-tab-input"),(0,i.symbolSearchUIService)().bindToInput(this._$input,{callback:function(e){return t._addCompareSymbol(e)},onPopupOpen:function(e){e.css("z-index",t._dialog.getZIndex()),t._$popup=e},onPopupClose:function(){t._$popup=null},keepFocus:!0, +clearAfterAccept:!0})}},{key:"_createPredefinesList",value:function(){function t(t){var e=this;setTimeout(function(){$(e).is(":checked")?o._addCompareSymbol(t.data.symbol).then(function(t){t||$(e).attr("checked",!1)}):o.removeCompareSymbol(t.data.symbol)})}var e=this,o=this,n=$(r);Object.keys(this._predefines).forEach(function(o){var i=$(a.render(s,{symbolId:e._symbolToId(o),label:e._predefines[o],additionalClass:e._isBovespa?"tv-compare-tab__predefine-cell--wide":""})),c=i.find(".js-predefine-checkbox");c.change({symbol:o},t),i.appendTo(n)}),n.appendTo(this.$tab)}},{key:"_symbolToId",value:function(t){return t.replace(/[^a-z0-9]/gi,"_")}},{key:"focus",value:function(){Modernizr.mobiletouch||this._$input.focus()}},{key:"isClickOnTab",value:function(t){return!!this._$popup&&!(this._$popup[0]!==t.target&&!this._$popup[0].contains(t.target))}}]),e}()}).call(this,o("Kxc7"),o("OiQe"))},tkV1:function(t,e,o){"use strict";var a,n,i,c,l;Object.defineProperty(e,"__esModule",{value:!0}),e.AddCompareDialog=void 0,a=function(){function t(t,e){var o,a;for(o=0;o').html(" "),this._helpTooltipTrigger=$('').text("?").attr("title",$.t("Type the interval number for minute charts (i.e. 5 if it is going to be a five minute chart). Or number plus letter for H (Hourly), D (Daily), W (Weekly), M (Monthly) intervals (i.e. D or 2H)")),this._dialogTitle=$.t("Change Interval")}var n=e("PT1i").linking,o=e("h24c").parseIntervalValue,a=e("h24c").intervalIsSupported,p=e("h24c").sanitizeIntervalValue,l=e("Kxc7"),r=e("pPtI"),h=e("GAqT").TVOldDialogs;s.prototype._setInput=function(){this._input=$(''),this._input.on("keypress",this._handleInput.bind(this)).on("input",function(){this._validate(),this._updateCaption()}.bind(this)).on("blur",function(){setTimeout(this._submit.bind(this),0)}.bind(this))},s.prototype._validate=function(){var t,i=this._input.val();this._parsed=o(i),this._valid=!this._parsed.error,this._supported=!this._parsed.error&&a(i),t=this._parsed.unit,this._supported&&("R"===t&&this._parsed.qty>r.getMaxResolutionValue("R")?this._supported=!1:null!==t&&"H"!==t||this._parsed.qty*("H"===t?60:1)>1440&&(this._supported=!1))},s.prototype._updateCaption=function(){var t,i,e;this._valid&&this._supported?(i=this._parsed.qty||1,e=this._parsed.unit||"",t=r.getTranslatedResolutionModel(i+e).hint,this._input.add(this._caption).removeClass("error")):(t=this._parsed.error?" ":$.t("Not applicable"),this._input.add(this._caption).addClass("error")),this._caption.html(t)},s.prototype._handleInput=function(t){var i,e,s;13!==t.which?t.ctrlKey||t.metaKey||!t.charCode||!t.which||t.which<=32||(i=String.fromCharCode(t.charCode),e=/[\dhdwms]/i,s=/[\dhdwm]/i,(l.enabled("seconds_resolution")?e.test(i):s.test(i))||t.preventDefault()):this._submit()},s.prototype._submit=function(){var t,i;h.isOpen(this._dialogTitle)&&(this._valid&&this._supported&&(t=p(this._input.val()),i=n.interval.value(),t&&i!==t&&"function"==typeof this._options.callback&&this._options.callback(t)),h.destroy(this._dialogTitle))},s.prototype._setInitialValue=function(t){var i,e;i="",e=!1,(t=t||this._options.initialValue)&&","!==t?i=p(t)||"":(i=t=n.interval.value(),e=!0),this._input.val(i),e&&this._input.select()},s.prototype.isValid=function(){return Boolean(this._valid)},s.prototype.show=function(t){var i=h.createDialog(this._dialogTitle,{hideCloseCross:!0,addClass:"change-interval-dialog",ownerDocument:this._options.ownerDocument}),e=i.find("._tv-dialog-content");return i.css("min-width",0),e.css("min-width",0).mousedown(function(t){this._input.is(t.target)||t.preventDefault()}.bind(this)).append(this._input.add(this._caption).add(this._helpTooltipTrigger)),h.applyHandlers(i),h.positionDialog(i),this._setInitialValue(t),this._validate(),this._updateCaption(),i}, +t.exports.ChangeIntervalDialog=s}}]); \ No newline at end of file diff --git a/public/charting_library/static/bundles/chart-bottom-toolbar.da7ac0cc35cc8a26f65a.js b/public/charting_library/static/bundles/chart-bottom-toolbar.da7ac0cc35cc8a26f65a.js new file mode 100644 index 0000000..d0938b2 --- /dev/null +++ b/public/charting_library/static/bundles/chart-bottom-toolbar.da7ac0cc35cc8a26f65a.js @@ -0,0 +1,10 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([["chart-bottom-toolbar"],{"+GaQ":function(e,t,n){"use strict";function i(e){return e.map?a.Children.toArray(e.children).map(e.map):e.children}var a;n.d(t,"a",function(){return i}),a=n("q1tI")},"2mG+":function(e,t,n){e.exports={button:"button-37qwTsBL-"}},"5o6O":function(e,t,n){e.exports={tabs:"tabs-1LGqoVz6-",tab:"tab-1Yr0rq0J-",noBorder:"noBorder-oc3HwerO-",disabled:"disabled-s8cEYElA-",active:"active-37sipdzm-",defaultCursor:"defaultCursor-Np9BHjTg-",slider:"slider-1-X4lOmE-",content:"content-2asssfGq-"}},ApAi:function(e,t){e.exports=''},J3OW:function(e,t,n){e.exports={button:"button-1VVj8kLG-"}},K3s3:function(e,t,n){"use strict";function i(e){var t,n=s(e.className,c.tab,((t={})[c.active]=e.isActive,t[c.disabled]=e.isDisabled,t[c.defaultCursor]=!!e.shouldUseDefaultCursor,t[c.noBorder]=!!e.noBorder,t));return r.createElement("div",{className:n,onClick:e.onClick,ref:e.reference},e.children)}function a(e){return function(t){function n(){var e=null!==t&&t.apply(this,arguments)||this;return e.activeTab={current:null},e}return o.__extends(n,t),n.prototype.componentDidUpdate=function(){var e=Object(l.ensureNotNull)(this._slider),t=e.style;t.transition="transform 350ms",this._componentDidUpdate()},n.prototype.componentDidMount=function(){this._componentDidUpdate()},n.prototype.render=function(){var t=this,n=this.props.className,i=this._generateTabs();return r.createElement("div",{className:s(n,c.tabs)},i,r.createElement(e,{reference:function(e){t._slider=e}}))},n.prototype._generateTabs=function(){var e=this;return this.activeTab.current=null,r.Children.map(this.props.children,function(t){var n=t,i=Boolean(n.props.isActive),a={reference:function(t){i&&(e.activeTab.current=t),n.props.reference&&n.props.reference(t)}};return r.cloneElement(n,a)})},n.prototype._componentDidUpdate=function(){var e,t,n=Object(l.ensureNotNull)(this._slider),i=n.style;this.activeTab.current?(e=this.activeTab.current.offsetWidth,t=this.activeTab.current.offsetLeft,i.transform="translateX("+t+"px)",i.width=e+"px",i.opacity="1"):i.opacity="0"},n}(r.PureComponent)}var o,r,s,l,c,u;n.d(t,"a",function(){return u}),n.d(t,"b",function(){return i}),n.d(t,"c",function(){return a}),o=n("mrSG"),r=n("q1tI"),s=n("TSYQ"),l=n("Eyy1"),c=n("5o6O"),u=c,a(function(e){return r.createElement("div",{className:c.slider,ref:e.reference})})},MfqI:function(e,t,n){"use strict";function i(e){var t;return(t=function(t){function n(e,n){var i,a=t.call(this,e,n)||this;return a._handleUpdate=function(e){a.setState(e)},a._handleSelectRange=function(e){a._binding.selectRange(e)},S.has(n.chartWidget)||S.set(n.chartWidget,new E(n)),i=a._binding=Object(v.ensureDefined)(S.get(n.chartWidget)),a.state=i.state(),a}return u.__extends(n,t),n.prototype.componentDidMount=function(){ +this._binding.onChange().subscribe(this,this._handleUpdate)},n.prototype.componentWillUnmount=function(){this._binding.onChange().unsubscribe(this,this._handleUpdate)},n.prototype.render=function(){return l.createElement(e,{goToDateButton:this.props.goToDateButton,className:this.props.className,ranges:this.state.ranges,activeRange:this.state.activeRange,onSelectRange:this._handleSelectRange})},n}(l.PureComponent)).contextTypes={availableTimeFrames:d.any.isRequired,chartWidget:d.any.isRequired},t}function a(e){var t,n=h(M.item,((t={})[M.isActive]=e.isActive,t[M.isFirst]=e.isFirst,t[M.isLast]=e.isLast,t));return l.createElement("div",{className:n,onClick:e.onClick,ref:e.reference},e.children)}function o(e){var t=e.reference,n=e.className,i=e.children,a=u.__rest(e,["reference","className","children"]);return l.createElement("button",u.__assign({},a,{className:h(n,H.button),ref:t}),l.createElement("span",{className:H.inner},i))}function r(e){return l.createElement("span",{className:h($.separator,e.className)})}function s(e){0}var l,c,u,d,h,p,m,g,f,_,b,v,C,y,S,E,x,R,W,w,N,A,T,M,k,B,D,z,F,P,j,I,L,O,q,U,H,G,V,Z,K,Q,Y,J,X,$,ee,te,ne,ie,ae,oe,re,se,le,ce,ue,de,he,pe,me,ge,fe,_e,be,ve,Ce,ye,Se,Ee,xe;n.r(t),l=n("q1tI"),c=n("i8i4"),u=n("mrSG"),d=n("17x9"),n("YFKU"),h=n("TSYQ"),p=n("XmVn"),m=n("Kxc7"),g=n("82wv"),f=n("Iksw"),_=n("N5tr"),b=n("dfhE"),v=n("Eyy1"),C=n("aIyQ"),y=n.n(C),S=new WeakMap,E=function(){function e(e){var t,n=this;this._state={ranges:[]},this._change=new y.a,(t=(this._context=e).chartWidget).withModel(null,function(){var e=t.model(),i=e.mainSeries();i.onStatusChanged().subscribe(n,n._updateAvailableRanges),m.enabled("update_timeframes_set_on_symbol_resolve")&&i.dataEvents().symbolResolved().subscribe(n,n._updateAvailableRanges),i.priceScale().properties().lockScale.subscribe(n,n._updateAvailableRanges),i.onIntervalChanged().subscribe(n,n._onRangeChanged),e.model().onResetScales().subscribe(n,n._resetActiveInterval),i.dataEvents().symbolResolved().subscribe(n,n._resetActiveInterval),i.properties().extendedHours.subscribe(n,n._resetActiveInterval),n._updateAvailableRanges()}),t.onScroll().subscribe(this,this._resetActiveInterval)}return e.prototype.state=function(){return this._state},e.prototype.onChange=function(){return this._change},e.prototype.selectRange=function(e){var t,n;this._setState({activeRange:e.value}),t=this._context.chartWidget,n={val:e.value,res:e.targetResolution},t.loadRange(n)},e.prototype.destroy=function(){var e=this,t=this._context.chartWidget;t.withModel(null,function(){var n=t.model(),i=n.mainSeries();i.onStatusChanged().unsubscribe(e,e._updateAvailableRanges),m.enabled("update_timeframes_set_on_symbol_resolve")&&i.dataEvents().symbolResolved().unsubscribe(e,e._updateAvailableRanges),i.priceScale().properties().lockScale.unsubscribe(e,e._updateAvailableRanges),i.onIntervalChanged().unsubscribe(e,e._onRangeChanged),n.model().onResetScales().unsubscribe(e,e._resetActiveInterval),i.dataEvents().symbolResolved().unsubscribe(e,e._resetActiveInterval), +i.properties().extendedHours.unsubscribe(e,e._resetActiveInterval)}),t.onScroll().unsubscribe(this,this._resetActiveInterval),this._change.destroy()},e.prototype._setState=function(e){this._state=Object.assign({},this._state,e),this._change.fire(this._state)},e.prototype._onRangeChanged=function(e,t){this._setState({activeRange:t.timeframe})},e.prototype._resetActiveInterval=function(){this._setState({activeRange:void 0})},e.prototype._updateAvailableRanges=function(){var e,t,n,i=this._context,a=i.availableTimeFrames,o=i.chartWidget;o.model()&&(t=(e=o.model().mainSeries()).status())!==b.STATUS_LOADING&&t!==b.STATUS_RESOLVING&&0!==(n=a(e.symbolInfo(),e.status())).length&&this._setState({ranges:n})},e}(),x=n("KKsp"),R=n("cdbK"),W=n("J3OW"),w={title:window.t("Date Range"),goToDate:window.t("Go to...")},N=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t._handleGoToDateClick=function(){var e=t.context.chartWidget;Object(R.showGoToDateDialog)(e.model())},t._handleRangeSelect=function(e){e&&t.props.onSelectRange&&t.props.onSelectRange(e)},t}return u.__extends(t,e),t.prototype.render=function(){var e=this,t=this.props,n=t.ranges,i=t.activeRange,a=t.goToDateButton;return l.createElement(g.a,{className:W.button,content:w.title,arrow:!0,verticalAttachEdge:f.a.Top,verticalDropDirection:f.b.FromBottomToTop,horizontalMargin:4},n.map(function(t){return l.createElement(_.a,{key:t.value,label:t.description||t.text,isActive:i===t.value,onClick:e._handleRangeSelect,onClickArg:t})}),a&&l.createElement(x.a,null),a&&l.createElement(_.a,{label:w.goToDate,onClick:this._handleGoToDateClick}))},t.contextTypes={chartWidget:d.any.isRequired},t}(l.PureComponent),A=i(N),T=n("K3s3"),M=n("W9Y+"),k=n("nPPD"),B=n("RZ2Z"),D=Object(k.a)(T.a,B),z=n("qSb5"),F=Object(T.c)(function(e){return l.createElement("div",{className:D.slider,ref:e.reference},l.createElement("div",{className:D.inner}))}),P=i(function(e){var t=e.className,n=e.ranges,i=e.activeRange,o=e.onSelectRange;return l.createElement(F,{className:h(z.sliderRow,t)},n.map(function(e,t){return l.createElement(a,{key:e.value,isFirst:0===t,isLast:t===n.length-1,isActive:i===e.value,onClick:o&&o.bind(null,e)},l.createElement("div",{title:e.description||e.text,className:"apply-common-tooltip"},e.text))}))}),j=n("ei7k"),I=n("c7H2"),L={title:window.t("Go to...")},O=Object(j.b)({keys:["Alt","G"],text:"{0} + {1}"}),q=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t._handleClick=function(){var e=t.context.chartWidget;Object(R.showGoToDateDialog)(e.model())},t}return u.__extends(t,e),t.prototype.render=function(){var e=this.props,t=e.className;return e.ranges.length>0&&l.createElement("div",{className:h("apply-common-tooltip",I.button,t),"data-tooltip-hotkey":O,onClick:this._handleClick},L.title)},t.contextTypes={chartWidget:d.any.isRequired},t}(l.PureComponent),U=i(q),H=n("URQ3"),G=n("U/gD"),V=n("4kQX"),Z=n("7KDR"),K=n("5VQP"),Q=function(e){function t(t){var n=e.call(this,t)||this;return n._element=null,n._menu=null,n._handleRef=function(e){ +n._element=e},n._showMenu=function(){var e,t,i,a;if(n._menu&&n._menu.isShown())return n._menu.hide(),void n._menu.destroy();t=(e=n.props).getActions,i=e.right,a=Object(v.ensureNotNull)(n._element),K.ContextMenuManager.createMenu(t()).then(function(e){n._menu=e,e.show(function(e,t){var n=a.getBoundingClientRect();return{clientX:i?n.right-e:n.left,clientY:n.top-Math.min(t,n.top),overrideHeight:n.top'},URQ3:function(e,t,n){e.exports={button:"button-88UE6omC-",hover:"hover-3_vVP91F-",inner:"inner-2FptJsfC-"}},"W9Y+":function(e,t,n){e.exports={item:"item-3cgIlGYO-",hover:"hover-2y46_KNk-",isActive:"isActive-2M6dwA7--",isFirst:"isFirst-2kfAV5tf-",isLast:"isLast-voJ1bqZh-"}},c7H2:function(e,t,n){e.exports={button:"button-2gir_Bbb-",hover:"hover-SrAyrKlT-"}},qSb5:function(e,t,n){e.exports={sliderRow:"sliderRow-Tv1W7hM5-"}},z6ID:function(e,t,n){e.exports={separator:"separator-3bp1jCsV-"}}}]); \ No newline at end of file diff --git a/public/charting_library/static/bundles/chart-widget-gui.8005316cfc1f06be4bf0.js b/public/charting_library/static/bundles/chart-widget-gui.8005316cfc1f06be4bf0.js new file mode 100644 index 0000000..78f08c7 --- /dev/null +++ b/public/charting_library/static/bundles/chart-widget-gui.8005316cfc1f06be4bf0.js @@ -0,0 +1,13 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([["chart-widget-gui"],{"/NcV":function(t,e){t.exports=''},"/vkn":function(t,e){t.exports=''},"1ANp":function(t,e,i){"use strict";function s(t){return"alwaysOn"===t||"alwaysOff"===t?t:"visibleOnMouseOver"}function n(){if(!u){(u=new h.a).setValue(s(d.getValue("NavigationButtons.visibility"))),u.subscribe(u,function(t){d.setValue("NavigationButtons.visibility",s(t.value()))})}return u}function o(){return[{value:"visibleOnMouseOver",title:window.t("Visible on Mouse Over")},{value:"alwaysOn",title:window.t("Always Visible")},{value:"alwaysOff",title:window.t("Always Invisible")}]}function r(){var t,e;return c||(c=new h.a,e=function(){var e=t.value();"alwaysOn"!==e&&"alwaysOff"!==e&&(e=Modernizr.mobiletouch?"alwaysOn":"visibleOnMouseOver"),c&&c.setValue(e)},(t=n()).subscribe(c,e),e()),c}var l,a,h,d,u,c;i.r(e),i.d(e,"property",function(){return n}),i.d(e,"availableValues",function(){return o}),i.d(e,"actualBehavior",function(){return r}),i("YFKU"),l=i("bf9a"),a=i("tc+8"),h=i.n(a),d=i("Vdly")},"3zM7":function(t,e){t.exports=''},"94TV":function(t,e){t.exports=''},"C+zC":function(t,e){t.exports=''},GBBr:function(t,e){t.exports=''},LxXZ:function(t,e,i){"use strict";(function(t){function s(t){t.classList.toggle("js-hidden",!0)}function n(t){t.classList.toggle("js-hidden",!1)}function o(t,e,i,s){var n;this._options=Object.assign({},u,s),this._model=e,this._paneWidget=t,this._chart=t._chart,this.$el=$(document.createElement("div")).addClass("pane-legend"),this._itemsBinding=[],this._mouseEventHandlers=[],this._chart.properties().paneProperties.legendProperties.showStudyTitles.listeners().subscribe(this,this.updateLayout), +this._chart.properties().paneProperties.legendProperties.showSeriesTitle.listeners().subscribe(this,this.updateLayout),this._chart.properties().paneProperties.legendProperties.showSeriesOHLC.listeners().subscribe(this,this.updateLayout),this._chart.properties().paneProperties.legendProperties.showBarChange.listeners().subscribe(this,this.updateLayout),this._chart.properties().paneProperties.legendProperties.showOnlyPriceSource.listeners().subscribe(this,this.updateLayout),this._chart.properties().paneProperties.legendProperties.showStudyValues.listeners().subscribe(this,this.updateLayout),this._model.mainSeries().properties().style.listeners().subscribe(this,this.updateLayout),this._model.mainSeries().properties().visible.listeners().subscribe(this,this.updateLayout),(n=this._chart.properties().scalesProperties.textColor).listeners().subscribe(this,function(t){this.$el.css("color",t.value())}),this.$el.css("color",n.value()),this._chart.properties().paneProperties.legendProperties.showLegend.subscribe(this,this.updateLayout),this._iconColor=null,this.updateLayout()}i("GVHu").Study;var r=i("tITk").trackEvent,l=(i("uOxu").getLogger("Chart.LegendWidget"),i("Tmoa")),a=i("Ialn").IS_RTL,h=(i("Vdly"),i("S8xo").MouseEventHandler),d=i("QloM").TabNames,u={contextMenuEnabled:!0,sourceSelectionEnabled:!0,symbolMarkerEnabled:!1,miniButtonsWidgetEnabled:!0,alertWidgetEnabled:!0};o.prototype.destroy=function(){this._removeMouseEventHandlers(),this._chart.properties().paneProperties.legendProperties.showLegend.unsubscribeAll(this),this._chart.properties().paneProperties.legendProperties.showStudyTitles.listeners().unsubscribe(this,this.updateLayout),this._chart.properties().paneProperties.legendProperties.showSeriesTitle.listeners().unsubscribe(this,this.updateLayout),this._chart.properties().paneProperties.legendProperties.showSeriesOHLC.listeners().unsubscribe(this,this.updateLayout),this._chart.properties().paneProperties.legendProperties.showBarChange.listeners().unsubscribe(this,this.updateLayout),this._chart.properties().paneProperties.legendProperties.showOnlyPriceSource.listeners().unsubscribe(this,this.updateLayout),this._chart.properties().paneProperties.legendProperties.showStudyValues.listeners().unsubscribe(this,this.updateLayout),this._model.mainSeries().properties().style.listeners().unsubscribe(this,this.updateLayout),this._model.mainSeries().properties().visible.listeners().unsubscribe(this,this.updateLayout)},o.prototype.updateThemedColors=function(t){this._iconColor=t,this._applyIconColors()},o.prototype._applyIconColors=function(){this.$el.find(".pane-legend-icon-container").css("color",this._iconColor||"")},o.prototype.contextMenuEvent=function(t,e){if(!this._model.chartModel().readOnly()&&this._options.contextMenuEnabled){this._chart.updateActions();var i=e.source;this._model.selectionMacro(function(t){t.clearSelection(),t.addSourceToSelection(i)}),this._paneWidget.showContextMenuForSelection(t)}},o.prototype._removeMouseEventHandlers=function(){this._mouseEventHandlers.forEach(function(t){t.destroy()}), +this._mouseEventHandlers=[]},o.prototype.updateLayout=function(){var e,s,n,o,r,l,a,d,u,c,p,_;if(this._removeMouseEventHandlers(),this._itemsBinding.length=0,this.$el.find(".apply-common-tooltip").trigger("mouseleave"),this.$el.empty(),this._indicatorRows=[],(e=this._paneWidget.state())&&this._model){for(s={showStudyTitles:this._model.model().properties().paneProperties.legendProperties.showStudyTitles.value(),showSeriesTitle:this._chart.properties().paneProperties.legendProperties.showSeriesTitle.value(),showSeriesOHLC:this._chart.properties().paneProperties.legendProperties.showSeriesOHLC.value(),showStudyValues:this._chart.properties().paneProperties.legendProperties.showStudyValues.value(),showLegend:this._model.model().properties().paneProperties.legendProperties.showLegend.value()},n=this._model.mainSeries(),(r=(o=e.orderedSources().slice()).indexOf(n))>-1&&(o.splice(r,1),o.push(n)),l=o.length-1;l>=0;l--)(d=(a=o[l]).statusView())&&(u=a===n,c=this._options.miniButtonsWidgetEnabled,(!u||s.showSeriesTitle||s.showSeriesOHLC||s.showStudyTitles||s.showStudyValues)&&(u&&t.enabled("fundamental_widget")||(!s.showLegend&&u&&c?this.$el.find(".expand-line").length||(p=$("
").addClass("pane-legend-line pane-legend-wrap main expand-line"),this._options.sourceSelectionEnabled||p.addClass("legend-selection-disabled"),p.appendTo(this.$el),this._chartHasStudies()?(_=$('').append($(i("/vkn")).attr({class:"expand closed"})),p.append(_.on("click touchend",this.toggleTitles.bind(this)))):p.addClass("pane-legend-line--without-child-studies"),p.source=a,a.properties().visible.value()||p.addClass("disabled"),s={showStudyTitles:!1,showSeriesTitle:s.showSeriesTitle,showSeriesOHLC:s.showSeriesOHLC,showStudyValues:!1},this._generateItemsForRow(p,d,s),this._mouseEventHandlers.push(new h(p,this,!0)),this.update()):(u||s.showStudyTitles||s.showStudyValues)&&s.showLegend&&(p=$("
").addClass("pane-legend-line pane-legend-wrap"),this._options.sourceSelectionEnabled||p.addClass("legend-selection-disabled"),p.appendTo(this.$el),u||this._indicatorRows.push(p[0]),p.source=a,u&&c?this._chartHasStudies()?(p.addClass("main"),_=$('').append($(i("scAS")).attr({class:"expand"})),p.append(_.on("click touchend",this.toggleTitles.bind(this)))):p.addClass("pane-legend-line--without-child-studies"):p.addClass("study"),a.properties().visible.value()||p.addClass("disabled"),this._generateItemsForRow(p,d,s),this._mouseEventHandlers.push(new h(p,this,!0))))));this.update()}},o.prototype._chartHasStudies=function(){return this._model.model().allStudies().some(function(t){return t.statusView()})},o.prototype._generateItemsForRow=function(e,s,n){var o,r,l,h,d,u,c,p,_,v,m,g=e.source,b=this,y=g===this._model.mainSeries(),w=g.properties().visible.value() +;if((y&&n.showSeriesTitle||!y&&n.showStudyTitles)&&((r=$("")).addClass("pane-legend-line__wrap-description apply-overflow-tooltip"),this._options.contextMenuEnabled&&!this._chart.readOnly()||r.addClass("no-context-menu"),this._options.sourceSelectionEnabled||r.addClass("legend-selection-disabled"),y&&r.addClass("main"),w||r.addClass("disabled"),r.css({"font-weight":s.bold()?"bold":"normal","font-size":s.size()}),this._options.contextMenuEnabled&&r.click(function(t){b.contextMenuEvent(t,e)}),$('').append($(i("3zM7"))).appendTo(r),r.appendTo(e),this._itemsBinding.push({value:s,cell:r,source:e.source}),!this._chart.readOnly()&&g.userEditEnabled()&&t.enabled("edit_buttons_in_legend")&&(o=$(''),a||o.appendTo(e),y&&w||!t.enabled("show_hide_button_in_legend")||$('').append($(i("cgDJ"))).appendTo(o).on("click touchend",this._generateItemsForRow._onShowhideClick.bind(this,g)),!y&&t.enabled("property_pages")&&t.enabled("format_button_in_legend")&&$('').append($(i("sGj7"))).appendTo(o).on("click touchend",this._generateItemsForRow._onFormatClick.bind(this,g)),!y&&t.enabled("delete_button_in_legend")&&$('').append($(i("VLql"))).appendTo(o).on("click touchend",this._generateItemsForRow._onDeleteClick.bind(this,g)))),l=g.legendView(),this.isDataWindowValuesVisible(l)&&l.isValuesVisible()&&(!y||w)){for(h=[],d=[],u=$('
').css({"font-size":s.size()}),this._options.contextMenuEnabled||u.addClass("no-context-menu"),this._options.sourceSelectionEnabled||u.addClass("legend-selection-disabled"),c=0;c").appendTo(u),_=y?$("").appendTo(p):null,v=$("").appendTo(p),y&&(_.addClass("pane-legend-item-value-title__main"),v.addClass("pane-legend-item-value__main")),g.properties().visible.value()||(v.addClass("disabled"),_&&_.addClass("disabled")),h.push(v),_&&d.push(_);m=$("").appendTo(u.appendTo(e)),this._itemsBinding.push({value:l,cell:h,titleCells:d.length?d:null,source:g,additional:m})}o&&a&&o.appendTo(e),this._applyIconColors()},o.prototype.isDataWindowValuesVisible=function(t){return this._chart.onWidget()?!!t&&!this._chart.isSmall():!!t},o.prototype._generateItemsForRow._onShowhideClick=function(t){this._model.setProperty(t.properties().visible,!t.properties().visible.value(),"Show/Hide "+t.title()),this._trackLegendEvent("Show/Hide")},o.prototype._generateItemsForRow._onFormatClick=function(t,e){t.userEditEnabled()&&this._chart.showChartPropertiesForSource(t,d.style),this._trackLegendEvent("Settings")},o.prototype._generateItemsForRow._onDeleteClick=function(t){ +t.isUserDeletable()&&(t.hasChildren()?showDeleteStudyTreeConfirm(this._model.removeSource.bind(this._model,t)):this._model.removeSource(t)),this._trackLegendEvent("Remove")},o.prototype._generateItemsForRow._onAddChildSourceClick=function(t){var e,i,s=this._chart.showIndicators(t);s&&(e=function(){r("SOS","Apply SOS","Apply by Plus SOS")},(i=this._model.model().studyInserted()).subscribe(this,e),s.visibilityChanged.subscribe(this,function(t){t||i.unsubscribe(this,e)},!0)),this._trackLegendEvent("Indicator on indicator")},o.prototype._generateItemsForRow._onViewSorceClick=function(t){var e=t.metaInfo();this._getPineSourceCode(e).done(function(t){TradingView.bottomWidgetBar&&TradingView.bottomWidgetBar.activateScriptEditorTab(t)}),this._trackLegendEvent("Source code")},o.prototype._getPineSourceCode=function(t){return $.Deferred()},o.prototype.setItemEnabled=function(t,e){var i=!t.hasClass("disabled"),s=t.closest(".pane-legend-wrap");e&&!i?(t.removeClass("disabled"),s.removeClass("disabled")):!e&&i&&(t.addClass("disabled"),s.addClass("disabled"))},o.prototype.valueChanged=function(t,e,i){return t[e]!==i&&(t[e]=i,!0)},o.prototype.firstTitle=function(){return this.$el.find(".pane-legend-wrap:first-child")},o.prototype.updateTitle=function(){var e,i,s,n,o,r,l,a,h,d,u,c,p;for(s=this._itemsBinding.length;s--;)i=this._itemsBinding[s],Array.isArray(i.cell)||(i.last||(i.last={}),n=i.last,e=(o=i.source).properties().visible.value(),this.valueChanged(n,"sourceVisible",e)&&this.setItemEnabled(i.cell,e),r=i.value.color(),l=o!==this._model.mainSeries()&&this._model.selection().isSelected(o)?"bold":"normal","function"==typeof i.value.getSplitTitle?(a=(u=i.value.getSplitTitle())[0].trim(),h=u[1].trim(),d=u[2].trim()):(a=i.value.text().trim(),h="",d=""),t.enabled("fundamental_widget")&&(a=((p=(c=this._model.mainSeries()).symbolInfo())?p.name:c.actualSymbol())+" "+a),i.isCellInited||(i.isCellInited=!0,d||h?(i.titleElement=document.createElement("div"),i.titleElement.classList.add("pane-legend-title__container"),i.cell[0].appendChild(i.titleElement),i.descriptionElement=document.createElement("div"),i.descriptionElement.classList.add("pane-legend-title__description"),i.titleElement.appendChild(i.descriptionElement),h&&(i.intervalElement=document.createElement("div"),i.intervalElement.classList.add("pane-legend-title__interval"),i.titleElement.appendChild(i.intervalElement)),d&&(i.detailsElement=document.createElement("div"),i.detailsElement.classList.add("pane-legend-title__details"),i.titleElement.appendChild(i.detailsElement)),i.titleElement.classList.add("apply-overflow-tooltip","apply-overflow-tooltip--allow-text","apply-overflow-tooltip--check-children")):(i.titleElement=document.createElement("div"),i.titleElement.classList.add("apply-overflow-tooltip","pane-legend-title__container"),i.cell[0].appendChild(i.titleElement),i.descriptionElement=document.createElement("div"),i.descriptionElement.classList.add("pane-legend-title__description"),i.titleElement.appendChild(i.descriptionElement))), +(this.valueChanged(n,"color",r)||this.valueChanged(n,"fontWeight",l))&&(i.titleElement.style.color=r,i.titleElement.style.borderColor=r,i.titleElement.style.fontWeight=l),a!==i.description&&(i.descriptionElement.textContent=TradingView.clean(a,!0),i.description=a),i.intervalElement&&h&&h!==i.interval&&(i.intervalElement.textContent=TradingView.clean(h,!0),i.interval=h),i.detailsElement&&d&&d!==i.details&&(i.detailsElement.textContent=TradingView.clean(d,!0),i.details=d));this._chart.resizeIndicator()},o.prototype.update=function(t){var e,i,o,r,a,h,d,u,c,p,_,v=!this._chart.isActive()&&!this._chart.crossHairSyncEnabled(),m=v?s:n;for(this._indicatorRows.forEach(m),this.updateTitle(),u=this._itemsBinding.length;u--;)if(e=(r=this._itemsBinding[u]).cell,i=r.titleCells,o=r.source.properties().visible.value(),Array.isArray(e))for(r.last||(r.last={},r.last.dwView||(r.last.dwView={})),c=r.last,a=r.value.items(),p=this.valueChanged(c,"sourceVisible",o),h=0;h'},MjtL:function(t,e){t.exports=''},TGRH:function(t,e,i){"use strict";var s,n,o,r,l,a,h,d,u,c,p,_,v,m,g,b,y,w,f,C,M,B,L,T;i.r(e),i.d(e,"ControlBarNavigation",function(){return T}),i("YFKU"),s=i("1ANp"),n=i("Ialn"),o=i("TzTt"),r=i("Tmoa"),l=i("ei7k"),a=i("qFKp"),i("tITk"),h=i("MjtL"),d=i("e8Rm"),u=i("e2QN"),c=i("vg09"),p=i("/NcV"),_=i("94TV"),v=i("qfuz"),m=i("MQEA"),g=i("jrhZ"),y=Object(l.b)({keys:["Alt","R"],text:"{0} + {1}"}),w=Object(l.b)({keys:[v], +text:"{0}"}),f=Object(l.b)({keys:[m],text:"{0}"}),C='
\n\t
\n\t\t
\n\t\t\t
\n\t\t\t\t'+d+'\n\t\t\t
\n\t\t\t
\n\t\t\t\t'+c+'\n\t\t\t
\n\t\t
\n\t\t
\n\t\t\t
\n\t\t\t\t'+h+'\n\t\t\t
\n\t\t\t
\n\t\t\t\t'+p+'\n\t\t\t
\n\t\t
\n\t\t
\n\t\t\t'+u+"\n\t\t
\n\t
\n
",M='
\n\t'+_+"\n
",(b={}).moving="wait_finishing",b.wait_finishing="stop",b.stop="moving",B=b,L="control-bar__btn--btn-hidden",T=function(){function t(t,e){this._back=null,this._backButtonVisible=!1,this._boundKeydownHandler=null,this._boundKeyupHandler=null,this._boundMouseHandler=null,this._chartBackgroundProperty=null,this._chartModel=null,this._checkIntervalId=0,this._controlBar=null,this._controlBarVisible=!1,this._currentDistance=0,this._deferredFinishTimeout=0,this._finishingTimeout=0,this._moveType="",this._movingTimeout=0,this._pressedKey=[],this._priceAxisChanged=null,this._resetAvailabilityChanged=null,this._priceAxisName="",this._rafId=0,this._startTime=0,this._state="stop",this._visibilityTypeProperty=null,this._widget=null,this._btnGroups=null,this._chart=t,this._parent=e,this._init(),this._initHandlers()}return t.prototype.destroy=function(){null!==this._visibilityTypeProperty&&(this._visibilityTypeProperty.unsubscribe(this,this._onVisibilityTypeChange),this._visibilityTypeProperty=null),null!==this._boundMouseHandler&&(this._parent.removeEventListener("mousemove",this._boundMouseHandler,!1),this._parent.removeEventListener("mouseleave",this._boundMouseHandler,!1),this._boundMouseHandler=null),null!==this._boundKeydownHandler&&(this._parent.ownerDocument.removeEventListener("keydown",this._boundKeydownHandler),this._boundKeydownHandler=null),null!==this._boundKeyupHandler&&(this._parent.ownerDocument.removeEventListener("keyup",this._boundKeyupHandler),this._boundKeyupHandler=null),clearTimeout(this._movingTimeout),null!==this._priceAxisChanged&&(this._priceAxisChanged.unsubscribe(this,this._updateBackBtnPosition),this._priceAxisChanged=null), +null!==this._chartBackgroundProperty&&(clearInterval(this._checkIntervalId),this._chartBackgroundProperty.unsubscribe(this,this._updateBgBarStyle),this._chartBackgroundProperty=null),null!==this._resetAvailabilityChanged&&(this._resetAvailabilityChanged.unsubscribe(this,this._updateResetScalesButtonVisibility),this._resetAvailabilityChanged=null),this._chart=null},t.prototype.updatePosition=function(t){var e,i;null!==this._widget&&null!==this._controlBar&&(e=this._chart.getPriceAxisMaxWidthByName("left"),i=this._chart.getPriceAxisMaxWidthByName("right"),this._updateBtnGroupVisibility(t,e,i))},t.prototype._init=function(){var t,e,i=this;if(this._widget=Object(o.a)(C).querySelector(".control-bar-wrapper"),this._back=Object(o.a)(M).querySelector(".control-bar__btn--back-present"),this._controlBar=this._widget.querySelector(".control-bar"),this._btnGroups=Array.from(this._controlBar.querySelectorAll(".js-btn-group")),a.CheckMobile.any())for(t=0,e=this._btnGroups;t=i.left-100&&t.clientX<=i.right+100&&t.clientY>=i.top-100&&t.clientY<=i.bottom+100),this._controlBarVisible!==e&&(this._controlBarVisible=e,null!==this._controlBar&&null===this._rafId&&(this._rafId=this._controlBar.ownerDocument.defaultView.requestAnimationFrame(this._updateControlBarVisibility.bind(this)))))},t.prototype._updateControlBarVisibility=function(){this._rafId=null,null!==this._controlBar&&this._controlBar.classList.toggle("control-bar--hidden",!this._controlBarVisible)},t.prototype._updateBackBtnPosition=function(){if("left"===this._priceAxisName||"right"===this._priceAxisName){var t=this._chart.getPriceAxisMaxWidthByName(this._priceAxisName)+14;t&&null!==this._back&&(this._back.style.marginRight=t+"px")}},t.prototype._updateBgBarStyle=function(){var t,e,i;if(null!==this._chartModel){for(t=Object(r.getLuminance)(this._chartModel.model().properties().paneProperties.background.value())<.5,e=0,i=Object.values(this._buttons);e(l=r[o]).leftPartWidth,d=s-i>l.rightPartWidth,u=!h||!d,void 0!==(c=this._getBtnGroup(l.className))&&u!==c.classList.contains("js-hidden")&&(c.classList.toggle("js-hidden",u),this._updateControlBarPosition())},t.prototype._getBtnGroup=function(t){if(null!==this._btnGroups)return this._btnGroups.find(function(e){return e.classList.contains(t)})},t.prototype._updateControlBarPosition=function(){var t,e;null!==this._widget&&null!==this._controlBar&&(t=0,t=(e=this._controlBar.querySelectorAll(".js-btn-group:not(.js-hidden)")).length>0?86*e.length:50,this._widget.style.left="calc(50% - "+Math.ceil(t/2)+"px)")},t.prototype._updateResetScalesButtonVisibility=function(){if(null!==this._chartModel){var t=this._chartModel.model().isScalesResetAvailable();this._buttons.turn.classList.toggle(L,!t)}},t.prototype._move=function(t){var e,i,s,n=this;null!==this._chartModel&&"stop"===this._state&&this._chartModel.beginUndoMacro(1===t?"Move Left":"Move Right"),this._state=B.stop,this._moveType="animated",this._deferredFinishTimeout&&(clearTimeout(this._deferredFinishTimeout),this._deferredFinishTimeout=0),this._finishingTimeout&&(clearTimeout(this._finishingTimeout),this._finishingTimeout=0),this._startTime=Date.now(),0===this._movingTimeout&&(e=this._startTime,i=10,s=function(){n._moveStep(e,0,50*t,1e3),n._movingTimeout=setTimeout(s,i)},this._movingTimeout=setTimeout(s,i))},t.prototype._moveStep=function(t,e,i,s){var n,o,r;return null===this._chartModel||this._chartModel.timeScale().isEmpty()?void 0:((n=Date.now())1||!isFinite(o))&&(o=1),r=1-Math.pow(1-o,3),this._currentDistance=(i-e)*r+e,this._chartModel.scrollChart(this._currentDistance),o)},t.prototype._finishMove=function(){var t,e,i,s=this;clearTimeout(this._movingTimeout),this._movingTimeout=0,this._deferredFinishTimeout=0,t=this._currentDistance,e=Date.now(),i=function(){var n=s._moveStep(e,t,0,700);n&&n<1?s._finishingTimeout=setTimeout(i,10):null!==s._chartModel&&(s._state=B.wait_finishing,s._moveType="",s._movingTimeout=0,s._currentDistance=0,s._chartModel.endUndoMacro())},this._finishingTimeout=setTimeout(i,10)},t.prototype._stopMove=function(){"moving"===this._state&&(this._state=B.moving,Date.now()-this._startTime<200?this._deferredFinishTimeout=setTimeout(this._finishMove.bind(this),200-(Date.now()-this._startTime)):this._finishMove())},t.prototype._moveByBar=function(t){var e,i,s,n,o,r,l=this;if(null!==this._chartModel){if((e=this._chartModel.timeScale()).isEmpty())return;"stop"===this._state&&this._chartModel.beginUndoMacro(1===t?"Move Left":"Move Right"), +null!==e.visibleBarsStrictRange()&&(i=e.indexToCoordinate(e.visibleBarsStrictRange().lastBar())+e.barSpacing()/2,Math.abs(e.width()-i)>e.barSpacing()/6&&this._chartModel.scrollChart(e.width()-i)),this._state=B.stop,this._moveType="by_bar",this._startTime=Date.now(),this._movingTimeout||(s=0,n=150,o=400,r=function(){l._moveByBarStep(t),s++,n>100&&(n-=s/5*20),l._movingTimeout=setTimeout(r,n)},this._movingTimeout=setTimeout(r,o),this._moveByBarStep(t))}},t.prototype._moveByBarStep=function(t){if(null!==this._chartModel){if(this._chartModel.timeScale().isEmpty())return;this._chartModel.scrollChartByBar(t)}},t.prototype._stopMoveByBar=function(){"moving"===this._state&&(clearTimeout(this._movingTimeout),this._movingTimeout=0,this._state=B.wait_finishing,this._moveType="",this._movingTimeout=0,this._currentDistance=0,null!==this._chartModel&&this._chartModel.endUndoMacro())},t.prototype._keydownHandler=function(t){var e,i;t.metaKey||37!==(e=t.which)&&39!==e||this._pressedKey[e]||(this._pressedKey[e]=!0,t.target.closest("input, textarea")||(i=37===e?1:-1,t.ctrlKey||t.altKey?this._move(i):this._moveByBar(i),t.preventDefault()))},t.prototype._keyupHandler=function(t){var e=t.which;37!==e&&39!==e||t.target.closest("input, textarea")||(this._pressedKey[t.which]=!1,"by_bar"===this._moveType?this._stopMoveByBar():this._stopMove())},t.prototype._trackEvent=function(t){0},t}()},VLql:function(t,e){t.exports=''},c44J:function(t,e){t.exports=''},cgDJ:function(t,e){t.exports=''},e2QN:function(t,e){t.exports=''},e8Rm:function(t,e){t.exports=''},jrhZ:function(t,e,i){},kGiK:function(t,e){t.exports=''},koft:function(t,e,i){"use strict";function s(t,e,i){this._model=e, +this._paneWidget=t,this._chart=t._chart,this._mainDiv=i,this.jqDiv=$('
'),this._initVisibility(),this.update(),this.jqDiv.appendTo(i)}var n=i("1ANp");s.prototype.updateThemedColors=function(t){t?this.jqDiv[0].style.color=t:this.jqDiv[0].style.removeProperty("color")},s.prototype.update=function(){var t,e,s,n,o,r,l,a=this._paneWidget.state();if(a)if(this._visible&&this._chart.isActive()){if(this.jqDiv[0].classList.remove("pane-controls--hidden"),e=(t=this)._model.panes().indexOf(a),s=Modernizr.mobiletouch,this.jqDiv.toggleClass("toppane",0===e||this._chart.isMaximizedPane()),n=!1,!a.containsMainSeries()&&!this._chart.isMaximizedPane()){for(o=0,l=(r=a.dataSources()).length;l--;)if(r[l]instanceof TradingView.Study&&++o>1){n=!0;break}r=null}e>0&&!this._chart.isMaximizedPane()&&!s?(this._$upButton||(this._$upButton=$(document.createElement("a")).addClass("pane-legend-icon up").append($(i("C+zC"))).attr("title",$.t("Move Up")).on("click",function(){t._model.rearrangePanes(t._chart,t._model.panes().indexOf(t._paneWidget.state()),"up")})),this._$upButton.appendTo(this.jqDiv)):this._$upButton&&this._$upButton.detach(),e1&&!this._chart.isMaximizedPane()&&!s?(this._$maximizeButton||(this._$maximizeButton=$(document.createElement("a")).addClass("pane-legend-icon maximize").append($(i("c44J"))).attr("title",$.t("Toggle Maximize Pane")).on("click",function(){t._chart.toggleMaximizePane(t._paneWidget)})),this._$maximizeButton.appendTo(this.jqDiv)):this._$maximizeButton&&this._$maximizeButton.detach(),this._model.panes().length>1&&this._chart.isMaximizedPane()?(this._$restoreButton||(this._$restoreButton=$(document.createElement("a")).addClass("pane-legend-icon restore").append($(i("kGiK"))).attr("title",$.t("Toggle Maximize Pane")).on("click",function(){t._chart.toggleMaximizePane(t._paneWidget)})),this._$restoreButton.appendTo(this.jqDiv)):this._$restoreButton&&this._$restoreButton.detach()}else this.jqDiv[0].classList.add("pane-controls--hidden")},s.prototype.destroy=function(){this._visibilityProperty&&(this._visibilityProperty.unsubscribe(this,this._onVisibilityPropertyChange),this._visibilityProperty=null),this._boundMouseHandler&&(this._mainDiv[0].removeEventListener("mouseenter",this._boundMouseHandler,!1), +this._mainDiv[0].removeEventListener("mouseleave",this._boundMouseHandler,!1),this._boundMouseHandler=null),this.jqDiv.remove()},s.prototype._initVisibility=function(){this._visible=!0,this._visibilityProperty=n.actualBehavior(),this._visibilityProperty.subscribe(this,this._onVisibilityPropertyChange),this._onVisibilityPropertyChange()},s.prototype._onVisibilityPropertyChange=function(){var t=this._visibilityProperty.value();"alwaysOn"===t||"alwaysOff"===t?(this._visible="alwaysOn"===t,this._boundMouseHandler&&(this._mainDiv[0].removeEventListener("mouseenter",this._boundMouseHandler),this._mainDiv[0].removeEventListener("mouseleave",this._boundMouseHandler),this._boundMouseHandler=null)):(this._boundMouseHandler||(this._boundMouseHandler=this._visibilityMouseHandler.bind(this),this._mainDiv[0].addEventListener("mouseenter",this._boundMouseHandler),this._mainDiv[0].addEventListener("mouseleave",this._boundMouseHandler)),this._visible=!1),this.update()},s.prototype._visibilityMouseHandler=function(t){this._visible="mouseenter"===t.type,this.update()},t.exports=s},qfuz:function(t,e){t.exports=''},sGj7:function(t,e){t.exports=''},scAS:function(t,e){t.exports=''},vg09:function(t,e){t.exports=''}}]); \ No newline at end of file diff --git a/public/charting_library/static/bundles/clipboard.5403f9bd852af06addff.js b/public/charting_library/static/bundles/clipboard.5403f9bd852af06addff.js new file mode 100644 index 0000000..480d316 --- /dev/null +++ b/public/charting_library/static/bundles/clipboard.5403f9bd852af06addff.js @@ -0,0 +1,4 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([["clipboard"],{Ddwv:function(t,e,n){var o,i,r;i=[t,n("YDNs"),n("wOJ8"),n("TiCD")],void 0===(r="function"==typeof(o=function(t,e,n,o){"use strict";function i(t){return t&&t.__esModule?t:{default:t}}function r(t,e){var n="data-clipboard-"+t;if(e.hasAttribute(n))return e.getAttribute(n)}var a=i(e),c=i(n),l=i(o),u="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},s=function(){function t(t,e){var n,o;for(n=0;n0&&void 0!==arguments[0]?arguments[0]:{};this.action="function"==typeof t.action?t.action:this.defaultAction,this.target="function"==typeof t.target?t.target:this.defaultTarget,this.text="function"==typeof t.text?t.text:this.defaultText,this.container="object"===u(t.container)?t.container:document.body}},{key:"listenClick",value:function(t){var e=this;this.listener=(0,l.default)(t,"click",function(t){return e.onClick(t)})}},{key:"onClick",value:function(t){var e=t.delegateTarget||t.currentTarget;this.clipboardAction&&(this.clipboardAction=null),this.clipboardAction=new a.default({action:this.action(e),target:this.target(e),text:this.text(e),container:this.container,trigger:e,emitter:this})}},{key:"defaultAction",value:function(t){return r("action",t)}},{key:"defaultTarget",value:function(t){var e=r("target",t);if(e)return document.querySelector(e)}},{key:"defaultText",value:function(t){return r("text",t)}},{key:"destroy",value:function(){this.listener.destroy(),this.clipboardAction&&(this.clipboardAction.destroy(),this.clipboardAction=null)}}],[{key:"isSupported",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:["copy","cut"],e="string"==typeof t?[t]:t,n=!!document.queryCommandSupported;return e.forEach(function(t){n=n&&!!document.queryCommandSupported(t)}),n}}]),e}(c.default);t.exports=f})?o.apply(e,i):o)||(t.exports=r)},TiCD:function(t,e,n){var o=n("b+/x"),i=n("jFDo");t.exports=function(t,e,n){ +if(!t&&!e&&!n)throw new Error("Missing required arguments");if(!o.string(e))throw new TypeError("Second argument must be a String");if(!o.fn(n))throw new TypeError("Third argument must be a Function");if(o.node(t))return function(t,e,n){return t.addEventListener(e,n),{destroy:function(){t.removeEventListener(e,n)}}}(t,e,n);if(o.nodeList(t))return function(t,e,n){return Array.prototype.forEach.call(t,function(t){t.addEventListener(e,n)}),{destroy:function(){Array.prototype.forEach.call(t,function(t){t.removeEventListener(e,n)})}}}(t,e,n);if(o.string(t))return function(t,e,n){return i(document.body,t,e,n)}(t,e,n);throw new TypeError("First argument must be a String, HTMLElement, HTMLCollection, or NodeList")}},YDNs:function(t,e,n){var o,i,r;i=[t,n("gvr7")],void 0===(r="function"==typeof(o=function(t,e){"use strict";var n,o=(n=e)&&n.__esModule?n:{default:n},i="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},r=function(){function t(t,e){var n,o;for(n=0;n0&&void 0!==arguments[0]?arguments[0]:{};this.action=t.action,this.container=t.container,this.emitter=t.emitter,this.target=t.target,this.text=t.text,this.trigger=t.trigger,this.selectedText=""}},{key:"initSelection",value:function(){this.text?this.selectFake():this.target&&this.selectTarget()}},{key:"selectFake",value:function(){var t,e=this,n="rtl"==document.documentElement.getAttribute("dir");this.removeFake(),this.fakeHandlerCallback=function(){return e.removeFake()},this.fakeHandler=this.container.addEventListener("click",this.fakeHandlerCallback)||!0,this.fakeElem=document.createElement("textarea"),this.fakeElem.style.fontSize="12pt",this.fakeElem.style.border="0",this.fakeElem.style.padding="0",this.fakeElem.style.margin="0",this.fakeElem.style.position="absolute",this.fakeElem.style[n?"right":"left"]="-9999px",t=window.pageYOffset||document.documentElement.scrollTop,this.fakeElem.style.top=t+"px",this.fakeElem.setAttribute("readonly",""),this.fakeElem.value=this.text,this.container.appendChild(this.fakeElem),this.selectedText=(0,o.default)(this.fakeElem),this.copyText()}},{key:"removeFake",value:function(){this.fakeHandler&&(this.container.removeEventListener("click",this.fakeHandlerCallback),this.fakeHandler=null,this.fakeHandlerCallback=null),this.fakeElem&&(this.container.removeChild(this.fakeElem),this.fakeElem=null)}},{key:"selectTarget",value:function(){this.selectedText=(0,o.default)(this.target),this.copyText()}},{key:"copyText",value:function(){var t=void 0;try{ +t=document.execCommand(this.action)}catch(e){t=!1}this.handleResult(t)}},{key:"handleResult",value:function(t){this.emitter.emit(t?"success":"error",{action:this.action,text:this.selectedText,trigger:this.trigger,clearSelection:this.clearSelection.bind(this)})}},{key:"clearSelection",value:function(){this.trigger&&this.trigger.focus(),window.getSelection().removeAllRanges()}},{key:"destroy",value:function(){this.removeFake()}},{key:"action",set:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"copy";if(this._action=t,"copy"!==this._action&&"cut"!==this._action)throw new Error('Invalid "action" value, use either "copy" or "cut"')},get:function(){return this._action}},{key:"target",set:function(t){if(void 0!==t){if(!t||"object"!==(void 0===t?"undefined":i(t))||1!==t.nodeType)throw new Error('Invalid "target" value, use a valid Element');if("copy"===this.action&&t.hasAttribute("disabled"))throw new Error('Invalid "target" attribute. Please use "readonly" instead of "disabled" attribute');if("cut"===this.action&&(t.hasAttribute("readonly")||t.hasAttribute("disabled")))throw new Error('Invalid "target" attribute. You can\'t cut text from elements with "readonly" or "disabled" attributes');this._target=t}},get:function(){return this._target}}]),t}();t.exports=a})?o.apply(e,i):o)||(t.exports=r)},"b+/x":function(t,e){e.node=function(t){return void 0!==t&&t instanceof HTMLElement&&1===t.nodeType},e.nodeList=function(t){var n=Object.prototype.toString.call(t);return void 0!==t&&("[object NodeList]"===n||"[object HTMLCollection]"===n)&&"length"in t&&(0===t.length||e.node(t[0]))},e.string=function(t){return"string"==typeof t||t instanceof String},e.fn=function(t){return"[object Function]"===Object.prototype.toString.call(t)}},gvr7:function(t,e){t.exports=function(t){var e,n,o,i;return"SELECT"===t.nodeName?(t.focus(),e=t.value):"INPUT"===t.nodeName||"TEXTAREA"===t.nodeName?((n=t.hasAttribute("readonly"))||t.setAttribute("readonly",""),t.select(),t.setSelectionRange(0,t.value.length),n||t.removeAttribute("readonly"),e=t.value):(t.hasAttribute("contenteditable")&&t.focus(),o=window.getSelection(),(i=document.createRange()).selectNodeContents(t),o.removeAllRanges(),o.addRange(i),e=o.toString()),e}},jFDo:function(t,e,n){function o(t,e,n,o,r){var a=function(t,e,n,o){return function(n){n.delegateTarget=i(n.target,e),n.delegateTarget&&o.call(t,n)}}.apply(this,arguments);return t.addEventListener(n,a,r),{destroy:function(){t.removeEventListener(n,a,r)}}}var i=n("lNia");t.exports=function(t,e,n,i,r){return"function"==typeof t.addEventListener?o.apply(null,arguments):"function"==typeof n?o.bind(null,document).apply(null,arguments):("string"==typeof t&&(t=document.querySelectorAll(t)),Array.prototype.map.call(t,function(t){return o(t,e,n,i,r)}))}},lNia:function(t,e){var n,o=9;"undefined"==typeof Element||Element.prototype.matches||((n=Element.prototype).matches=n.matchesSelector||n.mozMatchesSelector||n.msMatchesSelector||n.oMatchesSelector||n.webkitMatchesSelector),t.exports=function(t,e){for(;t&&t.nodeType!==o;){ +if("function"==typeof t.matches&&t.matches(e))return t;t=t.parentNode}}},wOJ8:function(t,e){function n(){}n.prototype={on:function(t,e,n){var o=this.e||(this.e={});return(o[t]||(o[t]=[])).push({fn:e,ctx:n}),this},once:function(t,e,n){function o(){i.off(t,o),e.apply(n,arguments)}var i=this;return o._=e,this.on(t,o,n)},emit:function(t){for(var e=[].slice.call(arguments,1),n=((this.e||(this.e={}))[t]||[]).slice(),o=0,i=n.length;o2&&void 0!==arguments[2]?arguments[2]:{};for(w=$.extend({},{title:$.t("Confirm Inputs"),callback:function(t){}},w),n=null,a=(0,o.createDialog)({title:w.title,contentWrapTemplate:'
',width:c,closeOnClickAtOtherDialogs:!0,destroyOnClose:!0,actionsWrapTemplate:'
',isClickOutFn:function(t){var e=n.symbolSearchPopup();if(e)return e[0]!==t.target&&!e[0].contains(t.target)&&void 0},actions:[{name:"apply",type:"primary",text:$.t("Apply"),key:13}]}),r=a,d=(0,l.merge)({},e.defaults.inputs),u=0;uc&&a.$el.css("max-width",m),g.find("input,select").first().focus()},e.instance=function(){return r},o=n("YDhE"),i=n("L9lC"),l=n("ogJP"),a=n("tc+8"),s=(d=a)&&d.__esModule?d:{default:d},n("PVgW"),n("jgM0"),n("KFNk"),c=450,r=null}}]); \ No newline at end of file diff --git a/public/charting_library/static/bundles/confirm-symbol-input-dialog.c72289c830292c73812f.js b/public/charting_library/static/bundles/confirm-symbol-input-dialog.c72289c830292c73812f.js new file mode 100644 index 0000000..be24ec1 --- /dev/null +++ b/public/charting_library/static/bundles/confirm-symbol-input-dialog.c72289c830292c73812f.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([["confirm-symbol-input-dialog"],{kzGG:function(n,o,t){"use strict";function e(n,o,t){var e,i,p,a=$('');a.css({float:"none","box-sizing":"border-box",width:"100%"}),e=null,i=Object(c.createDialog)({title:o||window.t("Add Symbol"),width:400,actions:[{name:"apply",text:window.t("Apply"),type:"primary"}],content:a,isClickOutFn:function(n){if(e&&(n.target===e[0]||e[0].contains(n.target)))return!1}}),p=Object(l.symbolSearchUIService)().bindToInput(a,{callback:function(o){n(o),i.close()},onPopupOpen:function(n){n.css("z-index",i.zIndex),e=n},onPopupClose:function(){e=null}}),i.on("action:apply",function(){p.then(function(n){n.acceptTypeIn()})}),t&&i.on("beforeClose",function(){t()}),i.open()}var i,c,l;t.r(o),t.d(o,"showConfirmSymbolInputDialog",function(){return e}),i=t("P5fv"),t("YFKU"),c=t("YDhE"),l=t("pZll")}}]); \ No newline at end of file diff --git a/public/charting_library/static/bundles/context-menu-renderer.5eff9c34fa03e94b2c1b.js b/public/charting_library/static/bundles/context-menu-renderer.5eff9c34fa03e94b2c1b.js new file mode 100644 index 0000000..a525b8c --- /dev/null +++ b/public/charting_library/static/bundles/context-menu-renderer.5eff9c34fa03e94b2c1b.js @@ -0,0 +1,5 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([["context-menu-renderer"],{"G/dZ":function(e,t,n){e.exports={toolbox:"toolbox-1zer1221-"}},Gpmm:function(e,t,n){e.exports={row:"row-1Gn06tA2-",line:"line-c_e_alAN-",hint:"hint-18i4fysm-"}},K5ke:function(e,t,n){e.exports={loader:"loader-3Pj8ExOX-",item:"item-2n55_7om-","tv-button-loader":"tv-button-loader-SKpJjjYw-",black:"black-eFIQWyf4-",white:"white-2Ma0ajvT-",gray:"gray-24fvVR0S-"}},X64X:function(e,t,n){e.exports={loaderWrap:"loaderWrap-18NjkayD-",loader:"loader-Cgjcl0qz-"}},cbq4:function(e,t,n){"use strict";function o(e){return l.createElement("tr",{className:_.row},l.createElement("td",null,l.createElement("div",{className:_.line})),l.createElement("td",null,l.createElement("div",{className:_.line}),e.hint?l.createElement("div",{className:_.hint},e.hint):null))}function s(e){return l.createElement(C,{icon:w,onClick:e.onClick})}function r(e){return l.createElement(E,{label:l.createElement("div",{className:g.loaderWrap},l.createElement(O.a,{className:g.loader,color:"gray"})),noInteractive:!0,onMouseOver:e.onMouseOver})}function i(e){return l.createElement(E,{label:e.label,noInteractive:!0,disabled:!0,onMouseOver:e.onMouseOver})}var a,l,c,u,p,h,m,d,_,f,v,b,S,y,C,w,E,k,x,N,M,g,O,I,T,D,H,P,A,j;n.r(t),a=n("mrSG"),l=n("q1tI"),c=n("i8i4"),u=n("DTHj"),p=n("RgaO"),h=n("ycI/"),m=n("TSYQ"),d=n("zRdu"),_=n("Gpmm"),f=n("ycgn"),v=n("euMy"),b=n("hn2c"),n("bf9a"),S=n("L/Ed"),y=n("G/dZ"),C=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t._handleClick=function(e){t.props.onClick(e.nativeEvent)},t}return a.__extends(t,e),t.prototype.render=function(){return l.createElement("span",{className:y.toolbox,dangerouslySetInnerHTML:{__html:this.props.icon},onClick:this._handleClick,"data-toolbox-icon":!0})},t}(l.PureComponent),w=n("PgQx"),E=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t._handleMouseOver=function(e){var n,o,s;(n=e.nativeEvent,o=n.sourceCapabilities,void 0===(s=o&&o.firesTouchEvents)&&(s=Modernizr.touch),s)||t.props.onMouseOver&&t.props.onMouseOver()},t._handleClickToolbox=function(e){e.stopPropagation(),t.props.onClickToolbox&&t.props.onClickToolbox()},t}return a.__extends(t,e),t.prototype.render=function(){return l.createElement(l.Fragment,null,l.createElement("tr",{className:m(f.item,!this.props.noInteractive&&f.interactive,this.props.hovered&&f.hovered,this.props.disabled&&f.disabled,this.props.active&&f.active),onClick:this.props.onClick,onMouseOver:this._handleMouseOver,ref:this.props.reference,"data-action-name":this.props.actionName},l.createElement("td",{className:m(f.iconCell),"data-icon-cell":!0},this._icon()),l.createElement("td",null,l.createElement("div",{className:f.content},l.createElement("span",{className:m(f.label,this.props.checked&&f.checked),"data-label":!0},this.props.label),this._toolbox(),this.props.hasSubItems?l.createElement("span",{className:f.arrowIcon,dangerouslySetInnerHTML:{__html:b},"data-submenu-arrow":!0 +}):null,!this.props.hasSubItems&&this.props.shortcutHint?l.createElement("span",{className:f.shortcut},this.props.shortcutHint):null))),l.createElement("tr",{className:f.subMenu},l.createElement("td",null,this.props.children)))},t.prototype._icon=function(){var e,t;return this.props.checkable?this.props.checked?(e=!this.props.icon&&!this.props.iconChecked,t=this.props.iconChecked||this.props.icon||v,l.createElement("span",{className:m(f.icon,e&&f.checkmark),dangerouslySetInnerHTML:{__html:t},"data-icon-checkmark":e})):this.props.icon?l.createElement("span",{className:f.icon,dangerouslySetInnerHTML:{__html:this.props.icon}}):l.createElement("span",{className:f.icon}):this.props.icon?l.createElement("span",{className:f.icon,dangerouslySetInnerHTML:{__html:this.props.icon}}):null},t.prototype._toolbox=function(){return this.props.toolbox?l.createElement("span",{className:m(f.toolbox,this.props.showToolboxOnHover&&f.showToolboxOnHover),onClick:this._handleClickToolbox,"data-toolbox":!0},this._renderToolboxContent()):null},t.prototype._renderToolboxContent=function(){if(this.props.toolbox)switch(this.props.toolbox.type){case S.ToolboxType.Delete:return l.createElement(s,{onClick:this.props.toolbox.action})}return null},t}(l.PureComponent),k=n("tWVy"),x=n("tITk"),N=n("Ialn"),M=function(e){function t(t){var n=e.call(this,t)||this;return n._itemRef=null,n._handleClick=function(e){e.isDefaultPrevented()||n.state.disabled||(n._hasSubItems()?n._showSubMenu():(n.state.doNotCloseOnClick||Object(k.b)(),n.props.action.execute(),n._trackEvent()))},n._handleClickToolbox=function(){Object(k.b)()},n._showSubMenu=function(){n.props.onShowSubMenu(n.props.action)},n._calcSubMenuPos=function(e,t){var o,s,r,i,a,l,c;return n._itemRef?(s=(o=n._itemRef.getBoundingClientRect()).left,r=o.right,i=o.top,a=document.documentElement.clientWidth,l={x:s-e,y:i},c={x:r,y:i},N.IS_RTL?s<=e?c:l:a-r>=e?c:l):{x:0,y:10}},n._updateState=function(e){n.setState(e.getState())},n._setItemRef=function(e){n._itemRef=e},n.state=a.__assign({},n.props.action.getState()),n}return a.__extends(t,e),t.prototype.componentDidMount=function(){this.props.action.onUpdate().subscribe(this,this._updateState)},t.prototype.componentWillUnmount=function(){this.props.action.onUpdate().unsubscribe(this,this._updateState)},t.prototype.render=function(){return l.createElement(E,a.__assign({reference:this._setItemRef,onClick:this._handleClick,onClickToolbox:this._handleClickToolbox,onMouseOver:this._showSubMenu,hovered:this.props.isSubMenuOpened,hasSubItems:this._hasSubItems(),actionName:this.state.name},this.state),l.createElement(A,{isOpened:this.props.isSubMenuOpened,items:this.state.subItems,position:this._calcSubMenuPos,menuStatName:this.props.menuStatName,parentStatName:this._getStatName()}))},t.prototype._hasSubItems=function(){return this.state.subItems.length>0},t.prototype._trackEvent=function(){var e=this._getStatName();Object(x.trackEvent)("ContextMenuClick",this.props.menuStatName||"",e)},t.prototype._getStatName=function(){ +return[this.props.parentStatName,this.state.statName].filter(function(e){return Boolean(e)}).join(".")},t}(l.PureComponent),g=n("X64X"),O=n("ntfI"),I=n("4O8T"),T=n.n(I),D=function(e){function t(t){var n=e.call(this,t)||this;return n._loadEmitter=new T.a,n._onDone=function(){n.setState({loaded:!0,failed:!1})},n._onFail=function(e){n.setState({failed:!0,error:e})},n._handleMouseOver=function(){n.props.onShowSubMenu(n.props.action)},n.state={loaded:n.props.action.isLoaded(),failed:!1,error:""},n}return a.__extends(t,e),t.prototype.componentDidMount=function(){this._loadEmitter.on("done",this._onDone),this._loadEmitter.on("fail",this._onFail),this._load()},t.prototype.componentWillUnmount=function(){this._loadEmitter.removeEvent("done"),this._loadEmitter.removeEvent("fail")},t.prototype.render=function(){return this.state.failed?l.createElement(i,{label:this.state.error,onMouseOver:this._handleMouseOver}):this.state.loaded?l.createElement(M,a.__assign({},this.props)):l.createElement(r,{onMouseOver:this._handleMouseOver})},t.prototype._load=function(){var e=this;this.props.action.loadOptions().then(function(){e._loadEmitter.emit("done")}).catch(function(t){e._loadEmitter.emit("fail",t)})},t}(l.PureComponent),H=function(e){function t(t){var n=e.call(this,t)||this;return n._handleShowSubMenu=function(e){var t=e.getState();n.setState({showSubMenuOf:t.subItems.length?e:void 0})},n.state={},n}return a.__extends(t,e),t.prototype.render=function(){var e=this;return l.createElement("table",null,l.createElement("tbody",null,this.props.items.map(function(t){return e._item(t)})))},t.getDerivedStateFromProps=function(e,t){return!e.parentIsOpened&&t.showSubMenuOf?{showSubMenuOf:void 0}:null},t.prototype._item=function(e){switch(e.type){case d.a.Separator:return l.createElement(o,{key:e.id,hint:e.getHint()});case d.a.Action:return l.createElement(M,{key:e.id,action:e,onShowSubMenu:this._handleShowSubMenu,isSubMenuOpened:this.state.showSubMenuOf===e,menuStatName:this.props.menuStatName,parentStatName:this.props.parentStatName});case d.a.ActionAsync:return l.createElement(D,{key:e.id,action:e,onShowSubMenu:this._handleShowSubMenu,isSubMenuOpened:this.state.showSubMenuOf===e,menuStatName:this.props.menuStatName,parentStatName:this.props.parentStatName});default:return null}},t}(l.PureComponent),P=n("t3rk"),A=function(e){function t(t){var n=e.call(this,t)||this;return n._handleClose=function(){n.props.onClose&&n.props.onClose()},n._handleOutsideClickClose=function(e){var t=n.props,o=t.doNotCloseOn,s=t.onClose;!s||void 0!==o&&o.contains(e.target)||s()},n.state={},n}return a.__extends(t,e),t.prototype.render=function(){var e=this.props,t=e.isOpened,n=(e.onClose,e.items),o=(e.doNotCloseOn,e.menuStatName),s=e.parentStatName,r=a.__rest(e,["isOpened","onClose","items","doNotCloseOn","menuStatName","parentStatName"]);return t?l.createElement(p.a,{handler:this._handleOutsideClickClose,mouseDown:!0,touchStart:!0,ctor:"div"},l.createElement(h.a,{keyCode:27,eventType:"keyup",handler:this._handleClose}),l.createElement(u.a,a.__assign({},r,{ +isOpened:this.props.isOpened,className:m(P.menu,"context-menu"),onClose:this._handleClose,noMomentumBasedScroll:!0}),l.createElement(H,{items:n,menuStatName:o,parentStatName:s,parentIsOpened:t}))):null},t}(l.PureComponent),n.d(t,"ContextMenuRenderer",function(){return j}),j=function(){function e(e,t,n,o){this._root=null,this._isShown=!1,this._props={isOpened:!1,items:e,position:{x:0,y:0},menuStatName:t.statName},this._onDestroy=n,this._onShow=o}return e.prototype.show=function(e,t,n){var o=this;this._onShow&&this._onShow(),this._isShown=!0,this._render(a.__assign({},this._props,{position:function(t,o){return"function"==typeof e&&(e=e(t,o)),e.touches&&e.touches.length>0&&(e={clientX:e.touches[0].clientX,clientY:e.touches[0].clientY}),{x:!n&&N.IS_RTL?e.clientX-t:e.clientX,y:e.clientY,overrideHeight:e.overrideHeight}},isOpened:!0,onClose:function(){o.hide(),o.destroy()},doNotCloseOn:t}))},e.prototype.hide=function(){this._isShown=!1,this._render(a.__assign({},this._props,{isOpened:!1}))},e.prototype.isShown=function(){return this._isShown},e.prototype.destroy=function(){this._isShown=!1,this._root&&(c.unmountComponentAtNode(this._root),document.body.removeChild(this._root),this._root=null),this._onDestroy&&this._onDestroy()},e.prototype._render=function(e){this._root||(this._root=document.createElement("span"),this._root.className="context-menu-wrapper",document.body.appendChild(this._root)),c.render(l.createElement(A,e),this._root)},e}()},euMy:function(e,t){e.exports=''},hn2c:function(e,t){e.exports=''},ntfI:function(e,t,n){"use strict";var o,s,r,i,a,l,c;n.d(t,"a",function(){return c}),o=n("mrSG"),s=n("q1tI"),r=n("TSYQ"),i=n("j1f4"),a=n("K5ke"),function(e){e[e.Initial=0]="Initial",e[e.Appear=1]="Appear",e[e.Active=2]="Active"}(l||(l={})),c=function(e){function t(t){var n=e.call(this,t)||this;return n._stateChangeTimeout=null,n.state={state:l.Initial},n}return o.__extends(t,e),t.prototype.render=function(){var e,t=this.props,n=t.className,o=t.color,i=void 0===o?"black":o,l=r(a.item,((e={})[a[i]]=Boolean(i),e));return s.createElement("span",{className:r(a.loader,n,this._getStateClass())},s.createElement("span",{className:l}),s.createElement("span",{className:l}),s.createElement("span",{className:l}))},t.prototype.componentDidMount=function(){var e=this;this.setState({state:l.Appear}),this._stateChangeTimeout=setTimeout(function(){e.setState({state:l.Active})},2*i.dur)},t.prototype.componentWillUnmount=function(){this._stateChangeTimeout&&(clearTimeout(this._stateChangeTimeout),this._stateChangeTimeout=null)},t.prototype._getStateClass=function(){switch(this.state.state){case l.Initial:return"loader-initial";case l.Appear:return"loader-appear";default:return""}},t}(s.PureComponent)}, +t3rk:function(e,t,n){e.exports={menu:"menu-1y0eDKzl-"}},"ycI/":function(e,t,n){"use strict";var o,s,r;n.d(t,"a",function(){return r}),o=n("mrSG"),s=n("q1tI"),r=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t._handleKeyDown=function(e){e.keyCode===t.props.keyCode&&t.props.handler(e)},t}return o.__extends(t,e),t.prototype.componentDidMount=function(){document.addEventListener(this.props.eventType||"keydown",this._handleKeyDown,!1)},t.prototype.componentWillUnmount=function(){document.removeEventListener(this.props.eventType||"keydown",this._handleKeyDown,!1)},t.prototype.render=function(){return null},t}(s.PureComponent)},ycgn:function(e,t,n){e.exports={item:"item-stVdeCwG-",interactive:"interactive-3E0jwVyG-",hovered:"hovered-2HCCgw6c-",disabled:"disabled-2K7FyUI3-",active:"active-muW4lycL-",shortcut:"shortcut-2P38AivB-",iconCell:"iconCell-OhwVvlgA-",icon:"icon-3DDcYD-t-",checkmark:"checkmark-2UE1siCn-",content:"content-1GXgstZ5-",label:"label-1If3beUH-",checked:"checked-5eQn8630-",toolbox:"toolbox-2XX2mSNw-",showToolboxOnHover:"showToolboxOnHover-iCrUIcOG-",arrowIcon:"arrowIcon-2FMesq_x-",subMenu:"subMenu-QM4GIDtY-"}}}]); \ No newline at end of file diff --git a/public/charting_library/static/bundles/create-dialog.472fe015128398f27a86.js b/public/charting_library/static/bundles/create-dialog.472fe015128398f27a86.js new file mode 100644 index 0000000..7c94446 --- /dev/null +++ b/public/charting_library/static/bundles/create-dialog.472fe015128398f27a86.js @@ -0,0 +1,6 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([["create-dialog"],{"33OQ":function(t,e,i){"use strict";(function(o){function s(){d.width=window.innerWidth,d.height=p.height()}function n(t){var e=d.device;d.device=t,d.trigger("changeDevice",[t,e])}var r,h,a,l,p,c,d,u,_,g,f,v;for(Object.defineProperty(e,"__esModule",{value:!0}),r=i("4O8T"),h=(f=r)&&f.__esModule?f:{default:f},a=i("BI5g"),l=$("body"),p=$(window),c=0,d={width:null,height:null,device:null,isSafari:!!navigator.userAgent.match(/Version\/[\d\.]+.*Safari/)||!!navigator.userAgent.match("CriOS"),getScrollbarWidth:(v=void 0,function(){var t,e,i,o;return void 0===v&&((t=document.createElement("div")).style.visibility="hidden",t.style.width="100px",t.style.msOverflowStyle="scrollbar",document.body.appendChild(t),e=t.offsetWidth,t.style.overflow="scroll",(i=document.createElement("div")).style.width="100%",t.appendChild(i),o=i.offsetWidth,t.parentNode.removeChild(t),v=e-o),v}),hasScroll:function(t){return t.get(0).scrollHeight>t.height()},breakpoints:a.breakpoints,widgetbarBreakpoint:1064,setFixedBodyState:function(t){var e,i;t&&1==++c?("hidden"!==$(document.body).css("overflow").toLowerCase()&&document.body.scrollHeight>document.body.offsetHeight&&($(".widgetbar-wrap").css("right",d.getScrollbarWidth()),l.css("padding-right",parseInt(l.css("padding-right").replace("px",""))+d.getScrollbarWidth()+"px").data("wasScroll",!0)),l.addClass("i-no-scroll")):!t&&c>0&&0==--c&&(l.removeClass("i-no-scroll"),l.data("wasScroll")&&(e=l.get(0),$(".widgetbar-wrap").css("right",0),i=$(".widgetbar-wrap").width()||0,e.scrollHeight<=e.clientHeight&&(i-=d.getScrollbarWidth()),l.css("padding-right",(i<0?0:i)+"px").data("wasScroll",void 0)))}},u=Object.keys(d.breakpoints).sort(function(t,e){return d.breakpoints[t]-d.breakpoints[e]}),o.extend(d,h.default.prototype),s(),$(s),p.on("resize",s),_=function(t){var e,i,o=u[t],r=0===t?0:d.breakpoints[u[t-1]]+1,h=d.breakpoints[o],a=(e=r,(i=h)===1/0?window.matchMedia("(min-width: "+e+"px)"):window.matchMedia("(min-width: "+e+"px) and (max-width: "+i+"px)"));a.matches&&n(o),a.addListener(function(t){t.matches&&(s(),n(o))})},g=0;g').appendTo(this._$wrapper)),!1!==this._options.showBottomShadow&&(this._$shadowBottom=$('
').appendTo(this._$wrapper)),this._$shadowTop&&this._header_height&&this._$shadowTop.css("top",this._header_height-this._shadow_offset),n=this._options.additionalClass?" "+this._options.additionalClass:"",r=this._options.alwaysVisible?" active-always":"",this._$scrollBarWrapper=$('
').appendTo(this._$wrapper),this._$scrollBar=$('
').appendTo(this._$scrollBarWrapper),this._onScroll()}var s,n=i("5qpw").lazyJqueryUI;i("nzny"),s=i("pLUm"),o.prototype.isTouch=function(){return this._touch},o.prototype.getScrollBar=function(){return this._$scrollBar},o.prototype._defaultOptions={headerHeight:0,additionalClass:"",alwaysVisible:!1,showBottomShadow:!0,scrollMarginTop:1,bubbleScrollEvent:!1},o.prototype.initDraggable=function(){if(this._dragInitialized)return this;var t=this;return n(this._$scrollBar).draggable({axis:"y",containment:this._$scrollBarWrapper,start:function(){t._dragging=!0},stop:function(){t._dragging=!1},drag:function(e,i){t.updateScroll()}}),this._dragInitialized=!0,this},o.prototype.updateScroll=function(){var t,e,i,o,s;return this._touch?this:(t=1,e=Math.ceil(this._$scrollBar.position().top-this._scroll_margin_top-this._header_height),i=this.getContainerHeightWithoutHeader(),s=(o=this._$content.outerHeight())-i-t,i<=0?this:(this._scroll_target_top=s<=0?this._header_height:Math.min(-e*o/i+this._header_height,this._header_height),e+this._$scrollBar.height()+2>=i?this.scrollToEnd():(this._$content.css("top",this._scroll_target_top+"px"),this._onScroll()),this))},o.prototype.getContainerHeightWithoutHeader=function(){return this._$wrapper[0].getBoundingClientRect().height-this._header_height},o.prototype.getContainerHeight=function(){return this._$wrapper[0].getBoundingClientRect().height}, +o.prototype.getContentHeight=function(){return this._$content[0].getBoundingClientRect().height},o.prototype.updateScrollBar=function(){var t,e,i,o,s,n,r,h,a;return this._touch?this:(t=1,e=this._$content.position().top,i=this.getContentHeight(),o=this.getContainerHeight(),s=this.getContainerHeightWithoutHeader(),n=t+this._header_height,r=s-2*t,h=(Math.abs(e)-this._header_height)*r/i,a=o*o/i,this.isContentShort()?(this._$scrollBar.addClass("js-hidden"),this._$wrapper.removeClass("sb-scroll-active")):(this._$scrollBar.removeClass("js-hidden").height(a).css("top",n+h),this._$wrapper.addClass("sb-scroll-active"),this.initDraggable()),this)},o.prototype.scroll=function(t,e){var i=this._$content.position().top,o=this._$content.outerHeight(),s=this.getContainerHeightWithoutHeader(),n=o-s-1,r=e||this._scroll_speed;return n<=0||(this._scroll_target_top=Math.max(-n+this._header_height,Math.min(this._header_height,i+t*r)),this.setContentTop(this._scroll_target_top),this._onScroll())},o.prototype.animateTo=function(t){var e;return this._touch?this:(e=this._$content.outerHeight()-this.getContainerHeightWithoutHeader()-1)<=0||(this._scroll_target_top=Math.max(-e+this._header_height,Math.min(this._header_height,-t)),void this._$content.animate({top:this._scroll_target_top},500,function(){this._onScroll()}.bind(this)))},o.prototype.resize=function(){var t,e;this._bottomFixed||(t=this._$content.outerHeight(),e=this._$wrapper.outerHeight(),!this._options.vAlignBottom&&ts&&t+e.areaHeightn?n-t-e.areaHeight:s-t}else"top"===e.position&&(r=s-t);return this.scroll(r,1),this._onScroll(),!1},o.prototype.scrollToEnd=function(){var t=1,e=this._$content.position().top,i=this._$content.outerHeight(),o=this._$wrapper.outerHeight(),s=i+e,n=i>o?e+(o-s)+t:t;return this.setContentTop(n),this._onScroll(),this},o.prototype.scrollToStart=function(){return this.setContentTop(this._header_height),this._onScroll(),this},o.prototype.currentPosition=function(){return Math.round(this._$content.position().top)},o.prototype.atStart=function(){return Math.round(this._$content.position().top)>=this._header_height},o.prototype.atEnd=function(t){var e,i,o,s;return"number"==typeof t&&isFinite(t)||(t=0),e=1,i=Math.round(this._$content.position().top), +o=this._$content.outerHeight(),s=this._$wrapper.outerHeight(),o-Math.abs(i)-e<=s+t},o.prototype._onScroll=function(t){var e,i;return this._touch||this._$content.css("bottom","auto"),this.scrolled.fire(),this._dragging&&!0!==t||this.updateScrollBar(),e=this.atStart(),i=this.atEnd(),this._$shadowTop&&this._$shadowTop.toggleClass("i-invisible",!!e),this._$shadowBottom&&this._$shadowBottom.toggleClass("i-invisible",!!i),this._onContentVisible(),!this._atStart&&e?(this._atStart=!0,this.scrolltostart.fire()):this._atStart&&!e&&delete this._atStart,!this._atEnd&&i?(this._atEnd=!0,this.scrolltoend.fire()):this._atEnd&&!i&&delete this._atEnd,this._options.vAlignBottom&&(this._stickyBottom=this._$content.outerHeight()-Math.abs(this._$content.position().top)-this._$wrapper.outerHeight()),!(!this._atStart&&!this._atEnd||("function"==typeof this._options.bubbleScrollEvent?!this._options.bubbleScrollEvent():!this._options.bubbleScrollEvent))},o.prototype.checkContentVisibility=function(){this._onContentVisible()},o.prototype.subscribeToContentVisible=function(t,e,i){this.visibilityCallbacks.push({id:t,$el:e,callback:i})},o.prototype.triggerVisibilityCallbacks=function(t){this._onContentVisible(t)},o.prototype._contentIsVisible=function(t){return t.$el.position().top>-1*this.currentPosition()},o.prototype._onContentVisible=function(t){var e,i,o;this.visibilityCallbacks.length&&(e=t||this._contentIsVisible.bind(this),i=[],o=this.visibilityCallbacks.filter(function(t,o){if(!$.contains(this._$content,t.$el[0]))return!1;var s=e(t);return s&&i.push(o),!s},this),i.forEach(function(e){this.visibilityCallbacks[e].callback(!!t)},this),delete this.visibilityCallbacks,this.visibilityCallbacks=o)},o.prototype.save=function(){return this._saved={top:this._$content.position().top,height:this._$content.outerHeight()},this},o.prototype.restore=function(){if(this._saved){if(this._saved.top===this._$content.position().top&&this._saved.height===this._$content.outerHeight())return delete this._saved,this;this._options.vAlignBottom&&(this._saved.top-=this._$content.outerHeight()-this._saved.height,this._saved.top>this._header_height&&(this._saved.top=this._header_height)),this.setContentTop(this._saved.top),delete this._saved,this._onScroll(!0)}return this},o.prototype.fixBottom=function(){var t,e;return this._bottomFixed?this:(this._touch?(t=this._$content.outerHeight(),e=this._$wrapper.scrollTop(),this._tempIntervalID=setInterval(function(){this._$wrapper.scrollTop(e+(this._$content.outerHeight()-t))}.bind(this),0)):this._$content.css({top:"auto",bottom:this._$wrapper.outerHeight()-this._$content.position().top-this._$content.outerHeight()}),this._bottomFixed=!0,this)},o.prototype.releaseBottom=function(){return this._bottomFixed?(this._touch?clearInterval(this._tempIntervalID):this._$content.css({top:this._$content.position().top,bottom:"auto"}),delete this._bottomFixed,this._onScroll(),this):this},o.prototype.setContentTop=function(t){ +return this._touch?this._options.vAlignBottom&&this._$content.outerHeight()'}}]); \ No newline at end of file diff --git a/public/charting_library/static/bundles/crosshair.6c091f7d5427d0c5e6d9dc3a90eb2b20.cur b/public/charting_library/static/bundles/crosshair.6c091f7d5427d0c5e6d9dc3a90eb2b20.cur new file mode 100644 index 0000000..10251fa Binary files /dev/null and b/public/charting_library/static/bundles/crosshair.6c091f7d5427d0c5e6d9dc3a90eb2b20.cur differ diff --git a/public/charting_library/static/bundles/dialogs-core.c712826575e8ea62d8e0.js b/public/charting_library/static/bundles/dialogs-core.c712826575e8ea62d8e0.js new file mode 100644 index 0000000..c546106 --- /dev/null +++ b/public/charting_library/static/bundles/dialogs-core.c712826575e8ea62d8e0.js @@ -0,0 +1,9 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([["dialogs-core"],{"6aJD":function(t,e,o){"use strict";var n=o("APlX");o.d(e,"a",function(){return n.TVModal})},APlX:function(t,e,o){"use strict";(function(t){function n(t){var e,o;if(t&&t.__esModule)return t;if(e={},null!=t)for(o in t)Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o]);return e.default=t,e}var i,s,r,a,l,c,u,d,p,h,f,g,v,b,y;Object.defineProperty(e,"__esModule",{value:!0}),e.TVModal=void 0,i=Object.assign||function(t){var e,o,n;for(e=1;e
',containerTemplate:'
',ajaxErrorTemplate:'
'+window.t("Error")+"
"},e.TVModal=function(e){function o(){var t,e,n,s,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,o),(t=function(t,e){if(!t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!e||"object"!=typeof e&&"function"!=typeof e?t:e}(this,(o.__proto__||Object.getPrototypeOf(o)).call(this,i({},b,r)))).$overlay=$(t.options.overlayTemplate),t.$modalWrap=$(t.options.containerTemplate),t.$body=t.$modalWrap.find(".tv-dialog__modal-body").append(t.$el),t.options.closeOnOutsideClick&&t.$overlay.add(t.$modalWrap).click(function(e){t.isEventOut(e)&&t.close()}),t.on("change:zIndex",function(){t.$overlay.css("z-index",t.zIndex),t.$modalWrap.css("z-index",t.zIndex)}),t.on("destroy",function(){var e=function(){t.$overlay.remove(),t.$modalWrap.remove()};t.opened?(t.close(),setTimeout(e,t.options.closingDuration)):e()}),t.on("beforeOpen",function(){v.push(t)}),t.options.ajax.url&&(e=t.options.ajax.beforeSend||$.noop,n=t.options.ajax.success||!1,s=t.options.ajax.error||$.noop,$.extend(t.options.ajax,{beforeSend:function(){t.trigger("beforeLoading",[t]),t.startSpinner(),e(t)},success:function(e){t.trigger("afterLoading",[t]),t.renderContent(n?n(t,e):e).showContent(),t.trigger("afterLoadingShow",[t])},error:function(){t.renderContent(t.options.ajaxErrorTemplate),s(t),t.trigger("errorLoading",[t])}})),t.on("error",function(e,o){t.$modalWrap[0].getBoundingClientRect().height0&&v[v.length-1].focus(),e.options.destroyOnClose&&e.destroy()},this.options.closingDuration),this}},{key:"showContent",value:function(){var t=this;return this.$modalWrap.removeClass("i-hidden"),setTimeout(function(){t.$modalWrap.removeClass("i-closed")},20),setTimeout(function(){t.trigger("afterOpen",[t]),t.spinner&&t.stopSpinner()},.75*a.dur+20),this}},{key:"hideContent",value:function(){if(this.$el)return this.$modalWrap.addClass("i-closed"),this.unfocus(),this}},{key:"startSpinner",value:function(){return this.spinner=new d.Spinner("large"),this.spinner.spin(this.$overlay[0]),this}},{key:"stopSpinner",value:function(){if(this.spinner)return this.spinner.stop(),delete this.spinner,this}}]),o}()}).call(this,o("F/us"))},KHon:function(t,e,o){"use strict";var n;o.r(e),n=o("v2PZ"),o.d(e,"TVDialogAbstract",function(){return n.TVDialogAbstract}),o.d(e,"closeAllDialogs",function(){return n.closeAllDialogs})},nZrM:function(t,e,o){},nbyR:function(t,e,o){"use strict";var n,i,s,r,a,l,c,u,d,p,h,f,g,v;Object.defineProperty(e,"__esModule",{value:!0}),e.TVPopup=void 0,n=Object.assign||function(t){var e,o,n;for(e=1;e',scrollWrapInner:'
',withScroll:!0},g="js-dialog__scroll-wrap",e.TVPopup=function(t){function e(){var t,o,i=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,e),(t=function(t,e){if(!t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!e||"object"!=typeof e&&"function"!=typeof e?t:e}(this,(e.__proto__||Object.getPrototypeOf(e)).call(this,n({},f,i)))).$scrollWrap=t.$content.hasClass(g)?t.$content:t.$content.find("."+g),t.$scrollWrap.length?t.$scrollWrapInner=t.$scrollWrap.children().first():(t.$scrollWrap=t.$content.wrap($(t.options.scrollWrap)).parent(),t.$scrollWrapInner=t.$content.wrap($(t.options.scrollWrapInner)).parent()),t.$actions&&t.$scrollWrap.addClass("i-with-actions"),t.options.withScroll&&(t.scroll=new u.SidebarCustomScroll(t.$scrollWrap,t.$scrollWrapInner),t.scroll.scrolled.subscribe(null,function(){return t.trigger("scroll")})),t.$scrollWrap.css("overflow",""),o=t.getDialogId(),t.$el.addClass("tv-dialog--popup i-closed i-hidden"),t.options.width&&t.$el.css({width:"calc(100% - 20px)","max-width":t.options.width}),t.$el.on("mousedown touchstart",t.toTop.bind(t)),t.options.closeOnOutsideClick&&(t._preventClick=!0,t.on("beforeOpen",function(){setTimeout(function(){t.opened&&($(document).on("mousedown touchstart",function(){t._preventClick=!1}),$(document).on("click.tv-popup-"+o,function(e){if(!t._preventClick){var o=$(e.target).closest(".js-dialog");(t.options.closeOnClickAtOtherDialogs||0===o.length)&&t.isEventOut(e)&&t.close()}}))},0)}),t.on("beforeClose",function(){return $(document).off("click.tv-popup-"+o)})),t.on("change:zIndex",function(){t.$el.css("z-index",t.zIndex)}),t.on("destroy",function(){var e=function(){t.$el.remove()};t.opened?(t.close(),setTimeout(e,r.dur/2)):e()}),t}return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}(e,c.TVDialogAbstract),i(e,[{key:"open",value:function(){var t,e,o,n,i,s=this;return this.opened?this:(this.opened=!0,this.trigger("beforeOpen",[this]),this.$el.appendTo(this.$wrap).removeClass("i-hidden").css((s.calcHeight(),t=h.height(),e=h.width(),o=s.$el.height(),n=s.$el.width(),(i=s.options.position)||(i={top:t/2-o/2,left:e/2-n/2}),i.top>t-o&&(i.top=t-o),i.left>e-n&&(i.left=e-n),i)),this.focus(),this.toTop(),this._doOpenAnimation().then(function(){ +s.opened&&(s.$el.removeClass("i-closed"),s.options.draggable&&((0,d.lazyJqueryUI)(s.$el).draggable({handle:".js-dialog__drag",cancel:"input, textarea, button, select, option, .js-dialog__no-drag, .js-dialog__close",containment:"window",cursor:"-webkit-grabbing"}),s.$el.find(".js-dialog__drag").addClass("tv-dialog__grab")),s.trigger("afterOpen",[s]))}),h.on("resize.tv-popup-"+this.getDialogId(),function(){s.calcHeight(),s.fixPos()}),this)}},{key:"close",value:function(){var t=this;if(this.opened)return this.trigger("beforeClose",[this]),this.$el.addClass("i-closed"),this.opened=!1,this._doCloseAnimation().then(function(){t.opened||((0,d.lazyJqueryUI)(t.$el).draggable("instance").then(function(t){t&&t.destroy()}),t.$el.addClass("i-hidden").detach(),p.css("cursor","auto"),t.trigger("afterClose",[t]),t.options.destroyOnClose&&t.destroy())}),h.off("resize.tv-popup-"+this.getDialogId()),this}},{key:"hide",value:function(){this.$el.addClass("i-hidden")}},{key:"show",value:function(){this.$el.removeClass("i-hidden")}},{key:"fixPos",value:function(){var t=this.$el[0].getBoundingClientRect(),e={};t.bottom>l.default.height-10&&(e.top=l.default.height-10-t.height,e.top<10&&(e.top=10)),t.right>l.default.width-10&&(e.left=l.default.width-10-t.width,e.left<10&&(e.left=10)),(e.top||e.left)&&this.$el.css(e)}},{key:"calcHeight",value:function(){var t,e,o=this.$el[0].getBoundingClientRect(),n=this.$scrollWrapInner[0].getBoundingClientRect(),i=this.$scrollWrap[0].getBoundingClientRect(),s=this.options.height&&this.options.heights)&&((s-=o.height-i.height)<60&&(s=60),this.$scrollWrap.css({height:s})),this.options.withScroll&&this.scroll.resize(),(e=s'+this.$btn.html()+''),this.loading=this.$btn.hasClass("i-loading")}return n(t,[{key:"_start",value:function(){var t=this;this.starting=!0,this.$btn.addClass("i-start-load"),this.$btn.trigger("tv-button-loader:start"),setTimeout(function(){t.loading=!0,t.starting=!1,t._startPromise=!1,t.$btn.addClass("i-loading"),t.$btn.removeClass("i-start-load"),t._stopPromise&&t._stop()},2*r.dur)}},{key:"start",value:function(){this.starting||(this.stopping?this._startPromise=!0:this._start())}},{key:"_stop",value:function(){var t=this;this.stopping=!0,this.$btn.addClass("i-stop-load"),this.$btn.trigger("tv-button-loader:stop"),setTimeout(function(){t.loading=!1,t.stopping=!1,t._stopPromise=!1,t.$btn.removeClass("i-loading i-start-load i-stop-load"),t._startPromise&&t._start()},r.dur)}},{key:"stop",value:function(){this.stopping||(this.starting?this._stopPromise=!0:this._stop())}},{key:"toggle",value:function(){this.loading?this.stop():this.start()}},{key:"contentHtml",value:function(t){return t?(this.$btn.find(".tv-button__text").html(t),t):this.$btn.find(".tv-button__text").html()}},{key:"contentNojQuery",value:function(){return this.$btn.get(0)}},{key:"disable",value:function(){this.stop(),this.$btn.addClass("i-disabled")}},{key:"enable",value:function(){this.$btn.removeClass("i-disabled")}}]),t}()},tKRU:function(t,e,o){"use strict";var n=o("nbyR");o.d(e,"a",function(){return n.TVPopup})},v2PZ:function(t,e,o){"use strict";(function(t,n){function i(t){return t&&t.__esModule?t:{default:t}}var s,r,a,l,c,u,d,p,h,f,g,v,b,y,_,m,w,k;Object.defineProperty(e,"__esModule",{value:!0}),e.TVDialogAbstract=void 0,s=function(){return function(t,e){if(Array.isArray(t))return t;if(Symbol.iterator in Object(t))return function(t,e){var o,n,i=[],s=!0,r=!1,a=void 0;try{for(o=t[Symbol.iterator]();!(s=(n=o.next()).done)&&(i.push(n.value),!e||i.length!==e);s=!0);}catch(t){r=!0,a=t}finally{try{!s&&o.return&&o.return()}finally{if(r)throw a}}return i}(t,e);throw new TypeError("Invalid attempt to destructure non-iterable instance")}}(),r=Object.assign||function(t){var e,o,n;for(e=1;e',errorTemplate:'
{{{ error }}}
',titleTemplate:'
{{{ title }}}
',contentWrapTemplate:'
',actionsWrapTemplate:'
',closeButtonTemplate:'
'+o("uo4K")+"
",helpButtonTemplate:'
',helpActionsMod:"tv-dialog__section--actions_with-help"},m={default:"tv-button tv-button--default",primary:"tv-button tv-button--primary",success:"tv-button tv-button--success",danger:"tv-button tv-button--danger",warning:"tv-button tv-button--warning",link:"tv-button tv-button--link",checkbox:"tv-control-checkbox tv-control-checkbox--in-actions","default-ghost":"tv-button tv-button--default_ghost","primary-ghost":"tv-button tv-button--primary_ghost","success-ghost":"tv-button tv-button--success_ghost","danger-ghost":"tv-button tv-button--danger_ghost","warning-ghost":"tv-button tv-button--warning_ghost"},w={_default:'
{{ text }}
',"submit-success":''},k=function(e){function o(){var e,n,i,a,l,c,u,p,v,k,C,O,T,j,x=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};if(function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,o),(e=function(t,e){if(!t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!e||"object"!=typeof e&&"function"!=typeof e?t:e}(this,(o.__proto__||Object.getPrototypeOf(o)).call(this))).manager=(0,h.getRootOverlapManager)(x.ownerDocument),e._id=f++,e.loadingActions=[],e.disabledActions=[],e.firstFocusControl=null,e.options=r({},_,x),e.$el=$(t.render(e.options.template,{title:e.options.title,closeButton:e.options.closeButton})),e.$el.addClass("js-dialog"),e.el=e.$el[0],e.options.dataset){n=!0,i=!1,a=void 0;try{for(l=Object.entries(e.options.dataset)[Symbol.iterator]();!(n=(c=l.next()).done);n=!0)u=c.value,v=(p=s(u,2))[0],"string"==typeof(k=p[1])&&e.el.setAttribute("data-"+v,k)}catch(t){i=!0,a=t}finally{try{!n&&l.return&&l.return()}finally{if(i)throw a}}}for(e.options.addClass&&e.$el.addClass(e.options.addClass),e.options.width&&e.$el.css({width:"100%","max-width":e.options.width}),e.on("beforeOpen",function(){ +e.$wrap=e.manager.ensureWindow(e._id)}),e.on("afterClose",function(){e.$wrap=null,e.manager.unregisterWindow(e._id)}),e.options.title&&(e.$title=$(t.render(e.options.titleTemplate,{title:e.options.title})).appendTo(e.$el)),e.$content=$(e.options.contentWrapTemplate).appendTo(e.$el),e.$contentIn=e.$content;e.$contentIn.length;)e.$contentIn=e.$contentIn.children();if(e.$contentIn=e.$contentIn.end(),e.options.content&&e.renderContent(e.options.content),(e.options.actions||e.options.help)&&(e.$content.hasClass("tv-dialog__section")&&e.$content.addClass("tv-dialog__section--no-padding_bottom"),e.$actions=$(e.options.actionsWrapTemplate).appendTo(e.$el)),e.options.actions)for(e.actions={},e.$el.on("click touchend",".js-dialog__action-click",function(t){t.preventDefault(),e.actionDispatcher($(t.currentTarget).data("name"))}),C=function(o){var n,i,s,r,a,l,c=e.options.actions[o];c.type||(c.type="default"),c.class||(c.class=m[c.type]?m[c.type]:m.default),"checkbox"===c.type?(n=new d.default({labelRight:c.text,name:c.name,checked:c.checked}),e.actions[c.name]=n.$el.appendTo(e.$actions),e.actions[c.name].on("change",function(){setTimeout(function(){return e.actionDispatcher(c.name,n.checked)})})):e.actions[c.name]=$(t.render(c.template?c.template:w[c.type]||w._default,c,c)).appendTo(e.$actions),c.method&&"function"==typeof e[c.method]&&e.on("action:"+c.name,e[c.method].bind(e)),c.addClass&&e.actions[c.name].addClass(c.addClass),c.key&&(i=void 0,"string"==typeof c.key&&c.key.split("+").length>1?(s=[],r=c.key.split("+"),i=function(t){s=[]},a=function(t){var o=""+t.keyCode;-1!==r.indexOf(o)&&s.indexOf(o)&&s.push(o),e._focused&&s.length===r.length&&(s=[],e.actionDispatcher(c.name))},e.on("afterOpen",function(){y.on("keydown",a),y.on("keyup",i)}),e.on("beforeClose",function(){y.off("keydown",a),y.off("keyup",i)})):(l=$.isArray(c.key)?c.key:[c.key],i=function(t){!t.isDefaultPrevented()&&e._focused&&-1!==l.indexOf(t.keyCode)&&e.actionDispatcher(c.name)},e.on("afterOpen",function(){return y.on("keyup",i)}),e.on("beforeClose",function(){return y.off("keyup",i)})))},O=e.options.actions.length-1;O>=0;O--)C(O);return e.options.help&&$(t.render(e.options.helpButtonTemplate,e.options.help)).prependTo(e.$actions.addClass(e.options.helpActionsMod)),e.options.closeButton&&((T=$(e.options.closeButtonTemplate)).addClass(e.options.closeButtonAddClass||""),j=e.$el,1===e.$el.find(".js-close-button-place").length&&(j=e.$el.find(".js-close-button-place")),T.appendTo(j)),e.setZIndex(b+g.length),x.errorMod&&(e.errorMod=x.errorMod),e.on("afterOpen",function(){e.options.focusFirstControl&&!Modernizr.mobiletouch&&(e.firstFocusControl||e.$el.find('input:not([type="hidden"]), textarea').first()).focus()}),e.$el.on("click",".js-dialog__close",e.close.bind(e)),e.$el.on("mousedown touchstart",e.focus.bind(e)),g.push(e),e}return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0, +configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}(o,p.default),a(o,[{key:"renderContent",value:function(t){return this.$contentIn.html("function"==typeof t?t(this):t),this}},{key:"setDestroyOnClose",value:function(t){this.options.destroyOnClose=t}},{key:"setZIndex",value:function(t){return this.zIndex=t,this.trigger("change:zIndex",[this]),this}},{key:"toTop",value:function(){for(var t=g.length-1;t>=0;t--)g[t].zIndex>this.zIndex&&g[t].setZIndex(g[t].zIndex-1);return this.setZIndex(b+g.length),this.manager.moveToTop(this._id),this}},{key:"isEventOut",value:function(t){var e,o,n;return this.options.isClickOutFn&&void 0!==(e=this.options.isClickOutFn(t))?e:(o=!0,(n=$(t.target)).get(0)!==this.$el.get(0)&&($(">*",this.$el).each(function(){n.get(0)===$(this).get(0)&&(o=!1),0===n.closest("HTML",$(this).get(0)).length&&(o=!1)}),o))}},{key:"focus",value:function(){var t=this;v&&v!==this&&v.unfocus(),this._setFocused(),this._focused=!0,this.$el.addClass(this.options.focusClass),this.trigger("focus",[this]),setTimeout(function(){y.on("mousedown.tv-dialog-unfocus-"+t._id,function(e){t.isEventOut(e)&&(t.unfocus(),y.off("mousedown.tv-dialog-unfocus-"+t._id))})},20)}},{key:"_setFocused",value:function(){v!==this&&(v=this)}},{key:"_setUnfocused",value:function(){v===this&&(v=void 0)}},{key:"unfocus",value:function(){v===this&&(this._setUnfocused(),this._focused=!1,this.$el.removeClass(this.options.focusClass).find(":focus").blur(),this.trigger("unfocus",[this]))}},{key:"isFocused",value:function(){return this._focused}},{key:"setTitle",value:function(t){var e=arguments.length>1&&void 0!==arguments[1]&&arguments[1];return this.$title.toggleClass("tv-dialog__section--one-line apply-overflow-tooltip",e),this.$title.html(t),this}},{key:"setTitleText",value:function(t){this.$title.find(".js-title-text").text(t)}},{key:"actionDispatcher",value:function(t){if(!this.disabledActions.includes(t)&&!this.loadingActions.includes(t)){for(var e=arguments.length,o=Array(e>1?e-1:0),n=1;n1&&void 0!==arguments[1]?arguments[1]:"init";return this.actions[t].tvButtonLoader(o),"init"===o&&(this.actions[t].off("tv-button-loader:start.dialog-action").on("tv-button-loader:start.dialog-action",function(){e.loadingActions.push(t)}),this.actions[t].off("tv-button-loader:stop.dialog-action").on("tv-button-loader:stop.dialog-action",function(){e.loadingActions=n.without(e.loadingActions,t)})),this}},{key:"error",value:function(e){var o=$(t.render(this.options.errorTemplate,{error:e,errorMod:this.errorMod})).appendTo(this.$el),n=function(){o.addClass("i-slided"),setTimeout(function(){return o.remove()},.75*c.dur)} +;return setTimeout(function(){return o.removeClass("i-slided")},20),y.one("touchstart mousedown keydown",n),this.trigger("error",[this,o]),this}},{key:"destroy",value:function(){this.$wrap=null,this.manager.unregisterWindow(this._id),g=n.without(g,this);for(var t=0;t=this.state.heightContent-1},t.prototype.animateTo=function(e,t){if(void 0===t&&(t=F.dur),this._scroll){var o=d.findDOMNode(this._scroll);Object(V.doAnimate)({onStep:function(e,t){o.scrollTop=t},from:o.scrollTop,to:Math.round(e),easing:F.easingFunc.easeInOutCubic,duration:t})}},t.prototype.render=function(){var e,t,o,n,i,r=this,a=this.props,s=a.children,l=a.isVisibleScrollbar,c=a.isVisibleFade,d=a.isVisibleButtons,p=this.state,h=p.heightContent,f=p.heightWrap,g=p.isVisibleBotButton,v=p.isVisibleTopButton;return u.createElement(x,{whitelist:["height"],onMeasure:this._handleResizeWrap},u.createElement("div",{className:I.wrap},u.createElement("div",{className:m(I.scrollWrap,(e={},e[I.noScrollBar]=!l,e)),onScroll:this._handleScroll,ref:function(e){return r._scroll=e}},u.createElement(x,{onMeasure:this._handleResizeContent,whitelist:["height"]},u.createElement("div",{className:I.content},s))),c&&u.createElement("div",{className:m(I.fadeTop,(t={},t[I.isVisible]=v&&h>f,t))}),c&&u.createElement("div",{className:m(I.fadeBot,(o={},o[I.isVisible]=g&&h>f,o))}),d&&u.createElement("div",{className:m(I.scrollTop,(n={},n[I.isVisible]=v&&h>f,n)),onClick:this._handleScrollTop},u.createElement("div",{className:I.iconWrap +},u.createElement(B.a,{icon:R,className:I.icon}))),d&&u.createElement("div",{className:m(I.scrollBot,(i={},i[I.isVisible]=g&&h>f,i)),onClick:this._handleScrollBot},u.createElement("div",{className:I.iconWrap},u.createElement(B.a,{icon:R,className:I.icon})))))},t.defaultProps={isVisibleScrollbar:!0},t}(u.PureComponent),z=o("ycI/"),U=o("WUqb"),G=o("tWVy"),H=o("gb5g"),K=o("wZIs"),q=o("3mf1"),Q=o("9dlw"),J=o("hn2c"),Y=o("KmEK"),X=function(e){function t(t){var o=e.call(this,t)||this;return o._toggleDropdown=function(e){o.setState({isOpened:void 0!==e?e:!o.state.isOpened})},o._handleClose=function(){o._toggleDropdown(!1)},o._getDropdownPosition=function(){if(!o._control)return{x:0,y:0};var e=o._control.getBoundingClientRect();return{x:e.left+e.width+1,y:e.top-6}},o._handleClickArrow=function(){o._toggleDropdown()},o._handleTouchStart=function(){o.props.onClickButton(),o._toggleDropdown()},o._handlePressStart=function(){if(Modernizr.mobiletouch&&!o.props.checkable)o._longPressDelay||o.props.onClickButton();else{if(o._doubleClickDelay)return clearTimeout(o._doubleClickDelay),delete o._doubleClickDelay,void o._toggleDropdown(!0);o._doubleClickDelay=setTimeout(function(){delete o._doubleClickDelay,o._longPressDelay||o.props.onClickButton()},175)}o._longPressDelay=setTimeout(function(){delete o._longPressDelay,o._toggleDropdown(!0)},300)},o._handlePressEnd=function(){o._longPressDelay&&(clearTimeout(o._longPressDelay),delete o._longPressDelay,o.state.isOpened?o._toggleDropdown(!1):o.props.checkable||o.state.isOpened||!o.props.isActive||Modernizr.mobiletouch||o._toggleDropdown(!0))},o.state={isOpened:!1},o}return c.__extends(t,e),t.prototype.render=function(){var e,t=this,o=this.props,n=o.buttonActiveClass,r=o.buttonClass,a=o.buttonIcon,s=o.buttonTitle,l=o.buttonHotKey,c=o.dropdownTooltip,d=o.children,p=o.isActive,h=o.isGrayed,f=o.onClickWhenGrayed,g=o.checkable,v=this.state.isOpened;return u.createElement("div",{className:m(Y.dropdown,(e={},e[Y.isGrayed]=h,e[Y.isActive]=p,e[Y.isOpened]=v,e)),onClick:h?f:void 0},u.createElement("div",{ref:function(e){return t._control=e},className:Y.control},u.createElement("div",{className:m(Y.buttonWrap,{"apply-common-tooltip common-tooltip-vertical":Boolean(s||l)}),"data-tooltip-hotkey":l,"data-tooltip-delay":1500,title:s,onMouseDown:h||Modernizr.mobiletouch?void 0:this._handlePressStart,onMouseUp:h||Modernizr.mobiletouch?void 0:this._handlePressEnd,onTouchStart:!h&&g&&Modernizr.mobiletouch?this._handlePressStart:void 0,onTouchEnd:!h&&g&&Modernizr.mobiletouch?this._handlePressEnd:void 0,onClick:h||g||!Modernizr.mobiletouch?void 0:this._handleTouchStart},u.createElement(i,{activeClass:n,className:r,icon:a,isActive:p,isGrayed:h,isTransparent:!g})),!h&&!Modernizr.mobiletouch&&u.createElement("div",{className:m(Y.arrow,c&&"apply-common-tooltip common-tooltip-vertical"),title:c,onClick:this._handleClickArrow},u.createElement(B.a,{className:Y.arrowIcon,icon:J}))),!h&&u.createElement(Q.a,{doNotCloseOn:this,isOpened:v,onClose:this._handleClose,position:this._getDropdownPosition},d))},t +}(u.PureComponent),Z=o("KKsp"),$=o("EA32"),ee={icon:window.t("Icon"),dropdownTooltip:window.t("Icons")},te=10,oe=function(e){function t(t){var o=e.call(this,t)||this;return o._renderItem=function(e){return u.createElement("div",{className:$.item,key:e,onClick:function(){o._handleSelect(e),Object(G.b)()}},String.fromCharCode(e))},o._onChangeDrawingState=function(){o.setState({isActive:o._isActive()})},o._handleSelect=function(e){var t,n;Object(K.saveDefaults)("linetoolicon",c.__assign({},Object(K.defaults)("linetoolicon"),{icon:e})),v.tool.setValue("LineToolIcon"),-1!==(n=(t=o.state.recents).indexOf(e))&&t.splice(n,1),t=[e].concat(t.slice(0,te-1)),Object(f.setJSON)("linetoolicon.recenticons",t),o.setState({current:e,recents:t})},o.state={current:Object(K.defaults)("linetoolicon").icon,recents:Object(f.getJSON)("linetoolicon.recenticons")||[]},o}return c.__extends(t,e),t.prototype.componentDidMount=function(){v.tool.subscribe(this._onChangeDrawingState),f.onSync.subscribe(this,this._onSyncSettings)},t.prototype.componentWillUnmount=function(){v.tool.unsubscribe(this._onChangeDrawingState),f.onSync.unsubscribe(this,this._onSyncSettings)},t.prototype.render=function(){var e=this,t=this.props,o=t.isGrayed,n=t.toolName,i=this.state,r=i.current,a=i.isActive,s=i.recents;return u.createElement(X,{buttonClass:$.button,buttonIcon:u.createElement("div",{className:$.buttonIcon},String.fromCharCode(r||q.availableIcons[0])),buttonTitle:ee.icon,dropdownTooltip:ee.dropdownTooltip,isActive:a,isGrayed:o,onClickButton:function(){return e._handleSelect(r||q.availableIcons[0])},onClickWhenGrayed:function(){return Object(b.emit)("onGrayedObjectClicked",{type:"drawing",name:T.a[n].localizedName})}},s&&[u.createElement("div",{key:"recent",className:$.wrap},s.map(this._renderItem)),u.createElement(Z.a,{key:"separator"})],u.createElement("div",{key:"all",className:$.wrap},q.availableIcons.map(this._renderItem)))},t.prototype._isActive=function(){return v.tool.value()===this.props.toolName},t.prototype._onSyncSettings=function(){this.setState({recents:Object(f.getJSON)("linetoolicon.recenticons")})},t}(u.Component),ne=o("Ocx9"),ie=function(e){function t(t){var o=e.call(this,t)||this;return o._handleClick=function(){o.props.saveDefaultOnChange&&Object(ne.saveDefaultProperties)(!0),o.props.property.setValue(!o.props.property.value()),o.props.saveDefaultOnChange&&Object(ne.saveDefaultProperties)(!1)},o.state={isActive:o.props.property.value()},o}return c.__extends(t,e),t.prototype.componentDidMount=function(){this.props.property.subscribe(this,this._onChange)},t.prototype.componentWillUnmount=function(){this.props.property.unsubscribe(this,this._onChange)},t.prototype.render=function(){var e=this.props.toolName,t=this.state.isActive,o=T.a[e];return u.createElement(i,{icon:t&&o.iconActive?o.iconActive:o.icon,isActive:t,onClick:this._handleClick,title:o.localizedName})},t.prototype._onChange=function(e){this.setState({isActive:e.value()})},t}(u.PureComponent),re=function(e){function t(t){var o=e.call(this,t)||this;return o._handleClick=function(){ +v.tool.setValue(o.props.toolName)},o._onChange=function(){o.setState({isActive:v.tool.value()===o.props.toolName})},o.state={isActive:v.tool.value()===o.props.toolName},o}return c.__extends(t,e),t.prototype.componentDidMount=function(){v.tool.subscribe(this._onChange)},t.prototype.componentWillUnmount=function(){v.tool.unsubscribe(this._onChange)},t.prototype.render=function(){var e=this.props.toolName,t=this.state.isActive,o=T.a[e];return u.createElement(i,{icon:T.a[e].icon,isActive:t,isTransparent:!0,onClick:this._handleClick,title:o.localizedName,buttonHotKey:o.hotKey})},t}(u.PureComponent),ae=function(e){function t(t){var o=e.call(this,t)||this;return o._boundUndoModel=null,o._handleClick=function(){var e=o._activeChartWidget().model();e&&e.zoomFromViewport()},o._syncUnzoomButton=function(){var e=o._activeChartWidget(),t=e.model(),n=!1;t?(o._boundUndoModel!==t&&(o._boundUndoModel&&o._boundUndoModel.zoomStack().onChange().unsubscribe(null,o._syncUnzoomButton),t.zoomStack().onChange().subscribe(null,o._syncUnzoomButton),o._boundUndoModel=t),n=!t.zoomStack().isEmpty()):e.withModel(null,o._syncUnzoomButton),o.setState({isVisible:n})},o.state={isVisible:!1},o}return c.__extends(t,e),t.prototype.componentDidMount=function(){this.props.chartWidgetCollection.activeChartWidget.subscribe(this._syncUnzoomButton,{callWithLast:!0})},t.prototype.componentWillUnmount=function(){this.props.chartWidgetCollection.activeChartWidget.unsubscribe(this._syncUnzoomButton)},t.prototype.render=function(){return this.state.isVisible?u.createElement(r,{action:this._handleClick,isTransparent:!0,toolName:"zoom-out"}):u.createElement("div",null)},t.prototype._activeChartWidget=function(){return this.props.chartWidgetCollection.activeChartWidget.value()},t}(u.PureComponent),se=o("b2d7"),le=o("pr86"),ce=o("N5tr"),ue=o("Bruo"),de=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return c.__extends(t,e),t.prototype.componentDidMount=function(){ue.bind(this.props.keys,this.props.handler)},t.prototype.componentDidUpdate=function(e){this.props.keys===e.keys&&this.props.handler===e.handler||(ue.unbind(e.keys),ue.bind(this.props.keys,this.props.handler))},t.prototype.componentWillUnmount=function(){ue.unbind(this.props.keys)},t.prototype.render=function(){return null},t}(u.PureComponent),pe=function(e){function t(t){var o,n=e.call(this,t)||this;return n._onChangeDrawingState=function(){var e=n._getActiveToolIndex();n.setState({current:-1!==e?e:n.state.current,isActive:-1!==e})},n._handleClickButton=function(){var e=n._getCurrentToolName();n._selectTool(e)},n._handleClickItem=function(e){n._selectTool(e)},n._handleGrayedClick=function(e){Object(b.emit)("onGrayedObjectClicked",{type:"drawing",name:T.a[e].localizedName})},n._handleShortcut=function(e){var t=n.props.lineTools.find(function(t){return t.name===e}),o=t&&t.shortcut;o&&o.immediately?n._drawLinetoolImmediately(e):n._selectTool(e)},n._drawLinetoolImmediately=function(e){var t=n.props.chartWidgetCollection.activeChartWidget.value() +;t.activePaneWidget&&t.activePaneWidget.drawRightThere(e)},n._handleClickFavorite=function(e){n.state.favState&&n.state.favState[e]?se.a.removeFavorite(e):se.a.addFavorite(e)},n._onAddFavorite=function(e){var t;n.setState({favState:c.__assign({},n.state.favState,(t={},t[e]=!0,t))})},n._onRemoveFavorite=function(e){var t;n.setState({favState:c.__assign({},n.state.favState,(t={},t[e]=!1,t))})},n._onSyncFavorites=function(){n.setState({favState:n._composeFavState()})},o=n._getActiveToolIndex(),n.state={current:-1===o?n._firstNonGrayedTool():o,favState:n._composeFavState(),isActive:-1!==o},n}return c.__extends(t,e),t.prototype.componentDidMount=function(){v.tool.subscribe(this._onChangeDrawingState),se.a.favoriteAdded.subscribe(null,this._onAddFavorite),se.a.favoriteRemoved.subscribe(null,this._onRemoveFavorite),se.a.favoritesSynced.subscribe(null,this._onSyncFavorites)},t.prototype.componentWillUnmount=function(){v.tool.unsubscribe(this._onChangeDrawingState),se.a.favoriteAdded.unsubscribe(null,this._onAddFavorite),se.a.favoriteRemoved.unsubscribe(null,this._onRemoveFavorite),se.a.favoritesSynced.unsubscribe(null,this._onSyncFavorites)},t.prototype.componentDidUpdate=function(e,t){e.lineTools!==this.props.lineTools&&this.setState({favState:this._composeFavState()})},t.prototype.render=function(){var e=this,t=this.props,o=t.favoriting,n=t.grayedTools,i=t.lineTools,r=t.dropdownTooltip,a=this.state,s=a.current,l=a.favState,c=a.isActive,d=this._getCurrentToolName(),p=T.a[d],h=this._showShortcuts();return u.createElement("span",null,u.createElement(X,{buttonIcon:p.icon,buttonTitle:p.localizedName,buttonHotKey:p.hotKey,dropdownTooltip:r,isActive:c,onClickButton:this._handleClickButton},i.map(function(t,i){var r=t.name,a=T.a[r],d=n[r];return u.createElement(ce.a,{key:r,dontClosePopup:d,forceShowShortcuts:h,shortcut:t.shortcut&&t.shortcut.keys,icon:a.icon,isActive:c&&s===i,appearAsDisabled:d,label:a.localizedName,onClick:d?e._handleGrayedClick:e._handleClickItem,onClickArg:r,showToolboxOnHover:!l[r],toolbox:o&&!d?u.createElement(le.a,{isFilled:l[r],onClick:e._handleClickFavorite,onClickArg:r}):void 0})})),i.map(function(t,o){var n=t.name,i=t.shortcut;return i&&u.createElement(de,{handler:function(t){t.preventDefault(),e._handleShortcut(n)},key:n,keys:i.keys})}))},t.prototype._getCurrentToolName=function(){var e=this.state.current,t=this.props.lineTools;return t[e||0].name},t.prototype._firstNonGrayedTool=function(){var e=this.props,t=e.grayedTools;return e.lineTools.findIndex(function(e){return!t[e.name]})},t.prototype._getActiveToolIndex=function(){return this.props.lineTools.findIndex(function(e){return e.name===v.tool.value()})},t.prototype._showShortcuts=function(){return this.props.lineTools.some(function(e){return"shortcut"in e})},t.prototype._selectTool=function(e){v.tool.setValue(e)},t.prototype._composeFavState=function(){var e={};return this.props.lineTools.forEach(function(t){e[t.name]=se.a.isFavorite(t.name)}),e},t}(u.PureComponent),he={all:window.t("Remove Drawing Tools & Indicators"), +drawings:window.t("Remove Drawing Tools"),studies:window.t("Remove Indicators")},me=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t._handleRemoveToolClick=function(){Modernizr.mobiletouch||t._handleRemoveDrawings()},t._handleRemoveDrawings=function(){t.props.chartWidgetCollection.activeChartWidget.value().removeAllDrawingTools()},t._handleRemoveStudies=function(){t.props.chartWidgetCollection.activeChartWidget.value().removeAllStudies()},t._handleRemoveAll=function(){t.props.chartWidgetCollection.activeChartWidget.value().removeAllStudiesDrawingTools()},t}return c.__extends(t,e),t.prototype.render=function(){return u.createElement(X,{buttonIcon:T.a[this.props.toolName].icon,buttonTitle:he.drawings,onClickButton:this._handleRemoveToolClick},u.createElement(ce.a,{label:he.drawings,onClick:this._handleRemoveDrawings}),u.createElement(ce.a,{label:he.studies,onClick:this._handleRemoveStudies}),u.createElement(ce.a,{label:he.all,onClick:this._handleRemoveAll}))},t}(u.PureComponent),fe=o("g5Qf"),ge=o("85c9"),ve=window.t("Show Favorite Drawings Toolbar"),be=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t._instance=null,t._promise=null,t._bindedForceUpdate=function(){return t.forceUpdate()},t._handleClick=function(){null!==t._instance&&(t._instance.isVisible()?t._instance.hide():t._instance.show())},t}return c.__extends(t,e),t.prototype.componentDidMount=function(){var e=this,t=this._promise=Object(p.ensureNotNull)(Object(fe.getFavoriteDrawingToolbarPromise)());t.then(function(o){e._promise===t&&(e._instance=o,e._instance.canBeShown().subscribe(e._bindedForceUpdate),e._instance.visibility().subscribe(e._bindedForceUpdate),e.forceUpdate())})},t.prototype.componentWillUnmount=function(){this._promise=null,null!==this._instance&&(this._instance.canBeShown().unsubscribe(this._bindedForceUpdate),this._instance.visibility().unsubscribe(this._bindedForceUpdate),this._instance=null)},t.prototype.render=function(){return null!==this._instance&&this._instance.canBeShown().value()?u.createElement(i,{id:this.props.id,icon:ge,isActive:this._instance.isVisible(),onClick:this._handleClick,title:ve}):null},t}(u.PureComponent),_e=o("Ijvb"),ye=o("tITk"),we=o("4o++"),Te=o("7RN7"),function(e){e.Screenshot="drawing-toolbar-screenshot",e.FavoriteDrawings="drawing-toolbar-favorite-drawings",e.ObjectTree="drawing-toolbar-object-tree"}(Ce||(Ce={})),ke=o("JQKp"),Se={weakMagnet:window.t("Weak Magnet"),strongMagnet:window.t("Strong Magnet")},Ee=Object(w.onWidget)(),Le=new y.a,De=function(e){function t(t){var o=e.call(this,t)||this;return o._grayedTools={},o._handleChangeVisibility=function(e){o.setState({isVisible:e})},o._handleEsc=function(){v.resetToCursor(!0),Object(G.b)()},v.init(),o._toolsFilter=new C(o.props.drawingsAccess),o._filteredLineTools=k.map(function(e){return{title:e.title,items:e.items.filter(function(e){return o._toolsFilter.isToolEnabled(T.a[e.name].localizedName)})}}).filter(function(e){return 0!==e.items.length}),o._filteredLineTools.forEach(function(e){ +return e.items.forEach(function(e){o._grayedTools[e.name]=o._toolsFilter.isToolGrayed(T.a[e.name].localizedName)})}),o.state={isVisible:S.isDrawingToolbarVisible.value(),magnet:v.properties().childs().magnet.value(),magnetMode:v.properties().childs().magnetMode.value()},o._features={favoriting:!Ee&&g.enabled("items_favoriting"),multicharts:g.enabled("support_multicharts"),tools:!Ee||g.enabled("charting_library_base")},o._negotiateResizer(),o}return c.__extends(t,e),t.prototype.getChildContext=function(){return{chartWidgetCollection:this.props.chartWidgetCollection,customCloseDelegate:Le}},t.prototype.componentDidMount=function(){S.isDrawingToolbarVisible.subscribe(this._handleChangeVisibility),d.findDOMNode(this).addEventListener("contextmenu",function(e){return e.preventDefault()}),G.a.subscribe(this,this._handleGlobalClose),v.properties().childs().magnet.subscribe(this,this._updateMagnetEnabled),v.properties().childs().magnetMode.subscribe(this,this._updateMagnetMode)},t.prototype.componentWillUnmount=function(){S.isDrawingToolbarVisible.unsubscribe(this._handleChangeVisibility),G.a.unsubscribe(this,this._handleGlobalClose),v.properties().childs().magnet.unsubscribe(this,this._updateMagnetEnabled),v.properties().childs().magnetMode.unsubscribe(this,this._updateMagnetMode)},t.prototype.componentDidUpdate=function(e,t){var o=this.state.isVisible;o!==t.isVisible&&(b.emit("toggle_sidebar",!o),f.setValue("ChartDrawingToolbarWidget.visible",o),this._negotiateResizer())},t.prototype.render=function(){var e,t=this,o=this.props,n=o.bgColor,i=o.chartWidgetCollection,c=o.readOnly,d=(o.hideMainMenu,this.state),p=d.isVisible,h=d.magnet,f=d.magnetMode,g={backgroundColor:n&&"#"+n};return u.createElement("div",{className:m(ke.drawingToolbar,(e={},e[ke.isHidden]=!p,e)),style:g,onClick:this.props.onClick},u.createElement(j,{onScroll:this._handleGlobalClose,isVisibleFade:Modernizr.mobiletouch,isVisibleButtons:!Modernizr.mobiletouch,isVisibleScrollbar:!1},u.createElement("div",{className:ke.inner},!1,!c&&u.createElement("div",{className:ke.group,style:g},this._filteredLineTools.map(function(e,o){return u.createElement(pe,{chartWidgetCollection:i,favoriting:t._features.favoriting,grayedTools:t._grayedTools,key:o,dropdownTooltip:e.title,lineTools:e.items})}),this._toolsFilter.isToolEnabled("Font Icons")&&u.createElement(oe,{isGrayed:this._grayedTools["Font Icons"],toolName:"LineToolIcon"})),!c&&u.createElement("div",{className:ke.group,style:g},u.createElement(re,{toolName:"measure"}),u.createElement(re,{toolName:"zoom"}),u.createElement(ae,{chartWidgetCollection:i})),!c&&u.createElement("div",{className:ke.group,style:g},u.createElement(X,{buttonIcon:f===we.MagnetMode.StrongMagnet?_e.a.strongMagnet:_e.a.magnet,buttonTitle:T.a.magnet.localizedName,isActive:h,onClickButton:a,checkable:!0},u.createElement(ce.a,{key:"weakMagnet",icon:_e.a.magnet,isActive:h&&f!==we.MagnetMode.StrongMagnet,label:Se.weakMagnet,onClick:s}),u.createElement(ce.a,{key:"strongMagnet",icon:_e.a.strongMagnet,isActive:h&&f===we.MagnetMode.StrongMagnet, +label:Se.strongMagnet,onClick:l})),this._features.tools&&u.createElement(ie,{property:v.properties().childs().stayInDrawingMode,saveDefaultOnChange:!0,toolName:"drawginmode"}),this._features.tools&&u.createElement(ie,{property:v.lockDrawings(),toolName:"lockAllDrawings"}),this._features.tools&&u.createElement(ie,{property:v.hideAllDrawings(),toolName:"hideAllDrawings"}),!1),!c&&this._features.tools&&u.createElement("div",{className:ke.group,style:g},u.createElement(me,{chartWidgetCollection:i,toolName:"removeAllDrawingTools"})),u.createElement("div",{className:ke.fill,style:g}),!c&&(this._features.tools||!1)&&u.createElement("div",{className:m(ke.group,ke.lastGroup),style:g},!1,this._features.tools&&this._features.favoriting&&u.createElement(be,{id:Ce.FavoriteDrawings}),this._features.tools&&u.createElement(r,{id:Ce.ObjectTree,action:function(){return t._activeChartWidget().showObjectsTreeDialog()},toolName:"showObjectsTree"})))),u.createElement(W,{toolbarVisible:p}),u.createElement(z.a,{keyCode:U.a.Escape,handler:this._handleEsc}))},t.prototype._activeChartWidget=function(){return this.props.chartWidgetCollection.activeChartWidget.value()},t.prototype._negotiateResizer=function(){this.props.resizerBridge.negotiateWidth(this.state.isVisible?Te.b:Te.a)},t.prototype._handleGlobalClose=function(){Le.fire()},t.prototype._updateMagnetEnabled=function(){var e={magnet:v.properties().childs().magnet.value()};this.setState(e)},t.prototype._updateMagnetMode=function(){var e={magnetMode:v.properties().childs().magnetMode.value()};this.setState(e)},t.childContextTypes={chartWidgetCollection:h.any.isRequired,customCloseDelegate:h.any.isRequired},t}(u.PureComponent),o.d(t,"DrawingToolbarRenderer",function(){return Ae}),Ae=function(){function e(e,t){var o=this;this._component=null,this._handleRef=function(e){o._component=e},this._container=e,d.render(u.createElement(De,c.__assign({},t,{ref:this._handleRef})),this._container)}return e.prototype.destroy=function(){d.unmountComponentAtNode(this._container)},e.prototype.getComponent=function(){return Object(p.ensureNotNull)(this._component)},e}()},"85c9":function(e,t){e.exports=''},"9dlw":function(e,t,o){"use strict";var n,i,r,a,s,l,c,u,d;o.d(t,"a",function(){return d}),n=o("mrSG"),i=o("bf9a"),r=o("q1tI"),a=o("i8i4"),s=o("17x9"),l=o("RgaO"),c=o("AiMB"),u=o("DTHj"),d=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t._handleClose=function(){t.props.onClose()},t._handleClickOutside=function(e){var o,n=t.props,i=n.closeOnClickOutside,r=n.onClickOutside,s=n.doNotCloseOn;r&&r(e), +i&&(s&&e.target instanceof Node&&(o=a.findDOMNode(s))instanceof Node&&o.contains(e.target)||t._handleClose())},t._handleScroll=function(e){var o=t.props.onScroll;o&&o(e),e.stopPropagation()},t}return n.__extends(t,e),t.prototype.componentWillReceiveProps=function(e){this.props.isOpened&&!e.isOpened&&this.setState({isMeasureValid:void 0})},t.prototype.render=function(){var e=this.props,t=e.children,o=e.isOpened,i=(e.closeOnClickOutside,e.doNotCloseOn,e.onClickOutside,e.onClose,n.__rest(e,["children","isOpened","closeOnClickOutside","doNotCloseOn","onClickOutside","onClose"]));return o?r.createElement(c.a,null,r.createElement(l.a,{handler:this._handleClickOutside,mouseDown:!0,touchStart:!0},r.createElement(u.a,n.__assign({},i,{isOpened:o,onClose:this._handleClose,onScroll:this._handleScroll,customCloseDelegate:this.context.customCloseDelegate}),t))):null},t.contextTypes={customCloseDelegate:s.any},t.defaultProps={closeOnClickOutside:!0},t}(r.PureComponent)},AiMB:function(e,t,o){"use strict";var n,i,r,a,s,l,c,u;o.d(t,"a",function(){return c}),o.d(t,"b",function(){return u}),n=o("mrSG"),i=o("q1tI"),r=o("i8i4"),a=o("0waE"),s=o("jAh7"),l=o("+EG+"),c=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t._uuid=Object(a.guid)(),t}return n.__extends(t,e),t.prototype.componentWillUnmount=function(){this._manager().removeWindow(this._uuid)},t.prototype.render=function(){return r.createPortal(i.createElement(u.Provider,{value:this},this.props.children),this._manager().ensureWindow(this._uuid))},t.prototype.moveToTop=function(){this._manager().moveToTop(this._uuid)},t.prototype._manager=function(){return null===this.context?Object(s.getRootOverlapManager)():this.context},t.contextType=l.b,t}(i.PureComponent),u=i.createContext(null)},EA32:function(e,t,o){e.exports={wrap:"wrap-2I6DAtXG-",buttonIcon:"buttonIcon-2rBwJ1QM-",item:"item-31XunD5q-",hovered:"hovered-2A1Cpat5-",button:"button-21ihqWJ8-"}},GWvR:function(e,t){e.exports=''},HHbT:function(e,t){ +e.exports=''},JQKp:function(e,t,o){e.exports={drawingToolbar:"drawingToolbar-U3_QXRof-",isHidden:"isHidden-2d-PYkzV-",inner:"inner-1xuW-gY4-",group:"group-2JyOhh7Z-",noGroupPadding:"noGroupPadding-1TTjVKWk-",lastGroup:"lastGroup-O75UB5Xa-",fill:"fill-1djIbBXv-",separator:"separator-1BAqp1-l-"}},KKsp:function(e,t,o){"use strict";function n(e){return i.createElement("div",{className:r.separator})}var i,r;o.d(t,"a",function(){return n}),i=o("q1tI"),r=o("NOPy")},KmEK:function(e,t,o){e.exports={dropdown:"dropdown-3_ASLzSj-",buttonWrap:"buttonWrap-3fZWypJl-",control:"control-1TyEfSIx-",arrow:"arrow-1cFKS5Ok-",arrowIcon:"arrowIcon-2wA7q8om-",isOpened:"isOpened-22vLOY9o-",isGrayed:"isGrayed-xr-mULNo-"}},N5tr:function(e,t,o){"use strict";function n(e){return a.createElement(e.href?"a":"div",e)}function i(e){e.stopPropagation()}var r,a,s,l,c,u,d,p;o.d(t,"a",function(){return p}),r=o("mrSG"),a=o("q1tI"),s=o("TSYQ"),l=o("tWVy"),c=o("tITk"),u=o("QpNh"),d=o("v1bN"),p=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t._handleClick=function(e){var o=t.props,n=o.dontClosePopup,i=o.isDisabled,r=o.onClick,a=o.onClickArg,s=o.trackEventObject;i||(s&&Object(c.trackEvent)(s.category,s.event,s.label),r&&r(a,e),n||Object(l.b)())},t._handleMouseUp=function(e){var o=t.props,n=o.link,i=o.trackEventObject;1===e.button&&n&&i&&Object(c.trackEvent)(i.category,i.event,i.label)},t._formatShortcut=function(e){return e&&e.split("+").join(" + ")},t}return r.__extends(t,e),t.prototype.render=function(){var e,t,o=this.props,l=o.className,c=o.shortcut,p=o.forceShowShortcuts,h=o.icon,m=o.isActive,f=o.isDisabled,g=o.isHovered,v=o.appearAsDisabled,b=o.label,_=o.link,y=o.showToolboxOnHover,w=o.target,T=o.toolbox,C=o.theme,k=void 0===C?d:C,S=Object(u.a)(this.props);return a.createElement(n,r.__assign({},S,{className:s(l,k.item,h&&k.withIcon,(e={},e[k.isActive]=m,e[k.isDisabled]=f||v,e[k.hovered]=g,e)),href:_,target:w,onClick:this._handleClick,onMouseUp:this._handleMouseUp}),void 0!==h&&a.createElement("div",{className:k.icon,dangerouslySetInnerHTML:{__html:h}}),a.createElement("div",{className:k.labelRow},a.createElement("div",{className:k.label},b)),(void 0!==c||p)&&a.createElement("div",{className:k.shortcut},this._formatShortcut(c)),void 0!==T&&a.createElement("div",{onClick:i,className:s(k.toolbox,(t={},t[k.showOnHover]=y,t))},T))},t}(a.PureComponent)},NOPy:function(e,t,o){e.exports={separator:"separator-25lkUpN--"}},QpNh:function(e,t,o){ +"use strict";function n(e){var t,o,n,r,a,s=Object.entries(e).filter(i),l={};for(t=0,o=s;t'},nPPD:function(e,t,o){"use strict";function n(e,t,o){var n,i,r,a,s;for(void 0===o&&(o={}),n=Object.assign({},t),i=0,r=Object.keys(t);i"),this._table=$('
').appendTo(this._res),e=this.createLineWidthEditor(),t=b(),i=this.createColorPicker(),o=this.addLabeledRow(this._table,"Line"),$("
").append(i).appendTo(o),$("").append(e).appendTo(o),$('').append(t.render().css("display","block")).appendTo(o),n=$(""),o=$("
').append($("
').append($("").append(l).appendTo(o),$("").append(u).appendTo(o),$("").append(r).appendTo(o),$("").append(C).appendTo(o),$("").append(g).appendTo(o),o=$("
").append($.t("Text Alignment:")).appendTo(o),y=$(""),w=$("").data("selectbox-css",{display:"block"}),$("").append(y).appendTo(o),$("").append(w).appendTo(o),T=$("