From 13ff8966716f1ac9790289a2b6cbec433bb4e3ab Mon Sep 17 00:00:00 2001 From: Tako Date: Fri, 14 Jul 2023 16:59:43 +0000 Subject: [PATCH 001/207] ability to see orders in trade navigation --- src/components/ftbot/TradeListNav.vue | 51 ++++++++++++++++++++------- 1 file changed, 38 insertions(+), 13 deletions(-) diff --git a/src/components/ftbot/TradeListNav.vue b/src/components/ftbot/TradeListNav.vue index 6f8eda89..9f8f7ede 100644 --- a/src/components/ftbot/TradeListNav.vue +++ b/src/components/ftbot/TradeListNav.vue @@ -9,7 +9,7 @@ >Trade Navigation {{ sortNewestFirst ? '↓' : '↑' }} -
- {{ - trade.is_short ? 'S-' : 'L-' - }} - +
+
+ {{ + trade.is_short ? 'S-' : 'L-' + }} + +
+ +
- - + + + + +
    +
  • + {{ order.ft_order_side }} {{ order.amount }} at {{ order.safe_price }} +
  • +
+
No trades to show... @@ -39,7 +55,7 @@ import { Trade } from '@/types'; import TradeProfit from '@/components/ftbot/TradeProfit.vue'; import ProfitPill from '@/components/general/ProfitPill.vue'; -import { computed, ref } from 'vue'; +import { computed, ref, watch } from 'vue'; import { useBotStore } from '@/stores/ftbotwrapper'; import DateTimeTZ from '@/components/general/DateTimeTZ.vue'; @@ -67,6 +83,15 @@ const sortedTrades = computed(() => { : a.open_timestamp - b.open_timestamp, ); }); + +const ordersVisible = ref(sortedTrades.value.map(() => false)); + +watch( + () => botStore.activeBot.selectedPair, + () => { + ordersVisible.value = sortedTrades.value.map(() => false); + }, +); diff --git a/src/views/BacktestingView.vue b/src/views/BacktestingView.vue index fc7f1d9d..5eb653e6 100644 --- a/src/views/BacktestingView.vue +++ b/src/views/BacktestingView.vue @@ -97,208 +97,7 @@
-
- Strategy - -
- - - - - - - - - - - - - - - - - -
- Unlimited stake - - -
-
- - - - - - - - - - -
- -
-
- -

Backtesting summary

-
- - Start backtest - - - Load backtest result - - Stop Backtest - Reset Backtest -
+
diff --git a/src/stores/ftbot.ts b/src/stores/ftbot.ts index a4628a4e..c867a816 100644 --- a/src/stores/ftbot.ts +++ b/src/stores/ftbot.ts @@ -880,8 +880,8 @@ export function createBotSubStore(botId: string, botName: string) { } }, async getBacktestHistory() { - const result = await api.get('/backtest/history'); - this.backtestHistoryList = result.data; + const { data } = await api.get('/backtest/history'); + this.backtestHistoryList = data; }, updateBacktestResult(backtestResult: BacktestResult) { this.backtestResult = backtestResult; @@ -903,6 +903,17 @@ export function createBotSubStore(botId: string, botName: string) { this.updateBacktestResult(result.data.backtest_result); } }, + async deleteBacktestHistoryResult(btHistoryEntry: BacktestHistoryEntry) { + try { + const { data } = await api.delete( + `/backtest/history/${btHistoryEntry.filename}`, + ); + this.backtestHistoryList = data; + } catch (err) { + console.error(err); + return Promise.reject(err); + } + }, setBacktestResultKey(key: string) { this.selectedBacktestResultKey = key; }, From 8c6f7d02b0047a2ac406de7893395c277f329235 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 26 Jul 2023 03:16:15 +0000 Subject: [PATCH 050/207] build(deps-dev): bump vue-tsc from 1.8.5 to 1.8.6 Bumps [vue-tsc](https://github.com/vuejs/language-tools/tree/HEAD/packages/vue-tsc) from 1.8.5 to 1.8.6. - [Release notes](https://github.com/vuejs/language-tools/releases) - [Changelog](https://github.com/vuejs/language-tools/blob/master/CHANGELOG.md) - [Commits](https://github.com/vuejs/language-tools/commits/v1.8.6/packages/vue-tsc) --- updated-dependencies: - dependency-name: vue-tsc dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] --- package.json | 2 +- yarn.lock | 30 +++++++++++++++--------------- 2 files changed, 16 insertions(+), 16 deletions(-) diff --git a/package.json b/package.json index 6ad62b56..ad990287 100644 --- a/package.json +++ b/package.json @@ -66,6 +66,6 @@ "unplugin-vue-components": "^0.25.1", "vite": "^4.4.6", "vitest": "^0.33.0", - "vue-tsc": "^1.8.5" + "vue-tsc": "^1.8.6" } } diff --git a/yarn.lock b/yarn.lock index a6608424..c3af3ce1 100644 --- a/yarn.lock +++ b/yarn.lock @@ -767,10 +767,10 @@ "@typescript-eslint/parser" "^5.59.1" vue-eslint-parser "^9.1.1" -"@vue/language-core@1.8.5": - version "1.8.5" - resolved "https://registry.yarnpkg.com/@vue/language-core/-/language-core-1.8.5.tgz#f1fc7ec87b46bdbaf0dbba29ce108f5e6f127d3b" - integrity sha512-DKQNiNQzNV7nrkZQujvjfX73zqKdj2+KoM4YeKl+ft3f+crO3JB4ycPnmgaRMNX/ULJootdQPGHKFRl5cXxwaw== +"@vue/language-core@1.8.6": + version "1.8.6" + resolved "https://registry.yarnpkg.com/@vue/language-core/-/language-core-1.8.6.tgz#afe2af57aa601770f4a5b263757e94e891954755" + integrity sha512-PyYDMArbR7hnhqw9OEupr0s4ut0/ZfITp7WEjigF58cd2R0lRLNM1HPvzFMuULpy3ImBEOZI11KRIDirqOe+tQ== dependencies: "@volar/language-core" "~1.9.0" "@volar/source-map" "~1.9.0" @@ -837,13 +837,13 @@ js-beautify "1.14.9" vue-component-type-helpers "1.8.4" -"@vue/typescript@1.8.5": - version "1.8.5" - resolved "https://registry.yarnpkg.com/@vue/typescript/-/typescript-1.8.5.tgz#a8585a8a8d655ff1d65152ec600f6142f590a1f1" - integrity sha512-domFBbNr3PEcjGBeB+cmgUM3cI6pJsJezguIUKZ1rphkfIkICyoMjCd3TitoP32yo2KABLiaXcGFzgFfQf6B3w== +"@vue/typescript@1.8.6": + version "1.8.6" + resolved "https://registry.yarnpkg.com/@vue/typescript/-/typescript-1.8.6.tgz#ba116a7b52c974ac6f08d5ad10799acee4fbf073" + integrity sha512-sDQ5tltrSVS3lAkE3JtMRGJo91CLIxcWPy7yms/DT+ssxXpwxbVRD5Gok68HenEZBA4Klq7nW99sG/nTRnpPuQ== dependencies: "@volar/typescript" "~1.9.0" - "@vue/language-core" "1.8.5" + "@vue/language-core" "1.8.6" "@vuepic/vue-datepicker@^5.4.0": version "5.4.0" @@ -3537,13 +3537,13 @@ vue-template-compiler@^2.7.14: de-indent "^1.0.2" he "^1.2.0" -vue-tsc@^1.8.5: - version "1.8.5" - resolved "https://registry.yarnpkg.com/vue-tsc/-/vue-tsc-1.8.5.tgz#35bedbd8c0dab5eaa9e9ce0a4f7e88ba92e339d2" - integrity sha512-Jr8PTghJIwp69MFsEZoADDcv2l+lXA8juyN/5AYA5zxyZNvIHjSbgKgkYIYc1qnihrOyIG1VOnfk4ZE0jqn8bw== +vue-tsc@^1.8.6: + version "1.8.6" + resolved "https://registry.yarnpkg.com/vue-tsc/-/vue-tsc-1.8.6.tgz#c25ffc3fa6b8f6d8abe394d580ab65abe3d009c7" + integrity sha512-8ffD4NGfwyATjw/s40Lw2EgB7L2/PAqnGlJBaVQLgblr3SU4EYdhJ67TNXXuDD8NMbDAFSM24V8i3ZIJgTs32Q== dependencies: - "@vue/language-core" "1.8.5" - "@vue/typescript" "1.8.5" + "@vue/language-core" "1.8.6" + "@vue/typescript" "1.8.6" semver "^7.3.8" vue3-drr-grid-layout@^1.9.7: From 4536babd5246192697b8db606f3d563d570a303e Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 26 Jul 2023 03:16:28 +0000 Subject: [PATCH 051/207] build(deps-dev): bump sass from 1.64.0 to 1.64.1 Bumps [sass](https://github.com/sass/dart-sass) from 1.64.0 to 1.64.1. - [Release notes](https://github.com/sass/dart-sass/releases) - [Changelog](https://github.com/sass/dart-sass/blob/main/CHANGELOG.md) - [Commits](https://github.com/sass/dart-sass/compare/1.64.0...1.64.1) --- updated-dependencies: - dependency-name: sass dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] --- package.json | 2 +- yarn.lock | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/package.json b/package.json index 6ad62b56..c8ebc532 100644 --- a/package.json +++ b/package.json @@ -60,7 +60,7 @@ "mutationobserver-shim": "^0.3.7", "portal-vue": "^3.0.0", "prettier": "^3.0.0", - "sass": "^1.64.0", + "sass": "^1.64.1", "typescript": "~5.1.6", "unplugin-icons": "^0.16.5", "unplugin-vue-components": "^0.25.1", diff --git a/yarn.lock b/yarn.lock index a6608424..9ef75b2e 100644 --- a/yarn.lock +++ b/yarn.lock @@ -3055,10 +3055,10 @@ safer-buffer@^2.0.2, safer-buffer@^2.1.0, safer-buffer@~2.1.0: resolved "https://registry.yarnpkg.com/safer-buffer/-/safer-buffer-2.1.2.tgz#44fa161b0187b9549dd84bb91802f9bd8385cd6a" integrity sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg== -sass@^1.64.0: - version "1.64.0" - resolved "https://registry.yarnpkg.com/sass/-/sass-1.64.0.tgz#9ca8d0acb1a704b86b7f1197dc310f568fb34638" - integrity sha512-m7YtAGmQta9uANIUJwXesAJMSncqH+3INc8kdVXs6eV6GUC8Qu2IYKQSN8PRLgiQfpca697G94klm2leYMxSHw== +sass@^1.64.1: + version "1.64.1" + resolved "https://registry.yarnpkg.com/sass/-/sass-1.64.1.tgz#6a46f6d68e0fa5ad90aa59ce025673ddaa8441cf" + integrity sha512-16rRACSOFEE8VN7SCgBu1MpYCyN7urj9At898tyzdXFhC+a+yOX5dXwAR7L8/IdPJ1NB8OYoXmD55DM30B2kEQ== dependencies: chokidar ">=3.0.0 <4.0.0" immutable "^4.0.0" From 8cce7657c329f7f08842b6788a6bcdf094f1559c Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 26 Jul 2023 03:17:02 +0000 Subject: [PATCH 052/207] build(deps): bump pinia-plugin-persistedstate from 3.1.0 to 3.2.0 Bumps [pinia-plugin-persistedstate](https://github.com/prazdevs/pinia-plugin-persistedstate) from 3.1.0 to 3.2.0. - [Release notes](https://github.com/prazdevs/pinia-plugin-persistedstate/releases) - [Commits](https://github.com/prazdevs/pinia-plugin-persistedstate/compare/v3.1.0...v3.2.0) --- updated-dependencies: - dependency-name: pinia-plugin-persistedstate dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --- package.json | 2 +- yarn.lock | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/package.json b/package.json index 6ad62b56..3f8d382d 100644 --- a/package.json +++ b/package.json @@ -30,7 +30,7 @@ "favico.js": "^0.3.10", "humanize-duration": "^3.29.0", "pinia": "^2.1.4", - "pinia-plugin-persistedstate": "^3.1.0", + "pinia-plugin-persistedstate": "^3.2.0", "sortablejs": "^1.15.0", "vue": "^3.3.2", "vue-class-component": "^7.2.5", diff --git a/yarn.lock b/yarn.lock index a6608424..3f955ef2 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2829,10 +2829,10 @@ pify@^2.2.0: resolved "https://registry.yarnpkg.com/pify/-/pify-2.3.0.tgz#ed141a6ac043a849ea588498e7dca8b15330e90c" integrity sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog== -pinia-plugin-persistedstate@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/pinia-plugin-persistedstate/-/pinia-plugin-persistedstate-3.1.0.tgz#eada2b61ecd478fce88e490a685210415cd7a1b4" - integrity sha512-8UN+vYMEPBdgNLwceY08mi5olI0wkYaEb8b6hD6xW7SnBRuPydWHlEhZvUWgNb/ibuf4PvufpvtS+dmhYjJQOw== +pinia-plugin-persistedstate@^3.2.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/pinia-plugin-persistedstate/-/pinia-plugin-persistedstate-3.2.0.tgz#9932ca2ae88aa6c0d6763bebc6447d7bd1f097d0" + integrity sha512-tZbNGf2vjAQcIm7alK40sE51Qu/m9oWr+rEgNm/2AWr1huFxj72CjvpQcIQzMknDBJEkQznCLAGtJTIcLKrKdw== pinia@^2.1.4: version "2.1.4" From c8976e7b64cb0ab282cef2350b91350bec53e921 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 26 Jul 2023 03:17:23 +0000 Subject: [PATCH 053/207] build(deps-dev): bump vite from 4.4.6 to 4.4.7 Bumps [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite) from 4.4.6 to 4.4.7. - [Release notes](https://github.com/vitejs/vite/releases) - [Changelog](https://github.com/vitejs/vite/blob/main/packages/vite/CHANGELOG.md) - [Commits](https://github.com/vitejs/vite/commits/v4.4.7/packages/vite) --- updated-dependencies: - dependency-name: vite dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] --- package.json | 2 +- yarn.lock | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/package.json b/package.json index 6ad62b56..9ed71a65 100644 --- a/package.json +++ b/package.json @@ -64,7 +64,7 @@ "typescript": "~5.1.6", "unplugin-icons": "^0.16.5", "unplugin-vue-components": "^0.25.1", - "vite": "^4.4.6", + "vite": "^4.4.7", "vitest": "^0.33.0", "vue-tsc": "^1.8.5" } diff --git a/yarn.lock b/yarn.lock index a6608424..70c56def 100644 --- a/yarn.lock +++ b/yarn.lock @@ -3435,10 +3435,10 @@ vite-node@0.33.0: picocolors "^1.0.0" vite "^3.0.0 || ^4.0.0" -"vite@^3.0.0 || ^4.0.0", vite@^4.4.6: - version "4.4.6" - resolved "https://registry.yarnpkg.com/vite/-/vite-4.4.6.tgz#97a0a43868ec773fd88980d7c323c80233521cf1" - integrity sha512-EY6Mm8vJ++S3D4tNAckaZfw3JwG3wa794Vt70M6cNJ6NxT87yhq7EC8Rcap3ahyHdo8AhCmV9PTk+vG1HiYn1A== +"vite@^3.0.0 || ^4.0.0", vite@^4.4.7: + version "4.4.7" + resolved "https://registry.yarnpkg.com/vite/-/vite-4.4.7.tgz#71b8a37abaf8d50561aca084dbb77fa342824154" + integrity sha512-6pYf9QJ1mHylfVh39HpuSfMPojPSKVxZvnclX1K1FyZ1PXDOcLBibdq5t1qxJSnL63ca8Wf4zts6mD8u8oc9Fw== dependencies: esbuild "^0.18.10" postcss "^8.4.26" From b151d1f25452f193958be7da5aaa0d220089bb58 Mon Sep 17 00:00:00 2001 From: Matthias Date: Wed, 26 Jul 2023 06:42:34 +0200 Subject: [PATCH 054/207] Allow removal of individual results from Backtest memory --- src/components/ftbot/BacktestResultSelect.vue | 16 ++++++++++++++-- src/stores/ftbot.ts | 11 +++++++++++ src/views/BacktestingView.vue | 1 + 3 files changed, 26 insertions(+), 2 deletions(-) diff --git a/src/components/ftbot/BacktestResultSelect.vue b/src/components/ftbot/BacktestResultSelect.vue index 1474d709..c2f7b27a 100644 --- a/src/components/ftbot/BacktestResultSelect.vue +++ b/src/components/ftbot/BacktestResultSelect.vue @@ -11,6 +11,14 @@ @click="setBacktestResult(key)" > {{ key }} {{ strat.total_trades }} {{ formatPercent(strat.profit_total) }} + + +
@@ -27,8 +35,12 @@ defineProps({ }, selectedBacktestResultKey: { required: false, default: '', type: String }, }); -const emit = defineEmits(['selectionChange']); -const setBacktestResult = (key) => { +const emit = defineEmits<{ + selectionChange: [value: string]; + removeResult: [value: string]; +}>(); + +const setBacktestResult = (key: string) => { emit('selectionChange', key); }; diff --git a/src/stores/ftbot.ts b/src/stores/ftbot.ts index c867a816..d8d5830e 100644 --- a/src/stores/ftbot.ts +++ b/src/stores/ftbot.ts @@ -917,6 +917,17 @@ export function createBotSubStore(botId: string, botName: string) { setBacktestResultKey(key: string) { this.selectedBacktestResultKey = key; }, + removeBacktestResultFromMemory(key: string) { + if (this.selectedBacktestResultKey === key) { + // Get first key from backtestHistory that is not the key to be deleted + const keys = Object.keys(this.backtestHistory); + const index = keys.findIndex((k) => k !== key); + if (index !== -1) { + this.selectedBacktestResultKey = keys[index]; + } + } + delete this.backtestHistory[key]; + }, async getSysInfo() { try { const { data } = await api.get('/sysinfo'); diff --git a/src/views/BacktestingView.vue b/src/views/BacktestingView.vue index 895913e6..61c6f7a1 100644 --- a/src/views/BacktestingView.vue +++ b/src/views/BacktestingView.vue @@ -86,6 +86,7 @@ :backtest-history="botStore.activeBot.backtestHistory" :selected-backtest-result-key="botStore.activeBot.selectedBacktestResultKey" @selection-change="botStore.activeBot.setBacktestResultKey" + @remove-result="botStore.activeBot.removeBacktestResultFromMemory" /> From 2bff59c2356c9fb1ca45084f4f3aa489b2ea7b69 Mon Sep 17 00:00:00 2001 From: Matthias Date: Wed, 26 Jul 2023 06:56:17 +0200 Subject: [PATCH 055/207] Improve layout of delete button --- src/components/ftbot/BacktestResultSelect.vue | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/components/ftbot/BacktestResultSelect.vue b/src/components/ftbot/BacktestResultSelect.vue index c2f7b27a..ba3a530e 100644 --- a/src/components/ftbot/BacktestResultSelect.vue +++ b/src/components/ftbot/BacktestResultSelect.vue @@ -7,12 +7,12 @@ :key="key" button :active="key === selectedBacktestResultKey" - class="d-flex justify-content-between align-items-center py-1" + class="d-flex justify-content-between align-items-center py-1 pe-1" @click="setBacktestResult(key)" > {{ key }} {{ strat.total_trades }} {{ formatPercent(strat.profit_total) }} Date: Wed, 26 Jul 2023 07:00:08 +0200 Subject: [PATCH 056/207] Align format of TODO comments --- src/components/ftbot/PairlistConfigParameter.vue | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/components/ftbot/PairlistConfigParameter.vue b/src/components/ftbot/PairlistConfigParameter.vue index e92101e1..18ab5548 100644 --- a/src/components/ftbot/PairlistConfigParameter.vue +++ b/src/components/ftbot/PairlistConfigParameter.vue @@ -30,6 +30,6 @@ defineProps<{ param: PairlistParameter; }>(); -//TODO: type should really be PairlistParamValue +// TODO: type should really be PairlistParamValue const paramValue = defineModel(); From 6256d4cfdb4a88f4a356d1f7fa2e36def83d4715 Mon Sep 17 00:00:00 2001 From: Matthias Date: Wed, 26 Jul 2023 07:02:51 +0200 Subject: [PATCH 057/207] Remove outdated TODO messages --- src/shared/userService.ts | 1 - src/stores/ftbot.ts | 1 - 2 files changed, 2 deletions(-) diff --git a/src/shared/userService.ts b/src/shared/userService.ts index 03899612..9f86d4b7 100644 --- a/src/shared/userService.ts +++ b/src/shared/userService.ts @@ -232,7 +232,6 @@ export class UserService { * Call on startup to migrate old login info to new login */ public static migrateLogin() { - // TODO: this is actually never called! const AUTH_REFRESH_TOKEN = 'auth_ref_token'; // Legacy key - do not use const AUTH_ACCESS_TOKEN = 'auth_access_token'; const AUTH_API_URL = 'auth_api_url'; diff --git a/src/stores/ftbot.ts b/src/stores/ftbot.ts index d8d5830e..f1151b2d 100644 --- a/src/stores/ftbot.ts +++ b/src/stores/ftbot.ts @@ -168,7 +168,6 @@ export function createBotSubStore(botId: string, botName: string) { try { const result = await api.get('/ping'); const now = Date.now(); - // TODO: Name collision! this.ping = `${result.data.status} ${now.toString()}`; this.setIsBotOnline(true); return Promise.resolve(); From e4a1ec224a9a6fb3243d020cbe0da7789f8a0897 Mon Sep 17 00:00:00 2001 From: Matthias Date: Thu, 27 Jul 2023 06:20:36 +0200 Subject: [PATCH 058/207] Improve backtest types --- src/types/backtest.ts | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/src/types/backtest.ts b/src/types/backtest.ts index 986c7198..5ea5cca9 100644 --- a/src/types/backtest.ts +++ b/src/types/backtest.ts @@ -182,9 +182,16 @@ export interface StrategyBacktestResult { backtest_run_end_ts: number; } +export interface BacktestMetadata { + /** Start time of the backtest run */ + backtest_run_start_ts: number; + run_id: string; +} + export interface BacktestResult { strategy: Record; strategy_comparison: Array>; + metadata: Record; } export enum BacktestSteps { From ee45a94ec6f66a36f94d51b8a6ad4a20ef3fde2d Mon Sep 17 00:00:00 2001 From: Matthias Date: Thu, 27 Jul 2023 06:55:07 +0200 Subject: [PATCH 059/207] Show proper error message when Candle analysis fails closes #1387 --- src/stores/ftbot.ts | 43 +++++++++++++++++++++++++------------------ 1 file changed, 25 insertions(+), 18 deletions(-) diff --git a/src/stores/ftbot.ts b/src/stores/ftbot.ts index f1151b2d..0e2aa974 100644 --- a/src/stores/ftbot.ts +++ b/src/stores/ftbot.ts @@ -362,29 +362,36 @@ export function createBotSubStore(botId: string, botName: string) { reject(error); }); }, - getPairHistory(payload: PairHistoryPayload) { + async getPairHistory(payload: PairHistoryPayload) { if (payload.pair && payload.timeframe) { this.historyStatus = LoadingStatus.loading; - return api - .get('/pair_history', { + try { + const { data } = await api.get('/pair_history', { params: { ...payload }, timeout: 50000, - }) - .then((result) => { - this.history = { - [`${payload.pair}__${payload.timeframe}`]: { - pair: payload.pair, - timeframe: payload.timeframe, - timerange: payload.timerange, - data: result.data, - }, - }; - this.historyStatus = LoadingStatus.success; - }) - .catch((err) => { - console.error(err); - this.historyStatus = LoadingStatus.error; }); + this.history = { + [`${payload.pair}__${payload.timeframe}`]: { + pair: payload.pair, + timeframe: payload.timeframe, + timerange: payload.timerange, + data: data, + }, + }; + this.historyStatus = LoadingStatus.success; + } catch (err) { + console.error(err); + this.historyStatus = LoadingStatus.error; + if (axios.isAxiosError(err)) { + console.error(err.response); + const errMsg = err.response?.data?.detail ?? 'Error fetching history'; + showAlert(errMsg, 'danger'); + } + + return new Promise((resolve, reject) => { + reject(err); + }); + } } // Error branchs const error = 'pair or timeframe or timerange not specified'; From a2125ac56790c070b684f6e654d27a71eebbca55 Mon Sep 17 00:00:00 2001 From: Matthias Date: Thu, 27 Jul 2023 06:56:10 +0200 Subject: [PATCH 060/207] Show error message when strategy loading fails closes #1387 --- src/stores/ftbot.ts | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/stores/ftbot.ts b/src/stores/ftbot.ts index 0e2aa974..2fab593c 100644 --- a/src/stores/ftbot.ts +++ b/src/stores/ftbot.ts @@ -442,6 +442,11 @@ export function createBotSubStore(botId: string, botName: string) { return Promise.resolve(data); } catch (error) { console.error(error); + if (axios.isAxiosError(error)) { + console.error(error.response); + const errMsg = error.response?.data?.detail ?? 'Error fetching history'; + showAlert(errMsg, 'warning'); + } return Promise.reject(error); } }, From 46ca16686304d68017e8143fe6fbe43990a952a7 Mon Sep 17 00:00:00 2001 From: Matthias Date: Thu, 27 Jul 2023 07:24:39 +0200 Subject: [PATCH 061/207] Don't show diff columns in plotconfig closes #1388 Also don't try to calculate diff unless both columns exist --- src/components/charts/CandleChart.vue | 3 ++- src/shared/charts/areaPlotDataset.ts | 22 +++++++++++++--------- 2 files changed, 15 insertions(+), 10 deletions(-) diff --git a/src/components/charts/CandleChart.vue b/src/components/charts/CandleChart.vue index 812bd639..1dbc1a2d 100644 --- a/src/components/charts/CandleChart.vue +++ b/src/components/charts/CandleChart.vue @@ -130,7 +130,8 @@ function updateChart(initial = false) { if (chartOptions.value?.title) { chartOptions.value.title[0].text = chartTitle.value; } - const columns = props.dataset.columns; + // Avoid mutation of dataset.columns array + const columns = props.dataset.columns.slice(); const colDate = columns.findIndex((el) => el === '__date_ts'); const colOpen = columns.findIndex((el) => el === 'open'); diff --git a/src/shared/charts/areaPlotDataset.ts b/src/shared/charts/areaPlotDataset.ts index a32bfada..c7474a93 100644 --- a/src/shared/charts/areaPlotDataset.ts +++ b/src/shared/charts/areaPlotDataset.ts @@ -12,18 +12,22 @@ export function calculateDiff( ): number[][] { const fromIdx = columns.indexOf(colFrom); const toIdx = columns.indexOf(colTo); - columns.push(`${colFrom}-${colTo}`); - + const hasBothColumns = fromIdx > 0 && toIdx > 0; + if (hasBothColumns) { + columns.push(`${colFrom}-${colTo}`); + } return data.map((original) => { // Prevent mutation of original data const candle = original.slice(); - const diff = - candle === null || candle[toIdx] === null || candle[fromIdx] === null - ? null - : candle[toIdx] - candle[fromIdx]; - // eslint-disable-next-line @typescript-eslint/ban-ts-comment - // @ts-expect-error - candle.push(diff); + if (hasBothColumns) { + const diff = + candle === null || candle[toIdx] === null || candle[fromIdx] === null + ? null + : candle[toIdx] - candle[fromIdx]; + // eslint-disable-next-line @typescript-eslint/ban-ts-comment + // @ts-expect-error + candle.push(diff); + } return candle; }); } From c1e447e16370aba984f1be14c4a190d8ec0cb851 Mon Sep 17 00:00:00 2001 From: Matthias Date: Tue, 20 Jun 2023 21:11:39 +0200 Subject: [PATCH 062/207] Show current stoploss line --- src/components/charts/CandleChart.vue | 6 +++++ src/shared/charts/tradeChartData.ts | 33 ++++++++++++++++++++++++++- 2 files changed, 38 insertions(+), 1 deletion(-) diff --git a/src/components/charts/CandleChart.vue b/src/components/charts/CandleChart.vue index 1dbc1a2d..a2c50c34 100644 --- a/src/components/charts/CandleChart.vue +++ b/src/components/charts/CandleChart.vue @@ -37,6 +37,9 @@ import { TooltipComponent, VisualMapComponent, VisualMapPiecewiseComponent, + // MarkAreaComponent, + MarkLineComponent, + // MarkPointComponent, } from 'echarts/components'; import { use } from 'echarts/core'; import { CanvasRenderer } from 'echarts/renderers'; @@ -54,6 +57,9 @@ use([ TooltipComponent, VisualMapComponent, VisualMapPiecewiseComponent, + // MarkAreaComponent, + MarkLineComponent, + // MarkPointComponent, CandlestickChart, BarChart, diff --git a/src/shared/charts/tradeChartData.ts b/src/shared/charts/tradeChartData.ts index 418be4a5..d3bcd5a5 100644 --- a/src/shared/charts/tradeChartData.ts +++ b/src/shared/charts/tradeChartData.ts @@ -127,6 +127,8 @@ export function generateTradeSeries( ): ScatterSeriesOption { const { tradeData } = getTradeEntries(dataset, trades); + const openTrades = trades.filter((t) => t.is_open); + const tradesSeries: ScatterSeriesOption = { name: nameTrades, type: 'scatter', @@ -158,6 +160,35 @@ export function generateTradeSeries( symbolSize: 13, data: tradeData, }; - + // Show distance to stoploss + if (openTrades.length > 0) { + // Ensure to import and "use" whatever feature in candleChart! (MarkLine, MarkArea, ...) + tradesSeries.markLine = { + symbol: 'none', + itemStyle: { + color: '#ff000055', + }, + label: { + show: true, + position: 'middle', + }, + lineStyle: { + type: 'solid', + }, + data: openTrades.map((t) => { + return [ + { + name: 'Stoploss', + yAxis: t.stop_loss_abs, + xAxis: t.open_timestamp, + }, + { + yAxis: t.stop_loss_abs, + xAxis: t.close_timestamp ?? dataset.data_stop_ts, + }, + ]; + }), + }; + } return tradesSeries; } From bc88cd16d05a52e6c373eb482a68bdda9d03e6f2 Mon Sep 17 00:00:00 2001 From: Matthias Date: Sat, 29 Jul 2023 19:52:19 +0200 Subject: [PATCH 063/207] Ensure stop line is visible for new trades --- src/shared/charts/tradeChartData.ts | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/src/shared/charts/tradeChartData.ts b/src/shared/charts/tradeChartData.ts index d3bcd5a5..39b367bc 100644 --- a/src/shared/charts/tradeChartData.ts +++ b/src/shared/charts/tradeChartData.ts @@ -163,10 +163,13 @@ export function generateTradeSeries( // Show distance to stoploss if (openTrades.length > 0) { // Ensure to import and "use" whatever feature in candleChart! (MarkLine, MarkArea, ...) + // Offset to avoid having the line at the very end of the chart + const offset = dataset.timeframe_ms * 10; + tradesSeries.markLine = { symbol: 'none', itemStyle: { - color: '#ff000055', + color: '#ff0000AA', }, label: { show: true, @@ -180,7 +183,10 @@ export function generateTradeSeries( { name: 'Stoploss', yAxis: t.stop_loss_abs, - xAxis: t.open_timestamp, + xAxis: + dataset.data_stop_ts - offset > t.open_timestamp + ? t.open_timestamp + : dataset.data_stop_ts - offset, }, { yAxis: t.stop_loss_abs, From 094208cfd23a30c9df2ccfd5cf3aef65eadf9426 Mon Sep 17 00:00:00 2001 From: Matthias Date: Sun, 30 Jul 2023 09:47:59 +0200 Subject: [PATCH 064/207] Improve memory structure for backtest result --- src/components/ftbot/BacktestResultSelect.vue | 9 +++++---- src/stores/ftbot.ts | 15 +++++++++++---- src/types/backtest.ts | 8 ++++++++ 3 files changed, 24 insertions(+), 8 deletions(-) diff --git a/src/components/ftbot/BacktestResultSelect.vue b/src/components/ftbot/BacktestResultSelect.vue index ba3a530e..a6d136b9 100644 --- a/src/components/ftbot/BacktestResultSelect.vue +++ b/src/components/ftbot/BacktestResultSelect.vue @@ -3,14 +3,15 @@

Available results:

- {{ key }} {{ strat.total_trades }} {{ formatPercent(strat.profit_total) }} + {{ key }} {{ result.strategy.total_trades }} + {{ formatPercent(result.strategy.profit_total) }} import { formatPercent } from '@/shared/formatters'; -import { StrategyBacktestResult } from '@/types'; +import { BacktestResultInMemory } from '@/types'; defineProps({ backtestHistory: { required: true, - type: Object as () => Record, + type: Object as () => Record, }, selectedBacktestResultKey: { required: false, default: '', type: String }, }); diff --git a/src/stores/ftbot.ts b/src/stores/ftbot.ts index 2fab593c..8f73b405 100644 --- a/src/stores/ftbot.ts +++ b/src/stores/ftbot.ts @@ -43,6 +43,7 @@ import { PairlistEvalResponse, PairlistsPayload, PairlistsResponse, + BacktestResultInMemory, } from '@/types'; import axios, { AxiosResponse } from 'axios'; import { defineStore } from 'pinia'; @@ -102,7 +103,7 @@ export function createBotSubStore(botId: string, botName: string) { backtestTradeCount: 0, backtestResult: undefined as BacktestResult | undefined, selectedBacktestResultKey: '', - backtestHistory: {} as Record, + backtestHistory: {} as Record, backtestHistoryList: [] as BacktestHistoryEntry[], sysInfo: {} as SysInfoResponse, }; @@ -114,7 +115,8 @@ export function createBotSubStore(botId: string, botName: string) { stakeCurrencyDecimals: (state) => state.botState?.stake_currency_decimals || 3, canRunBacktest: (state) => state.botState?.runmode === RunModes.WEBSERVER, isWebserverMode: (state) => state.botState?.runmode === RunModes.WEBSERVER, - selectedBacktestResult: (state) => state.backtestHistory[state.selectedBacktestResultKey], + selectedBacktestResult: (state) => + state.backtestHistory[state.selectedBacktestResultKey]?.strategy || {}, shortAllowed: (state) => state.botState?.short_allowed || false, openTradeCount: (state) => state.openTrades.length, isTrading: (state) => @@ -898,11 +900,16 @@ export function createBotSubStore(botId: string, botName: string) { this.backtestResult = backtestResult; // TODO: Properly identify duplicates to avoid pushing the same multiple times Object.entries(backtestResult.strategy).forEach(([key, strat]) => { - console.log(key, strat); + const metadata = backtestResult.metadata[key]; + console.log(key, strat, metadata); const stratKey = `${key}_${strat.total_trades}_${strat.profit_total.toFixed(3)}`; + const btResult: BacktestResultInMemory = { + metadata, + strategy: strat, + }; // this.backtestHistory[stratKey] = strat; - this.backtestHistory = { ...this.backtestHistory, ...{ [stratKey]: strat } }; + this.backtestHistory = { ...this.backtestHistory, ...{ [stratKey]: btResult } }; this.selectedBacktestResultKey = stratKey; }); }, diff --git a/src/types/backtest.ts b/src/types/backtest.ts index 5ea5cca9..864b6d1f 100644 --- a/src/types/backtest.ts +++ b/src/types/backtest.ts @@ -188,6 +188,14 @@ export interface BacktestMetadata { run_id: string; } +/** + * Represents the in-memory result of a backtest. + */ +export interface BacktestResultInMemory { + strategy: StrategyBacktestResult; + metadata: BacktestMetadata; +} + export interface BacktestResult { strategy: Record; strategy_comparison: Array>; From 3257fb75c95a6d8f1edeb4e0d32a2655ad152c8a Mon Sep 17 00:00:00 2001 From: Matthias Date: Sun, 30 Jul 2023 09:56:32 +0200 Subject: [PATCH 065/207] Show strategy name instead of "key" --- src/components/ftbot/BacktestResultSelect.vue | 11 +++++++++-- src/stores/ftbot.ts | 6 +++++- src/types/backtest.ts | 6 +++++- 3 files changed, 19 insertions(+), 4 deletions(-) diff --git a/src/components/ftbot/BacktestResultSelect.vue b/src/components/ftbot/BacktestResultSelect.vue index a6d136b9..af2700bf 100644 --- a/src/components/ftbot/BacktestResultSelect.vue +++ b/src/components/ftbot/BacktestResultSelect.vue @@ -10,8 +10,15 @@ class="d-flex justify-content-between align-items-center py-1 pe-1" @click="setBacktestResult(key)" > - {{ key }} {{ result.strategy.total_trades }} - {{ formatPercent(result.strategy.profit_total) }} +
+
+ {{ result.metadata.strategyName }} - {{ result.strategy.timeframe }} +
+
+ TradeCount: {{ result.strategy.total_trades }} - Profit: + {{ formatPercent(result.strategy.profit_total) }} +
+
{ - const metadata = backtestResult.metadata[key]; + const metadata: BacktestMetadataWithStrategyName = { + ...backtestResult.metadata[key], + strategyName: key, + }; console.log(key, strat, metadata); const stratKey = `${key}_${strat.total_trades}_${strat.profit_total.toFixed(3)}`; diff --git a/src/types/backtest.ts b/src/types/backtest.ts index 864b6d1f..d7e87ad2 100644 --- a/src/types/backtest.ts +++ b/src/types/backtest.ts @@ -188,12 +188,16 @@ export interface BacktestMetadata { run_id: string; } +export interface BacktestMetadataWithStrategyName extends BacktestMetadata { + strategyName: string; +} + /** * Represents the in-memory result of a backtest. */ export interface BacktestResultInMemory { strategy: StrategyBacktestResult; - metadata: BacktestMetadata; + metadata: BacktestMetadataWithStrategyName; } export interface BacktestResult { From 75bdbb6f6d7b40cc36c0c086b316a8c0875a5489 Mon Sep 17 00:00:00 2001 From: Matthias Date: Sun, 30 Jul 2023 20:04:01 +0200 Subject: [PATCH 066/207] Slightly improve handling if metadata is missing for some reason --- src/stores/ftbot.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/stores/ftbot.ts b/src/stores/ftbot.ts index d1bba87a..b4669a43 100644 --- a/src/stores/ftbot.ts +++ b/src/stores/ftbot.ts @@ -902,7 +902,7 @@ export function createBotSubStore(botId: string, botName: string) { // TODO: Properly identify duplicates to avoid pushing the same multiple times Object.entries(backtestResult.strategy).forEach(([key, strat]) => { const metadata: BacktestMetadataWithStrategyName = { - ...backtestResult.metadata[key], + ...(backtestResult.metadata[key] ?? {}), strategyName: key, }; console.log(key, strat, metadata); From cb34eac0f889352d45be7ff5fedaf4dcf2d96180 Mon Sep 17 00:00:00 2001 From: Matthias Date: Mon, 31 Jul 2023 19:24:35 +0200 Subject: [PATCH 067/207] Fix miss-named variant after vue update --- src/components/ftbot/TradeListNav.vue | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/components/ftbot/TradeListNav.vue b/src/components/ftbot/TradeListNav.vue index 506dd649..523c8e4f 100644 --- a/src/components/ftbot/TradeListNav.vue +++ b/src/components/ftbot/TradeListNav.vue @@ -35,7 +35,7 @@ From 4ba707f6fe29bedbf8abab90a25e8768e5dd83cb Mon Sep 17 00:00:00 2001 From: Matthias Date: Wed, 2 Aug 2023 06:33:05 +0200 Subject: [PATCH 068/207] Fix cypress test, remove unnecessary log --- cypress/fixtures/backtest/backtest_get_end.json | 1 + src/stores/ftbot.ts | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/cypress/fixtures/backtest/backtest_get_end.json b/cypress/fixtures/backtest/backtest_get_end.json index a461d6f8..a95ba8f3 100644 --- a/cypress/fixtures/backtest/backtest_get_end.json +++ b/cypress/fixtures/backtest/backtest_get_end.json @@ -6,6 +6,7 @@ "progress": 1.0, "trade_count": null, "backtest_result": { + "metadata": {}, "strategy": { "SampleStrategy": { "trades": [ diff --git a/src/stores/ftbot.ts b/src/stores/ftbot.ts index b4669a43..6cdb7454 100644 --- a/src/stores/ftbot.ts +++ b/src/stores/ftbot.ts @@ -905,7 +905,7 @@ export function createBotSubStore(botId: string, botName: string) { ...(backtestResult.metadata[key] ?? {}), strategyName: key, }; - console.log(key, strat, metadata); + // console.log(key, strat, metadata); const stratKey = `${key}_${strat.total_trades}_${strat.profit_total.toFixed(3)}`; const btResult: BacktestResultInMemory = { From eed72d081645f657730a72fdfee019c0ddec7b69 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 2 Aug 2023 04:35:18 +0000 Subject: [PATCH 069/207] build(deps): bump pinia from 2.1.4 to 2.1.6 Bumps [pinia](https://github.com/vuejs/pinia) from 2.1.4 to 2.1.6. - [Release notes](https://github.com/vuejs/pinia/releases) - [Commits](https://github.com/vuejs/pinia/compare/pinia@2.1.4...pinia@2.1.6) --- updated-dependencies: - dependency-name: pinia dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] --- package.json | 2 +- yarn.lock | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/package.json b/package.json index beb1b27b..d97874b5 100644 --- a/package.json +++ b/package.json @@ -29,7 +29,7 @@ "echarts": "^5.4.3", "favico.js": "^0.3.10", "humanize-duration": "^3.29.0", - "pinia": "^2.1.4", + "pinia": "^2.1.6", "pinia-plugin-persistedstate": "^3.2.0", "sortablejs": "^1.15.0", "vue": "^3.3.2", diff --git a/yarn.lock b/yarn.lock index 4976bcc2..d8470efb 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2834,10 +2834,10 @@ pinia-plugin-persistedstate@^3.2.0: resolved "https://registry.yarnpkg.com/pinia-plugin-persistedstate/-/pinia-plugin-persistedstate-3.2.0.tgz#9932ca2ae88aa6c0d6763bebc6447d7bd1f097d0" integrity sha512-tZbNGf2vjAQcIm7alK40sE51Qu/m9oWr+rEgNm/2AWr1huFxj72CjvpQcIQzMknDBJEkQznCLAGtJTIcLKrKdw== -pinia@^2.1.4: - version "2.1.4" - resolved "https://registry.yarnpkg.com/pinia/-/pinia-2.1.4.tgz#a642adfe6208e10c36d3dc16184a91064788142a" - integrity sha512-vYlnDu+Y/FXxv1ABo1vhjC+IbqvzUdiUC3sfDRrRyY2CQSrqqaa+iiHmqtARFxJVqWQMCJfXx1PBvFs9aJVLXQ== +pinia@^2.1.6: + version "2.1.6" + resolved "https://registry.yarnpkg.com/pinia/-/pinia-2.1.6.tgz#e88959f14b61c4debd9c42d0c9944e2875cbe0fa" + integrity sha512-bIU6QuE5qZviMmct5XwCesXelb5VavdOWKWaB17ggk++NUwQWWbP5YnsONTk3b752QkW9sACiR81rorpeOMSvQ== dependencies: "@vue/devtools-api" "^6.5.0" vue-demi ">=0.14.5" From c7d42192c1699ca321719f5fe5d587020303b620 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 2 Aug 2023 04:35:26 +0000 Subject: [PATCH 070/207] build(deps-dev): bump eslint from 8.45.0 to 8.46.0 Bumps [eslint](https://github.com/eslint/eslint) from 8.45.0 to 8.46.0. - [Release notes](https://github.com/eslint/eslint/releases) - [Changelog](https://github.com/eslint/eslint/blob/main/CHANGELOG.md) - [Commits](https://github.com/eslint/eslint/compare/v8.45.0...v8.46.0) --- updated-dependencies: - dependency-name: eslint dependency-type: direct:development update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --- package.json | 2 +- yarn.lock | 72 ++++++++++++++++++++++++++-------------------------- 2 files changed, 37 insertions(+), 37 deletions(-) diff --git a/package.json b/package.json index beb1b27b..5aa6924e 100644 --- a/package.json +++ b/package.json @@ -54,7 +54,7 @@ "@vue/runtime-dom": "^3.3.4", "@vue/test-utils": "^2.4.1", "cypress": "^12.17.2", - "eslint": "^8.45.0", + "eslint": "^8.46.0", "eslint-plugin-prettier": "^5.0.0", "eslint-plugin-vue": "^9.15.1", "mutationobserver-shim": "^0.3.7", diff --git a/yarn.lock b/yarn.lock index 4976bcc2..5b0e5b7e 100644 --- a/yarn.lock +++ b/yarn.lock @@ -201,15 +201,15 @@ dependencies: eslint-visitor-keys "^3.3.0" -"@eslint-community/regexpp@^4.4.0": - version "4.5.1" - resolved "https://registry.yarnpkg.com/@eslint-community/regexpp/-/regexpp-4.5.1.tgz#cdd35dce4fa1a89a4fd42b1599eb35b3af408884" - integrity sha512-Z5ba73P98O1KUYCCJTUeVpja9RcGoMdncZ6T49FCUl2lN38JtCJ+3WgIDBv0AuY4WChU5PmtJmOCTlN6FZTFKQ== +"@eslint-community/regexpp@^4.4.0", "@eslint-community/regexpp@^4.6.1": + version "4.6.2" + resolved "https://registry.yarnpkg.com/@eslint-community/regexpp/-/regexpp-4.6.2.tgz#1816b5f6948029c5eaacb0703b850ee0cb37d8f8" + integrity sha512-pPTNuaAG3QMH+buKyBIGJs3g/S5y0caxw0ygM3YyE6yJFySwiGGSzA+mM3KJ8QQvzeLh3blwgSonkFjgQdxzMw== -"@eslint/eslintrc@^2.1.0": - version "2.1.0" - resolved "https://registry.yarnpkg.com/@eslint/eslintrc/-/eslintrc-2.1.0.tgz#82256f164cc9e0b59669efc19d57f8092706841d" - integrity sha512-Lj7DECXqIVCqnqjjHMPna4vn6GJcMgul/wuS0je9OZ9gsL0zzDpKPVtcG1HaDVc+9y+qgXneTeUMbCqXJNpH1A== +"@eslint/eslintrc@^2.1.1": + version "2.1.1" + resolved "https://registry.yarnpkg.com/@eslint/eslintrc/-/eslintrc-2.1.1.tgz#18d635e24ad35f7276e8a49d135c7d3ca6a46f93" + integrity sha512-9t7ZA7NGGK8ckelF0PQCfcxIUzs1Md5rrO6U/c+FIQNanea5UZC0wqKXH4vHBccmu4ZJgZ2idtPeW7+Q2npOEA== dependencies: ajv "^6.12.4" debug "^4.3.2" @@ -221,10 +221,10 @@ minimatch "^3.1.2" strip-json-comments "^3.1.1" -"@eslint/js@8.44.0": - version "8.44.0" - resolved "https://registry.yarnpkg.com/@eslint/js/-/js-8.44.0.tgz#961a5903c74139390478bdc808bcde3fc45ab7af" - integrity sha512-Ag+9YM4ocKQx9AarydN0KY2j0ErMHNIocPDrVo8zAE44xLTjEtz81OdR68/cydGtk6m6jDb5Za3r2useMzYmSw== +"@eslint/js@^8.46.0": + version "8.46.0" + resolved "https://registry.yarnpkg.com/@eslint/js/-/js-8.46.0.tgz#3f7802972e8b6fe3f88ed1aabc74ec596c456db6" + integrity sha512-a8TLtmPi8xzPkCbp/OGFUo5yhRkHM2Ko9kOWP4znJr0WAhWyThaw3PnwX4vOTWOAMsV2uRt32PPDcEz63esSaA== "@floating-ui/core@^1.3.1": version "1.3.1" @@ -912,7 +912,7 @@ aggregate-error@^3.0.0: clean-stack "^2.0.0" indent-string "^4.0.0" -ajv@^6.10.0, ajv@^6.12.4: +ajv@^6.12.4: version "6.12.6" resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.12.6.tgz#baf5a62e802b07d977034586f8c3baf5adf26df4" integrity sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g== @@ -1658,40 +1658,40 @@ eslint-scope@^5.1.1: esrecurse "^4.3.0" estraverse "^4.1.1" -eslint-scope@^7.1.1, eslint-scope@^7.2.0: - version "7.2.0" - resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-7.2.0.tgz#f21ebdafda02352f103634b96dd47d9f81ca117b" - integrity sha512-DYj5deGlHBfMt15J7rdtyKNq/Nqlv5KfU4iodrQ019XESsRnwXH9KAE0y3cwtUHDo2ob7CypAnCqefh6vioWRw== +eslint-scope@^7.1.1, eslint-scope@^7.2.2: + version "7.2.2" + resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-7.2.2.tgz#deb4f92563390f32006894af62a22dba1c46423f" + integrity sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg== dependencies: esrecurse "^4.3.0" estraverse "^5.2.0" -eslint-visitor-keys@^3.3.0, eslint-visitor-keys@^3.4.1: - version "3.4.1" - resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-3.4.1.tgz#c22c48f48942d08ca824cc526211ae400478a994" - integrity sha512-pZnmmLwYzf+kWaM/Qgrvpen51upAktaaiI01nsJD/Yr3lMOdNtq0cxkrrg16w64VtisN6okbs7Q8AfGqj4c9fA== +eslint-visitor-keys@^3.3.0, eslint-visitor-keys@^3.4.1, eslint-visitor-keys@^3.4.2: + version "3.4.2" + resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-3.4.2.tgz#8c2095440eca8c933bedcadf16fefa44dbe9ba5f" + integrity sha512-8drBzUEyZ2llkpCA67iYrgEssKDUu68V8ChqqOfFupIaG/LCVPUT+CoGJpT77zJprs4T/W7p07LP7zAIMuweVw== -eslint@^8.45.0: - version "8.45.0" - resolved "https://registry.yarnpkg.com/eslint/-/eslint-8.45.0.tgz#bab660f90d18e1364352c0a6b7c6db8edb458b78" - integrity sha512-pd8KSxiQpdYRfYa9Wufvdoct3ZPQQuVuU5O6scNgMuOMYuxvH0IGaYK0wUFjo4UYYQQCUndlXiMbnxopwvvTiw== +eslint@^8.46.0: + version "8.46.0" + resolved "https://registry.yarnpkg.com/eslint/-/eslint-8.46.0.tgz#a06a0ff6974e53e643acc42d1dcf2e7f797b3552" + integrity sha512-cIO74PvbW0qU8e0mIvk5IV3ToWdCq5FYG6gWPHHkx6gNdjlbAYvtfHmlCMXxjcoVaIdwy/IAt3+mDkZkfvb2Dg== dependencies: "@eslint-community/eslint-utils" "^4.2.0" - "@eslint-community/regexpp" "^4.4.0" - "@eslint/eslintrc" "^2.1.0" - "@eslint/js" "8.44.0" + "@eslint-community/regexpp" "^4.6.1" + "@eslint/eslintrc" "^2.1.1" + "@eslint/js" "^8.46.0" "@humanwhocodes/config-array" "^0.11.10" "@humanwhocodes/module-importer" "^1.0.1" "@nodelib/fs.walk" "^1.2.8" - ajv "^6.10.0" + ajv "^6.12.4" chalk "^4.0.0" cross-spawn "^7.0.2" debug "^4.3.2" doctrine "^3.0.0" escape-string-regexp "^4.0.0" - eslint-scope "^7.2.0" - eslint-visitor-keys "^3.4.1" - espree "^9.6.0" + eslint-scope "^7.2.2" + eslint-visitor-keys "^3.4.2" + espree "^9.6.1" esquery "^1.4.2" esutils "^2.0.2" fast-deep-equal "^3.1.3" @@ -1714,10 +1714,10 @@ eslint@^8.45.0: strip-ansi "^6.0.1" text-table "^0.2.0" -espree@^9.3.1, espree@^9.6.0: - version "9.6.0" - resolved "https://registry.yarnpkg.com/espree/-/espree-9.6.0.tgz#80869754b1c6560f32e3b6929194a3fe07c5b82f" - integrity sha512-1FH/IiruXZ84tpUlm0aCUEwMl2Ho5ilqVh0VvQXw+byAz/4SAciyHLlfmL5WYqsvD38oymdUwBss0LtK8m4s/A== +espree@^9.3.1, espree@^9.6.0, espree@^9.6.1: + version "9.6.1" + resolved "https://registry.yarnpkg.com/espree/-/espree-9.6.1.tgz#a2a17b8e434690a5432f2f8018ce71d331a48c6f" + integrity sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ== dependencies: acorn "^8.9.0" acorn-jsx "^5.3.2" From a82ca1616d0dd292f3e818d8759c84dd5bd86758 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 2 Aug 2023 04:36:03 +0000 Subject: [PATCH 071/207] build(deps-dev): bump sass from 1.64.1 to 1.64.2 Bumps [sass](https://github.com/sass/dart-sass) from 1.64.1 to 1.64.2. - [Release notes](https://github.com/sass/dart-sass/releases) - [Changelog](https://github.com/sass/dart-sass/blob/main/CHANGELOG.md) - [Commits](https://github.com/sass/dart-sass/compare/1.64.1...1.64.2) --- updated-dependencies: - dependency-name: sass dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] --- package.json | 2 +- yarn.lock | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/package.json b/package.json index beb1b27b..14da6dc2 100644 --- a/package.json +++ b/package.json @@ -60,7 +60,7 @@ "mutationobserver-shim": "^0.3.7", "portal-vue": "^3.0.0", "prettier": "^3.0.0", - "sass": "^1.64.1", + "sass": "^1.64.2", "typescript": "~5.1.6", "unplugin-icons": "^0.16.5", "unplugin-vue-components": "^0.25.1", diff --git a/yarn.lock b/yarn.lock index 4976bcc2..e8cad930 100644 --- a/yarn.lock +++ b/yarn.lock @@ -3055,10 +3055,10 @@ safer-buffer@^2.0.2, safer-buffer@^2.1.0, safer-buffer@~2.1.0: resolved "https://registry.yarnpkg.com/safer-buffer/-/safer-buffer-2.1.2.tgz#44fa161b0187b9549dd84bb91802f9bd8385cd6a" integrity sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg== -sass@^1.64.1: - version "1.64.1" - resolved "https://registry.yarnpkg.com/sass/-/sass-1.64.1.tgz#6a46f6d68e0fa5ad90aa59ce025673ddaa8441cf" - integrity sha512-16rRACSOFEE8VN7SCgBu1MpYCyN7urj9At898tyzdXFhC+a+yOX5dXwAR7L8/IdPJ1NB8OYoXmD55DM30B2kEQ== +sass@^1.64.2: + version "1.64.2" + resolved "https://registry.yarnpkg.com/sass/-/sass-1.64.2.tgz#0d9805ad6acf31c59c3acc725fcfb91b7fcc6909" + integrity sha512-TnDlfc+CRnUAgLO9D8cQLFu/GIjJIzJCGkE7o4ekIGQOH7T3GetiRR/PsTWJUHhkzcSPrARkPI+gNWn5alCzDg== dependencies: chokidar ">=3.0.0 <4.0.0" immutable "^4.0.0" From 03732370d7a0ce0258177503ed91521b34825930 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 2 Aug 2023 04:36:12 +0000 Subject: [PATCH 072/207] build(deps): bump bootstrap from 5.3.0 to 5.3.1 Bumps [bootstrap](https://github.com/twbs/bootstrap) from 5.3.0 to 5.3.1. - [Release notes](https://github.com/twbs/bootstrap/releases) - [Commits](https://github.com/twbs/bootstrap/compare/v5.3.0...v5.3.1) --- updated-dependencies: - dependency-name: bootstrap dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] --- package.json | 2 +- yarn.lock | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/package.json b/package.json index beb1b27b..72829f4b 100644 --- a/package.json +++ b/package.json @@ -21,7 +21,7 @@ "@vueuse/core": "^10.2.1", "@vueuse/integrations": "^10.2.1", "axios": "^1.4.0", - "bootstrap": "^5.3.0", + "bootstrap": "^5.3.1", "bootstrap-vue-next": "^0.9.26", "core-js": "^3.31.1", "date-fns": "^2.30.0", diff --git a/yarn.lock b/yarn.lock index 4976bcc2..9e2c0911 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1085,10 +1085,10 @@ bootstrap-vue-next@^0.9.26: "@floating-ui/vue" "^1.0.1" "@vueuse/core" "^10.2.1" -bootstrap@^5.3.0: - version "5.3.0" - resolved "https://registry.yarnpkg.com/bootstrap/-/bootstrap-5.3.0.tgz#0718a7cc29040ee8dbf1bd652b896f3436a87c29" - integrity sha512-UnBV3E3v4STVNQdms6jSGO2CvOkjUMdDAVR2V5N4uCMdaIkaQjbcEAMqRimDHIs4uqBYzDAKCQwCB+97tJgHQw== +bootstrap@^5.3.1: + version "5.3.1" + resolved "https://registry.yarnpkg.com/bootstrap/-/bootstrap-5.3.1.tgz#8ca07040ad15d7f75891d1504cf14c5dedfb1cfe" + integrity sha512-jzwza3Yagduci2x0rr9MeFSORjcHpt0lRZukZPZQJT1Dth5qzV7XcgGqYzi39KGAVYR8QEDVoO0ubFKOxzMG+g== bplist-parser@^0.2.0: version "0.2.0" From b84e2a2a87308b83b35496338e18d22dc0305358 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 2 Aug 2023 04:36:19 +0000 Subject: [PATCH 073/207] build(deps): bump @vueuse/integrations from 10.2.1 to 10.3.0 Bumps [@vueuse/integrations](https://github.com/vueuse/vueuse/tree/HEAD/packages/integrations) from 10.2.1 to 10.3.0. - [Release notes](https://github.com/vueuse/vueuse/releases) - [Commits](https://github.com/vueuse/vueuse/commits/v10.3.0/packages/integrations) --- updated-dependencies: - dependency-name: "@vueuse/integrations" dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --- package.json | 2 +- yarn.lock | 40 ++++++++++++++++++++-------------------- 2 files changed, 21 insertions(+), 21 deletions(-) diff --git a/package.json b/package.json index beb1b27b..2dde7307 100644 --- a/package.json +++ b/package.json @@ -19,7 +19,7 @@ "@popperjs/core": "^2.11.8", "@vuepic/vue-datepicker": "^5.4.0", "@vueuse/core": "^10.2.1", - "@vueuse/integrations": "^10.2.1", + "@vueuse/integrations": "^10.3.0", "axios": "^1.4.0", "bootstrap": "^5.3.0", "bootstrap-vue-next": "^0.9.26", diff --git a/yarn.lock b/yarn.lock index 4976bcc2..0c596c50 100644 --- a/yarn.lock +++ b/yarn.lock @@ -853,34 +853,34 @@ date-fns "^2.30.0" date-fns-tz "^1.3.7" -"@vueuse/core@10.2.1", "@vueuse/core@^10.2.1": - version "10.2.1" - resolved "https://registry.yarnpkg.com/@vueuse/core/-/core-10.2.1.tgz#a62b54cdaf1496138a9f8a7df7f9d644892b421f" - integrity sha512-c441bfMbkAwTNwVRHQ0zdYZNETK//P84rC01aP2Uy/aRFCiie9NE/k9KdIXbno0eDYP5NPUuWv0aA/I4Unr/7w== +"@vueuse/core@10.3.0", "@vueuse/core@^10.2.1": + version "10.3.0" + resolved "https://registry.yarnpkg.com/@vueuse/core/-/core-10.3.0.tgz#b2dab7821ef206811b925fc935163c38056fd82b" + integrity sha512-BEM5yxcFKb5btFjTSAFjTu5jmwoW66fyV9uJIP4wUXXU8aR5Hl44gndaaXp7dC5HSObmgbnR2RN+Un1p68Mf5Q== dependencies: "@types/web-bluetooth" "^0.0.17" - "@vueuse/metadata" "10.2.1" - "@vueuse/shared" "10.2.1" + "@vueuse/metadata" "10.3.0" + "@vueuse/shared" "10.3.0" vue-demi ">=0.14.5" -"@vueuse/integrations@^10.2.1": - version "10.2.1" - resolved "https://registry.yarnpkg.com/@vueuse/integrations/-/integrations-10.2.1.tgz#abc44b35f909f6b5e1a66a2d69a257bb4b087536" - integrity sha512-FDP5lni+z9FjHE9H3xuvwSjoRV9U8jmDvJpmHPCBjUgPGYRynwb60eHWXCFJXLUtb4gSIHy0e+iaEbrKdalCkQ== +"@vueuse/integrations@^10.3.0": + version "10.3.0" + resolved "https://registry.yarnpkg.com/@vueuse/integrations/-/integrations-10.3.0.tgz#765e9505358590f21531998194c6e60a8b23655c" + integrity sha512-Jgiv7oFyIgC6BxmDtiyG/fxyGysIds00YaY7sefwbhCZ2/tjEx1W/1WcsISSJPNI30in28+HC2J4uuU8184ekg== dependencies: - "@vueuse/core" "10.2.1" - "@vueuse/shared" "10.2.1" + "@vueuse/core" "10.3.0" + "@vueuse/shared" "10.3.0" vue-demi ">=0.14.5" -"@vueuse/metadata@10.2.1": - version "10.2.1" - resolved "https://registry.yarnpkg.com/@vueuse/metadata/-/metadata-10.2.1.tgz#0865066def62ed97629c417ec79678d508d22934" - integrity sha512-3Gt68mY/i6bQvFqx7cuGBzrCCQu17OBaGWS5JdwISpMsHnMKKjC2FeB5OAfMcCQ0oINfADP3i9A4PPRo0peHdQ== +"@vueuse/metadata@10.3.0": + version "10.3.0" + resolved "https://registry.yarnpkg.com/@vueuse/metadata/-/metadata-10.3.0.tgz#14fe6cc909573785f73a56e4d9351edf3830b796" + integrity sha512-Ema3YhNOa4swDsV0V7CEY5JXvK19JI/o1szFO1iWxdFg3vhdFtCtSTP26PCvbUpnUtNHBY2wx5y3WDXND5Pvnw== -"@vueuse/shared@10.2.1": - version "10.2.1" - resolved "https://registry.yarnpkg.com/@vueuse/shared/-/shared-10.2.1.tgz#0fd0a5dd014b7713b7fe03347b30fad69bb15b30" - integrity sha512-QWHq2bSuGptkcxx4f4M/fBYC3Y8d3M2UYyLsyzoPgEoVzJURQ0oJeWXu79OiLlBb8gTKkqe4mO85T/sf39mmiw== +"@vueuse/shared@10.3.0": + version "10.3.0" + resolved "https://registry.yarnpkg.com/@vueuse/shared/-/shared-10.3.0.tgz#ce6b4b6860e14aaa293025dcf0cbe1036a25869f" + integrity sha512-kGqCTEuFPMK4+fNWy6dUOiYmxGcUbtznMwBZLC1PubidF4VZY05B+Oht7Jh7/6x4VOWGpvu3R37WHi81cKpiqg== dependencies: vue-demi ">=0.14.5" From 3827e8c9efc10b5bdfd872364d6525453b411a6b Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 2 Aug 2023 04:48:04 +0000 Subject: [PATCH 074/207] build(deps-dev): bump vitest from 0.33.0 to 0.34.1 Bumps [vitest](https://github.com/vitest-dev/vitest/tree/HEAD/packages/vitest) from 0.33.0 to 0.34.1. - [Release notes](https://github.com/vitest-dev/vitest/releases) - [Commits](https://github.com/vitest-dev/vitest/commits/v0.34.1/packages/vitest) --- updated-dependencies: - dependency-name: vitest dependency-type: direct:development update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --- package.json | 2 +- yarn.lock | 84 ++++++++++++++++++++++++++-------------------------- 2 files changed, 43 insertions(+), 43 deletions(-) diff --git a/package.json b/package.json index b6053791..7a850797 100644 --- a/package.json +++ b/package.json @@ -65,7 +65,7 @@ "unplugin-icons": "^0.16.5", "unplugin-vue-components": "^0.25.1", "vite": "^4.4.7", - "vitest": "^0.33.0", + "vitest": "^0.34.1", "vue-tsc": "^1.8.6" } } diff --git a/yarn.lock b/yarn.lock index a0f3fc6f..b53bfbbd 100644 --- a/yarn.lock +++ b/yarn.lock @@ -639,44 +639,44 @@ resolved "https://registry.yarnpkg.com/@vitejs/plugin-vue/-/plugin-vue-4.2.3.tgz#ee0b6dfcc62fe65364e6395bf38fa2ba10bb44b6" integrity sha512-R6JDUfiZbJA9cMiguQ7jxALsgiprjBeHL5ikpXfJCH62pPHtI+JdJ5xWj6Ev73yXSlYl86+blXn1kZHQ7uElxw== -"@vitest/expect@0.33.0": - version "0.33.0" - resolved "https://registry.yarnpkg.com/@vitest/expect/-/expect-0.33.0.tgz#f48652591f3573ad6c2db828ad358d5c078845d3" - integrity sha512-sVNf+Gla3mhTCxNJx+wJLDPp/WcstOe0Ksqz4Vec51MmgMth/ia0MGFEkIZmVGeTL5HtjYR4Wl/ZxBxBXZJTzQ== +"@vitest/expect@0.34.1": + version "0.34.1" + resolved "https://registry.yarnpkg.com/@vitest/expect/-/expect-0.34.1.tgz#2ba6cb96695f4b4388c6d955423a81afc79b8da0" + integrity sha512-q2CD8+XIsQ+tHwypnoCk8Mnv5e6afLFvinVGCq3/BOT4kQdVQmY6rRfyKkwcg635lbliLPqbunXZr+L1ssUWiQ== dependencies: - "@vitest/spy" "0.33.0" - "@vitest/utils" "0.33.0" + "@vitest/spy" "0.34.1" + "@vitest/utils" "0.34.1" chai "^4.3.7" -"@vitest/runner@0.33.0": - version "0.33.0" - resolved "https://registry.yarnpkg.com/@vitest/runner/-/runner-0.33.0.tgz#0b1a4d04ff8bc5cdad73920eac019d99550edf9d" - integrity sha512-UPfACnmCB6HKRHTlcgCoBh6ppl6fDn+J/xR8dTufWiKt/74Y9bHci5CKB8tESSV82zKYtkBJo9whU3mNvfaisg== +"@vitest/runner@0.34.1": + version "0.34.1" + resolved "https://registry.yarnpkg.com/@vitest/runner/-/runner-0.34.1.tgz#23c21ba1db8bff610988c72744db590d0fb6c4ba" + integrity sha512-YfQMpYzDsYB7yqgmlxZ06NI4LurHWfrH7Wy3Pvf/z/vwUSgq1zLAb1lWcItCzQG+NVox+VvzlKQrYEXb47645g== dependencies: - "@vitest/utils" "0.33.0" + "@vitest/utils" "0.34.1" p-limit "^4.0.0" pathe "^1.1.1" -"@vitest/snapshot@0.33.0": - version "0.33.0" - resolved "https://registry.yarnpkg.com/@vitest/snapshot/-/snapshot-0.33.0.tgz#4400a90c48907808122b573053a2112a832b3698" - integrity sha512-tJjrl//qAHbyHajpFvr8Wsk8DIOODEebTu7pgBrP07iOepR5jYkLFiqLq2Ltxv+r0uptUb4izv1J8XBOwKkVYA== +"@vitest/snapshot@0.34.1": + version "0.34.1" + resolved "https://registry.yarnpkg.com/@vitest/snapshot/-/snapshot-0.34.1.tgz#814c65f8e714eaf255f47838541004b2a2ba28e6" + integrity sha512-0O9LfLU0114OqdF8lENlrLsnn024Tb1CsS9UwG0YMWY2oGTQfPtkW+B/7ieyv0X9R2Oijhi3caB1xgGgEgclSQ== dependencies: magic-string "^0.30.1" pathe "^1.1.1" pretty-format "^29.5.0" -"@vitest/spy@0.33.0": - version "0.33.0" - resolved "https://registry.yarnpkg.com/@vitest/spy/-/spy-0.33.0.tgz#366074d3cf9cf1ed8aeaa76e50e78c799fb242eb" - integrity sha512-Kv+yZ4hnH1WdiAkPUQTpRxW8kGtH8VRTnus7ZTGovFYM1ZezJpvGtb9nPIjPnptHbsyIAxYZsEpVPYgtpjGnrg== +"@vitest/spy@0.34.1": + version "0.34.1" + resolved "https://registry.yarnpkg.com/@vitest/spy/-/spy-0.34.1.tgz#2f77234a3d554c5dea664943f2caaab92d304f3c" + integrity sha512-UT4WcI3EAPUNO8n6y9QoEqynGGEPmmRxC+cLzneFFXpmacivjHZsNbiKD88KUScv5DCHVDgdBsLD7O7s1enFcQ== dependencies: tinyspy "^2.1.1" -"@vitest/utils@0.33.0": - version "0.33.0" - resolved "https://registry.yarnpkg.com/@vitest/utils/-/utils-0.33.0.tgz#6b9820cb8f128d649da6f78ecaa9b73d6222b277" - integrity sha512-pF1w22ic965sv+EN6uoePkAOTkAPWM03Ri/jXNyMIKBb/XHLDPfhLvf/Fa9g0YECevAIz56oVYXhodLvLQ/awA== +"@vitest/utils@0.34.1": + version "0.34.1" + resolved "https://registry.yarnpkg.com/@vitest/utils/-/utils-0.34.1.tgz#e5545c6618775fb9a2dae2a80d94fc2f35222233" + integrity sha512-/ql9dsFi4iuEbiNcjNHQWXBum7aL8pyhxvfnD9gNtbjR9fUKAjxhj4AA3yfLXg6gJpMGGecvtF8Au2G9y3q47Q== dependencies: diff-sequences "^29.4.3" loupe "^2.3.6" @@ -3245,10 +3245,10 @@ tinybench@^2.5.0: resolved "https://registry.yarnpkg.com/tinybench/-/tinybench-2.5.0.tgz#4711c99bbf6f3e986f67eb722fed9cddb3a68ba5" integrity sha512-kRwSG8Zx4tjF9ZiyH4bhaebu+EDz1BOx9hOigYHlUW4xxI/wKIUQUqo018UlU4ar6ATPBsaMrdbKZ+tmPdohFA== -tinypool@^0.6.0: - version "0.6.0" - resolved "https://registry.yarnpkg.com/tinypool/-/tinypool-0.6.0.tgz#c3640b851940abe2168497bb6e43b49fafb3ba7b" - integrity sha512-FdswUUo5SxRizcBc6b1GSuLpLjisa8N8qMyYoP3rl+bym+QauhtJP5bvZY1ytt8krKGmMLYIRl36HBZfeAoqhQ== +tinypool@^0.7.0: + version "0.7.0" + resolved "https://registry.yarnpkg.com/tinypool/-/tinypool-0.7.0.tgz#88053cc99b4a594382af23190c609d93fddf8021" + integrity sha512-zSYNUlYSMhJ6Zdou4cJwo/p7w5nmAH17GRfU/ui3ctvjXFErXXkruT4MWW6poDeXgCaIBlGLrfU6TbTXxyGMww== tinyspy@^2.1.1: version "2.1.1" @@ -3423,10 +3423,10 @@ verror@1.10.0: core-util-is "1.0.2" extsprintf "^1.2.0" -vite-node@0.33.0: - version "0.33.0" - resolved "https://registry.yarnpkg.com/vite-node/-/vite-node-0.33.0.tgz#c6a3a527e0b8090da7436241bc875760ae0eef28" - integrity sha512-19FpHYbwWWxDr73ruNahC+vtEdza52kA90Qb3La98yZ0xULqV8A5JLNPUff0f5zID4984tW7l3DH2przTJUZSw== +vite-node@0.34.1: + version "0.34.1" + resolved "https://registry.yarnpkg.com/vite-node/-/vite-node-0.34.1.tgz#144900ca4bd54cc419c501d671350bcbc07eb1ee" + integrity sha512-odAZAL9xFMuAg8aWd7nSPT+hU8u2r9gU3LRm9QKjxBEF2rRdWpMuqkrkjvyVQEdNFiBctqr2Gg4uJYizm5Le6w== dependencies: cac "^6.7.14" debug "^4.3.4" @@ -3446,19 +3446,19 @@ vite-node@0.33.0: optionalDependencies: fsevents "~2.3.2" -vitest@^0.33.0: - version "0.33.0" - resolved "https://registry.yarnpkg.com/vitest/-/vitest-0.33.0.tgz#e2be6153aec1d30e3460ac6d64265bf72da2551c" - integrity sha512-1CxaugJ50xskkQ0e969R/hW47za4YXDUfWJDxip1hwbnhUjYolpfUn2AMOulqG/Dtd9WYAtkHmM/m3yKVrEejQ== +vitest@^0.34.1: + version "0.34.1" + resolved "https://registry.yarnpkg.com/vitest/-/vitest-0.34.1.tgz#3ad7f845e7a9fb0d72ab703cae832a54b8469e1e" + integrity sha512-G1PzuBEq9A75XSU88yO5G4vPT20UovbC/2osB2KEuV/FisSIIsw7m5y2xMdB7RsAGHAfg2lPmp2qKr3KWliVlQ== dependencies: "@types/chai" "^4.3.5" "@types/chai-subset" "^1.3.3" "@types/node" "*" - "@vitest/expect" "0.33.0" - "@vitest/runner" "0.33.0" - "@vitest/snapshot" "0.33.0" - "@vitest/spy" "0.33.0" - "@vitest/utils" "0.33.0" + "@vitest/expect" "0.34.1" + "@vitest/runner" "0.34.1" + "@vitest/snapshot" "0.34.1" + "@vitest/spy" "0.34.1" + "@vitest/utils" "0.34.1" acorn "^8.9.0" acorn-walk "^8.2.0" cac "^6.7.14" @@ -3471,9 +3471,9 @@ vitest@^0.33.0: std-env "^3.3.3" strip-literal "^1.0.1" tinybench "^2.5.0" - tinypool "^0.6.0" + tinypool "^0.7.0" vite "^3.0.0 || ^4.0.0" - vite-node "0.33.0" + vite-node "0.34.1" why-is-node-running "^2.2.2" vue-class-component@^7.2.5: From 3629c23dd41d16c26fd3a1f1fdbe2ce79f8c77b6 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 2 Aug 2023 04:48:18 +0000 Subject: [PATCH 075/207] build(deps-dev): bump cypress from 12.17.2 to 12.17.3 Bumps [cypress](https://github.com/cypress-io/cypress) from 12.17.2 to 12.17.3. - [Release notes](https://github.com/cypress-io/cypress/releases) - [Changelog](https://github.com/cypress-io/cypress/blob/develop/CHANGELOG.md) - [Commits](https://github.com/cypress-io/cypress/compare/v12.17.2...v12.17.3) --- updated-dependencies: - dependency-name: cypress dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] --- package.json | 2 +- yarn.lock | 18 +++++++++--------- 2 files changed, 10 insertions(+), 10 deletions(-) diff --git a/package.json b/package.json index 607eefe6..1ae3a527 100644 --- a/package.json +++ b/package.json @@ -53,7 +53,7 @@ "@vue/eslint-config-typescript": "^11.0.3", "@vue/runtime-dom": "^3.3.4", "@vue/test-utils": "^2.4.1", - "cypress": "^12.17.2", + "cypress": "^12.17.3", "eslint": "^8.46.0", "eslint-plugin-prettier": "^5.0.0", "eslint-plugin-vue": "^9.15.1", diff --git a/yarn.lock b/yarn.lock index 70374bab..ccda1601 100644 --- a/yarn.lock +++ b/yarn.lock @@ -513,10 +513,10 @@ resolved "https://registry.yarnpkg.com/@types/node/-/node-20.4.0.tgz#01d637d1891e419bc85763b46f42809cd2d5addb" integrity sha512-jfT7iTf/4kOQ9S7CHV9BIyRaQqHu67mOjsIQBC3BKZvzvUB6zLxEwJ6sBE3ozcvP8kF6Uk5PXN0Q+c0dfhGX0g== -"@types/node@^14.14.31": - version "14.18.53" - resolved "https://registry.yarnpkg.com/@types/node/-/node-14.18.53.tgz#42855629b8773535ab868238718745bf56c56219" - integrity sha512-soGmOpVBUq+gaBMwom1M+krC/NNbWlosh4AtGA03SyWNDiqSKtwp7OulO1M6+mg8YkHMvJ/y0AkCeO8d1hNb7A== +"@types/node@^16.18.39": + version "16.18.39" + resolved "https://registry.yarnpkg.com/@types/node/-/node-16.18.39.tgz#aa39a1a87a40ef6098ee69689a1acb0c1b034832" + integrity sha512-8q9ZexmdYYyc5/cfujaXb4YOucpQxAV4RMG0himLyDUOEr8Mr79VrqsFI+cQ2M2h89YIuy95lbxuYjxT4Hk4kQ== "@types/semver@^7.3.12": version "7.5.0" @@ -1344,14 +1344,14 @@ csstype@^3.1.1: resolved "https://registry.yarnpkg.com/csstype/-/csstype-3.1.2.tgz#1d4bf9d572f11c14031f0436e1c10bc1f571f50b" integrity sha512-I7K1Uu0MBPzaFKg4nI5Q7Vs2t+3gWWW648spaF+Rg7pI9ds18Ugn+lvg4SHczUdKlHI5LWBXyqfS8+DufyBsgQ== -cypress@^12.17.2: - version "12.17.2" - resolved "https://registry.yarnpkg.com/cypress/-/cypress-12.17.2.tgz#040ac55de1e811f6e037d231a2869d5ab8c29c85" - integrity sha512-hxWAaWbqQBzzMuadSGSuQg5PDvIGOovm6xm0hIfpCVcORsCAj/gF2p0EvfnJ4f+jK2PCiDgP6D2eeE9/FK4Mjg== +cypress@^12.17.3: + version "12.17.3" + resolved "https://registry.yarnpkg.com/cypress/-/cypress-12.17.3.tgz#1e2b19037236fc60e4a4b3a14f0846be17a1fc0e" + integrity sha512-/R4+xdIDjUSLYkiQfwJd630S81KIgicmQOLXotFxVXkl+eTeVO+3bHXxdi5KBh/OgC33HWN33kHX+0tQR/ZWpg== dependencies: "@cypress/request" "^2.88.11" "@cypress/xvfb" "^1.2.4" - "@types/node" "^14.14.31" + "@types/node" "^16.18.39" "@types/sinonjs__fake-timers" "8.1.1" "@types/sizzle" "^2.3.2" arch "^2.2.0" From d1d27ce9edbf5b7dbd10a5ebc847e6e63cadfe15 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 2 Aug 2023 04:49:02 +0000 Subject: [PATCH 076/207] build(deps): bump core-js from 3.31.1 to 3.32.0 Bumps [core-js](https://github.com/zloirock/core-js/tree/HEAD/packages/core-js) from 3.31.1 to 3.32.0. - [Release notes](https://github.com/zloirock/core-js/releases) - [Changelog](https://github.com/zloirock/core-js/blob/master/CHANGELOG.md) - [Commits](https://github.com/zloirock/core-js/commits/v3.32.0/packages/core-js) --- updated-dependencies: - dependency-name: core-js dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --- package.json | 2 +- yarn.lock | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/package.json b/package.json index 607eefe6..6bf16f0a 100644 --- a/package.json +++ b/package.json @@ -23,7 +23,7 @@ "axios": "^1.4.0", "bootstrap": "^5.3.1", "bootstrap-vue-next": "^0.9.26", - "core-js": "^3.31.1", + "core-js": "^3.32.0", "date-fns": "^2.30.0", "date-fns-tz": "^2.0.0", "echarts": "^5.4.3", diff --git a/yarn.lock b/yarn.lock index 70374bab..e5a474b0 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1299,10 +1299,10 @@ config-chain@^1.1.13: ini "^1.3.4" proto-list "~1.2.1" -core-js@^3.31.1: - version "3.31.1" - resolved "https://registry.yarnpkg.com/core-js/-/core-js-3.31.1.tgz#f2b0eea9be9da0def2c5fece71064a7e5d687653" - integrity sha512-2sKLtfq1eFST7l7v62zaqXacPc7uG8ZAya8ogijLhTtaKNcpzpB4TMoTw2Si+8GYKRwFPMMtUT0263QFWFfqyQ== +core-js@^3.32.0: + version "3.32.0" + resolved "https://registry.yarnpkg.com/core-js/-/core-js-3.32.0.tgz#7643d353d899747ab1f8b03d2803b0312a0fb3b6" + integrity sha512-rd4rYZNlF3WuoYuRIDEmbR/ga9CeuWX9U05umAvgrrZoHY4Z++cp/xwPQMvUpBB4Ag6J8KfD80G0zwCyaSxDww== core-util-is@1.0.2: version "1.0.2" From f0f1d25c0ebf6a5d4371feeca749c2cf51550d93 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 2 Aug 2023 05:00:05 +0000 Subject: [PATCH 077/207] build(deps-dev): bump vite from 4.4.7 to 4.4.8 Bumps [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite) from 4.4.7 to 4.4.8. - [Release notes](https://github.com/vitejs/vite/releases) - [Changelog](https://github.com/vitejs/vite/blob/main/packages/vite/CHANGELOG.md) - [Commits](https://github.com/vitejs/vite/commits/v4.4.8/packages/vite) --- updated-dependencies: - dependency-name: vite dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] --- package.json | 2 +- yarn.lock | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/package.json b/package.json index 567d4b9d..51b7c47e 100644 --- a/package.json +++ b/package.json @@ -64,7 +64,7 @@ "typescript": "~5.1.6", "unplugin-icons": "^0.16.5", "unplugin-vue-components": "^0.25.1", - "vite": "^4.4.7", + "vite": "^4.4.8", "vitest": "^0.34.1", "vue-tsc": "^1.8.6" } diff --git a/yarn.lock b/yarn.lock index fa310a48..88a74760 100644 --- a/yarn.lock +++ b/yarn.lock @@ -3435,10 +3435,10 @@ vite-node@0.34.1: picocolors "^1.0.0" vite "^3.0.0 || ^4.0.0" -"vite@^3.0.0 || ^4.0.0", vite@^4.4.7: - version "4.4.7" - resolved "https://registry.yarnpkg.com/vite/-/vite-4.4.7.tgz#71b8a37abaf8d50561aca084dbb77fa342824154" - integrity sha512-6pYf9QJ1mHylfVh39HpuSfMPojPSKVxZvnclX1K1FyZ1PXDOcLBibdq5t1qxJSnL63ca8Wf4zts6mD8u8oc9Fw== +"vite@^3.0.0 || ^4.0.0", vite@^4.4.8: + version "4.4.8" + resolved "https://registry.yarnpkg.com/vite/-/vite-4.4.8.tgz#31e4a438f8748695c68bd57ffd262ba93540fdf7" + integrity sha512-LONawOUUjxQridNWGQlNizfKH89qPigK36XhMI7COMGztz8KNY0JHim7/xDd71CZwGT4HtSRgI7Hy+RlhG0Gvg== dependencies: esbuild "^0.18.10" postcss "^8.4.26" From 63b19ecd162dcc9911454fda59aa3984ae8c6085 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 2 Aug 2023 05:06:13 +0000 Subject: [PATCH 078/207] build(deps-dev): bump eslint-plugin-vue from 9.15.1 to 9.16.1 Bumps [eslint-plugin-vue](https://github.com/vuejs/eslint-plugin-vue) from 9.15.1 to 9.16.1. - [Release notes](https://github.com/vuejs/eslint-plugin-vue/releases) - [Commits](https://github.com/vuejs/eslint-plugin-vue/compare/v9.15.1...v9.16.1) --- updated-dependencies: - dependency-name: eslint-plugin-vue dependency-type: direct:development update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --- package.json | 2 +- yarn.lock | 28 ++++++++++++++-------------- 2 files changed, 15 insertions(+), 15 deletions(-) diff --git a/package.json b/package.json index b3a92059..cfe049a6 100644 --- a/package.json +++ b/package.json @@ -56,7 +56,7 @@ "cypress": "^12.17.3", "eslint": "^8.46.0", "eslint-plugin-prettier": "^5.0.0", - "eslint-plugin-vue": "^9.15.1", + "eslint-plugin-vue": "^9.16.1", "mutationobserver-shim": "^0.3.7", "portal-vue": "^3.0.0", "prettier": "^3.0.0", diff --git a/yarn.lock b/yarn.lock index 47870f72..3b7e69d7 100644 --- a/yarn.lock +++ b/yarn.lock @@ -194,7 +194,7 @@ resolved "https://registry.yarnpkg.com/@esbuild/win32-x64/-/win32-x64-0.18.11.tgz#6526c7e1b40d5b9f0a222c6b767c22f6fb97aa57" integrity sha512-rQI4cjLHd2hGsM1LqgDI7oOCYbQ6IBOVsX9ejuRMSze0GqXUG2ekwiKkiBU1pRGSeCqFFHxTrcEydB2Hyoz9CA== -"@eslint-community/eslint-utils@^4.2.0", "@eslint-community/eslint-utils@^4.3.0": +"@eslint-community/eslint-utils@^4.2.0", "@eslint-community/eslint-utils@^4.4.0": version "4.4.0" resolved "https://registry.yarnpkg.com/@eslint-community/eslint-utils/-/eslint-utils-4.4.0.tgz#a23514e8fb9af1269d5f7788aa556798d61c6b59" integrity sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA== @@ -1637,17 +1637,17 @@ eslint-plugin-prettier@^5.0.0: prettier-linter-helpers "^1.0.0" synckit "^0.8.5" -eslint-plugin-vue@^9.15.1: - version "9.15.1" - resolved "https://registry.yarnpkg.com/eslint-plugin-vue/-/eslint-plugin-vue-9.15.1.tgz#3c09e0edab444b5d4d9239a12a645a0e2e2ea5be" - integrity sha512-CJE/oZOslvmAR9hf8SClTdQ9JLweghT6JCBQNrT2Iel1uVw0W0OLJxzvPd6CxmABKCvLrtyDnqGV37O7KQv6+A== +eslint-plugin-vue@^9.16.1: + version "9.16.1" + resolved "https://registry.yarnpkg.com/eslint-plugin-vue/-/eslint-plugin-vue-9.16.1.tgz#3508d9279d797b40889db76da2fd26524e9144e6" + integrity sha512-2FtnTqazA6aYONfDuOZTk0QzwhAwi7Z4+uJ7+GHeGxcKapjqWlDsRWDenvyG/utyOfAS5bVRmAG3cEWiYEz2bA== dependencies: - "@eslint-community/eslint-utils" "^4.3.0" + "@eslint-community/eslint-utils" "^4.4.0" natural-compare "^1.4.0" - nth-check "^2.0.1" - postcss-selector-parser "^6.0.9" - semver "^7.3.5" - vue-eslint-parser "^9.3.0" + nth-check "^2.1.1" + postcss-selector-parser "^6.0.13" + semver "^7.5.4" + vue-eslint-parser "^9.3.1" xml-name-validator "^4.0.0" eslint-scope@^5.1.1: @@ -2657,7 +2657,7 @@ npm-run-path@^5.1.0: dependencies: path-key "^4.0.0" -nth-check@^2.0.1: +nth-check@^2.0.1, nth-check@^2.1.1: version "2.1.1" resolved "https://registry.yarnpkg.com/nth-check/-/nth-check-2.1.1.tgz#c9eab428effce36cd6b92c924bdb000ef1f1ed1d" integrity sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w== @@ -2856,7 +2856,7 @@ portal-vue@^3.0.0: resolved "https://registry.yarnpkg.com/portal-vue/-/portal-vue-3.0.0.tgz#0f60fe3540e479d18f998d32d415c50c8e17c9a9" integrity sha512-9eprMxNURLx6ijbcgkWjYNcTWJYu/H8QF8nyAeBzOmk9lKCea01BW1hYBeLkgz+AestmPOvznAEOFmNuO4Adjw== -postcss-selector-parser@^6.0.9: +postcss-selector-parser@^6.0.13: version "6.0.13" resolved "https://registry.yarnpkg.com/postcss-selector-parser/-/postcss-selector-parser-6.0.13.tgz#d05d8d76b1e8e173257ef9d60b706a8e5e99bf1b" integrity sha512-EaV1Gl4mUEV4ddhDnv/xtj7sxwrwxdetHdWUGnT4VJQf+4d05v6lHYZr8N573k5Z0BViss7BDhfWtKS3+sfAqQ== @@ -3064,7 +3064,7 @@ sass@^1.64.2: immutable "^4.0.0" source-map-js ">=0.6.2 <2.0.0" -semver@^7.3.2, semver@^7.3.5, semver@^7.3.6, semver@^7.3.7, semver@^7.3.8, semver@^7.5.3: +semver@^7.3.2, semver@^7.3.6, semver@^7.3.7, semver@^7.3.8, semver@^7.5.3, semver@^7.5.4: version "7.5.4" resolved "https://registry.yarnpkg.com/semver/-/semver-7.5.4.tgz#483986ec4ed38e1c6c48c34894a9182dbff68a6e" integrity sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA== @@ -3504,7 +3504,7 @@ vue-echarts@^6.6.0: resize-detector "^0.3.0" vue-demi "^0.13.2" -vue-eslint-parser@^9.1.1, vue-eslint-parser@^9.3.0: +vue-eslint-parser@^9.1.1, vue-eslint-parser@^9.3.1: version "9.3.1" resolved "https://registry.yarnpkg.com/vue-eslint-parser/-/vue-eslint-parser-9.3.1.tgz#429955e041ae5371df5f9e37ebc29ba046496182" integrity sha512-Clr85iD2XFZ3lJ52/ppmUDG/spxQu6+MAeHXjjyI4I1NUYZ9xmenQp4N0oaHJhrA8OOxltCVxMRfANGa70vU0g== From 54de87175747ecef573f079ceef421984c1f014e Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 2 Aug 2023 05:06:21 +0000 Subject: [PATCH 079/207] build(deps-dev): bump vue-tsc from 1.8.6 to 1.8.8 Bumps [vue-tsc](https://github.com/vuejs/language-tools/tree/HEAD/packages/vue-tsc) from 1.8.6 to 1.8.8. - [Release notes](https://github.com/vuejs/language-tools/releases) - [Changelog](https://github.com/vuejs/language-tools/blob/master/CHANGELOG.md) - [Commits](https://github.com/vuejs/language-tools/commits/v1.8.8/packages/vue-tsc) --- updated-dependencies: - dependency-name: vue-tsc dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] --- package.json | 2 +- yarn.lock | 64 ++++++++++++++++++++++++++-------------------------- 2 files changed, 33 insertions(+), 33 deletions(-) diff --git a/package.json b/package.json index b3a92059..932b735a 100644 --- a/package.json +++ b/package.json @@ -66,6 +66,6 @@ "unplugin-vue-components": "^0.25.1", "vite": "^4.4.8", "vitest": "^0.34.1", - "vue-tsc": "^1.8.6" + "vue-tsc": "^1.8.8" } } diff --git a/yarn.lock b/yarn.lock index 47870f72..6c1c617e 100644 --- a/yarn.lock +++ b/yarn.lock @@ -682,26 +682,26 @@ loupe "^2.3.6" pretty-format "^29.5.0" -"@volar/language-core@1.9.0", "@volar/language-core@~1.9.0": - version "1.9.0" - resolved "https://registry.yarnpkg.com/@volar/language-core/-/language-core-1.9.0.tgz#60cc7e6dc0533aa4cdbb3b850e754f6edd79097f" - integrity sha512-+PTRrGanAD2PxqMty0ZC46xhgW5BWzb67RLHhZyB3Im4+eMXsKlYjFUt7Z8ZCwTWQQOnj8NQ6gSgUEoOTwAHrQ== +"@volar/language-core@1.10.0", "@volar/language-core@~1.10.0": + version "1.10.0" + resolved "https://registry.yarnpkg.com/@volar/language-core/-/language-core-1.10.0.tgz#fb6b3ad22e75c53a1ae4d644c4a788b47d411b9d" + integrity sha512-ddyWwSYqcbEZNFHm+Z3NZd6M7Ihjcwl/9B5cZd8kECdimVXUFdFi60XHWD27nrWtUQIsUYIG7Ca1WBwV2u2LSQ== dependencies: - "@volar/source-map" "1.9.0" + "@volar/source-map" "1.10.0" -"@volar/source-map@1.9.0", "@volar/source-map@~1.9.0": - version "1.9.0" - resolved "https://registry.yarnpkg.com/@volar/source-map/-/source-map-1.9.0.tgz#0ed0e3b1487cb2c07d24ccde36efd56a1c18048a" - integrity sha512-TQWLY8ozUOHBHTMC2pHZsNbtM25Q9QCEwAL8JFR/gmR9Yv0d9qup/gQdd5sDI7RmoPYKD+gqjLrbM4Ib41QSJQ== +"@volar/source-map@1.10.0", "@volar/source-map@~1.10.0": + version "1.10.0" + resolved "https://registry.yarnpkg.com/@volar/source-map/-/source-map-1.10.0.tgz#2413eb190ce69fc1a382f58524a3f82306668024" + integrity sha512-/ibWdcOzDGiq/GM1JU2eX8fH1bvAhl66hfe8yEgLEzg9txgr6qb5sQ/DEz5PcDL75tF5H5sCRRwn8Eu8ezi9mw== dependencies: muggle-string "^0.3.1" -"@volar/typescript@~1.9.0": - version "1.9.0" - resolved "https://registry.yarnpkg.com/@volar/typescript/-/typescript-1.9.0.tgz#26eecf082ffca4bb7afc26a19a071d336d13fa95" - integrity sha512-B8X4/H6V93uD7zu5VCw05eB0Ukcc39SFKsZoeylkAk2sJ50oaJLpajnQ8Ov4c+FnVQ6iPA6Xy1qdWoWJjh6xEg== +"@volar/typescript@~1.10.0": + version "1.10.0" + resolved "https://registry.yarnpkg.com/@volar/typescript/-/typescript-1.10.0.tgz#3b16cf7c4c1802eac023ba4e57fe52bdb6d3016f" + integrity sha512-OtqGtFbUKYC0pLNIk3mHQp5xWnvL1CJIUc9VE39VdZ/oqpoBh5jKfb9uJ45Y4/oP/WYTrif/Uxl1k8VTPz66Gg== dependencies: - "@volar/language-core" "1.9.0" + "@volar/language-core" "1.10.0" "@vue/compiler-core@3.3.4": version "3.3.4" @@ -767,13 +767,13 @@ "@typescript-eslint/parser" "^5.59.1" vue-eslint-parser "^9.1.1" -"@vue/language-core@1.8.6": - version "1.8.6" - resolved "https://registry.yarnpkg.com/@vue/language-core/-/language-core-1.8.6.tgz#afe2af57aa601770f4a5b263757e94e891954755" - integrity sha512-PyYDMArbR7hnhqw9OEupr0s4ut0/ZfITp7WEjigF58cd2R0lRLNM1HPvzFMuULpy3ImBEOZI11KRIDirqOe+tQ== +"@vue/language-core@1.8.8": + version "1.8.8" + resolved "https://registry.yarnpkg.com/@vue/language-core/-/language-core-1.8.8.tgz#5a8aa8363f4dfacdfcd7808a9926744d7c310ae6" + integrity sha512-i4KMTuPazf48yMdYoebTkgSOJdFraE4pQf0B+FTOFkbB+6hAfjrSou/UmYWRsWyZV6r4Rc6DDZdI39CJwL0rWw== dependencies: - "@volar/language-core" "~1.9.0" - "@volar/source-map" "~1.9.0" + "@volar/language-core" "~1.10.0" + "@volar/source-map" "~1.10.0" "@vue/compiler-dom" "^3.3.0" "@vue/reactivity" "^3.3.0" "@vue/shared" "^3.3.0" @@ -837,13 +837,13 @@ js-beautify "1.14.9" vue-component-type-helpers "1.8.4" -"@vue/typescript@1.8.6": - version "1.8.6" - resolved "https://registry.yarnpkg.com/@vue/typescript/-/typescript-1.8.6.tgz#ba116a7b52c974ac6f08d5ad10799acee4fbf073" - integrity sha512-sDQ5tltrSVS3lAkE3JtMRGJo91CLIxcWPy7yms/DT+ssxXpwxbVRD5Gok68HenEZBA4Klq7nW99sG/nTRnpPuQ== +"@vue/typescript@1.8.8": + version "1.8.8" + resolved "https://registry.yarnpkg.com/@vue/typescript/-/typescript-1.8.8.tgz#8efb375d448862134492a044f4e96afada547500" + integrity sha512-jUnmMB6egu5wl342eaUH236v8tdcEPXXkPgj+eI/F6JwW/lb+yAU6U07ZbQ3MVabZRlupIlPESB7ajgAGixhow== dependencies: - "@volar/typescript" "~1.9.0" - "@vue/language-core" "1.8.6" + "@volar/typescript" "~1.10.0" + "@vue/language-core" "1.8.8" "@vuepic/vue-datepicker@^5.4.0": version "5.4.0" @@ -3537,13 +3537,13 @@ vue-template-compiler@^2.7.14: de-indent "^1.0.2" he "^1.2.0" -vue-tsc@^1.8.6: - version "1.8.6" - resolved "https://registry.yarnpkg.com/vue-tsc/-/vue-tsc-1.8.6.tgz#c25ffc3fa6b8f6d8abe394d580ab65abe3d009c7" - integrity sha512-8ffD4NGfwyATjw/s40Lw2EgB7L2/PAqnGlJBaVQLgblr3SU4EYdhJ67TNXXuDD8NMbDAFSM24V8i3ZIJgTs32Q== +vue-tsc@^1.8.8: + version "1.8.8" + resolved "https://registry.yarnpkg.com/vue-tsc/-/vue-tsc-1.8.8.tgz#67317693eb2ef6747e89e6d834eeb6d2deb8871d" + integrity sha512-bSydNFQsF7AMvwWsRXD7cBIXaNs/KSjvzWLymq/UtKE36697sboX4EccSHFVxvgdBlI1frYPc/VMKJNB7DFeDQ== dependencies: - "@vue/language-core" "1.8.6" - "@vue/typescript" "1.8.6" + "@vue/language-core" "1.8.8" + "@vue/typescript" "1.8.8" semver "^7.3.8" vue3-drr-grid-layout@^1.9.7: From 5b0073cfcace402f62f7044b17761b2f14ca4784 Mon Sep 17 00:00:00 2001 From: Matthias Date: Wed, 2 Aug 2023 07:14:40 +0200 Subject: [PATCH 080/207] Don't use props in setup root level --- src/components/BotRename.vue | 7 +- .../charts/CandleChartContainer.vue | 3 +- src/components/charts/PlotIndicatorSelect.vue | 9 ++- src/components/ftbot/TradeList.vue | 76 ++++++++++--------- src/components/general/EditValue.vue | 7 +- src/stores/ftbot.ts | 1 - 6 files changed, 59 insertions(+), 44 deletions(-) diff --git a/src/components/BotRename.vue b/src/components/BotRename.vue index 1a5da6ec..ca8389ae 100644 --- a/src/components/BotRename.vue +++ b/src/components/BotRename.vue @@ -24,15 +24,18 @@ diff --git a/src/stores/ftbot.ts b/src/stores/ftbot.ts index 6ee3f341..1719e3ae 100644 --- a/src/stores/ftbot.ts +++ b/src/stores/ftbot.ts @@ -44,6 +44,8 @@ import { PairlistsResponse, BacktestResultInMemory, BacktestMetadataWithStrategyName, + BacktestMetadataPatch, + BacktestResultUpdate, } from '@/types'; import axios, { AxiosResponse } from 'axios'; import { defineStore } from 'pinia'; @@ -908,7 +910,10 @@ export function createBotSubStore(botId: string, botName: string) { }; // console.log(key, strat, metadata); - const stratKey = `${key}_${strat.total_trades}_${strat.profit_total.toFixed(3)}`; + // Never versions will always have run_id + const stratKey = + backtestResult.metadata[key].run_id ?? + `${key}_${strat.total_trades}_${strat.profit_total.toFixed(3)}`; const btResult: BacktestResultInMemory = { metadata, strategy: strat, @@ -937,6 +942,25 @@ export function createBotSubStore(botId: string, botName: string) { return Promise.reject(err); } }, + async saveBacktestResultMetadata(payload: BacktestResultUpdate) { + try { + const { data } = await api.patch< + BacktestMetadataPatch, + AxiosResponse + >(`/backtest/history/${payload.filename}`, payload); + console.log(data); + data.forEach((entry) => { + if (entry.run_id in this.backtestHistory) { + this.backtestHistory[entry.run_id].metadata.notes = entry.notes; + console.log('updating ...'); + } + }); + // Update metadata in backtestHistoryList + } catch (err) { + console.error(err); + return Promise.reject(err); + } + }, setBacktestResultKey(key: string) { this.selectedBacktestResultKey = key; }, diff --git a/src/types/backtest.ts b/src/types/backtest.ts index 8b3054e7..7acf9579 100644 --- a/src/types/backtest.ts +++ b/src/types/backtest.ts @@ -196,6 +196,16 @@ export interface BacktestMetadataWithStrategyName extends BacktestMetadata { editing: boolean; } +export interface BacktestMetadataPatch { + notes: string; + strategy: string; +} + +export interface BacktestResultUpdate extends BacktestMetadataPatch { + run_id: string; + filename: string; +} + /** * Represents the in-memory result of a backtest. */ diff --git a/src/views/BacktestingView.vue b/src/views/BacktestingView.vue index 61c6f7a1..1adea7c5 100644 --- a/src/views/BacktestingView.vue +++ b/src/views/BacktestingView.vue @@ -87,6 +87,7 @@ :selected-backtest-result-key="botStore.activeBot.selectedBacktestResultKey" @selection-change="botStore.activeBot.setBacktestResultKey" @remove-result="botStore.activeBot.removeBacktestResultFromMemory" + @update-result="botStore.activeBot.saveBacktestResultMetadata" /> From 8830e1266ab85df38603c04d0dae7385062fb950 Mon Sep 17 00:00:00 2001 From: Matthias Date: Mon, 31 Jul 2023 21:25:05 +0200 Subject: [PATCH 086/207] Add Notes to "loading" screen --- src/components/ftbot/BacktestResultSelect.vue | 2 ++ src/types/backtest.ts | 1 + src/views/BacktestingView.vue | 1 + 3 files changed, 4 insertions(+) diff --git a/src/components/ftbot/BacktestResultSelect.vue b/src/components/ftbot/BacktestResultSelect.vue index 76153cd2..fc6493f8 100644 --- a/src/components/ftbot/BacktestResultSelect.vue +++ b/src/components/ftbot/BacktestResultSelect.vue @@ -24,6 +24,7 @@ Record, }, selectedBacktestResultKey: { required: false, default: '', type: String }, + canUseModify: { required: false, default: false, type: Boolean }, }); const emit = defineEmits<{ selectionChange: [value: string]; diff --git a/src/types/backtest.ts b/src/types/backtest.ts index 7acf9579..496b27a0 100644 --- a/src/types/backtest.ts +++ b/src/types/backtest.ts @@ -244,4 +244,5 @@ export interface BacktestHistoryEntry { strategy: string; run_id: string; backtest_start_time: number; + notes?: string; } diff --git a/src/views/BacktestingView.vue b/src/views/BacktestingView.vue index 1adea7c5..b75348ba 100644 --- a/src/views/BacktestingView.vue +++ b/src/views/BacktestingView.vue @@ -85,6 +85,7 @@ v-if="btFormMode !== 'visualize' && showLeftBar" :backtest-history="botStore.activeBot.backtestHistory" :selected-backtest-result-key="botStore.activeBot.selectedBacktestResultKey" + :can-use-modify="botStore.activeBot.botApiVersion >= 2.32" @selection-change="botStore.activeBot.setBacktestResultKey" @remove-result="botStore.activeBot.removeBacktestResultFromMemory" @update-result="botStore.activeBot.saveBacktestResultMetadata" From b90a34044d303ee33cb195a32621ccebf4366f06 Mon Sep 17 00:00:00 2001 From: Matthias Date: Tue, 1 Aug 2023 06:53:40 +0200 Subject: [PATCH 087/207] Show "notes" in "load results" pane --- src/components/ftbot/BacktestHistoryLoad.vue | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/components/ftbot/BacktestHistoryLoad.vue b/src/components/ftbot/BacktestHistoryLoad.vue index e624a09a..8fb559eb 100644 --- a/src/components/ftbot/BacktestHistoryLoad.vue +++ b/src/components/ftbot/BacktestHistoryLoad.vue @@ -23,6 +23,11 @@ {{ res.strategy }} backtested on: {{ timestampms(res.backtest_start_time * 1000) }} {{ res.filename }} + (); From ef3a91aac538b1c2a49263dbf9a9c44d7328917b Mon Sep 17 00:00:00 2001 From: Matthias Date: Tue, 1 Aug 2023 06:54:55 +0200 Subject: [PATCH 088/207] Remove resolved todo --- src/components/ftbot/BacktestResultSelect.vue | 3 ++- src/stores/ftbot.ts | 1 - 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/components/ftbot/BacktestResultSelect.vue b/src/components/ftbot/BacktestResultSelect.vue index fc6493f8..798035a3 100644 --- a/src/components/ftbot/BacktestResultSelect.vue +++ b/src/components/ftbot/BacktestResultSelect.vue @@ -36,7 +36,8 @@