greeks-live-ui 0.0.21 → 0.0.22

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.
Files changed (318) hide show
  1. package/dist/index.css +1 -1
  2. package/dist/index.full.min.mjs +110 -110
  3. package/dist/index.full.min.mjs.map +1 -1
  4. package/dist/index.full.mjs +39 -39
  5. package/es/components/chart/index.d.ts +28 -28
  6. package/es/components/chart/src/chart.vue.d.ts +28 -28
  7. package/es/components/chart-panel/index.d.ts +10 -10
  8. package/es/components/chart-panel/src/chart-panel.vue.d.ts +10 -10
  9. package/es/components/demo/index.d.ts +28 -28
  10. package/es/components/demo/src/demo.vue.d.ts +28 -28
  11. package/es/components/panel-atm-iv/index.d.ts +2 -2
  12. package/es/components/panel-atm-iv/src/panel-atm-iv.vue.d.ts +2 -2
  13. package/es/components/panel-historical-delivery-price/index.d.ts +2 -2
  14. package/es/components/panel-historical-delivery-price/src/panel-historical-delivery-price.vue.d.ts +2 -2
  15. package/es/components/panel-implied-volatility-surface/index.d.ts +2 -2
  16. package/es/components/panel-implied-volatility-surface/src/panel-implied-volatility-surface.vue.d.ts +2 -2
  17. package/es/components/panel-iv-skew/index.d.ts +1 -1
  18. package/es/components/panel-iv-skew/src/panel-iv-skew.vue.d.ts +1 -1
  19. package/es/components/panel-max-pain-price/index.d.ts +2 -2
  20. package/es/components/panel-max-pain-price/src/panel-max-pain-price.vue.d.ts +2 -2
  21. package/es/components/panel-option-flow/index.d.ts +1 -1
  22. package/es/components/panel-option-flow/src/panel-option-flow.vue.d.ts +1 -1
  23. package/es/components/panel-option-open-interest/index.d.ts +1 -1
  24. package/es/components/panel-option-open-interest/src/panel-option-open-interest.vue.d.ts +1 -1
  25. package/es/components/panel-option-trade-volume/index.d.ts +1 -1
  26. package/es/components/panel-option-trade-volume/src/panel-option-trade-volume.vue.d.ts +1 -1
  27. package/es/components/panel-rv/index.d.ts +12 -12
  28. package/es/components/panel-rv/src/panel-rv.vue.d.ts +12 -12
  29. package/es/components/panel-skew/index.d.ts +2 -2
  30. package/es/components/panel-skew/src/panel-skew.vue.d.ts +2 -2
  31. package/es/components/panel-volatility-term-structure/index.d.ts +2 -2
  32. package/es/components/panel-volatility-term-structure/src/panel-volatility-term-structure.vue.d.ts +2 -2
  33. package/es/components/panel-vrp/index.d.ts +2 -2
  34. package/es/components/panel-vrp/src/panel-vrp.vue.d.ts +2 -2
  35. package/es/hooks/use-floating/index.d.ts +8 -8
  36. package/es/index.mjs +21 -21
  37. package/es/packages/components/button1/index.mjs +2 -2
  38. package/es/packages/components/button1/src/button1.mjs +72 -5
  39. package/es/packages/components/button1/src/button1.mjs.map +1 -1
  40. package/es/packages/components/button1/src/button12.mjs +5 -72
  41. package/es/packages/components/button1/src/button12.mjs.map +1 -1
  42. package/es/packages/components/chart-panel/index.mjs +2 -2
  43. package/es/packages/components/chart-panel/src/chart-panel.mjs +38 -273
  44. package/es/packages/components/chart-panel/src/chart-panel.mjs.map +1 -1
  45. package/es/packages/components/chart-panel/src/chart-panel2.mjs +273 -38
  46. package/es/packages/components/chart-panel/src/chart-panel2.mjs.map +1 -1
  47. package/es/packages/components/chart-table/index.mjs +2 -2
  48. package/es/packages/components/chart-table/src/chart-table.mjs +144 -15
  49. package/es/packages/components/chart-table/src/chart-table.mjs.map +1 -1
  50. package/es/packages/components/chart-table/src/chart-table2.mjs +15 -144
  51. package/es/packages/components/chart-table/src/chart-table2.mjs.map +1 -1
  52. package/es/packages/components/checkbox/index.mjs +2 -2
  53. package/es/packages/components/checkbox/src/checkbox.mjs +31 -5
  54. package/es/packages/components/checkbox/src/checkbox.mjs.map +1 -1
  55. package/es/packages/components/checkbox/src/checkbox2.mjs +5 -31
  56. package/es/packages/components/checkbox/src/checkbox2.mjs.map +1 -1
  57. package/es/packages/components/checkbox-group/index.mjs +2 -2
  58. package/es/packages/components/checkbox-group/src/checkbox-group.mjs +5 -31
  59. package/es/packages/components/checkbox-group/src/checkbox-group.mjs.map +1 -1
  60. package/es/packages/components/checkbox-group/src/checkbox-group2.mjs +31 -5
  61. package/es/packages/components/checkbox-group/src/checkbox-group2.mjs.map +1 -1
  62. package/es/packages/components/dropdown/index.mjs +2 -2
  63. package/es/packages/components/dropdown/src/dropdown.mjs +34 -5
  64. package/es/packages/components/dropdown/src/dropdown.mjs.map +1 -1
  65. package/es/packages/components/dropdown/src/dropdown2.mjs +5 -34
  66. package/es/packages/components/dropdown/src/dropdown2.mjs.map +1 -1
  67. package/es/packages/components/dropdown-button/index.mjs +2 -2
  68. package/es/packages/components/dropdown-button/src/dropdown-button.mjs +5 -39
  69. package/es/packages/components/dropdown-button/src/dropdown-button.mjs.map +1 -1
  70. package/es/packages/components/dropdown-button/src/dropdown-button2.mjs +39 -5
  71. package/es/packages/components/dropdown-button/src/dropdown-button2.mjs.map +1 -1
  72. package/es/packages/components/icon/index.mjs +2 -2
  73. package/es/packages/components/icon/src/icon.mjs +48 -15
  74. package/es/packages/components/icon/src/icon.mjs.map +1 -1
  75. package/es/packages/components/icon/src/icon2.mjs +15 -48
  76. package/es/packages/components/icon/src/icon2.mjs.map +1 -1
  77. package/es/packages/components/icon/src/iconfont/iconfont.mjs +1 -1
  78. package/es/packages/components/icon/src/iconfont/iconfont.mjs.map +1 -1
  79. package/es/packages/components/index.mjs +21 -21
  80. package/es/packages/components/input-number/index.mjs +2 -2
  81. package/es/packages/components/input-number/src/input-number.mjs +5 -31
  82. package/es/packages/components/input-number/src/input-number.mjs.map +1 -1
  83. package/es/packages/components/input-number/src/input-number2.mjs +31 -5
  84. package/es/packages/components/input-number/src/input-number2.mjs.map +1 -1
  85. package/es/packages/components/menu/index.mjs +2 -2
  86. package/es/packages/components/menu/src/menu.mjs +31 -5
  87. package/es/packages/components/menu/src/menu.mjs.map +1 -1
  88. package/es/packages/components/menu/src/menu2.mjs +5 -31
  89. package/es/packages/components/menu/src/menu2.mjs.map +1 -1
  90. package/es/packages/components/panel/index.mjs +2 -2
  91. package/es/packages/components/panel/src/panel.mjs +5 -82
  92. package/es/packages/components/panel/src/panel.mjs.map +1 -1
  93. package/es/packages/components/panel/src/panel2.mjs +82 -5
  94. package/es/packages/components/panel/src/panel2.mjs.map +1 -1
  95. package/es/packages/components/panel-atm-iv/index.mjs +2 -2
  96. package/es/packages/components/panel-atm-iv/src/panel-atm-iv.mjs +886 -21
  97. package/es/packages/components/panel-atm-iv/src/panel-atm-iv.mjs.map +1 -1
  98. package/es/packages/components/panel-atm-iv/src/panel-atm-iv2.mjs +21 -886
  99. package/es/packages/components/panel-atm-iv/src/panel-atm-iv2.mjs.map +1 -1
  100. package/es/packages/components/panel-historical-delivery-price/src/panel-historical-delivery-price2.mjs +3 -3
  101. package/es/packages/components/panel-historical-delivery-price/src/panel-historical-delivery-price2.mjs.map +1 -1
  102. package/es/packages/components/panel-implied-volatility-surface/src/panel-implied-volatility-surface2.mjs +3 -3
  103. package/es/packages/components/panel-implied-volatility-surface/src/panel-implied-volatility-surface2.mjs.map +1 -1
  104. package/es/packages/components/panel-iv-skew/index.mjs +2 -2
  105. package/es/packages/components/panel-iv-skew/src/panel-iv-skew.mjs +22 -398
  106. package/es/packages/components/panel-iv-skew/src/panel-iv-skew.mjs.map +1 -1
  107. package/es/packages/components/panel-iv-skew/src/panel-iv-skew2.mjs +398 -22
  108. package/es/packages/components/panel-iv-skew/src/panel-iv-skew2.mjs.map +1 -1
  109. package/es/packages/components/panel-max-pain-price/src/panel-max-pain-price.mjs +3 -3
  110. package/es/packages/components/panel-max-pain-price/src/panel-max-pain-price.mjs.map +1 -1
  111. package/es/packages/components/panel-option-flow/index.mjs +2 -2
  112. package/es/packages/components/panel-option-flow/src/panel-option-flow.mjs +430 -22
  113. package/es/packages/components/panel-option-flow/src/panel-option-flow.mjs.map +1 -1
  114. package/es/packages/components/panel-option-flow/src/panel-option-flow2.mjs +22 -430
  115. package/es/packages/components/panel-option-flow/src/panel-option-flow2.mjs.map +1 -1
  116. package/es/packages/components/panel-option-open-interest/src/panel-option-open-interest.mjs +3 -3
  117. package/es/packages/components/panel-option-open-interest/src/panel-option-open-interest.mjs.map +1 -1
  118. package/es/packages/components/panel-option-trade-volume/src/panel-option-trade-volume.mjs +3 -3
  119. package/es/packages/components/panel-option-trade-volume/src/panel-option-trade-volume.mjs.map +1 -1
  120. package/es/packages/components/panel-rv/src/panel-rv2.mjs +4 -4
  121. package/es/packages/components/panel-rv/src/panel-rv2.mjs.map +1 -1
  122. package/es/packages/components/panel-rv-calc/index.mjs +2 -2
  123. package/es/packages/components/panel-rv-calc/src/panel-rv-calc.mjs +507 -8
  124. package/es/packages/components/panel-rv-calc/src/panel-rv-calc.mjs.map +1 -1
  125. package/es/packages/components/panel-rv-calc/src/panel-rv-calc2.mjs +8 -507
  126. package/es/packages/components/panel-rv-calc/src/panel-rv-calc2.mjs.map +1 -1
  127. package/es/packages/components/panel-skew/index.mjs +2 -2
  128. package/es/packages/components/panel-skew/src/panel-skew.mjs +672 -21
  129. package/es/packages/components/panel-skew/src/panel-skew.mjs.map +1 -1
  130. package/es/packages/components/panel-skew/src/panel-skew2.mjs +21 -672
  131. package/es/packages/components/panel-skew/src/panel-skew2.mjs.map +1 -1
  132. package/es/packages/components/panel-volatility-term-structure/index.mjs +2 -2
  133. package/es/packages/components/panel-volatility-term-structure/src/panel-volatility-term-structure.mjs +365 -22
  134. package/es/packages/components/panel-volatility-term-structure/src/panel-volatility-term-structure.mjs.map +1 -1
  135. package/es/packages/components/panel-volatility-term-structure/src/panel-volatility-term-structure2.mjs +22 -365
  136. package/es/packages/components/panel-volatility-term-structure/src/panel-volatility-term-structure2.mjs.map +1 -1
  137. package/es/packages/components/panel-vrp/index.mjs +2 -2
  138. package/es/packages/components/panel-vrp/src/panel-vrp.mjs +413 -22
  139. package/es/packages/components/panel-vrp/src/panel-vrp.mjs.map +1 -1
  140. package/es/packages/components/panel-vrp/src/panel-vrp2.mjs +22 -413
  141. package/es/packages/components/panel-vrp/src/panel-vrp2.mjs.map +1 -1
  142. package/es/packages/components/radio/index.mjs +2 -2
  143. package/es/packages/components/radio/src/radio-button.mjs +1 -1
  144. package/es/packages/components/radio/src/radio-group.mjs +1 -1
  145. package/es/packages/components/radio/src/radio.mjs +5 -31
  146. package/es/packages/components/radio/src/radio.mjs.map +1 -1
  147. package/es/packages/components/radio/src/radio2.mjs +31 -5
  148. package/es/packages/components/radio/src/radio2.mjs.map +1 -1
  149. package/es/packages/components/radio-dropdown/index.mjs +2 -2
  150. package/es/packages/components/radio-dropdown/src/radio-dropdown.mjs +15 -204
  151. package/es/packages/components/radio-dropdown/src/radio-dropdown.mjs.map +1 -1
  152. package/es/packages/components/radio-dropdown/src/radio-dropdown2.mjs +204 -15
  153. package/es/packages/components/radio-dropdown/src/radio-dropdown2.mjs.map +1 -1
  154. package/es/packages/components/toggle-button/index.mjs +2 -2
  155. package/es/packages/components/toggle-button/src/toggle-button.mjs +12 -51
  156. package/es/packages/components/toggle-button/src/toggle-button.mjs.map +1 -1
  157. package/es/packages/components/toggle-button/src/toggle-button2.mjs +51 -12
  158. package/es/packages/components/toggle-button/src/toggle-button2.mjs.map +1 -1
  159. package/es/utils/vue/vnode.d.ts +6 -6
  160. package/lib/components/chart/index.d.ts +28 -28
  161. package/lib/components/chart/src/chart.vue.d.ts +28 -28
  162. package/lib/components/chart-panel/index.d.ts +10 -10
  163. package/lib/components/chart-panel/src/chart-panel.vue.d.ts +10 -10
  164. package/lib/components/demo/index.d.ts +28 -28
  165. package/lib/components/demo/src/demo.vue.d.ts +28 -28
  166. package/lib/components/panel-atm-iv/index.d.ts +2 -2
  167. package/lib/components/panel-atm-iv/src/panel-atm-iv.vue.d.ts +2 -2
  168. package/lib/components/panel-historical-delivery-price/index.d.ts +2 -2
  169. package/lib/components/panel-historical-delivery-price/src/panel-historical-delivery-price.vue.d.ts +2 -2
  170. package/lib/components/panel-implied-volatility-surface/index.d.ts +2 -2
  171. package/lib/components/panel-implied-volatility-surface/src/panel-implied-volatility-surface.vue.d.ts +2 -2
  172. package/lib/components/panel-iv-skew/index.d.ts +1 -1
  173. package/lib/components/panel-iv-skew/src/panel-iv-skew.vue.d.ts +1 -1
  174. package/lib/components/panel-max-pain-price/index.d.ts +2 -2
  175. package/lib/components/panel-max-pain-price/src/panel-max-pain-price.vue.d.ts +2 -2
  176. package/lib/components/panel-option-flow/index.d.ts +1 -1
  177. package/lib/components/panel-option-flow/src/panel-option-flow.vue.d.ts +1 -1
  178. package/lib/components/panel-option-open-interest/index.d.ts +1 -1
  179. package/lib/components/panel-option-open-interest/src/panel-option-open-interest.vue.d.ts +1 -1
  180. package/lib/components/panel-option-trade-volume/index.d.ts +1 -1
  181. package/lib/components/panel-option-trade-volume/src/panel-option-trade-volume.vue.d.ts +1 -1
  182. package/lib/components/panel-rv/index.d.ts +12 -12
  183. package/lib/components/panel-rv/src/panel-rv.vue.d.ts +12 -12
  184. package/lib/components/panel-skew/index.d.ts +2 -2
  185. package/lib/components/panel-skew/src/panel-skew.vue.d.ts +2 -2
  186. package/lib/components/panel-volatility-term-structure/index.d.ts +2 -2
  187. package/lib/components/panel-volatility-term-structure/src/panel-volatility-term-structure.vue.d.ts +2 -2
  188. package/lib/components/panel-vrp/index.d.ts +2 -2
  189. package/lib/components/panel-vrp/src/panel-vrp.vue.d.ts +2 -2
  190. package/lib/hooks/use-floating/index.d.ts +8 -8
  191. package/lib/index.js +21 -21
  192. package/lib/packages/components/button1/index.js +2 -2
  193. package/lib/packages/components/button1/src/button1.js +72 -6
  194. package/lib/packages/components/button1/src/button1.js.map +1 -1
  195. package/lib/packages/components/button1/src/button12.js +6 -72
  196. package/lib/packages/components/button1/src/button12.js.map +1 -1
  197. package/lib/packages/components/chart/index.js +2 -2
  198. package/lib/packages/components/chart/src/chart.js +89 -13
  199. package/lib/packages/components/chart/src/chart.js.map +1 -1
  200. package/lib/packages/components/chart/src/chart2.js +13 -89
  201. package/lib/packages/components/chart/src/chart2.js.map +1 -1
  202. package/lib/packages/components/chart-panel/index.js +2 -2
  203. package/lib/packages/components/chart-panel/src/chart-panel.js +39 -273
  204. package/lib/packages/components/chart-panel/src/chart-panel.js.map +1 -1
  205. package/lib/packages/components/chart-panel/src/chart-panel2.js +273 -39
  206. package/lib/packages/components/chart-panel/src/chart-panel2.js.map +1 -1
  207. package/lib/packages/components/chart-table/index.js +2 -2
  208. package/lib/packages/components/chart-table/src/chart-table.js +16 -144
  209. package/lib/packages/components/chart-table/src/chart-table.js.map +1 -1
  210. package/lib/packages/components/chart-table/src/chart-table2.js +144 -16
  211. package/lib/packages/components/chart-table/src/chart-table2.js.map +1 -1
  212. package/lib/packages/components/checkbox-group/index.js +2 -2
  213. package/lib/packages/components/checkbox-group/src/checkbox-group.js +6 -31
  214. package/lib/packages/components/checkbox-group/src/checkbox-group.js.map +1 -1
  215. package/lib/packages/components/checkbox-group/src/checkbox-group2.js +31 -6
  216. package/lib/packages/components/checkbox-group/src/checkbox-group2.js.map +1 -1
  217. package/lib/packages/components/dropdown-button/index.js +2 -2
  218. package/lib/packages/components/dropdown-button/src/dropdown-button.js +6 -39
  219. package/lib/packages/components/dropdown-button/src/dropdown-button.js.map +1 -1
  220. package/lib/packages/components/dropdown-button/src/dropdown-button2.js +39 -6
  221. package/lib/packages/components/dropdown-button/src/dropdown-button2.js.map +1 -1
  222. package/lib/packages/components/icon/index.js +2 -2
  223. package/lib/packages/components/icon/src/icon.js +16 -48
  224. package/lib/packages/components/icon/src/icon.js.map +1 -1
  225. package/lib/packages/components/icon/src/icon2.js +48 -16
  226. package/lib/packages/components/icon/src/icon2.js.map +1 -1
  227. package/lib/packages/components/icon/src/iconfont/iconfont.js +1 -1
  228. package/lib/packages/components/icon/src/iconfont/iconfont.js.map +1 -1
  229. package/lib/packages/components/index.js +21 -21
  230. package/lib/packages/components/input-number/index.js +2 -2
  231. package/lib/packages/components/input-number/src/input-number.js +6 -31
  232. package/lib/packages/components/input-number/src/input-number.js.map +1 -1
  233. package/lib/packages/components/input-number/src/input-number2.js +31 -6
  234. package/lib/packages/components/input-number/src/input-number2.js.map +1 -1
  235. package/lib/packages/components/menu/index.js +2 -2
  236. package/lib/packages/components/menu/src/menu.js +31 -6
  237. package/lib/packages/components/menu/src/menu.js.map +1 -1
  238. package/lib/packages/components/menu/src/menu2.js +6 -31
  239. package/lib/packages/components/menu/src/menu2.js.map +1 -1
  240. package/lib/packages/components/menu-item/index.js +2 -2
  241. package/lib/packages/components/menu-item/src/menu-item.js +6 -31
  242. package/lib/packages/components/menu-item/src/menu-item.js.map +1 -1
  243. package/lib/packages/components/menu-item/src/menu-item2.js +31 -6
  244. package/lib/packages/components/menu-item/src/menu-item2.js.map +1 -1
  245. package/lib/packages/components/page-turner/index.js +2 -2
  246. package/lib/packages/components/page-turner/src/page-turner.js +13 -67
  247. package/lib/packages/components/page-turner/src/page-turner.js.map +1 -1
  248. package/lib/packages/components/page-turner/src/page-turner2.js +67 -13
  249. package/lib/packages/components/page-turner/src/page-turner2.js.map +1 -1
  250. package/lib/packages/components/panel-atm-iv/index.js +2 -2
  251. package/lib/packages/components/panel-atm-iv/src/panel-atm-iv.js +22 -886
  252. package/lib/packages/components/panel-atm-iv/src/panel-atm-iv.js.map +1 -1
  253. package/lib/packages/components/panel-atm-iv/src/panel-atm-iv2.js +886 -22
  254. package/lib/packages/components/panel-atm-iv/src/panel-atm-iv2.js.map +1 -1
  255. package/lib/packages/components/panel-historical-delivery-price/index.js +2 -2
  256. package/lib/packages/components/panel-historical-delivery-price/src/panel-historical-delivery-price.js +412 -23
  257. package/lib/packages/components/panel-historical-delivery-price/src/panel-historical-delivery-price.js.map +1 -1
  258. package/lib/packages/components/panel-historical-delivery-price/src/panel-historical-delivery-price2.js +23 -412
  259. package/lib/packages/components/panel-historical-delivery-price/src/panel-historical-delivery-price2.js.map +1 -1
  260. package/lib/packages/components/panel-implied-volatility-surface/index.js +2 -2
  261. package/lib/packages/components/panel-implied-volatility-surface/src/panel-implied-volatility-surface.js +279 -23
  262. package/lib/packages/components/panel-implied-volatility-surface/src/panel-implied-volatility-surface.js.map +1 -1
  263. package/lib/packages/components/panel-implied-volatility-surface/src/panel-implied-volatility-surface2.js +23 -279
  264. package/lib/packages/components/panel-implied-volatility-surface/src/panel-implied-volatility-surface2.js.map +1 -1
  265. package/lib/packages/components/panel-iv-skew/src/panel-iv-skew2.js +3 -3
  266. package/lib/packages/components/panel-iv-skew/src/panel-iv-skew2.js.map +1 -1
  267. package/lib/packages/components/panel-max-pain-price/src/panel-max-pain-price.js +3 -3
  268. package/lib/packages/components/panel-max-pain-price/src/panel-max-pain-price.js.map +1 -1
  269. package/lib/packages/components/panel-option-flow/index.js +2 -2
  270. package/lib/packages/components/panel-option-flow/src/panel-option-flow.js +430 -23
  271. package/lib/packages/components/panel-option-flow/src/panel-option-flow.js.map +1 -1
  272. package/lib/packages/components/panel-option-flow/src/panel-option-flow2.js +23 -430
  273. package/lib/packages/components/panel-option-flow/src/panel-option-flow2.js.map +1 -1
  274. package/lib/packages/components/panel-option-open-interest/index.js +2 -2
  275. package/lib/packages/components/panel-option-open-interest/src/panel-option-open-interest.js +23 -378
  276. package/lib/packages/components/panel-option-open-interest/src/panel-option-open-interest.js.map +1 -1
  277. package/lib/packages/components/panel-option-open-interest/src/panel-option-open-interest2.js +378 -23
  278. package/lib/packages/components/panel-option-open-interest/src/panel-option-open-interest2.js.map +1 -1
  279. package/lib/packages/components/panel-option-trade-volume/src/panel-option-trade-volume.js +3 -3
  280. package/lib/packages/components/panel-option-trade-volume/src/panel-option-trade-volume.js.map +1 -1
  281. package/lib/packages/components/panel-rv/index.js +2 -2
  282. package/lib/packages/components/panel-rv/src/panel-rv.js +23 -741
  283. package/lib/packages/components/panel-rv/src/panel-rv.js.map +1 -1
  284. package/lib/packages/components/panel-rv/src/panel-rv2.js +741 -23
  285. package/lib/packages/components/panel-rv/src/panel-rv2.js.map +1 -1
  286. package/lib/packages/components/panel-rv-calc/index.js +2 -2
  287. package/lib/packages/components/panel-rv-calc/src/panel-rv-calc.js +507 -9
  288. package/lib/packages/components/panel-rv-calc/src/panel-rv-calc.js.map +1 -1
  289. package/lib/packages/components/panel-rv-calc/src/panel-rv-calc2.js +9 -507
  290. package/lib/packages/components/panel-rv-calc/src/panel-rv-calc2.js.map +1 -1
  291. package/lib/packages/components/panel-skew/src/panel-skew.js +3 -3
  292. package/lib/packages/components/panel-skew/src/panel-skew.js.map +1 -1
  293. package/lib/packages/components/panel-volatility-term-structure/src/panel-volatility-term-structure2.js +3 -3
  294. package/lib/packages/components/panel-volatility-term-structure/src/panel-volatility-term-structure2.js.map +1 -1
  295. package/lib/packages/components/panel-vrp/src/panel-vrp2.js +3 -3
  296. package/lib/packages/components/panel-vrp/src/panel-vrp2.js.map +1 -1
  297. package/lib/packages/components/spin/index.js +2 -2
  298. package/lib/packages/components/spin/src/spin.js +6 -31
  299. package/lib/packages/components/spin/src/spin.js.map +1 -1
  300. package/lib/packages/components/spin/src/spin2.js +31 -6
  301. package/lib/packages/components/spin/src/spin2.js.map +1 -1
  302. package/lib/packages/components/toggle-button/index.js +2 -2
  303. package/lib/packages/components/toggle-button/src/toggle-button.js +13 -51
  304. package/lib/packages/components/toggle-button/src/toggle-button.js.map +1 -1
  305. package/lib/packages/components/toggle-button/src/toggle-button2.js +51 -13
  306. package/lib/packages/components/toggle-button/src/toggle-button2.js.map +1 -1
  307. package/lib/packages/components/tooltip/index.js +2 -2
  308. package/lib/packages/components/tooltip/src/tooltip.js +8 -33
  309. package/lib/packages/components/tooltip/src/tooltip.js.map +1 -1
  310. package/lib/packages/components/tooltip/src/tooltip2.js +33 -8
  311. package/lib/packages/components/tooltip/src/tooltip2.js.map +1 -1
  312. package/lib/utils/vue/vnode.d.ts +6 -6
  313. package/package.json +1 -1
  314. package/theme-chalk/base.css +1 -1
  315. package/theme-chalk/g-antd.css +1 -1
  316. package/theme-chalk/index.css +1 -1
  317. package/theme-chalk/src/antd.scss +27 -2
  318. package/web-types.json +1 -1
@@ -1,13 +1,512 @@
1
- import '../../../utils/index.mjs';
2
- import { buildProps } from '../../../utils/vue/props/runtime.mjs';
1
+ import { Button } from 'ant-design-vue/es';
2
+ import { defineComponent, reactive, computed, watch, onMounted, resolveComponent, openBlock, createElementBlock, normalizeClass, unref, createVNode, withCtx, Fragment, toDisplayString, createCommentVNode, createElementVNode, renderList, createTextVNode } from 'vue';
3
+ import '../../../hooks/index.mjs';
4
+ import { panelRvCalcProps, panelRvCalcEmits } from './panel-rv-calc2.mjs';
5
+ import { getKlineHv, getKlineHvCalc } from '../../../utils/dataLab.mjs';
6
+ import { toPercentage, numberFormat } from '../../../utils/chartHelp.mjs';
7
+ import { message } from 'ant-design-vue';
8
+ import _export_sfc from '../../../../_virtual/plugin-vue_export-helper.mjs';
9
+ import { useNamespace } from '../../../hooks/use-namespace/index.mjs';
10
+ import { useDeviceType } from '../../../hooks/use-device-type/index.mjs';
11
+ import { useLocale } from '../../../hooks/use-locale/index.mjs';
3
12
 
4
- const panelRvCalcEmits = {};
5
- const panelRvCalcProps = buildProps({
6
- currency: {
7
- type: String,
8
- required: true
13
+ const _hoisted_1 = { key: 0 };
14
+ const _hoisted_2 = { key: 1 };
15
+ const _hoisted_3 = { class: "btn-box" };
16
+ const _hoisted_4 = { class: "item-box" };
17
+ const _hoisted_5 = { class: "input-label" };
18
+ const _hoisted_6 = { class: "item-box" };
19
+ const _hoisted_7 = { class: "input-label" };
20
+ const _hoisted_8 = { class: "input-calc" };
21
+ const _hoisted_9 = { class: "input-number-unit" };
22
+ const _hoisted_10 = { class: "input-number-unit" };
23
+ const _hoisted_11 = { class: "item-box" };
24
+ const _hoisted_12 = { class: "period-statement-text" };
25
+ const _hoisted_13 = { class: "result-box" };
26
+ const _hoisted_14 = { class: "result-item" };
27
+ const _hoisted_15 = { class: "result-label" };
28
+ const _hoisted_16 = {
29
+ key: 0,
30
+ class: "result-data"
31
+ };
32
+ const _hoisted_17 = {
33
+ key: 1,
34
+ class: "result-data"
35
+ };
36
+ const _hoisted_18 = { class: "result-item" };
37
+ const _hoisted_19 = { class: "result-label" };
38
+ const _hoisted_20 = {
39
+ key: 0,
40
+ class: "result-data"
41
+ };
42
+ const _hoisted_21 = {
43
+ key: 1,
44
+ class: "result-data"
45
+ };
46
+ const _hoisted_22 = { class: "result-item" };
47
+ const _hoisted_23 = { class: "result-label" };
48
+ const _hoisted_24 = {
49
+ key: 0,
50
+ class: "result-data"
51
+ };
52
+ const _hoisted_25 = {
53
+ key: 1,
54
+ class: "result-data"
55
+ };
56
+ const __default__ = {
57
+ name: "GPanelRvCalc"
58
+ };
59
+ const _sfc_main = /* @__PURE__ */ defineComponent({
60
+ ...__default__,
61
+ props: panelRvCalcProps,
62
+ emits: panelRvCalcEmits,
63
+ setup(__props, { emit: emits }) {
64
+ const props = __props;
65
+ const ns = useNamespace("panel-rv-calc");
66
+ const { isMobile } = useDeviceType();
67
+ const { t } = useLocale();
68
+ const columns = [
69
+ {
70
+ title: `${t("message.algorithm")}`,
71
+ key: "algorithm",
72
+ dataIndex: "algorithm"
73
+ },
74
+ {
75
+ title: `1 ${t("message.day")}`,
76
+ key: "one_day",
77
+ dataIndex: "one_day"
78
+ },
79
+ {
80
+ title: `3 ${t("message.day")}`,
81
+ key: "three_day",
82
+ dataIndex: "three_day"
83
+ },
84
+ {
85
+ title: `15 ${t("message.day")}`,
86
+ key: "fifteen_day",
87
+ dataIndex: "fifteen_day"
88
+ }
89
+ ];
90
+ const periodList = [
91
+ {
92
+ label: "1 " + t("message.minute"),
93
+ value: "1"
94
+ },
95
+ {
96
+ label: "3 " + t("message.minute"),
97
+ value: "3"
98
+ },
99
+ {
100
+ label: "5 " + t("message.minute"),
101
+ value: "5"
102
+ },
103
+ {
104
+ label: "10 " + t("message.minute"),
105
+ value: "10"
106
+ },
107
+ {
108
+ label: "15 " + t("message.minute"),
109
+ value: "15"
110
+ },
111
+ {
112
+ label: "30 " + t("message.minute"),
113
+ value: "30"
114
+ },
115
+ {
116
+ label: "1 " + t("message.hour"),
117
+ value: "60"
118
+ },
119
+ {
120
+ label: "2 " + t("message.hour"),
121
+ value: "120"
122
+ },
123
+ {
124
+ label: "3 " + t("message.hour"),
125
+ value: "180"
126
+ },
127
+ {
128
+ label: "6 " + t("message.hour"),
129
+ value: "360"
130
+ },
131
+ {
132
+ label: "12 " + t("message.hour"),
133
+ value: "720"
134
+ },
135
+ {
136
+ label: "1 " + t("message.day"),
137
+ value: "1D"
138
+ }
139
+ ];
140
+ const state = reactive({
141
+ tableLoading: false,
142
+ tableData: [],
143
+ calcLoading: false,
144
+ errorFlag: false,
145
+ errorMsg: "",
146
+ period: "1",
147
+ day: 0,
148
+ hour: 0,
149
+ minute: 0,
150
+ rate_hv: 0,
151
+ rate_parkinsonHv: 0,
152
+ rate_unbiasedHv: 0
153
+ });
154
+ const dayMax = computed(() => {
155
+ let allMinute = 0;
156
+ if ("1D" === state.period) {
157
+ allMinute = 1440 * 1e3;
158
+ } else {
159
+ allMinute = parseInt(state.period) * 1e3;
160
+ }
161
+ return Math.floor(allMinute / 1440);
162
+ });
163
+ const hourMax = computed(() => {
164
+ let day = state.day || 0;
165
+ let minute = state.minute || 0;
166
+ let subMinute = 0;
167
+ let allMinute = day * 24 * 60 + minute;
168
+ switch (state.period) {
169
+ case "1":
170
+ subMinute = 1e3 - allMinute;
171
+ break;
172
+ case "3":
173
+ subMinute = 3e3 - allMinute;
174
+ break;
175
+ case "5":
176
+ subMinute = 5e3 - allMinute;
177
+ break;
178
+ case "10":
179
+ subMinute = 1e4 - allMinute;
180
+ break;
181
+ case "15":
182
+ subMinute = 15e3 - allMinute;
183
+ break;
184
+ case "30":
185
+ subMinute = 3e4 - allMinute;
186
+ break;
187
+ case "60":
188
+ subMinute = 6e4 - allMinute;
189
+ break;
190
+ case "120":
191
+ subMinute = 12e4 - allMinute;
192
+ break;
193
+ case "180":
194
+ subMinute = 18e4 - allMinute;
195
+ break;
196
+ case "360":
197
+ subMinute = 36e4 - allMinute;
198
+ break;
199
+ case "720":
200
+ subMinute = 72e4 - allMinute;
201
+ break;
202
+ case "1D":
203
+ subMinute = 144e4 - allMinute;
204
+ break;
205
+ }
206
+ if (subMinute / 60 === 0)
207
+ return Math.floor(subMinute / 60);
208
+ return parseFloat((subMinute / 60).toFixed(1));
209
+ });
210
+ watch(
211
+ () => props.currency,
212
+ () => {
213
+ state.period = "";
214
+ state.day = 0;
215
+ state.hour = 0;
216
+ state.minute = 0;
217
+ state.rate_hv = 0;
218
+ state.rate_parkinsonHv = 0;
219
+ state.rate_unbiasedHv = 0;
220
+ fetchData();
221
+ },
222
+ { immediate: false }
223
+ );
224
+ onMounted(() => {
225
+ fetchData();
226
+ });
227
+ const fetchData = () => {
228
+ state.tableLoading = true;
229
+ getKlineHv({ currency: props.currency || "" }).then((res) => {
230
+ if (res && res.code === 200) {
231
+ const result = res.data || {};
232
+ let tableData = [];
233
+ tableData.push({
234
+ algorithm: "rv",
235
+ one_day: toPercentage(result["period1Day"].hv),
236
+ three_day: toPercentage(result["period3Days"].hv),
237
+ fifteen_day: toPercentage(result["period15Days"].hv)
238
+ });
239
+ tableData.push({
240
+ algorithm: "unbiasedHv",
241
+ one_day: toPercentage(result["period1Day"].unbiasedHv),
242
+ three_day: toPercentage(result["period3Days"].unbiasedHv),
243
+ fifteen_day: toPercentage(result["period15Days"].unbiasedHv)
244
+ });
245
+ tableData.push({
246
+ algorithm: "parkinsonHv",
247
+ one_day: toPercentage(result["period1Day"].parkinsonHv),
248
+ three_day: toPercentage(result["period3Days"].parkinsonHv),
249
+ fifteen_day: toPercentage(result["period15Days"].parkinsonHv)
250
+ });
251
+ state.tableData = tableData;
252
+ } else {
253
+ state.tableData = [];
254
+ }
255
+ }).finally(() => {
256
+ state.tableLoading = false;
257
+ });
258
+ };
259
+ const handleCalc = () => {
260
+ let periodMinute = 0;
261
+ if ("1D" === state.period) {
262
+ periodMinute = 1440;
263
+ } else {
264
+ periodMinute = parseInt(state.period);
265
+ }
266
+ let count = Math.floor((state.day * 24 + state.hour) * 60 / periodMinute);
267
+ if (count < 1) {
268
+ return;
269
+ }
270
+ if (count > 1e3) {
271
+ count = 1e3;
272
+ }
273
+ state.calcLoading = true;
274
+ state.errorMsg = "";
275
+ state.errorFlag = false;
276
+ getKlineHvCalc({
277
+ currency: props.currency || "",
278
+ count,
279
+ resolution: state.period
280
+ }).then((res) => {
281
+ var _a, _b, _c;
282
+ if (res.code === 0 && res.data) {
283
+ state.rate_hv = (_a = res == null ? void 0 : res.data) == null ? void 0 : _a.hv;
284
+ state.rate_parkinsonHv = (_b = res == null ? void 0 : res.data) == null ? void 0 : _b.parkinsonHv;
285
+ state.rate_unbiasedHv = (_c = res == null ? void 0 : res.data) == null ? void 0 : _c.unbiasedHv;
286
+ } else {
287
+ message.error(res.msg);
288
+ }
289
+ }).catch((err) => {
290
+ console.log({ err });
291
+ if (err.response.status === 429) {
292
+ state.errorMsg = t("message.tooManyRequest");
293
+ }
294
+ state.errorFlag = true;
295
+ }).finally(() => {
296
+ state.calcLoading = false;
297
+ });
298
+ };
299
+ return (_ctx, _cache) => {
300
+ const _component_g_table = resolveComponent("g-table");
301
+ const _component_g_select_option = resolveComponent("g-select-option");
302
+ const _component_g_select = resolveComponent("g-select");
303
+ const _component_g_input_number = resolveComponent("g-input-number");
304
+ const _component_a_button = Button;
305
+ return openBlock(), createElementBlock(
306
+ "div",
307
+ {
308
+ class: normalizeClass([unref(ns).b()])
309
+ },
310
+ [
311
+ createVNode(_component_g_table, {
312
+ columns,
313
+ "data-source": state.tableData,
314
+ loading: state.tableLoading,
315
+ size: "small",
316
+ pagination: false
317
+ }, {
318
+ bodyCell: withCtx(({ column, record }) => [
319
+ column.key ? (openBlock(), createElementBlock(
320
+ Fragment,
321
+ { key: 0 },
322
+ [
323
+ column.key === "algorithm" ? (openBlock(), createElementBlock(
324
+ "span",
325
+ _hoisted_1,
326
+ toDisplayString(unref(t)("message." + record[column.key])),
327
+ 1
328
+ )) : (openBlock(), createElementBlock(
329
+ "span",
330
+ _hoisted_2,
331
+ toDisplayString(record[column.key]),
332
+ 1
333
+ ))
334
+ ],
335
+ 64
336
+ )) : createCommentVNode("v-if", true)
337
+ ]),
338
+ _: 1
339
+ }, 8, ["data-source", "loading"]),
340
+ createElementVNode(
341
+ "div",
342
+ {
343
+ class: normalizeClass(["calc-hv-box", { "mobile-calc-hv-box": unref(isMobile) }])
344
+ },
345
+ [
346
+ createElementVNode("div", _hoisted_3, [
347
+ createElementVNode("div", _hoisted_4, [
348
+ createElementVNode(
349
+ "div",
350
+ _hoisted_5,
351
+ toDisplayString(unref(t)("message.klineResolution")) + toDisplayString(unref(t)("message.colon")),
352
+ 1
353
+ ),
354
+ createVNode(_component_g_select, {
355
+ value: state.period,
356
+ "onUpdate:value": _cache[0] || (_cache[0] = ($event) => state.period = $event),
357
+ size: "mini",
358
+ class: "input-select"
359
+ }, {
360
+ default: withCtx(() => [
361
+ (openBlock(), createElementBlock(
362
+ Fragment,
363
+ null,
364
+ renderList(periodList, (item) => {
365
+ return createVNode(_component_g_select_option, {
366
+ key: item.value,
367
+ label: item.label,
368
+ value: item.value
369
+ }, {
370
+ default: withCtx(() => [
371
+ createTextVNode(
372
+ toDisplayString(item.label),
373
+ 1
374
+ )
375
+ ]),
376
+ _: 2
377
+ }, 1032, ["label", "value"]);
378
+ }),
379
+ 64
380
+ ))
381
+ ]),
382
+ _: 1
383
+ }, 8, ["value"])
384
+ ]),
385
+ createElementVNode("div", _hoisted_6, [
386
+ createElementVNode(
387
+ "div",
388
+ _hoisted_7,
389
+ toDisplayString(unref(t)("message.period")) + toDisplayString(unref(t)("message.colon")),
390
+ 1
391
+ ),
392
+ createElementVNode("div", _hoisted_8, [
393
+ createElementVNode("div", null, [
394
+ createVNode(_component_g_input_number, {
395
+ value: state.day,
396
+ "onUpdate:value": _cache[1] || (_cache[1] = ($event) => state.day = $event),
397
+ min: 0,
398
+ max: unref(dayMax),
399
+ step: 1,
400
+ formatter: (value) => value || 0,
401
+ disabled: unref(dayMax) <= 0,
402
+ class: "input-number"
403
+ }, null, 8, ["value", "max", "formatter", "disabled"]),
404
+ createElementVNode(
405
+ "div",
406
+ _hoisted_9,
407
+ " \xA0\xA0" + toDisplayString(unref(t)("message.day")) + "\xA0\xA0 ",
408
+ 1
409
+ )
410
+ ]),
411
+ createElementVNode("div", null, [
412
+ createVNode(_component_g_input_number, {
413
+ value: state.hour,
414
+ "onUpdate:value": _cache[2] || (_cache[2] = ($event) => state.hour = $event),
415
+ min: 0,
416
+ max: unref(hourMax),
417
+ step: 1,
418
+ formatter: (value) => value || 0,
419
+ disabled: unref(hourMax) <= 0,
420
+ class: "input-number"
421
+ }, null, 8, ["value", "max", "formatter", "disabled"]),
422
+ createElementVNode(
423
+ "div",
424
+ _hoisted_10,
425
+ " \xA0\xA0" + toDisplayString(unref(t)("message.hour")),
426
+ 1
427
+ )
428
+ ])
429
+ ])
430
+ ]),
431
+ createElementVNode("div", _hoisted_11, [
432
+ createElementVNode(
433
+ "div",
434
+ _hoisted_12,
435
+ toDisplayString(unref(t)("message.kLinePeriodStatement")),
436
+ 1
437
+ ),
438
+ createVNode(_component_a_button, {
439
+ type: "primary",
440
+ size: "mini",
441
+ disabled: !state.tableData.length,
442
+ onClick: handleCalc,
443
+ loading: state.calcLoading,
444
+ class: "calc-btn"
445
+ }, {
446
+ default: withCtx(() => [
447
+ createTextVNode(
448
+ toDisplayString(unref(t)("message.calc")),
449
+ 1
450
+ )
451
+ ]),
452
+ _: 1
453
+ }, 8, ["disabled", "loading"])
454
+ ])
455
+ ]),
456
+ createElementVNode("div", _hoisted_13, [
457
+ createElementVNode("div", _hoisted_14, [
458
+ createElementVNode(
459
+ "div",
460
+ _hoisted_15,
461
+ toDisplayString(unref(t)("message.rv")) + toDisplayString(unref(t)("message.colon")),
462
+ 1
463
+ ),
464
+ state.errorFlag ? (openBlock(), createElementBlock("div", _hoisted_16, "-")) : (openBlock(), createElementBlock(
465
+ "div",
466
+ _hoisted_17,
467
+ toDisplayString(unref(numberFormat)(state.rate_hv * 100)) + "% ",
468
+ 1
469
+ ))
470
+ ]),
471
+ createElementVNode("div", _hoisted_18, [
472
+ createElementVNode(
473
+ "div",
474
+ _hoisted_19,
475
+ toDisplayString(unref(t)("message.unbiasedHv")) + toDisplayString(unref(t)("message.colon")),
476
+ 1
477
+ ),
478
+ state.errorFlag ? (openBlock(), createElementBlock("div", _hoisted_20, "-")) : (openBlock(), createElementBlock(
479
+ "div",
480
+ _hoisted_21,
481
+ toDisplayString(unref(numberFormat)(state.rate_unbiasedHv * 100)) + "% ",
482
+ 1
483
+ ))
484
+ ]),
485
+ createElementVNode("div", _hoisted_22, [
486
+ createElementVNode(
487
+ "div",
488
+ _hoisted_23,
489
+ toDisplayString(unref(t)("message.parkinsonHv")) + toDisplayString(unref(t)("message.colon")),
490
+ 1
491
+ ),
492
+ state.errorFlag ? (openBlock(), createElementBlock("div", _hoisted_24, "-")) : (openBlock(), createElementBlock(
493
+ "div",
494
+ _hoisted_25,
495
+ toDisplayString(unref(numberFormat)(state.rate_parkinsonHv * 100)) + "% ",
496
+ 1
497
+ ))
498
+ ])
499
+ ])
500
+ ],
501
+ 2
502
+ )
503
+ ],
504
+ 2
505
+ );
506
+ };
9
507
  }
10
508
  });
509
+ var PanelRvCalc = /* @__PURE__ */ _export_sfc(_sfc_main, [["__file", "/Users/luobowen/Desktop/greeks/greeks-live-ui/packages/components/panel-rv-calc/src/panel-rv-calc.vue"]]);
11
510
 
12
- export { panelRvCalcEmits, panelRvCalcProps };
511
+ export { PanelRvCalc as default };
13
512
  //# sourceMappingURL=panel-rv-calc.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"panel-rv-calc.mjs","sources":["../../../../../../../packages/components/panel-rv-calc/src/panel-rv-calc.ts"],"sourcesContent":["import { buildProps } from '@greeks-live-ui/utils';\nimport type PanelRvCalc from './panel-rv-calc.vue';\nimport type { ExtractPropTypes } from 'vue';\n\nexport const panelRvCalcEmits = {};\nexport type PanelRvCalcEmits = typeof panelRvCalcEmits;\nexport const panelRvCalcProps = buildProps({\n currency: {\n type: String,\n required: true,\n },\n});\nexport type PanelRvCalcProps = ExtractPropTypes<typeof panelRvCalcProps>;\nexport type PanelRvCalcInstance = InstanceType<typeof PanelRvCalc>;\n"],"names":[],"mappings":";;;AAIO,MAAM,mBAAmB,GAAC;AAE1B,MAAM,mBAAmB,UAAW,CAAA;AAAA,EACzC,QAAU,EAAA;AAAA,IACR,IAAM,EAAA,MAAA;AAAA,IACN,QAAU,EAAA,IAAA;AAAA,GACZ;AACF,CAAC;;;;"}
1
+ {"version":3,"file":"panel-rv-calc.mjs","sources":["../../../../../../../packages/components/panel-rv-calc/src/panel-rv-calc.vue"],"sourcesContent":["<template>\n <div :class=\"[ns.b()]\">\n <g-table\n :columns=\"columns\"\n :data-source=\"state.tableData\"\n :loading=\"state.tableLoading\"\n size=\"small\"\n :pagination=\"false\"\n >\n <template #bodyCell=\"{ column, record }\">\n <template v-if=\"column.key\">\n <span v-if=\"column.key === 'algorithm'\">\n {{ t('message.' + record[column.key]) }}\n </span>\n <span v-else>{{ record[column.key] }}</span>\n </template>\n </template>\n </g-table>\n\n <div class=\"calc-hv-box\" :class=\"{ 'mobile-calc-hv-box': isMobile }\">\n <div class=\"btn-box\">\n <div class=\"item-box\">\n <div class=\"input-label\">\n {{ t('message.klineResolution') }}{{ t('message.colon') }}\n </div>\n <g-select\n v-model:value=\"state.period\"\n size=\"mini\"\n class=\"input-select\"\n >\n <g-select-option\n v-for=\"item in periodList\"\n :key=\"item.value\"\n :label=\"item.label\"\n :value=\"item.value\"\n >\n {{ item.label }}\n </g-select-option>\n </g-select>\n </div>\n <div class=\"item-box\">\n <div class=\"input-label\">\n {{ t('message.period') }}{{ t('message.colon') }}\n </div>\n <div class=\"input-calc\">\n <div>\n <g-input-number\n v-model:value=\"state.day\"\n :min=\"0\"\n :max=\"dayMax\"\n :step=\"1\"\n :formatter=\"(value: number) => value || 0\"\n :disabled=\"dayMax <= 0\"\n class=\"input-number\"\n />\n <div class=\"input-number-unit\">\n &nbsp;&nbsp;{{ t('message.day') }}&nbsp;&nbsp;\n </div>\n </div>\n <div>\n <g-input-number\n v-model:value=\"state.hour\"\n :min=\"0\"\n :max=\"hourMax\"\n :step=\"1\"\n :formatter=\"(value: number) => value || 0\"\n :disabled=\"hourMax <= 0\"\n class=\"input-number\"\n />\n <div class=\"input-number-unit\">\n &nbsp;&nbsp;{{ t('message.hour') }}\n </div>\n </div>\n </div>\n </div>\n <div class=\"item-box\">\n <div class=\"period-statement-text\">\n {{ t('message.kLinePeriodStatement') }}\n </div>\n <a-button\n type=\"primary\"\n size=\"mini\"\n :disabled=\"!state.tableData.length\"\n @click=\"handleCalc\"\n :loading=\"state.calcLoading\"\n class=\"calc-btn\"\n >\n {{ t('message.calc') }}\n </a-button>\n </div>\n </div>\n <div class=\"result-box\">\n <div class=\"result-item\">\n <div class=\"result-label\">\n {{ t('message.rv') }}{{ t('message.colon') }}\n </div>\n <div class=\"result-data\" v-if=\"state.errorFlag\">-</div>\n <div class=\"result-data\" v-else>\n {{ numberFormat(state.rate_hv * 100) }}%\n </div>\n </div>\n <div class=\"result-item\">\n <div class=\"result-label\">\n {{ t('message.unbiasedHv') }}{{ t('message.colon') }}\n </div>\n <div class=\"result-data\" v-if=\"state.errorFlag\">-</div>\n <div class=\"result-data\" v-else>\n {{ numberFormat(state.rate_unbiasedHv * 100) }}%\n </div>\n </div>\n <div class=\"result-item\">\n <div class=\"result-label\">\n {{ t('message.parkinsonHv') }}{{ t('message.colon') }}\n </div>\n <div class=\"result-data\" v-if=\"state.errorFlag\">-</div>\n <div class=\"result-data\" v-else>\n {{ numberFormat(state.rate_parkinsonHv * 100) }}%\n </div>\n </div>\n </div>\n </div>\n </div>\n</template>\n<script lang=\"ts\" setup>\nimport { useDeviceType, useNamespace } from '@greeks-live-ui/hooks';\nimport { panelRvCalcEmits, panelRvCalcProps } from './panel-rv-calc';\nimport { computed, defineProps, onMounted, reactive, watch } from 'vue';\nimport { useLocale } from '@greeks-live-ui/hooks';\nimport {\n getKlineHv,\n getKlineHvCalc,\n IKlineHvRes,\n} from '@greeks-live-ui/utils/dataLab';\nimport { toPercentage, numberFormat } from '@greeks-live-ui/utils/chartHelp';\n\nimport { message } from 'ant-design-vue';\n\ndefineOptions({\n name: 'GPanelRvCalc',\n});\nconst ns = useNamespace('panel-rv-calc');\nconst props = defineProps(panelRvCalcProps);\nconst emits = defineEmits(panelRvCalcEmits);\nconst { isMobile } = useDeviceType();\n\nconst { t } = useLocale();\n\nconst columns = [\n {\n title: `${t('message.algorithm')}`,\n key: 'algorithm',\n dataIndex: 'algorithm',\n },\n {\n title: `1 ${t('message.day')}`,\n key: 'one_day',\n dataIndex: 'one_day',\n },\n {\n title: `3 ${t('message.day')}`,\n key: 'three_day',\n dataIndex: 'three_day',\n },\n {\n title: `15 ${t('message.day')}`,\n key: 'fifteen_day',\n dataIndex: 'fifteen_day',\n },\n];\n\nconst periodList = [\n {\n label: '1 ' + t('message.minute'),\n value: '1',\n },\n {\n label: '3 ' + t('message.minute'),\n value: '3',\n },\n {\n label: '5 ' + t('message.minute'),\n value: '5',\n },\n {\n label: '10 ' + t('message.minute'),\n value: '10',\n },\n {\n label: '15 ' + t('message.minute'),\n value: '15',\n },\n {\n label: '30 ' + t('message.minute'),\n value: '30',\n },\n {\n label: '1 ' + t('message.hour'),\n value: '60',\n },\n {\n label: '2 ' + t('message.hour'),\n value: '120',\n },\n {\n label: '3 ' + t('message.hour'),\n value: '180',\n },\n {\n label: '6 ' + t('message.hour'),\n value: '360',\n },\n {\n label: '12 ' + t('message.hour'),\n value: '720',\n },\n {\n label: '1 ' + t('message.day'),\n value: '1D',\n },\n];\n\nconst state = reactive({\n tableLoading: false,\n tableData: [] as Array<{\n algorithm: string;\n one_day: string;\n three_day: string;\n fifteen_day: string;\n }>,\n\n calcLoading: false,\n errorFlag: false,\n errorMsg: '',\n\n period: '1',\n day: 0,\n hour: 0,\n minute: 0,\n rate_hv: 0,\n rate_parkinsonHv: 0,\n rate_unbiasedHv: 0,\n});\n\nconst dayMax = computed(() => {\n let allMinute = 0;\n if ('1D' === state.period) {\n allMinute = 1440 * 1000;\n } else {\n allMinute = parseInt(state.period) * 1000;\n }\n return Math.floor(allMinute / 1440);\n});\nconst hourMax = computed(() => {\n let day = state.day || 0;\n let minute = state.minute || 0;\n\n let subMinute = 0;\n let allMinute = day * 24 * 60 + minute;\n\n switch (state.period) {\n case '1':\n subMinute = 1000 - allMinute;\n break;\n case '3':\n subMinute = 3000 - allMinute;\n break;\n case '5':\n subMinute = 5000 - allMinute;\n break;\n case '10':\n subMinute = 10000 - allMinute;\n break;\n case '15':\n subMinute = 15000 - allMinute;\n break;\n case '30':\n subMinute = 30000 - allMinute;\n break;\n case '60':\n subMinute = 60000 - allMinute;\n break;\n case '120':\n subMinute = 120000 - allMinute;\n break;\n case '180':\n subMinute = 180000 - allMinute;\n break;\n case '360':\n subMinute = 360000 - allMinute;\n break;\n case '720':\n subMinute = 720000 - allMinute;\n break;\n case '1D':\n subMinute = 1440000 - allMinute;\n break;\n }\n if (subMinute / 60 === 0) return Math.floor(subMinute / 60);\n return parseFloat((subMinute / 60).toFixed(1));\n});\n\nwatch(\n () => props.currency,\n () => {\n state.period = '';\n state.day = 0;\n state.hour = 0;\n state.minute = 0;\n state.rate_hv = 0;\n state.rate_parkinsonHv = 0;\n state.rate_unbiasedHv = 0;\n fetchData();\n },\n { immediate: false }\n);\n\nonMounted(() => {\n fetchData();\n});\n\nconst fetchData = () => {\n state.tableLoading = true;\n getKlineHv({ currency: props.currency || '' })\n .then((res) => {\n if (res && res.code === 200) {\n const result = res.data || ({} as IKlineHvRes);\n let tableData = [];\n tableData.push({\n algorithm: 'rv',\n one_day: toPercentage(result['period1Day'].hv),\n three_day: toPercentage(result['period3Days'].hv),\n fifteen_day: toPercentage(result['period15Days'].hv),\n });\n tableData.push({\n algorithm: 'unbiasedHv',\n one_day: toPercentage(result['period1Day'].unbiasedHv),\n three_day: toPercentage(result['period3Days'].unbiasedHv),\n fifteen_day: toPercentage(result['period15Days'].unbiasedHv),\n });\n tableData.push({\n algorithm: 'parkinsonHv',\n one_day: toPercentage(result['period1Day'].parkinsonHv),\n three_day: toPercentage(result['period3Days'].parkinsonHv),\n fifteen_day: toPercentage(result['period15Days'].parkinsonHv),\n });\n state.tableData = tableData;\n // Object.keys(result).forEach((key) => {\n // tableData.push({\n // algorithm: key,\n // one_day: toPercentage(result['period1Day'].hv),\n // three_day: toPercentage(result['period1Day'].hv)\n // })\n // })\n } else {\n state.tableData = [];\n }\n })\n .finally(() => {\n state.tableLoading = false;\n });\n};\n\nconst handleCalc = () => {\n let periodMinute = 0;\n if ('1D' === state.period) {\n periodMinute = 1440;\n } else {\n periodMinute = parseInt(state.period);\n }\n\n let count = Math.floor(((state.day * 24 + state.hour) * 60) / periodMinute);\n\n if (count < 1) {\n return;\n }\n if (count > 1000) {\n count = 1000;\n }\n\n state.calcLoading = true;\n state.errorMsg = '';\n state.errorFlag = false;\n\n getKlineHvCalc({\n currency: props.currency || '',\n count: count,\n resolution: state.period,\n })\n .then((res) => {\n if (res.code === 0 && res.data) {\n state.rate_hv = res?.data?.hv;\n state.rate_parkinsonHv = res?.data?.parkinsonHv;\n state.rate_unbiasedHv = res?.data?.unbiasedHv;\n } else {\n message.error((res as unknown as { msg: string }).msg);\n }\n })\n .catch((err) => {\n console.log({ err });\n if (err.response.status === 429) {\n state.errorMsg = t('message.tooManyRequest');\n }\n state.errorFlag = true;\n })\n .finally(() => {\n state.calcLoading = false;\n });\n};\n</script>\n"],"names":[],"mappings":"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"}