st-comp 0.0.261 → 0.0.262
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/ChartLayout.js +4 -4
- package/es/CustomFunction.js +31 -31
- package/es/FactorWarning.cjs +1 -1
- package/es/FactorWarning.js +36 -37
- package/es/Kline.cjs +1 -1
- package/es/Kline.js +1593 -839
- package/es/KlineBasic.cjs +1 -1
- package/es/KlineBasic.js +1 -1197
- package/es/KlineConfig.js +89 -89
- package/es/KlineNew.js +17 -17
- package/es/KlinePlus.js +20 -20
- package/es/MonacoEditor.js +25 -25
- package/es/Pagination.js +113 -113
- package/es/PasswordPrompt.js +3 -3
- package/es/Table.js +29 -29
- package/es/User.js +25 -25
- package/es/VarSelectDialog.cjs +1 -1
- package/es/VarSelectDialog.js +27 -27
- package/es/VarietyAiHelper.cjs +3 -5
- package/es/VarietyAiHelper.js +242 -328
- package/es/VarietyAutoComplete.js +11 -11
- package/es/VarietySearch.cjs +18 -19
- package/es/VarietySearch.js +1169 -1205
- package/es/{VarietySelect-9f267958.js → VarietySelect-faef4799.js} +4 -4
- package/es/VarietyTextCopy.js +13 -13
- package/es/VirtualTable.js +74 -74
- package/es/{_initCloneObject-69c8ae23.js → _initCloneObject-009eedf8.js} +7 -7
- package/es/aiTools-2e1f92d2.cjs +3 -0
- package/es/aiTools-faa0a14d.js +90 -0
- package/es/{base-29f73b05.js → base-7ff209fc.js} +40 -40
- package/es/{castArray-609a313e.js → castArray-b9f1609f.js} +1 -1
- package/es/{config-provider-7860903c.js → config-provider-071b8bec.js} +6 -6
- package/es/{debounce-a09ce9a3.js → debounce-23c2f7e1.js} +1 -1
- package/es/{dropdown-497442b7.js → dropdown-9941f401.js} +4 -4
- package/es/{el-autocomplete-27c60cc8.js → el-autocomplete-43f205b0.js} +17 -17
- package/es/{el-button-e2c63c08.js → el-button-7f58608d.js} +33 -33
- package/es/{el-checkbox-71ebd862.js → el-checkbox-40664b27.js} +17 -17
- package/es/{el-input-number-c8018cb1.js → el-checkbox-group-3ddad0d7.js} +34 -34
- package/es/{el-input-number-3d94fa58.cjs → el-checkbox-group-f775e73f.cjs} +1 -1
- package/es/{el-dialog-eedcfd3e.js → el-dialog-2f10a2f4.js} +15 -15
- package/es/{el-divider-523e5874.js → el-divider-4e66c835.js} +1 -1
- package/es/{el-empty-f5a1607a.js → el-empty-e0d826de.js} +5 -5
- package/es/{el-form-item-bdcfd297.js → el-form-item-2b68cdf5.js} +36 -36
- package/es/{el-input-d47281da.js → el-input-31a818d4.js} +36 -36
- package/es/{el-loading-0cd81d05.js → el-loading-3e350f5e.js} +5 -5
- package/es/{el-message-box-fea4fca8.js → el-message-box-a3aa9b89.js} +11 -11
- package/es/{el-overlay-1ee0338d.js → el-overlay-4e9a99e0.js} +59 -59
- package/es/{el-popconfirm-089b8bec.js → el-popconfirm-c2896741.js} +12 -12
- package/es/{el-popper-c9b3d3cf.js → el-popper-003b3af7.js} +177 -177
- package/es/{el-segmented-9d3a9e11.js → el-segmented-4ae54e6a.js} +8 -8
- package/es/{el-select-e51e11c1.js → el-select-19ee0e79.js} +65 -65
- package/es/{el-table-column-05d292a8.js → el-table-column-3be856d7.js} +16 -16
- package/es/{el-tag-17cd04a1.js → el-tag-19cc5b59.js} +14 -14
- package/es/{el-text-2710fff3.js → el-text-9a7a4f0f.js} +2 -2
- package/es/{index-0f79095c.js → index-19ac550e.js} +49 -49
- package/es/{index-1d9b50de.js → index-308aab33.js} +34 -34
- package/es/{index-8a54ceeb.js → index-41dd5a1c.js} +10 -10
- package/es/{index-0ee486ad.js → index-6917da9d.js} +43 -43
- package/es/{index-bcd895a0.js → index-6d530e54.js} +13 -13
- package/es/{index-c71e37dc.js → index-808db9b4.js} +11 -11
- package/es/{index-f30561d3.js → index-99abf4ff.js} +17 -17
- package/es/{index-95e5d454.js → index-b56d81e8.js} +3 -3
- package/es/{index-8391a3df.js → index-d898531c.js} +37 -37
- package/es/{index-c2b9bbfd.js → index-e17987ac.js} +30 -30
- package/es/{index-b0117ba2.js → index-f3799536.js} +2 -2
- package/es/{index-de24705f.js → index-f402d1da.js} +1 -1
- package/es/{python-99011a53.js → python-be79c7c1.js} +25 -25
- package/es/raf-ba3dfafe.js +6 -0
- package/es/{scroll-6799bafc.js → scroll-8642151c.js} +5 -5
- package/es/style.css +1 -1
- package/es/{use-form-common-props-cb0ca65c.js → use-form-common-props-d170ccfd.js} +72 -72
- package/es/{use-global-config-cdaeca54.js → use-global-config-74436b92.js} +14 -14
- package/es/{validator-4ab9774f.js → validator-672bad4a.js} +1 -1
- package/es/{vnode-a83e6de8.js → vnode-6d2615f0.js} +1 -1
- package/es/{zh-cn-8a6390a4.js → zh-cn-ed10eeb1.js} +2 -2
- package/lib/bundle.js +1 -1
- package/lib/bundle.umd.cjs +150 -151
- package/lib/{index-ea159fbc.js → index-c3ddbee7.js} +7460 -7496
- package/lib/{python-2aa774a5.js → python-da8fd227.js} +1 -1
- package/lib/style.css +1 -1
- package/package.json +1 -1
- package/packages/VarietySearch/components/FactorScreen/index.vue +20 -7
- package/packages/VarietySearch/components/FactorScreen/tools.js +0 -41
- package/es/el-checkbox-group-0ea8fbf8.cjs +0 -1
- package/es/el-checkbox-group-4ed993c7.js +0 -1
- package/es/el-menu-item-26071fd6.cjs +0 -1
- package/es/el-menu-item-dac65bb3.js +0 -769
- package/es/raf-744cf95a.js +0 -6
package/es/ChartLayout.js
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import "./base-
|
|
2
|
-
import { E as d } from "./el-empty-
|
|
1
|
+
import "./base-7ff209fc.js";
|
|
2
|
+
import { E as d } from "./el-empty-e0d826de.js";
|
|
3
3
|
import { openBlock as e, createElementBlock as a, normalizeStyle as n, Fragment as o, renderList as u, renderSlot as m, createBlock as s } from "vue";
|
|
4
4
|
import { _ as y } from "./_plugin-vue_export-helper-dad06003.js";
|
|
5
|
-
import "./index-
|
|
6
|
-
import "./index-
|
|
5
|
+
import "./index-d898531c.js";
|
|
6
|
+
import "./index-f402d1da.js";
|
|
7
7
|
const f = {
|
|
8
8
|
__name: "index",
|
|
9
9
|
props: {
|
package/es/CustomFunction.js
CHANGED
|
@@ -1,43 +1,43 @@
|
|
|
1
|
-
import "./base-
|
|
2
|
-
import { E as te } from "./el-button-
|
|
3
|
-
import "./el-tag-
|
|
4
|
-
import { E as _e, a as ve } from "./el-select-
|
|
1
|
+
import "./base-7ff209fc.js";
|
|
2
|
+
import { E as te } from "./el-button-7f58608d.js";
|
|
3
|
+
import "./el-tag-19cc5b59.js";
|
|
4
|
+
import { E as _e, a as ve } from "./el-select-19ee0e79.js";
|
|
5
5
|
import "./el-scrollbar-323542e7.js";
|
|
6
|
-
import "./el-popper-
|
|
7
|
-
import { E as oe } from "./el-popconfirm-
|
|
6
|
+
import "./el-popper-003b3af7.js";
|
|
7
|
+
import { E as oe } from "./el-popconfirm-c2896741.js";
|
|
8
8
|
import "./el-popover-4ed993c7.js";
|
|
9
9
|
import { inject as ne, ref as v, reactive as P, computed as ge, watch as he, nextTick as X, resolveComponent as Y, openBlock as D, createBlock as G, withCtx as s, createElementVNode as a, normalizeClass as U, createVNode as t, unref as b, createTextVNode as S, createElementBlock as L, Fragment as le, renderList as se, toDisplayString as j, withModifiers as T, pushScopeId as ye, popScopeId as Ee, h as M, onMounted as xe, normalizeStyle as be } from "vue";
|
|
10
|
-
import {
|
|
11
|
-
import { E as Ve } from "./el-dialog-
|
|
12
|
-
import "./el-overlay-
|
|
13
|
-
import { E as we } from "./el-divider-
|
|
14
|
-
import { E as Ne } from "./el-empty-
|
|
15
|
-
import { E as ee } from "./el-input-
|
|
10
|
+
import { a as Z, d as ae, b as ie, e as Ce, E as ce, f as ke } from "./index-e17987ac.js";
|
|
11
|
+
import { E as Ve } from "./el-dialog-2f10a2f4.js";
|
|
12
|
+
import "./el-overlay-4e9a99e0.js";
|
|
13
|
+
import { E as we } from "./el-divider-4e66c835.js";
|
|
14
|
+
import { E as Ne } from "./el-empty-e0d826de.js";
|
|
15
|
+
import { E as ee } from "./el-input-31a818d4.js";
|
|
16
16
|
import { G as $e } from "./index-7ed0999e.js";
|
|
17
17
|
import "./el-message-4ed993c7.js";
|
|
18
|
-
import { E as Se } from "./el-message-box-
|
|
19
|
-
import {
|
|
18
|
+
import { E as Se } from "./el-message-box-a3aa9b89.js";
|
|
19
|
+
import { a as De, E as Fe } from "./el-form-item-2b68cdf5.js";
|
|
20
20
|
import { _ as re } from "./_plugin-vue_export-helper-dad06003.js";
|
|
21
|
-
import { E as $ } from "./index-
|
|
22
|
-
import { E as ze } from "./index-
|
|
21
|
+
import { E as $ } from "./index-99abf4ff.js";
|
|
22
|
+
import { E as ze } from "./index-308aab33.js";
|
|
23
23
|
import "./index-2e331d74.js";
|
|
24
|
-
import "./use-global-config-
|
|
25
|
-
import "./use-form-common-props-
|
|
26
|
-
import "./index-
|
|
27
|
-
import "./index-
|
|
28
|
-
import "./index-
|
|
24
|
+
import "./use-global-config-74436b92.js";
|
|
25
|
+
import "./use-form-common-props-d170ccfd.js";
|
|
26
|
+
import "./index-d898531c.js";
|
|
27
|
+
import "./index-f402d1da.js";
|
|
28
|
+
import "./index-6917da9d.js";
|
|
29
29
|
import "./index-657047bb.js";
|
|
30
|
-
import "./index-
|
|
31
|
-
import "./index-
|
|
32
|
-
import "./castArray-
|
|
33
|
-
import "./index-
|
|
34
|
-
import "./scroll-
|
|
35
|
-
import "./debounce-
|
|
36
|
-
import "./vnode-
|
|
30
|
+
import "./index-19ac550e.js";
|
|
31
|
+
import "./index-b56d81e8.js";
|
|
32
|
+
import "./castArray-b9f1609f.js";
|
|
33
|
+
import "./index-808db9b4.js";
|
|
34
|
+
import "./scroll-8642151c.js";
|
|
35
|
+
import "./debounce-23c2f7e1.js";
|
|
36
|
+
import "./vnode-6d2615f0.js";
|
|
37
37
|
import "./typescript-7ae59c4c.js";
|
|
38
|
-
import "./validator-
|
|
39
|
-
import "./_initCloneObject-
|
|
40
|
-
import "./config-provider-
|
|
38
|
+
import "./validator-672bad4a.js";
|
|
39
|
+
import "./_initCloneObject-009eedf8.js";
|
|
40
|
+
import "./config-provider-071b8bec.js";
|
|
41
41
|
const K = (f) => (ye("data-v-b5dcb4b8"), f = f(), Ee(), f), Ie = { class: "custom-header" }, Me = { class: "left" }, Oe = ["id"], Be = { class: "right" }, qe = { class: "manage-dialog-body" }, Re = { class: "func-list" }, Ue = { class: "search" }, je = /* @__PURE__ */ K(() => /* @__PURE__ */ a("span", null, "输入函数关键字", -1)), Te = ["onClick"], Le = { class: "icon-box" }, We = { class: "rule-form" }, Ae = { class: "header" }, Pe = /* @__PURE__ */ K(() => /* @__PURE__ */ a("span", null, "函数名称:", -1)), Ge = { class: "right" }, Ke = /* @__PURE__ */ K(() => /* @__PURE__ */ a("div", { class: "tip-box" }, "说明: 公式里可以使用变量, 变量名命名格式: ${变量名}, 后续可在应用函数时填写具体值, 系统会自动换算", -1)), He = { class: "custom-header" }, Je = { class: "left" }, Qe = ["id"], Xe = { class: "right" }, Ye = { class: "content" }, Ze = { class: "dialog-footer" }, et = {
|
|
42
42
|
__name: "ManageDialog",
|
|
43
43
|
props: {
|
package/es/FactorWarning.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";require("./base-ef747d02.cjs");const F=require("./zh-cn-6a0f844c.cjs"),Q=require("./el-dialog-1b185570.cjs");require("./el-overlay-ea65cb05.cjs");require("./el-tag-6d8e653e.cjs");require("./el-tooltip-0ea8fbf8.cjs");const X=require("./el-popper-2d3914e4.cjs"),L=require("./el-table-column-98570a4d.cjs"),D=require("./el-checkbox-08185353.cjs");require("./el-scrollbar-bc3f790d.cjs");const Y=require("./el-popconfirm-9e232436.cjs");require("./el-popover-0ea8fbf8.cjs");const Z=require("./el-button-974ff9e9.cjs"),O=require("./el-form-item-c997b4fa.cjs"),ee=require("./el-input-fa18ef84.cjs"),te=require("./el-text-a18106cb.cjs"),oe=require("./el-input-number-3d94fa58.cjs");require("./el-checkbox-group-0ea8fbf8.cjs");const le=require("./el-segmented-140ac042.cjs"),e=require("vue"),g=require("./index-33f80550.cjs"),ae=require("./index-8901a38c.cjs"),re=require("./_plugin-vue_export-helper-f246444f.cjs"),ne=require("./el-message-box-31e0aa98.cjs"),ce=require("./index-6b99def3.cjs");require("./config-provider-2ae47cc8.cjs");require("./use-global-config-c80f33a4.cjs");require("./use-form-common-props-d3ed62c6.cjs");require("./index-9780a537.cjs");require("./index-bb833443.cjs");require("./index-37b8d3c6.cjs");require("./index-28e03bad.cjs");require("./index-f1c702f6.cjs");require("./vnode-b906ae6d.cjs");require("./scroll-b108dabd.cjs");require("./index-e8eeea22.cjs");require("./_initCloneObject-2b82e9f7.cjs");require("./castArray-35947698.cjs");require("./debounce-62f5b6e8.cjs");require("./raf-8249652f.cjs");require("./index-eea0bcb3.cjs");require("./typescript-b63f8e83.cjs");require("./index-7dce9f59.cjs");require("./validator-07160325.cjs");const ue={ruleFormPrice:!0,ruleFormMark:!0,tableStatus:!0,tableCreateTime:!0,tableMark:!0,tableEnable:!0};const x=a=>(e.pushScopeId("data-v-b2d15520"),a=a(),e.popScopeId(),a),ie={class:"st-factorWarning"},de={class:"custom-header"},se=x(()=>e.createElementVNode("span",{style:{"margin-right":"4px"}},"因子预警",-1)),me={class:"factor-name"},pe=["onClick"],fe={class:"factor-name"},ke=["onClick"],ye={style:{display:"flex","align-items":"start"}},Ce={key:0,style:{flex:"1"}},he=x(()=>e.createElementVNode("span",{style:{margin:"0 5px"}},"~",-1)),ve={key:0,style:{color:"#f56c6c"}},Ve={key:1,style:{color:"#67c23a"}},Ne={key:0},xe={key:1},_e={key:2},be={class:"shortcut-title"},ge=x(()=>e.createElementVNode("span",null,"我的配置",-1)),we={class:"shortcut-config"},Be={key:1,class:"empty"},Te={class:"shortcut-title"},Ee=x(()=>e.createElementVNode("span",null,"新增配置",-1)),Se={class:"custom-footer"},qe={__name:"index",props:e.mergeModels({title:{type:[String,null],default:null},moreFactorOptions:{type:Array,default:()=>[]},emptyFactorOptions:{type:Array,default:()=>[]},tableData:{type:Array,default:()=>[]},shortcutData:{type:Array,default:()=>[]},showConfig:{type:Object,default:()=>({})},allowOperation:{type:Boolean,default:!0}},{visible:{default:!1},visibleModifiers:{}}),emits:e.mergeModels(["add","delete","enabled","closed","shortcutAdd","shortcutDelete"],["update:visible"]),setup(a,{emit:$}){const f=e.ref("ruleForm"),h=e.useModel(a,"visible"),y=$,v=a,C=Object.assign(ue,v.showConfig),V=e.ref(null),l=e.ref({factorType:1,factorSelectedList:[],totalCount:1,minPrice:null,maxPrice:null,mark:null}),P=e.ref({factorType:[{required:!0,message:"请选择交易类型",trigger:"blur"}],factorSelectedList:[{required:!0,message:"请选择预警因子",trigger:"blur"}],totalCount:[{required:!0,message:"请填写预警次数",trigger:"blur"}]}),w=e.ref(null),r=e.ref({shortcutName:null,factorType:1,factorSelectedList:[],totalCount:1}),z=e.ref({factorType:[{required:!0,message:"请选择交易类型",trigger:"blur"}],factorSelectedList:[{required:!0,message:"请选择预警因子",trigger:"blur"}],totalCount:[{required:!0,message:"请填写预警次数",trigger:"blur"}],shortcutName:[{required:!0,message:"请填写配置名称",trigger:"blur"}]}),N=()=>{l.value={factorType:1,factorSelectedList:[],totalCount:1,minPrice:null,maxPrice:null,mark:null},r.value={shortcutName:null,factorType:1,factorSelectedList:[],totalCount:1}},B=async u=>{Object.assign(l.value,{factorSelectedList:[u],totalCount:3});const o={factorSelectedList:l.value.factorSelectedList.map(n=>{let c=3;const i=v.tableData.find(({factorExtendName:s})=>s===n);if(i){const s=i.totalCount-i.currentCount;s===0?c=3:c=Math.min(3,12-s>=0?12-s:0)}return{factorName:n,...l.value,totalCount:c}})},m=()=>{const n=l.value.factorType;N(),l.value.factorType=n};_(V.value,o,m)},I=async u=>{const o=JSON.parse(u.data);Object.assign(l.value,{factorType:o.factorType,factorSelectedList:o.factorSelectedList,totalCount:o.totalCount});const m={factorSelectedList:l.value.factorSelectedList.map(c=>{let i=o.totalCount;const s=v.tableData.find(({factorExtendName:p})=>p===c);if(s){const p=s.totalCount-s.currentCount;p===0?i=o.totalCount:i=Math.min(o.totalCount,10-p>=0?10-p:0)}return{factorName:c,...l.value,totalCount:i}})},n=()=>N();_(V.value,m,n)},_=ae.G(async(u,o,m)=>{u&&await u.validate(n=>{if(!n)return!1;const c=o??{factorSelectedList:l.value.factorSelectedList.map(i=>({factorName:i,...l.value}))};y("add",c),m?m():h.value=!1})},200),M=async u=>{u&&await u.validate(o=>{if(!o)return!1;const m={shortcutName:r.value.shortcutName,data:JSON.stringify(r.value)};y("shortcutAdd",m),N()})},U=u=>{r.value=JSON.parse(u.data)},A=u=>{ne.ElMessageBox.confirm(`是否确认删除配置: ${u.shortcutName} ?`,"删除提示",{confirmButtonText:"确认",cancelButtonText:"取消",type:"warning"}).then(()=>y("shortcutDelete",u))};return e.watch(()=>h.value,u=>{u&&(f.value=v.allowOperation?"ruleForm":"table",N())},{immediate:!0}),(u,o)=>{const m=le.ElSegmented,n=Z.ElButton,c=O.ElFormItem,i=D.ElCheckbox,s=D.ElCheckboxGroup,p=oe.ElInputNumber,R=te.ElText,T=ee.ElInput,E=O.ElForm,k=L.ElTableColumn,j=Y.ElPopconfirm,J=L.ElTable,S=g.ElIcon,q=X.ElTooltip,W=ce.ElTag,G=Q.ElDialog,H=F.ElConfigProvider;return e.openBlock(),e.createElementBlock("div",ie,[e.createVNode(H,{locale:e.unref(F.zhCn)},{default:e.withCtx(()=>[e.createVNode(G,{modelValue:h.value,"onUpdate:modelValue":o[17]||(o[17]=t=>h.value=t),width:"1020","align-center":"","destroy-on-close":"",onClosed:o[18]||(o[18]=t=>y("closed"))},{header:e.withCtx(({close:t,titleId:d,titleClass:b})=>[e.createElementVNode("div",de,[e.createElementVNode("div",{class:e.normalizeClass(b)},[se,e.createElementVNode("span",null,e.toDisplayString(a.title),1)],2),e.createVNode(m,{modelValue:f.value,"onUpdate:modelValue":o[0]||(o[0]=K=>f.value=K),size:"default",options:[{label:"添加",value:"ruleForm",disabled:!a.allowOperation},{label:"管理",value:"table",disabled:!1},{label:"快捷配置",value:"shortcut",disabled:!a.allowOperation}]},null,8,["modelValue","options"])])]),footer:e.withCtx(()=>[e.createElementVNode("div",Se,[e.createVNode(n,{size:"default",onClick:o[14]||(o[14]=t=>h.value=!1)},{default:e.withCtx(()=>[e.createTextVNode("关闭")]),_:1}),f.value==="ruleForm"?(e.openBlock(),e.createBlock(n,{key:0,size:"default",type:"primary",onClick:o[15]||(o[15]=t=>e.unref(_)(V.value))},{default:e.withCtx(()=>[e.createTextVNode(" 确认 ")]),_:1})):e.createCommentVNode("",!0),f.value==="shortcut"?(e.openBlock(),e.createBlock(n,{key:1,size:"default",type:"primary",onClick:o[16]||(o[16]=t=>M(w.value))},{default:e.withCtx(()=>[e.createTextVNode(" 保存配置 ")]),_:1})):e.createCommentVNode("",!0)])]),default:e.withCtx(()=>[f.value==="ruleForm"?(e.openBlock(),e.createBlock(E,{key:0,ref_key:"ruleFormRef",ref:V,model:l.value,rules:P.value,size:"default","label-width":"90px"},{default:e.withCtx(()=>[e.createVNode(c,{label:"交易类型:",prop:"factorType"},{default:e.withCtx(()=>[e.createVNode(n,{type:"danger",plain:l.value.factorType!==1,onClick:o[1]||(o[1]=()=>{l.value.factorType===-1&&(l.value.factorSelectedList=[]),l.value.factorType=1})},{default:e.withCtx(()=>[e.createTextVNode(" 多 ")]),_:1},8,["plain"]),e.createVNode(n,{type:"success",plain:l.value.factorType!==-1,onClick:o[2]||(o[2]=()=>{l.value.factorType===1&&(l.value.factorSelectedList=[]),l.value.factorType=-1})},{default:e.withCtx(()=>[e.createTextVNode(" 空 ")]),_:1},8,["plain"])]),_:1}),e.createVNode(c,{label:"预警因子:",prop:"factorSelectedList"},{default:e.withCtx(()=>[e.createVNode(s,{modelValue:l.value.factorSelectedList,"onUpdate:modelValue":o[3]||(o[3]=t=>l.value.factorSelectedList=t)},{default:e.withCtx(()=>[l.value.factorType===1?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:0},e.renderList(a.moreFactorOptions,(t,d)=>(e.openBlock(),e.createElementBlock("div",{class:"factor-checkbox",key:d},[e.createVNode(i,{label:t.factorTypeName,value:t.factorTypeName},{default:e.withCtx(()=>[e.createElementVNode("span",me,e.toDisplayString(t.factorTypeName),1)]),_:2},1032,["label","value"]),e.createElementVNode("span",{class:"tag-button",onClick:b=>B(t.factorTypeName)},"+3",8,pe)]))),128)):e.createCommentVNode("",!0),l.value.factorType===-1?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:1},e.renderList(a.emptyFactorOptions,(t,d)=>(e.openBlock(),e.createElementBlock("div",{class:"factor-checkbox",key:d},[e.createVNode(i,{label:t.factorTypeName,value:t.factorTypeName},{default:e.withCtx(()=>[e.createElementVNode("span",fe,e.toDisplayString(t.factorTypeName),1)]),_:2},1032,["label","value"]),e.createElementVNode("span",{class:"tag-button",onClick:b=>B(t.factorTypeName)},"+3",8,ke)]))),128)):e.createCommentVNode("",!0)]),_:1},8,["modelValue"])]),_:1}),e.createVNode(c,{label:"预警次数:",prop:"totalCount"},{default:e.withCtx(()=>[e.createElementVNode("div",ye,[e.createVNode(p,{modelValue:l.value.totalCount,"onUpdate:modelValue":o[4]||(o[4]=t=>l.value.totalCount=t),min:1,"controls-position":"right",style:{"margin-right":"20px"}},null,8,["modelValue"]),a.shortcutData.length?(e.openBlock(),e.createElementBlock("div",Ce,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(a.shortcutData,t=>(e.openBlock(),e.createBlock(n,{key:t.id,onClick:d=>I(t),style:{margin:"0 12px 4px 0"}},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(t.shortcutName),1)]),_:2},1032,["onClick"]))),128))])):(e.openBlock(),e.createBlock(R,{key:1,type:"primary",style:{cursor:"pointer"},onClick:o[5]||(o[5]=()=>f.value="shortcut")},{default:e.withCtx(()=>[e.createTextVNode(" 暂无快捷配置, 是否点击前往自定义配置? ")]),_:1}))])]),_:1}),e.unref(C).ruleFormPrice?(e.openBlock(),e.createBlock(c,{key:0,label:"价格范围:"},{default:e.withCtx(()=>[e.createVNode(p,{modelValue:l.value.minPrice,"onUpdate:modelValue":o[6]||(o[6]=t=>l.value.minPrice=t),min:-999,placeholder:"请输入",max:999,"controls-position":"right"},null,8,["modelValue"]),he,e.createVNode(p,{modelValue:l.value.maxPrice,"onUpdate:modelValue":o[7]||(o[7]=t=>l.value.maxPrice=t),placeholder:"请输入",min:-999,max:999,"controls-position":"right"},null,8,["modelValue"])]),_:1})):e.createCommentVNode("",!0),e.unref(C).ruleFormMark?(e.openBlock(),e.createBlock(c,{key:1,label:"备注:"},{default:e.withCtx(()=>[e.createVNode(T,{modelValue:l.value.mark,"onUpdate:modelValue":o[8]||(o[8]=t=>l.value.mark=t),type:"textarea",placeholder:"请输入关键字",rows:2,style:{width:"380px"}},null,8,["modelValue"])]),_:1})):e.createCommentVNode("",!0)]),_:1},8,["model","rules"])):e.createCommentVNode("",!0),f.value==="table"?(e.openBlock(),e.createBlock(J,{key:1,data:a.tableData,size:"small"},{default:e.withCtx(()=>[e.createVNode(k,{label:"预警周期",width:"70"},{default:e.withCtx(t=>[e.createTextVNode(e.toDisplayString(t.row.freqName||"-"),1)]),_:1}),e.createVNode(k,{label:"交易类型",width:"70"},{default:e.withCtx(t=>[t.row.factorExtendValue==1?(e.openBlock(),e.createElementBlock("span",ve,"多")):(e.openBlock(),e.createElementBlock("span",Ve,"空"))]),_:1}),e.createVNode(k,{label:"预警因子"},{default:e.withCtx(t=>[e.createTextVNode(e.toDisplayString(t.row.factorExtendName||"-"),1)]),_:1}),e.createVNode(k,{label:"预警次数",width:"70"},{default:e.withCtx(t=>[e.createTextVNode(e.toDisplayString(`${t.row.currentCount} / ${t.row.totalCount}`),1)]),_:1}),e.unref(C).tableStatus?(e.openBlock(),e.createBlock(k,{key:0,label:"状态",width:"70"},{default:e.withCtx(t=>[e.createElementVNode("div",null,[t.row.enable===1?(e.openBlock(),e.createElementBlock("span",Ne,"未触发")):t.row.enable===2?(e.openBlock(),e.createElementBlock("span",xe,"已触发")):(e.openBlock(),e.createElementBlock("span",_e,"-"))])]),_:1})):e.createCommentVNode("",!0),e.unref(C).tableCreateTime?(e.openBlock(),e.createBlock(k,{key:1,label:"设置时间",width:"136"},{default:e.withCtx(t=>[e.createTextVNode(e.toDisplayString(t.row.createdTime||"-"),1)]),_:1})):e.createCommentVNode("",!0),e.unref(C).tableMark?(e.openBlock(),e.createBlock(k,{key:2,label:"备注",width:"70"},{default:e.withCtx(t=>[e.createTextVNode(e.toDisplayString(t.row.mark||"-"),1)]),_:1})):e.createCommentVNode("",!0),a.allowOperation?(e.openBlock(),e.createBlock(k,{key:3,label:"操作",width:"140"},{default:e.withCtx(t=>[e.unref(C).tableEnable?(e.openBlock(),e.createBlock(n,{key:0,disabled:t.row.currentCount!==t.row.totalCount,size:"small",onClick:d=>y("enabled",t.row)},{default:e.withCtx(()=>[e.createTextVNode(" 启用 ")]),_:2},1032,["disabled","onClick"])):e.createCommentVNode("",!0),e.createVNode(j,{title:"确定删除?",onConfirm:d=>y("delete",t.row)},{reference:e.withCtx(()=>[e.createVNode(n,{size:"small"},{default:e.withCtx(()=>[e.createTextVNode("删除")]),_:1})]),_:2},1032,["onConfirm"])]),_:1})):e.createCommentVNode("",!0)]),_:1},8,["data"])):e.createCommentVNode("",!0),f.value==="shortcut"?(e.openBlock(),e.createElementBlock(e.Fragment,{key:2},[e.createElementVNode("div",be,[ge,e.createVNode(q,{effect:"dark",content:"如有配置数据, 可点击查看该配置的具体信息",placement:"right-start"},{default:e.withCtx(()=>[e.createVNode(S,null,{default:e.withCtx(()=>[e.createVNode(e.unref(g.info_filled_default))]),_:1})]),_:1})]),e.createElementVNode("div",we,[a.shortcutData.length?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:0},e.renderList(a.shortcutData,t=>(e.openBlock(),e.createBlock(W,{key:t.id,type:"primary",size:"default",closable:"",onClick:d=>U(t),onClose:d=>A(t)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(t.shortcutName),1)]),_:2},1032,["onClick","onClose"]))),128)):(e.openBlock(),e.createElementBlock("span",Be,"暂无数据"))]),e.createElementVNode("div",Te,[Ee,e.createVNode(q,{effect:"dark",content:"同名配置将会进行覆盖",placement:"right-start"},{default:e.withCtx(()=>[e.createVNode(S,null,{default:e.withCtx(()=>[e.createVNode(e.unref(g.info_filled_default))]),_:1})]),_:1})]),e.createVNode(E,{ref_key:"shortcut_ruleFormRef",ref:w,model:r.value,rules:z.value,"label-width":"90px",size:"default"},{default:e.withCtx(()=>[e.createVNode(c,{label:"配置名称:",prop:"shortcutName"},{default:e.withCtx(()=>[e.createVNode(T,{modelValue:r.value.shortcutName,"onUpdate:modelValue":o[9]||(o[9]=t=>r.value.shortcutName=t),maxlength:"6","show-word-limit":"",style:{width:"160px"}},null,8,["modelValue"])]),_:1}),e.createVNode(c,{label:"交易类型:",prop:"factorType"},{default:e.withCtx(()=>[e.createVNode(n,{type:"danger",plain:r.value.factorType!==1,onClick:o[10]||(o[10]=()=>{r.value.factorType===-1&&(r.value.factorSelectedList=[]),r.value.factorType=1})},{default:e.withCtx(()=>[e.createTextVNode(" 多 ")]),_:1},8,["plain"]),e.createVNode(n,{type:"success",plain:r.value.factorType!==-1,onClick:o[11]||(o[11]=()=>{r.value.factorType===1&&(r.value.factorSelectedList=[]),r.value.factorType=-1})},{default:e.withCtx(()=>[e.createTextVNode(" 空 ")]),_:1},8,["plain"])]),_:1}),e.createVNode(c,{label:"预警因子:",prop:"factorSelectedList"},{default:e.withCtx(()=>[e.createVNode(s,{modelValue:r.value.factorSelectedList,"onUpdate:modelValue":o[12]||(o[12]=t=>r.value.factorSelectedList=t)},{default:e.withCtx(()=>[r.value.factorType===1?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:0},e.renderList(a.moreFactorOptions,(t,d)=>(e.openBlock(),e.createBlock(i,{key:d,label:t.factorTypeName,value:t.factorTypeName,style:{width:"200px"}},null,8,["label","value"]))),128)):e.createCommentVNode("",!0),r.value.factorType===-1?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:1},e.renderList(a.emptyFactorOptions,(t,d)=>(e.openBlock(),e.createBlock(i,{key:d,label:t.factorTypeName,value:t.factorTypeName,style:{width:"200px"}},null,8,["label","value"]))),128)):e.createCommentVNode("",!0)]),_:1},8,["modelValue"])]),_:1}),e.createVNode(c,{label:"预警次数:",prop:"totalCount"},{default:e.withCtx(()=>[e.createVNode(p,{modelValue:r.value.totalCount,"onUpdate:modelValue":o[13]||(o[13]=t=>r.value.totalCount=t),min:1,max:10,"controls-position":"right",style:{"margin-right":"20px"}},null,8,["modelValue"])]),_:1})]),_:1},8,["model","rules"])],64)):e.createCommentVNode("",!0)]),_:1},8,["modelValue"])]),_:1},8,["locale"])])}}},Fe=re._export_sfc(qe,[["__scopeId","data-v-b2d15520"]]),Le={install(a){a.component("st-factorWarning",Fe)}};module.exports=Le;
|
|
1
|
+
"use strict";require("./base-ef747d02.cjs");const F=require("./zh-cn-6a0f844c.cjs"),Q=require("./el-dialog-1b185570.cjs");require("./el-overlay-ea65cb05.cjs");require("./el-tag-6d8e653e.cjs");require("./el-tooltip-0ea8fbf8.cjs");const X=require("./el-popper-2d3914e4.cjs"),L=require("./el-table-column-98570a4d.cjs"),D=require("./el-checkbox-08185353.cjs");require("./el-scrollbar-bc3f790d.cjs");const Y=require("./el-popconfirm-9e232436.cjs");require("./el-popover-0ea8fbf8.cjs");const Z=require("./el-button-974ff9e9.cjs"),O=require("./el-form-item-c997b4fa.cjs"),ee=require("./el-input-fa18ef84.cjs"),te=require("./el-text-a18106cb.cjs"),oe=require("./el-checkbox-group-f775e73f.cjs"),le=require("./el-segmented-140ac042.cjs"),e=require("vue"),g=require("./index-33f80550.cjs"),ae=require("./index-8901a38c.cjs"),re=require("./_plugin-vue_export-helper-f246444f.cjs"),ne=require("./el-message-box-31e0aa98.cjs"),ce=require("./index-6b99def3.cjs");require("./config-provider-2ae47cc8.cjs");require("./use-global-config-c80f33a4.cjs");require("./use-form-common-props-d3ed62c6.cjs");require("./index-9780a537.cjs");require("./index-bb833443.cjs");require("./index-37b8d3c6.cjs");require("./index-28e03bad.cjs");require("./index-f1c702f6.cjs");require("./vnode-b906ae6d.cjs");require("./scroll-b108dabd.cjs");require("./index-e8eeea22.cjs");require("./_initCloneObject-2b82e9f7.cjs");require("./castArray-35947698.cjs");require("./debounce-62f5b6e8.cjs");require("./raf-8249652f.cjs");require("./index-eea0bcb3.cjs");require("./typescript-b63f8e83.cjs");require("./index-7dce9f59.cjs");require("./validator-07160325.cjs");const ue={ruleFormPrice:!0,ruleFormMark:!0,tableStatus:!0,tableCreateTime:!0,tableMark:!0,tableEnable:!0};const x=a=>(e.pushScopeId("data-v-b2d15520"),a=a(),e.popScopeId(),a),ie={class:"st-factorWarning"},de={class:"custom-header"},se=x(()=>e.createElementVNode("span",{style:{"margin-right":"4px"}},"因子预警",-1)),me={class:"factor-name"},pe=["onClick"],fe={class:"factor-name"},ke=["onClick"],ye={style:{display:"flex","align-items":"start"}},Ce={key:0,style:{flex:"1"}},he=x(()=>e.createElementVNode("span",{style:{margin:"0 5px"}},"~",-1)),ve={key:0,style:{color:"#f56c6c"}},Ve={key:1,style:{color:"#67c23a"}},Ne={key:0},xe={key:1},_e={key:2},be={class:"shortcut-title"},ge=x(()=>e.createElementVNode("span",null,"我的配置",-1)),we={class:"shortcut-config"},Be={key:1,class:"empty"},Te={class:"shortcut-title"},Ee=x(()=>e.createElementVNode("span",null,"新增配置",-1)),Se={class:"custom-footer"},qe={__name:"index",props:e.mergeModels({title:{type:[String,null],default:null},moreFactorOptions:{type:Array,default:()=>[]},emptyFactorOptions:{type:Array,default:()=>[]},tableData:{type:Array,default:()=>[]},shortcutData:{type:Array,default:()=>[]},showConfig:{type:Object,default:()=>({})},allowOperation:{type:Boolean,default:!0}},{visible:{default:!1},visibleModifiers:{}}),emits:e.mergeModels(["add","delete","enabled","closed","shortcutAdd","shortcutDelete"],["update:visible"]),setup(a,{emit:$}){const f=e.ref("ruleForm"),h=e.useModel(a,"visible"),y=$,v=a,C=Object.assign(ue,v.showConfig),V=e.ref(null),l=e.ref({factorType:1,factorSelectedList:[],totalCount:1,minPrice:null,maxPrice:null,mark:null}),P=e.ref({factorType:[{required:!0,message:"请选择交易类型",trigger:"blur"}],factorSelectedList:[{required:!0,message:"请选择预警因子",trigger:"blur"}],totalCount:[{required:!0,message:"请填写预警次数",trigger:"blur"}]}),w=e.ref(null),r=e.ref({shortcutName:null,factorType:1,factorSelectedList:[],totalCount:1}),z=e.ref({factorType:[{required:!0,message:"请选择交易类型",trigger:"blur"}],factorSelectedList:[{required:!0,message:"请选择预警因子",trigger:"blur"}],totalCount:[{required:!0,message:"请填写预警次数",trigger:"blur"}],shortcutName:[{required:!0,message:"请填写配置名称",trigger:"blur"}]}),N=()=>{l.value={factorType:1,factorSelectedList:[],totalCount:1,minPrice:null,maxPrice:null,mark:null},r.value={shortcutName:null,factorType:1,factorSelectedList:[],totalCount:1}},B=async u=>{Object.assign(l.value,{factorSelectedList:[u],totalCount:3});const o={factorSelectedList:l.value.factorSelectedList.map(n=>{let c=3;const i=v.tableData.find(({factorExtendName:s})=>s===n);if(i){const s=i.totalCount-i.currentCount;s===0?c=3:c=Math.min(3,12-s>=0?12-s:0)}return{factorName:n,...l.value,totalCount:c}})},m=()=>{const n=l.value.factorType;N(),l.value.factorType=n};_(V.value,o,m)},M=async u=>{const o=JSON.parse(u.data);Object.assign(l.value,{factorType:o.factorType,factorSelectedList:o.factorSelectedList,totalCount:o.totalCount});const m={factorSelectedList:l.value.factorSelectedList.map(c=>{let i=o.totalCount;const s=v.tableData.find(({factorExtendName:p})=>p===c);if(s){const p=s.totalCount-s.currentCount;p===0?i=o.totalCount:i=Math.min(o.totalCount,10-p>=0?10-p:0)}return{factorName:c,...l.value,totalCount:i}})},n=()=>N();_(V.value,m,n)},_=ae.G(async(u,o,m)=>{u&&await u.validate(n=>{if(!n)return!1;const c=o??{factorSelectedList:l.value.factorSelectedList.map(i=>({factorName:i,...l.value}))};y("add",c),m?m():h.value=!1})},200),I=async u=>{u&&await u.validate(o=>{if(!o)return!1;const m={shortcutName:r.value.shortcutName,data:JSON.stringify(r.value)};y("shortcutAdd",m),N()})},U=u=>{r.value=JSON.parse(u.data)},A=u=>{ne.ElMessageBox.confirm(`是否确认删除配置: ${u.shortcutName} ?`,"删除提示",{confirmButtonText:"确认",cancelButtonText:"取消",type:"warning"}).then(()=>y("shortcutDelete",u))};return e.watch(()=>h.value,u=>{u&&(f.value=v.allowOperation?"ruleForm":"table",N())},{immediate:!0}),(u,o)=>{const m=le.ElSegmented,n=Z.ElButton,c=O.ElFormItem,i=D.ElCheckbox,s=D.ElCheckboxGroup,p=oe.ElInputNumber,R=te.ElText,T=ee.ElInput,E=O.ElForm,k=L.ElTableColumn,j=Y.ElPopconfirm,G=L.ElTable,S=g.ElIcon,q=X.ElTooltip,J=ce.ElTag,W=Q.ElDialog,H=F.ElConfigProvider;return e.openBlock(),e.createElementBlock("div",ie,[e.createVNode(H,{locale:e.unref(F.zhCn)},{default:e.withCtx(()=>[e.createVNode(W,{modelValue:h.value,"onUpdate:modelValue":o[17]||(o[17]=t=>h.value=t),width:"1020","align-center":"","destroy-on-close":"",onClosed:o[18]||(o[18]=t=>y("closed"))},{header:e.withCtx(({close:t,titleId:d,titleClass:b})=>[e.createElementVNode("div",de,[e.createElementVNode("div",{class:e.normalizeClass(b)},[se,e.createElementVNode("span",null,e.toDisplayString(a.title),1)],2),e.createVNode(m,{modelValue:f.value,"onUpdate:modelValue":o[0]||(o[0]=K=>f.value=K),size:"default",options:[{label:"添加",value:"ruleForm",disabled:!a.allowOperation},{label:"管理",value:"table",disabled:!1},{label:"快捷配置",value:"shortcut",disabled:!a.allowOperation}]},null,8,["modelValue","options"])])]),footer:e.withCtx(()=>[e.createElementVNode("div",Se,[e.createVNode(n,{size:"default",onClick:o[14]||(o[14]=t=>h.value=!1)},{default:e.withCtx(()=>[e.createTextVNode("关闭")]),_:1}),f.value==="ruleForm"?(e.openBlock(),e.createBlock(n,{key:0,size:"default",type:"primary",onClick:o[15]||(o[15]=t=>e.unref(_)(V.value))},{default:e.withCtx(()=>[e.createTextVNode(" 确认 ")]),_:1})):e.createCommentVNode("",!0),f.value==="shortcut"?(e.openBlock(),e.createBlock(n,{key:1,size:"default",type:"primary",onClick:o[16]||(o[16]=t=>I(w.value))},{default:e.withCtx(()=>[e.createTextVNode(" 保存配置 ")]),_:1})):e.createCommentVNode("",!0)])]),default:e.withCtx(()=>[f.value==="ruleForm"?(e.openBlock(),e.createBlock(E,{key:0,ref_key:"ruleFormRef",ref:V,model:l.value,rules:P.value,size:"default","label-width":"90px"},{default:e.withCtx(()=>[e.createVNode(c,{label:"交易类型:",prop:"factorType"},{default:e.withCtx(()=>[e.createVNode(n,{type:"danger",plain:l.value.factorType!==1,onClick:o[1]||(o[1]=()=>{l.value.factorType===-1&&(l.value.factorSelectedList=[]),l.value.factorType=1})},{default:e.withCtx(()=>[e.createTextVNode(" 多 ")]),_:1},8,["plain"]),e.createVNode(n,{type:"success",plain:l.value.factorType!==-1,onClick:o[2]||(o[2]=()=>{l.value.factorType===1&&(l.value.factorSelectedList=[]),l.value.factorType=-1})},{default:e.withCtx(()=>[e.createTextVNode(" 空 ")]),_:1},8,["plain"])]),_:1}),e.createVNode(c,{label:"预警因子:",prop:"factorSelectedList"},{default:e.withCtx(()=>[e.createVNode(s,{modelValue:l.value.factorSelectedList,"onUpdate:modelValue":o[3]||(o[3]=t=>l.value.factorSelectedList=t)},{default:e.withCtx(()=>[l.value.factorType===1?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:0},e.renderList(a.moreFactorOptions,(t,d)=>(e.openBlock(),e.createElementBlock("div",{class:"factor-checkbox",key:d},[e.createVNode(i,{label:t.factorTypeName,value:t.factorTypeName},{default:e.withCtx(()=>[e.createElementVNode("span",me,e.toDisplayString(t.factorTypeName),1)]),_:2},1032,["label","value"]),e.createElementVNode("span",{class:"tag-button",onClick:b=>B(t.factorTypeName)},"+3",8,pe)]))),128)):e.createCommentVNode("",!0),l.value.factorType===-1?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:1},e.renderList(a.emptyFactorOptions,(t,d)=>(e.openBlock(),e.createElementBlock("div",{class:"factor-checkbox",key:d},[e.createVNode(i,{label:t.factorTypeName,value:t.factorTypeName},{default:e.withCtx(()=>[e.createElementVNode("span",fe,e.toDisplayString(t.factorTypeName),1)]),_:2},1032,["label","value"]),e.createElementVNode("span",{class:"tag-button",onClick:b=>B(t.factorTypeName)},"+3",8,ke)]))),128)):e.createCommentVNode("",!0)]),_:1},8,["modelValue"])]),_:1}),e.createVNode(c,{label:"预警次数:",prop:"totalCount"},{default:e.withCtx(()=>[e.createElementVNode("div",ye,[e.createVNode(p,{modelValue:l.value.totalCount,"onUpdate:modelValue":o[4]||(o[4]=t=>l.value.totalCount=t),min:1,"controls-position":"right",style:{"margin-right":"20px"}},null,8,["modelValue"]),a.shortcutData.length?(e.openBlock(),e.createElementBlock("div",Ce,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(a.shortcutData,t=>(e.openBlock(),e.createBlock(n,{key:t.id,onClick:d=>M(t),style:{margin:"0 12px 4px 0"}},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(t.shortcutName),1)]),_:2},1032,["onClick"]))),128))])):(e.openBlock(),e.createBlock(R,{key:1,type:"primary",style:{cursor:"pointer"},onClick:o[5]||(o[5]=()=>f.value="shortcut")},{default:e.withCtx(()=>[e.createTextVNode(" 暂无快捷配置, 是否点击前往自定义配置? ")]),_:1}))])]),_:1}),e.unref(C).ruleFormPrice?(e.openBlock(),e.createBlock(c,{key:0,label:"价格范围:"},{default:e.withCtx(()=>[e.createVNode(p,{modelValue:l.value.minPrice,"onUpdate:modelValue":o[6]||(o[6]=t=>l.value.minPrice=t),min:-999,placeholder:"请输入",max:999,"controls-position":"right"},null,8,["modelValue"]),he,e.createVNode(p,{modelValue:l.value.maxPrice,"onUpdate:modelValue":o[7]||(o[7]=t=>l.value.maxPrice=t),placeholder:"请输入",min:-999,max:999,"controls-position":"right"},null,8,["modelValue"])]),_:1})):e.createCommentVNode("",!0),e.unref(C).ruleFormMark?(e.openBlock(),e.createBlock(c,{key:1,label:"备注:"},{default:e.withCtx(()=>[e.createVNode(T,{modelValue:l.value.mark,"onUpdate:modelValue":o[8]||(o[8]=t=>l.value.mark=t),type:"textarea",placeholder:"请输入关键字",rows:2,style:{width:"380px"}},null,8,["modelValue"])]),_:1})):e.createCommentVNode("",!0)]),_:1},8,["model","rules"])):e.createCommentVNode("",!0),f.value==="table"?(e.openBlock(),e.createBlock(G,{key:1,data:a.tableData,size:"small"},{default:e.withCtx(()=>[e.createVNode(k,{label:"预警周期",width:"70"},{default:e.withCtx(t=>[e.createTextVNode(e.toDisplayString(t.row.freqName||"-"),1)]),_:1}),e.createVNode(k,{label:"交易类型",width:"70"},{default:e.withCtx(t=>[t.row.factorExtendValue==1?(e.openBlock(),e.createElementBlock("span",ve,"多")):(e.openBlock(),e.createElementBlock("span",Ve,"空"))]),_:1}),e.createVNode(k,{label:"预警因子"},{default:e.withCtx(t=>[e.createTextVNode(e.toDisplayString(t.row.factorExtendName||"-"),1)]),_:1}),e.createVNode(k,{label:"预警次数",width:"70"},{default:e.withCtx(t=>[e.createTextVNode(e.toDisplayString(`${t.row.currentCount} / ${t.row.totalCount}`),1)]),_:1}),e.unref(C).tableStatus?(e.openBlock(),e.createBlock(k,{key:0,label:"状态",width:"70"},{default:e.withCtx(t=>[e.createElementVNode("div",null,[t.row.enable===1?(e.openBlock(),e.createElementBlock("span",Ne,"未触发")):t.row.enable===2?(e.openBlock(),e.createElementBlock("span",xe,"已触发")):(e.openBlock(),e.createElementBlock("span",_e,"-"))])]),_:1})):e.createCommentVNode("",!0),e.unref(C).tableCreateTime?(e.openBlock(),e.createBlock(k,{key:1,label:"设置时间",width:"136"},{default:e.withCtx(t=>[e.createTextVNode(e.toDisplayString(t.row.createdTime||"-"),1)]),_:1})):e.createCommentVNode("",!0),e.unref(C).tableMark?(e.openBlock(),e.createBlock(k,{key:2,label:"备注",width:"70"},{default:e.withCtx(t=>[e.createTextVNode(e.toDisplayString(t.row.mark||"-"),1)]),_:1})):e.createCommentVNode("",!0),a.allowOperation?(e.openBlock(),e.createBlock(k,{key:3,label:"操作",width:"140"},{default:e.withCtx(t=>[e.unref(C).tableEnable?(e.openBlock(),e.createBlock(n,{key:0,disabled:t.row.currentCount!==t.row.totalCount,size:"small",onClick:d=>y("enabled",t.row)},{default:e.withCtx(()=>[e.createTextVNode(" 启用 ")]),_:2},1032,["disabled","onClick"])):e.createCommentVNode("",!0),e.createVNode(j,{title:"确定删除?",onConfirm:d=>y("delete",t.row)},{reference:e.withCtx(()=>[e.createVNode(n,{size:"small"},{default:e.withCtx(()=>[e.createTextVNode("删除")]),_:1})]),_:2},1032,["onConfirm"])]),_:1})):e.createCommentVNode("",!0)]),_:1},8,["data"])):e.createCommentVNode("",!0),f.value==="shortcut"?(e.openBlock(),e.createElementBlock(e.Fragment,{key:2},[e.createElementVNode("div",be,[ge,e.createVNode(q,{effect:"dark",content:"如有配置数据, 可点击查看该配置的具体信息",placement:"right-start"},{default:e.withCtx(()=>[e.createVNode(S,null,{default:e.withCtx(()=>[e.createVNode(e.unref(g.info_filled_default))]),_:1})]),_:1})]),e.createElementVNode("div",we,[a.shortcutData.length?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:0},e.renderList(a.shortcutData,t=>(e.openBlock(),e.createBlock(J,{key:t.id,type:"primary",size:"default",closable:"",onClick:d=>U(t),onClose:d=>A(t)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(t.shortcutName),1)]),_:2},1032,["onClick","onClose"]))),128)):(e.openBlock(),e.createElementBlock("span",Be,"暂无数据"))]),e.createElementVNode("div",Te,[Ee,e.createVNode(q,{effect:"dark",content:"同名配置将会进行覆盖",placement:"right-start"},{default:e.withCtx(()=>[e.createVNode(S,null,{default:e.withCtx(()=>[e.createVNode(e.unref(g.info_filled_default))]),_:1})]),_:1})]),e.createVNode(E,{ref_key:"shortcut_ruleFormRef",ref:w,model:r.value,rules:z.value,"label-width":"90px",size:"default"},{default:e.withCtx(()=>[e.createVNode(c,{label:"配置名称:",prop:"shortcutName"},{default:e.withCtx(()=>[e.createVNode(T,{modelValue:r.value.shortcutName,"onUpdate:modelValue":o[9]||(o[9]=t=>r.value.shortcutName=t),maxlength:"6","show-word-limit":"",style:{width:"160px"}},null,8,["modelValue"])]),_:1}),e.createVNode(c,{label:"交易类型:",prop:"factorType"},{default:e.withCtx(()=>[e.createVNode(n,{type:"danger",plain:r.value.factorType!==1,onClick:o[10]||(o[10]=()=>{r.value.factorType===-1&&(r.value.factorSelectedList=[]),r.value.factorType=1})},{default:e.withCtx(()=>[e.createTextVNode(" 多 ")]),_:1},8,["plain"]),e.createVNode(n,{type:"success",plain:r.value.factorType!==-1,onClick:o[11]||(o[11]=()=>{r.value.factorType===1&&(r.value.factorSelectedList=[]),r.value.factorType=-1})},{default:e.withCtx(()=>[e.createTextVNode(" 空 ")]),_:1},8,["plain"])]),_:1}),e.createVNode(c,{label:"预警因子:",prop:"factorSelectedList"},{default:e.withCtx(()=>[e.createVNode(s,{modelValue:r.value.factorSelectedList,"onUpdate:modelValue":o[12]||(o[12]=t=>r.value.factorSelectedList=t)},{default:e.withCtx(()=>[r.value.factorType===1?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:0},e.renderList(a.moreFactorOptions,(t,d)=>(e.openBlock(),e.createBlock(i,{key:d,label:t.factorTypeName,value:t.factorTypeName,style:{width:"200px"}},null,8,["label","value"]))),128)):e.createCommentVNode("",!0),r.value.factorType===-1?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:1},e.renderList(a.emptyFactorOptions,(t,d)=>(e.openBlock(),e.createBlock(i,{key:d,label:t.factorTypeName,value:t.factorTypeName,style:{width:"200px"}},null,8,["label","value"]))),128)):e.createCommentVNode("",!0)]),_:1},8,["modelValue"])]),_:1}),e.createVNode(c,{label:"预警次数:",prop:"totalCount"},{default:e.withCtx(()=>[e.createVNode(p,{modelValue:r.value.totalCount,"onUpdate:modelValue":o[13]||(o[13]=t=>r.value.totalCount=t),min:1,max:10,"controls-position":"right",style:{"margin-right":"20px"}},null,8,["modelValue"])]),_:1})]),_:1},8,["model","rules"])],64)):e.createCommentVNode("",!0)]),_:1},8,["modelValue"])]),_:1},8,["locale"])])}}},Fe=re._export_sfc(qe,[["__scopeId","data-v-b2d15520"]]),Le={install(a){a.component("st-factorWarning",Fe)}};module.exports=Le;
|
package/es/FactorWarning.js
CHANGED
|
@@ -1,47 +1,46 @@
|
|
|
1
|
-
import "./base-
|
|
2
|
-
import { z as re, E as ne } from "./zh-cn-
|
|
3
|
-
import { E as ue } from "./el-dialog-
|
|
4
|
-
import "./el-overlay-
|
|
5
|
-
import "./el-tag-
|
|
1
|
+
import "./base-7ff209fc.js";
|
|
2
|
+
import { z as re, E as ne } from "./zh-cn-ed10eeb1.js";
|
|
3
|
+
import { E as ue } from "./el-dialog-2f10a2f4.js";
|
|
4
|
+
import "./el-overlay-4e9a99e0.js";
|
|
5
|
+
import "./el-tag-19cc5b59.js";
|
|
6
6
|
import "./el-tooltip-4ed993c7.js";
|
|
7
|
-
import { E as se } from "./el-popper-
|
|
8
|
-
import { E as ie, a as ce } from "./el-table-column-
|
|
9
|
-
import { E as de, a as me } from "./el-checkbox-
|
|
7
|
+
import { E as se } from "./el-popper-003b3af7.js";
|
|
8
|
+
import { E as ie, a as ce } from "./el-table-column-3be856d7.js";
|
|
9
|
+
import { E as de, a as me } from "./el-checkbox-40664b27.js";
|
|
10
10
|
import "./el-scrollbar-323542e7.js";
|
|
11
|
-
import { E as fe } from "./el-popconfirm-
|
|
11
|
+
import { E as fe } from "./el-popconfirm-c2896741.js";
|
|
12
12
|
import "./el-popover-4ed993c7.js";
|
|
13
|
-
import { E as pe } from "./el-button-
|
|
14
|
-
import {
|
|
15
|
-
import { E as _e } from "./el-input-
|
|
16
|
-
import { E as be } from "./el-text-
|
|
17
|
-
import { E as he } from "./el-
|
|
18
|
-
import "./el-
|
|
19
|
-
import { E as ge } from "./el-segmented-9d3a9e11.js";
|
|
13
|
+
import { E as pe } from "./el-button-7f58608d.js";
|
|
14
|
+
import { E as ye, a as ve } from "./el-form-item-2b68cdf5.js";
|
|
15
|
+
import { E as _e } from "./el-input-31a818d4.js";
|
|
16
|
+
import { E as be } from "./el-text-9a7a4f0f.js";
|
|
17
|
+
import { E as he } from "./el-checkbox-group-3ddad0d7.js";
|
|
18
|
+
import { E as ge } from "./el-segmented-4ae54e6a.js";
|
|
20
19
|
import { mergeModels as R, ref as x, useModel as ke, watch as Ce, openBlock as o, createElementBlock as d, createVNode as a, unref as k, withCtx as l, createElementVNode as f, normalizeClass as Te, toDisplayString as C, createTextVNode as m, createBlock as p, createCommentVNode as y, Fragment as S, renderList as N, pushScopeId as we, popScopeId as xe } from "vue";
|
|
21
|
-
import { i as j, E as Se } from "./index-
|
|
20
|
+
import { i as j, E as Se } from "./index-e17987ac.js";
|
|
22
21
|
import { G as Ee } from "./index-7ed0999e.js";
|
|
23
22
|
import { _ as Ve } from "./_plugin-vue_export-helper-dad06003.js";
|
|
24
|
-
import { E as Ne } from "./el-message-box-
|
|
25
|
-
import { E as Fe } from "./index-
|
|
26
|
-
import "./config-provider-
|
|
27
|
-
import "./use-global-config-
|
|
28
|
-
import "./use-form-common-props-
|
|
29
|
-
import "./index-
|
|
30
|
-
import "./index-
|
|
31
|
-
import "./index-
|
|
32
|
-
import "./index-
|
|
23
|
+
import { E as Ne } from "./el-message-box-a3aa9b89.js";
|
|
24
|
+
import { E as Fe } from "./index-b56d81e8.js";
|
|
25
|
+
import "./config-provider-071b8bec.js";
|
|
26
|
+
import "./use-global-config-74436b92.js";
|
|
27
|
+
import "./use-form-common-props-d170ccfd.js";
|
|
28
|
+
import "./index-d898531c.js";
|
|
29
|
+
import "./index-f402d1da.js";
|
|
30
|
+
import "./index-6917da9d.js";
|
|
31
|
+
import "./index-19ac550e.js";
|
|
33
32
|
import "./index-2e331d74.js";
|
|
34
|
-
import "./vnode-
|
|
35
|
-
import "./scroll-
|
|
36
|
-
import "./index-
|
|
37
|
-
import "./_initCloneObject-
|
|
38
|
-
import "./castArray-
|
|
39
|
-
import "./debounce-
|
|
40
|
-
import "./raf-
|
|
33
|
+
import "./vnode-6d2615f0.js";
|
|
34
|
+
import "./scroll-8642151c.js";
|
|
35
|
+
import "./index-308aab33.js";
|
|
36
|
+
import "./_initCloneObject-009eedf8.js";
|
|
37
|
+
import "./castArray-b9f1609f.js";
|
|
38
|
+
import "./debounce-23c2f7e1.js";
|
|
39
|
+
import "./raf-ba3dfafe.js";
|
|
41
40
|
import "./index-657047bb.js";
|
|
42
41
|
import "./typescript-7ae59c4c.js";
|
|
43
|
-
import "./index-
|
|
44
|
-
import "./validator-
|
|
42
|
+
import "./index-808db9b4.js";
|
|
43
|
+
import "./validator-672bad4a.js";
|
|
45
44
|
const Le = {
|
|
46
45
|
// 表单字段
|
|
47
46
|
ruleFormPrice: !0,
|
|
@@ -733,11 +732,11 @@ const P = (n) => (we("data-v-b2d15520"), n = n(), xe(), n), Oe = { class: "st-fa
|
|
|
733
732
|
]);
|
|
734
733
|
};
|
|
735
734
|
}
|
|
736
|
-
}, tt = /* @__PURE__ */ Ve(et, [["__scopeId", "data-v-b2d15520"]]),
|
|
735
|
+
}, tt = /* @__PURE__ */ Ve(et, [["__scopeId", "data-v-b2d15520"]]), Jt = {
|
|
737
736
|
install(n) {
|
|
738
737
|
n.component("st-factorWarning", tt);
|
|
739
738
|
}
|
|
740
739
|
};
|
|
741
740
|
export {
|
|
742
|
-
|
|
741
|
+
Jt as default
|
|
743
742
|
};
|
package/es/Kline.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";require("./base-ef747d02.cjs");const ae=require("./el-menu-item-26071fd6.cjs");require("./el-tooltip-0ea8fbf8.cjs");require("./el-popper-2d3914e4.cjs");const t=require("vue"),je=require("echarts"),P=require("./_plugin-vue_export-helper-f246444f.cjs"),J=require("./index-8901a38c.cjs"),ue=require("./index.esm-94a95a2a.cjs");require("./el-tag-6d8e653e.cjs");const Me=require("./el-select-a11f33e8.cjs");require("./el-scrollbar-bc3f790d.cjs");require("./use-form-common-props-d3ed62c6.cjs");require("./index-9780a537.cjs");require("./index-33f80550.cjs");require("./index-28e03bad.cjs");require("./index-eea0bcb3.cjs");require("./typescript-b63f8e83.cjs");require("./vnode-b906ae6d.cjs");require("./index-37b8d3c6.cjs");require("./index-bb833443.cjs");require("./index-e8eeea22.cjs");require("./index-6b99def3.cjs");require("./castArray-35947698.cjs");require("./index-7dce9f59.cjs");require("./scroll-b108dabd.cjs");require("./debounce-62f5b6e8.cjs");function de(M){const n=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(M){for(const i in M)if(i!=="default"){const e=Object.getOwnPropertyDescriptor(M,i);Object.defineProperty(n,i,e.get?e:{enumerable:!0,get:()=>M[i]})}}return n.default=M,Object.freeze(n)}const H=de(je),ye={class:"st-kline-tips"},ge={class:"st-kline-tips-row"},Te=t.defineComponent({__name:"index",props:{data:{type:Array,default:()=>[]}},setup(M){return(n,i)=>(t.openBlock(),t.createElementBlock("div",ye,[t.createElementVNode("div",ge,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(M.data,e=>(t.openBlock(),t.createElementBlock("div",{class:"st-kline-tips-row-item",style:t.normalizeStyle({color:e.color})},t.toDisplayString(e.label)+" "+t.toDisplayString(e.value),5))),256))])]))}});const X=P._export_sfc(Te,[["__scopeId","data-v-78aed210"]]),De=t.defineComponent({__name:"index",emits:["closeContextMenuCallBack"],setup(M,{emit:n}){const i=n,e=t.ref(),o=t.ref(),a=t.ref({display:"none",top:"0px",left:"0px"}),j=()=>{a.value.display="none",i("closeContextMenuCallBack"),document.removeEventListener("click",j)},s=r=>{if(r.preventDefault(),r.stopPropagation(),a.value.display==="block"){const{offsetX:c,offsetY:d}=r,{offsetWidth:I,offsetHeight:u}=o.value;if(c<=I&&d<=u)return}e.value.click(),a.value={display:"block",top:`${r.offsetY}px`,left:`${r.offsetX}px`},t.nextTick(()=>{const{bottom:c,height:d,right:I,width:u}=o.value.getBoundingClientRect();c>window.innerHeight?a.value={display:"block",top:`${r.offsetY-d}px`,left:`${r.offsetX}px`}:I>window.innerWidth&&(a.value={display:"block",top:`${r.offsetY}px`,left:`${r.offsetX-u}px`})}),document.addEventListener("click",j)};return(r,c)=>(t.openBlock(),t.createElementBlock("div",{ref_key:"contextmenuRef",ref:e,class:"contextmenu",onContextmenu:s,onMouseleave:j},[t.renderSlot(r.$slots,"default",{},void 0,!0),a.value.display!=="none"?(t.openBlock(),t.createElementBlock("div",{key:0,ref_key:"contextmenuContentRef",ref:o,class:"contextmenu-popover",style:t.normalizeStyle(a.value)},[t.renderSlot(r.$slots,"popover",{},void 0,!0)],4)):t.createCommentVNode("",!0)],544))}});const Ie=P._export_sfc(De,[["__scopeId","data-v-249fd104"]]);let le=!1,re=!0,ce=[];const se=M=>{const n=[],i=[],e=[],o=[],a=[],j=[];return M.forEach((s,r)=>{n.push(s[0]),i.push(s[1]),e.push(s[4]),o.push(s[2]),a.push(s[3]),j.push([s[1],s[4],s[3],s[2],Number(s[6]),r===0?s[4]:M[r-1][4]])}),{time:n,open:i,close:e,high:o,low:a,kLineData:j}},Le=async()=>{if(!le)le=!0,await ue.init("./talib.wasm"),re=!1,ce.forEach(M=>{M()});else if(re)return new Promise(M=>{ce.push(M)})},$=(M,n)=>M.length>n?M.slice(M.length-n):M,pe=(M,n,i)=>M.calculationFn?M.calculationFn(ue.talib,n,i):new Array(n.time.length).fill(null),fe=async(M,n,i)=>{const e=se(M);let o=[];return o=se(o),await Le(),{originData:$(M,i),kLine:$(e.kLineData,i),time:$(e.time,i),indicator:n.config.reduce((a,j)=>(a.push({key:j.key,color:j.color,data:$(pe(j,e,o),i)}),a),[])}},K="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBzdGFuZGFsb25lPSJubyI/PjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCI+PHN2ZyB0PSIxNjgzNzAzMjM4NzI1IiBjbGFzcz0iaWNvbiIgdmlld0JveD0iMCAwIDEwMjQgMTAyNCIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHAtaWQ9IjI2MjUiIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB3aWR0aD0iMjAwIiBoZWlnaHQ9IjIwMCI+PHBhdGggZD0iTTE5OC4wMTYgMTA5LjczODY2N0E3Ny44NjY2NjcgNzcuODY2NjY3IDAgMCAwIDE3MC42NjY2NjcgMTY3LjY4bDAuNTEyIDQxOC45NDRjMCAyMi44NjkzMzMgNi40IDQ4IDE5LjAyOTMzMyA3NS4zMDY2NjcgMTIuNjcyIDI3LjIyMTMzMyAyNy45ODkzMzMgNDguOTM4NjY3IDQ1Ljk1MiA2NC45Mzg2NjZsMjExLjE1NzMzMyAxODguMjAyNjY3YzE3LjA2NjY2NyAxNS40ODggNDAuNTc2IDIzLjk3ODY2NyA2NC45Mzg2NjcgMjMuNTk0NjY3IDI1LjY4NTMzMy0wLjA4NTMzMyA0Ny4zNi03LjkzNiA2NC45ODEzMzMtMjMuNTk0NjY3bDIxMS4yLTE4OC4yMDI2NjdjMTcuOTItMTYgMzMuMTk0NjY3LTM3LjYzMiA0NS44NjY2NjctNjQuOTM4NjY2IDEyLjY3Mi0yNy4zMDY2NjcgMTguNzczMzMzLTUyLjIyNCAxOC41MTczMzMtNzQuOTIyNjY3TDg1My4zMzMzMzMgMTY3LjI1MzMzM2MwLTIyLjI3Mi04Ljk2LTQxLjQ3Mi0yNi44MzczMzMtNTcuNDcyLTE3LjU3ODY2Ny0xNS42MTYtMzkuMzM4NjY3LTIzLjg5MzMzMy02NC45Mzg2NjctMjQuNDA1MzMzbC00OTkuMDI5MzMzIDAuNDY5MzMzYTkzLjMxMiA5My4zMTIgMCAwIDAtNjQuNTEyIDIzLjg5MzMzNHoiIGZpbGw9IiNGRjAwMDAiIHAtaWQ9IjI2MjYiPjwvcGF0aD48cGF0aCBkPSJNMTcwLjcwOTMzMyAxNjcuNzIyNjY3YzAuMTI4LTIxLjc2IDkuOTg0LTQyLjY2NjY2NyAyNy4zOTItNTcuOTQxMzM0YTkzLjMxMiA5My4zMTIgMCAwIDEgNjQuNDY5MzM0LTIzLjg5MzMzM0w3NjEuNiA4NS4zMzMzMzNjMjUuNiAwLjU1NDY2NyA0Ny4zNiA4Ljc4OTMzMyA2NC45Mzg2NjcgMjQuNDA1MzM0IDE3LjkyIDE2IDI2Ljg4IDM1LjIgMjYuODggNTcuNDcybC0wLjU1NDY2NyA0MTkuODRjMC4yOTg2NjcgMjIuNjk4NjY3LTUuODQ1MzMzIDQ3LjYxNi0xOC41MTczMzMgNzQuOTIyNjY2LTEyLjYyOTMzMyAyNy4zMDY2NjctMjcuOTQ2NjY3IDQ4Ljg5Ni00NS44MjQgNjQuODk2bC0yMTEuMjQyNjY3IDE4OC4yMDI2NjdjLTE3LjU3ODY2NyAxNS43MDEzMzMtMzkuMjUzMzMzIDIzLjUwOTMzMy02NC45Mzg2NjcgMjMuNTk0NjY3YTk0LjcyIDk0LjcyIDAgMCAxLTY0Ljk4MTMzMy0yMy41OTQ2NjdsLTIxMS4xNTczMzMtMTg4LjE2Yy0xNy45Mi0xNi4wNDI2NjctMzMuMjgtMzcuNzE3MzMzLTQ1LjkwOTMzNC02NC45ODEzMzMtMTIuNjcyLTI3LjMwNjY2Ny0xOS4wMjkzMzMtNTIuMzk0NjY3LTE5LjAyOTMzMy03NS4zMDY2NjdMMTcwLjY2NjY2NyAxNjcuNzIyNjY3eiBtNDIuNjY2NjY3IDAuMjU2bDAuNTU0NjY3IDQxOC42ODhjMCAxNi4yMTMzMzMgNC44MjEzMzMgMzUuMzI4IDE1LjAxODY2NiA1Ny4zNDQgMTAuMzY4IDIyLjI3MiAyMi4zNTczMzMgMzkuMjEwNjY3IDM1LjYyNjY2NyA1MS4wNzJsMjExLjQxMzMzMyAxODguNDE2YzguOTYgOC4xMDY2NjcgMjEuODg4IDEyLjggMzYuMjI0IDEyLjU0NCAxNS41MzA2NjctMC4wNDI2NjcgMjcuMDkzMzMzLTQuMjY2NjY3IDM2LjY5MzMzNC0xMi44bDIxMS4xNTczMzMtMTg4LjExNzMzNGMxMy4zMTItMTEuOTQ2NjY3IDI1LjMwMTMzMy0yOC44NDI2NjcgMzUuNTg0LTUxLjA3MiAxMC4xMTItMjEuODQ1MzMzIDE0Ljc2MjY2Ny00MC41NzYgMTQuNTA2NjY3LTU3LjA0NTMzM2wwLjU1NDY2Ni00MTkuNzU0NjY3YzAtOS44OTg2NjctMy41ODQtMTcuNjIxMzMzLTEyLjQ1ODY2Ni0yNS42YTU0LjY5ODY2NyA1NC42OTg2NjcgMCAwIDAtMzYuNjA4LTEzLjYxMDY2NmwtNDk5LjYyNjY2NyAwLjQ2OTMzM2E1MS4zMjggNTEuMzI4IDAgMCAwLTM1Ljc1NDY2NyAxMy4zMTIgMzYuNTY1MzMzIDM2LjU2NTMzMyAwIDAgMC0xMi41MDEzMzMgMjEuNDYxMzMzbC0wLjQyNjY2NyA0LjY5MzMzNHoiIGZpbGw9IiNBRTAwMDAiIHAtaWQ9IjI2MjciPjwvcGF0aD48cGF0aCBkPSJNMzg0IDY1NC4xMjI2NjdoMTUzLjUxNDY2N2M5Ni43NjggMCAxNDIuNzYyNjY3LTQ4Ljk4MTMzMyAxNDIuNzYyNjY2LTExNy4wNzczMzQgMC01OS43MzMzMzMtMzMuNDUwNjY3LTg4LjQwNTMzMy04NC44MjEzMzMtOTcuOTYyNjY2di0xLjc5MmM0OC45ODEzMzMtMTUuNTMwNjY3IDY2LjkwMTMzMy00Ni41OTIgNjYuOTAxMzMzLTg5LjYgMC02NS4xMDkzMzMtNDAuNjE4NjY3LTEwMy4zMzg2NjctMTM0Ljk5NzMzMy0xMDMuMzM4NjY3SDM4NHY0MDkuNzcwNjY3eiBtNzIuODc0NjY3LTU0Ljk1NDY2N3YtMTMxLjQxMzMzM2g2Ni4zMDRjNTEuOTY4IDAgODAuMDQyNjY3IDE3LjkyIDgwLjA0MjY2NiA2NS4xMDkzMzMgMCA0NC44LTI2LjI4MjY2NyA2Ni4zMDQtNzUuODYxMzMzIDY2LjMwNGgtNzAuNDg1MzMzeiBtMC0xODAuMzk0NjY3VjI5OC43MDkzMzNoNjAuMzMwNjY2YzQ3LjE4OTMzMyAwIDcyLjI3NzMzMyAxNC45MzMzMzMgNzIuMjc3MzM0IDU5LjEzNiAwIDQ2LjU5Mi0zMi4yNTYgNjAuOTI4LTc1LjI2NCA2MC45MjhoLTU3LjM0NHoiIGZpbGw9IiNGRkZGRkYiIHAtaWQ9IjI2MjgiPjwvcGF0aD48L3N2Zz4=",ee="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBzdGFuZGFsb25lPSJubyI/PjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCI+PHN2ZyB0PSIxNjgzNzAzMjQxNjY0IiBjbGFzcz0iaWNvbiIgdmlld0JveD0iMCAwIDEwMjQgMTAyNCIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHAtaWQ9IjI3NzciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB3aWR0aD0iMjAwIiBoZWlnaHQ9IjIwMCI+PHBhdGggZD0iTTE5OC4wMTYgMTA5LjczODY2N0E3Ny44NjY2NjcgNzcuODY2NjY3IDAgMCAwIDE3MC42NjY2NjcgMTY3LjY4bDAuNTEyIDQxOC45NDRjMCAyMi44NjkzMzMgNi40IDQ4IDE5LjAyOTMzMyA3NS4zMDY2NjcgMTIuNjcyIDI3LjIyMTMzMyAyNy45ODkzMzMgNDguOTM4NjY3IDQ1Ljk1MiA2NC45Mzg2NjZsMjExLjE1NzMzMyAxODguMjAyNjY3YzE3LjA2NjY2NyAxNS40ODggNDAuNTc2IDIzLjk3ODY2NyA2NC45Mzg2NjcgMjMuNTk0NjY3IDI1LjY4NTMzMy0wLjA4NTMzMyA0Ny4zNi03LjkzNiA2NC45ODEzMzMtMjMuNTk0NjY3bDIxMS4yLTE4OC4yMDI2NjdjMTcuOTItMTYgMzMuMTk0NjY3LTM3LjYzMiA0NS44NjY2NjctNjQuOTM4NjY2IDEyLjY3Mi0yNy4zMDY2NjcgMTguNzczMzMzLTUyLjIyNCAxOC41MTczMzMtNzQuOTIyNjY3TDg1My4zMzMzMzMgMTY3LjI1MzMzM2MwLTIyLjI3Mi04Ljk2LTQxLjQ3Mi0yNi44MzczMzMtNTcuNDcyLTE3LjU3ODY2Ny0xNS42MTYtMzkuMzM4NjY3LTIzLjg5MzMzMy02NC45Mzg2NjctMjQuNDA1MzMzbC00OTkuMDI5MzMzIDAuNDY5MzMzYTkzLjMxMiA5My4zMTIgMCAwIDAtNjQuNTEyIDIzLjg5MzMzNHoiIGZpbGw9IiM1NEFCMzAiIHAtaWQ9IjI3NzgiPjwvcGF0aD48cGF0aCBkPSJNMTcwLjY2NjY2NyAxNjcuNjhjMC4xMjgtMjEuNzYgOS45NDEzMzMtNDIuNjY2NjY3IDI3LjM0OTMzMy01Ny45NDEzMzNhOTMuMzEyIDkzLjMxMiAwIDAgMSA2NC41MTItMjMuODkzMzM0TDc2MS41NTczMzMgODUuMzMzMzMzYzI1LjYgMC41NTQ2NjcgNDcuMzYgOC43ODkzMzMgNjQuOTM4NjY3IDI0LjQwNTMzNCAxNy45MiAxNiAyNi44MzczMzMgMzUuMiAyNi44MzczMzMgNTcuNDcybC0wLjUxMiA0MTkuODRjMC4yOTg2NjcgMjIuNjU2LTUuODQ1MzMzIDQ3LjYxNi0xOC41MTczMzMgNzQuODgtMTIuNjcyIDI3LjMwNjY2Ny0yNy45NDY2NjcgNDguOTM4NjY3LTQ1Ljg2NjY2NyA2NC45Mzg2NjZsLTIxMS4yIDE4OC4yMDI2NjdjLTE3LjYyMTMzMyAxNS42NTg2NjctMzkuMjUzMzMzIDIzLjUwOTMzMy02NC45ODEzMzMgMjMuNTk0NjY3YTk0LjcyIDk0LjcyIDAgMCAxLTY0LjkzODY2Ny0yMy41OTQ2NjdsLTIxMS4yLTE4OC4yMDI2NjdjLTE3LjkyLTE2LTMzLjIzNzMzMy0zNy43MTczMzMtNDUuOTA5MzMzLTY0LjkzODY2Ni0xMi42MjkzMzMtMjcuMzA2NjY3LTE5LjAyOTMzMy01Mi40MzczMzMtMTkuMDI5MzMzLTc1LjMwNjY2N0wxNzAuNjY2NjY3IDE2Ny42OHogbTQyLjYyNCAwLjI1NmwwLjU1NDY2NiA0MTguNjg4YzAgMTYuMTcwNjY3IDQuODY0IDM1LjMyOCAxNS4wNjEzMzQgNTcuMzQ0IDEwLjM2OCAyMi4yNzIgMjIuMzE0NjY3IDM5LjE2OCAzNS42MjY2NjYgNTEuMDI5MzMzbDIxMS40MTMzMzQgMTg4LjQxNmM4Ljk2IDguMTA2NjY3IDIxLjg4OCAxMi44IDM2LjIyNCAxMi41ODY2NjcgMTUuNTMwNjY3LTAuMDQyNjY3IDI3LjA5MzMzMy00LjI2NjY2NyAzNi42OTMzMzMtMTIuOGwyMTEuMTE0NjY3LTE4OC4xNmMxMy4zNTQ2NjctMTEuOTQ2NjY3IDI1LjMwMTMzMy0yOC44NDI2NjcgMzUuNjI2NjY2LTUxLjA3MiAxMC4xMTItMjEuNzYgMTQuNzYyNjY3LTQwLjUzMzMzMyAxNC41MDY2NjctNTcuMDAyNjY3TDgxMC42NjY2NjcgMTY3LjIxMDY2N2MwLTkuODk4NjY3LTMuNTg0LTE3LjYyMTMzMy0xMi41MDEzMzQtMjUuNkE1NC42OTg2NjcgNTQuNjk4NjY3IDAgMCAwIDc2MS42IDEyOGwtNDk5LjYyNjY2NyAwLjQ2OTMzM2E1MS4zMjggNTEuMzI4IDAgMCAwLTM1Ljc1NDY2NiAxMy4yNjkzMzQgMzYuNTY1MzMzIDM2LjU2NTMzMyAwIDAgMC0xMi41MDEzMzQgMjEuNTA0bC0wLjQyNjY2NiA0LjY5MzMzM3oiIGZpbGw9IiMzODhEMTQiIHAtaWQ9IjI3NzkiPjwvcGF0aD48cGF0aCBkPSJNNTA2LjQ1MzMzMyA2NzQuNzMwNjY3Yzk5LjE1NzMzMyAwIDE0Ni4zNDY2NjctNDguMzg0IDE0Ni4zNDY2NjctMTI2LjAzNzMzNCAwLTcyLjg3NDY2Ny0zOC44MjY2NjctOTkuNzU0NjY3LTEwMy4zMzg2NjctMTE4LjI3MmwtMzguMjI5MzMzLTExLjk0NjY2NmMtNDAuNjE4NjY3LTExLjM0OTMzMy01Mi41NjUzMzMtMjUuMDg4LTUyLjU2NTMzMy01Ny4zNDQgMC0zMi44NTMzMzMgMjMuODkzMzMzLTUwLjc3MzMzMyA2Ni45MDEzMzMtNTAuNzczMzM0IDQ1LjM5NzMzMyAwIDc4Ljg0OCA5LjU1NzMzMyAxMDQuNTMzMzMzIDIwLjMwOTMzNFYyNzMuMzIyNjY3Yy0yMi42OTg2NjctMTEuOTQ2NjY3LTUxLjk2OC0yMi4xMDEzMzMtMTA1LjcyOC0yMi4xMDEzMzQtOTIuNTg2NjY3IDAtMTM3LjM4NjY2NyA0Ny4xODkzMzMtMTM3LjM4NjY2NiAxMTYuNDggMCA2OS4yOTA2NjcgMzUuMjQyNjY3IDEwMC4zNTIgOTMuMTg0IDExNi40OGwzOC44MjY2NjYgMTAuNzUyYzQ0LjggMTMuNzM4NjY3IDU5LjczMzMzMyAyNi44OCA1OS43MzMzMzQgNjAuOTI4IDAgMzcuMDM0NjY3LTIzLjI5NiA1OS43MzMzMzMtNzguMjUwNjY3IDU5LjczMzMzNC00NC44IDAtODMuNjI2NjY3LTEwLjc1Mi0xMTYuNDgtMjUuMDg4djU3Ljk0MTMzM2MyOC4wNzQ2NjcgMTQuOTMzMzMzIDY4LjY5MzMzMyAyNi4yODI2NjcgMTIyLjQ1MzMzMyAyNi4yODI2Njd6IiBmaWxsPSIjRkZGRkZGIiBwLWlkPSIyNzgwIj48L3BhdGg+PC9zdmc+",te="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBzdGFuZGFsb25lPSJubyI/PjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCI+PHN2ZyB0PSIxNjgzNzAzMjI4MjAyIiBjbGFzcz0iaWNvbiIgdmlld0JveD0iMCAwIDEwMjQgMTAyNCIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHAtaWQ9IjMwNzgiIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB3aWR0aD0iMjAwIiBoZWlnaHQ9IjIwMCI+PHBhdGggZD0iTTE5OC4wMTYgMTA5LjczODY2N0E3Ny44NjY2NjcgNzcuODY2NjY3IDAgMCAwIDE3MC42NjY2NjcgMTY3LjY4bDAuNTEyIDQxOC45NDRjMCAyMi44NjkzMzMgNi40IDQ4IDE5LjAyOTMzMyA3NS4zMDY2NjcgMTIuNjcyIDI3LjIyMTMzMyAyNy45ODkzMzMgNDguOTM4NjY3IDQ1Ljk1MiA2NC45Mzg2NjZsMjExLjE1NzMzMyAxODguMjAyNjY3YzE3LjA2NjY2NyAxNS40ODggNDAuNTc2IDIzLjk3ODY2NyA2NC45Mzg2NjcgMjMuNTk0NjY3IDI1LjY4NTMzMy0wLjA4NTMzMyA0Ny4zNi03LjkzNiA2NC45ODEzMzMtMjMuNTk0NjY3bDIxMS4yLTE4OC4yMDI2NjdjMTcuOTItMTYgMzMuMTk0NjY3LTM3LjYzMiA0NS44NjY2NjctNjQuOTM4NjY2IDEyLjY3Mi0yNy4zMDY2NjcgMTguNzczMzMzLTUyLjIyNCAxOC41MTczMzMtNzQuOTIyNjY3TDg1My4zMzMzMzMgMTY3LjI1MzMzM2MwLTIyLjI3Mi04Ljk2LTQxLjQ3Mi0yNi44MzczMzMtNTcuNDcyLTE3LjU3ODY2Ny0xNS42MTYtMzkuMzM4NjY3LTIzLjg5MzMzMy02NC45Mzg2NjctMjQuNDA1MzMzbC00OTkuMDI5MzMzIDAuNDY5MzMzYTkzLjMxMiA5My4zMTIgMCAwIDAtNjQuNTEyIDIzLjg5MzMzNHoiIGZpbGw9IiNDODgwRkYiIHAtaWQ9IjMwNzkiPjwvcGF0aD48cGF0aCBkPSJNMTcwLjY2NjY2NyAxNjcuNjhjMC4xMjgtMjEuNzYgOS45NDEzMzMtNDIuNjY2NjY3IDI3LjM0OTMzMy01Ny45NDEzMzNhOTMuMzEyIDkzLjMxMiAwIDAgMSA2NC41MTItMjMuODkzMzM0TDc2MS41NTczMzMgODUuMzMzMzMzYzI1LjYgMC41NTQ2NjcgNDcuMzYgOC43ODkzMzMgNjQuOTM4NjY3IDI0LjQwNTMzNCAxNy45MiAxNiAyNi44MzczMzMgMzUuMiAyNi44MzczMzMgNTcuNDcybC0wLjUxMiA0MTkuODRjMC4yOTg2NjcgMjIuNjU2LTUuODQ1MzMzIDQ3LjYxNi0xOC41MTczMzMgNzQuODgtMTIuNjcyIDI3LjMwNjY2Ny0yNy45NDY2NjcgNDguOTM4NjY3LTQ1Ljg2NjY2NyA2NC45Mzg2NjZsLTIxMS4yIDE4OC4yMDI2NjdjLTE3LjYyMTMzMyAxNS42NTg2NjctMzkuMjUzMzMzIDIzLjUwOTMzMy02NC45ODEzMzMgMjMuNTk0NjY3YTk0LjcyIDk0LjcyIDAgMCAxLTY0LjkzODY2Ny0yMy41OTQ2NjdsLTIxMS4yLTE4OC4yMDI2NjdjLTE3LjkyLTE2LTMzLjIzNzMzMy0zNy43MTczMzMtNDUuOTA5MzMzLTY0LjkzODY2Ni0xMi42MjkzMzMtMjcuMzA2NjY3LTE5LjAyOTMzMy01Mi40MzczMzMtMTkuMDI5MzMzLTc1LjMwNjY2N0wxNzAuNjY2NjY3IDE2Ny42OHogbTQyLjYyNCAwLjI1NmwwLjU1NDY2NiA0MTguNjg4YzAgMTYuMTcwNjY3IDQuODY0IDM1LjMyOCAxNS4wNjEzMzQgNTcuMzQ0IDEwLjM2OCAyMi4yNzIgMjIuMzE0NjY3IDM5LjE2OCAzNS42MjY2NjYgNTEuMDI5MzMzbDIxMS40MTMzMzQgMTg4LjQxNmM4Ljk2IDguMTA2NjY3IDIxLjg4OCAxMi44IDM2LjIyNCAxMi41ODY2NjcgMTUuNTMwNjY3LTAuMDQyNjY3IDI3LjA5MzMzMy00LjI2NjY2NyAzNi42OTMzMzMtMTIuOGwyMTEuMTE0NjY3LTE4OC4xNmMxMy4zNTQ2NjctMTEuOTQ2NjY3IDI1LjMwMTMzMy0yOC44NDI2NjcgMzUuNjI2NjY2LTUxLjA3MiAxMC4xMTItMjEuNzYgMTQuNzYyNjY3LTQwLjUzMzMzMyAxNC41MDY2NjctNTcuMDAyNjY3TDgxMC42NjY2NjcgMTY3LjIxMDY2N2MwLTkuODk4NjY3LTMuNTg0LTE3LjYyMTMzMy0xMi41MDEzMzQtMjUuNkE1NC42OTg2NjcgNTQuNjk4NjY3IDAgMCAwIDc2MS42IDEyOGwtNDk5LjYyNjY2NyAwLjQ2OTMzM2E1MS4zMjggNTEuMzI4IDAgMCAwLTM1Ljc1NDY2NiAxMy4yNjkzMzQgMzYuNTY1MzMzIDM2LjU2NTMzMyAwIDAgMC0xMi41MDEzMzQgMjEuNTA0bC0wLjQyNjY2NiA0LjY5MzMzM3oiIGZpbGw9IiNBRTQ0RkYiIHAtaWQ9IjMwODAiPjwvcGF0aD48cGF0aCBkPSJNNDc1LjMwNjY2NyA2NTguMjE4NjY3aDczLjQ3MlYzMDYuMzg5MzMzaDExNi40OFYyNDguNDQ4aC0zMDcuNjI2NjY3djU3Ljk0MTMzM2gxMTcuNjc0NjY3eiIgZmlsbD0iI0ZGRkZGRiIgcC1pZD0iMzA4MSI+PC9wYXRoPjwvc3ZnPg==",W=(M,n)=>{const{type:i="log",color:e="black"}=n??{};localStorage.getItem("st-kline-console-show")==="true"&&console[i](`%c${M}`,`color:${e}`)},v=M=>M||M===0?Math.round(M*1e3)/1e3:null,xe=M=>M>=1e12?`${(M/1e12).toFixed(2)}万亿`:M>=1e8?`${(M/1e8).toFixed(2)}亿`:M>=1e4?`${(M/1e4).toFixed(2)}万`:M.toFixed(2),Ye=M=>{const{y:n,text:i,info:e,gridLeft:o,gridRight:a,echartsWidth:j,echartsInstance:s}=M,{config:r,event:c}=e;let d=0;return{type:"group",draggable:r.draggable?"vertical":!1,children:[{type:"line",info:e,shape:{x1:o,y1:n,x2:j-a,y2:n},style:{stroke:r.lineColor,lineWidth:1,lineDash:[8,4]},z:10},{type:"group",x:j,y:n-5,children:[{type:"text",left:-1*a,info:e,style:{fill:r.textColor,text:i,stroke:"#000",lineWidth:1,opacity:1},z:10}]}],onmouseover:I=>{c.onmouseover instanceof Function&&c.onmouseover(I,e)},onmouseout:I=>{c.onmouseout instanceof Function&&c.onmouseout(I,e)},ondragstart:I=>{c.ondragstart instanceof Function&&r.draggable&&(d=I.offsetY,c.ondragstart(I,e))},ondragend:I=>{if(c.ondragend instanceof Function&&r.draggable){const N=I.offsetY-d;if(N===0)return;const L=s.convertFromPixel({yAxisIndex:0},n+N);c.ondragend(I,e,L)}}}},Ae=M=>{const{y:n,text:i,info:e,gridLeft:o,gridRight:a,echartsWidth:j,echartsInstance:s}=M,{config:r,event:c}=e;let d=0;const I=N=>{let L=null;N.target.type==="line"?L=N.target.parent:N.target.type==="tspan"&&(L=N.target.parent.parent.parent),L.children()[1].children()[0].animate("style",!1).when(200,{opacity:1}).start()},u=N=>{let L=null;N.target.type==="line"?L=N.target.parent:N.target.type==="tspan"&&(L=N.target.parent.parent.parent),L.children()[1].children()[0].animate("style",!1).when(200,{opacity:0}).start()};return{type:"group",draggable:r.draggable?"vertical":!1,children:[{type:"line",info:e,shape:{x1:o,y1:n,x2:j-a,y2:n},style:{stroke:r.lineColor,lineWidth:1},z:10},{type:"group",x:j/2,y:n-5,children:[{type:"text",left:"center",info:e,style:{fill:r.textColor,text:i,stroke:"#000",lineWidth:1,opacity:0},z:10}]}],onmouseover:N=>{c.onmouseover instanceof Function?c.onmouseover(N,e):I(N)},onmouseout:N=>{c.onmouseout instanceof Function?c.onmouseout(N,e):u(N)},ondragstart:N=>{c.ondragstart instanceof Function&&r.draggable&&(d=N.offsetY,c.ondragstart(N,e))},ondragend:N=>{if(c.ondragend instanceof Function&&r.draggable){const l=N.offsetY-d;if(l===0)return;const f=s.convertFromPixel({yAxisIndex:0},n+l);c.ondragend(N,e,f)}}}},me=M=>{const{y:n,text:i,profitY:e,profitText:o,lossY:a,lossText:j,info:s,gridLeft:r,gridRight:c,echartsWidth:d,echartsInstance:I}=M,{config:u,event:N}=s;let L=0,l=null,f=null;const w=(z,g)=>{var D,Y,m,O;(D=z.children()[2])==null||D.animate("style",!1).when(200,{opacity:~~g}).start(),(Y=z.children()[3].children()[0])==null||Y.animate("style",!1).when(200,{opacity:~~g}).start(),(m=z.children()[4])==null||m.animate("style",!1).when(200,{opacity:~~g}).start(),(O=z.children()[5].children()[0])==null||O.animate("style",!1).when(200,{opacity:~~g}).start()},h=z=>{let g=null;z.target.type==="line"?g=z.target.parent:z.target.type==="tspan"&&(g=z.target.parent.parent.parent),l=D=>{D.preventDefault(),(D.code==="AltLeft"||D.code==="AltRight")&&w(g,!0)},f=D=>{(D.code==="AltLeft"||D.code==="AltRight")&&w(g,!1)},window.addEventListener("keydown",l),window.addEventListener("keyup",f)},k=z=>{let g=null;z.target.type==="line"?g=z.target.parent:z.target.type==="tspan"&&(g=z.target.parent.parent.parent),w(g,!1),window.removeEventListener("keydown",l),window.removeEventListener("keyup",f)};return{type:"group",draggable:u.draggable?"vertical":!1,children:[{type:"line",info:s,shape:{x1:r,y1:n,x2:d-c,y2:n},style:{stroke:u.lineColor,lineWidth:1},z:10},{type:"group",x:d/2,y:n-5,children:[{type:"text",left:"center",info:s,style:{fill:u.textColor,text:i,stroke:"#000",lineWidth:1,opacity:1},z:10}]},{type:"line",info:s,shape:{x1:r,y1:e,x2:d-c,y2:e},style:{stroke:u.profitLineColor,lineWidth:1,lineDash:[8,4],opacity:0},z:10},{type:"group",x:d/2,y:e-5,children:[{type:"text",left:"center",info:s,style:{fill:u.profitTextColor,text:o,stroke:"#000",lineWidth:1,opacity:0},z:10}]},{type:"line",info:s,shape:{x1:r,y1:a,x2:d-c,y2:a},style:{stroke:u.lossLineColor,lineWidth:1,lineDash:[8,4],opacity:0},z:10},{type:"group",x:d/2,y:a-5,children:[{type:"text",left:"center",info:s,style:{fill:u.lossTextColor,text:j,stroke:"#000",lineWidth:1,opacity:0},z:10}]}],onmouseover:z=>{N.onmouseover instanceof Function?N.onmouseover(z,s):h(z)},onmouseout:z=>{N.onmouseout instanceof Function?N.onmouseout(z,s):k(z)},ondragstart:z=>{N.ondragstart instanceof Function&&u.draggable&&(L=z.offsetY,N.ondragstart(z,s))},ondragend:z=>{if(N.ondragend instanceof Function&&u.draggable){const D=z.offsetY-L;if(D===0)return;const Y=I.convertFromPixel({yAxisIndex:0},n+D);N.ondragend(z,s,Y)}}}},q=(M,n)=>{const{direction:i="",tradeAction:e="",tradeType:o=""}=M;if(n==="sellBuy"){const a=o??i+e;return new Map([["开多","买"],["平多","卖"],["开空","卖"],["平空","买"]]).get(a)}else if(n==="openClose")return o??i+e},we=(M,n)=>M.reduce((i,e)=>{var d;const o=q(e,"sellBuy"),a=M.filter(I=>I.time===e.time);let j="image://"+new URL(Object.assign({"./images/buy.svg":K,"./images/sell.svg":ee,"./images/t.svg":te})[`./images/${o==="买"?"buy":"sell"}.svg`],self.location).href;a.length>1?[...new Set(a.map(u=>q(u,"sellBuy")))].length>1?j="image://"+new URL("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBzdGFuZGFsb25lPSJubyI/PjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCI+PHN2ZyB0PSIxNjgzNzAzMjI4MjAyIiBjbGFzcz0iaWNvbiIgdmlld0JveD0iMCAwIDEwMjQgMTAyNCIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHAtaWQ9IjMwNzgiIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB3aWR0aD0iMjAwIiBoZWlnaHQ9IjIwMCI+PHBhdGggZD0iTTE5OC4wMTYgMTA5LjczODY2N0E3Ny44NjY2NjcgNzcuODY2NjY3IDAgMCAwIDE3MC42NjY2NjcgMTY3LjY4bDAuNTEyIDQxOC45NDRjMCAyMi44NjkzMzMgNi40IDQ4IDE5LjAyOTMzMyA3NS4zMDY2NjcgMTIuNjcyIDI3LjIyMTMzMyAyNy45ODkzMzMgNDguOTM4NjY3IDQ1Ljk1MiA2NC45Mzg2NjZsMjExLjE1NzMzMyAxODguMjAyNjY3YzE3LjA2NjY2NyAxNS40ODggNDAuNTc2IDIzLjk3ODY2NyA2NC45Mzg2NjcgMjMuNTk0NjY3IDI1LjY4NTMzMy0wLjA4NTMzMyA0Ny4zNi03LjkzNiA2NC45ODEzMzMtMjMuNTk0NjY3bDIxMS4yLTE4OC4yMDI2NjdjMTcuOTItMTYgMzMuMTk0NjY3LTM3LjYzMiA0NS44NjY2NjctNjQuOTM4NjY2IDEyLjY3Mi0yNy4zMDY2NjcgMTguNzczMzMzLTUyLjIyNCAxOC41MTczMzMtNzQuOTIyNjY3TDg1My4zMzMzMzMgMTY3LjI1MzMzM2MwLTIyLjI3Mi04Ljk2LTQxLjQ3Mi0yNi44MzczMzMtNTcuNDcyLTE3LjU3ODY2Ny0xNS42MTYtMzkuMzM4NjY3LTIzLjg5MzMzMy02NC45Mzg2NjctMjQuNDA1MzMzbC00OTkuMDI5MzMzIDAuNDY5MzMzYTkzLjMxMiA5My4zMTIgMCAwIDAtNjQuNTEyIDIzLjg5MzMzNHoiIGZpbGw9IiNDODgwRkYiIHAtaWQ9IjMwNzkiPjwvcGF0aD48cGF0aCBkPSJNMTcwLjY2NjY2NyAxNjcuNjhjMC4xMjgtMjEuNzYgOS45NDEzMzMtNDIuNjY2NjY3IDI3LjM0OTMzMy01Ny45NDEzMzNhOTMuMzEyIDkzLjMxMiAwIDAgMSA2NC41MTItMjMuODkzMzM0TDc2MS41NTczMzMgODUuMzMzMzMzYzI1LjYgMC41NTQ2NjcgNDcuMzYgOC43ODkzMzMgNjQuOTM4NjY3IDI0LjQwNTMzNCAxNy45MiAxNiAyNi44MzczMzMgMzUuMiAyNi44MzczMzMgNTcuNDcybC0wLjUxMiA0MTkuODRjMC4yOTg2NjcgMjIuNjU2LTUuODQ1MzMzIDQ3LjYxNi0xOC41MTczMzMgNzQuODgtMTIuNjcyIDI3LjMwNjY2Ny0yNy45NDY2NjcgNDguOTM4NjY3LTQ1Ljg2NjY2NyA2NC45Mzg2NjZsLTIxMS4yIDE4OC4yMDI2NjdjLTE3LjYyMTMzMyAxNS42NTg2NjctMzkuMjUzMzMzIDIzLjUwOTMzMy02NC45ODEzMzMgMjMuNTk0NjY3YTk0LjcyIDk0LjcyIDAgMCAxLTY0LjkzODY2Ny0yMy41OTQ2NjdsLTIxMS4yLTE4OC4yMDI2NjdjLTE3LjkyLTE2LTMzLjIzNzMzMy0zNy43MTczMzMtNDUuOTA5MzMzLTY0LjkzODY2Ni0xMi42MjkzMzMtMjcuMzA2NjY3LTE5LjAyOTMzMy01Mi40MzczMzMtMTkuMDI5MzMzLTc1LjMwNjY2N0wxNzAuNjY2NjY3IDE2Ny42OHogbTQyLjYyNCAwLjI1NmwwLjU1NDY2NiA0MTguNjg4YzAgMTYuMTcwNjY3IDQuODY0IDM1LjMyOCAxNS4wNjEzMzQgNTcuMzQ0IDEwLjM2OCAyMi4yNzIgMjIuMzE0NjY3IDM5LjE2OCAzNS42MjY2NjYgNTEuMDI5MzMzbDIxMS40MTMzMzQgMTg4LjQxNmM4Ljk2IDguMTA2NjY3IDIxLjg4OCAxMi44IDM2LjIyNCAxMi41ODY2NjcgMTUuNTMwNjY3LTAuMDQyNjY3IDI3LjA5MzMzMy00LjI2NjY2NyAzNi42OTMzMzMtMTIuOGwyMTEuMTE0NjY3LTE4OC4xNmMxMy4zNTQ2NjctMTEuOTQ2NjY3IDI1LjMwMTMzMy0yOC44NDI2NjcgMzUuNjI2NjY2LTUxLjA3MiAxMC4xMTItMjEuNzYgMTQuNzYyNjY3LTQwLjUzMzMzMyAxNC41MDY2NjctNTcuMDAyNjY3TDgxMC42NjY2NjcgMTY3LjIxMDY2N2MwLTkuODk4NjY3LTMuNTg0LTE3LjYyMTMzMy0xMi41MDEzMzQtMjUuNkE1NC42OTg2NjcgNTQuNjk4NjY3IDAgMCAwIDc2MS42IDEyOGwtNDk5LjYyNjY2NyAwLjQ2OTMzM2E1MS4zMjggNTEuMzI4IDAgMCAwLTM1Ljc1NDY2NiAxMy4yNjkzMzQgMzYuNTY1MzMzIDM2LjU2NTMzMyAwIDAgMC0xMi41MDEzMzQgMjEuNTA0bC0wLjQyNjY2NiA0LjY5MzMzM3oiIGZpbGw9IiNBRTQ0RkYiIHAtaWQ9IjMwODAiPjwvcGF0aD48cGF0aCBkPSJNNDc1LjMwNjY2NyA2NTguMjE4NjY3aDczLjQ3MlYzMDYuMzg5MzMzaDExNi40OFYyNDguNDQ4aC0zMDcuNjI2NjY3djU3Ljk0MTMzM2gxMTcuNjc0NjY3eiIgZmlsbD0iI0ZGRkZGRiIgcC1pZD0iMzA4MSI+PC9wYXRoPjwvc3ZnPg==",self.location).href:j="image://"+new URL(Object.assign({"./images/buy.svg":K,"./images/sell.svg":ee,"./images/t.svg":te})[`./images/${o==="买"?"buy":"sell"}.svg`],self.location).href:j="image://"+new URL(Object.assign({"./images/buy.svg":K,"./images/sell.svg":ee,"./images/t.svg":te})[`./images/${o==="买"?"buy":"sell"}.svg`],self.location).href;const r=(n.find(I=>I[0]===e.time)??[])[2],c=((d=e==null?void 0:e.markLineTarget)==null?void 0:d.map(I=>{const u=e.time,N=r+"",L=I.time,l=n.find(w=>w[0]===I.time),f=l?l[3]:null;return[{coord:[u,N],lineStyle:I.lineStyle},{coord:[L,f]}]}))??null;return i.push({symbol:j,symbolSize:25,animation:!1,coord:[e.time+"",r],symbolRotate:0,symbolOffset:[0,"-7"],markLineTarget:c}),i},[]),he=(M,n)=>M.reduce((i,e,o)=>{var I;const a=q(e,"openClose"),j=a==="开多"||a==="开空"?"top":"bottom",s=n.find(u=>u[0]===e.time)??[],r=j==="top"?s[2]:s[3];let c=7;c+=M.slice(0,o).filter(u=>{const N=q(u,"openClose");return(N==="开多"||N==="开空"?"top":"bottom")===j&&u.time===e.time}).length*7;const d=((I=e==null?void 0:e.markLineTarget)==null?void 0:I.map(u=>{const N=e.time,L=r+"",l=u.time,f=n.find(w=>w[0]===u.time)[3];return[{coord:[N,L],lineStyle:u.lineStyle},{coord:[l,f]}]}))??null;return i.push({symbol:"triangle",symbolSize:[10,12],animation:!1,coord:[e.time+"",r],symbolRotate:j==="top"?180:0,symbolOffset:[0,`${j==="top"?c*-1:c}`],itemStyle:{color:j==="top"?"#FF0000":"#389e0d"},label:{show:!0,position:j,color:"#fff",formatter:`${a} ${j==="top"?"+":"-"} ${e.amount}手 ${e.part?`(${e.part}份)`:""}`},markLineTarget:d}),i},[]),Ce=(M,n)=>M.reduce((i,e)=>{const{key:o,data:a}=e;if(a===null||a.length===0)return i;const s=new Map([["sellBuy",()=>we(a,n)],["openClose",()=>he(a,n)],["signal",()=>{}]]).get(o);return s instanceof Function&&i.push(...s()),i},[]),ne=async(M,n,i,e,o,a)=>{const{totalBarCount:j,defaultShowBarCount:s,maxValueSpan:r,gridLeft:c,gridTop:d,gridRight:I,gridBottom:u,zoomLock:N}=e,{time:L,kLine:l,originData:f,indicator:w}=await fe(M,i,j),h=w.map(g=>{const{key:D,data:Y,color:m}=g;return{name:D,type:"line",silent:!0,symbol:"none",data:Y,lineStyle:{width:1},itemStyle:{color:m}}}),k=Ce(n,f);let z=[];return k.forEach(g=>{g.markLineTarget&&(z=[...z,...g.markLineTarget])}),{animation:!1,dataset:{id:"data",source:{klineData:l,indicatorData:w}},grid:{left:`${c}px`,top:`${d}px`,right:`${I}px`,bottom:`${u}px`},tooltip:{trigger:"axis",axisPointer:{type:"cross",label:{formatter:g=>{const{axisDimension:D,value:Y}=g;return D==="x"?Y:String(v(Y))}}},formatter:g=>{let D=null,Y="";return g.forEach(m=>{m.seriesName==="资产持仓净值"&&m.data!==null&&(Y+=`<div>资产持仓净值: ${m.data}</div>`),m.componentSubType==="candlestick"&&n.forEach(O=>{const{key:E,data:F}=O;if(E==="sellBuy"){const b=F.filter(x=>x.time===m.axisValue);let B=0,T=0;b.forEach(x=>{x.tradeType==="开多"||x.tradeType==="平空"?B+=x.amount:T+=x.amount}),B&&(Y+=`<div>买: ${B}</div>`),T&&(Y+=`<div>卖: ${T}</div>`)}E==="openClose"&&F.forEach(b=>{b.time===m.axisValue&&(Y+=b.tooltip)})}),Y&&(D=`<div><span style="font-weight: bold;">${m.axisValue}</span>${Y}</div>`)}),D}},xAxis:{type:"category",data:L,axisLine:{show:!0},splitLine:{show:!0,lineStyle:{type:"dotted",color:"#333"}},axisLabel:{show:!0,formatter:g=>g}},yAxis:[{index:0,splitLine:{show:!0,lineStyle:{type:"dotted",color:"#333"}},min:g=>{const{min:D,max:Y}=g,m=Math.abs((Y-D)/10);return D-m},max:g=>{const{min:D,max:Y}=g,m=Math.abs((Y-D)/10);return Y+m},axisLine:{show:!0},axisLabel:{formatter:g=>v(g),showMaxLabel:!1}},{show:!1,min:"dataMin"}],dataZoom:[{type:"inside",xAxisIndex:[0,0],zoomLock:N,maxValueSpan:r,start:l.length>=s?(l.length-s)/l.length*100:0,end:99.99}],series:[{name:"k线",type:"candlestick",data:l,markPoint:{data:k},markLine:{position:"middle",textStyle:{color:"blue",fontSize:15},animation:!1,data:z,lineStyle:{width:3,type:"solid"},symbol:["none","none"]},itemStyle:{color:"transparent",color0:"#00FFFF",borderColor:"#FF0000",borderColor0:"#00FFFF",borderWidth:1},z:1},...h,{name:"资产持仓净值",type:"line",data:o??[],symbol:"none",yAxisIndex:1,connectNulls:!0,itemStyle:{color:"#666"}},{name:"二腿相关度",type:"line",data:a??[],symbol:"none",yAxisIndex:1,connectNulls:!0,itemStyle:{color:"#FFF"},lineStyle:{width:2},label:{show:!0,position:"top",formatter:g=>`相关度: ${g.data[1]}`,textStyle:{color:"#FFF",fontSize:14}}}],toolbox:{show:!1},brush:{xAxisIndex:"all",brushLink:"all",transformable:!1,outOfBrush:{colorAlpha:1},brushStyle:{color:"rgba(120,140,180,0)",borderColor:"rgba(255,255,255,0.4)"}}}},Oe=(M,n,i)=>{var I;const{gridLeft:e,gridRight:o,gridBottom:a,warningConfig:j,positionConfig:s,conditionConfig:r,isOpenDS:c}=n;let d=[];if((I=i==null?void 0:i.getModel())!=null&&I.getComponent){const[u,N]=i.getModel().getComponent("yAxis").axis.scale._extent;let L=[],l={},f=[],w={},h=[],k={};if(M.forEach(({key:z,data:g,...D})=>{z==="warning"?(L=g,l=D):z==="position"?(f=g,w=D):z==="condition"&&(h=g,k=D)}),L.length>0&&(d=L.reduce((z,g)=>{const{value:D,text:Y,info:m,config:O}=g;if(D>N||D<u)return z;const E={y:i.convertToPixel({yAxisIndex:0},D),text:Y,info:{info:m,config:{...j,...O},event:{...l}},gridLeft:e,gridRight:o,echartsWidth:i.getWidth(),echartsInstance:i};return[...z,Ye(E)]},d)),f.length>0&&(d=f.reduce((z,g)=>{const{value:D,text:Y,info:m,config:O}=g;if(D>N||D<u)return z;const E={y:i.convertToPixel({yAxisIndex:0},D),text:Y,info:{info:m,config:{...s,...O},event:{...w}},gridLeft:e,gridRight:o,echartsWidth:i.getWidth(),echartsInstance:i};return[...z,Ae(E)]},d)),h.length>0&&(d=h.reduce((z,g)=>{const{value:D,text:Y,profitValue:m,profitText:O,lossValue:E,lossText:F,info:b,config:B}=g;if(D>N||D<u)return z;const T={y:i.convertToPixel({yAxisIndex:0},D),text:Y,profitY:i.convertToPixel({yAxisIndex:0},m),profitText:O,lossY:i.convertToPixel({yAxisIndex:0},E),lossText:F,info:{info:b,config:{...r,...B},event:{...k}},gridLeft:e,gridRight:o,echartsWidth:i.getWidth(),echartsInstance:i};return[...z,me(T)]},d)),c){const z=i.getOption(),g=z.dataset[0].source.klineData.slice(z.dataZoom[0].startValue,z.dataZoom[0].endValue+1),D={};g.forEach(T=>{D[T[1]]?D[T[1]]+=1:D[T[1]]=1});const Y=g[g.length-1][1],m=g.reduce((T,x)=>T+x[1],0)/g.length,O=Y-m,E=ve(g,1,50),F=Ee(g),b=F?O/F:0,B=ke(g,1,Y);d=[...d,{type:"group",draggable:!1,children:Object.keys(D).map(T=>({type:"line",shape:{x1:i.getWidth()-o-100*D[T],y1:i.convertToPixel({yAxisIndex:0},T),x2:i.getWidth()-o,y2:i.convertToPixel({yAxisIndex:0},T)},style:{stroke:"rgb(124,124,124)",lineWidth:1},z:10}))},{type:"text",x:e+6,y:i.getHeight()-a-20,style:{fill:"#FFF",text:`均值: ${v(m)} 距均值: ${v(O)} 中值: ${v(E)} 标准差: ${v(F)} 距均值/标准差: ${v(b)} 百分位: ${v(B)}%`,lineWidth:1,opacity:1},z:10}]}}return{elements:d}},ke=(M,n,i)=>{const{round:e,add:o,subtract:a,multiply:j,divide:s}=J.x,r=M.map(d=>d[n]).sort((d,I)=>d-I);let c=0;for(let d=0;d<r.length;d++)if(r[d]===i){c=d;break}else if(r[d]>=i){c=o(d,s(a(r[d+1],r[d]),r[d]));break}return e(s(j(c,100),M.length+1))},ve=(M,n,i)=>{const{round:e,add:o,subtract:a,multiply:j,divide:s}=J.x,r=M.map(u=>u[n]).sort((u,N)=>u-N),c=j(M.length+1,s(i,100)),d=Math.floor(c),I=a(c,d);return e(I===0?r[c]:o(r[d],j(a(r[d>=M.length-1?d:d+1],r[d]),I)))};function Ee(M){const n=M.map(j=>j[1]),i=n.length;let e=0,o=0;for(const j of n)e+=j;const a=e/i;for(const j of n)o+=Math.pow(j-a,2);return Math.sqrt(o/i)}const be={class:"st-kline"},Se={class:"st-kline-header"},_e=300,Fe=t.defineComponent({__name:"index",props:{indicator:{type:Object,default:()=>({})},klineData:{type:Array,default:()=>[]},markData:{type:Array,default:()=>[]},lineData:{type:Array,default:()=>[]},netPositionData:{type:Array,default:()=>[]},relevanceData:{type:Array,default:()=>[]},priceTrendData:{type:Array,default:()=>[]},priceTrendPercentData:{type:Array,default:()=>[]},brushRange:{type:Array,default:()=>[]},defaultMenuData:{type:Array,default:()=>[]},isSelect:{type:Boolean,default:()=>!1},config:{type:Object,default:()=>({})}},setup(M){const n=M,i={totalBarCount:2e3,defaultShowBarCount:200,preBarCount:800,maxValueSpan:1e4,gridLeft:60,gridTop:0,gridRight:60,gridBottom:30,warningConfig:{draggable:!1,lineColor:"#fff",textColor:"#fff"},positionConfig:{draggable:!1,lineColor:"#e45d07",textColor:"#fff"},conditionConfig:{draggable:!1,lineColor:"#fff",textColor:"#fff",profitLineColor:"#b71e44",profitTextColor:"#fff",lossLineColor:"#749b66",lossTextColor:"#fff"},tipsConfig:{open:!0,heigh:!0,low:!0,close:!0,business:!0,riseAndFall:!0},dynamicLoadConfig:{historyVisible:!1,historyLoadCallBack:()=>{},futureVisible:!1,futureLoadCallBack:()=>{}},zoomLock:!1,isOpenDS:!1},e=t.computed(()=>({...i,...n.config})),o=t.ref(null),a=t.ref(-1),j=t.computed(()=>{var T,x;if(o.value&&((x=(T=o.value.dataset[0])==null?void 0:T.source)!=null&&x.klineData[a.value])){const p=o.value.dataset[0].source.klineData[a.value],y=[],{open:A,heigh:C,low:S,close:Q,business:V,riseAndFall:R}=e.value.tipsConfig;if(A&&y.push({label:"开",value:p[0],color:"rgb(153, 153, 153)"}),C&&y.push({label:"高",value:p[3],color:"rgb(153, 153, 153)"}),S&&y.push({label:"低",value:p[2],color:"rgb(153, 153, 153)"}),Q&&y.push({label:"收",value:p[1],color:"rgb(153, 153, 153)"}),V&&y.push({label:"额",value:xe(p[4]),color:"rgb(153, 153, 153)"}),R){let U=((p[1]-p[5])/p[1]*100).toFixed(2),_=+U==0?"white":+U>0?"red":"#00ff00";y.push({label:"涨跌",value:`${U}%`,color:_})}return y}return[]}),s=t.computed(()=>{var T,x;return o.value&&((x=(T=o.value.dataset[0])==null?void 0:T.source)!=null&&x.indicatorData)?o.value.dataset[0].source.indicatorData.reduce((p,y)=>(y.data[a.value]&&p.push({label:y.key,value:v(y.data[a.value]),color:y.color}),p),[]):[]}),r=t.computed(()=>{const T=["#FFFFFF","#FFDD00","#FF00FF","#00FF00","#FF6000","#1677FF","#7C3CC9","#FF0000","#FB9A0E","#00B7FF"];if(n.priceTrendData.length>0){const x=[];return n.priceTrendData.forEach((p,y)=>{var C;(p.data[a.value]?v(p.data[a.value][1]):null)!==null&&x.push({label:p.name,value:v((C=p.data[a.value])==null?void 0:C[1]),color:T[y]})}),x}if(n.priceTrendPercentData.length>0){const x=[];return l.getOption().series.filter(y=>y.name.includes("二腿价格走势百分比图")).forEach((y,A)=>{var S;(y.data[a.value]?v(y.data[a.value][1]):null)!==null&&x.push({label:y.name.split("-")[1],value:`${v((S=y.data[a.value])==null?void 0:S[1])}%`,color:T[A]})}),x}return[]});t.watch(()=>[n.klineData,n.indicator,n.markData,n.netPositionData,n.relevanceData],()=>{c()},{deep:!0}),t.watch(()=>n.lineData,async()=>{W("st-kline组件消息:props.lineData监控,额外画线数据发生改变,重绘->line",{color:"red"}),c("line")},{deep:!0}),t.watch(()=>n.brushRange,async()=>{W("st-kline组件消息:props.brushRange监控,区域刷选数据发生改变,重绘->brush",{color:"red"}),c("brush")},{deep:!0}),t.watch(()=>n.priceTrendData,async()=>{c("priceTrend")},{deep:!0}),t.watch(()=>n.priceTrendPercentData,async()=>{c("priceTrendPercent")},{deep:!0});const c=async T=>{const p=new Map([["kline",async()=>{const y=await ne(n.klineData,n.markData,n.indicator,e.value,n.netPositionData,n.relevanceData),{graphic:A}=l.getOption()??{graphic:[]};o.value={...y,graphic:A},l.setOption(o.value,!0),W("st-kline组件消息:K线绘制完毕-draw",{color:"green"})}],["line",()=>{const y=l.getOption(),A=Oe(n.lineData,e.value,l);o.value={...y,graphic:A},l.setOption(o.value,{replaceMerge:["graphic"]}),W("st-kline组件消息:额外画线绘制完毕-draw",{color:"green"})}],["brush",()=>{const{brushRange:y}=n;y instanceof Array&&y.length>0&&(l.dispatchAction({type:"brush",areas:[{brushType:"lineX",coordRange:[y[0]+"",y[1]+""],xAxisIndex:0}]}),W("st-kline组件消息:区域刷选绘制完毕-draw",{color:"green"}))}],[void 0,async()=>{await c("kline"),await c("line"),await c("priceTrend"),await c("priceTrendPercent"),await c("brush")}],["history",async()=>{const y=l.getOption(),A=await ne(n.klineData,n.markData,n.indicator,e.value,n.netPositionData,n.relevanceData),C=A.dataset.source.klineData.length-y.dataset[0].source.klineData.length;l.setOption({...A,dataZoom:[{type:"inside",xAxisIndex:[0,0],zoomLock:e.value.zoomLock,maxValueSpan:e.value.maxValueSpan,startValue:y.dataZoom[0].startValue+C,endValue:y.dataZoom[0].endValue+C}]},!0),await c("priceTrend")}],["future",async()=>{const y=l.getOption(),A=await ne(n.klineData,n.markData,n.indicator,e.value,n.netPositionData,n.relevanceData);A.dataZoom[0].start=(n.klineData.length-y.dataZoom[0].endValue+y.dataZoom[0].startValue)/n.klineData.length*100,l.setOption(A,!0),await c("priceTrend")}],["priceTrend",()=>{if(n.priceTrendData.length===0)return;const y=l.getOption(),A=["#FFFFFF","#FFDD00","#FF00FF","#00FF00","#FF6000","#1677FF","#7C3CC9","#FF0000","#FB9A0E","#00B7FF"],C=n.priceTrendData.reduce((S,Q,V)=>{const{name:R,data:U}=Q,_={name:`二腿价格走势图-${R}`,type:"line",data:U,symbol:"none",yAxisIndex:1,connectNulls:!0,itemStyle:{color:A[V]},lineStyle:{type:"dashed",width:1}};return S.push(_),S},[]);o.value={...y,series:[...y.series,...C]},l.setOption(o.value,{replaceMerge:["series"]})}],["priceTrendPercent",async()=>{if(n.priceTrendPercentData.length===0)return;const y=l.getOption(),A=["#FFFFFF","#FFDD00","#FF00FF","#00FF00","#FF6000","#1677FF","#7C3CC9","#FF0000","#FB9A0E","#00B7FF"],C=y.dataZoom[0].startValue,S=n.priceTrendPercentData.reduce((Q,V,R)=>{const{name:U,data:_}=V,Z=_.length>e.value.totalBarCount?_.slice(_.length-e.value.totalBarCount):_,G=Z[C][1],Ne=Z.map(ie=>[ie[0],(ie[1]-G)/G*100]),ze={name:`二腿价格走势百分比图-${U}`,type:"line",data:Ne,symbol:"none",yAxisIndex:1,connectNulls:!0,itemStyle:{color:A[R]},lineStyle:{type:"dashed",width:1}};return Q.push(ze),Q},[]);y.series=[...y.series.filter(Q=>!Q.name.includes("二腿价格走势百分比图")),...S],l.setOption(y,!0)}]]).get(T);p instanceof Function&&await p()},d=t.ref(!1),I=t.ref([]),u=T=>{const{callBack:x}=T;x instanceof Function&&x(l,d)},N=()=>{I.value=n.defaultMenuData},L=t.ref();let l,f;const w=(T,x)=>{var p,y;if(T)a.value=typeof((p=T==null?void 0:T.batch[0])==null?void 0:p.dataIndex)=="number"?(y=T==null?void 0:T.batch[0])==null?void 0:y.dataIndex:-1;else{const A=x.getOption();A.dataZoom instanceof Array&&(a.value=A.dataZoom[0].endValue)}};let h=null,k=!1,z=t.ref(!1),g=!1,D=t.ref(!1);const Y=async T=>{const x=T.batch?T.batch[0].start*e.value.totalBarCount:T.startValue;e.value.dynamicLoadConfig.historyVisible&&x<=100&&!k&&!z.value&&(k=!0,await e.value.dynamicLoadConfig.historyLoadCallBack(z),await c("history"),k=!1);const p=T.batch?T.batch[0].end===100:T.endValue>=n.klineData.length-e.value.preBarCount-1,y=T.actionIsWheel;e.value.dynamicLoadConfig.futureVisible&&p&&!g&&!D.value&&!y&&(g=!0,await e.value.dynamicLoadConfig.futureLoadCallBack(D),await c("future"),g=!1),clearTimeout(h),h=setTimeout(()=>{c("line"),c("priceTrendPercent"),clearTimeout(h),h=null},_e)};let m=null;const O=T=>{m=setTimeout(()=>{var x;if(T.componentType==="graphic"){const{oncontextmenu:p}=((x=T.info)==null?void 0:x.event)??{};p instanceof Function&&p(T,T.info,I)}clearTimeout(m),m=null})},E=()=>{l.on("highlight",T=>{w(T,l)}),l.on("globalout",()=>{w(null,l)}),l.on("contextmenu",T=>{O(T)}),l.on("datazoom",T=>{Y(T)})},F=()=>{l.off("highlight"),l.off("globalout"),l.off("contextmenu"),l.off("datazoom")},b=T=>{if(!l||!(T.ctrlKey||n.isSelect))return;const x=l.getOption();let{startValue:p,endValue:y,start:A,end:C}=x.dataZoom[0];const S=()=>{p!==0&&(p=p-1,y=y-1,l.dispatchAction({type:"dataZoom",startValue:p,endValue:y,maxValueSpan:e.value.maxValueSpan}))},Q=()=>{if(e.value.dynamicLoadConfig.futureVisible&&!g&&!D.value)p=p+1,y=y+1,l.dispatchAction({type:"dataZoom",startValue:p,endValue:y,maxValueSpan:e.value.maxValueSpan});else{if(y===x.xAxis[0].data.length-1)return;p=p+1,y=y+1,l.dispatchAction({type:"dataZoom",startValue:p,endValue:y,maxValueSpan:e.value.maxValueSpan})}},V=()=>{if(y-p<5)return;const Z=Math.floor((a.value-p)/2)+1,G=Math.floor((y-a.value)/2)+1;p=p+Z,y=y-G,l.dispatchAction({type:"dataZoom",startValue:p,endValue:y,actionIsWheel:!0,maxValueSpan:e.value.maxValueSpan})},R=()=>{A=A-(C-A)/4,l.dispatchAction({type:"dataZoom",start:A,end:C,actionIsWheel:!0,maxValueSpan:e.value.maxValueSpan})},_=new Map([["ArrowLeft",S],["ArrowRight",Q],["ArrowUp",V],["ArrowDown",R]]).get(T.code);_ instanceof Function&&_()},B=async()=>{let T=!0;l=H.init(L.value),await c(),I.value=n.defaultMenuData,a.value=l.getOption().dataZoom[0].endValue??-1,E(),f=new ResizeObserver(()=>{if(T){T=null;return}l.resize(),c("line")}),f.observe(L.value),window.addEventListener("keydown",b)};return t.onMounted(()=>{B()}),t.onUnmounted(()=>{F(),window.removeEventListener("keydown",b),l.dispose(),f.disconnect(),f=null}),(T,x)=>{const p=ae.ElMenuItem,y=ae.ElMenu;return t.openBlock(),t.createElementBlock("div",be,[t.createElementVNode("div",Se,[t.createVNode(X,{data:j.value},null,8,["data"]),t.createVNode(X,{data:s.value},null,8,["data"]),t.createVNode(X,{data:r.value},null,8,["data"])]),t.createVNode(Ie,{class:"st-kline-body",onCloseContextMenuCallBack:N},{popover:t.withCtx(()=>[t.createVNode(y,{class:"menu"},{default:t.withCtx(()=>[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(I.value,A=>(t.openBlock(),t.createBlock(p,{key:A.label,index:A.label,class:"menuItem",onClick:C=>u(A)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(A.label),1)]),_:2},1032,["index","onClick"]))),128))]),_:1})]),default:t.withCtx(()=>[t.createElementVNode("div",{ref_key:"echartsRef",ref:L,class:t.normalizeClass(d.value?"st-kline-chart cursorPen":"st-kline-chart")},null,2)]),_:1})])}}});const Qe=P._export_sfc(Fe,[["__scopeId","data-v-57c04894"]]),Be={class:"kline-tips"},Ue=t.defineComponent({__name:"index",props:{data:{type:Array,require:!0}},setup(M){return(n,i)=>(t.openBlock(),t.createElementBlock("div",Be,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(M.data,(e,o)=>(t.openBlock(),t.createElementBlock("div",{key:o,class:"kline-tips-item",style:t.normalizeStyle({color:e.color})},t.toDisplayString(e.label)+" "+t.toDisplayString(e.value),5))),128))]))}});const oe=P._export_sfc(Ue,[["__scopeId","data-v-dc7d381b"]]);const Ve={class:"klineSub"},Re={class:"klineSub-tips"},Pe={key:0,class:"klineSub-tips-select"},We={__name:"index",props:{data:{type:Object,require:!0},activeIndex:{type:[Number,String],require:!0},modelValue:{type:String,required:!0},subIndicatorList:{type:Array,required:!0}},emits:["update:modelValue"],setup(M,{expose:n,emit:i}){const{round:e}=J.x;let o,a;const j=i,s=M,r=t.ref(),c=t.computed({get(){return s.modelValue},set(u){j("update:modelValue",u)}}),d=t.computed(()=>{var L;const{data:u,activeIndex:N}=s;return((L=u==null?void 0:u.subIndicator)==null?void 0:L.map(l=>({label:l.key,color:l.color,value:l.data[N]||"-"})))||[]});t.onMounted(()=>{o=H.init(r.value);let u=!0;a=new ResizeObserver(()=>{if(u){u=null;return}o.resize()}),a.observe(r.value)}),t.onUnmounted(()=>{o.dispose(),a.disconnect(),a=null});const I=(u,N)=>{const L=u[N],l=N===0?u[N]:u[N-1];return L[0]===L[1]?L[0]>=l[1]?{color:"transparent",borderColor:"#FF0000"}:{color:"#00FFFF"}:L[1]>L[0]?{color:"transparent",borderColor:"#FF0000"}:{color:"#00FFFF"}};return n({connect:u=>{H.connect([u,o])},draw:(u,N)=>{t.nextTick(()=>{const{startValue:L,endValue:l,maxValueSpan:f}=u,{leftYAxisRange:w,rightYAxisRange:h}=s.data.subIndicator[0],k=s.data.subIndicator.map(z=>{if(z.series==="bar")return{name:"subMain",xAxisIndex:0,yAxisIndex:1,type:"bar",silent:!0,symbol:"none",data:z.data.map((g,D)=>z.seriesColor==="kline"?{value:g,itemStyle:I(s.data.data,D)}:z.seriesColor==="value"?{value:g,itemStyle:{color:g>=0?"#FF0000":"#00FFFF"}}:{value:g,itemStyle:{color:z.seriesColor}})};if(z.series==="line")return{xAxisIndex:0,yAxisIndex:z.yAxis==="right"?2:1,name:z.key,type:"line",silent:!0,symbol:"none",data:z.data,lineStyle:{width:1},itemStyle:{color:z.color}}});o.setOption({animation:!1,grid:{left:`${N.gridLeft}px`,top:"10px",right:`${N.gridRight}px`,bottom:"20px"},dataZoom:[{type:"inside",startValue:L,endValue:l,maxValueSpan:f}],tooltip:{trigger:"axis",appendToBody:!0,confine:!0,axisPointer:{type:"cross",label:{rich:{},formatter:z=>{const{axisDimension:g,value:D}=z;if(g==="x")return D;if(z.axisIndex===1)return String(e(D))}}},formatter:()=>""},xAxis:{type:"category",data:s.data.time,axisLine:{show:!0},splitLine:{show:!1},axisLabel:{show:!0,formatter:z=>z}},yAxis:[{position:"right"},{position:"left",min:w==="cover"?z=>z.min:null,max:w==="cover"?z=>z.max:null,splitNumber:1,axisLine:{show:!0},splitLine:{show:!0,lineStyle:{type:"dotted",color:"#333"}}},{position:"right",min:h==="cover"?z=>z.min:null,max:h==="cover"?z=>z.max:null,splitNumber:1,axisLine:{show:!1},splitLine:{show:!1},axisLabel:{show:!1}}],series:k},!0)})}}),(u,N)=>{const L=Me.ElOption,l=Me.ElSelect;return t.openBlock(),t.createElementBlock("div",Ve,[t.createElementVNode("div",Re,[d.value.length?(t.openBlock(),t.createElementBlock("div",Pe,[t.createVNode(l,{modelValue:c.value,"onUpdate:modelValue":N[0]||(N[0]=f=>c.value=f),size:"small","popper-class":"element-dark",class:"element-dark subIndicator"},{default:t.withCtx(()=>[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(M.subIndicatorList,f=>(t.openBlock(),t.createBlock(L,{key:f.value,label:f.label,value:f.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])])):t.createCommentVNode("",!0),t.createVNode(oe,{data:d.value},null,8,["data"])]),t.createElementVNode("div",{class:"klineSub-chart",ref_key:"subChartRef",ref:r},null,512)])}}},Ze=P._export_sfc(We,[["__scopeId","data-v-aba58678"]]);const Ge={class:"kline-tips"},$e={__name:"index",props:{data:{type:Object,require:!0},activeIndex:{type:[Number,String],require:!0}},setup(M){const{round:n,formatValue:i}=J.x,e=M,o=t.computed(()=>{const{data:j,activeIndex:s}=e;if(j.data&&j.data[s]){const r=j.data[s],c=[{label:"开",value:r[0]},{label:"高",value:r[3]},{label:"低",value:r[2]},{label:"收",value:r[1]}];r[4]!==null&&c.push({label:"额",value:i(r[4])});let d;return r[6]>0?d="red":r[6]<0&&(d="green"),c.push({label:"涨跌",value:`${n(r[6])}%`,color:d}),c}return[]}),a=t.computed(()=>{var r;const{data:j,activeIndex:s}=e;return((r=j==null?void 0:j.mainIndicator)==null?void 0:r.map(c=>({label:c.key,value:n(c.data[s]),color:c.color})))||[]});return(j,s)=>(t.openBlock(),t.createElementBlock("div",Ge,[t.createVNode(oe,{data:o.value},null,8,["data"]),t.createVNode(oe,{data:a.value},null,8,["data"])]))}},He=P._export_sfc($e,[["__scopeId","data-v-09ec31e8"]]),qe={__name:"index",setup(M,{expose:n}){return n({handleKeyDown:(i,e)=>{let{startValue:o,endValue:a,maxIndex:j}=e;if(i.code==="ArrowLeft"){if(o===0)return;o=o-1,a=a-1}else if(i.code==="ArrowRight"){if(a===j)return;o=o+1,a=a+1}else if(i.code==="ArrowUp"){if(a-o<5)return;const s=Math.floor((a-o)/2)+1;o=o+s,a-o<5&&(o=a-4)}else if(i.code==="ArrowDown"){const s=Math.min(500,a-o);o=o-s-1}return{startValue:o,endValue:a}},mergeData:(i,e)=>({time:[...i.time,...e.time.slice(1)],data:[...i.data,...e.data.slice(1)],mainIndicator:i.mainIndicator.map((o,a)=>({...o,data:[...o.data,...e.mainIndicator[a].data.slice(1)]})),subIndicator:i.subIndicator.map((o,a)=>({...o,data:[...o.data,...e.subIndicator[a].data.slice(1)]}))}),getDataZoomInfoByTime:i=>{const{showStartTime:e,showEndTime:o,maxShowDays:a}=i;let j=-1,s=-1,r={};return i.time.forEach((c,d)=>{const I=c.split(" ")[0];r[I]=r[I]||0,r[I]+=1,j===-1&&new Date(c)>=new Date(e)&&(j=d),s===-1&&new Date(c)>=new Date(o)&&(s=d)}),s=s===-1?i.time.length-1:s,{startValue:j,endValue:s,maxValueSpan:Math.max(...Object.values(r))*a}}}),(i,e)=>null}};const Je={__name:"index",props:{data:{type:Array,default:()=>[]}},emits:["change"],setup(M,{expose:n,emit:i}){let e,o,a=null;const j=i,s=M,r=t.ref();t.watch(()=>s.data,()=>{I()},{deep:!0}),t.onMounted(()=>{e=H.init(r.value),c(),I();let u=!0;o=new ResizeObserver(()=>{if(u){u=null;return}e.resize()}),o.observe(r.value)}),t.onUnmounted(()=>{e.off("datazoom"),e.dispose(),o.disconnect(),o=null});const c=()=>{e.on("datazoom",u=>{u.dataZoomId&&(clearTimeout(a),a=setTimeout(()=>{const{data:N}=s,{start:L,end:l}=u,f=Math.floor(L*N.length/100),w=l===100?N.length-1:Math.floor(l*N.length/100);d(f,w),clearTimeout(a)},100))})},d=(u,N)=>{const L=s.data;if(L.length===0)return;const l=L[u][0].split(" ")[0],f=L[N][0].split(" ")[0];j("change",{startTime:`${l} 00:00:00`,endTime:`${f} 24:00:00`})},I=()=>{const{data:u}=s;if(u.length===0)return;const N=u.map(l=>l[0].split(" ")[0]),L=u.map(l=>l[1]);e.setOption({grid:{height:0,left:"80px",right:"80px"},xAxis:{type:"category",data:N,show:!1},yAxis:{type:"value"},series:[{data:L,type:"line"}]},!0)};return n({resetSlide:(u,N,L)=>{let l=-1,f=-1;s.data.forEach((w,h)=>{l===-1&&w[0]===u?l=h:l===-1&&new Date(w[0])>new Date(u)&&(l=h-1),(f===-1&&w[0]===N||f===-1&&new Date(w[0])>new Date(N))&&(f=h)}),f=f===-1?s.data.length-1:f,e.setOption({dataZoom:[{show:!0,startValue:l,endValue:f,maxValueSpan:L,textStyle:{color:"#ccc"}},{type:"inside",startValue:l,endValue:f,maxValueSpan:L}]})},resize:()=>{e==null||e.resize()}}),(u,N)=>(t.openBlock(),t.createElementBlock("div",{class:"klineSlide",ref_key:"slideChartRef",ref:r},null,512))}},Xe=P._export_sfc(Je,[["__scopeId","data-v-7a2f3dd0"]]),Ke={install(M){M.component("st-kline",Qe),M.component("st-kline-sub-new",Ze),M.component("st-kline-tips-new",He),M.component("st-kline-slide-new",Xe),M.component("st-kline-utils-new",qe)}};module.exports=Ke;
|
|
1
|
+
"use strict";const x=require("./base-ef747d02.cjs");require("./el-tooltip-0ea8fbf8.cjs");const Te=require("./el-popper-2d3914e4.cjs"),e=require("vue"),Ye=require("echarts"),G=require("./_plugin-vue_export-helper-f246444f.cjs"),ne=require("./index-8901a38c.cjs"),me=require("./index.esm-94a95a2a.cjs"),Z=require("./use-form-common-props-d3ed62c6.cjs"),J=require("./index-33f80550.cjs"),S=require("./index-28e03bad.cjs"),Ae=require("./index-eea0bcb3.cjs"),Ce=require("./el-tag-6d8e653e.cjs"),we=require("./typescript-b63f8e83.cjs"),be=require("./vnode-b906ae6d.cjs"),ze=require("./el-select-a11f33e8.cjs");require("./el-scrollbar-bc3f790d.cjs");require("./index-9780a537.cjs");require("./index-37b8d3c6.cjs");require("./index-bb833443.cjs");require("./index-e8eeea22.cjs");require("./index-6b99def3.cjs");require("./castArray-35947698.cjs");require("./index-7dce9f59.cjs");require("./scroll-b108dabd.cjs");require("./debounce-62f5b6e8.cjs");function ke(o){const a=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(o){for(const i in o)if(i!=="default"){const t=Object.getOwnPropertyDescriptor(o,i);Object.defineProperty(a,i,t.get?t:{enumerable:!0,get:()=>o[i]})}}return a.default=o,Object.freeze(a)}const K=ke(Ye),Oe=e.defineComponent({name:"ElCollapseTransition"}),Ee=e.defineComponent({...Oe,setup(o){const a=x.useNamespace("collapse-transition"),i=n=>{n.style.maxHeight="",n.style.overflow=n.dataset.oldOverflow,n.style.paddingTop=n.dataset.oldPaddingTop,n.style.paddingBottom=n.dataset.oldPaddingBottom},t={beforeEnter(n){n.dataset||(n.dataset={}),n.dataset.oldPaddingTop=n.style.paddingTop,n.dataset.oldPaddingBottom=n.style.paddingBottom,n.style.height&&(n.dataset.elExistsHeight=n.style.height),n.style.maxHeight=0,n.style.paddingTop=0,n.style.paddingBottom=0},enter(n){requestAnimationFrame(()=>{n.dataset.oldOverflow=n.style.overflow,n.dataset.elExistsHeight?n.style.maxHeight=n.dataset.elExistsHeight:n.scrollHeight!==0?n.style.maxHeight=`${n.scrollHeight}px`:n.style.maxHeight=0,n.style.paddingTop=n.dataset.oldPaddingTop,n.style.paddingBottom=n.dataset.oldPaddingBottom,n.style.overflow="hidden"})},afterEnter(n){n.style.maxHeight="",n.style.overflow=n.dataset.oldOverflow},enterCancelled(n){i(n)},beforeLeave(n){n.dataset||(n.dataset={}),n.dataset.oldPaddingTop=n.style.paddingTop,n.dataset.oldPaddingBottom=n.style.paddingBottom,n.dataset.oldOverflow=n.style.overflow,n.style.maxHeight=`${n.scrollHeight}px`,n.style.overflow="hidden"},leave(n){n.scrollHeight!==0&&(n.style.maxHeight=0,n.style.paddingTop=0,n.style.paddingBottom=0)},afterLeave(n){i(n)},leaveCancelled(n){i(n)}};return(n,r)=>(e.openBlock(),e.createBlock(e.Transition,e.mergeProps({name:e.unref(a).b()},e.toHandlers(t)),{default:e.withCtx(()=>[e.renderSlot(n.$slots,"default")]),_:3},16,["name"]))}});var _e=x._export_sfc(Ee,[["__file","collapse-transition.vue"]]);const Se=x.withInstall(_e);let Fe=class{constructor(a,i){this.parent=a,this.domNode=i,this.subIndex=0,this.subIndex=0,this.init()}init(){this.subMenuItems=this.domNode.querySelectorAll("li"),this.addListeners()}gotoSubIndex(a){a===this.subMenuItems.length?a=0:a<0&&(a=this.subMenuItems.length-1),this.subMenuItems[a].focus(),this.subIndex=a}addListeners(){const a=this.parent.domNode;Array.prototype.forEach.call(this.subMenuItems,i=>{i.addEventListener("keydown",t=>{let n=!1;switch(t.code){case S.EVENT_CODE.down:{this.gotoSubIndex(this.subIndex+1),n=!0;break}case S.EVENT_CODE.up:{this.gotoSubIndex(this.subIndex-1),n=!0;break}case S.EVENT_CODE.tab:{S.triggerEvent(a,"mouseleave");break}case S.EVENT_CODE.enter:case S.EVENT_CODE.numpadEnter:case S.EVENT_CODE.space:{n=!0,t.currentTarget.click();break}}return n&&(t.preventDefault(),t.stopPropagation()),!1})})}},Qe=class{constructor(a,i){this.domNode=a,this.submenu=null,this.submenu=null,this.init(i)}init(a){this.domNode.setAttribute("tabindex","0");const i=this.domNode.querySelector(`.${a}-menu`);i&&(this.submenu=new Fe(this,i)),this.addListeners()}addListeners(){this.domNode.addEventListener("keydown",a=>{let i=!1;switch(a.code){case S.EVENT_CODE.down:{S.triggerEvent(a.currentTarget,"mouseenter"),this.submenu&&this.submenu.gotoSubIndex(0),i=!0;break}case S.EVENT_CODE.up:{S.triggerEvent(a.currentTarget,"mouseenter"),this.submenu&&this.submenu.gotoSubIndex(this.submenu.subMenuItems.length-1),i=!0;break}case S.EVENT_CODE.tab:{S.triggerEvent(a.currentTarget,"mouseleave");break}case S.EVENT_CODE.enter:case S.EVENT_CODE.numpadEnter:case S.EVENT_CODE.space:{i=!0,a.currentTarget.click();break}}i&&a.preventDefault()})}},Be=class{constructor(a,i){this.domNode=a,this.init(i)}init(a){const i=this.domNode.childNodes;Array.from(i).forEach(t=>{t.nodeType===1&&new Qe(t,a)})}};const Pe=e.defineComponent({name:"ElMenuCollapseTransition"}),Ve=e.defineComponent({...Pe,setup(o){const a=x.useNamespace("menu"),i={onBeforeEnter:t=>t.style.opacity="0.2",onEnter(t,n){x.addClass(t,`${a.namespace.value}-opacity-transition`),t.style.opacity="1",n()},onAfterEnter(t){x.removeClass(t,`${a.namespace.value}-opacity-transition`),t.style.opacity=""},onBeforeLeave(t){t.dataset||(t.dataset={}),x.hasClass(t,a.m("collapse"))?(x.removeClass(t,a.m("collapse")),t.dataset.oldOverflow=t.style.overflow,t.dataset.scrollWidth=t.clientWidth.toString(),x.addClass(t,a.m("collapse"))):(x.addClass(t,a.m("collapse")),t.dataset.oldOverflow=t.style.overflow,t.dataset.scrollWidth=t.clientWidth.toString(),x.removeClass(t,a.m("collapse"))),t.style.width=`${t.scrollWidth}px`,t.style.overflow="hidden"},onLeave(t){x.addClass(t,"horizontal-collapse-transition"),t.style.width=`${t.dataset.scrollWidth}px`}};return(t,n)=>(e.openBlock(),e.createBlock(e.Transition,e.mergeProps({mode:"out-in"},e.unref(i)),{default:e.withCtx(()=>[e.renderSlot(t.$slots,"default")]),_:3},16))}});var Ue=x._export_sfc(Ve,[["__file","menu-collapse-transition.vue"]]);function Ie(o,a){const i=e.computed(()=>{let n=o.parent;const r=[a.value];for(;n.type.name!=="ElMenu";)n.props.index&&r.unshift(n.props.index),n=n.parent;return r});return{parentMenu:e.computed(()=>{let n=o.parent;for(;n&&!["ElMenu","ElSubMenu"].includes(n.type.name);)n=n.parent;return n}),indexPath:i}}function Re(o){return e.computed(()=>{const i=o.backgroundColor;return i?new Ae.TinyColor(i).shade(20).toString():""})}const De=(o,a)=>{const i=x.useNamespace("menu");return e.computed(()=>i.cssVarBlock({"text-color":o.textColor||"","hover-text-color":o.textColor||"","bg-color":o.backgroundColor||"","hover-bg-color":Re(o).value||"","active-color":o.activeTextColor||"",level:`${a}`}))},de="rootMenu",ee="subMenu:",$e=x.buildProps({index:{type:String,required:!0},showTimeout:Number,hideTimeout:Number,popperClass:String,disabled:Boolean,teleported:{type:Boolean,default:void 0},popperOffset:Number,expandCloseIcon:{type:Z.iconPropType},expandOpenIcon:{type:Z.iconPropType},collapseCloseIcon:{type:Z.iconPropType},collapseOpenIcon:{type:Z.iconPropType}}),oe="ElSubMenu";var Ne=e.defineComponent({name:oe,props:$e,setup(o,{slots:a,expose:i}){const t=e.getCurrentInstance(),{indexPath:n,parentMenu:r}=Ie(t,e.computed(()=>o.index)),y=x.useNamespace("menu"),M=x.useNamespace("sub-menu"),l=e.inject(de);l||S.throwError(oe,"can not inject root menu");const u=e.inject(`${ee}${r.value.uid}`);u||S.throwError(oe,"can not inject sub menu");const g=e.ref({}),p=e.ref({});let c;const N=e.ref(!1),f=e.ref(),d=e.ref(),v=e.computed(()=>u.level===0),b=e.computed(()=>C.value==="horizontal"&&v.value?"bottom-start":"right-start"),k=e.computed(()=>C.value==="horizontal"&&v.value||C.value==="vertical"&&!l.props.collapse?o.expandCloseIcon&&o.expandOpenIcon?I.value?o.expandOpenIcon:o.expandCloseIcon:J.arrow_down_default:o.collapseCloseIcon&&o.collapseOpenIcon?I.value?o.collapseOpenIcon:o.collapseCloseIcon:J.arrow_right_default),F=e.computed(()=>{const D=o.teleported;return x.isUndefined(D)?v.value:D}),z=e.computed(()=>l.props.collapse?`${y.namespace.value}-zoom-in-left`:`${y.namespace.value}-zoom-in-top`),T=e.computed(()=>C.value==="horizontal"&&v.value?["bottom-start","bottom-end","top-start","top-end","right-start","left-start"]:["right-start","right","right-end","left-start","bottom-start","bottom-end","top-start","top-end"]),I=e.computed(()=>l.openedMenus.includes(o.index)),A=e.computed(()=>[...Object.values(g.value),...Object.values(p.value)].some(({active:D})=>D)),C=e.computed(()=>l.props.mode),Q=e.computed(()=>l.props.persistent),B=e.reactive({index:o.index,indexPath:n,active:A}),U=De(l.props,u.level+1),V=e.computed(()=>{var D;return(D=o.popperOffset)!=null?D:l.props.popperOffset}),R=e.computed(()=>{var D;return(D=o.popperClass)!=null?D:l.props.popperClass}),m=e.computed(()=>{var D;return(D=o.showTimeout)!=null?D:l.props.showTimeout}),Y=e.computed(()=>{var D;return(D=o.hideTimeout)!=null?D:l.props.hideTimeout}),h=()=>{var D,E,O;return(O=(E=(D=d.value)==null?void 0:D.popperRef)==null?void 0:E.popperInstanceRef)==null?void 0:O.destroy()},s=D=>{D||h()},j=()=>{l.props.menuTrigger==="hover"&&l.props.mode==="horizontal"||l.props.collapse&&l.props.mode==="vertical"||o.disabled||l.handleSubMenuClick({index:o.index,indexPath:n.value,active:A.value})},L=(D,E=m.value)=>{var O;if(D.type!=="focus"){if(l.props.menuTrigger==="click"&&l.props.mode==="horizontal"||!l.props.collapse&&l.props.mode==="vertical"||o.disabled){u.mouseInChild.value=!0;return}u.mouseInChild.value=!0,c==null||c(),{stop:c}=x.useTimeoutFn(()=>{l.openMenu(o.index,n.value)},E),F.value&&((O=r.value.vnode.el)==null||O.dispatchEvent(new MouseEvent("mouseenter"))),D.type==="mouseenter"&&D.target&&e.nextTick(()=>{S.focusElement(D.target,{preventScroll:!0})})}},w=(D=!1)=>{var E;if(l.props.menuTrigger==="click"&&l.props.mode==="horizontal"||!l.props.collapse&&l.props.mode==="vertical"){u.mouseInChild.value=!1;return}c==null||c(),u.mouseInChild.value=!1,{stop:c}=x.useTimeoutFn(()=>!N.value&&l.closeMenu(o.index,n.value),Y.value),F.value&&D&&((E=u.handleMouseleave)==null||E.call(u,!0))};e.watch(()=>l.props.collapse,D=>s(!!D));{const D=O=>{p.value[O.index]=O},E=O=>{delete p.value[O.index]};e.provide(`${ee}${t.uid}`,{addSubMenu:D,removeSubMenu:E,handleMouseleave:w,mouseInChild:N,level:u.level+1})}return i({opened:I}),e.onMounted(()=>{l.addSubMenu(B),u.addSubMenu(B)}),e.onBeforeUnmount(()=>{u.removeSubMenu(B),l.removeSubMenu(B)}),()=>{var D;const E=[(D=a.title)==null?void 0:D.call(a),e.h(J.ElIcon,{class:M.e("icon-arrow"),style:{transform:I.value?o.expandCloseIcon&&o.expandOpenIcon||o.collapseCloseIcon&&o.collapseOpenIcon&&l.props.collapse?"none":"rotateZ(180deg)":"none"}},{default:()=>x.isString(k.value)?e.h(t.appContext.components[k.value]):e.h(k.value)})],O=l.isMenuPopup?e.h(Te.ElTooltip,{ref:d,visible:I.value,effect:"light",pure:!0,offset:V.value,showArrow:!1,persistent:Q.value,popperClass:R.value,placement:b.value,teleported:F.value,fallbackPlacements:T.value,transition:z.value,gpuAcceleration:!1},{content:()=>{var P;return e.h("div",{class:[y.m(C.value),y.m("popup-container"),R.value],onMouseenter:_=>L(_,100),onMouseleave:()=>w(!0),onFocus:_=>L(_,100)},[e.h("ul",{class:[y.b(),y.m("popup"),y.m(`popup-${b.value}`)],style:U.value},[(P=a.default)==null?void 0:P.call(a)])])},default:()=>e.h("div",{class:M.e("title"),onClick:j},E)}):e.h(e.Fragment,{},[e.h("div",{class:M.e("title"),ref:f,onClick:j},E),e.h(Se,{},{default:()=>{var P;return e.withDirectives(e.h("ul",{role:"menu",class:[y.b(),y.m("inline")],style:U.value},[(P=a.default)==null?void 0:P.call(a)]),[[e.vShow,I.value]])}})]);return e.h("li",{class:[M.b(),M.is("active",A.value),M.is("opened",I.value),M.is("disabled",o.disabled)],role:"menuitem",ariaHaspopup:!0,ariaExpanded:I.value,onMouseenter:L,onMouseleave:()=>w(),onFocus:L},[O])}}});const We=x.buildProps({mode:{type:String,values:["horizontal","vertical"],default:"vertical"},defaultActive:{type:String,default:""},defaultOpeneds:{type:x.definePropType(Array),default:()=>we.mutable([])},uniqueOpened:Boolean,router:Boolean,menuTrigger:{type:String,values:["hover","click"],default:"hover"},collapse:Boolean,backgroundColor:String,textColor:String,activeTextColor:String,closeOnClickOutside:Boolean,collapseTransition:{type:Boolean,default:!0},ellipsis:{type:Boolean,default:!0},popperOffset:{type:Number,default:6},ellipsisIcon:{type:Z.iconPropType,default:()=>J.more_default},popperEffect:{type:x.definePropType(String),default:"dark"},popperClass:String,showTimeout:{type:Number,default:300},hideTimeout:{type:Number,default:300},persistent:{type:Boolean,default:!0}}),ae=o=>x.isArray(o)&&o.every(a=>x.isString(a)),Ze={close:(o,a)=>x.isString(o)&&ae(a),open:(o,a)=>x.isString(o)&&ae(a),select:(o,a,i,t)=>x.isString(o)&&ae(a)&&x.isObject(i)&&(x.isUndefined(t)||t instanceof Promise)};var Ge=e.defineComponent({name:"ElMenu",props:We,emits:Ze,setup(o,{emit:a,slots:i,expose:t}){const n=e.getCurrentInstance(),r=n.appContext.config.globalProperties.$router,y=e.ref(),M=e.ref(),l=x.useNamespace("menu"),u=x.useNamespace("sub-menu");let g=64;const p=e.ref(-1),c=e.ref(o.defaultOpeneds&&!o.collapse?o.defaultOpeneds.slice(0):[]),N=e.ref(o.defaultActive),f=e.ref({}),d=e.ref({}),v=e.computed(()=>o.mode==="horizontal"||o.mode==="vertical"&&o.collapse),b=()=>{const s=N.value&&f.value[N.value];if(!s||o.mode==="horizontal"||o.collapse)return;s.indexPath.forEach(L=>{const w=d.value[L];w&&k(L,w.indexPath)})},k=(s,j)=>{c.value.includes(s)||(o.uniqueOpened&&(c.value=c.value.filter(L=>j.includes(L))),c.value.push(s),a("open",s,j))},F=s=>{const j=c.value.indexOf(s);j!==-1&&c.value.splice(j,1)},z=(s,j)=>{F(s),a("close",s,j)},T=({index:s,indexPath:j})=>{c.value.includes(s)?z(s,j):k(s,j)},I=s=>{(o.mode==="horizontal"||o.collapse)&&(c.value=[]);const{index:j,indexPath:L}=s;if(!(x.isNil(j)||x.isNil(L)))if(o.router&&r){const w=s.route||j,D=r.push(w).then(E=>(E||(N.value=j),E));a("select",j,L,{index:j,indexPath:L,route:w},D)}else N.value=j,a("select",j,L,{index:j,indexPath:L})},A=s=>{var j;const L=f.value,w=L[s]||N.value&&L[N.value]||L[o.defaultActive];N.value=(j=w==null?void 0:w.index)!=null?j:s},C=s=>{const j=getComputedStyle(s),L=Number.parseInt(j.marginLeft,10),w=Number.parseInt(j.marginRight,10);return s.offsetWidth+L+w||0},Q=()=>{var s,j;if(!y.value)return-1;const L=Array.from((j=(s=y.value)==null?void 0:s.childNodes)!=null?j:[]).filter($=>$.nodeName!=="#comment"&&($.nodeName!=="#text"||$.nodeValue)),w=getComputedStyle(y.value),D=Number.parseInt(w.paddingLeft,10),E=Number.parseInt(w.paddingRight,10),O=y.value.clientWidth-D-E;let P=0,_=0;return L.forEach(($,H)=>{P+=C($),P<=O-g&&(_=H+1)}),_===L.length?-1:_},B=s=>d.value[s].indexPath,U=(s,j=33.34)=>{let L;return()=>{L&&clearTimeout(L),L=setTimeout(()=>{s()},j)}};let V=!0;const R=()=>{const s=Z.unrefElement(M);if(s&&(g=C(s)||64),p.value===Q())return;const j=()=>{p.value=-1,e.nextTick(()=>{p.value=Q()})};V?j():U(j)(),V=!1};e.watch(()=>o.defaultActive,s=>{f.value[s]||(N.value=""),A(s)}),e.watch(()=>o.collapse,s=>{s&&(c.value=[])}),e.watch(f.value,b);let m;e.watchEffect(()=>{o.mode==="horizontal"&&o.ellipsis?m=Z.useResizeObserver(y,R).stop:m==null||m()});const Y=e.ref(!1);{const s=D=>{d.value[D.index]=D},j=D=>{delete d.value[D.index]},L=D=>{f.value[D.index]=D},w=D=>{delete f.value[D.index]};e.provide(de,e.reactive({props:o,openedMenus:c,items:f,subMenus:d,activeIndex:N,isMenuPopup:v,addMenuItem:L,removeMenuItem:w,addSubMenu:s,removeSubMenu:j,openMenu:k,closeMenu:z,handleMenuItemClick:I,handleSubMenuClick:T})),e.provide(`${ee}${n.uid}`,{addSubMenu:s,removeSubMenu:j,mouseInChild:Y,level:0})}e.onMounted(()=>{o.mode==="horizontal"&&new Be(n.vnode.el,l.namespace.value)}),t({open:j=>{const{indexPath:L}=d.value[j];L.forEach(w=>k(w,L))},close:F,updateActiveIndex:A,handleResize:R});const h=De(o,0);return()=>{var s,j;let L=(j=(s=i.default)==null?void 0:s.call(i))!=null?j:[];const w=[];if(o.mode==="horizontal"&&y.value){const O=be.flattedChildren(L).filter($=>($==null?void 0:$.shapeFlag)!==8),P=p.value===-1?O:O.slice(0,p.value),_=p.value===-1?[]:O.slice(p.value);_!=null&&_.length&&o.ellipsis&&(L=P,w.push(e.h(Ne,{ref:M,index:"sub-menu-more",class:u.e("hide-arrow"),popperOffset:o.popperOffset},{title:()=>e.h(J.ElIcon,{class:u.e("icon-more")},{default:()=>e.h(o.ellipsisIcon)}),default:()=>_})))}const D=o.closeOnClickOutside?[[Ce.ClickOutside,()=>{c.value.length&&(Y.value||(c.value.forEach(O=>a("close",O,B(O))),c.value=[]))}]]:[],E=e.withDirectives(e.h("ul",{key:String(o.collapse),role:"menubar",ref:y,style:h.value,class:{[l.b()]:!0,[l.m(o.mode)]:!0,[l.m("collapse")]:o.collapse}},[...L,...w]),D);return o.collapseTransition&&o.mode==="vertical"?e.h(Ue,()=>E):E}}});const He=x.buildProps({index:{type:x.definePropType([String,null]),default:null},route:{type:x.definePropType([String,Object])},disabled:Boolean}),qe={click:o=>x.isString(o.index)&&x.isArray(o.indexPath)},ue="ElMenuItem",Je=e.defineComponent({name:ue}),Xe=e.defineComponent({...Je,props:He,emits:qe,setup(o,{expose:a,emit:i}){const t=o;x.isPropAbsent(t.index)&&S.debugWarn();const n=e.getCurrentInstance(),r=e.inject(de),y=x.useNamespace("menu"),M=x.useNamespace("menu-item");r||S.throwError(ue,"can not inject root menu");const{parentMenu:l,indexPath:u}=Ie(n,e.toRef(t,"index")),g=e.inject(`${ee}${l.value.uid}`);g||S.throwError(ue,"can not inject sub menu");const p=e.computed(()=>t.index===r.activeIndex),c=e.reactive({index:t.index,indexPath:u,active:p}),N=()=>{t.disabled||(r.handleMenuItemClick({index:t.index,indexPath:u.value,route:t.route}),i("click",c))};return e.onMounted(()=>{g.addSubMenu(c),r.addMenuItem(c)}),e.onBeforeUnmount(()=>{g.removeSubMenu(c),r.removeMenuItem(c)}),a({parentMenu:l,rootMenu:r,active:p,nsMenu:y,nsMenuItem:M,handleClick:N}),(f,d)=>(e.openBlock(),e.createElementBlock("li",{class:e.normalizeClass([e.unref(M).b(),e.unref(M).is("active",e.unref(p)),e.unref(M).is("disabled",f.disabled)]),role:"menuitem",tabindex:"-1",onClick:N},[e.unref(l).type.name==="ElMenu"&&e.unref(r).props.collapse&&f.$slots.title?(e.openBlock(),e.createBlock(e.unref(Te.ElTooltip),{key:0,effect:e.unref(r).props.popperEffect,placement:"right","fallback-placements":["left"],persistent:e.unref(r).props.persistent,"focus-on-target":""},{content:e.withCtx(()=>[e.renderSlot(f.$slots,"title")]),default:e.withCtx(()=>[e.createElementVNode("div",{class:e.normalizeClass(e.unref(y).be("tooltip","trigger"))},[e.renderSlot(f.$slots,"default")],2)]),_:3},8,["effect","persistent"])):(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[e.renderSlot(f.$slots,"default"),e.renderSlot(f.$slots,"title")],64))],2))}});var Le=x._export_sfc(Xe,[["__file","menu-item.vue"]]);const Ke={title:String},et=e.defineComponent({name:"ElMenuItemGroup"}),tt=e.defineComponent({...et,props:Ke,setup(o){const a=x.useNamespace("menu-item-group");return(i,t)=>(e.openBlock(),e.createElementBlock("li",{class:e.normalizeClass(e.unref(a).b())},[e.createElementVNode("div",{class:e.normalizeClass(e.unref(a).e("title"))},[i.$slots.title?e.renderSlot(i.$slots,"title",{key:1}):(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[e.createTextVNode(e.toDisplayString(i.title),1)],64))],2),e.createElementVNode("ul",null,[e.renderSlot(i.$slots,"default")])],2))}});var he=x._export_sfc(tt,[["__file","menu-item-group.vue"]]);const nt=x.withInstall(Ge,{MenuItem:Le,MenuItemGroup:he,SubMenu:Ne}),ot=x.withNoopInstall(Le);x.withNoopInstall(he);x.withNoopInstall(Ne);const at={class:"st-kline-tips"},it={class:"st-kline-tips-row"},lt=e.defineComponent({__name:"index",props:{data:{type:Array,default:()=>[]}},setup(o){return(a,i)=>(e.openBlock(),e.createElementBlock("div",at,[e.createElementVNode("div",it,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(o.data,t=>(e.openBlock(),e.createElementBlock("div",{class:"st-kline-tips-row-item",style:e.normalizeStyle({color:t.color})},e.toDisplayString(t.label)+" "+e.toDisplayString(t.value),5))),256))])]))}});const ie=G._export_sfc(lt,[["__scopeId","data-v-78aed210"]]),st=e.defineComponent({__name:"index",emits:["closeContextMenuCallBack"],setup(o,{emit:a}){const i=a,t=e.ref(),n=e.ref(),r=e.ref({display:"none",top:"0px",left:"0px"}),y=()=>{r.value.display="none",i("closeContextMenuCallBack"),document.removeEventListener("click",y)},M=l=>{if(l.preventDefault(),l.stopPropagation(),r.value.display==="block"){const{offsetX:u,offsetY:g}=l,{offsetWidth:p,offsetHeight:c}=n.value;if(u<=p&&g<=c)return}t.value.click(),r.value={display:"block",top:`${l.offsetY}px`,left:`${l.offsetX}px`},e.nextTick(()=>{const{bottom:u,height:g,right:p,width:c}=n.value.getBoundingClientRect();u>window.innerHeight?r.value={display:"block",top:`${l.offsetY-g}px`,left:`${l.offsetX}px`}:p>window.innerWidth&&(r.value={display:"block",top:`${l.offsetY}px`,left:`${l.offsetX-c}px`})}),document.addEventListener("click",y)};return(l,u)=>(e.openBlock(),e.createElementBlock("div",{ref_key:"contextmenuRef",ref:t,class:"contextmenu",onContextmenu:M,onMouseleave:y},[e.renderSlot(l.$slots,"default",{},void 0,!0),r.value.display!=="none"?(e.openBlock(),e.createElementBlock("div",{key:0,ref_key:"contextmenuContentRef",ref:n,class:"contextmenu-popover",style:e.normalizeStyle(r.value)},[e.renderSlot(l.$slots,"popover",{},void 0,!0)],4)):e.createCommentVNode("",!0)],544))}});const rt=G._export_sfc(st,[["__scopeId","data-v-249fd104"]]);let ge=!1,je=!0,pe=[];const fe=o=>{const a=[],i=[],t=[],n=[],r=[],y=[];return o.forEach((M,l)=>{a.push(M[0]),i.push(M[1]),t.push(M[4]),n.push(M[2]),r.push(M[3]),y.push([M[1],M[4],M[3],M[2],Number(M[6]),l===0?M[4]:o[l-1][4]])}),{time:a,open:i,close:t,high:n,low:r,kLineData:y}},ct=async()=>{if(!ge)ge=!0,await me.init("./talib.wasm"),je=!1,pe.forEach(o=>{o()});else if(je)return new Promise(o=>{pe.push(o)})},X=(o,a)=>o.length>a?o.slice(o.length-a):o,ut=(o,a,i)=>o.calculationFn?o.calculationFn(me.talib,a,i):new Array(a.time.length).fill(null),Mt=async(o,a,i)=>{const t=fe(o);let n=[];return n=fe(n),await ct(),{originData:X(o,i),kLine:X(t.kLineData,i),time:X(t.time,i),indicator:a.config.reduce((r,y)=>(r.push({key:y.key,color:y.color,data:X(ut(y,t,n),i)}),r),[])}},le="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBzdGFuZGFsb25lPSJubyI/PjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCI+PHN2ZyB0PSIxNjgzNzAzMjM4NzI1IiBjbGFzcz0iaWNvbiIgdmlld0JveD0iMCAwIDEwMjQgMTAyNCIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHAtaWQ9IjI2MjUiIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB3aWR0aD0iMjAwIiBoZWlnaHQ9IjIwMCI+PHBhdGggZD0iTTE5OC4wMTYgMTA5LjczODY2N0E3Ny44NjY2NjcgNzcuODY2NjY3IDAgMCAwIDE3MC42NjY2NjcgMTY3LjY4bDAuNTEyIDQxOC45NDRjMCAyMi44NjkzMzMgNi40IDQ4IDE5LjAyOTMzMyA3NS4zMDY2NjcgMTIuNjcyIDI3LjIyMTMzMyAyNy45ODkzMzMgNDguOTM4NjY3IDQ1Ljk1MiA2NC45Mzg2NjZsMjExLjE1NzMzMyAxODguMjAyNjY3YzE3LjA2NjY2NyAxNS40ODggNDAuNTc2IDIzLjk3ODY2NyA2NC45Mzg2NjcgMjMuNTk0NjY3IDI1LjY4NTMzMy0wLjA4NTMzMyA0Ny4zNi03LjkzNiA2NC45ODEzMzMtMjMuNTk0NjY3bDIxMS4yLTE4OC4yMDI2NjdjMTcuOTItMTYgMzMuMTk0NjY3LTM3LjYzMiA0NS44NjY2NjctNjQuOTM4NjY2IDEyLjY3Mi0yNy4zMDY2NjcgMTguNzczMzMzLTUyLjIyNCAxOC41MTczMzMtNzQuOTIyNjY3TDg1My4zMzMzMzMgMTY3LjI1MzMzM2MwLTIyLjI3Mi04Ljk2LTQxLjQ3Mi0yNi44MzczMzMtNTcuNDcyLTE3LjU3ODY2Ny0xNS42MTYtMzkuMzM4NjY3LTIzLjg5MzMzMy02NC45Mzg2NjctMjQuNDA1MzMzbC00OTkuMDI5MzMzIDAuNDY5MzMzYTkzLjMxMiA5My4zMTIgMCAwIDAtNjQuNTEyIDIzLjg5MzMzNHoiIGZpbGw9IiNGRjAwMDAiIHAtaWQ9IjI2MjYiPjwvcGF0aD48cGF0aCBkPSJNMTcwLjcwOTMzMyAxNjcuNzIyNjY3YzAuMTI4LTIxLjc2IDkuOTg0LTQyLjY2NjY2NyAyNy4zOTItNTcuOTQxMzM0YTkzLjMxMiA5My4zMTIgMCAwIDEgNjQuNDY5MzM0LTIzLjg5MzMzM0w3NjEuNiA4NS4zMzMzMzNjMjUuNiAwLjU1NDY2NyA0Ny4zNiA4Ljc4OTMzMyA2NC45Mzg2NjcgMjQuNDA1MzM0IDE3LjkyIDE2IDI2Ljg4IDM1LjIgMjYuODggNTcuNDcybC0wLjU1NDY2NyA0MTkuODRjMC4yOTg2NjcgMjIuNjk4NjY3LTUuODQ1MzMzIDQ3LjYxNi0xOC41MTczMzMgNzQuOTIyNjY2LTEyLjYyOTMzMyAyNy4zMDY2NjctMjcuOTQ2NjY3IDQ4Ljg5Ni00NS44MjQgNjQuODk2bC0yMTEuMjQyNjY3IDE4OC4yMDI2NjdjLTE3LjU3ODY2NyAxNS43MDEzMzMtMzkuMjUzMzMzIDIzLjUwOTMzMy02NC45Mzg2NjcgMjMuNTk0NjY3YTk0LjcyIDk0LjcyIDAgMCAxLTY0Ljk4MTMzMy0yMy41OTQ2NjdsLTIxMS4xNTczMzMtMTg4LjE2Yy0xNy45Mi0xNi4wNDI2NjctMzMuMjgtMzcuNzE3MzMzLTQ1LjkwOTMzNC02NC45ODEzMzMtMTIuNjcyLTI3LjMwNjY2Ny0xOS4wMjkzMzMtNTIuMzk0NjY3LTE5LjAyOTMzMy03NS4zMDY2NjdMMTcwLjY2NjY2NyAxNjcuNzIyNjY3eiBtNDIuNjY2NjY3IDAuMjU2bDAuNTU0NjY3IDQxOC42ODhjMCAxNi4yMTMzMzMgNC44MjEzMzMgMzUuMzI4IDE1LjAxODY2NiA1Ny4zNDQgMTAuMzY4IDIyLjI3MiAyMi4zNTczMzMgMzkuMjEwNjY3IDM1LjYyNjY2NyA1MS4wNzJsMjExLjQxMzMzMyAxODguNDE2YzguOTYgOC4xMDY2NjcgMjEuODg4IDEyLjggMzYuMjI0IDEyLjU0NCAxNS41MzA2NjctMC4wNDI2NjcgMjcuMDkzMzMzLTQuMjY2NjY3IDM2LjY5MzMzNC0xMi44bDIxMS4xNTczMzMtMTg4LjExNzMzNGMxMy4zMTItMTEuOTQ2NjY3IDI1LjMwMTMzMy0yOC44NDI2NjcgMzUuNTg0LTUxLjA3MiAxMC4xMTItMjEuODQ1MzMzIDE0Ljc2MjY2Ny00MC41NzYgMTQuNTA2NjY3LTU3LjA0NTMzM2wwLjU1NDY2Ni00MTkuNzU0NjY3YzAtOS44OTg2NjctMy41ODQtMTcuNjIxMzMzLTEyLjQ1ODY2Ni0yNS42YTU0LjY5ODY2NyA1NC42OTg2NjcgMCAwIDAtMzYuNjA4LTEzLjYxMDY2NmwtNDk5LjYyNjY2NyAwLjQ2OTMzM2E1MS4zMjggNTEuMzI4IDAgMCAwLTM1Ljc1NDY2NyAxMy4zMTIgMzYuNTY1MzMzIDM2LjU2NTMzMyAwIDAgMC0xMi41MDEzMzMgMjEuNDYxMzMzbC0wLjQyNjY2NyA0LjY5MzMzNHoiIGZpbGw9IiNBRTAwMDAiIHAtaWQ9IjI2MjciPjwvcGF0aD48cGF0aCBkPSJNMzg0IDY1NC4xMjI2NjdoMTUzLjUxNDY2N2M5Ni43NjggMCAxNDIuNzYyNjY3LTQ4Ljk4MTMzMyAxNDIuNzYyNjY2LTExNy4wNzczMzQgMC01OS43MzMzMzMtMzMuNDUwNjY3LTg4LjQwNTMzMy04NC44MjEzMzMtOTcuOTYyNjY2di0xLjc5MmM0OC45ODEzMzMtMTUuNTMwNjY3IDY2LjkwMTMzMy00Ni41OTIgNjYuOTAxMzMzLTg5LjYgMC02NS4xMDkzMzMtNDAuNjE4NjY3LTEwMy4zMzg2NjctMTM0Ljk5NzMzMy0xMDMuMzM4NjY3SDM4NHY0MDkuNzcwNjY3eiBtNzIuODc0NjY3LTU0Ljk1NDY2N3YtMTMxLjQxMzMzM2g2Ni4zMDRjNTEuOTY4IDAgODAuMDQyNjY3IDE3LjkyIDgwLjA0MjY2NiA2NS4xMDkzMzMgMCA0NC44LTI2LjI4MjY2NyA2Ni4zMDQtNzUuODYxMzMzIDY2LjMwNGgtNzAuNDg1MzMzeiBtMC0xODAuMzk0NjY3VjI5OC43MDkzMzNoNjAuMzMwNjY2YzQ3LjE4OTMzMyAwIDcyLjI3NzMzMyAxNC45MzMzMzMgNzIuMjc3MzM0IDU5LjEzNiAwIDQ2LjU5Mi0zMi4yNTYgNjAuOTI4LTc1LjI2NCA2MC45MjhoLTU3LjM0NHoiIGZpbGw9IiNGRkZGRkYiIHAtaWQ9IjI2MjgiPjwvcGF0aD48L3N2Zz4=",se="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBzdGFuZGFsb25lPSJubyI/PjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCI+PHN2ZyB0PSIxNjgzNzAzMjQxNjY0IiBjbGFzcz0iaWNvbiIgdmlld0JveD0iMCAwIDEwMjQgMTAyNCIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHAtaWQ9IjI3NzciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB3aWR0aD0iMjAwIiBoZWlnaHQ9IjIwMCI+PHBhdGggZD0iTTE5OC4wMTYgMTA5LjczODY2N0E3Ny44NjY2NjcgNzcuODY2NjY3IDAgMCAwIDE3MC42NjY2NjcgMTY3LjY4bDAuNTEyIDQxOC45NDRjMCAyMi44NjkzMzMgNi40IDQ4IDE5LjAyOTMzMyA3NS4zMDY2NjcgMTIuNjcyIDI3LjIyMTMzMyAyNy45ODkzMzMgNDguOTM4NjY3IDQ1Ljk1MiA2NC45Mzg2NjZsMjExLjE1NzMzMyAxODguMjAyNjY3YzE3LjA2NjY2NyAxNS40ODggNDAuNTc2IDIzLjk3ODY2NyA2NC45Mzg2NjcgMjMuNTk0NjY3IDI1LjY4NTMzMy0wLjA4NTMzMyA0Ny4zNi03LjkzNiA2NC45ODEzMzMtMjMuNTk0NjY3bDIxMS4yLTE4OC4yMDI2NjdjMTcuOTItMTYgMzMuMTk0NjY3LTM3LjYzMiA0NS44NjY2NjctNjQuOTM4NjY2IDEyLjY3Mi0yNy4zMDY2NjcgMTguNzczMzMzLTUyLjIyNCAxOC41MTczMzMtNzQuOTIyNjY3TDg1My4zMzMzMzMgMTY3LjI1MzMzM2MwLTIyLjI3Mi04Ljk2LTQxLjQ3Mi0yNi44MzczMzMtNTcuNDcyLTE3LjU3ODY2Ny0xNS42MTYtMzkuMzM4NjY3LTIzLjg5MzMzMy02NC45Mzg2NjctMjQuNDA1MzMzbC00OTkuMDI5MzMzIDAuNDY5MzMzYTkzLjMxMiA5My4zMTIgMCAwIDAtNjQuNTEyIDIzLjg5MzMzNHoiIGZpbGw9IiM1NEFCMzAiIHAtaWQ9IjI3NzgiPjwvcGF0aD48cGF0aCBkPSJNMTcwLjY2NjY2NyAxNjcuNjhjMC4xMjgtMjEuNzYgOS45NDEzMzMtNDIuNjY2NjY3IDI3LjM0OTMzMy01Ny45NDEzMzNhOTMuMzEyIDkzLjMxMiAwIDAgMSA2NC41MTItMjMuODkzMzM0TDc2MS41NTczMzMgODUuMzMzMzMzYzI1LjYgMC41NTQ2NjcgNDcuMzYgOC43ODkzMzMgNjQuOTM4NjY3IDI0LjQwNTMzNCAxNy45MiAxNiAyNi44MzczMzMgMzUuMiAyNi44MzczMzMgNTcuNDcybC0wLjUxMiA0MTkuODRjMC4yOTg2NjcgMjIuNjU2LTUuODQ1MzMzIDQ3LjYxNi0xOC41MTczMzMgNzQuODgtMTIuNjcyIDI3LjMwNjY2Ny0yNy45NDY2NjcgNDguOTM4NjY3LTQ1Ljg2NjY2NyA2NC45Mzg2NjZsLTIxMS4yIDE4OC4yMDI2NjdjLTE3LjYyMTMzMyAxNS42NTg2NjctMzkuMjUzMzMzIDIzLjUwOTMzMy02NC45ODEzMzMgMjMuNTk0NjY3YTk0LjcyIDk0LjcyIDAgMCAxLTY0LjkzODY2Ny0yMy41OTQ2NjdsLTIxMS4yLTE4OC4yMDI2NjdjLTE3LjkyLTE2LTMzLjIzNzMzMy0zNy43MTczMzMtNDUuOTA5MzMzLTY0LjkzODY2Ni0xMi42MjkzMzMtMjcuMzA2NjY3LTE5LjAyOTMzMy01Mi40MzczMzMtMTkuMDI5MzMzLTc1LjMwNjY2N0wxNzAuNjY2NjY3IDE2Ny42OHogbTQyLjYyNCAwLjI1NmwwLjU1NDY2NiA0MTguNjg4YzAgMTYuMTcwNjY3IDQuODY0IDM1LjMyOCAxNS4wNjEzMzQgNTcuMzQ0IDEwLjM2OCAyMi4yNzIgMjIuMzE0NjY3IDM5LjE2OCAzNS42MjY2NjYgNTEuMDI5MzMzbDIxMS40MTMzMzQgMTg4LjQxNmM4Ljk2IDguMTA2NjY3IDIxLjg4OCAxMi44IDM2LjIyNCAxMi41ODY2NjcgMTUuNTMwNjY3LTAuMDQyNjY3IDI3LjA5MzMzMy00LjI2NjY2NyAzNi42OTMzMzMtMTIuOGwyMTEuMTE0NjY3LTE4OC4xNmMxMy4zNTQ2NjctMTEuOTQ2NjY3IDI1LjMwMTMzMy0yOC44NDI2NjcgMzUuNjI2NjY2LTUxLjA3MiAxMC4xMTItMjEuNzYgMTQuNzYyNjY3LTQwLjUzMzMzMyAxNC41MDY2NjctNTcuMDAyNjY3TDgxMC42NjY2NjcgMTY3LjIxMDY2N2MwLTkuODk4NjY3LTMuNTg0LTE3LjYyMTMzMy0xMi41MDEzMzQtMjUuNkE1NC42OTg2NjcgNTQuNjk4NjY3IDAgMCAwIDc2MS42IDEyOGwtNDk5LjYyNjY2NyAwLjQ2OTMzM2E1MS4zMjggNTEuMzI4IDAgMCAwLTM1Ljc1NDY2NiAxMy4yNjkzMzQgMzYuNTY1MzMzIDM2LjU2NTMzMyAwIDAgMC0xMi41MDEzMzQgMjEuNTA0bC0wLjQyNjY2NiA0LjY5MzMzM3oiIGZpbGw9IiMzODhEMTQiIHAtaWQ9IjI3NzkiPjwvcGF0aD48cGF0aCBkPSJNNTA2LjQ1MzMzMyA2NzQuNzMwNjY3Yzk5LjE1NzMzMyAwIDE0Ni4zNDY2NjctNDguMzg0IDE0Ni4zNDY2NjctMTI2LjAzNzMzNCAwLTcyLjg3NDY2Ny0zOC44MjY2NjctOTkuNzU0NjY3LTEwMy4zMzg2NjctMTE4LjI3MmwtMzguMjI5MzMzLTExLjk0NjY2NmMtNDAuNjE4NjY3LTExLjM0OTMzMy01Mi41NjUzMzMtMjUuMDg4LTUyLjU2NTMzMy01Ny4zNDQgMC0zMi44NTMzMzMgMjMuODkzMzMzLTUwLjc3MzMzMyA2Ni45MDEzMzMtNTAuNzczMzM0IDQ1LjM5NzMzMyAwIDc4Ljg0OCA5LjU1NzMzMyAxMDQuNTMzMzMzIDIwLjMwOTMzNFYyNzMuMzIyNjY3Yy0yMi42OTg2NjctMTEuOTQ2NjY3LTUxLjk2OC0yMi4xMDEzMzMtMTA1LjcyOC0yMi4xMDEzMzQtOTIuNTg2NjY3IDAtMTM3LjM4NjY2NyA0Ny4xODkzMzMtMTM3LjM4NjY2NiAxMTYuNDggMCA2OS4yOTA2NjcgMzUuMjQyNjY3IDEwMC4zNTIgOTMuMTg0IDExNi40OGwzOC44MjY2NjYgMTAuNzUyYzQ0LjggMTMuNzM4NjY3IDU5LjczMzMzMyAyNi44OCA1OS43MzMzMzQgNjAuOTI4IDAgMzcuMDM0NjY3LTIzLjI5NiA1OS43MzMzMzMtNzguMjUwNjY3IDU5LjczMzMzNC00NC44IDAtODMuNjI2NjY3LTEwLjc1Mi0xMTYuNDgtMjUuMDg4djU3Ljk0MTMzM2MyOC4wNzQ2NjcgMTQuOTMzMzMzIDY4LjY5MzMzMyAyNi4yODI2NjcgMTIyLjQ1MzMzMyAyNi4yODI2Njd6IiBmaWxsPSIjRkZGRkZGIiBwLWlkPSIyNzgwIj48L3BhdGg+PC9zdmc+",re="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBzdGFuZGFsb25lPSJubyI/PjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCI+PHN2ZyB0PSIxNjgzNzAzMjI4MjAyIiBjbGFzcz0iaWNvbiIgdmlld0JveD0iMCAwIDEwMjQgMTAyNCIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHAtaWQ9IjMwNzgiIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB3aWR0aD0iMjAwIiBoZWlnaHQ9IjIwMCI+PHBhdGggZD0iTTE5OC4wMTYgMTA5LjczODY2N0E3Ny44NjY2NjcgNzcuODY2NjY3IDAgMCAwIDE3MC42NjY2NjcgMTY3LjY4bDAuNTEyIDQxOC45NDRjMCAyMi44NjkzMzMgNi40IDQ4IDE5LjAyOTMzMyA3NS4zMDY2NjcgMTIuNjcyIDI3LjIyMTMzMyAyNy45ODkzMzMgNDguOTM4NjY3IDQ1Ljk1MiA2NC45Mzg2NjZsMjExLjE1NzMzMyAxODguMjAyNjY3YzE3LjA2NjY2NyAxNS40ODggNDAuNTc2IDIzLjk3ODY2NyA2NC45Mzg2NjcgMjMuNTk0NjY3IDI1LjY4NTMzMy0wLjA4NTMzMyA0Ny4zNi03LjkzNiA2NC45ODEzMzMtMjMuNTk0NjY3bDIxMS4yLTE4OC4yMDI2NjdjMTcuOTItMTYgMzMuMTk0NjY3LTM3LjYzMiA0NS44NjY2NjctNjQuOTM4NjY2IDEyLjY3Mi0yNy4zMDY2NjcgMTguNzczMzMzLTUyLjIyNCAxOC41MTczMzMtNzQuOTIyNjY3TDg1My4zMzMzMzMgMTY3LjI1MzMzM2MwLTIyLjI3Mi04Ljk2LTQxLjQ3Mi0yNi44MzczMzMtNTcuNDcyLTE3LjU3ODY2Ny0xNS42MTYtMzkuMzM4NjY3LTIzLjg5MzMzMy02NC45Mzg2NjctMjQuNDA1MzMzbC00OTkuMDI5MzMzIDAuNDY5MzMzYTkzLjMxMiA5My4zMTIgMCAwIDAtNjQuNTEyIDIzLjg5MzMzNHoiIGZpbGw9IiNDODgwRkYiIHAtaWQ9IjMwNzkiPjwvcGF0aD48cGF0aCBkPSJNMTcwLjY2NjY2NyAxNjcuNjhjMC4xMjgtMjEuNzYgOS45NDEzMzMtNDIuNjY2NjY3IDI3LjM0OTMzMy01Ny45NDEzMzNhOTMuMzEyIDkzLjMxMiAwIDAgMSA2NC41MTItMjMuODkzMzM0TDc2MS41NTczMzMgODUuMzMzMzMzYzI1LjYgMC41NTQ2NjcgNDcuMzYgOC43ODkzMzMgNjQuOTM4NjY3IDI0LjQwNTMzNCAxNy45MiAxNiAyNi44MzczMzMgMzUuMiAyNi44MzczMzMgNTcuNDcybC0wLjUxMiA0MTkuODRjMC4yOTg2NjcgMjIuNjU2LTUuODQ1MzMzIDQ3LjYxNi0xOC41MTczMzMgNzQuODgtMTIuNjcyIDI3LjMwNjY2Ny0yNy45NDY2NjcgNDguOTM4NjY3LTQ1Ljg2NjY2NyA2NC45Mzg2NjZsLTIxMS4yIDE4OC4yMDI2NjdjLTE3LjYyMTMzMyAxNS42NTg2NjctMzkuMjUzMzMzIDIzLjUwOTMzMy02NC45ODEzMzMgMjMuNTk0NjY3YTk0LjcyIDk0LjcyIDAgMCAxLTY0LjkzODY2Ny0yMy41OTQ2NjdsLTIxMS4yLTE4OC4yMDI2NjdjLTE3LjkyLTE2LTMzLjIzNzMzMy0zNy43MTczMzMtNDUuOTA5MzMzLTY0LjkzODY2Ni0xMi42MjkzMzMtMjcuMzA2NjY3LTE5LjAyOTMzMy01Mi40MzczMzMtMTkuMDI5MzMzLTc1LjMwNjY2N0wxNzAuNjY2NjY3IDE2Ny42OHogbTQyLjYyNCAwLjI1NmwwLjU1NDY2NiA0MTguNjg4YzAgMTYuMTcwNjY3IDQuODY0IDM1LjMyOCAxNS4wNjEzMzQgNTcuMzQ0IDEwLjM2OCAyMi4yNzIgMjIuMzE0NjY3IDM5LjE2OCAzNS42MjY2NjYgNTEuMDI5MzMzbDIxMS40MTMzMzQgMTg4LjQxNmM4Ljk2IDguMTA2NjY3IDIxLjg4OCAxMi44IDM2LjIyNCAxMi41ODY2NjcgMTUuNTMwNjY3LTAuMDQyNjY3IDI3LjA5MzMzMy00LjI2NjY2NyAzNi42OTMzMzMtMTIuOGwyMTEuMTE0NjY3LTE4OC4xNmMxMy4zNTQ2NjctMTEuOTQ2NjY3IDI1LjMwMTMzMy0yOC44NDI2NjcgMzUuNjI2NjY2LTUxLjA3MiAxMC4xMTItMjEuNzYgMTQuNzYyNjY3LTQwLjUzMzMzMyAxNC41MDY2NjctNTcuMDAyNjY3TDgxMC42NjY2NjcgMTY3LjIxMDY2N2MwLTkuODk4NjY3LTMuNTg0LTE3LjYyMTMzMy0xMi41MDEzMzQtMjUuNkE1NC42OTg2NjcgNTQuNjk4NjY3IDAgMCAwIDc2MS42IDEyOGwtNDk5LjYyNjY2NyAwLjQ2OTMzM2E1MS4zMjggNTEuMzI4IDAgMCAwLTM1Ljc1NDY2NiAxMy4yNjkzMzQgMzYuNTY1MzMzIDM2LjU2NTMzMyAwIDAgMC0xMi41MDEzMzQgMjEuNTA0bC0wLjQyNjY2NiA0LjY5MzMzM3oiIGZpbGw9IiNBRTQ0RkYiIHAtaWQ9IjMwODAiPjwvcGF0aD48cGF0aCBkPSJNNDc1LjMwNjY2NyA2NTguMjE4NjY3aDczLjQ3MlYzMDYuMzg5MzMzaDExNi40OFYyNDguNDQ4aC0zMDcuNjI2NjY3djU3Ljk0MTMzM2gxMTcuNjc0NjY3eiIgZmlsbD0iI0ZGRkZGRiIgcC1pZD0iMzA4MSI+PC9wYXRoPjwvc3ZnPg==",q=(o,a)=>{const{type:i="log",color:t="black"}=a??{};localStorage.getItem("st-kline-console-show")==="true"&&console[i](`%c${o}`,`color:${t}`)},W=o=>o||o===0?Math.round(o*1e3)/1e3:null,dt=o=>o>=1e12?`${(o/1e12).toFixed(2)}万亿`:o>=1e8?`${(o/1e8).toFixed(2)}亿`:o>=1e4?`${(o/1e4).toFixed(2)}万`:o.toFixed(2),Nt=o=>{const{y:a,text:i,info:t,gridLeft:n,gridRight:r,echartsWidth:y,echartsInstance:M}=o,{config:l,event:u}=t;let g=0;return{type:"group",draggable:l.draggable?"vertical":!1,children:[{type:"line",info:t,shape:{x1:n,y1:a,x2:y-r,y2:a},style:{stroke:l.lineColor,lineWidth:1,lineDash:[8,4]},z:10},{type:"group",x:y,y:a-5,children:[{type:"text",left:-1*r,info:t,style:{fill:l.textColor,text:i,stroke:"#000",lineWidth:1,opacity:1},z:10}]}],onmouseover:p=>{u.onmouseover instanceof Function&&u.onmouseover(p,t)},onmouseout:p=>{u.onmouseout instanceof Function&&u.onmouseout(p,t)},ondragstart:p=>{u.ondragstart instanceof Function&&l.draggable&&(g=p.offsetY,u.ondragstart(p,t))},ondragend:p=>{if(u.ondragend instanceof Function&&l.draggable){const N=p.offsetY-g;if(N===0)return;const f=M.convertFromPixel({yAxisIndex:0},a+N);u.ondragend(p,t,f)}}}},yt=o=>{const{y:a,text:i,info:t,gridLeft:n,gridRight:r,echartsWidth:y,echartsInstance:M}=o,{config:l,event:u}=t;let g=0;const p=N=>{let f=null;N.target.type==="line"?f=N.target.parent:N.target.type==="tspan"&&(f=N.target.parent.parent.parent),f.children()[1].children()[0].animate("style",!1).when(200,{opacity:1}).start()},c=N=>{let f=null;N.target.type==="line"?f=N.target.parent:N.target.type==="tspan"&&(f=N.target.parent.parent.parent),f.children()[1].children()[0].animate("style",!1).when(200,{opacity:0}).start()};return{type:"group",draggable:l.draggable?"vertical":!1,children:[{type:"line",info:t,shape:{x1:n,y1:a,x2:y-r,y2:a},style:{stroke:l.lineColor,lineWidth:1},z:10},{type:"group",x:y/2,y:a-5,children:[{type:"text",left:"center",info:t,style:{fill:l.textColor,text:i,stroke:"#000",lineWidth:1,opacity:0},z:10}]}],onmouseover:N=>{u.onmouseover instanceof Function?u.onmouseover(N,t):p(N)},onmouseout:N=>{u.onmouseout instanceof Function?u.onmouseout(N,t):c(N)},ondragstart:N=>{u.ondragstart instanceof Function&&l.draggable&&(g=N.offsetY,u.ondragstart(N,t))},ondragend:N=>{if(u.ondragend instanceof Function&&l.draggable){const d=N.offsetY-g;if(d===0)return;const v=M.convertFromPixel({yAxisIndex:0},a+d);u.ondragend(N,t,v)}}}},zt=o=>{const{y:a,text:i,profitY:t,profitText:n,lossY:r,lossText:y,info:M,gridLeft:l,gridRight:u,echartsWidth:g,echartsInstance:p}=o,{config:c,event:N}=M;let f=0,d=null,v=null;const b=(z,T)=>{var I,A,C,Q;(I=z.children()[2])==null||I.animate("style",!1).when(200,{opacity:~~T}).start(),(A=z.children()[3].children()[0])==null||A.animate("style",!1).when(200,{opacity:~~T}).start(),(C=z.children()[4])==null||C.animate("style",!1).when(200,{opacity:~~T}).start(),(Q=z.children()[5].children()[0])==null||Q.animate("style",!1).when(200,{opacity:~~T}).start()},k=z=>{let T=null;z.target.type==="line"?T=z.target.parent:z.target.type==="tspan"&&(T=z.target.parent.parent.parent),d=I=>{I.preventDefault(),(I.code==="AltLeft"||I.code==="AltRight")&&b(T,!0)},v=I=>{(I.code==="AltLeft"||I.code==="AltRight")&&b(T,!1)},window.addEventListener("keydown",d),window.addEventListener("keyup",v)},F=z=>{let T=null;z.target.type==="line"?T=z.target.parent:z.target.type==="tspan"&&(T=z.target.parent.parent.parent),b(T,!1),window.removeEventListener("keydown",d),window.removeEventListener("keyup",v)};return{type:"group",draggable:c.draggable?"vertical":!1,children:[{type:"line",info:M,shape:{x1:l,y1:a,x2:g-u,y2:a},style:{stroke:c.lineColor,lineWidth:1},z:10},{type:"group",x:g/2,y:a-5,children:[{type:"text",left:"center",info:M,style:{fill:c.textColor,text:i,stroke:"#000",lineWidth:1,opacity:1},z:10}]},{type:"line",info:M,shape:{x1:l,y1:t,x2:g-u,y2:t},style:{stroke:c.profitLineColor,lineWidth:1,lineDash:[8,4],opacity:0},z:10},{type:"group",x:g/2,y:t-5,children:[{type:"text",left:"center",info:M,style:{fill:c.profitTextColor,text:n,stroke:"#000",lineWidth:1,opacity:0},z:10}]},{type:"line",info:M,shape:{x1:l,y1:r,x2:g-u,y2:r},style:{stroke:c.lossLineColor,lineWidth:1,lineDash:[8,4],opacity:0},z:10},{type:"group",x:g/2,y:r-5,children:[{type:"text",left:"center",info:M,style:{fill:c.lossTextColor,text:y,stroke:"#000",lineWidth:1,opacity:0},z:10}]}],onmouseover:z=>{N.onmouseover instanceof Function?N.onmouseover(z,M):k(z)},onmouseout:z=>{N.onmouseout instanceof Function?N.onmouseout(z,M):F(z)},ondragstart:z=>{N.ondragstart instanceof Function&&c.draggable&&(f=z.offsetY,N.ondragstart(z,M))},ondragend:z=>{if(N.ondragend instanceof Function&&c.draggable){const I=z.offsetY-f;if(I===0)return;const A=p.convertFromPixel({yAxisIndex:0},a+I);N.ondragend(z,M,A)}}}},te=(o,a)=>{const{direction:i="",tradeAction:t="",tradeType:n=""}=o;if(a==="sellBuy"){const r=n??i+t;return new Map([["开多","买"],["平多","卖"],["开空","卖"],["平空","买"]]).get(r)}else if(a==="openClose")return n??i+t},gt=(o,a)=>o.reduce((i,t)=>{var g;const n=te(t,"sellBuy"),r=o.filter(p=>p.time===t.time);let y="image://"+new URL(Object.assign({"./images/buy.svg":le,"./images/sell.svg":se,"./images/t.svg":re})[`./images/${n==="买"?"buy":"sell"}.svg`],self.location).href;r.length>1?[...new Set(r.map(c=>te(c,"sellBuy")))].length>1?y="image://"+new URL("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBzdGFuZGFsb25lPSJubyI/PjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCI+PHN2ZyB0PSIxNjgzNzAzMjI4MjAyIiBjbGFzcz0iaWNvbiIgdmlld0JveD0iMCAwIDEwMjQgMTAyNCIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHAtaWQ9IjMwNzgiIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB3aWR0aD0iMjAwIiBoZWlnaHQ9IjIwMCI+PHBhdGggZD0iTTE5OC4wMTYgMTA5LjczODY2N0E3Ny44NjY2NjcgNzcuODY2NjY3IDAgMCAwIDE3MC42NjY2NjcgMTY3LjY4bDAuNTEyIDQxOC45NDRjMCAyMi44NjkzMzMgNi40IDQ4IDE5LjAyOTMzMyA3NS4zMDY2NjcgMTIuNjcyIDI3LjIyMTMzMyAyNy45ODkzMzMgNDguOTM4NjY3IDQ1Ljk1MiA2NC45Mzg2NjZsMjExLjE1NzMzMyAxODguMjAyNjY3YzE3LjA2NjY2NyAxNS40ODggNDAuNTc2IDIzLjk3ODY2NyA2NC45Mzg2NjcgMjMuNTk0NjY3IDI1LjY4NTMzMy0wLjA4NTMzMyA0Ny4zNi03LjkzNiA2NC45ODEzMzMtMjMuNTk0NjY3bDIxMS4yLTE4OC4yMDI2NjdjMTcuOTItMTYgMzMuMTk0NjY3LTM3LjYzMiA0NS44NjY2NjctNjQuOTM4NjY2IDEyLjY3Mi0yNy4zMDY2NjcgMTguNzczMzMzLTUyLjIyNCAxOC41MTczMzMtNzQuOTIyNjY3TDg1My4zMzMzMzMgMTY3LjI1MzMzM2MwLTIyLjI3Mi04Ljk2LTQxLjQ3Mi0yNi44MzczMzMtNTcuNDcyLTE3LjU3ODY2Ny0xNS42MTYtMzkuMzM4NjY3LTIzLjg5MzMzMy02NC45Mzg2NjctMjQuNDA1MzMzbC00OTkuMDI5MzMzIDAuNDY5MzMzYTkzLjMxMiA5My4zMTIgMCAwIDAtNjQuNTEyIDIzLjg5MzMzNHoiIGZpbGw9IiNDODgwRkYiIHAtaWQ9IjMwNzkiPjwvcGF0aD48cGF0aCBkPSJNMTcwLjY2NjY2NyAxNjcuNjhjMC4xMjgtMjEuNzYgOS45NDEzMzMtNDIuNjY2NjY3IDI3LjM0OTMzMy01Ny45NDEzMzNhOTMuMzEyIDkzLjMxMiAwIDAgMSA2NC41MTItMjMuODkzMzM0TDc2MS41NTczMzMgODUuMzMzMzMzYzI1LjYgMC41NTQ2NjcgNDcuMzYgOC43ODkzMzMgNjQuOTM4NjY3IDI0LjQwNTMzNCAxNy45MiAxNiAyNi44MzczMzMgMzUuMiAyNi44MzczMzMgNTcuNDcybC0wLjUxMiA0MTkuODRjMC4yOTg2NjcgMjIuNjU2LTUuODQ1MzMzIDQ3LjYxNi0xOC41MTczMzMgNzQuODgtMTIuNjcyIDI3LjMwNjY2Ny0yNy45NDY2NjcgNDguOTM4NjY3LTQ1Ljg2NjY2NyA2NC45Mzg2NjZsLTIxMS4yIDE4OC4yMDI2NjdjLTE3LjYyMTMzMyAxNS42NTg2NjctMzkuMjUzMzMzIDIzLjUwOTMzMy02NC45ODEzMzMgMjMuNTk0NjY3YTk0LjcyIDk0LjcyIDAgMCAxLTY0LjkzODY2Ny0yMy41OTQ2NjdsLTIxMS4yLTE4OC4yMDI2NjdjLTE3LjkyLTE2LTMzLjIzNzMzMy0zNy43MTczMzMtNDUuOTA5MzMzLTY0LjkzODY2Ni0xMi42MjkzMzMtMjcuMzA2NjY3LTE5LjAyOTMzMy01Mi40MzczMzMtMTkuMDI5MzMzLTc1LjMwNjY2N0wxNzAuNjY2NjY3IDE2Ny42OHogbTQyLjYyNCAwLjI1NmwwLjU1NDY2NiA0MTguNjg4YzAgMTYuMTcwNjY3IDQuODY0IDM1LjMyOCAxNS4wNjEzMzQgNTcuMzQ0IDEwLjM2OCAyMi4yNzIgMjIuMzE0NjY3IDM5LjE2OCAzNS42MjY2NjYgNTEuMDI5MzMzbDIxMS40MTMzMzQgMTg4LjQxNmM4Ljk2IDguMTA2NjY3IDIxLjg4OCAxMi44IDM2LjIyNCAxMi41ODY2NjcgMTUuNTMwNjY3LTAuMDQyNjY3IDI3LjA5MzMzMy00LjI2NjY2NyAzNi42OTMzMzMtMTIuOGwyMTEuMTE0NjY3LTE4OC4xNmMxMy4zNTQ2NjctMTEuOTQ2NjY3IDI1LjMwMTMzMy0yOC44NDI2NjcgMzUuNjI2NjY2LTUxLjA3MiAxMC4xMTItMjEuNzYgMTQuNzYyNjY3LTQwLjUzMzMzMyAxNC41MDY2NjctNTcuMDAyNjY3TDgxMC42NjY2NjcgMTY3LjIxMDY2N2MwLTkuODk4NjY3LTMuNTg0LTE3LjYyMTMzMy0xMi41MDEzMzQtMjUuNkE1NC42OTg2NjcgNTQuNjk4NjY3IDAgMCAwIDc2MS42IDEyOGwtNDk5LjYyNjY2NyAwLjQ2OTMzM2E1MS4zMjggNTEuMzI4IDAgMCAwLTM1Ljc1NDY2NiAxMy4yNjkzMzQgMzYuNTY1MzMzIDM2LjU2NTMzMyAwIDAgMC0xMi41MDEzMzQgMjEuNTA0bC0wLjQyNjY2NiA0LjY5MzMzM3oiIGZpbGw9IiNBRTQ0RkYiIHAtaWQ9IjMwODAiPjwvcGF0aD48cGF0aCBkPSJNNDc1LjMwNjY2NyA2NTguMjE4NjY3aDczLjQ3MlYzMDYuMzg5MzMzaDExNi40OFYyNDguNDQ4aC0zMDcuNjI2NjY3djU3Ljk0MTMzM2gxMTcuNjc0NjY3eiIgZmlsbD0iI0ZGRkZGRiIgcC1pZD0iMzA4MSI+PC9wYXRoPjwvc3ZnPg==",self.location).href:y="image://"+new URL(Object.assign({"./images/buy.svg":le,"./images/sell.svg":se,"./images/t.svg":re})[`./images/${n==="买"?"buy":"sell"}.svg`],self.location).href:y="image://"+new URL(Object.assign({"./images/buy.svg":le,"./images/sell.svg":se,"./images/t.svg":re})[`./images/${n==="买"?"buy":"sell"}.svg`],self.location).href;const l=(a.find(p=>p[0]===t.time)??[])[2],u=((g=t==null?void 0:t.markLineTarget)==null?void 0:g.map(p=>{const c=t.time,N=l+"",f=p.time,d=a.find(b=>b[0]===p.time),v=d?d[3]:null;return[{coord:[c,N],lineStyle:p.lineStyle},{coord:[f,v]}]}))??null;return i.push({symbol:y,symbolSize:25,animation:!1,coord:[t.time+"",l],symbolRotate:0,symbolOffset:[0,"-7"],markLineTarget:u}),i},[]),jt=(o,a)=>o.reduce((i,t,n)=>{var p;const r=te(t,"openClose"),y=r==="开多"||r==="开空"?"top":"bottom",M=a.find(c=>c[0]===t.time)??[],l=y==="top"?M[2]:M[3];let u=7;u+=o.slice(0,n).filter(c=>{const N=te(c,"openClose");return(N==="开多"||N==="开空"?"top":"bottom")===y&&c.time===t.time}).length*7;const g=((p=t==null?void 0:t.markLineTarget)==null?void 0:p.map(c=>{const N=t.time,f=l+"",d=c.time,v=a.find(b=>b[0]===c.time)[3];return[{coord:[N,f],lineStyle:c.lineStyle},{coord:[d,v]}]}))??null;return i.push({symbol:"triangle",symbolSize:[10,12],animation:!1,coord:[t.time+"",l],symbolRotate:y==="top"?180:0,symbolOffset:[0,`${y==="top"?u*-1:u}`],itemStyle:{color:y==="top"?"#FF0000":"#389e0d"},label:{show:!0,position:y,color:"#fff",formatter:`${r} ${y==="top"?"+":"-"} ${t.amount}手 ${t.part?`(${t.part}份)`:""}`},markLineTarget:g}),i},[]),pt=(o,a)=>o.reduce((i,t)=>{const{key:n,data:r}=t;if(r===null||r.length===0)return i;const M=new Map([["sellBuy",()=>gt(r,a)],["openClose",()=>jt(r,a)],["signal",()=>{}]]).get(n);return M instanceof Function&&i.push(...M()),i},[]),ce=async(o,a,i,t,n,r)=>{const{totalBarCount:y,defaultShowBarCount:M,maxValueSpan:l,gridLeft:u,gridTop:g,gridRight:p,gridBottom:c,zoomLock:N}=t,{time:f,kLine:d,originData:v,indicator:b}=await Mt(o,i,y),k=b.map(T=>{const{key:I,data:A,color:C}=T;return{name:I,type:"line",silent:!0,symbol:"none",data:A,lineStyle:{width:1},itemStyle:{color:C}}}),F=pt(a,v);let z=[];return F.forEach(T=>{T.markLineTarget&&(z=[...z,...T.markLineTarget])}),{animation:!1,dataset:{id:"data",source:{klineData:d,indicatorData:b}},grid:{left:`${u}px`,top:`${g}px`,right:`${p}px`,bottom:`${c}px`},tooltip:{trigger:"axis",axisPointer:{type:"cross",label:{formatter:T=>{const{axisDimension:I,value:A}=T;return I==="x"?A:String(W(A))}}},formatter:T=>{let I=null,A="";return T.forEach(C=>{C.seriesName==="资产持仓净值"&&C.data!==null&&(A+=`<div>资产持仓净值: ${C.data}</div>`),C.componentSubType==="candlestick"&&a.forEach(Q=>{const{key:B,data:U}=Q;if(B==="sellBuy"){const V=U.filter(Y=>Y.time===C.axisValue);let R=0,m=0;V.forEach(Y=>{Y.tradeType==="开多"||Y.tradeType==="平空"?R+=Y.amount:m+=Y.amount}),R&&(A+=`<div>买: ${R}</div>`),m&&(A+=`<div>卖: ${m}</div>`)}B==="openClose"&&U.forEach(V=>{V.time===C.axisValue&&(A+=V.tooltip)})}),A&&(I=`<div><span style="font-weight: bold;">${C.axisValue}</span>${A}</div>`)}),I}},xAxis:{type:"category",data:f,axisLine:{show:!0},splitLine:{show:!0,lineStyle:{type:"dotted",color:"#333"}},axisLabel:{show:!0,formatter:T=>T}},yAxis:[{index:0,splitLine:{show:!0,lineStyle:{type:"dotted",color:"#333"}},min:T=>{const{min:I,max:A}=T,C=Math.abs((A-I)/10);return I-C},max:T=>{const{min:I,max:A}=T,C=Math.abs((A-I)/10);return A+C},axisLine:{show:!0},axisLabel:{formatter:T=>W(T),showMaxLabel:!1}},{show:!1,min:"dataMin"}],dataZoom:[{type:"inside",xAxisIndex:[0,0],zoomLock:N,maxValueSpan:l,start:d.length>=M?(d.length-M)/d.length*100:0,end:99.99}],series:[{name:"k线",type:"candlestick",data:d,markPoint:{data:F},markLine:{position:"middle",textStyle:{color:"blue",fontSize:15},animation:!1,data:z,lineStyle:{width:3,type:"solid"},symbol:["none","none"]},itemStyle:{color:"transparent",color0:"#00FFFF",borderColor:"#FF0000",borderColor0:"#00FFFF",borderWidth:1},z:1},...k,{name:"资产持仓净值",type:"line",data:n??[],symbol:"none",yAxisIndex:1,connectNulls:!0,itemStyle:{color:"#666"}},{name:"二腿相关度",type:"line",data:r??[],symbol:"none",yAxisIndex:1,connectNulls:!0,itemStyle:{color:"#FFF"},lineStyle:{width:2},label:{show:!0,position:"top",formatter:T=>`相关度: ${T.data[1]}`,textStyle:{color:"#FFF",fontSize:14}}}],toolbox:{show:!1},brush:{xAxisIndex:"all",brushLink:"all",transformable:!1,outOfBrush:{colorAlpha:1},brushStyle:{color:"rgba(120,140,180,0)",borderColor:"rgba(255,255,255,0.4)"}}}},ft=(o,a,i)=>{var p;const{gridLeft:t,gridRight:n,gridBottom:r,warningConfig:y,positionConfig:M,conditionConfig:l,isOpenDS:u}=a;let g=[];if((p=i==null?void 0:i.getModel())!=null&&p.getComponent){const[c,N]=i.getModel().getComponent("yAxis").axis.scale._extent;let f=[],d={},v=[],b={},k=[],F={};if(o.forEach(({key:z,data:T,...I})=>{z==="warning"?(f=T,d=I):z==="position"?(v=T,b=I):z==="condition"&&(k=T,F=I)}),f.length>0&&(g=f.reduce((z,T)=>{const{value:I,text:A,info:C,config:Q}=T;if(I>N||I<c)return z;const B={y:i.convertToPixel({yAxisIndex:0},I),text:A,info:{info:C,config:{...y,...Q},event:{...d}},gridLeft:t,gridRight:n,echartsWidth:i.getWidth(),echartsInstance:i};return[...z,Nt(B)]},g)),v.length>0&&(g=v.reduce((z,T)=>{const{value:I,text:A,info:C,config:Q}=T;if(I>N||I<c)return z;const B={y:i.convertToPixel({yAxisIndex:0},I),text:A,info:{info:C,config:{...M,...Q},event:{...b}},gridLeft:t,gridRight:n,echartsWidth:i.getWidth(),echartsInstance:i};return[...z,yt(B)]},g)),k.length>0&&(g=k.reduce((z,T)=>{const{value:I,text:A,profitValue:C,profitText:Q,lossValue:B,lossText:U,info:V,config:R}=T;if(I>N||I<c)return z;const m={y:i.convertToPixel({yAxisIndex:0},I),text:A,profitY:i.convertToPixel({yAxisIndex:0},C),profitText:Q,lossY:i.convertToPixel({yAxisIndex:0},B),lossText:U,info:{info:V,config:{...l,...R},event:{...F}},gridLeft:t,gridRight:n,echartsWidth:i.getWidth(),echartsInstance:i};return[...z,zt(m)]},g)),u){const z=i.getOption(),T=z.dataset[0].source.klineData.slice(z.dataZoom[0].startValue,z.dataZoom[0].endValue+1),I={};T.forEach(m=>{I[m[1]]?I[m[1]]+=1:I[m[1]]=1});const A=T[T.length-1][1],C=T.reduce((m,Y)=>m+Y[1],0)/T.length,Q=A-C,B=mt(T,1,50),U=It(T),V=U?Q/U:0,R=Tt(T,1,A);g=[...g,{type:"group",draggable:!1,children:Object.keys(I).map(m=>({type:"line",shape:{x1:i.getWidth()-n-100*I[m],y1:i.convertToPixel({yAxisIndex:0},m),x2:i.getWidth()-n,y2:i.convertToPixel({yAxisIndex:0},m)},style:{stroke:"rgb(124,124,124)",lineWidth:1},z:10}))},{type:"text",x:t+6,y:i.getHeight()-r-20,style:{fill:"#FFF",text:`均值: ${W(C)} 距均值: ${W(Q)} 中值: ${W(B)} 标准差: ${W(U)} 距均值/标准差: ${W(V)} 百分位: ${W(R)}%`,lineWidth:1,opacity:1},z:10}]}}return{elements:g}},Tt=(o,a,i)=>{const{round:t,add:n,subtract:r,multiply:y,divide:M}=ne.x,l=o.map(g=>g[a]).sort((g,p)=>g-p);let u=0;for(let g=0;g<l.length;g++)if(l[g]===i){u=g;break}else if(l[g]>=i){u=n(g,M(r(l[g+1],l[g]),l[g]));break}return t(M(y(u,100),o.length+1))},mt=(o,a,i)=>{const{round:t,add:n,subtract:r,multiply:y,divide:M}=ne.x,l=o.map(c=>c[a]).sort((c,N)=>c-N),u=y(o.length+1,M(i,100)),g=Math.floor(u),p=r(u,g);return t(p===0?l[u]:n(l[g],y(r(l[g>=o.length-1?g:g+1],l[g]),p)))};function It(o){const a=o.map(y=>y[1]),i=a.length;let t=0,n=0;for(const y of a)t+=y;const r=t/i;for(const y of a)n+=Math.pow(y-r,2);return Math.sqrt(n/i)}const Dt={class:"st-kline"},Lt={class:"st-kline-header"},ht=300,xt=e.defineComponent({__name:"index",props:{indicator:{type:Object,default:()=>({})},klineData:{type:Array,default:()=>[]},markData:{type:Array,default:()=>[]},lineData:{type:Array,default:()=>[]},netPositionData:{type:Array,default:()=>[]},relevanceData:{type:Array,default:()=>[]},priceTrendData:{type:Array,default:()=>[]},priceTrendPercentData:{type:Array,default:()=>[]},brushRange:{type:Array,default:()=>[]},defaultMenuData:{type:Array,default:()=>[]},isSelect:{type:Boolean,default:()=>!1},config:{type:Object,default:()=>({})}},setup(o){const a=o,i={totalBarCount:2e3,defaultShowBarCount:200,preBarCount:800,maxValueSpan:1e4,gridLeft:60,gridTop:0,gridRight:60,gridBottom:30,warningConfig:{draggable:!1,lineColor:"#fff",textColor:"#fff"},positionConfig:{draggable:!1,lineColor:"#e45d07",textColor:"#fff"},conditionConfig:{draggable:!1,lineColor:"#fff",textColor:"#fff",profitLineColor:"#b71e44",profitTextColor:"#fff",lossLineColor:"#749b66",lossTextColor:"#fff"},tipsConfig:{open:!0,heigh:!0,low:!0,close:!0,business:!0,riseAndFall:!0},dynamicLoadConfig:{historyVisible:!1,historyLoadCallBack:()=>{},futureVisible:!1,futureLoadCallBack:()=>{}},zoomLock:!1,isOpenDS:!1},t=e.computed(()=>({...i,...a.config})),n=e.ref(null),r=e.ref(-1),y=e.computed(()=>{var m,Y;if(n.value&&((Y=(m=n.value.dataset[0])==null?void 0:m.source)!=null&&Y.klineData[r.value])){const h=n.value.dataset[0].source.klineData[r.value],s=[],{open:j,heigh:L,low:w,close:D,business:E,riseAndFall:O}=t.value.tipsConfig;if(j&&s.push({label:"开",value:h[0],color:"rgb(153, 153, 153)"}),L&&s.push({label:"高",value:h[3],color:"rgb(153, 153, 153)"}),w&&s.push({label:"低",value:h[2],color:"rgb(153, 153, 153)"}),D&&s.push({label:"收",value:h[1],color:"rgb(153, 153, 153)"}),E&&s.push({label:"额",value:dt(h[4]),color:"rgb(153, 153, 153)"}),O){let P=((h[1]-h[5])/h[1]*100).toFixed(2),_=+P==0?"white":+P>0?"red":"#00ff00";s.push({label:"涨跌",value:`${P}%`,color:_})}return s}return[]}),M=e.computed(()=>{var m,Y;return n.value&&((Y=(m=n.value.dataset[0])==null?void 0:m.source)!=null&&Y.indicatorData)?n.value.dataset[0].source.indicatorData.reduce((h,s)=>(s.data[r.value]&&h.push({label:s.key,value:W(s.data[r.value]),color:s.color}),h),[]):[]}),l=e.computed(()=>{const m=["#FFFFFF","#FFDD00","#FF00FF","#00FF00","#FF6000","#1677FF","#7C3CC9","#FF0000","#FB9A0E","#00B7FF"];if(a.priceTrendData.length>0){const Y=[];return a.priceTrendData.forEach((h,s)=>{var L;(h.data[r.value]?W(h.data[r.value][1]):null)!==null&&Y.push({label:h.name,value:W((L=h.data[r.value])==null?void 0:L[1]),color:m[s]})}),Y}if(a.priceTrendPercentData.length>0){const Y=[];return d.getOption().series.filter(s=>s.name.includes("二腿价格走势百分比图")).forEach((s,j)=>{var w;(s.data[r.value]?W(s.data[r.value][1]):null)!==null&&Y.push({label:s.name.split("-")[1],value:`${W((w=s.data[r.value])==null?void 0:w[1])}%`,color:m[j]})}),Y}return[]});e.watch(()=>[a.klineData,a.indicator,a.markData,a.netPositionData,a.relevanceData],()=>{u()},{deep:!0}),e.watch(()=>a.lineData,async()=>{q("st-kline组件消息:props.lineData监控,额外画线数据发生改变,重绘->line",{color:"red"}),u("line")},{deep:!0}),e.watch(()=>a.brushRange,async()=>{q("st-kline组件消息:props.brushRange监控,区域刷选数据发生改变,重绘->brush",{color:"red"}),u("brush")},{deep:!0}),e.watch(()=>a.priceTrendData,async()=>{u("priceTrend")},{deep:!0}),e.watch(()=>a.priceTrendPercentData,async()=>{u("priceTrendPercent")},{deep:!0});const u=async m=>{const h=new Map([["kline",async()=>{const s=await ce(a.klineData,a.markData,a.indicator,t.value,a.netPositionData,a.relevanceData),{graphic:j}=d.getOption()??{graphic:[]};n.value={...s,graphic:j},d.setOption(n.value,!0),q("st-kline组件消息:K线绘制完毕-draw",{color:"green"})}],["line",()=>{const s=d.getOption(),j=ft(a.lineData,t.value,d);n.value={...s,graphic:j},d.setOption(n.value,{replaceMerge:["graphic"]}),q("st-kline组件消息:额外画线绘制完毕-draw",{color:"green"})}],["brush",()=>{const{brushRange:s}=a;s instanceof Array&&s.length>0&&(d.dispatchAction({type:"brush",areas:[{brushType:"lineX",coordRange:[s[0]+"",s[1]+""],xAxisIndex:0}]}),q("st-kline组件消息:区域刷选绘制完毕-draw",{color:"green"}))}],[void 0,async()=>{await u("kline"),await u("line"),await u("priceTrend"),await u("priceTrendPercent"),await u("brush")}],["history",async()=>{const s=d.getOption(),j=await ce(a.klineData,a.markData,a.indicator,t.value,a.netPositionData,a.relevanceData),L=j.dataset.source.klineData.length-s.dataset[0].source.klineData.length;d.setOption({...j,dataZoom:[{type:"inside",xAxisIndex:[0,0],zoomLock:t.value.zoomLock,maxValueSpan:t.value.maxValueSpan,startValue:s.dataZoom[0].startValue+L,endValue:s.dataZoom[0].endValue+L}]},!0),await u("priceTrend")}],["future",async()=>{const s=d.getOption(),j=await ce(a.klineData,a.markData,a.indicator,t.value,a.netPositionData,a.relevanceData);j.dataZoom[0].start=(a.klineData.length-s.dataZoom[0].endValue+s.dataZoom[0].startValue)/a.klineData.length*100,d.setOption(j,!0),await u("priceTrend")}],["priceTrend",()=>{if(a.priceTrendData.length===0)return;const s=d.getOption(),j=["#FFFFFF","#FFDD00","#FF00FF","#00FF00","#FF6000","#1677FF","#7C3CC9","#FF0000","#FB9A0E","#00B7FF"],L=a.priceTrendData.reduce((w,D,E)=>{const{name:O,data:P}=D,_={name:`二腿价格走势图-${O}`,type:"line",data:P,symbol:"none",yAxisIndex:1,connectNulls:!0,itemStyle:{color:j[E]},lineStyle:{type:"dashed",width:1}};return w.push(_),w},[]);n.value={...s,series:[...s.series,...L]},d.setOption(n.value,{replaceMerge:["series"]})}],["priceTrendPercent",async()=>{if(a.priceTrendPercentData.length===0)return;const s=d.getOption(),j=["#FFFFFF","#FFDD00","#FF00FF","#00FF00","#FF6000","#1677FF","#7C3CC9","#FF0000","#FB9A0E","#00B7FF"],L=s.dataZoom[0].startValue,w=a.priceTrendPercentData.reduce((D,E,O)=>{const{name:P,data:_}=E,$=_.length>t.value.totalBarCount?_.slice(_.length-t.value.totalBarCount):_,H=$[L][1],xe=$.map(ye=>[ye[0],(ye[1]-H)/H*100]),ve={name:`二腿价格走势百分比图-${P}`,type:"line",data:xe,symbol:"none",yAxisIndex:1,connectNulls:!0,itemStyle:{color:j[O]},lineStyle:{type:"dashed",width:1}};return D.push(ve),D},[]);s.series=[...s.series.filter(D=>!D.name.includes("二腿价格走势百分比图")),...w],d.setOption(s,!0)}]]).get(m);h instanceof Function&&await h()},g=e.ref(!1),p=e.ref([]),c=m=>{const{callBack:Y}=m;Y instanceof Function&&Y(d,g)},N=()=>{p.value=a.defaultMenuData},f=e.ref();let d,v;const b=(m,Y)=>{var h,s;if(m)r.value=typeof((h=m==null?void 0:m.batch[0])==null?void 0:h.dataIndex)=="number"?(s=m==null?void 0:m.batch[0])==null?void 0:s.dataIndex:-1;else{const j=Y.getOption();j.dataZoom instanceof Array&&(r.value=j.dataZoom[0].endValue)}};let k=null,F=!1,z=e.ref(!1),T=!1,I=e.ref(!1);const A=async m=>{const Y=m.batch?m.batch[0].start*t.value.totalBarCount:m.startValue;t.value.dynamicLoadConfig.historyVisible&&Y<=100&&!F&&!z.value&&(F=!0,await t.value.dynamicLoadConfig.historyLoadCallBack(z),await u("history"),F=!1);const h=m.batch?m.batch[0].end===100:m.endValue>=a.klineData.length-t.value.preBarCount-1,s=m.actionIsWheel;t.value.dynamicLoadConfig.futureVisible&&h&&!T&&!I.value&&!s&&(T=!0,await t.value.dynamicLoadConfig.futureLoadCallBack(I),await u("future"),T=!1),clearTimeout(k),k=setTimeout(()=>{u("line"),u("priceTrendPercent"),clearTimeout(k),k=null},ht)};let C=null;const Q=m=>{C=setTimeout(()=>{var Y;if(m.componentType==="graphic"){const{oncontextmenu:h}=((Y=m.info)==null?void 0:Y.event)??{};h instanceof Function&&h(m,m.info,p)}clearTimeout(C),C=null})},B=()=>{d.on("highlight",m=>{b(m,d)}),d.on("globalout",()=>{b(null,d)}),d.on("contextmenu",m=>{Q(m)}),d.on("datazoom",m=>{A(m)})},U=()=>{d.off("highlight"),d.off("globalout"),d.off("contextmenu"),d.off("datazoom")},V=m=>{if(!d||!(m.ctrlKey||a.isSelect))return;const Y=d.getOption();let{startValue:h,endValue:s,start:j,end:L}=Y.dataZoom[0];const w=()=>{h!==0&&(h=h-1,s=s-1,d.dispatchAction({type:"dataZoom",startValue:h,endValue:s,maxValueSpan:t.value.maxValueSpan}))},D=()=>{if(t.value.dynamicLoadConfig.futureVisible&&!T&&!I.value)h=h+1,s=s+1,d.dispatchAction({type:"dataZoom",startValue:h,endValue:s,maxValueSpan:t.value.maxValueSpan});else{if(s===Y.xAxis[0].data.length-1)return;h=h+1,s=s+1,d.dispatchAction({type:"dataZoom",startValue:h,endValue:s,maxValueSpan:t.value.maxValueSpan})}},E=()=>{if(s-h<5)return;const $=Math.floor((r.value-h)/2)+1,H=Math.floor((s-r.value)/2)+1;h=h+$,s=s-H,d.dispatchAction({type:"dataZoom",startValue:h,endValue:s,actionIsWheel:!0,maxValueSpan:t.value.maxValueSpan})},O=()=>{j=j-(L-j)/4,d.dispatchAction({type:"dataZoom",start:j,end:L,actionIsWheel:!0,maxValueSpan:t.value.maxValueSpan})},_=new Map([["ArrowLeft",w],["ArrowRight",D],["ArrowUp",E],["ArrowDown",O]]).get(m.code);_ instanceof Function&&_()},R=async()=>{let m=!0;d=K.init(f.value),await u(),p.value=a.defaultMenuData,r.value=d.getOption().dataZoom[0].endValue??-1,B(),v=new ResizeObserver(()=>{if(m){m=null;return}d.resize(),u("line")}),v.observe(f.value),window.addEventListener("keydown",V)};return e.onMounted(()=>{R()}),e.onUnmounted(()=>{U(),window.removeEventListener("keydown",V),d.dispose(),v.disconnect(),v=null}),(m,Y)=>{const h=ot,s=nt;return e.openBlock(),e.createElementBlock("div",Dt,[e.createElementVNode("div",Lt,[e.createVNode(ie,{data:y.value},null,8,["data"]),e.createVNode(ie,{data:M.value},null,8,["data"]),e.createVNode(ie,{data:l.value},null,8,["data"])]),e.createVNode(rt,{class:"st-kline-body",onCloseContextMenuCallBack:N},{popover:e.withCtx(()=>[e.createVNode(s,{class:"menu"},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(p.value,j=>(e.openBlock(),e.createBlock(h,{key:j.label,index:j.label,class:"menuItem",onClick:L=>c(j)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(j.label),1)]),_:2},1032,["index","onClick"]))),128))]),_:1})]),default:e.withCtx(()=>[e.createElementVNode("div",{ref_key:"echartsRef",ref:f,class:e.normalizeClass(g.value?"st-kline-chart cursorPen":"st-kline-chart")},null,2)]),_:1})])}}});const vt=G._export_sfc(xt,[["__scopeId","data-v-57c04894"]]),Yt={class:"kline-tips"},At=e.defineComponent({__name:"index",props:{data:{type:Array,require:!0}},setup(o){return(a,i)=>(e.openBlock(),e.createElementBlock("div",Yt,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(o.data,(t,n)=>(e.openBlock(),e.createElementBlock("div",{key:n,class:"kline-tips-item",style:e.normalizeStyle({color:t.color})},e.toDisplayString(t.label)+" "+e.toDisplayString(t.value),5))),128))]))}});const Me=G._export_sfc(At,[["__scopeId","data-v-dc7d381b"]]);const Ct={class:"klineSub"},wt={class:"klineSub-tips"},bt={key:0,class:"klineSub-tips-select"},kt={__name:"index",props:{data:{type:Object,require:!0},activeIndex:{type:[Number,String],require:!0},modelValue:{type:String,required:!0},subIndicatorList:{type:Array,required:!0}},emits:["update:modelValue"],setup(o,{expose:a,emit:i}){const{round:t}=ne.x;let n,r;const y=i,M=o,l=e.ref(),u=e.computed({get(){return M.modelValue},set(c){y("update:modelValue",c)}}),g=e.computed(()=>{var f;const{data:c,activeIndex:N}=M;return((f=c==null?void 0:c.subIndicator)==null?void 0:f.map(d=>({label:d.key,color:d.color,value:d.data[N]||"-"})))||[]});e.onMounted(()=>{n=K.init(l.value);let c=!0;r=new ResizeObserver(()=>{if(c){c=null;return}n.resize()}),r.observe(l.value)}),e.onUnmounted(()=>{n.dispose(),r.disconnect(),r=null});const p=(c,N)=>{const f=c[N],d=N===0?c[N]:c[N-1];return f[0]===f[1]?f[0]>=d[1]?{color:"transparent",borderColor:"#FF0000"}:{color:"#00FFFF"}:f[1]>f[0]?{color:"transparent",borderColor:"#FF0000"}:{color:"#00FFFF"}};return a({connect:c=>{K.connect([c,n])},draw:(c,N)=>{e.nextTick(()=>{const{startValue:f,endValue:d,maxValueSpan:v}=c,{leftYAxisRange:b,rightYAxisRange:k}=M.data.subIndicator[0],F=M.data.subIndicator.map(z=>{if(z.series==="bar")return{name:"subMain",xAxisIndex:0,yAxisIndex:1,type:"bar",silent:!0,symbol:"none",data:z.data.map((T,I)=>z.seriesColor==="kline"?{value:T,itemStyle:p(M.data.data,I)}:z.seriesColor==="value"?{value:T,itemStyle:{color:T>=0?"#FF0000":"#00FFFF"}}:{value:T,itemStyle:{color:z.seriesColor}})};if(z.series==="line")return{xAxisIndex:0,yAxisIndex:z.yAxis==="right"?2:1,name:z.key,type:"line",silent:!0,symbol:"none",data:z.data,lineStyle:{width:1},itemStyle:{color:z.color}}});n.setOption({animation:!1,grid:{left:`${N.gridLeft}px`,top:"10px",right:`${N.gridRight}px`,bottom:"20px"},dataZoom:[{type:"inside",startValue:f,endValue:d,maxValueSpan:v}],tooltip:{trigger:"axis",appendToBody:!0,confine:!0,axisPointer:{type:"cross",label:{rich:{},formatter:z=>{const{axisDimension:T,value:I}=z;if(T==="x")return I;if(z.axisIndex===1)return String(t(I))}}},formatter:()=>""},xAxis:{type:"category",data:M.data.time,axisLine:{show:!0},splitLine:{show:!1},axisLabel:{show:!0,formatter:z=>z}},yAxis:[{position:"right"},{position:"left",min:b==="cover"?z=>z.min:null,max:b==="cover"?z=>z.max:null,splitNumber:1,axisLine:{show:!0},splitLine:{show:!0,lineStyle:{type:"dotted",color:"#333"}}},{position:"right",min:k==="cover"?z=>z.min:null,max:k==="cover"?z=>z.max:null,splitNumber:1,axisLine:{show:!1},splitLine:{show:!1},axisLabel:{show:!1}}],series:F},!0)})}}),(c,N)=>{const f=ze.ElOption,d=ze.ElSelect;return e.openBlock(),e.createElementBlock("div",Ct,[e.createElementVNode("div",wt,[g.value.length?(e.openBlock(),e.createElementBlock("div",bt,[e.createVNode(d,{modelValue:u.value,"onUpdate:modelValue":N[0]||(N[0]=v=>u.value=v),size:"small","popper-class":"element-dark",class:"element-dark subIndicator"},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(o.subIndicatorList,v=>(e.openBlock(),e.createBlock(f,{key:v.value,label:v.label,value:v.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])])):e.createCommentVNode("",!0),e.createVNode(Me,{data:g.value},null,8,["data"])]),e.createElementVNode("div",{class:"klineSub-chart",ref_key:"subChartRef",ref:l},null,512)])}}},Ot=G._export_sfc(kt,[["__scopeId","data-v-aba58678"]]);const Et={class:"kline-tips"},_t={__name:"index",props:{data:{type:Object,require:!0},activeIndex:{type:[Number,String],require:!0}},setup(o){const{round:a,formatValue:i}=ne.x,t=o,n=e.computed(()=>{const{data:y,activeIndex:M}=t;if(y.data&&y.data[M]){const l=y.data[M],u=[{label:"开",value:l[0]},{label:"高",value:l[3]},{label:"低",value:l[2]},{label:"收",value:l[1]}];l[4]!==null&&u.push({label:"额",value:i(l[4])});let g;return l[6]>0?g="red":l[6]<0&&(g="green"),u.push({label:"涨跌",value:`${a(l[6])}%`,color:g}),u}return[]}),r=e.computed(()=>{var l;const{data:y,activeIndex:M}=t;return((l=y==null?void 0:y.mainIndicator)==null?void 0:l.map(u=>({label:u.key,value:a(u.data[M]),color:u.color})))||[]});return(y,M)=>(e.openBlock(),e.createElementBlock("div",Et,[e.createVNode(Me,{data:n.value},null,8,["data"]),e.createVNode(Me,{data:r.value},null,8,["data"])]))}},St=G._export_sfc(_t,[["__scopeId","data-v-09ec31e8"]]),Ft={__name:"index",setup(o,{expose:a}){return a({handleKeyDown:(i,t)=>{let{startValue:n,endValue:r,maxIndex:y}=t;if(i.code==="ArrowLeft"){if(n===0)return;n=n-1,r=r-1}else if(i.code==="ArrowRight"){if(r===y)return;n=n+1,r=r+1}else if(i.code==="ArrowUp"){if(r-n<5)return;const M=Math.floor((r-n)/2)+1;n=n+M,r-n<5&&(n=r-4)}else if(i.code==="ArrowDown"){const M=Math.min(500,r-n);n=n-M-1}return{startValue:n,endValue:r}},mergeData:(i,t)=>({time:[...i.time,...t.time.slice(1)],data:[...i.data,...t.data.slice(1)],mainIndicator:i.mainIndicator.map((n,r)=>({...n,data:[...n.data,...t.mainIndicator[r].data.slice(1)]})),subIndicator:i.subIndicator.map((n,r)=>({...n,data:[...n.data,...t.subIndicator[r].data.slice(1)]}))}),getDataZoomInfoByTime:i=>{const{showStartTime:t,showEndTime:n,maxShowDays:r}=i;let y=-1,M=-1,l={};return i.time.forEach((u,g)=>{const p=u.split(" ")[0];l[p]=l[p]||0,l[p]+=1,y===-1&&new Date(u)>=new Date(t)&&(y=g),M===-1&&new Date(u)>=new Date(n)&&(M=g)}),M=M===-1?i.time.length-1:M,{startValue:y,endValue:M,maxValueSpan:Math.max(...Object.values(l))*r}}}),(i,t)=>null}};const Qt={__name:"index",props:{data:{type:Array,default:()=>[]}},emits:["change"],setup(o,{expose:a,emit:i}){let t,n,r=null;const y=i,M=o,l=e.ref();e.watch(()=>M.data,()=>{p()},{deep:!0}),e.onMounted(()=>{t=K.init(l.value),u(),p();let c=!0;n=new ResizeObserver(()=>{if(c){c=null;return}t.resize()}),n.observe(l.value)}),e.onUnmounted(()=>{t.off("datazoom"),t.dispose(),n.disconnect(),n=null});const u=()=>{t.on("datazoom",c=>{c.dataZoomId&&(clearTimeout(r),r=setTimeout(()=>{const{data:N}=M,{start:f,end:d}=c,v=Math.floor(f*N.length/100),b=d===100?N.length-1:Math.floor(d*N.length/100);g(v,b),clearTimeout(r)},100))})},g=(c,N)=>{const f=M.data;if(f.length===0)return;const d=f[c][0].split(" ")[0],v=f[N][0].split(" ")[0];y("change",{startTime:`${d} 00:00:00`,endTime:`${v} 24:00:00`})},p=()=>{const{data:c}=M;if(c.length===0)return;const N=c.map(d=>d[0].split(" ")[0]),f=c.map(d=>d[1]);t.setOption({grid:{height:0,left:"80px",right:"80px"},xAxis:{type:"category",data:N,show:!1},yAxis:{type:"value"},series:[{data:f,type:"line"}]},!0)};return a({resetSlide:(c,N,f)=>{let d=-1,v=-1;M.data.forEach((b,k)=>{d===-1&&b[0]===c?d=k:d===-1&&new Date(b[0])>new Date(c)&&(d=k-1),(v===-1&&b[0]===N||v===-1&&new Date(b[0])>new Date(N))&&(v=k)}),v=v===-1?M.data.length-1:v,t.setOption({dataZoom:[{show:!0,startValue:d,endValue:v,maxValueSpan:f,textStyle:{color:"#ccc"}},{type:"inside",startValue:d,endValue:v,maxValueSpan:f}]})},resize:()=>{t==null||t.resize()}}),(c,N)=>(e.openBlock(),e.createElementBlock("div",{class:"klineSlide",ref_key:"slideChartRef",ref:l},null,512))}},Bt=G._export_sfc(Qt,[["__scopeId","data-v-7a2f3dd0"]]),Pt={install(o){o.component("st-kline",vt),o.component("st-kline-sub-new",Ot),o.component("st-kline-tips-new",St),o.component("st-kline-slide-new",Bt),o.component("st-kline-utils-new",Ft)}};module.exports=Pt;
|