st-comp 0.0.168 → 0.0.170

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/es/KlinePlus.js CHANGED
@@ -2,13 +2,13 @@ import "./base-4bcd2756.js";
2
2
  import { v as Ce } from "./el-loading-5d29f26d.js";
3
3
  import { E as be } from "./el-empty-64b2ea8a.js";
4
4
  import "./el-tag-6036f51c.js";
5
- import { E as ke, a as he } from "./el-select-d3bce4d1.js";
5
+ import { E as he, a as ke } from "./el-select-d3bce4d1.js";
6
6
  import "./el-scrollbar-bcf29780.js";
7
7
  import "./el-popper-85365d5b.js";
8
- import { openBlock as R, createElementBlock as _, Fragment as me, renderList as Ae, normalizeStyle as Ee, toDisplayString as Me, inject as xe, ref as P, onMounted as pe, nextTick as ve, watch as te, onUnmounted as we, computed as ce, withDirectives as Se, createElementVNode as $, createVNode as ee, createCommentVNode as Ne, withCtx as Qe, createBlock as ge } from "vue";
9
- import { d as m } from "./dayjs.min-54a4e095.js";
8
+ import { openBlock as R, createElementBlock as H, Fragment as me, renderList as Ae, normalizeStyle as ve, toDisplayString as Me, inject as we, ref as F, onMounted as pe, nextTick as Ee, watch as te, onUnmounted as xe, computed as re, withDirectives as Se, createElementVNode as $, createVNode as ee, createCommentVNode as Ne, withCtx as Qe, createBlock as ge } from "vue";
9
+ import { d as g } from "./dayjs.min-54a4e095.js";
10
10
  import * as se from "echarts";
11
- import { x as Oe, G as ae, D as Ue } from "./index-7ed0999e.js";
11
+ import { x as fe, G as ae, D as Pe } from "./index-7ed0999e.js";
12
12
  import { _ as je } from "./_plugin-vue_export-helper-dad06003.js";
13
13
  import "./use-global-config-946f61a4.js";
14
14
  import "./use-form-common-props-54c31983.js";
@@ -21,7 +21,7 @@ import "./index-21fb27eb.js";
21
21
  import "./scroll-0277d145.js";
22
22
  import "./debounce-51046b06.js";
23
23
  import "./_commonjsHelpers-10dfc225.js";
24
- const Pe = "data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBzdGFuZGFsb25lPSJubyI/PjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCI+PHN2ZyB0PSIxNjgzNzAzMjM4NzI1IiBjbGFzcz0iaWNvbiIgdmlld0JveD0iMCAwIDEwMjQgMTAyNCIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHAtaWQ9IjI2MjUiIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB3aWR0aD0iMjAwIiBoZWlnaHQ9IjIwMCI+PHBhdGggZD0iTTE5OC4wMTYgMTA5LjczODY2N0E3Ny44NjY2NjcgNzcuODY2NjY3IDAgMCAwIDE3MC42NjY2NjcgMTY3LjY4bDAuNTEyIDQxOC45NDRjMCAyMi44NjkzMzMgNi40IDQ4IDE5LjAyOTMzMyA3NS4zMDY2NjcgMTIuNjcyIDI3LjIyMTMzMyAyNy45ODkzMzMgNDguOTM4NjY3IDQ1Ljk1MiA2NC45Mzg2NjZsMjExLjE1NzMzMyAxODguMjAyNjY3YzE3LjA2NjY2NyAxNS40ODggNDAuNTc2IDIzLjk3ODY2NyA2NC45Mzg2NjcgMjMuNTk0NjY3IDI1LjY4NTMzMy0wLjA4NTMzMyA0Ny4zNi03LjkzNiA2NC45ODEzMzMtMjMuNTk0NjY3bDIxMS4yLTE4OC4yMDI2NjdjMTcuOTItMTYgMzMuMTk0NjY3LTM3LjYzMiA0NS44NjY2NjctNjQuOTM4NjY2IDEyLjY3Mi0yNy4zMDY2NjcgMTguNzczMzMzLTUyLjIyNCAxOC41MTczMzMtNzQuOTIyNjY3TDg1My4zMzMzMzMgMTY3LjI1MzMzM2MwLTIyLjI3Mi04Ljk2LTQxLjQ3Mi0yNi44MzczMzMtNTcuNDcyLTE3LjU3ODY2Ny0xNS42MTYtMzkuMzM4NjY3LTIzLjg5MzMzMy02NC45Mzg2NjctMjQuNDA1MzMzbC00OTkuMDI5MzMzIDAuNDY5MzMzYTkzLjMxMiA5My4zMTIgMCAwIDAtNjQuNTEyIDIzLjg5MzMzNHoiIGZpbGw9IiNGRjAwMDAiIHAtaWQ9IjI2MjYiPjwvcGF0aD48cGF0aCBkPSJNMTcwLjcwOTMzMyAxNjcuNzIyNjY3YzAuMTI4LTIxLjc2IDkuOTg0LTQyLjY2NjY2NyAyNy4zOTItNTcuOTQxMzM0YTkzLjMxMiA5My4zMTIgMCAwIDEgNjQuNDY5MzM0LTIzLjg5MzMzM0w3NjEuNiA4NS4zMzMzMzNjMjUuNiAwLjU1NDY2NyA0Ny4zNiA4Ljc4OTMzMyA2NC45Mzg2NjcgMjQuNDA1MzM0IDE3LjkyIDE2IDI2Ljg4IDM1LjIgMjYuODggNTcuNDcybC0wLjU1NDY2NyA0MTkuODRjMC4yOTg2NjcgMjIuNjk4NjY3LTUuODQ1MzMzIDQ3LjYxNi0xOC41MTczMzMgNzQuOTIyNjY2LTEyLjYyOTMzMyAyNy4zMDY2NjctMjcuOTQ2NjY3IDQ4Ljg5Ni00NS44MjQgNjQuODk2bC0yMTEuMjQyNjY3IDE4OC4yMDI2NjdjLTE3LjU3ODY2NyAxNS43MDEzMzMtMzkuMjUzMzMzIDIzLjUwOTMzMy02NC45Mzg2NjcgMjMuNTk0NjY3YTk0LjcyIDk0LjcyIDAgMCAxLTY0Ljk4MTMzMy0yMy41OTQ2NjdsLTIxMS4xNTczMzMtMTg4LjE2Yy0xNy45Mi0xNi4wNDI2NjctMzMuMjgtMzcuNzE3MzMzLTQ1LjkwOTMzNC02NC45ODEzMzMtMTIuNjcyLTI3LjMwNjY2Ny0xOS4wMjkzMzMtNTIuMzk0NjY3LTE5LjAyOTMzMy03NS4zMDY2NjdMMTcwLjY2NjY2NyAxNjcuNzIyNjY3eiBtNDIuNjY2NjY3IDAuMjU2bDAuNTU0NjY3IDQxOC42ODhjMCAxNi4yMTMzMzMgNC44MjEzMzMgMzUuMzI4IDE1LjAxODY2NiA1Ny4zNDQgMTAuMzY4IDIyLjI3MiAyMi4zNTczMzMgMzkuMjEwNjY3IDM1LjYyNjY2NyA1MS4wNzJsMjExLjQxMzMzMyAxODguNDE2YzguOTYgOC4xMDY2NjcgMjEuODg4IDEyLjggMzYuMjI0IDEyLjU0NCAxNS41MzA2NjctMC4wNDI2NjcgMjcuMDkzMzMzLTQuMjY2NjY3IDM2LjY5MzMzNC0xMi44bDIxMS4xNTczMzMtMTg4LjExNzMzNGMxMy4zMTItMTEuOTQ2NjY3IDI1LjMwMTMzMy0yOC44NDI2NjcgMzUuNTg0LTUxLjA3MiAxMC4xMTItMjEuODQ1MzMzIDE0Ljc2MjY2Ny00MC41NzYgMTQuNTA2NjY3LTU3LjA0NTMzM2wwLjU1NDY2Ni00MTkuNzU0NjY3YzAtOS44OTg2NjctMy41ODQtMTcuNjIxMzMzLTEyLjQ1ODY2Ni0yNS42YTU0LjY5ODY2NyA1NC42OTg2NjcgMCAwIDAtMzYuNjA4LTEzLjYxMDY2NmwtNDk5LjYyNjY2NyAwLjQ2OTMzM2E1MS4zMjggNTEuMzI4IDAgMCAwLTM1Ljc1NDY2NyAxMy4zMTIgMzYuNTY1MzMzIDM2LjU2NTMzMyAwIDAgMC0xMi41MDEzMzMgMjEuNDYxMzMzbC0wLjQyNjY2NyA0LjY5MzMzNHoiIGZpbGw9IiNBRTAwMDAiIHAtaWQ9IjI2MjciPjwvcGF0aD48cGF0aCBkPSJNMzg0IDY1NC4xMjI2NjdoMTUzLjUxNDY2N2M5Ni43NjggMCAxNDIuNzYyNjY3LTQ4Ljk4MTMzMyAxNDIuNzYyNjY2LTExNy4wNzczMzQgMC01OS43MzMzMzMtMzMuNDUwNjY3LTg4LjQwNTMzMy04NC44MjEzMzMtOTcuOTYyNjY2di0xLjc5MmM0OC45ODEzMzMtMTUuNTMwNjY3IDY2LjkwMTMzMy00Ni41OTIgNjYuOTAxMzMzLTg5LjYgMC02NS4xMDkzMzMtNDAuNjE4NjY3LTEwMy4zMzg2NjctMTM0Ljk5NzMzMy0xMDMuMzM4NjY3SDM4NHY0MDkuNzcwNjY3eiBtNzIuODc0NjY3LTU0Ljk1NDY2N3YtMTMxLjQxMzMzM2g2Ni4zMDRjNTEuOTY4IDAgODAuMDQyNjY3IDE3LjkyIDgwLjA0MjY2NiA2NS4xMDkzMzMgMCA0NC44LTI2LjI4MjY2NyA2Ni4zMDQtNzUuODYxMzMzIDY2LjMwNGgtNzAuNDg1MzMzeiBtMC0xODAuMzk0NjY3VjI5OC43MDkzMzNoNjAuMzMwNjY2YzQ3LjE4OTMzMyAwIDcyLjI3NzMzMyAxNC45MzMzMzMgNzIuMjc3MzM0IDU5LjEzNiAwIDQ2LjU5Mi0zMi4yNTYgNjAuOTI4LTc1LjI2NCA2MC45MjhoLTU3LjM0NHoiIGZpbGw9IiNGRkZGRkYiIHAtaWQ9IjI2MjgiPjwvcGF0aD48L3N2Zz4=", Re = "data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBzdGFuZGFsb25lPSJubyI/PjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCI+PHN2ZyB0PSIxNjgzNzAzMjQxNjY0IiBjbGFzcz0iaWNvbiIgdmlld0JveD0iMCAwIDEwMjQgMTAyNCIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHAtaWQ9IjI3NzciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB3aWR0aD0iMjAwIiBoZWlnaHQ9IjIwMCI+PHBhdGggZD0iTTE5OC4wMTYgMTA5LjczODY2N0E3Ny44NjY2NjcgNzcuODY2NjY3IDAgMCAwIDE3MC42NjY2NjcgMTY3LjY4bDAuNTEyIDQxOC45NDRjMCAyMi44NjkzMzMgNi40IDQ4IDE5LjAyOTMzMyA3NS4zMDY2NjcgMTIuNjcyIDI3LjIyMTMzMyAyNy45ODkzMzMgNDguOTM4NjY3IDQ1Ljk1MiA2NC45Mzg2NjZsMjExLjE1NzMzMyAxODguMjAyNjY3YzE3LjA2NjY2NyAxNS40ODggNDAuNTc2IDIzLjk3ODY2NyA2NC45Mzg2NjcgMjMuNTk0NjY3IDI1LjY4NTMzMy0wLjA4NTMzMyA0Ny4zNi03LjkzNiA2NC45ODEzMzMtMjMuNTk0NjY3bDIxMS4yLTE4OC4yMDI2NjdjMTcuOTItMTYgMzMuMTk0NjY3LTM3LjYzMiA0NS44NjY2NjctNjQuOTM4NjY2IDEyLjY3Mi0yNy4zMDY2NjcgMTguNzczMzMzLTUyLjIyNCAxOC41MTczMzMtNzQuOTIyNjY3TDg1My4zMzMzMzMgMTY3LjI1MzMzM2MwLTIyLjI3Mi04Ljk2LTQxLjQ3Mi0yNi44MzczMzMtNTcuNDcyLTE3LjU3ODY2Ny0xNS42MTYtMzkuMzM4NjY3LTIzLjg5MzMzMy02NC45Mzg2NjctMjQuNDA1MzMzbC00OTkuMDI5MzMzIDAuNDY5MzMzYTkzLjMxMiA5My4zMTIgMCAwIDAtNjQuNTEyIDIzLjg5MzMzNHoiIGZpbGw9IiM1NEFCMzAiIHAtaWQ9IjI3NzgiPjwvcGF0aD48cGF0aCBkPSJNMTcwLjY2NjY2NyAxNjcuNjhjMC4xMjgtMjEuNzYgOS45NDEzMzMtNDIuNjY2NjY3IDI3LjM0OTMzMy01Ny45NDEzMzNhOTMuMzEyIDkzLjMxMiAwIDAgMSA2NC41MTItMjMuODkzMzM0TDc2MS41NTczMzMgODUuMzMzMzMzYzI1LjYgMC41NTQ2NjcgNDcuMzYgOC43ODkzMzMgNjQuOTM4NjY3IDI0LjQwNTMzNCAxNy45MiAxNiAyNi44MzczMzMgMzUuMiAyNi44MzczMzMgNTcuNDcybC0wLjUxMiA0MTkuODRjMC4yOTg2NjcgMjIuNjU2LTUuODQ1MzMzIDQ3LjYxNi0xOC41MTczMzMgNzQuODgtMTIuNjcyIDI3LjMwNjY2Ny0yNy45NDY2NjcgNDguOTM4NjY3LTQ1Ljg2NjY2NyA2NC45Mzg2NjZsLTIxMS4yIDE4OC4yMDI2NjdjLTE3LjYyMTMzMyAxNS42NTg2NjctMzkuMjUzMzMzIDIzLjUwOTMzMy02NC45ODEzMzMgMjMuNTk0NjY3YTk0LjcyIDk0LjcyIDAgMCAxLTY0LjkzODY2Ny0yMy41OTQ2NjdsLTIxMS4yLTE4OC4yMDI2NjdjLTE3LjkyLTE2LTMzLjIzNzMzMy0zNy43MTczMzMtNDUuOTA5MzMzLTY0LjkzODY2Ni0xMi42MjkzMzMtMjcuMzA2NjY3LTE5LjAyOTMzMy01Mi40MzczMzMtMTkuMDI5MzMzLTc1LjMwNjY2N0wxNzAuNjY2NjY3IDE2Ny42OHogbTQyLjYyNCAwLjI1NmwwLjU1NDY2NiA0MTguNjg4YzAgMTYuMTcwNjY3IDQuODY0IDM1LjMyOCAxNS4wNjEzMzQgNTcuMzQ0IDEwLjM2OCAyMi4yNzIgMjIuMzE0NjY3IDM5LjE2OCAzNS42MjY2NjYgNTEuMDI5MzMzbDIxMS40MTMzMzQgMTg4LjQxNmM4Ljk2IDguMTA2NjY3IDIxLjg4OCAxMi44IDM2LjIyNCAxMi41ODY2NjcgMTUuNTMwNjY3LTAuMDQyNjY3IDI3LjA5MzMzMy00LjI2NjY2NyAzNi42OTMzMzMtMTIuOGwyMTEuMTE0NjY3LTE4OC4xNmMxMy4zNTQ2NjctMTEuOTQ2NjY3IDI1LjMwMTMzMy0yOC44NDI2NjcgMzUuNjI2NjY2LTUxLjA3MiAxMC4xMTItMjEuNzYgMTQuNzYyNjY3LTQwLjUzMzMzMyAxNC41MDY2NjctNTcuMDAyNjY3TDgxMC42NjY2NjcgMTY3LjIxMDY2N2MwLTkuODk4NjY3LTMuNTg0LTE3LjYyMTMzMy0xMi41MDEzMzQtMjUuNkE1NC42OTg2NjcgNTQuNjk4NjY3IDAgMCAwIDc2MS42IDEyOGwtNDk5LjYyNjY2NyAwLjQ2OTMzM2E1MS4zMjggNTEuMzI4IDAgMCAwLTM1Ljc1NDY2NiAxMy4yNjkzMzQgMzYuNTY1MzMzIDM2LjU2NTMzMyAwIDAgMC0xMi41MDEzMzQgMjEuNTA0bC0wLjQyNjY2NiA0LjY5MzMzM3oiIGZpbGw9IiMzODhEMTQiIHAtaWQ9IjI3NzkiPjwvcGF0aD48cGF0aCBkPSJNNTA2LjQ1MzMzMyA2NzQuNzMwNjY3Yzk5LjE1NzMzMyAwIDE0Ni4zNDY2NjctNDguMzg0IDE0Ni4zNDY2NjctMTI2LjAzNzMzNCAwLTcyLjg3NDY2Ny0zOC44MjY2NjctOTkuNzU0NjY3LTEwMy4zMzg2NjctMTE4LjI3MmwtMzguMjI5MzMzLTExLjk0NjY2NmMtNDAuNjE4NjY3LTExLjM0OTMzMy01Mi41NjUzMzMtMjUuMDg4LTUyLjU2NTMzMy01Ny4zNDQgMC0zMi44NTMzMzMgMjMuODkzMzMzLTUwLjc3MzMzMyA2Ni45MDEzMzMtNTAuNzczMzM0IDQ1LjM5NzMzMyAwIDc4Ljg0OCA5LjU1NzMzMyAxMDQuNTMzMzMzIDIwLjMwOTMzNFYyNzMuMzIyNjY3Yy0yMi42OTg2NjctMTEuOTQ2NjY3LTUxLjk2OC0yMi4xMDEzMzMtMTA1LjcyOC0yMi4xMDEzMzQtOTIuNTg2NjY3IDAtMTM3LjM4NjY2NyA0Ny4xODkzMzMtMTM3LjM4NjY2NiAxMTYuNDggMCA2OS4yOTA2NjcgMzUuMjQyNjY3IDEwMC4zNTIgOTMuMTg0IDExNi40OGwzOC44MjY2NjYgMTAuNzUyYzQ0LjggMTMuNzM4NjY3IDU5LjczMzMzMyAyNi44OCA1OS43MzMzMzQgNjAuOTI4IDAgMzcuMDM0NjY3LTIzLjI5NiA1OS43MzMzMzMtNzguMjUwNjY3IDU5LjczMzMzNC00NC44IDAtODMuNjI2NjY3LTEwLjc1Mi0xMTYuNDgtMjUuMDg4djU3Ljk0MTMzM2MyOC4wNzQ2NjcgMTQuOTMzMzMzIDY4LjY5MzMzMyAyNi4yODI2NjcgMTIyLjQ1MzMzMyAyNi4yODI2Njd6IiBmaWxsPSIjRkZGRkZGIiBwLWlkPSIyNzgwIj48L3BhdGg+PC9zdmc+", Fe = "data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBzdGFuZGFsb25lPSJubyI/PjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCI+PHN2ZyB0PSIxNjgzNzAzMjI4MjAyIiBjbGFzcz0iaWNvbiIgdmlld0JveD0iMCAwIDEwMjQgMTAyNCIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHAtaWQ9IjMwNzgiIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB3aWR0aD0iMjAwIiBoZWlnaHQ9IjIwMCI+PHBhdGggZD0iTTE5OC4wMTYgMTA5LjczODY2N0E3Ny44NjY2NjcgNzcuODY2NjY3IDAgMCAwIDE3MC42NjY2NjcgMTY3LjY4bDAuNTEyIDQxOC45NDRjMCAyMi44NjkzMzMgNi40IDQ4IDE5LjAyOTMzMyA3NS4zMDY2NjcgMTIuNjcyIDI3LjIyMTMzMyAyNy45ODkzMzMgNDguOTM4NjY3IDQ1Ljk1MiA2NC45Mzg2NjZsMjExLjE1NzMzMyAxODguMjAyNjY3YzE3LjA2NjY2NyAxNS40ODggNDAuNTc2IDIzLjk3ODY2NyA2NC45Mzg2NjcgMjMuNTk0NjY3IDI1LjY4NTMzMy0wLjA4NTMzMyA0Ny4zNi03LjkzNiA2NC45ODEzMzMtMjMuNTk0NjY3bDIxMS4yLTE4OC4yMDI2NjdjMTcuOTItMTYgMzMuMTk0NjY3LTM3LjYzMiA0NS44NjY2NjctNjQuOTM4NjY2IDEyLjY3Mi0yNy4zMDY2NjcgMTguNzczMzMzLTUyLjIyNCAxOC41MTczMzMtNzQuOTIyNjY3TDg1My4zMzMzMzMgMTY3LjI1MzMzM2MwLTIyLjI3Mi04Ljk2LTQxLjQ3Mi0yNi44MzczMzMtNTcuNDcyLTE3LjU3ODY2Ny0xNS42MTYtMzkuMzM4NjY3LTIzLjg5MzMzMy02NC45Mzg2NjctMjQuNDA1MzMzbC00OTkuMDI5MzMzIDAuNDY5MzMzYTkzLjMxMiA5My4zMTIgMCAwIDAtNjQuNTEyIDIzLjg5MzMzNHoiIGZpbGw9IiNDODgwRkYiIHAtaWQ9IjMwNzkiPjwvcGF0aD48cGF0aCBkPSJNMTcwLjY2NjY2NyAxNjcuNjhjMC4xMjgtMjEuNzYgOS45NDEzMzMtNDIuNjY2NjY3IDI3LjM0OTMzMy01Ny45NDEzMzNhOTMuMzEyIDkzLjMxMiAwIDAgMSA2NC41MTItMjMuODkzMzM0TDc2MS41NTczMzMgODUuMzMzMzMzYzI1LjYgMC41NTQ2NjcgNDcuMzYgOC43ODkzMzMgNjQuOTM4NjY3IDI0LjQwNTMzNCAxNy45MiAxNiAyNi44MzczMzMgMzUuMiAyNi44MzczMzMgNTcuNDcybC0wLjUxMiA0MTkuODRjMC4yOTg2NjcgMjIuNjU2LTUuODQ1MzMzIDQ3LjYxNi0xOC41MTczMzMgNzQuODgtMTIuNjcyIDI3LjMwNjY2Ny0yNy45NDY2NjcgNDguOTM4NjY3LTQ1Ljg2NjY2NyA2NC45Mzg2NjZsLTIxMS4yIDE4OC4yMDI2NjdjLTE3LjYyMTMzMyAxNS42NTg2NjctMzkuMjUzMzMzIDIzLjUwOTMzMy02NC45ODEzMzMgMjMuNTk0NjY3YTk0LjcyIDk0LjcyIDAgMCAxLTY0LjkzODY2Ny0yMy41OTQ2NjdsLTIxMS4yLTE4OC4yMDI2NjdjLTE3LjkyLTE2LTMzLjIzNzMzMy0zNy43MTczMzMtNDUuOTA5MzMzLTY0LjkzODY2Ni0xMi42MjkzMzMtMjcuMzA2NjY3LTE5LjAyOTMzMy01Mi40MzczMzMtMTkuMDI5MzMzLTc1LjMwNjY2N0wxNzAuNjY2NjY3IDE2Ny42OHogbTQyLjYyNCAwLjI1NmwwLjU1NDY2NiA0MTguNjg4YzAgMTYuMTcwNjY3IDQuODY0IDM1LjMyOCAxNS4wNjEzMzQgNTcuMzQ0IDEwLjM2OCAyMi4yNzIgMjIuMzE0NjY3IDM5LjE2OCAzNS42MjY2NjYgNTEuMDI5MzMzbDIxMS40MTMzMzQgMTg4LjQxNmM4Ljk2IDguMTA2NjY3IDIxLjg4OCAxMi44IDM2LjIyNCAxMi41ODY2NjcgMTUuNTMwNjY3LTAuMDQyNjY3IDI3LjA5MzMzMy00LjI2NjY2NyAzNi42OTMzMzMtMTIuOGwyMTEuMTE0NjY3LTE4OC4xNmMxMy4zNTQ2NjctMTEuOTQ2NjY3IDI1LjMwMTMzMy0yOC44NDI2NjcgMzUuNjI2NjY2LTUxLjA3MiAxMC4xMTItMjEuNzYgMTQuNzYyNjY3LTQwLjUzMzMzMyAxNC41MDY2NjctNTcuMDAyNjY3TDgxMC42NjY2NjcgMTY3LjIxMDY2N2MwLTkuODk4NjY3LTMuNTg0LTE3LjYyMTMzMy0xMi41MDEzMzQtMjUuNkE1NC42OTg2NjcgNTQuNjk4NjY3IDAgMCAwIDc2MS42IDEyOGwtNDk5LjYyNjY2NyAwLjQ2OTMzM2E1MS4zMjggNTEuMzI4IDAgMCAwLTM1Ljc1NDY2NiAxMy4yNjkzMzQgMzYuNTY1MzMzIDM2LjU2NTMzMyAwIDAgMC0xMi41MDEzMzQgMjEuNTA0bC0wLjQyNjY2NiA0LjY5MzMzM3oiIGZpbGw9IiNBRTQ0RkYiIHAtaWQ9IjMwODAiPjwvcGF0aD48cGF0aCBkPSJNNDc1LjMwNjY2NyA2NTguMjE4NjY3aDczLjQ3MlYzMDYuMzg5MzMzaDExNi40OFYyNDguNDQ4aC0zMDcuNjI2NjY3djU3Ljk0MTMzM2gxMTcuNjc0NjY3eiIgZmlsbD0iI0ZGRkZGRiIgcC1pZD0iMzA4MSI+PC9wYXRoPjwvc3ZnPg==", { round: Ve } = Oe, W = {
24
+ const Ue = "data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBzdGFuZGFsb25lPSJubyI/PjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCI+PHN2ZyB0PSIxNjgzNzAzMjM4NzI1IiBjbGFzcz0iaWNvbiIgdmlld0JveD0iMCAwIDEwMjQgMTAyNCIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHAtaWQ9IjI2MjUiIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB3aWR0aD0iMjAwIiBoZWlnaHQ9IjIwMCI+PHBhdGggZD0iTTE5OC4wMTYgMTA5LjczODY2N0E3Ny44NjY2NjcgNzcuODY2NjY3IDAgMCAwIDE3MC42NjY2NjcgMTY3LjY4bDAuNTEyIDQxOC45NDRjMCAyMi44NjkzMzMgNi40IDQ4IDE5LjAyOTMzMyA3NS4zMDY2NjcgMTIuNjcyIDI3LjIyMTMzMyAyNy45ODkzMzMgNDguOTM4NjY3IDQ1Ljk1MiA2NC45Mzg2NjZsMjExLjE1NzMzMyAxODguMjAyNjY3YzE3LjA2NjY2NyAxNS40ODggNDAuNTc2IDIzLjk3ODY2NyA2NC45Mzg2NjcgMjMuNTk0NjY3IDI1LjY4NTMzMy0wLjA4NTMzMyA0Ny4zNi03LjkzNiA2NC45ODEzMzMtMjMuNTk0NjY3bDIxMS4yLTE4OC4yMDI2NjdjMTcuOTItMTYgMzMuMTk0NjY3LTM3LjYzMiA0NS44NjY2NjctNjQuOTM4NjY2IDEyLjY3Mi0yNy4zMDY2NjcgMTguNzczMzMzLTUyLjIyNCAxOC41MTczMzMtNzQuOTIyNjY3TDg1My4zMzMzMzMgMTY3LjI1MzMzM2MwLTIyLjI3Mi04Ljk2LTQxLjQ3Mi0yNi44MzczMzMtNTcuNDcyLTE3LjU3ODY2Ny0xNS42MTYtMzkuMzM4NjY3LTIzLjg5MzMzMy02NC45Mzg2NjctMjQuNDA1MzMzbC00OTkuMDI5MzMzIDAuNDY5MzMzYTkzLjMxMiA5My4zMTIgMCAwIDAtNjQuNTEyIDIzLjg5MzMzNHoiIGZpbGw9IiNGRjAwMDAiIHAtaWQ9IjI2MjYiPjwvcGF0aD48cGF0aCBkPSJNMTcwLjcwOTMzMyAxNjcuNzIyNjY3YzAuMTI4LTIxLjc2IDkuOTg0LTQyLjY2NjY2NyAyNy4zOTItNTcuOTQxMzM0YTkzLjMxMiA5My4zMTIgMCAwIDEgNjQuNDY5MzM0LTIzLjg5MzMzM0w3NjEuNiA4NS4zMzMzMzNjMjUuNiAwLjU1NDY2NyA0Ny4zNiA4Ljc4OTMzMyA2NC45Mzg2NjcgMjQuNDA1MzM0IDE3LjkyIDE2IDI2Ljg4IDM1LjIgMjYuODggNTcuNDcybC0wLjU1NDY2NyA0MTkuODRjMC4yOTg2NjcgMjIuNjk4NjY3LTUuODQ1MzMzIDQ3LjYxNi0xOC41MTczMzMgNzQuOTIyNjY2LTEyLjYyOTMzMyAyNy4zMDY2NjctMjcuOTQ2NjY3IDQ4Ljg5Ni00NS44MjQgNjQuODk2bC0yMTEuMjQyNjY3IDE4OC4yMDI2NjdjLTE3LjU3ODY2NyAxNS43MDEzMzMtMzkuMjUzMzMzIDIzLjUwOTMzMy02NC45Mzg2NjcgMjMuNTk0NjY3YTk0LjcyIDk0LjcyIDAgMCAxLTY0Ljk4MTMzMy0yMy41OTQ2NjdsLTIxMS4xNTczMzMtMTg4LjE2Yy0xNy45Mi0xNi4wNDI2NjctMzMuMjgtMzcuNzE3MzMzLTQ1LjkwOTMzNC02NC45ODEzMzMtMTIuNjcyLTI3LjMwNjY2Ny0xOS4wMjkzMzMtNTIuMzk0NjY3LTE5LjAyOTMzMy03NS4zMDY2NjdMMTcwLjY2NjY2NyAxNjcuNzIyNjY3eiBtNDIuNjY2NjY3IDAuMjU2bDAuNTU0NjY3IDQxOC42ODhjMCAxNi4yMTMzMzMgNC44MjEzMzMgMzUuMzI4IDE1LjAxODY2NiA1Ny4zNDQgMTAuMzY4IDIyLjI3MiAyMi4zNTczMzMgMzkuMjEwNjY3IDM1LjYyNjY2NyA1MS4wNzJsMjExLjQxMzMzMyAxODguNDE2YzguOTYgOC4xMDY2NjcgMjEuODg4IDEyLjggMzYuMjI0IDEyLjU0NCAxNS41MzA2NjctMC4wNDI2NjcgMjcuMDkzMzMzLTQuMjY2NjY3IDM2LjY5MzMzNC0xMi44bDIxMS4xNTczMzMtMTg4LjExNzMzNGMxMy4zMTItMTEuOTQ2NjY3IDI1LjMwMTMzMy0yOC44NDI2NjcgMzUuNTg0LTUxLjA3MiAxMC4xMTItMjEuODQ1MzMzIDE0Ljc2MjY2Ny00MC41NzYgMTQuNTA2NjY3LTU3LjA0NTMzM2wwLjU1NDY2Ni00MTkuNzU0NjY3YzAtOS44OTg2NjctMy41ODQtMTcuNjIxMzMzLTEyLjQ1ODY2Ni0yNS42YTU0LjY5ODY2NyA1NC42OTg2NjcgMCAwIDAtMzYuNjA4LTEzLjYxMDY2NmwtNDk5LjYyNjY2NyAwLjQ2OTMzM2E1MS4zMjggNTEuMzI4IDAgMCAwLTM1Ljc1NDY2NyAxMy4zMTIgMzYuNTY1MzMzIDM2LjU2NTMzMyAwIDAgMC0xMi41MDEzMzMgMjEuNDYxMzMzbC0wLjQyNjY2NyA0LjY5MzMzNHoiIGZpbGw9IiNBRTAwMDAiIHAtaWQ9IjI2MjciPjwvcGF0aD48cGF0aCBkPSJNMzg0IDY1NC4xMjI2NjdoMTUzLjUxNDY2N2M5Ni43NjggMCAxNDIuNzYyNjY3LTQ4Ljk4MTMzMyAxNDIuNzYyNjY2LTExNy4wNzczMzQgMC01OS43MzMzMzMtMzMuNDUwNjY3LTg4LjQwNTMzMy04NC44MjEzMzMtOTcuOTYyNjY2di0xLjc5MmM0OC45ODEzMzMtMTUuNTMwNjY3IDY2LjkwMTMzMy00Ni41OTIgNjYuOTAxMzMzLTg5LjYgMC02NS4xMDkzMzMtNDAuNjE4NjY3LTEwMy4zMzg2NjctMTM0Ljk5NzMzMy0xMDMuMzM4NjY3SDM4NHY0MDkuNzcwNjY3eiBtNzIuODc0NjY3LTU0Ljk1NDY2N3YtMTMxLjQxMzMzM2g2Ni4zMDRjNTEuOTY4IDAgODAuMDQyNjY3IDE3LjkyIDgwLjA0MjY2NiA2NS4xMDkzMzMgMCA0NC44LTI2LjI4MjY2NyA2Ni4zMDQtNzUuODYxMzMzIDY2LjMwNGgtNzAuNDg1MzMzeiBtMC0xODAuMzk0NjY3VjI5OC43MDkzMzNoNjAuMzMwNjY2YzQ3LjE4OTMzMyAwIDcyLjI3NzMzMyAxNC45MzMzMzMgNzIuMjc3MzM0IDU5LjEzNiAwIDQ2LjU5Mi0zMi4yNTYgNjAuOTI4LTc1LjI2NCA2MC45MjhoLTU3LjM0NHoiIGZpbGw9IiNGRkZGRkYiIHAtaWQ9IjI2MjgiPjwvcGF0aD48L3N2Zz4=", Fe = "data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBzdGFuZGFsb25lPSJubyI/PjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCI+PHN2ZyB0PSIxNjgzNzAzMjQxNjY0IiBjbGFzcz0iaWNvbiIgdmlld0JveD0iMCAwIDEwMjQgMTAyNCIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHAtaWQ9IjI3NzciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB3aWR0aD0iMjAwIiBoZWlnaHQ9IjIwMCI+PHBhdGggZD0iTTE5OC4wMTYgMTA5LjczODY2N0E3Ny44NjY2NjcgNzcuODY2NjY3IDAgMCAwIDE3MC42NjY2NjcgMTY3LjY4bDAuNTEyIDQxOC45NDRjMCAyMi44NjkzMzMgNi40IDQ4IDE5LjAyOTMzMyA3NS4zMDY2NjcgMTIuNjcyIDI3LjIyMTMzMyAyNy45ODkzMzMgNDguOTM4NjY3IDQ1Ljk1MiA2NC45Mzg2NjZsMjExLjE1NzMzMyAxODguMjAyNjY3YzE3LjA2NjY2NyAxNS40ODggNDAuNTc2IDIzLjk3ODY2NyA2NC45Mzg2NjcgMjMuNTk0NjY3IDI1LjY4NTMzMy0wLjA4NTMzMyA0Ny4zNi03LjkzNiA2NC45ODEzMzMtMjMuNTk0NjY3bDIxMS4yLTE4OC4yMDI2NjdjMTcuOTItMTYgMzMuMTk0NjY3LTM3LjYzMiA0NS44NjY2NjctNjQuOTM4NjY2IDEyLjY3Mi0yNy4zMDY2NjcgMTguNzczMzMzLTUyLjIyNCAxOC41MTczMzMtNzQuOTIyNjY3TDg1My4zMzMzMzMgMTY3LjI1MzMzM2MwLTIyLjI3Mi04Ljk2LTQxLjQ3Mi0yNi44MzczMzMtNTcuNDcyLTE3LjU3ODY2Ny0xNS42MTYtMzkuMzM4NjY3LTIzLjg5MzMzMy02NC45Mzg2NjctMjQuNDA1MzMzbC00OTkuMDI5MzMzIDAuNDY5MzMzYTkzLjMxMiA5My4zMTIgMCAwIDAtNjQuNTEyIDIzLjg5MzMzNHoiIGZpbGw9IiM1NEFCMzAiIHAtaWQ9IjI3NzgiPjwvcGF0aD48cGF0aCBkPSJNMTcwLjY2NjY2NyAxNjcuNjhjMC4xMjgtMjEuNzYgOS45NDEzMzMtNDIuNjY2NjY3IDI3LjM0OTMzMy01Ny45NDEzMzNhOTMuMzEyIDkzLjMxMiAwIDAgMSA2NC41MTItMjMuODkzMzM0TDc2MS41NTczMzMgODUuMzMzMzMzYzI1LjYgMC41NTQ2NjcgNDcuMzYgOC43ODkzMzMgNjQuOTM4NjY3IDI0LjQwNTMzNCAxNy45MiAxNiAyNi44MzczMzMgMzUuMiAyNi44MzczMzMgNTcuNDcybC0wLjUxMiA0MTkuODRjMC4yOTg2NjcgMjIuNjU2LTUuODQ1MzMzIDQ3LjYxNi0xOC41MTczMzMgNzQuODgtMTIuNjcyIDI3LjMwNjY2Ny0yNy45NDY2NjcgNDguOTM4NjY3LTQ1Ljg2NjY2NyA2NC45Mzg2NjZsLTIxMS4yIDE4OC4yMDI2NjdjLTE3LjYyMTMzMyAxNS42NTg2NjctMzkuMjUzMzMzIDIzLjUwOTMzMy02NC45ODEzMzMgMjMuNTk0NjY3YTk0LjcyIDk0LjcyIDAgMCAxLTY0LjkzODY2Ny0yMy41OTQ2NjdsLTIxMS4yLTE4OC4yMDI2NjdjLTE3LjkyLTE2LTMzLjIzNzMzMy0zNy43MTczMzMtNDUuOTA5MzMzLTY0LjkzODY2Ni0xMi42MjkzMzMtMjcuMzA2NjY3LTE5LjAyOTMzMy01Mi40MzczMzMtMTkuMDI5MzMzLTc1LjMwNjY2N0wxNzAuNjY2NjY3IDE2Ny42OHogbTQyLjYyNCAwLjI1NmwwLjU1NDY2NiA0MTguNjg4YzAgMTYuMTcwNjY3IDQuODY0IDM1LjMyOCAxNS4wNjEzMzQgNTcuMzQ0IDEwLjM2OCAyMi4yNzIgMjIuMzE0NjY3IDM5LjE2OCAzNS42MjY2NjYgNTEuMDI5MzMzbDIxMS40MTMzMzQgMTg4LjQxNmM4Ljk2IDguMTA2NjY3IDIxLjg4OCAxMi44IDM2LjIyNCAxMi41ODY2NjcgMTUuNTMwNjY3LTAuMDQyNjY3IDI3LjA5MzMzMy00LjI2NjY2NyAzNi42OTMzMzMtMTIuOGwyMTEuMTE0NjY3LTE4OC4xNmMxMy4zNTQ2NjctMTEuOTQ2NjY3IDI1LjMwMTMzMy0yOC44NDI2NjcgMzUuNjI2NjY2LTUxLjA3MiAxMC4xMTItMjEuNzYgMTQuNzYyNjY3LTQwLjUzMzMzMyAxNC41MDY2NjctNTcuMDAyNjY3TDgxMC42NjY2NjcgMTY3LjIxMDY2N2MwLTkuODk4NjY3LTMuNTg0LTE3LjYyMTMzMy0xMi41MDEzMzQtMjUuNkE1NC42OTg2NjcgNTQuNjk4NjY3IDAgMCAwIDc2MS42IDEyOGwtNDk5LjYyNjY2NyAwLjQ2OTMzM2E1MS4zMjggNTEuMzI4IDAgMCAwLTM1Ljc1NDY2NiAxMy4yNjkzMzQgMzYuNTY1MzMzIDM2LjU2NTMzMyAwIDAgMC0xMi41MDEzMzQgMjEuNTA0bC0wLjQyNjY2NiA0LjY5MzMzM3oiIGZpbGw9IiMzODhEMTQiIHAtaWQ9IjI3NzkiPjwvcGF0aD48cGF0aCBkPSJNNTA2LjQ1MzMzMyA2NzQuNzMwNjY3Yzk5LjE1NzMzMyAwIDE0Ni4zNDY2NjctNDguMzg0IDE0Ni4zNDY2NjctMTI2LjAzNzMzNCAwLTcyLjg3NDY2Ny0zOC44MjY2NjctOTkuNzU0NjY3LTEwMy4zMzg2NjctMTE4LjI3MmwtMzguMjI5MzMzLTExLjk0NjY2NmMtNDAuNjE4NjY3LTExLjM0OTMzMy01Mi41NjUzMzMtMjUuMDg4LTUyLjU2NTMzMy01Ny4zNDQgMC0zMi44NTMzMzMgMjMuODkzMzMzLTUwLjc3MzMzMyA2Ni45MDEzMzMtNTAuNzczMzM0IDQ1LjM5NzMzMyAwIDc4Ljg0OCA5LjU1NzMzMyAxMDQuNTMzMzMzIDIwLjMwOTMzNFYyNzMuMzIyNjY3Yy0yMi42OTg2NjctMTEuOTQ2NjY3LTUxLjk2OC0yMi4xMDEzMzMtMTA1LjcyOC0yMi4xMDEzMzQtOTIuNTg2NjY3IDAtMTM3LjM4NjY2NyA0Ny4xODkzMzMtMTM3LjM4NjY2NiAxMTYuNDggMCA2OS4yOTA2NjcgMzUuMjQyNjY3IDEwMC4zNTIgOTMuMTg0IDExNi40OGwzOC44MjY2NjYgMTAuNzUyYzQ0LjggMTMuNzM4NjY3IDU5LjczMzMzMyAyNi44OCA1OS43MzMzMzQgNjAuOTI4IDAgMzcuMDM0NjY3LTIzLjI5NiA1OS43MzMzMzMtNzguMjUwNjY3IDU5LjczMzMzNC00NC44IDAtODMuNjI2NjY3LTEwLjc1Mi0xMTYuNDgtMjUuMDg4djU3Ljk0MTMzM2MyOC4wNzQ2NjcgMTQuOTMzMzMzIDY4LjY5MzMzMyAyNi4yODI2NjcgMTIyLjQ1MzMzMyAyNi4yODI2Njd6IiBmaWxsPSIjRkZGRkZGIiBwLWlkPSIyNzgwIj48L3BhdGg+PC9zdmc+", Re = "data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBzdGFuZGFsb25lPSJubyI/PjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCI+PHN2ZyB0PSIxNjgzNzAzMjI4MjAyIiBjbGFzcz0iaWNvbiIgdmlld0JveD0iMCAwIDEwMjQgMTAyNCIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHAtaWQ9IjMwNzgiIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB3aWR0aD0iMjAwIiBoZWlnaHQ9IjIwMCI+PHBhdGggZD0iTTE5OC4wMTYgMTA5LjczODY2N0E3Ny44NjY2NjcgNzcuODY2NjY3IDAgMCAwIDE3MC42NjY2NjcgMTY3LjY4bDAuNTEyIDQxOC45NDRjMCAyMi44NjkzMzMgNi40IDQ4IDE5LjAyOTMzMyA3NS4zMDY2NjcgMTIuNjcyIDI3LjIyMTMzMyAyNy45ODkzMzMgNDguOTM4NjY3IDQ1Ljk1MiA2NC45Mzg2NjZsMjExLjE1NzMzMyAxODguMjAyNjY3YzE3LjA2NjY2NyAxNS40ODggNDAuNTc2IDIzLjk3ODY2NyA2NC45Mzg2NjcgMjMuNTk0NjY3IDI1LjY4NTMzMy0wLjA4NTMzMyA0Ny4zNi03LjkzNiA2NC45ODEzMzMtMjMuNTk0NjY3bDIxMS4yLTE4OC4yMDI2NjdjMTcuOTItMTYgMzMuMTk0NjY3LTM3LjYzMiA0NS44NjY2NjctNjQuOTM4NjY2IDEyLjY3Mi0yNy4zMDY2NjcgMTguNzczMzMzLTUyLjIyNCAxOC41MTczMzMtNzQuOTIyNjY3TDg1My4zMzMzMzMgMTY3LjI1MzMzM2MwLTIyLjI3Mi04Ljk2LTQxLjQ3Mi0yNi44MzczMzMtNTcuNDcyLTE3LjU3ODY2Ny0xNS42MTYtMzkuMzM4NjY3LTIzLjg5MzMzMy02NC45Mzg2NjctMjQuNDA1MzMzbC00OTkuMDI5MzMzIDAuNDY5MzMzYTkzLjMxMiA5My4zMTIgMCAwIDAtNjQuNTEyIDIzLjg5MzMzNHoiIGZpbGw9IiNDODgwRkYiIHAtaWQ9IjMwNzkiPjwvcGF0aD48cGF0aCBkPSJNMTcwLjY2NjY2NyAxNjcuNjhjMC4xMjgtMjEuNzYgOS45NDEzMzMtNDIuNjY2NjY3IDI3LjM0OTMzMy01Ny45NDEzMzNhOTMuMzEyIDkzLjMxMiAwIDAgMSA2NC41MTItMjMuODkzMzM0TDc2MS41NTczMzMgODUuMzMzMzMzYzI1LjYgMC41NTQ2NjcgNDcuMzYgOC43ODkzMzMgNjQuOTM4NjY3IDI0LjQwNTMzNCAxNy45MiAxNiAyNi44MzczMzMgMzUuMiAyNi44MzczMzMgNTcuNDcybC0wLjUxMiA0MTkuODRjMC4yOTg2NjcgMjIuNjU2LTUuODQ1MzMzIDQ3LjYxNi0xOC41MTczMzMgNzQuODgtMTIuNjcyIDI3LjMwNjY2Ny0yNy45NDY2NjcgNDguOTM4NjY3LTQ1Ljg2NjY2NyA2NC45Mzg2NjZsLTIxMS4yIDE4OC4yMDI2NjdjLTE3LjYyMTMzMyAxNS42NTg2NjctMzkuMjUzMzMzIDIzLjUwOTMzMy02NC45ODEzMzMgMjMuNTk0NjY3YTk0LjcyIDk0LjcyIDAgMCAxLTY0LjkzODY2Ny0yMy41OTQ2NjdsLTIxMS4yLTE4OC4yMDI2NjdjLTE3LjkyLTE2LTMzLjIzNzMzMy0zNy43MTczMzMtNDUuOTA5MzMzLTY0LjkzODY2Ni0xMi42MjkzMzMtMjcuMzA2NjY3LTE5LjAyOTMzMy01Mi40MzczMzMtMTkuMDI5MzMzLTc1LjMwNjY2N0wxNzAuNjY2NjY3IDE2Ny42OHogbTQyLjYyNCAwLjI1NmwwLjU1NDY2NiA0MTguNjg4YzAgMTYuMTcwNjY3IDQuODY0IDM1LjMyOCAxNS4wNjEzMzQgNTcuMzQ0IDEwLjM2OCAyMi4yNzIgMjIuMzE0NjY3IDM5LjE2OCAzNS42MjY2NjYgNTEuMDI5MzMzbDIxMS40MTMzMzQgMTg4LjQxNmM4Ljk2IDguMTA2NjY3IDIxLjg4OCAxMi44IDM2LjIyNCAxMi41ODY2NjcgMTUuNTMwNjY3LTAuMDQyNjY3IDI3LjA5MzMzMy00LjI2NjY2NyAzNi42OTMzMzMtMTIuOGwyMTEuMTE0NjY3LTE4OC4xNmMxMy4zNTQ2NjctMTEuOTQ2NjY3IDI1LjMwMTMzMy0yOC44NDI2NjcgMzUuNjI2NjY2LTUxLjA3MiAxMC4xMTItMjEuNzYgMTQuNzYyNjY3LTQwLjUzMzMzMyAxNC41MDY2NjctNTcuMDAyNjY3TDgxMC42NjY2NjcgMTY3LjIxMDY2N2MwLTkuODk4NjY3LTMuNTg0LTE3LjYyMTMzMy0xMi41MDEzMzQtMjUuNkE1NC42OTg2NjcgNTQuNjk4NjY3IDAgMCAwIDc2MS42IDEyOGwtNDk5LjYyNjY2NyAwLjQ2OTMzM2E1MS4zMjggNTEuMzI4IDAgMCAwLTM1Ljc1NDY2NiAxMy4yNjkzMzQgMzYuNTY1MzMzIDM2LjU2NTMzMyAwIDAgMC0xMi41MDEzMzQgMjEuNTA0bC0wLjQyNjY2NiA0LjY5MzMzM3oiIGZpbGw9IiNBRTQ0RkYiIHAtaWQ9IjMwODAiPjwvcGF0aD48cGF0aCBkPSJNNDc1LjMwNjY2NyA2NTguMjE4NjY3aDczLjQ3MlYzMDYuMzg5MzMzaDExNi40OFYyNDguNDQ4aC0zMDcuNjI2NjY3djU3Ljk0MTMzM2gxMTcuNjc0NjY3eiIgZmlsbD0iI0ZGRkZGRiIgcC1pZD0iMzA4MSI+PC9wYXRoPjwvc3ZnPg==", { round: Ve } = fe, W = {
25
25
  // 单屏展示条目上限
26
26
  minValueSpan: 5,
27
27
  maxValueSpan: 2e3,
@@ -29,7 +29,7 @@ const Pe = "data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBzdGFuZGFsb25lPS
29
29
  loadCheckCount: 500,
30
30
  // 加载更多: 载入条目
31
31
  loadAddCount: 2e3
32
- }, _e = {
32
+ }, He = {
33
33
  1: 240,
34
34
  // 每天240根(4小时×60分钟)
35
35
  2: 48,
@@ -46,25 +46,35 @@ const Pe = "data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBzdGFuZGFsb25lPS
46
46
  // 每周1根(按5个交易日算)
47
47
  8: 0.033
48
48
  // 每月1根(按21个交易日算)
49
- }, Ie = ({ startTime: n, endTime: d, cycle: l }) => {
50
- const { maxValueSpan: u } = W, j = Math.ceil((u + 1e3) / _e[l]), A = m(n);
51
- return [m(d).diff(A, "day") <= j ? n : m(d).subtract(j, "day").format("YYYY-MM-DD HH:mm:ss"), d];
52
- }, He = (n, d) => {
53
- const l = n[d], u = d === 0 ? n[d] : n[d - 1];
54
- return l[0] === l[1] ? l[0] >= u[1] ? {
49
+ }, Ie = ({ startTime: n, endTime: y, cycle: u, type: c = "end" }) => {
50
+ const { maxValueSpan: j } = W, L = Math.ceil((j + 1e3) / He[u]), I = g(n);
51
+ if (g(y).diff(I, "day") <= L)
52
+ return [n, y];
53
+ if (c === "end")
54
+ return [g(y).subtract(L, "day").format("YYYY-MM-DD HH:mm:ss"), y];
55
+ if (c === "middle") {
56
+ const b = g((g(n).valueOf() + g(y).valueOf()) / 2).format("YYYY-MM-DD HH:mm:ss");
57
+ return console.log("超过一屏数量上限, 进行中间时间计算", b, L / 2), [
58
+ g(b).subtract(L / 2, "day").format("YYYY-MM-DD HH:mm:ss"),
59
+ g(b).add(L / 2, "day").format("YYYY-MM-DD HH:mm:ss")
60
+ ];
61
+ }
62
+ }, _e = (n, y) => {
63
+ const u = n[y], c = y === 0 ? n[y] : n[y - 1];
64
+ return u[0] === u[1] ? u[0] >= c[1] ? {
55
65
  color: "transparent",
56
66
  borderColor: "#FF0000"
57
67
  } : {
58
68
  color: "#00FFFF"
59
- } : l[1] > l[0] ? {
69
+ } : u[1] > u[0] ? {
60
70
  color: "transparent",
61
71
  borderColor: "#FF0000"
62
72
  } : {
63
73
  color: "#00FFFF"
64
74
  };
65
- }, Be = (n, d, l) => {
66
- var j, A, I, D;
67
- const u = n.subIndicator.map((e) => {
75
+ }, Be = (n, y, u) => {
76
+ var j, L, I, T;
77
+ const c = n.subIndicator.map((e) => {
68
78
  if (e.series === "bar")
69
79
  return {
70
80
  name: "subMain",
@@ -73,16 +83,16 @@ const Pe = "data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBzdGFuZGFsb25lPS
73
83
  type: "bar",
74
84
  silent: !0,
75
85
  symbol: "none",
76
- data: e.data.map((E, v) => e.seriesColor === "kline" ? {
77
- value: E,
78
- itemStyle: He(n.data, v)
86
+ data: e.data.map((b, E) => e.seriesColor === "kline" ? {
87
+ value: b,
88
+ itemStyle: _e(n.data, E)
79
89
  } : e.seriesColor === "value" ? {
80
- value: E,
90
+ value: b,
81
91
  itemStyle: {
82
- color: E >= 0 ? "#FF0000" : "#00FFFF"
92
+ color: b >= 0 ? "#FF0000" : "#00FFFF"
83
93
  }
84
94
  } : {
85
- value: E,
95
+ value: b,
86
96
  itemStyle: {
87
97
  color: e.seriesColor
88
98
  }
@@ -116,8 +126,8 @@ const Pe = "data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBzdGFuZGFsb25lPS
116
126
  dataZoom: [
117
127
  {
118
128
  type: "inside",
119
- startValue: d,
120
- endValue: l,
129
+ startValue: y,
130
+ endValue: u,
121
131
  maxValueSpan: W.maxValueSpan
122
132
  }
123
133
  ],
@@ -130,11 +140,11 @@ const Pe = "data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBzdGFuZGFsb25lPS
130
140
  label: {
131
141
  rich: {},
132
142
  formatter: (e) => {
133
- const { axisDimension: E, value: v } = e;
134
- if (E === "x")
143
+ const { axisDimension: b, value: E } = e;
144
+ if (b === "x")
135
145
  return null;
136
146
  if (e.axisIndex === 1)
137
- return String(Ve(v));
147
+ return String(Ve(E));
138
148
  }
139
149
  }
140
150
  },
@@ -158,7 +168,7 @@ const Pe = "data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBzdGFuZGFsb25lPS
158
168
  {
159
169
  position: "left",
160
170
  min: ((j = n.subIndicator[0]) == null ? void 0 : j.leftYAxisRange) === "cover" ? (e) => e.min : null,
161
- max: ((A = n.subIndicator[0]) == null ? void 0 : A.leftYAxisRange) === "cover" ? (e) => e.max : null,
171
+ max: ((L = n.subIndicator[0]) == null ? void 0 : L.leftYAxisRange) === "cover" ? (e) => e.max : null,
162
172
  splitNumber: 1,
163
173
  axisLine: {
164
174
  show: !0
@@ -174,7 +184,7 @@ const Pe = "data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBzdGFuZGFsb25lPS
174
184
  {
175
185
  position: "right",
176
186
  min: ((I = n.subIndicator[0]) == null ? void 0 : I.rightYAxisRange) === "cover" ? (e) => e.min : null,
177
- max: ((D = n.subIndicator[0]) == null ? void 0 : D.rightYAxisRange) === "cover" ? (e) => e.max : null,
187
+ max: ((T = n.subIndicator[0]) == null ? void 0 : T.rightYAxisRange) === "cover" ? (e) => e.max : null,
178
188
  splitNumber: 1,
179
189
  axisLine: {
180
190
  show: !1
@@ -187,142 +197,142 @@ const Pe = "data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBzdGFuZGFsb25lPS
187
197
  }
188
198
  }
189
199
  ],
190
- series: u
200
+ series: c
191
201
  };
192
- }, ue = (n, d, l = "strict") => {
193
- let u = 0, j = n.length - 1, A = -1;
194
- for (; u <= j; ) {
195
- let I = Math.floor((u + j) / 2);
196
- if (l === "strict") {
197
- if (n[I] === d)
202
+ }, ue = (n, y, u = "strict") => {
203
+ let c = 0, j = n.length - 1, L = -1;
204
+ for (; c <= j; ) {
205
+ let I = Math.floor((c + j) / 2);
206
+ if (u === "strict") {
207
+ if (n[I] === y)
198
208
  return I;
199
- n[I] < d ? u = I + 1 : j = I - 1;
209
+ n[I] < y ? c = I + 1 : j = I - 1;
200
210
  } else
201
- l === "gte" && (n[I] >= d ? (A = I, j = I - 1) : u = I + 1);
211
+ u === "gte" && (n[I] >= y ? (L = I, j = I - 1) : c = I + 1);
202
212
  }
203
- return l === "strict" ? -1 : A;
204
- }, Ye = (n, d) => ({
205
- data: [...n.data, ...d.data.slice(1)],
206
- mainIndicator: n.mainIndicator.map((l, u) => ({
207
- ...l,
208
- data: [...l.data, ...d.mainIndicator[u].data.slice(1)]
213
+ return u === "strict" ? -1 : L;
214
+ }, Ye = (n, y) => ({
215
+ data: [...n.data, ...y.data.slice(1)],
216
+ mainIndicator: n.mainIndicator.map((u, c) => ({
217
+ ...u,
218
+ data: [...u.data, ...y.mainIndicator[c].data.slice(1)]
209
219
  })),
210
- subIndicator: n.subIndicator.map((l, u) => ({
211
- ...l,
212
- data: [...l.data, ...d.subIndicator[u].data.slice(1)]
220
+ subIndicator: n.subIndicator.map((u, c) => ({
221
+ ...u,
222
+ data: [...u.data, ...y.subIndicator[c].data.slice(1)]
213
223
  })),
214
- time: [...n.time, ...d.time.slice(1)]
215
- }), Le = (n, d, l) => {
216
- switch (l) {
224
+ time: [...n.time, ...y.time.slice(1)]
225
+ }), Le = (n, y, u) => {
226
+ switch (u) {
217
227
  case "5": {
218
- let g = [
228
+ let Y = [
219
229
  ...new Set(
220
- n.slice(-20).map((y) => {
221
- const a = new Date(y), s = String(a.getHours()).padStart(2, "0"), Y = String(a.getMinutes()).padStart(2, "0"), b = String(a.getSeconds()).padStart(2, "0");
222
- return `${s}:${Y}:${b}`;
230
+ n.slice(-20).map((d) => {
231
+ const a = new Date(d), s = String(a.getHours()).padStart(2, "0"), m = String(a.getMinutes()).padStart(2, "0"), h = String(a.getSeconds()).padStart(2, "0");
232
+ return `${s}:${m}:${h}`;
223
233
  })
224
234
  )
225
235
  ];
226
- g.includes("00:00:00") && (g.splice(g.indexOf("00:00:00"), 1), g.push("24:00:00")), g = g.sort((y, a) => (/* @__PURE__ */ new Date(`2000-01-30 ${y}`)).getTime() - (/* @__PURE__ */ new Date(`2000-01-30 ${a}`)).getTime());
227
- const T = new Date(d), N = T.getFullYear(), r = String(T.getMonth() + 1).padStart(2, "0"), M = String(T.getDate()).padStart(2, "0"), L = String(T.getHours()).padStart(2, "0"), c = String(T.getMinutes()).padStart(2, "0"), i = String(T.getSeconds()).padStart(2, "0");
228
- if (`${L}:${c}:${i}` == "00:00:00")
229
- return `${N}-${r}-${M} 01:00:00`;
236
+ Y.includes("00:00:00") && (Y.splice(Y.indexOf("00:00:00"), 1), Y.push("24:00:00")), Y = Y.sort((d, a) => (/* @__PURE__ */ new Date(`2000-01-30 ${d}`)).getTime() - (/* @__PURE__ */ new Date(`2000-01-30 ${a}`)).getTime());
237
+ const D = new Date(y), N = D.getFullYear(), l = String(D.getMonth() + 1).padStart(2, "0"), M = String(D.getDate()).padStart(2, "0"), p = String(D.getHours()).padStart(2, "0"), r = String(D.getMinutes()).padStart(2, "0"), i = String(D.getSeconds()).padStart(2, "0");
238
+ if (`${p}:${r}:${i}` == "00:00:00")
239
+ return `${N}-${l}-${M} 01:00:00`;
230
240
  {
231
- let y = null;
232
- for (let a = 0; a < g.length; a++) {
233
- const s = g[a].split(":");
234
- if (+`${s[0]}${s[1]}${s[2]}` >= +`${L}${c}${i}`) {
235
- y = g[a];
241
+ let d = null;
242
+ for (let a = 0; a < Y.length; a++) {
243
+ const s = Y[a].split(":");
244
+ if (+`${s[0]}${s[1]}${s[2]}` >= +`${p}${r}${i}`) {
245
+ d = Y[a];
236
246
  break;
237
247
  }
238
248
  }
239
- if (y === "24:00:00") {
240
- const a = new Date(d);
249
+ if (d === "24:00:00") {
250
+ const a = new Date(y);
241
251
  a.setDate(a.getDate() + 1);
242
- const s = a.getFullYear(), Y = String(a.getMonth() + 1).padStart(2, "0"), b = String(a.getDate()).padStart(2, "0");
243
- return `${s}-${Y}-${b} 00:00:00`;
252
+ const s = a.getFullYear(), m = String(a.getMonth() + 1).padStart(2, "0"), h = String(a.getDate()).padStart(2, "0");
253
+ return `${s}-${m}-${h} 00:00:00`;
244
254
  }
245
- return `${N}-${r}-${M} ${y}`;
255
+ return `${N}-${l}-${M} ${d}`;
246
256
  }
247
257
  }
248
258
  case "6": {
249
- const g = new Date(d), T = g.getHours();
250
- if (T >= 4 && T < 21) {
251
- const N = g.getFullYear(), r = String(g.getMonth() + 1).padStart(2, "0"), M = String(g.getDate()).padStart(2, "0");
252
- return `${N}-${r}-${M} 09:00:00`;
259
+ const Y = new Date(y), D = Y.getHours();
260
+ if (D >= 4 && D < 21) {
261
+ const N = Y.getFullYear(), l = String(Y.getMonth() + 1).padStart(2, "0"), M = String(Y.getDate()).padStart(2, "0");
262
+ return `${N}-${l}-${M} 09:00:00`;
253
263
  } else {
254
- const N = new Date(d);
264
+ const N = new Date(y);
255
265
  N.getHours() >= 21 && N.setDate(N.getDate() + 1);
256
- const r = N.getFullYear(), M = String(N.getMonth() + 1).padStart(2, "0"), L = String(N.getDate()).padStart(2, "0"), c = `${r}-${M}-${L} 09:00:00`, i = ue(n, c, "gte");
257
- return i === -1 ? c : n[i];
266
+ const l = N.getFullYear(), M = String(N.getMonth() + 1).padStart(2, "0"), p = String(N.getDate()).padStart(2, "0"), r = `${l}-${M}-${p} 09:00:00`, i = ue(n, r, "gte");
267
+ return i === -1 ? r : n[i];
258
268
  }
259
269
  }
260
270
  case "7": {
261
- const g = new Date(d), T = new Date(g);
262
- T.setDate(g.getDate() - g.getDay()), T.setHours(0, 0, 0, 0);
263
- const N = new Date(T);
264
- N.setDate(T.getDate() + 5), N.setHours(23, 59, 59, 0);
265
- const r = new Date(T);
266
- r.setDate(T.getDate() + 12), r.setHours(9, 0, 0, 0);
267
- const M = g <= N ? N : r, L = M.getFullYear(), c = String(M.getMonth() + 1).padStart(2, "0"), i = String(M.getDate()).padStart(2, "0");
268
- return `${L}-${c}-${i} 09:00:00`;
271
+ const Y = new Date(y), D = new Date(Y);
272
+ D.setDate(Y.getDate() - Y.getDay()), D.setHours(0, 0, 0, 0);
273
+ const N = new Date(D);
274
+ N.setDate(D.getDate() + 5), N.setHours(23, 59, 59, 0);
275
+ const l = new Date(D);
276
+ l.setDate(D.getDate() + 12), l.setHours(9, 0, 0, 0);
277
+ const M = Y <= N ? N : l, p = M.getFullYear(), r = String(M.getMonth() + 1).padStart(2, "0"), i = String(M.getDate()).padStart(2, "0");
278
+ return `${p}-${r}-${i} 09:00:00`;
269
279
  }
270
280
  case "8": {
271
- const g = new Date(d), T = new Date(g.getFullYear(), g.getMonth() + 1, 1), N = new Date(T);
272
- N.setDate(T.getDate() - 1), N.setHours(9, 0, 0, 0);
273
- const r = N.getFullYear(), M = String(N.getMonth() + 1).padStart(2, "0"), L = String(N.getDate()).padStart(2, "0");
274
- return `${r}-${M}-${L} 09:00:00`;
281
+ const Y = new Date(y), D = new Date(Y.getFullYear(), Y.getMonth() + 1, 1), N = new Date(D);
282
+ N.setDate(D.getDate() - 1), N.setHours(9, 0, 0, 0);
283
+ const l = N.getFullYear(), M = String(N.getMonth() + 1).padStart(2, "0"), p = String(N.getDate()).padStart(2, "0");
284
+ return `${l}-${M}-${p} 09:00:00`;
275
285
  }
276
286
  }
277
- const u = new Date(d), j = u.getFullYear(), A = u.getMonth(), I = u.getDate(), D = u.getHours(), e = u.getMinutes(), E = u.getSeconds(), v = (g) => {
278
- let T = null;
279
- const N = Math.floor(e / g);
280
- e % g === 0 && E === 0 ? T = e : T = (N + 1) * g;
281
- const r = Math.floor(T / 60), M = D + r, L = T % 60, c = new Date(j, A, I, M, L, 0), i = (S) => String(S).padStart(2, "0"), y = c.getFullYear(), a = i(c.getMonth() + 1), s = i(c.getDate()), Y = i(c.getHours()), b = i(c.getMinutes());
282
- return `${y}-${a}-${s} ${Y}:${b}:00`;
287
+ const c = new Date(y), j = c.getFullYear(), L = c.getMonth(), I = c.getDate(), T = c.getHours(), e = c.getMinutes(), b = c.getSeconds(), E = (Y) => {
288
+ let D = null;
289
+ const N = Math.floor(e / Y);
290
+ e % Y === 0 && b === 0 ? D = e : D = (N + 1) * Y;
291
+ const l = Math.floor(D / 60), M = T + l, p = D % 60, r = new Date(j, L, I, M, p, 0), i = (S) => String(S).padStart(2, "0"), d = r.getFullYear(), a = i(r.getMonth() + 1), s = i(r.getDate()), m = i(r.getHours()), h = i(r.getMinutes());
292
+ return `${d}-${a}-${s} ${m}:${h}:00`;
283
293
  };
284
- switch (l) {
294
+ switch (u) {
285
295
  case "1":
286
- return v(1);
296
+ return E(1);
287
297
  case "2":
288
- return v(5);
298
+ return E(5);
289
299
  case "3":
290
- return v(15);
300
+ return E(15);
291
301
  case "4":
292
- return v(30);
302
+ return E(30);
293
303
  default:
294
- throw new Error(`Unsupported cycle: ${d} ${l}`);
304
+ throw new Error(`Unsupported cycle: ${y} ${u}`);
295
305
  }
296
- }, re = (n, d, l) => {
297
- let u = null, j = null;
298
- const [A, I] = d;
299
- switch (l) {
306
+ }, ce = (n, y, u) => {
307
+ let c = null, j = null;
308
+ const [L, I] = y;
309
+ switch (u) {
300
310
  case "6": {
301
- u = n.find((D) => new Date(m(D).format("YYYY-MM-DD 23:59:59")).getTime() >= new Date(A).getTime()), j = n.findLast((D) => new Date(m(D).format("YYYY-MM-DD 00:00:00")).getTime() <= new Date(I).getTime());
311
+ c = n.find((T) => new Date(g(T).format("YYYY-MM-DD 23:59:59")).getTime() >= new Date(L).getTime()), j = n.findLast((T) => new Date(g(T).format("YYYY-MM-DD 00:00:00")).getTime() <= new Date(I).getTime());
302
312
  break;
303
313
  }
304
314
  case "7": {
305
- const D = m(I).endOf("week").add(1, "day").format("YYYY-MM-DD 23:59:59");
306
- u = n.find((e) => m(e).endOf("week").add(1, "day").format("YYYY-MM-DD") === m(A).endOf("week").add(1, "day").format("YYYY-MM-DD")), j = n.findLast((e) => new Date(e).getTime() <= new Date(D).getTime());
315
+ const T = g(I).endOf("week").add(1, "day").format("YYYY-MM-DD 23:59:59");
316
+ c = n.find((e) => g(e).endOf("week").add(1, "day").format("YYYY-MM-DD") === g(L).endOf("week").add(1, "day").format("YYYY-MM-DD")), j = n.findLast((e) => new Date(e).getTime() <= new Date(T).getTime());
307
317
  break;
308
318
  }
309
319
  case "8": {
310
- u = n.find((D) => m(D).format("YYYY-MM") === m(A).format("YYYY-MM")), j = n.findLast((D) => m(D).format("YYYY-MM") === m(I).format("YYYY-MM"));
320
+ c = n.find((T) => g(T).format("YYYY-MM") === g(L).format("YYYY-MM")), j = n.findLast((T) => g(T).format("YYYY-MM") === g(I).format("YYYY-MM"));
311
321
  break;
312
322
  }
313
323
  default:
314
- u = n.find((D) => new Date(D).getTime() >= new Date(A).getTime()), j = n.findLast((D) => new Date(D).getTime() <= new Date(I).getTime());
324
+ c = n.find((T) => new Date(T).getTime() >= new Date(L).getTime()), j = n.findLast((T) => new Date(T).getTime() <= new Date(I).getTime());
315
325
  }
316
- return [u, j];
326
+ return [c, j];
317
327
  }, Ze = (n) => {
318
- const d = [];
319
- return n.reduce((l, u) => {
320
- const j = `${u.coord[0]}+${u.label.position}`, A = u.label.position === "top" ? -16 : 16, I = l.get(j);
321
- return I ? (l.set(j, I + 1), u.symbolOffset[1] = A * (I + 1)) : (l.set(j, 1), u.symbolOffset[1] = u.label.position === "top" ? -7 : 7), d.push(u), l;
322
- }, /* @__PURE__ */ new Map()), d;
323
- }, Ge = (n, d, l, u, j) => {
324
- const A = (T, N) => {
325
- const { direction: r = "", tradeAction: M = "", tradeType: L = "" } = T, c = L ?? r + M;
328
+ const y = [];
329
+ return n.reduce((u, c) => {
330
+ const j = `${c.coord[0]}+${c.label.position}`, L = c.label.position === "top" ? -16 : 16, I = u.get(j);
331
+ return I ? (u.set(j, I + 1), c.symbolOffset[1] = L * (I + 1)) : (u.set(j, 1), c.symbolOffset[1] = c.label.position === "top" ? -7 : 7), y.push(c), u;
332
+ }, /* @__PURE__ */ new Map()), y;
333
+ }, Ge = (n, y, u, c, j) => {
334
+ const L = (D, N) => {
335
+ const { direction: l = "", tradeAction: M = "", tradeType: p = "" } = D, r = p ?? l + M;
326
336
  switch (N) {
327
337
  case 0:
328
338
  return (/* @__PURE__ */ new Map([
@@ -330,21 +340,21 @@ const Pe = "data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBzdGFuZGFsb25lPS
330
340
  ["平多", "卖"],
331
341
  ["开空", "卖"],
332
342
  ["平空", "买"]
333
- ])).get(c);
343
+ ])).get(r);
334
344
  case 1:
335
- return L ?? r + M;
345
+ return p ?? l + M;
336
346
  }
337
- }, I = (T, N, r, M) => T.reduce((L, c) => {
347
+ }, I = (D, N, l, M) => D.reduce((p, r) => {
338
348
  var S;
339
- const i = A(c, 0), y = T.filter((U) => U.klineTime === c.klineTime), a = [...new Set(y.map((U) => A(U, 0)))];
349
+ const i = L(r, 0), d = D.filter((U) => U.klineTime === r.klineTime), a = [...new Set(d.map((U) => L(U, 0)))];
340
350
  let s = null;
341
- a.length > 1 ? s = "image://" + new URL("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBzdGFuZGFsb25lPSJubyI/PjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCI+PHN2ZyB0PSIxNjgzNzAzMjI4MjAyIiBjbGFzcz0iaWNvbiIgdmlld0JveD0iMCAwIDEwMjQgMTAyNCIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHAtaWQ9IjMwNzgiIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB3aWR0aD0iMjAwIiBoZWlnaHQ9IjIwMCI+PHBhdGggZD0iTTE5OC4wMTYgMTA5LjczODY2N0E3Ny44NjY2NjcgNzcuODY2NjY3IDAgMCAwIDE3MC42NjY2NjcgMTY3LjY4bDAuNTEyIDQxOC45NDRjMCAyMi44NjkzMzMgNi40IDQ4IDE5LjAyOTMzMyA3NS4zMDY2NjcgMTIuNjcyIDI3LjIyMTMzMyAyNy45ODkzMzMgNDguOTM4NjY3IDQ1Ljk1MiA2NC45Mzg2NjZsMjExLjE1NzMzMyAxODguMjAyNjY3YzE3LjA2NjY2NyAxNS40ODggNDAuNTc2IDIzLjk3ODY2NyA2NC45Mzg2NjcgMjMuNTk0NjY3IDI1LjY4NTMzMy0wLjA4NTMzMyA0Ny4zNi03LjkzNiA2NC45ODEzMzMtMjMuNTk0NjY3bDIxMS4yLTE4OC4yMDI2NjdjMTcuOTItMTYgMzMuMTk0NjY3LTM3LjYzMiA0NS44NjY2NjctNjQuOTM4NjY2IDEyLjY3Mi0yNy4zMDY2NjcgMTguNzczMzMzLTUyLjIyNCAxOC41MTczMzMtNzQuOTIyNjY3TDg1My4zMzMzMzMgMTY3LjI1MzMzM2MwLTIyLjI3Mi04Ljk2LTQxLjQ3Mi0yNi44MzczMzMtNTcuNDcyLTE3LjU3ODY2Ny0xNS42MTYtMzkuMzM4NjY3LTIzLjg5MzMzMy02NC45Mzg2NjctMjQuNDA1MzMzbC00OTkuMDI5MzMzIDAuNDY5MzMzYTkzLjMxMiA5My4zMTIgMCAwIDAtNjQuNTEyIDIzLjg5MzMzNHoiIGZpbGw9IiNDODgwRkYiIHAtaWQ9IjMwNzkiPjwvcGF0aD48cGF0aCBkPSJNMTcwLjY2NjY2NyAxNjcuNjhjMC4xMjgtMjEuNzYgOS45NDEzMzMtNDIuNjY2NjY3IDI3LjM0OTMzMy01Ny45NDEzMzNhOTMuMzEyIDkzLjMxMiAwIDAgMSA2NC41MTItMjMuODkzMzM0TDc2MS41NTczMzMgODUuMzMzMzMzYzI1LjYgMC41NTQ2NjcgNDcuMzYgOC43ODkzMzMgNjQuOTM4NjY3IDI0LjQwNTMzNCAxNy45MiAxNiAyNi44MzczMzMgMzUuMiAyNi44MzczMzMgNTcuNDcybC0wLjUxMiA0MTkuODRjMC4yOTg2NjcgMjIuNjU2LTUuODQ1MzMzIDQ3LjYxNi0xOC41MTczMzMgNzQuODgtMTIuNjcyIDI3LjMwNjY2Ny0yNy45NDY2NjcgNDguOTM4NjY3LTQ1Ljg2NjY2NyA2NC45Mzg2NjZsLTIxMS4yIDE4OC4yMDI2NjdjLTE3LjYyMTMzMyAxNS42NTg2NjctMzkuMjUzMzMzIDIzLjUwOTMzMy02NC45ODEzMzMgMjMuNTk0NjY3YTk0LjcyIDk0LjcyIDAgMCAxLTY0LjkzODY2Ny0yMy41OTQ2NjdsLTIxMS4yLTE4OC4yMDI2NjdjLTE3LjkyLTE2LTMzLjIzNzMzMy0zNy43MTczMzMtNDUuOTA5MzMzLTY0LjkzODY2Ni0xMi42MjkzMzMtMjcuMzA2NjY3LTE5LjAyOTMzMy01Mi40MzczMzMtMTkuMDI5MzMzLTc1LjMwNjY2N0wxNzAuNjY2NjY3IDE2Ny42OHogbTQyLjYyNCAwLjI1NmwwLjU1NDY2NiA0MTguNjg4YzAgMTYuMTcwNjY3IDQuODY0IDM1LjMyOCAxNS4wNjEzMzQgNTcuMzQ0IDEwLjM2OCAyMi4yNzIgMjIuMzE0NjY3IDM5LjE2OCAzNS42MjY2NjYgNTEuMDI5MzMzbDIxMS40MTMzMzQgMTg4LjQxNmM4Ljk2IDguMTA2NjY3IDIxLjg4OCAxMi44IDM2LjIyNCAxMi41ODY2NjcgMTUuNTMwNjY3LTAuMDQyNjY3IDI3LjA5MzMzMy00LjI2NjY2NyAzNi42OTMzMzMtMTIuOGwyMTEuMTE0NjY3LTE4OC4xNmMxMy4zNTQ2NjctMTEuOTQ2NjY3IDI1LjMwMTMzMy0yOC44NDI2NjcgMzUuNjI2NjY2LTUxLjA3MiAxMC4xMTItMjEuNzYgMTQuNzYyNjY3LTQwLjUzMzMzMyAxNC41MDY2NjctNTcuMDAyNjY3TDgxMC42NjY2NjcgMTY3LjIxMDY2N2MwLTkuODk4NjY3LTMuNTg0LTE3LjYyMTMzMy0xMi41MDEzMzQtMjUuNkE1NC42OTg2NjcgNTQuNjk4NjY3IDAgMCAwIDc2MS42IDEyOGwtNDk5LjYyNjY2NyAwLjQ2OTMzM2E1MS4zMjggNTEuMzI4IDAgMCAwLTM1Ljc1NDY2NiAxMy4yNjkzMzQgMzYuNTY1MzMzIDM2LjU2NTMzMyAwIDAgMC0xMi41MDEzMzQgMjEuNTA0bC0wLjQyNjY2NiA0LjY5MzMzM3oiIGZpbGw9IiNBRTQ0RkYiIHAtaWQ9IjMwODAiPjwvcGF0aD48cGF0aCBkPSJNNDc1LjMwNjY2NyA2NTguMjE4NjY3aDczLjQ3MlYzMDYuMzg5MzMzaDExNi40OFYyNDguNDQ4aC0zMDcuNjI2NjY3djU3Ljk0MTMzM2gxMTcuNjc0NjY3eiIgZmlsbD0iI0ZGRkZGRiIgcC1pZD0iMzA4MSI+PC9wYXRoPjwvc3ZnPg==", self.location).href : s = "image://" + new URL((/* @__PURE__ */ Object.assign({ "./images/buy.svg": Pe, "./images/sell.svg": Re, "./images/t.svg": Fe }))[`./images/${i === "买" ? "buy" : "sell"}.svg`], self.location).href;
342
- const Y = ue(r, c.klineTime), b = (S = M[Y]) == null ? void 0 : S[3];
351
+ a.length > 1 ? s = "image://" + new URL("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBzdGFuZGFsb25lPSJubyI/PjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCI+PHN2ZyB0PSIxNjgzNzAzMjI4MjAyIiBjbGFzcz0iaWNvbiIgdmlld0JveD0iMCAwIDEwMjQgMTAyNCIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHAtaWQ9IjMwNzgiIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB3aWR0aD0iMjAwIiBoZWlnaHQ9IjIwMCI+PHBhdGggZD0iTTE5OC4wMTYgMTA5LjczODY2N0E3Ny44NjY2NjcgNzcuODY2NjY3IDAgMCAwIDE3MC42NjY2NjcgMTY3LjY4bDAuNTEyIDQxOC45NDRjMCAyMi44NjkzMzMgNi40IDQ4IDE5LjAyOTMzMyA3NS4zMDY2NjcgMTIuNjcyIDI3LjIyMTMzMyAyNy45ODkzMzMgNDguOTM4NjY3IDQ1Ljk1MiA2NC45Mzg2NjZsMjExLjE1NzMzMyAxODguMjAyNjY3YzE3LjA2NjY2NyAxNS40ODggNDAuNTc2IDIzLjk3ODY2NyA2NC45Mzg2NjcgMjMuNTk0NjY3IDI1LjY4NTMzMy0wLjA4NTMzMyA0Ny4zNi03LjkzNiA2NC45ODEzMzMtMjMuNTk0NjY3bDIxMS4yLTE4OC4yMDI2NjdjMTcuOTItMTYgMzMuMTk0NjY3LTM3LjYzMiA0NS44NjY2NjctNjQuOTM4NjY2IDEyLjY3Mi0yNy4zMDY2NjcgMTguNzczMzMzLTUyLjIyNCAxOC41MTczMzMtNzQuOTIyNjY3TDg1My4zMzMzMzMgMTY3LjI1MzMzM2MwLTIyLjI3Mi04Ljk2LTQxLjQ3Mi0yNi44MzczMzMtNTcuNDcyLTE3LjU3ODY2Ny0xNS42MTYtMzkuMzM4NjY3LTIzLjg5MzMzMy02NC45Mzg2NjctMjQuNDA1MzMzbC00OTkuMDI5MzMzIDAuNDY5MzMzYTkzLjMxMiA5My4zMTIgMCAwIDAtNjQuNTEyIDIzLjg5MzMzNHoiIGZpbGw9IiNDODgwRkYiIHAtaWQ9IjMwNzkiPjwvcGF0aD48cGF0aCBkPSJNMTcwLjY2NjY2NyAxNjcuNjhjMC4xMjgtMjEuNzYgOS45NDEzMzMtNDIuNjY2NjY3IDI3LjM0OTMzMy01Ny45NDEzMzNhOTMuMzEyIDkzLjMxMiAwIDAgMSA2NC41MTItMjMuODkzMzM0TDc2MS41NTczMzMgODUuMzMzMzMzYzI1LjYgMC41NTQ2NjcgNDcuMzYgOC43ODkzMzMgNjQuOTM4NjY3IDI0LjQwNTMzNCAxNy45MiAxNiAyNi44MzczMzMgMzUuMiAyNi44MzczMzMgNTcuNDcybC0wLjUxMiA0MTkuODRjMC4yOTg2NjcgMjIuNjU2LTUuODQ1MzMzIDQ3LjYxNi0xOC41MTczMzMgNzQuODgtMTIuNjcyIDI3LjMwNjY2Ny0yNy45NDY2NjcgNDguOTM4NjY3LTQ1Ljg2NjY2NyA2NC45Mzg2NjZsLTIxMS4yIDE4OC4yMDI2NjdjLTE3LjYyMTMzMyAxNS42NTg2NjctMzkuMjUzMzMzIDIzLjUwOTMzMy02NC45ODEzMzMgMjMuNTk0NjY3YTk0LjcyIDk0LjcyIDAgMCAxLTY0LjkzODY2Ny0yMy41OTQ2NjdsLTIxMS4yLTE4OC4yMDI2NjdjLTE3LjkyLTE2LTMzLjIzNzMzMy0zNy43MTczMzMtNDUuOTA5MzMzLTY0LjkzODY2Ni0xMi42MjkzMzMtMjcuMzA2NjY3LTE5LjAyOTMzMy01Mi40MzczMzMtMTkuMDI5MzMzLTc1LjMwNjY2N0wxNzAuNjY2NjY3IDE2Ny42OHogbTQyLjYyNCAwLjI1NmwwLjU1NDY2NiA0MTguNjg4YzAgMTYuMTcwNjY3IDQuODY0IDM1LjMyOCAxNS4wNjEzMzQgNTcuMzQ0IDEwLjM2OCAyMi4yNzIgMjIuMzE0NjY3IDM5LjE2OCAzNS42MjY2NjYgNTEuMDI5MzMzbDIxMS40MTMzMzQgMTg4LjQxNmM4Ljk2IDguMTA2NjY3IDIxLjg4OCAxMi44IDM2LjIyNCAxMi41ODY2NjcgMTUuNTMwNjY3LTAuMDQyNjY3IDI3LjA5MzMzMy00LjI2NjY2NyAzNi42OTMzMzMtMTIuOGwyMTEuMTE0NjY3LTE4OC4xNmMxMy4zNTQ2NjctMTEuOTQ2NjY3IDI1LjMwMTMzMy0yOC44NDI2NjcgMzUuNjI2NjY2LTUxLjA3MiAxMC4xMTItMjEuNzYgMTQuNzYyNjY3LTQwLjUzMzMzMyAxNC41MDY2NjctNTcuMDAyNjY3TDgxMC42NjY2NjcgMTY3LjIxMDY2N2MwLTkuODk4NjY3LTMuNTg0LTE3LjYyMTMzMy0xMi41MDEzMzQtMjUuNkE1NC42OTg2NjcgNTQuNjk4NjY3IDAgMCAwIDc2MS42IDEyOGwtNDk5LjYyNjY2NyAwLjQ2OTMzM2E1MS4zMjggNTEuMzI4IDAgMCAwLTM1Ljc1NDY2NiAxMy4yNjkzMzQgMzYuNTY1MzMzIDM2LjU2NTMzMyAwIDAgMC0xMi41MDEzMzQgMjEuNTA0bC0wLjQyNjY2NiA0LjY5MzMzM3oiIGZpbGw9IiNBRTQ0RkYiIHAtaWQ9IjMwODAiPjwvcGF0aD48cGF0aCBkPSJNNDc1LjMwNjY2NyA2NTguMjE4NjY3aDczLjQ3MlYzMDYuMzg5MzMzaDExNi40OFYyNDguNDQ4aC0zMDcuNjI2NjY3djU3Ljk0MTMzM2gxMTcuNjc0NjY3eiIgZmlsbD0iI0ZGRkZGRiIgcC1pZD0iMzA4MSI+PC9wYXRoPjwvc3ZnPg==", self.location).href : s = "image://" + new URL((/* @__PURE__ */ Object.assign({ "./images/buy.svg": Ue, "./images/sell.svg": Fe, "./images/t.svg": Re }))[`./images/${i === "买" ? "buy" : "sell"}.svg`], self.location).href;
352
+ const m = ue(l, r.klineTime), h = (S = M[m]) == null ? void 0 : S[3];
343
353
  return N.forEach((U) => {
344
- var H;
354
+ var _;
345
355
  const K = i === "买" ? 0 : 1;
346
- U.range[K] === c.klineTime && (U.rangeValue[K] = (H = M[Y]) == null ? void 0 : H[i === "买" ? 2 : 3]);
347
- }), L.push({
356
+ U.range[K] === r.klineTime && (U.rangeValue[K] = (_ = M[m]) == null ? void 0 : _[i === "买" ? 2 : 3]);
357
+ }), p.push({
348
358
  symbol: s,
349
359
  symbolSize: 25,
350
360
  symbolRotate: 0,
@@ -353,29 +363,29 @@ const Pe = "data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBzdGFuZGFsb25lPS
353
363
  show: !1,
354
364
  position: "top"
355
365
  },
356
- coord: [c.klineTime, b],
366
+ coord: [r.klineTime, h],
357
367
  silent: !0,
358
368
  animation: !1,
359
369
  customData: {
360
370
  tradeType: i,
361
- amount: c.amount,
371
+ amount: r.amount,
362
372
  // 手数
363
- part: c.part,
373
+ part: r.part,
364
374
  // 份数
365
- profitAndLoss: c.profitAndLoss,
375
+ profitAndLoss: r.profitAndLoss,
366
376
  // 盈亏
367
- openPriceAll: c.openPriceAll,
377
+ openPriceAll: r.openPriceAll,
368
378
  // 开仓价
369
- closePriceAll: c.closePriceAll
379
+ closePriceAll: r.closePriceAll
370
380
  // 收仓价
371
381
  }
372
- }), L;
373
- }, []), D = (T, N, r, M) => T.reduce((L, c, i) => {
374
- var b, S;
375
- const y = A(c, 1), a = ["开多", "开空"].includes(y) ? "top" : "bottom", s = ue(r, c.klineTime), Y = a === "top" ? (b = M[s]) == null ? void 0 : b[3] : (S = M[s]) == null ? void 0 : S[2];
382
+ }), p;
383
+ }, []), T = (D, N, l, M) => D.reduce((p, r, i) => {
384
+ var h, S;
385
+ const d = L(r, 1), a = ["开多", "开空"].includes(d) ? "top" : "bottom", s = ue(l, r.klineTime), m = a === "top" ? (h = M[s]) == null ? void 0 : h[3] : (S = M[s]) == null ? void 0 : S[2];
376
386
  return N.forEach((U) => {
377
- (a === "top" ? U.range[0] : U.range[1]) === c.klineTime && (U.rangeValue[a === "top" ? 0 : 1] = Y);
378
- }), L.push({
387
+ (a === "top" ? U.range[0] : U.range[1]) === r.klineTime && (U.rangeValue[a === "top" ? 0 : 1] = m);
388
+ }), p.push({
379
389
  symbol: "triangle",
380
390
  symbolSize: [10, 12],
381
391
  symbolRotate: a === "top" ? 180 : 0,
@@ -384,33 +394,33 @@ const Pe = "data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBzdGFuZGFsb25lPS
384
394
  show: !0,
385
395
  position: a,
386
396
  color: "#fff",
387
- formatter: `${y} ${a === "top" ? "+" : "-"} ${c.amount}手 ${c.part ? `(${c.part}份)` : ""}`
397
+ formatter: `${d} ${a === "top" ? "+" : "-"} ${r.amount}手 ${r.part ? `(${r.part}份)` : ""}`
388
398
  },
389
399
  itemStyle: { color: a === "top" ? "#FF0000" : "#389e0d" },
390
- coord: [c.klineTime, Y],
400
+ coord: [r.klineTime, m],
391
401
  silent: !0,
392
402
  animation: !1,
393
403
  customData: {
394
- tradeType: y,
395
- amount: c.amount,
404
+ tradeType: d,
405
+ amount: r.amount,
396
406
  // 手数
397
- part: c.part,
407
+ part: r.part,
398
408
  // 份数
399
- profitAndLoss: c.profitAndLoss,
409
+ profitAndLoss: r.profitAndLoss,
400
410
  // 盈亏
401
- openPriceAll: c.openPriceAll,
411
+ openPriceAll: r.openPriceAll,
402
412
  // 开仓价
403
- closePriceAll: c.closePriceAll
413
+ closePriceAll: r.closePriceAll
404
414
  // 收仓价
405
415
  }
406
- }), L;
407
- }, []), e = (T, N, r) => {
408
- const { basePointData: M, baseLineData: L } = T.reduce(
416
+ }), p;
417
+ }, []), e = (D, N, l) => {
418
+ const { basePointData: M, baseLineData: p } = D.reduce(
409
419
  (a, s) => {
410
- const Y = {
420
+ const m = {
411
421
  pointTime: s.openTime,
412
422
  // 交易点位的真实时间
413
- klineTime: Le(r, s.openTime, N),
423
+ klineTime: Le(l, s.openTime, N),
414
424
  // 交易点位的K线时间
415
425
  tradeAction: "开",
416
426
  // 交易行为
@@ -427,10 +437,10 @@ const Pe = "data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBzdGFuZGFsb25lPS
427
437
  // 开仓价格
428
438
  closePriceAll: s.closePrice * s.tradeVolume
429
439
  // 平仓价格
430
- }, b = {
440
+ }, h = {
431
441
  pointTime: s.closeTime,
432
442
  // 交易点位的真实时间
433
- klineTime: Le(r, s.closeTime, N),
443
+ klineTime: Le(l, s.closeTime, N),
434
444
  // 交易点位的K线时间
435
445
  tradeAction: "平",
436
446
  // 交易行为
@@ -448,10 +458,10 @@ const Pe = "data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBzdGFuZGFsb25lPS
448
458
  closePriceAll: s.closePrice * s.tradeVolume
449
459
  // 平仓价格
450
460
  };
451
- return a.basePointData.push(Y, b), a.baseLineData.push({
452
- range: [Y.klineTime, b.klineTime],
461
+ return a.basePointData.push(m, h), a.baseLineData.push({
462
+ range: [m.klineTime, h.klineTime],
453
463
  rangeValue: [null, null],
454
- color: b.profitAndLoss > 0 ? "#FF0000" : "#389e0d"
464
+ color: h.profitAndLoss > 0 ? "#FF0000" : "#389e0d"
455
465
  }), a;
456
466
  },
457
467
  {
@@ -461,46 +471,46 @@ const Pe = "data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBzdGFuZGFsb25lPS
461
471
  // 连线数据
462
472
  }
463
473
  ), i = [...M.reduce((a, s) => {
464
- const Y = JSON.parse(JSON.stringify(s)), b = Y.klineTime + Y.tradeType;
465
- if (a.has(b)) {
466
- const S = a.get(b);
467
- Y.amount += S.amount, Y.part += S.part, Y.profitAndLoss += S.profitAndLoss, Y.openPriceAll += S.openPriceAll, Y.closePriceAll += S.closePriceAll;
474
+ const m = JSON.parse(JSON.stringify(s)), h = m.klineTime + m.tradeType;
475
+ if (a.has(h)) {
476
+ const S = a.get(h);
477
+ m.amount += S.amount, m.part += S.part, m.profitAndLoss += S.profitAndLoss, m.openPriceAll += S.openPriceAll, m.closePriceAll += S.closePriceAll;
468
478
  }
469
- return a.set(b, Y), a;
470
- }, /* @__PURE__ */ new Map([])).values()].sort((a, s) => new Date(a.klineTime) - new Date(s.klineTime)), y = L.filter(({ range: a }) => a[0] !== a[1]);
471
- return { pointData: i, lineData: y };
472
- }, { pointData: E, lineData: v } = e(n, d, u);
479
+ return a.set(h, m), a;
480
+ }, /* @__PURE__ */ new Map([])).values()].sort((a, s) => new Date(a.klineTime) - new Date(s.klineTime)), d = p.filter(({ range: a }) => a[0] !== a[1]);
481
+ return { pointData: i, lineData: d };
482
+ }, { pointData: b, lineData: E } = e(n, y, c);
473
483
  return {
474
- tradePointData: (l === 0 ? I : D)(E, v, u, j),
475
- tradeLineData: v.map(({ range: T, rangeValue: N, color: r }) => [
484
+ tradePointData: (u === 0 ? I : T)(b, E, c, j),
485
+ tradeLineData: E.map(({ range: D, rangeValue: N, color: l }) => [
476
486
  {
477
487
  symbol: "none",
478
- coord: [T[0], N[0]],
479
- lineStyle: { color: r, width: 2, type: "solid" },
488
+ coord: [D[0], N[0]],
489
+ lineStyle: { color: l, width: 2, type: "solid" },
480
490
  silent: !0,
481
491
  animation: !1
482
492
  },
483
493
  {
484
494
  symbol: "none",
485
- coord: [T[1], N[1]],
495
+ coord: [D[1], N[1]],
486
496
  silent: !0,
487
497
  animation: !1
488
498
  }
489
499
  ])
490
500
  };
491
- }, $e = (n, d) => {
492
- let l = [];
493
- if (Number(d) <= 5)
494
- l = n.map(({ tradeDate: u, netPositionValue: j }) => [m(u).format("YYYY-MM-DD HH:mm:ss"), j]);
495
- else if (Number(d) === 6) {
496
- const u = n.reduce((j, A) => {
497
- const { tradeDate: I, netPositionValue: D } = A;
498
- return j.set(m(I).format("YYYY-MM-DD 09:00:00"), D), j;
501
+ }, $e = (n, y) => {
502
+ let u = [];
503
+ if (Number(y) <= 5)
504
+ u = n.map(({ tradeDate: c, netPositionValue: j }) => [g(c).format("YYYY-MM-DD HH:mm:ss"), j]);
505
+ else if (Number(y) === 6) {
506
+ const c = n.reduce((j, L) => {
507
+ const { tradeDate: I, netPositionValue: T } = L;
508
+ return j.set(g(I).format("YYYY-MM-DD 09:00:00"), T), j;
499
509
  }, /* @__PURE__ */ new Map());
500
- l = Array.from(u, ([j, A]) => [j, A]);
510
+ u = Array.from(c, ([j, L]) => [j, L]);
501
511
  } else
502
- l = [];
503
- return { netPositionLineData: l };
512
+ u = [];
513
+ return { netPositionLineData: u };
504
514
  };
505
515
  const We = { class: "tips" }, Je = {
506
516
  __name: "Tips",
@@ -511,12 +521,12 @@ const We = { class: "tips" }, Je = {
511
521
  }
512
522
  },
513
523
  setup(n) {
514
- return (d, l) => (R(), _("div", We, [
515
- (R(!0), _(me, null, Ae(n.data, (u, j) => (R(), _("span", {
524
+ return (y, u) => (R(), H("div", We, [
525
+ (R(!0), H(me, null, Ae(n.data, (c, j) => (R(), H("span", {
516
526
  key: j,
517
527
  class: "item",
518
- style: Ee({ color: u.color })
519
- }, Me(u.label) + " " + Me(u.value), 5))), 128))
528
+ style: ve({ color: c.color })
529
+ }, Me(c.label) + " " + Me(c.value), 5))), 128))
520
530
  ]));
521
531
  }
522
532
  }, le = /* @__PURE__ */ je(Je, [["__scopeId", "data-v-df1caefe"]]);
@@ -532,60 +542,65 @@ const Ke = {
532
542
  // 复权选项 [股票]
533
543
  rightType: { type: Number, required: !0 },
534
544
  // 常用选项 [期货]
535
- klineType: { type: Number, required: !0 }
545
+ klineType: { type: Number, required: !0 },
546
+ // 业务系统相关
547
+ deleteFirstNumber: { type: Number, default: 1 },
548
+ // 绩效标记
549
+ withoutPermission: { type: Number, default: 0 }
550
+ // 三方标记(不需要token授权)
536
551
  },
537
552
  emits: ["change"],
538
- setup(n, { expose: d, emit: l }) {
539
- const { request: u } = xe("stConfig");
553
+ setup(n, { expose: y, emit: u }) {
554
+ const { request: c } = we("stConfig");
540
555
  let j = null;
541
- const A = P(null), I = l, D = n, e = P({
556
+ const L = F(null), I = u, T = n, e = F({
542
557
  data: [],
543
558
  // <[开 收 低 高 成交额 涨跌值 涨跌百分比]>
544
559
  mainIndicator: [],
545
560
  subIndicator: [],
546
561
  time: []
547
- }), E = async () => {
562
+ }), b = async () => {
548
563
  const N = {
549
- varietyCode: D.varietyCode,
564
+ varietyCode: T.varietyCode,
550
565
  cycle: "6",
551
566
  startTime: "1999-01-01 00:00:00",
552
- endTime: m().format("YYYY-MM-DD 23:59:59"),
553
- deleteFirstNumber: 1
554
- // 后端要求标识
567
+ endTime: g().format("YYYY-MM-DD 23:59:59"),
568
+ deleteFirstNumber: T.deleteFirstNumber,
569
+ withoutPermission: T.withoutPermission
555
570
  };
556
- switch (D.varietyStock) {
571
+ switch (T.varietyStock) {
557
572
  case 0: {
558
573
  Object.assign(N, {
559
- contractType: D.klineType
574
+ contractType: T.klineType
560
575
  });
561
576
  break;
562
577
  }
563
578
  case 1: {
564
579
  Object.assign(N, {
565
- right: D.rightType
580
+ right: T.rightType
566
581
  });
567
582
  break;
568
583
  }
569
584
  }
570
- const { body: r } = await u.post("/middleLayer/kline/getKline", N);
571
- r ? e.value = r : e.value = { data: [], mainIndicator: [], subIndicator: [], time: [] }, T("init");
572
- }, v = ae((N) => {
585
+ const { body: l } = await c.post("/middleLayer/kline/getKline", N);
586
+ l ? e.value = l : e.value = { data: [], mainIndicator: [], subIndicator: [], time: [] }, D("init");
587
+ }, E = ae((N) => {
573
588
  if (!N.dataZoomId)
574
589
  return;
575
- const r = j.getOption();
576
- if (r != null && r.dataZoom[0]) {
577
- const { startValue: M, endValue: L } = j.getOption().dataZoom[0], { time: c } = e.value, i = `${c[M].split(" ")[0]} 00:00:00`, y = `${c[L].split(" ")[0]} 23:59:59`;
578
- console.log(`检测到拖拽轴被拖动, 时间区间: ${i} - ${y}`), I("change", { startTime: i, endTime: y });
590
+ const l = j.getOption();
591
+ if (l != null && l.dataZoom[0]) {
592
+ const { startValue: M, endValue: p } = j.getOption().dataZoom[0], { time: r } = e.value, i = `${r[M].split(" ")[0]} 00:00:00`, d = `${r[p].split(" ")[0]} 23:59:59`;
593
+ console.log(`检测到拖拽轴被拖动, 时间区间: ${i} - ${d}`), I("change", { startTime: i, endTime: d });
579
594
  }
580
- }, 200), g = ae(({ startTime: N, endTime: r }) => {
581
- T("reset", { startTime: N, endTime: r });
582
- }, 100), T = (N, r) => {
595
+ }, 200), Y = ae(({ startTime: N, endTime: l }) => {
596
+ D("reset", { startTime: N, endTime: l });
597
+ }, 100), D = (N, l) => {
583
598
  switch (N) {
584
599
  case "init": {
585
- const { data: M, time: L } = e.value, { xAxisData: c, lineData: i } = M.reduce(
586
- (a, s, Y) => (a.xAxisData.push(L[Y].split(" ")[0]), a.lineData.push(s[1]), a),
600
+ const { data: M, time: p } = e.value, { xAxisData: r, lineData: i } = M.reduce(
601
+ (a, s, m) => (a.xAxisData.push(p[m].split(" ")[0]), a.lineData.push(s[1]), a),
587
602
  { xAxisData: [], lineData: [] }
588
- ), y = {
603
+ ), d = {
589
604
  grid: {
590
605
  height: 0,
591
606
  left: "100px",
@@ -593,7 +608,7 @@ const Ke = {
593
608
  },
594
609
  xAxis: {
595
610
  type: "category",
596
- data: c,
611
+ data: r,
597
612
  show: !1
598
613
  },
599
614
  yAxis: {
@@ -621,52 +636,52 @@ const Ke = {
621
636
  }
622
637
  ]
623
638
  };
624
- if (j.setOption(y, !0), D.screenTimeRange.length) {
625
- const [a, s] = D.screenTimeRange;
626
- g({ startTime: a, endTime: s });
639
+ if (j.setOption(d, !0), T.screenTimeRange.length) {
640
+ const [a, s] = T.screenTimeRange;
641
+ Y({ startTime: a, endTime: s });
627
642
  }
628
643
  break;
629
644
  }
630
645
  case "reset": {
631
- const { time: M } = e.value, L = m(r.startTime).format("YYYY-MM-DD"), c = m(r.endTime).format("YYYY-MM-DD");
632
- let i = -1, y = -1;
646
+ const { time: M } = e.value, p = g(l.startTime).format("YYYY-MM-DD"), r = g(l.endTime).format("YYYY-MM-DD");
647
+ let i = -1, d = -1;
633
648
  for (let a = 0; a < M.length; a++) {
634
- const s = m(M[a]).format("YYYY-MM-DD");
635
- if (i !== -1 && y !== -1)
649
+ const s = g(M[a]).format("YYYY-MM-DD");
650
+ if (i !== -1 && d !== -1)
636
651
  break;
637
- i === -1 && (new Date(s) === new Date(L) ? i = a : new Date(s) > new Date(L) && (i = a - 1)), y === -1 && (new Date(s) === new Date(c) ? y = a : new Date(s) > new Date(c) && (y = a - 1));
652
+ i === -1 && (new Date(s) === new Date(p) ? i = a : new Date(s) > new Date(p) && (i = a - 1)), d === -1 && (new Date(s) === new Date(r) ? d = a : new Date(s) > new Date(r) && (d = a - 1));
638
653
  }
639
- y === -1 && (y = M.length - 1), j.dispatchAction({
654
+ d === -1 && (d = M.length - 1), j.dispatchAction({
640
655
  type: "dataZoom",
641
656
  startValue: i,
642
- endValue: y
657
+ endValue: d
643
658
  });
644
659
  break;
645
660
  }
646
661
  }
647
662
  };
648
663
  return pe(() => {
649
- ve(() => {
650
- j = se.init(A.value), j.on("datazoom", v), E();
664
+ Ee(() => {
665
+ j = se.init(L.value), j.on("datazoom", E), b();
651
666
  });
652
667
  }), te(
653
- () => D.screenTimeRange,
668
+ () => T.screenTimeRange,
654
669
  (N) => {
655
- const [r, M] = N;
656
- g({ startTime: r, endTime: M });
670
+ const [l, M] = N;
671
+ Y({ startTime: l, endTime: M });
657
672
  },
658
673
  { deep: !0 }
659
- ), we(() => {
674
+ ), xe(() => {
660
675
  j.off("datazoom"), j.dispose();
661
- }), d({
676
+ }), y({
662
677
  resize: ae(() => j.resize(), 100)
663
- }), (N, r) => (R(), _("div", {
678
+ }), (N, l) => (R(), H("div", {
664
679
  class: "chart",
665
680
  ref_key: "sliderChartRef",
666
- ref: A
681
+ ref: L
667
682
  }, null, 512));
668
683
  }
669
- }, qe = /* @__PURE__ */ je(Ke, [["__scopeId", "data-v-503077bd"]]);
684
+ }, qe = /* @__PURE__ */ je(Ke, [["__scopeId", "data-v-5ab1ed2a"]]);
670
685
  const Xe = { class: "main-chart" }, et = { class: "indicator" }, tt = {
671
686
  key: 0,
672
687
  class: "screen-time-range"
@@ -693,27 +708,31 @@ const Xe = { class: "main-chart" }, et = { class: "indicator" }, tt = {
693
708
  klineType: { type: Number, default: null },
694
709
  initTimeRange: { type: Array, required: !0 },
695
710
  mainIndicator: { type: String, required: !0 },
696
- // 绘制数据: 成交
711
+ // 绘制数据
697
712
  tradeLog: { type: Array, default: () => [] },
698
713
  // 成交数据
699
- // 绘制数据: 净值
700
714
  netPositionData: { type: Array, default: () => [] },
701
715
  // 净值数据
702
- // 功能: 强制定位高亮(非必填)
716
+ // 强制定位高亮(非必填)
703
717
  positionTime: { type: [String, null], default: null },
704
- // 功能: 同步刷选范围(非必填)
705
- syncBrushRange: { type: Object, default: () => ({ cycleList: [], startTime: null, endTime: null }) }
718
+ // 同步刷选范围(非必填)
719
+ syncBrushRange: { type: Object, default: () => ({ cycleList: [], startTime: null, endTime: null }) },
720
+ // 业务系统相关
721
+ deleteFirstNumber: { type: Number, default: 1 },
722
+ // 绩效标记
723
+ withoutPermission: { type: Number, default: 0 }
724
+ // 三方标记(不需要token授权)
706
725
  },
707
- setup(n, { expose: d }) {
708
- const { round: l, formatValue: u } = Oe, { request: j } = xe("stConfig"), A = P(), I = P(!1), D = P(!1), e = n;
709
- let E = !1, v = !1, g = !1, T = !1, N = null, r = null, M = null;
710
- const L = P(null), c = P(null), i = P({
726
+ setup(n, { expose: y }) {
727
+ const { round: u, formatValue: c } = fe, { request: j } = we("stConfig"), L = F(), I = F(!1), T = F(!1), e = n;
728
+ let b = !1, E = !1, Y = !1, D = !1, N = null, l = null, M = null;
729
+ const p = F(null), r = F(null), i = F({
711
730
  data: [],
712
731
  mainIndicator: [],
713
732
  subIndicator: [],
714
733
  time: []
715
- }), y = P(0), a = P([]), s = P(null), Y = P("VOL"), b = ce(() => {
716
- const t = i.value.data[y.value];
734
+ }), d = F(0), a = F([]), s = F(null), m = F("VOL"), h = re(() => {
735
+ const t = i.value.data[d.value];
717
736
  if (!t)
718
737
  return [
719
738
  { label: "开", value: "-" },
@@ -724,48 +743,48 @@ const Xe = { class: "main-chart" }, et = { class: "indicator" }, tt = {
724
743
  { label: "涨跌", value: "-" }
725
744
  ];
726
745
  const o = [
727
- { label: "开", value: l(t[0]) },
728
- { label: "高", value: l(t[3]) },
729
- { label: "低", value: l(t[2]) },
730
- { label: "收", value: l(t[1]) }
746
+ { label: "开", value: u(t[0]) },
747
+ { label: "高", value: u(t[3]) },
748
+ { label: "低", value: u(t[2]) },
749
+ { label: "收", value: u(t[1]) }
731
750
  ];
732
- t[4] !== null && o.push({ label: "额", value: u(t[4]) });
751
+ t[4] !== null && o.push({ label: "额", value: c(t[4]) });
733
752
  let z;
734
- return t[6] > 0 ? z = "red" : t[6] < 0 && (z = "green"), o.push({ label: "涨跌", value: `${l(t[6])}%`, color: z }), o;
735
- }), S = ce(() => {
753
+ return t[6] > 0 ? z = "red" : t[6] < 0 && (z = "green"), o.push({ label: "涨跌", value: `${u(t[6])}%`, color: z }), o;
754
+ }), S = re(() => {
736
755
  var t, o;
737
- return ((o = (t = i.value) == null ? void 0 : t.mainIndicator) == null ? void 0 : o.map((z) => ({ label: z.key, value: l(z.data[y.value]), color: z.color }))) || [];
738
- }), U = ce(() => {
756
+ return ((o = (t = i.value) == null ? void 0 : t.mainIndicator) == null ? void 0 : o.map((z) => ({ label: z.key, value: u(z.data[d.value]), color: z.color }))) || [];
757
+ }), U = re(() => {
739
758
  var t, o;
740
- return ((o = (t = i.value) == null ? void 0 : t.subIndicator) == null ? void 0 : o.map((z) => ({ label: z.key, color: z.color, value: z.data[y.value] || "-" }))) || [];
759
+ return ((o = (t = i.value) == null ? void 0 : t.subIndicator) == null ? void 0 : o.map((z) => ({ label: z.key, color: z.color, value: z.data[d.value] || "-" }))) || [];
741
760
  }), K = () => {
742
- M || (M = se.init(c.value), M.on(
761
+ M || (M = se.init(r.value), M.on(
743
762
  "highlight",
744
763
  ae((t) => {
745
764
  var o;
746
- t.dataIndex ? y.value = t.dataIndex : y.value = ((o = t.batch) == null ? void 0 : o[0].dataIndex) ?? -1;
765
+ t.dataIndex ? d.value = t.dataIndex : d.value = ((o = t.batch) == null ? void 0 : o[0].dataIndex) ?? -1;
747
766
  }, 10)
748
767
  ), M.on(
749
768
  "datazoom",
750
769
  ae(async () => {
751
- var f;
752
- const { loadCheckCount: t } = W, { startValue: o, endValue: z } = ((f = M.getOption()) == null ? void 0 : f.dataZoom[0]) ?? {};
753
- g === !1 && T === !1 && o < t && await ze("history"), E === !1 && v === !1 && z > i.value.time.length - t && await ze("new"), ye();
770
+ var O;
771
+ const { loadCheckCount: t } = W, { startValue: o, endValue: z } = ((O = M.getOption()) == null ? void 0 : O.dataZoom[0]) ?? {};
772
+ Y === !1 && D === !1 && o < t && await ze("history"), b === !1 && E === !1 && z > i.value.time.length - t && await ze("new"), ye();
754
773
  })
755
774
  ), M.on("globalout", () => {
756
775
  const t = M.getOption();
757
- y.value = t.dataZoom[0].endValue;
776
+ d.value = t.dataZoom[0].endValue;
758
777
  }), M.getZr().on("contextmenu", () => {
759
778
  var t;
760
- s.value = (t = i.value) == null ? void 0 : t.time[y.value];
761
- }), window.addEventListener("keydown", de), e.userKlineConfig.enable_subChart && (r = se.init(L.value), se.connect([M, r])), N = Ue(c.value), N.listen(() => {
779
+ s.value = (t = i.value) == null ? void 0 : t.time[d.value];
780
+ }), window.addEventListener("keydown", de), e.userKlineConfig.enable_subChart && (l = se.init(p.value), se.connect([M, l])), N = Pe(r.value), N.listen(() => {
762
781
  requestAnimationFrame(() => {
763
782
  var t;
764
- M.resize(), r == null || r.resize(), (t = A.value) == null || t.resize();
783
+ M.resize(), l == null || l.resize(), (t = L.value) == null || t.resize();
765
784
  });
766
785
  }));
767
- }, H = async ({ startTime: t, endTime: o }) => {
768
- g = !1, T = !1, E = !1, v = !1;
786
+ }, _ = async ({ startTime: t, endTime: o }) => {
787
+ Y = !1, D = !1, b = !1, E = !1;
769
788
  try {
770
789
  I.value = !0;
771
790
  const z = {
@@ -777,37 +796,43 @@ const Xe = { class: "main-chart" }, et = { class: "indicator" }, tt = {
777
796
  contractType: e.varietyStock ? null : e.klineType,
778
797
  // 合约类型
779
798
  mainIndicatorList: e.indicatorStore.getIndicatorParams(e.mainIndicator),
780
- subIndicator: Y.value,
781
- deleteFirstNumber: 1
782
- // >> 重要: 绩效后端特殊要求传参 <<
799
+ subIndicator: m.value,
800
+ deleteFirstNumber: e.deleteFirstNumber,
801
+ withoutPermission: e.withoutPermission
783
802
  };
784
803
  ["1", "2", "3", "4", "5"].includes(e.cycle) ? Object.assign(z, {
785
- startTime: m(t).subtract(1, "day").format("YYYY-MM-DD HH:mm:ss"),
786
- endTime: m(o).add(1, "day").format("YYYY-MM-DD HH:mm:ss")
804
+ startTime: g(t).subtract(1, "day").format("YYYY-MM-DD HH:mm:ss"),
805
+ endTime: g(o).add(1, "day").format("YYYY-MM-DD HH:mm:ss")
787
806
  }) : ["6", "7"].includes(e.cycle) ? Object.assign(z, {
788
- startTime: m(t).subtract(50, "day").format("YYYY-MM-DD HH:mm:ss"),
789
- endTime: m(o).add(50, "day").format("YYYY-MM-DD HH:mm:ss")
807
+ startTime: g(t).subtract(50, "day").format("YYYY-MM-DD HH:mm:ss"),
808
+ endTime: g(o).add(50, "day").format("YYYY-MM-DD HH:mm:ss")
790
809
  }) : Object.assign(z, {
791
- startTime: m(t).subtract(10, "month").format("YYYY-MM-DD HH:mm:ss"),
792
- endTime: m(o).add(10, "month").format("YYYY-MM-DD HH:mm:ss")
810
+ startTime: g(t).subtract(10, "month").format("YYYY-MM-DD HH:mm:ss"),
811
+ endTime: g(o).add(10, "month").format("YYYY-MM-DD HH:mm:ss")
793
812
  });
794
- const { body: f } = await j.post("/middleLayer/kline/getKline", z);
795
- i.value = f ?? { data: [], mainIndicator: [], subIndicator: [], time: [] };
796
- const O = i.value.time.findIndex((x) => new Date(x) >= new Date(t)), w = i.value.time.findIndex((x) => new Date(x) >= new Date(o));
797
- ie({
798
- startValue: O === -1 ? 0 : O,
799
- endValue: w === -1 ? i.value.time.length - 1 : w
813
+ const { body: O } = await j.post("/middleLayer/kline/getKline", z);
814
+ i.value = O ?? { data: [], mainIndicator: [], subIndicator: [], time: [] };
815
+ let x = -1, A = -1;
816
+ for (let w = 0; w < i.value.time.length; w++) {
817
+ const Q = g(i.value.time[w]).format("YYYY-MM-DD");
818
+ if (x !== -1 && A !== -1)
819
+ break;
820
+ x === -1 && (new Date(Q) === new Date(t) ? x = w : new Date(Q) > new Date(t) && (x = w - 1)), A === -1 && (new Date(Q) === new Date(o) ? A = w : new Date(Q) > new Date(o) && (A = w - 1));
821
+ }
822
+ A === -1 && (A = i.value.time.length - 1), ie({
823
+ startValue: x === -1 ? 0 : x,
824
+ endValue: A === -1 ? i.value.time.length - 1 : A
800
825
  });
801
826
  } finally {
802
827
  I.value = !1;
803
828
  }
804
829
  }, ze = async (t) => {
805
- var F, ne;
830
+ var Q, ne;
806
831
  const { loadAddCount: o } = W;
807
832
  switch (t) {
808
833
  case "history": {
809
- g = !0;
810
- const Q = {
834
+ Y = !0;
835
+ const P = {
811
836
  varietyCode: e.varietyCode,
812
837
  cycle: e.cycle,
813
838
  right: e.rightType,
@@ -815,15 +840,16 @@ const Xe = { class: "main-chart" }, et = { class: "indicator" }, tt = {
815
840
  endTime: i.value.time[0],
816
841
  limit: o,
817
842
  mainIndicatorList: e.indicatorStore.getIndicatorParams(e.mainIndicator),
818
- subIndicator: Y.value,
819
- deleteFirstNumber: 1
820
- }, { body: Z } = await j.post("/middleLayer/kline/getKline", Q);
821
- i.value = Ye(Z, i.value), Z.data.length < o && (console.log("[K线] 获取更多数据: 左侧已全部获取完毕, 关闭"), T = !0), g = !1;
843
+ subIndicator: m.value,
844
+ deleteFirstNumber: e.deleteFirstNumber,
845
+ withoutPermission: e.withoutPermission
846
+ }, { body: Z } = await j.post("/middleLayer/kline/getKline", P);
847
+ i.value = Ye(Z, i.value), Z.data.length < o && (console.log("[K线] 获取更多数据: 左侧已全部获取完毕, 关闭"), D = !0), Y = !1;
822
848
  break;
823
849
  }
824
850
  case "new": {
825
- E = !0;
826
- const Q = {
851
+ b = !0;
852
+ const P = {
827
853
  varietyCode: e.varietyCode,
828
854
  cycle: e.cycle,
829
855
  // 周期
@@ -835,41 +861,41 @@ const Xe = { class: "main-chart" }, et = { class: "indicator" }, tt = {
835
861
  // 开始时间
836
862
  limit: o,
837
863
  // 查询K线数量
838
- deleteFirstNumber: 1,
839
- // >> 重要: 绩效后端特殊要求传参 <<
840
864
  mainIndicatorList: e.indicatorStore.getIndicatorParams(e.mainIndicator),
841
- subIndicator: Y.value
842
- }, { body: Z } = await j.post("/middleLayer/kline/getKline", Q);
843
- i.value = Ye(i.value, Z), Z.data.length < o && (console.log("[K线] 获取更多数据: 右侧已全部获取完毕, 关闭"), v = !0), E = !1;
865
+ subIndicator: m.value,
866
+ deleteFirstNumber: e.deleteFirstNumber,
867
+ withoutPermission: e.withoutPermission
868
+ }, { body: Z } = await j.post("/middleLayer/kline/getKline", P);
869
+ i.value = Ye(i.value, Z), Z.data.length < o && (console.log("[K线] 获取更多数据: 右侧已全部获取完毕, 关闭"), E = !0), b = !1;
844
870
  break;
845
871
  }
846
872
  }
847
- const { startValue: z, endValue: f } = ((F = M.getOption()) == null ? void 0 : F.dataZoom[0]) ?? {}, O = (ne = M.getOption()) == null ? void 0 : ne.xAxis[0].data, w = i.value.time.findIndex((Q) => new Date(Q) >= new Date(O[z])), x = i.value.time.findIndex((Q) => new Date(Q) >= new Date(O[f]));
873
+ const { startValue: z, endValue: O } = ((Q = M.getOption()) == null ? void 0 : Q.dataZoom[0]) ?? {}, x = (ne = M.getOption()) == null ? void 0 : ne.xAxis[0].data, A = i.value.time.findIndex((P) => new Date(P) >= new Date(x[z])), w = i.value.time.findIndex((P) => new Date(P) >= new Date(x[O]));
848
874
  ie({
849
- startValue: w === -1 ? 0 : w,
850
- endValue: x === -1 ? i.value.time.length - 1 : x
875
+ startValue: A === -1 ? 0 : A,
876
+ endValue: w === -1 ? i.value.time.length - 1 : w
851
877
  });
852
878
  }, ye = () => {
853
- var w;
879
+ var A;
854
880
  if (!i.value.time)
855
881
  return a.value = [];
856
- const { time: t } = i.value, { startValue: o, endValue: z } = ((w = M.getOption()) == null ? void 0 : w.dataZoom[0]) ?? {}, f = t[o], O = t[z];
857
- ["6", "7", "8"].includes(e.cycle) ? a.value = [m(f).format("YYYY-MM-DD"), m(O).format("YYYY-MM-DD")] : a.value = [f, O];
882
+ const { time: t } = i.value, { startValue: o, endValue: z } = ((A = M.getOption()) == null ? void 0 : A.dataZoom[0]) ?? {}, O = t[o], x = t[z];
883
+ ["6", "7", "8"].includes(e.cycle) ? a.value = [g(O).format("YYYY-MM-DD"), g(x).format("YYYY-MM-DD")] : a.value = [O, x];
858
884
  }, ie = (t = { startValue: 0, endValue: 0 }) => {
859
885
  K();
860
- const { maxValueSpan: o } = W, { time: z, data: f, mainIndicator: O } = i.value, w = t.endValue - t.startValue > o ? t.endValue - o : t.startValue, x = t.endValue, F = O.map((p) => ({
861
- name: p.key,
886
+ const { maxValueSpan: o } = W, { time: z, data: O, mainIndicator: x } = i.value, A = t.endValue - t.startValue > o ? t.endValue - o : t.startValue, w = t.endValue, Q = x.map((f) => ({
887
+ name: f.key,
862
888
  type: "line",
863
889
  silent: !0,
864
890
  symbol: "none",
865
- data: p.data,
891
+ data: f.data,
866
892
  lineStyle: {
867
- width: p.width || 1
893
+ width: f.width || 1
868
894
  },
869
895
  itemStyle: {
870
- color: p.color
896
+ color: f.color
871
897
  }
872
- })), { netPositionLineData: ne } = $e(e.netPositionData, e.cycle), { tradePointData: Q, tradeLineData: Z } = Ge(e.tradeLog, e.cycle, e.sellBuy, z, f);
898
+ })), { netPositionLineData: ne } = $e(e.netPositionData, e.cycle), { tradePointData: P, tradeLineData: Z } = Ge(e.tradeLog, e.cycle, e.sellBuy, z, O);
873
899
  M.setOption(
874
900
  {
875
901
  animation: !1,
@@ -882,8 +908,8 @@ const Xe = { class: "main-chart" }, et = { class: "indicator" }, tt = {
882
908
  dataZoom: [
883
909
  {
884
910
  type: "inside",
885
- startValue: w,
886
- endValue: x,
911
+ startValue: A,
912
+ endValue: w,
887
913
  minValueSpan: W.minValueSpan,
888
914
  maxValueSpan: W.maxValueSpan
889
915
  }
@@ -896,41 +922,41 @@ const Xe = { class: "main-chart" }, et = { class: "indicator" }, tt = {
896
922
  type: "cross",
897
923
  label: {
898
924
  rich: {},
899
- formatter: (p) => {
900
- const { axisDimension: C, value: k } = p;
901
- return C === "x" ? ["6", "7", "8"].includes(e.cycle) ? m(k).format("YYYY-MM-DD") : k : String(l(k));
925
+ formatter: (f) => {
926
+ const { axisDimension: C, value: k } = f;
927
+ return C === "x" ? ["6", "7", "8"].includes(e.cycle) ? g(k).format("YYYY-MM-DD") : k : String(u(k));
902
928
  }
903
929
  }
904
930
  },
905
- formatter: (p) => {
906
- if (!(p != null && p.length))
931
+ formatter: (f) => {
932
+ if (!(f != null && f.length))
907
933
  return null;
908
934
  let C = "";
909
- if (p.forEach((h) => {
910
- if (h.seriesName === "netPosition" && h.data !== null && (C += `<div>资产持仓净值: ${h.data[1]}</div>`), h.componentSubType === "candlestick")
935
+ if (f.forEach((v) => {
936
+ if (v.seriesName === "netPosition" && v.data !== null && (C += `<div>资产持仓净值: ${v.data[1]}</div>`), v.componentSubType === "candlestick")
911
937
  if (e.sellBuy === 0) {
912
- const J = Q.filter((V) => (V == null ? void 0 : V.coord[0]) === h.axisValue);
938
+ const J = P.filter((V) => (V == null ? void 0 : V.coord[0]) === v.axisValue);
913
939
  let G = 0, B = 0;
914
940
  J.forEach((V) => {
915
941
  const { tradeType: q, amount: oe } = V.customData;
916
942
  q === "买" && (G += oe), q === "卖" && (B += oe);
917
943
  }), G && (C += `<div>买: ${G}</div>`), B && (C += `<div>卖: ${B}</div>`);
918
944
  } else
919
- Q.forEach((J) => {
920
- if ((J == null ? void 0 : J.coord[0]) === h.axisValue) {
945
+ P.forEach((J) => {
946
+ if ((J == null ? void 0 : J.coord[0]) === v.axisValue) {
921
947
  const { tradeType: G, amount: B, profitAndLoss: V, openPriceAll: q, closePriceAll: oe } = J.customData;
922
948
  let X = `<div>${G}: ${B}手</div>`;
923
949
  if (G.includes("开") && (X += `<div>开仓价: ${(q / B).toFixed(2)}</div>`), G.includes("平")) {
924
- const Te = (q / B).toFixed(2), De = (oe / B).toFixed(2);
925
- X += `<div>平仓价: ${De}</div>`, X += `<div>盈亏: ${V == null ? void 0 : V.toFixed(2)}</div>`, X += `<div>盈亏比率: ${((De - Te) / Te * 100).toFixed(2)} %</div>`;
950
+ const De = (q / B).toFixed(2), Te = (oe / B).toFixed(2);
951
+ X += `<div>平仓价: ${Te}</div>`, X += `<div>盈亏: ${V == null ? void 0 : V.toFixed(2)}</div>`, X += `<div>盈亏比率: ${((Te - De) / De * 100).toFixed(2)} %</div>`;
926
952
  }
927
953
  C += X;
928
954
  }
929
955
  });
930
956
  }), !C)
931
957
  return null;
932
- let k = p[0].axisValue;
933
- return ["6", "7", "8"].includes(e.cycle) && (k = m(k).format("YYYY-MM-DD")), `
958
+ let k = f[0].axisValue;
959
+ return ["6", "7", "8"].includes(e.cycle) && (k = g(k).format("YYYY-MM-DD")), `
934
960
  <div>
935
961
  <span style="font-weight: bold;">${k}</span>
936
962
  ${C}
@@ -946,7 +972,7 @@ const Xe = { class: "main-chart" }, et = { class: "indicator" }, tt = {
946
972
  show: !1
947
973
  },
948
974
  axisLabel: {
949
- formatter: (p) => ["6", "7", "8"].includes(e.cycle) ? m(p).format("YYYY-MM-DD") : p
975
+ formatter: (f) => ["6", "7", "8"].includes(e.cycle) ? g(f).format("YYYY-MM-DD") : f
950
976
  }
951
977
  },
952
978
  yAxis: [
@@ -962,29 +988,29 @@ const Xe = { class: "main-chart" }, et = { class: "indicator" }, tt = {
962
988
  color: "#333"
963
989
  }
964
990
  },
965
- min: (p) => {
966
- const { min: C, max: k } = p, h = Math.abs((k - C) / 10);
967
- return l(C - h);
991
+ min: (f) => {
992
+ const { min: C, max: k } = f, v = Math.abs((k - C) / 10);
993
+ return u(C - v);
968
994
  },
969
- max: (p) => l(p.max)
995
+ max: (f) => u(f.max)
970
996
  },
971
997
  {
972
998
  show: !1,
973
- min: (p) => {
974
- const { min: C, max: k } = p, h = Math.abs((k - C) / 10);
975
- return C - h;
999
+ min: (f) => {
1000
+ const { min: C, max: k } = f, v = Math.abs((k - C) / 10);
1001
+ return C - v;
976
1002
  },
977
- max: (p) => {
978
- const { min: C, max: k } = p, h = Math.abs((k - C) / 10);
979
- return k + h;
1003
+ max: (f) => {
1004
+ const { min: C, max: k } = f, v = Math.abs((k - C) / 10);
1005
+ return k + v;
980
1006
  }
981
1007
  }
982
1008
  ],
983
1009
  series: [
984
1010
  {
985
1011
  type: "candlestick",
986
- data: f,
987
- markPoint: { data: Ze([...Q]) },
1012
+ data: O,
1013
+ markPoint: { data: Ze([...P]) },
988
1014
  markLine: { data: [...Z] },
989
1015
  itemStyle: {
990
1016
  color: "transparent",
@@ -995,7 +1021,7 @@ const Xe = { class: "main-chart" }, et = { class: "indicator" }, tt = {
995
1021
  }
996
1022
  },
997
1023
  // 指标线
998
- ...F,
1024
+ ...Q,
999
1025
  // 净值曲线
1000
1026
  {
1001
1027
  type: "line",
@@ -1029,25 +1055,25 @@ const Xe = { class: "main-chart" }, et = { class: "indicator" }, tt = {
1029
1055
  }
1030
1056
  },
1031
1057
  !0
1032
- ), e.userKlineConfig.enable_subChart && r.setOption(Be(i.value, w, x), !0), ye(), y.value = x;
1058
+ ), e.userKlineConfig.enable_subChart && l.setOption(Be(i.value, A, w), !0), ye(), d.value = w;
1033
1059
  {
1034
- const p = [];
1035
- if (e.userKlineConfig.enable_tradeLogBrush && Q.length) {
1036
- const [C, k] = [Q[0].coord[0], Q.at(-1).coord[0]], h = re(z, [C, k], e.cycle);
1037
- p.push({
1060
+ const f = [];
1061
+ if (e.userKlineConfig.enable_tradeLogBrush && P.length) {
1062
+ const [C, k] = [P[0].coord[0], P.at(-1).coord[0]], v = ce(z, [C, k], e.cycle);
1063
+ f.push({
1038
1064
  brushId: "开平仓范围",
1039
1065
  brushType: "lineX",
1040
1066
  xAxisIndex: 0,
1041
- coordRange: h
1067
+ coordRange: v
1042
1068
  });
1043
1069
  }
1044
1070
  if (e.syncBrushRange.cycleList.includes(e.cycle)) {
1045
- const { startTime: C, endTime: k } = e.syncBrushRange, h = re(z, [C, k], e.cycle);
1046
- p.push({
1071
+ const { startTime: C, endTime: k } = e.syncBrushRange, v = ce(z, [C, k], e.cycle);
1072
+ f.push({
1047
1073
  brushId: "同步刷选范围",
1048
1074
  brushType: "lineX",
1049
1075
  xAxisIndex: 0,
1050
- coordRange: h,
1076
+ coordRange: v,
1051
1077
  brushStyle: {
1052
1078
  fill: "rgba(64, 158, 255, 0.2)",
1053
1079
  stroke: "rgba(64, 158, 255, 0.8)",
@@ -1056,12 +1082,12 @@ const Xe = { class: "main-chart" }, et = { class: "indicator" }, tt = {
1056
1082
  });
1057
1083
  }
1058
1084
  if (e.positionTime) {
1059
- const [C, k] = [m(e.positionTime).format("YYYY-MM-DD 00:00:00"), m(e.positionTime).format("YYYY-MM-DD 23:59:59")], h = re(z, [C, k], e.cycle);
1060
- p.push({
1085
+ const [C, k] = [g(e.positionTime).format("YYYY-MM-DD 00:00:00"), g(e.positionTime).format("YYYY-MM-DD 23:59:59")], v = ce(z, [C, k], e.cycle);
1086
+ f.push({
1061
1087
  brushId: "强制定位高亮",
1062
1088
  brushType: "lineX",
1063
1089
  xAxisIndex: 0,
1064
- coordRange: h,
1090
+ coordRange: v,
1065
1091
  brushStyle: {
1066
1092
  fill: "rgba(217, 179, 255, 0.2)",
1067
1093
  stroke: "rgba(217, 179, 255, 0.8)",
@@ -1071,89 +1097,90 @@ const Xe = { class: "main-chart" }, et = { class: "indicator" }, tt = {
1071
1097
  }
1072
1098
  M.dispatchAction({
1073
1099
  type: "brush",
1074
- areas: p
1100
+ areas: f
1075
1101
  });
1076
1102
  }
1077
- }, fe = (t) => {
1103
+ }, Oe = (t) => {
1078
1104
  const [o, z] = Ie({
1079
1105
  startTime: t.startTime,
1080
1106
  endTime: t.endTime,
1081
1107
  cycle: e.cycle
1082
1108
  });
1083
- H({ startTime: o, endTime: z });
1109
+ _({ startTime: o, endTime: z });
1084
1110
  }, de = ({ code: t, ctrlKey: o }) => {
1085
- if (!(o || D.value))
1111
+ if (!(o || T.value))
1086
1112
  return;
1087
- const { xAxis: z, dataZoom: f } = M.getOption(), { data: O } = (z == null ? void 0 : z[0]) ?? { data: [] };
1088
- let { startValue: w, endValue: x } = (f == null ? void 0 : f[0]) ?? {};
1089
- if (O != null && O.length) {
1113
+ const { xAxis: z, dataZoom: O } = M.getOption(), { data: x } = (z == null ? void 0 : z[0]) ?? { data: [] };
1114
+ let { startValue: A, endValue: w } = (O == null ? void 0 : O[0]) ?? {};
1115
+ if (x != null && x.length) {
1090
1116
  switch (t) {
1091
1117
  case "ArrowUp": {
1092
- if (x - w < 5)
1118
+ if (w - A < 5)
1093
1119
  return;
1094
- const F = Math.floor((x - w) / 2) + 1;
1095
- w = w + F, x - w < 5 && (w = x - 4);
1120
+ const Q = Math.floor((w - A) / 2) + 1;
1121
+ A = A + Q, w - A < 5 && (A = w - 4);
1096
1122
  break;
1097
1123
  }
1098
1124
  case "ArrowDown": {
1099
- const F = Math.min(500, x - w);
1100
- w = w - F - 1;
1125
+ const Q = Math.min(500, w - A);
1126
+ A = A - Q - 1;
1101
1127
  break;
1102
1128
  }
1103
1129
  case "ArrowLeft": {
1104
- w > 0 && (w -= 1, x -= 1), y.value > 0 && (y.value -= 1);
1130
+ A > 0 && (A -= 1, w -= 1), d.value > 0 && (d.value -= 1);
1105
1131
  break;
1106
1132
  }
1107
1133
  case "ArrowRight": {
1108
- x < O.length - 1 && (w += 1, x += 1), D.value && y.value < O.length - 1 && (y.value += 1);
1134
+ w < x.length - 1 && (A += 1, w += 1), T.value && d.value < x.length - 1 && (d.value += 1);
1109
1135
  break;
1110
1136
  }
1111
1137
  }
1112
1138
  M.dispatchAction({
1113
1139
  type: "dataZoom",
1114
- startValue: w,
1115
- endValue: x
1140
+ startValue: A,
1141
+ endValue: w
1116
1142
  }), M.dispatchAction({
1117
1143
  type: "updateAxisPointer",
1118
1144
  seriesIndex: 0,
1119
- dataIndex: D.value ? y.value : null
1145
+ dataIndex: T.value ? d.value : null
1120
1146
  }), M.dispatchAction({
1121
1147
  type: "highlight",
1122
- dataIndex: D.value ? y.value : x
1148
+ dataIndex: T.value ? d.value : w
1123
1149
  });
1124
1150
  }
1125
1151
  };
1126
1152
  return pe(() => {
1127
1153
  const [t, o] = e.initTimeRange;
1128
- H({ startTime: t, endTime: o });
1154
+ _({ startTime: t, endTime: o });
1129
1155
  }), te(
1130
1156
  () => [e.varietyCode, e.initTimeRange],
1131
1157
  () => {
1132
1158
  const [t, o] = e.initTimeRange;
1133
- H({ startTime: t, endTime: o });
1159
+ _({ startTime: t, endTime: o });
1134
1160
  },
1135
1161
  { deep: !0 }
1136
1162
  ), te(
1137
1163
  () => [e.cycle],
1138
1164
  () => {
1139
- var O;
1140
- const { startValue: t, endValue: o } = ((O = M.getOption()) == null ? void 0 : O.dataZoom[0]) ?? {}, [z, f] = Ie({
1165
+ var x;
1166
+ const { startValue: t, endValue: o } = ((x = M.getOption()) == null ? void 0 : x.dataZoom[0]) ?? {}, [z, O] = Ie({
1141
1167
  startTime: i.value.time[t],
1142
1168
  endTime: i.value.time[o],
1143
- cycle: e.cycle
1169
+ cycle: e.cycle,
1170
+ type: "middle"
1144
1171
  });
1145
- H({ startTime: z, endTime: f });
1172
+ _({ startTime: z, endTime: O });
1146
1173
  },
1147
1174
  { deep: !0 }
1148
1175
  ), te(
1149
1176
  () => {
1150
1177
  var t, o;
1151
- return [e.mainIndicator, Y.value, (t = e.indicatorStore) == null ? void 0 : t.filterIndicator, (o = e.indicatorStore) == null ? void 0 : o.customIndicator, e.rightType, e.klineType];
1178
+ return [e.mainIndicator, m.value, (t = e.indicatorStore) == null ? void 0 : t.filterIndicator, (o = e.indicatorStore) == null ? void 0 : o.customIndicator, e.rightType, e.klineType];
1152
1179
  },
1153
1180
  () => {
1154
- var O;
1155
- const { startValue: t, endValue: o } = ((O = M.getOption()) == null ? void 0 : O.dataZoom[0]) ?? {}, [z, f] = [i.value.time[t], i.value.time[o]];
1156
- H({ startTime: z, endTime: f });
1181
+ var x;
1182
+ const { startValue: t, endValue: o } = ((x = M.getOption()) == null ? void 0 : x.dataZoom[0]) ?? {}, [z, O] = [i.value.time[t], i.value.time[o]];
1183
+ _({ startTime: z, endTime: O });
1157
1184
  },
1158
1185
  { deep: !0 }
1159
1186
  ), te(
@@ -1164,9 +1191,9 @@ const Xe = { class: "main-chart" }, et = { class: "indicator" }, tt = {
1164
1191
  ie({ startValue: t, endValue: o });
1165
1192
  },
1166
1193
  { deep: !0 }
1167
- ), we(() => {
1168
- M.off("highlight"), M.off("globalout"), M.off("datazoom"), M.getZr().off("contextmenu"), window.removeEventListener("keydown", de), M.dispose(), r == null || r.dispose(), N.dispose(), N = null;
1169
- }), d({
1194
+ ), xe(() => {
1195
+ M.off("highlight"), M.off("globalout"), M.off("datazoom"), M.getZr().off("contextmenu"), window.removeEventListener("keydown", de), M.dispose(), l == null || l.dispose(), N.dispose(), N = null;
1196
+ }), y({
1170
1197
  screenTimeRange: a,
1171
1198
  contextmenuKlineTime: s,
1172
1199
  reDraw: () => {
@@ -1175,41 +1202,41 @@ const Xe = { class: "main-chart" }, et = { class: "indicator" }, tt = {
1175
1202
  ie({ startValue: t, endValue: o });
1176
1203
  }
1177
1204
  }), (t, o) => {
1178
- const z = ke, f = he, O = be, w = Ce;
1179
- return Se((R(), _("div", {
1205
+ const z = he, O = ke, x = be, A = Ce;
1206
+ return Se((R(), H("div", {
1180
1207
  class: "kline-plus",
1181
- onMousemove: o[1] || (o[1] = (x) => D.value = !0),
1182
- onMouseout: o[2] || (o[2] = (x) => D.value = !1)
1208
+ onMousemove: o[1] || (o[1] = (w) => T.value = !0),
1209
+ onMouseout: o[2] || (o[2] = (w) => T.value = !1)
1183
1210
  }, [
1184
1211
  $("div", Xe, [
1185
1212
  $("div", et, [
1186
- ee(le, { data: b.value }, null, 8, ["data"]),
1213
+ ee(le, { data: h.value }, null, 8, ["data"]),
1187
1214
  ee(le, { data: S.value }, null, 8, ["data"])
1188
1215
  ]),
1189
- n.userKlineConfig.enable_showScreenTimeRange ? (R(), _("span", tt, Me(a.value[0]) + " - " + Me(a.value[1]), 1)) : Ne("", !0),
1216
+ n.userKlineConfig.enable_showScreenTimeRange ? (R(), H("span", tt, Me(a.value[0]) + " - " + Me(a.value[1]), 1)) : Ne("", !0),
1190
1217
  $("div", {
1191
1218
  ref_key: "mainChartRef",
1192
- ref: c,
1219
+ ref: r,
1193
1220
  class: "chart"
1194
1221
  }, null, 512)
1195
1222
  ]),
1196
- n.userKlineConfig.enable_subChart ? (R(), _("div", Mt, [
1223
+ n.userKlineConfig.enable_subChart ? (R(), H("div", Mt, [
1197
1224
  $("div", at, [
1198
1225
  $("div", it, [
1199
- $("span", null, Me(Y.value), 1),
1200
- ee(f, {
1201
- modelValue: Y.value,
1202
- "onUpdate:modelValue": o[0] || (o[0] = (x) => Y.value = x),
1226
+ $("span", null, Me(m.value), 1),
1227
+ ee(O, {
1228
+ modelValue: m.value,
1229
+ "onUpdate:modelValue": o[0] || (o[0] = (w) => m.value = w),
1203
1230
  style: { width: "100px", "margin-right": "4px", height: "25px" },
1204
1231
  size: "small",
1205
1232
  class: "element-dark",
1206
1233
  "popper-class": "element-dark"
1207
1234
  }, {
1208
1235
  default: Qe(() => [
1209
- (R(!0), _(me, null, Ae(n.indicatorStore.subIndicatorList, (x, F) => (R(), ge(z, {
1210
- key: F,
1211
- label: x.label,
1212
- value: x.value
1236
+ (R(!0), H(me, null, Ae(n.indicatorStore.subIndicatorList, (w, Q) => (R(), ge(z, {
1237
+ key: Q,
1238
+ label: w.label,
1239
+ value: w.value
1213
1240
  }, null, 8, ["label", "value"]))), 128))
1214
1241
  ]),
1215
1242
  _: 1
@@ -1219,33 +1246,35 @@ const Xe = { class: "main-chart" }, et = { class: "indicator" }, tt = {
1219
1246
  ]),
1220
1247
  $("div", {
1221
1248
  ref_key: "subChartRef",
1222
- ref: L,
1249
+ ref: p,
1223
1250
  class: "chart"
1224
1251
  }, null, 512)
1225
1252
  ])) : Ne("", !0),
1226
- n.userKlineConfig.enable_sliderChart ? (R(), _("div", nt, [
1253
+ n.userKlineConfig.enable_sliderChart ? (R(), H("div", nt, [
1227
1254
  ee(qe, {
1228
1255
  ref_key: "sliderChartRef",
1229
- ref: A,
1256
+ ref: L,
1230
1257
  screenTimeRange: a.value,
1231
1258
  varietyCode: n.varietyCode,
1232
1259
  varietyStock: n.varietyStock,
1233
1260
  rightType: n.rightType,
1234
1261
  klineType: n.klineType,
1235
- onChange: fe
1236
- }, null, 8, ["screenTimeRange", "varietyCode", "varietyStock", "rightType", "klineType"])
1262
+ deleteFirstNumber: e.deleteFirstNumber,
1263
+ withoutPermission: e.withoutPermission,
1264
+ onChange: Oe
1265
+ }, null, 8, ["screenTimeRange", "varietyCode", "varietyStock", "rightType", "klineType", "deleteFirstNumber", "withoutPermission"])
1237
1266
  ])) : Ne("", !0),
1238
- i.value.time.length ? Ne("", !0) : (R(), ge(O, {
1267
+ i.value.time.length ? Ne("", !0) : (R(), ge(x, {
1239
1268
  key: 2,
1240
1269
  class: "empty",
1241
1270
  description: "暂无数据"
1242
1271
  }))
1243
1272
  ], 32)), [
1244
- [w, I.value]
1273
+ [A, I.value]
1245
1274
  ]);
1246
1275
  };
1247
1276
  }
1248
- }, Nt = /* @__PURE__ */ je(ot, [["__scopeId", "data-v-3c0da0a4"]]), Ct = {
1277
+ }, Nt = /* @__PURE__ */ je(ot, [["__scopeId", "data-v-a26f972e"]]), Ct = {
1249
1278
  install(n) {
1250
1279
  n.component("st-klinePlus", Nt);
1251
1280
  }