binbot-charts 0.5.9 → 0.6.0

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 (312) hide show
  1. package/dist/TVChartContainer.d.mts +45 -0
  2. package/dist/TVChartContainer.d.ts +45 -0
  3. package/dist/TVChartContainer.js +752 -0
  4. package/dist/TVChartContainer.js.map +1 -0
  5. package/dist/TVChartContainer.mjs +735 -0
  6. package/dist/TVChartContainer.mjs.map +1 -0
  7. package/package.json +4 -2
  8. package/dist/public/charting_library/bundles/0.d46f0b5e9380d7893de5.js +0 -112
  9. package/dist/public/charting_library/bundles/1.f02c87d35fbc8ffcaedb.js +0 -1
  10. package/dist/public/charting_library/bundles/10.21e665b7935d5bc4ba64.js +0 -322
  11. package/dist/public/charting_library/bundles/11.df012db70159a159d927.js +0 -1
  12. package/dist/public/charting_library/bundles/12.37750b21f6d8d35c6e6e.js +0 -1
  13. package/dist/public/charting_library/bundles/13.699469c73d09b7add56d.js +0 -1
  14. package/dist/public/charting_library/bundles/14.d1148b38d59df9ca5061.js +0 -1
  15. package/dist/public/charting_library/bundles/15.44f2acca80348a1da1a6.js +0 -89
  16. package/dist/public/charting_library/bundles/16.680572949c1125757d35.js +0 -1
  17. package/dist/public/charting_library/bundles/17.404a01f527881dfff424.js +0 -1
  18. package/dist/public/charting_library/bundles/18.78de69cfba051874e071.js +0 -120
  19. package/dist/public/charting_library/bundles/19.048f7f5d36fef428ca8d.js +0 -1
  20. package/dist/public/charting_library/bundles/2.60931787a6734697ac13.js +0 -118
  21. package/dist/public/charting_library/bundles/20.bc09ed47c5a62e1bc5c2.js +0 -128
  22. package/dist/public/charting_library/bundles/21.4c7b5cccb67a95e7e782.js +0 -1
  23. package/dist/public/charting_library/bundles/22.ca4300bcf614d8d5f4ab.js +0 -1
  24. package/dist/public/charting_library/bundles/23.256ba98e6a03200bdeba.js +0 -1
  25. package/dist/public/charting_library/bundles/24.bc4fafedb1730259aa10.js +0 -1
  26. package/dist/public/charting_library/bundles/25.7416db26ed3dcc87c05a.js +0 -611
  27. package/dist/public/charting_library/bundles/26.3aeec391d4e6e19989ee.js +0 -1
  28. package/dist/public/charting_library/bundles/27.e3ec08b1fb9df5f36ada.js +0 -69
  29. package/dist/public/charting_library/bundles/28.9f103042c27ea2df422f.js +0 -1
  30. package/dist/public/charting_library/bundles/29.3df8712b85d45a626aa0.js +0 -1
  31. package/dist/public/charting_library/bundles/3.76c398b01b707e5b251c.js +0 -1
  32. package/dist/public/charting_library/bundles/30.0b732ccb122d160480b6.js +0 -231
  33. package/dist/public/charting_library/bundles/31.8d2b7a538755fd1bb760.js +0 -166
  34. package/dist/public/charting_library/bundles/32.13ce02217cf8f9dd6d90.js +0 -121
  35. package/dist/public/charting_library/bundles/33.4d0dd1f7001fc02099bb.js +0 -1
  36. package/dist/public/charting_library/bundles/34.c9baa59add71a1e48fd2.js +0 -1
  37. package/dist/public/charting_library/bundles/35.ed9e360f9686ad3a9497.js +0 -1
  38. package/dist/public/charting_library/bundles/36.1882d1a8d312a0e193e9.js +0 -1
  39. package/dist/public/charting_library/bundles/37.90129e4904155350d6a1.js +0 -199
  40. package/dist/public/charting_library/bundles/38.41f3d509b61c8af47de3.js +0 -74
  41. package/dist/public/charting_library/bundles/39.bc1e9ce938fd5152831f.js +0 -1
  42. package/dist/public/charting_library/bundles/4.c7430b8d89cddcf51345.js +0 -1
  43. package/dist/public/charting_library/bundles/40.b59f41ba4cacbfb8acc3.js +0 -29
  44. package/dist/public/charting_library/bundles/41.a19b0ae5d68f855d2753.js +0 -1
  45. package/dist/public/charting_library/bundles/42.494986b0981f6d116fef.js +0 -1
  46. package/dist/public/charting_library/bundles/43.619c5ed4a592cc2965a4.js +0 -1
  47. package/dist/public/charting_library/bundles/44.0a7df307e4f397763ce8.js +0 -363
  48. package/dist/public/charting_library/bundles/45.db9dbd3e9bfeca5333da.js +0 -1
  49. package/dist/public/charting_library/bundles/46.f1d4cfe6d6f830b4a011.js +0 -114
  50. package/dist/public/charting_library/bundles/47.a3da3f774c90bd22798e.js +0 -95
  51. package/dist/public/charting_library/bundles/48.a93f9cb8b1bcc0e0f21e.js +0 -1
  52. package/dist/public/charting_library/bundles/49.bacd609f7eb77a4a4b68.js +0 -1
  53. package/dist/public/charting_library/bundles/5.5e97b270ab80d99e9085.js +0 -62
  54. package/dist/public/charting_library/bundles/50.b282667dddcb7fe1569a.js +0 -1
  55. package/dist/public/charting_library/bundles/51.11871c50951db825ace3.js +0 -1
  56. package/dist/public/charting_library/bundles/52.0379a85baae3ab43b15c.js +0 -1
  57. package/dist/public/charting_library/bundles/53.1d3ec98cfb8e19affb1c.js +0 -76
  58. package/dist/public/charting_library/bundles/54.bb5888ae55ea0a253a5b.js +0 -203
  59. package/dist/public/charting_library/bundles/55.3c35a629db21ab961f11.js +0 -303
  60. package/dist/public/charting_library/bundles/56.b3e69145c0fee614443d.js +0 -95
  61. package/dist/public/charting_library/bundles/57.236996ec416da4c1f683.js +0 -108
  62. package/dist/public/charting_library/bundles/58.7ffac4ba908b95705e63.js +0 -61
  63. package/dist/public/charting_library/bundles/59.397cb6699b74d64072a8.js +0 -1
  64. package/dist/public/charting_library/bundles/6.2d67b0ae77825dbd455d.js +0 -1
  65. package/dist/public/charting_library/bundles/60.6b5eced2ef8fa856be88.js +0 -1
  66. package/dist/public/charting_library/bundles/61.38a3040c925fadff7b64.js +0 -118
  67. package/dist/public/charting_library/bundles/62.63b309f5f8da9ca013b8.js +0 -61
  68. package/dist/public/charting_library/bundles/63.8255c7f5191bcafcee7c.js +0 -1
  69. package/dist/public/charting_library/bundles/64.ec4b4d03b28c77658dde.js +0 -1
  70. package/dist/public/charting_library/bundles/65.f895a78b4e04257983ff.js +0 -1
  71. package/dist/public/charting_library/bundles/66.2979e9b7c35e7bf03a37.js +0 -1
  72. package/dist/public/charting_library/bundles/67.25fd4b78c8c514988aeb.js +0 -1
  73. package/dist/public/charting_library/bundles/68.8b4124c875484d11fd94.js +0 -1
  74. package/dist/public/charting_library/bundles/69.43756a5c7477730eb0c4.js +0 -1
  75. package/dist/public/charting_library/bundles/7.2c7c4f8a49c6380227de.js +0 -68
  76. package/dist/public/charting_library/bundles/70.cb9d1bb5a00896c1bb97.js +0 -1
  77. package/dist/public/charting_library/bundles/71.6a9d0842f5e48f68399c.js +0 -1
  78. package/dist/public/charting_library/bundles/72.e3925aaf38d2c8997638.js +0 -1
  79. package/dist/public/charting_library/bundles/73.8ca1a096c5bdc2e5fb8a.js +0 -1
  80. package/dist/public/charting_library/bundles/74.34dcc0d3cd1bbfa5e951.js +0 -1
  81. package/dist/public/charting_library/bundles/75.1c9a3a6524248ddf88bf.js +0 -1
  82. package/dist/public/charting_library/bundles/76.5d20bed213399f326603.js +0 -1
  83. package/dist/public/charting_library/bundles/77.3e4ccccc7d3eb03c488f.js +0 -1
  84. package/dist/public/charting_library/bundles/78.1d1d47a915b06f1496fb.js +0 -1
  85. package/dist/public/charting_library/bundles/79.86e92b77f8cf32e6bc37.js +0 -1
  86. package/dist/public/charting_library/bundles/8.ffab20b86db484062268.js +0 -1
  87. package/dist/public/charting_library/bundles/80.b5bc6acec3b531a510a9.js +0 -1
  88. package/dist/public/charting_library/bundles/81.e6a1f76017a44b03480b.js +0 -1
  89. package/dist/public/charting_library/bundles/82.8c2919e6c8f54e36e9e6.js +0 -1
  90. package/dist/public/charting_library/bundles/83.f3e53bb5a5940e084955.js +0 -1
  91. package/dist/public/charting_library/bundles/84.8acc496b4deeeeefb5af.js +0 -1
  92. package/dist/public/charting_library/bundles/85.39c78fbeaabae306f343.js +0 -1
  93. package/dist/public/charting_library/bundles/86.4bbbb9e6262243419986.js +0 -1
  94. package/dist/public/charting_library/bundles/87.cf03fa0a76bfcadd157d.js +0 -1
  95. package/dist/public/charting_library/bundles/88.d1e3aec63ece25f6b8a9.js +0 -1
  96. package/dist/public/charting_library/bundles/89.d8aa43b4b9378722d572.js +0 -1
  97. package/dist/public/charting_library/bundles/9.84ecbc930e51cb26d06a.js +0 -1
  98. package/dist/public/charting_library/bundles/90.ce47bb68fc3fc88b5590.js +0 -1
  99. package/dist/public/charting_library/bundles/91.a9b79ef7ba0a62311a53.js +0 -1
  100. package/dist/public/charting_library/bundles/92.76d5ca7ebec10a1a7a12.js +0 -1
  101. package/dist/public/charting_library/bundles/93.6de56ef1975f4a31e542.js +0 -1
  102. package/dist/public/charting_library/bundles/94.231bea5fb12b806ef287.js +0 -1
  103. package/dist/public/charting_library/bundles/95.6f7da80aac5cf2bf77d6.js +0 -1
  104. package/dist/public/charting_library/bundles/96.43bb935eee30715afff7.js +0 -1
  105. package/dist/public/charting_library/bundles/add-compare-dialog.f980c19f222ff9cb8fe6.js +0 -263
  106. package/dist/public/charting_library/bundles/change-interval-dialog.e928f8dec65c9244cafe.js +0 -52
  107. package/dist/public/charting_library/bundles/chart-bottom-toolbar.b2e895a5fd3f204fb6b6.js +0 -399
  108. package/dist/public/charting_library/bundles/chart-event-hint.94e94e93f9fdee936b66.js +0 -97
  109. package/dist/public/charting_library/bundles/chart-screenshot-hint.14bfec43c52bc3d28f82.js +0 -49
  110. package/dist/public/charting_library/bundles/chart-widget-gui.226991e9f53aba124fc2.js +0 -1199
  111. package/dist/public/charting_library/bundles/compare-model.0e6bbdc5f5942c9a716e.js +0 -181
  112. package/dist/public/charting_library/bundles/context-menu-renderer.7f6f59270ef0f3afa2ed.js +0 -107
  113. package/dist/public/charting_library/bundles/currency-label-menu.a7a0c0e44d64b092f2cc.js +0 -131
  114. package/dist/public/charting_library/bundles/custom-intervals-add-dialog.bb64431fb1c6d852f9f1.js +0 -71
  115. package/dist/public/charting_library/bundles/drawing-toolbar.8cc497633535648562e7.js +0 -250
  116. package/dist/public/charting_library/bundles/export-data.c819cfa996e2815ff11d.js +0 -78
  117. package/dist/public/charting_library/bundles/floating-toolbars.d78a058b82ab09013aac.js +0 -508
  118. package/dist/public/charting_library/bundles/full-tooltips-popup.96fc751e06523b742440.js +0 -92
  119. package/dist/public/charting_library/bundles/general-chart-properties-dialog.b08948e0c90aebf07ebd.js +0 -85
  120. package/dist/public/charting_library/bundles/general-property-page.32bdfdbafbd81d9e83c6.js +0 -104
  121. package/dist/public/charting_library/bundles/go-to-date-dialog-impl.3481c4fcfde2f4d46426.js +0 -361
  122. package/dist/public/charting_library/bundles/hammerjs.e5489031ed611f47bf09.js +0 -224
  123. package/dist/public/charting_library/bundles/header-toolbar.4bff61e047f9b8379494.js +0 -228
  124. package/dist/public/charting_library/bundles/library.8b0dd8732414a2bcbcb1.js +0 -26194
  125. package/dist/public/charting_library/bundles/line-tools-icons.090f39d92664af3915a5.js +0 -60
  126. package/dist/public/charting_library/bundles/load-chart-dialog.6cc1a47b17698c0108cb.js +0 -101
  127. package/dist/public/charting_library/bundles/lollipop-tooltip-renderer.6705b971a2e73c26ecad.js +0 -116
  128. package/dist/public/charting_library/bundles/lt-pane-views.4d2ee6c5330cd3760eb0.js +0 -4029
  129. package/dist/public/charting_library/bundles/lt-property-pages-with-definitions.a5e8283e77afa66b5636.js +0 -735
  130. package/dist/public/charting_library/bundles/manage-drawings-dialog.1c0c3737002fa63fe6a6.js +0 -16
  131. package/dist/public/charting_library/bundles/moment.78e587a83a009ca48cda.js +0 -369
  132. package/dist/public/charting_library/bundles/new-confirm-inputs-dialog.00d79c2263e005170345.js +0 -130
  133. package/dist/public/charting_library/bundles/new-edit-object-dialog.0ed1c3834cfc0e834aed.js +0 -405
  134. package/dist/public/charting_library/bundles/object-tree-dialog.8e2b7eb9ba2f1dbfbc11.js +0 -1807
  135. package/dist/public/charting_library/bundles/react.9f2899b40ad0e104f6c9.js +0 -3715
  136. package/dist/public/charting_library/bundles/redux.43c3f6d214bcf2d1fbd1.js +0 -354
  137. package/dist/public/charting_library/bundles/restricted-toolset.08fefbae2bc0877b0ef2.js +0 -566
  138. package/dist/public/charting_library/bundles/runtime.dfe30490f666a6b5d4fe.js +0 -79
  139. package/dist/public/charting_library/bundles/series-icons-map.ec8043f64d8b06dbce29.js +0 -8
  140. package/dist/public/charting_library/bundles/series-pane-views.eefe35e1c508ac16c102.js +0 -52
  141. package/dist/public/charting_library/bundles/share-chart-to-social-utils.c225af2051efd23269e0.js +0 -5
  142. package/dist/public/charting_library/bundles/show-theme-save-dialog.f81ebf1b2ce08f4399fd.js +0 -11
  143. package/dist/public/charting_library/bundles/simple-dialog.bd79f02afd512f0f36dd.js +0 -189
  144. package/dist/public/charting_library/bundles/source-properties-editor.e858d44541ebb6f974a2.js +0 -39
  145. package/dist/public/charting_library/bundles/study-market.3efd7bf7bc6e6fc7db2d.js +0 -174
  146. package/dist/public/charting_library/bundles/study-pane-views.9a873dcf74adedf7600b.js +0 -204
  147. package/dist/public/charting_library/bundles/study-property-pages-with-definitions.ca4fc2ef5a4deff8c0bb.js +0 -125
  148. package/dist/public/charting_library/bundles/study-template-dialog.fe56a9893a3695e93531.js +0 -320
  149. package/dist/public/charting_library/bundles/symbol-info-dialog-impl.17daedab6f893acdeae4.js +0 -123
  150. package/dist/public/charting_library/bundles/symbol-search-dialog.fd3311eee8604f807c80.js +0 -35
  151. package/dist/public/charting_library/bundles/take-chart-image-impl.c0e6073dcac3041eecf2.js +0 -74
  152. package/dist/public/charting_library/bundles/vendors.6f5e0d8d267cb3e63ee0.js +0 -1304
  153. package/dist/public/charting_library/charting_library.cjs.js +0 -98
  154. package/dist/public/charting_library/charting_library.esm.js +0 -101
  155. package/dist/public/charting_library/charting_library.js +0 -99
  156. package/dist/public/charting_library/charting_library.standalone.js +0 -99
  157. package/dist/src/App.js +0 -81
  158. package/dist/src/charting_library/bundles/0.d46f0b5e9380d7893de5.js +0 -112
  159. package/dist/src/charting_library/bundles/1.f02c87d35fbc8ffcaedb.js +0 -1
  160. package/dist/src/charting_library/bundles/10.21e665b7935d5bc4ba64.js +0 -322
  161. package/dist/src/charting_library/bundles/11.df012db70159a159d927.js +0 -1
  162. package/dist/src/charting_library/bundles/12.37750b21f6d8d35c6e6e.js +0 -1
  163. package/dist/src/charting_library/bundles/13.699469c73d09b7add56d.js +0 -1
  164. package/dist/src/charting_library/bundles/14.d1148b38d59df9ca5061.js +0 -1
  165. package/dist/src/charting_library/bundles/15.44f2acca80348a1da1a6.js +0 -89
  166. package/dist/src/charting_library/bundles/16.680572949c1125757d35.js +0 -1
  167. package/dist/src/charting_library/bundles/17.404a01f527881dfff424.js +0 -1
  168. package/dist/src/charting_library/bundles/18.78de69cfba051874e071.js +0 -120
  169. package/dist/src/charting_library/bundles/19.048f7f5d36fef428ca8d.js +0 -1
  170. package/dist/src/charting_library/bundles/2.60931787a6734697ac13.js +0 -118
  171. package/dist/src/charting_library/bundles/20.bc09ed47c5a62e1bc5c2.js +0 -128
  172. package/dist/src/charting_library/bundles/21.4c7b5cccb67a95e7e782.js +0 -1
  173. package/dist/src/charting_library/bundles/22.ca4300bcf614d8d5f4ab.js +0 -1
  174. package/dist/src/charting_library/bundles/23.256ba98e6a03200bdeba.js +0 -1
  175. package/dist/src/charting_library/bundles/24.bc4fafedb1730259aa10.js +0 -1
  176. package/dist/src/charting_library/bundles/25.7416db26ed3dcc87c05a.js +0 -611
  177. package/dist/src/charting_library/bundles/26.3aeec391d4e6e19989ee.js +0 -1
  178. package/dist/src/charting_library/bundles/27.e3ec08b1fb9df5f36ada.js +0 -69
  179. package/dist/src/charting_library/bundles/28.9f103042c27ea2df422f.js +0 -1
  180. package/dist/src/charting_library/bundles/29.3df8712b85d45a626aa0.js +0 -1
  181. package/dist/src/charting_library/bundles/3.76c398b01b707e5b251c.js +0 -1
  182. package/dist/src/charting_library/bundles/30.0b732ccb122d160480b6.js +0 -231
  183. package/dist/src/charting_library/bundles/31.8d2b7a538755fd1bb760.js +0 -166
  184. package/dist/src/charting_library/bundles/32.13ce02217cf8f9dd6d90.js +0 -121
  185. package/dist/src/charting_library/bundles/33.4d0dd1f7001fc02099bb.js +0 -1
  186. package/dist/src/charting_library/bundles/34.c9baa59add71a1e48fd2.js +0 -1
  187. package/dist/src/charting_library/bundles/35.ed9e360f9686ad3a9497.js +0 -1
  188. package/dist/src/charting_library/bundles/36.1882d1a8d312a0e193e9.js +0 -1
  189. package/dist/src/charting_library/bundles/37.90129e4904155350d6a1.js +0 -199
  190. package/dist/src/charting_library/bundles/38.41f3d509b61c8af47de3.js +0 -74
  191. package/dist/src/charting_library/bundles/39.bc1e9ce938fd5152831f.js +0 -1
  192. package/dist/src/charting_library/bundles/4.c7430b8d89cddcf51345.js +0 -1
  193. package/dist/src/charting_library/bundles/40.b59f41ba4cacbfb8acc3.js +0 -29
  194. package/dist/src/charting_library/bundles/41.a19b0ae5d68f855d2753.js +0 -1
  195. package/dist/src/charting_library/bundles/42.494986b0981f6d116fef.js +0 -1
  196. package/dist/src/charting_library/bundles/43.619c5ed4a592cc2965a4.js +0 -1
  197. package/dist/src/charting_library/bundles/44.0a7df307e4f397763ce8.js +0 -363
  198. package/dist/src/charting_library/bundles/45.db9dbd3e9bfeca5333da.js +0 -1
  199. package/dist/src/charting_library/bundles/46.f1d4cfe6d6f830b4a011.js +0 -114
  200. package/dist/src/charting_library/bundles/47.a3da3f774c90bd22798e.js +0 -95
  201. package/dist/src/charting_library/bundles/48.a93f9cb8b1bcc0e0f21e.js +0 -1
  202. package/dist/src/charting_library/bundles/49.bacd609f7eb77a4a4b68.js +0 -1
  203. package/dist/src/charting_library/bundles/5.5e97b270ab80d99e9085.js +0 -62
  204. package/dist/src/charting_library/bundles/50.b282667dddcb7fe1569a.js +0 -1
  205. package/dist/src/charting_library/bundles/51.11871c50951db825ace3.js +0 -1
  206. package/dist/src/charting_library/bundles/52.0379a85baae3ab43b15c.js +0 -1
  207. package/dist/src/charting_library/bundles/53.1d3ec98cfb8e19affb1c.js +0 -76
  208. package/dist/src/charting_library/bundles/54.bb5888ae55ea0a253a5b.js +0 -203
  209. package/dist/src/charting_library/bundles/55.3c35a629db21ab961f11.js +0 -303
  210. package/dist/src/charting_library/bundles/56.b3e69145c0fee614443d.js +0 -95
  211. package/dist/src/charting_library/bundles/57.236996ec416da4c1f683.js +0 -108
  212. package/dist/src/charting_library/bundles/58.7ffac4ba908b95705e63.js +0 -61
  213. package/dist/src/charting_library/bundles/59.397cb6699b74d64072a8.js +0 -1
  214. package/dist/src/charting_library/bundles/6.2d67b0ae77825dbd455d.js +0 -1
  215. package/dist/src/charting_library/bundles/60.6b5eced2ef8fa856be88.js +0 -1
  216. package/dist/src/charting_library/bundles/61.38a3040c925fadff7b64.js +0 -118
  217. package/dist/src/charting_library/bundles/62.63b309f5f8da9ca013b8.js +0 -61
  218. package/dist/src/charting_library/bundles/63.8255c7f5191bcafcee7c.js +0 -1
  219. package/dist/src/charting_library/bundles/64.ec4b4d03b28c77658dde.js +0 -1
  220. package/dist/src/charting_library/bundles/65.f895a78b4e04257983ff.js +0 -1
  221. package/dist/src/charting_library/bundles/66.2979e9b7c35e7bf03a37.js +0 -1
  222. package/dist/src/charting_library/bundles/67.25fd4b78c8c514988aeb.js +0 -1
  223. package/dist/src/charting_library/bundles/68.8b4124c875484d11fd94.js +0 -1
  224. package/dist/src/charting_library/bundles/69.43756a5c7477730eb0c4.js +0 -1
  225. package/dist/src/charting_library/bundles/7.2c7c4f8a49c6380227de.js +0 -68
  226. package/dist/src/charting_library/bundles/70.cb9d1bb5a00896c1bb97.js +0 -1
  227. package/dist/src/charting_library/bundles/71.6a9d0842f5e48f68399c.js +0 -1
  228. package/dist/src/charting_library/bundles/72.e3925aaf38d2c8997638.js +0 -1
  229. package/dist/src/charting_library/bundles/73.8ca1a096c5bdc2e5fb8a.js +0 -1
  230. package/dist/src/charting_library/bundles/74.34dcc0d3cd1bbfa5e951.js +0 -1
  231. package/dist/src/charting_library/bundles/75.1c9a3a6524248ddf88bf.js +0 -1
  232. package/dist/src/charting_library/bundles/76.5d20bed213399f326603.js +0 -1
  233. package/dist/src/charting_library/bundles/77.3e4ccccc7d3eb03c488f.js +0 -1
  234. package/dist/src/charting_library/bundles/78.1d1d47a915b06f1496fb.js +0 -1
  235. package/dist/src/charting_library/bundles/79.86e92b77f8cf32e6bc37.js +0 -1
  236. package/dist/src/charting_library/bundles/8.ffab20b86db484062268.js +0 -1
  237. package/dist/src/charting_library/bundles/80.b5bc6acec3b531a510a9.js +0 -1
  238. package/dist/src/charting_library/bundles/81.e6a1f76017a44b03480b.js +0 -1
  239. package/dist/src/charting_library/bundles/82.8c2919e6c8f54e36e9e6.js +0 -1
  240. package/dist/src/charting_library/bundles/83.f3e53bb5a5940e084955.js +0 -1
  241. package/dist/src/charting_library/bundles/84.8acc496b4deeeeefb5af.js +0 -1
  242. package/dist/src/charting_library/bundles/85.39c78fbeaabae306f343.js +0 -1
  243. package/dist/src/charting_library/bundles/86.4bbbb9e6262243419986.js +0 -1
  244. package/dist/src/charting_library/bundles/87.cf03fa0a76bfcadd157d.js +0 -1
  245. package/dist/src/charting_library/bundles/88.d1e3aec63ece25f6b8a9.js +0 -1
  246. package/dist/src/charting_library/bundles/89.d8aa43b4b9378722d572.js +0 -1
  247. package/dist/src/charting_library/bundles/9.84ecbc930e51cb26d06a.js +0 -1
  248. package/dist/src/charting_library/bundles/90.ce47bb68fc3fc88b5590.js +0 -1
  249. package/dist/src/charting_library/bundles/91.a9b79ef7ba0a62311a53.js +0 -1
  250. package/dist/src/charting_library/bundles/92.76d5ca7ebec10a1a7a12.js +0 -1
  251. package/dist/src/charting_library/bundles/93.6de56ef1975f4a31e542.js +0 -1
  252. package/dist/src/charting_library/bundles/94.231bea5fb12b806ef287.js +0 -1
  253. package/dist/src/charting_library/bundles/95.6f7da80aac5cf2bf77d6.js +0 -1
  254. package/dist/src/charting_library/bundles/96.43bb935eee30715afff7.js +0 -1
  255. package/dist/src/charting_library/bundles/add-compare-dialog.f980c19f222ff9cb8fe6.js +0 -263
  256. package/dist/src/charting_library/bundles/change-interval-dialog.e928f8dec65c9244cafe.js +0 -52
  257. package/dist/src/charting_library/bundles/chart-bottom-toolbar.b2e895a5fd3f204fb6b6.js +0 -399
  258. package/dist/src/charting_library/bundles/chart-event-hint.94e94e93f9fdee936b66.js +0 -97
  259. package/dist/src/charting_library/bundles/chart-screenshot-hint.14bfec43c52bc3d28f82.js +0 -49
  260. package/dist/src/charting_library/bundles/chart-widget-gui.226991e9f53aba124fc2.js +0 -1199
  261. package/dist/src/charting_library/bundles/compare-model.0e6bbdc5f5942c9a716e.js +0 -181
  262. package/dist/src/charting_library/bundles/context-menu-renderer.7f6f59270ef0f3afa2ed.js +0 -107
  263. package/dist/src/charting_library/bundles/currency-label-menu.a7a0c0e44d64b092f2cc.js +0 -131
  264. package/dist/src/charting_library/bundles/custom-intervals-add-dialog.bb64431fb1c6d852f9f1.js +0 -71
  265. package/dist/src/charting_library/bundles/drawing-toolbar.8cc497633535648562e7.js +0 -250
  266. package/dist/src/charting_library/bundles/export-data.c819cfa996e2815ff11d.js +0 -78
  267. package/dist/src/charting_library/bundles/floating-toolbars.d78a058b82ab09013aac.js +0 -508
  268. package/dist/src/charting_library/bundles/full-tooltips-popup.96fc751e06523b742440.js +0 -92
  269. package/dist/src/charting_library/bundles/general-chart-properties-dialog.b08948e0c90aebf07ebd.js +0 -85
  270. package/dist/src/charting_library/bundles/general-property-page.32bdfdbafbd81d9e83c6.js +0 -104
  271. package/dist/src/charting_library/bundles/go-to-date-dialog-impl.3481c4fcfde2f4d46426.js +0 -361
  272. package/dist/src/charting_library/bundles/hammerjs.e5489031ed611f47bf09.js +0 -224
  273. package/dist/src/charting_library/bundles/header-toolbar.4bff61e047f9b8379494.js +0 -228
  274. package/dist/src/charting_library/bundles/library.8b0dd8732414a2bcbcb1.js +0 -26194
  275. package/dist/src/charting_library/bundles/line-tools-icons.090f39d92664af3915a5.js +0 -60
  276. package/dist/src/charting_library/bundles/load-chart-dialog.6cc1a47b17698c0108cb.js +0 -101
  277. package/dist/src/charting_library/bundles/lollipop-tooltip-renderer.6705b971a2e73c26ecad.js +0 -116
  278. package/dist/src/charting_library/bundles/lt-pane-views.4d2ee6c5330cd3760eb0.js +0 -4029
  279. package/dist/src/charting_library/bundles/lt-property-pages-with-definitions.a5e8283e77afa66b5636.js +0 -735
  280. package/dist/src/charting_library/bundles/manage-drawings-dialog.1c0c3737002fa63fe6a6.js +0 -16
  281. package/dist/src/charting_library/bundles/moment.78e587a83a009ca48cda.js +0 -369
  282. package/dist/src/charting_library/bundles/new-confirm-inputs-dialog.00d79c2263e005170345.js +0 -130
  283. package/dist/src/charting_library/bundles/new-edit-object-dialog.0ed1c3834cfc0e834aed.js +0 -405
  284. package/dist/src/charting_library/bundles/object-tree-dialog.8e2b7eb9ba2f1dbfbc11.js +0 -1807
  285. package/dist/src/charting_library/bundles/react.9f2899b40ad0e104f6c9.js +0 -3715
  286. package/dist/src/charting_library/bundles/redux.43c3f6d214bcf2d1fbd1.js +0 -354
  287. package/dist/src/charting_library/bundles/restricted-toolset.08fefbae2bc0877b0ef2.js +0 -566
  288. package/dist/src/charting_library/bundles/runtime.dfe30490f666a6b5d4fe.js +0 -79
  289. package/dist/src/charting_library/bundles/series-icons-map.ec8043f64d8b06dbce29.js +0 -8
  290. package/dist/src/charting_library/bundles/series-pane-views.eefe35e1c508ac16c102.js +0 -52
  291. package/dist/src/charting_library/bundles/share-chart-to-social-utils.c225af2051efd23269e0.js +0 -5
  292. package/dist/src/charting_library/bundles/show-theme-save-dialog.f81ebf1b2ce08f4399fd.js +0 -11
  293. package/dist/src/charting_library/bundles/simple-dialog.bd79f02afd512f0f36dd.js +0 -189
  294. package/dist/src/charting_library/bundles/source-properties-editor.e858d44541ebb6f974a2.js +0 -39
  295. package/dist/src/charting_library/bundles/study-market.3efd7bf7bc6e6fc7db2d.js +0 -174
  296. package/dist/src/charting_library/bundles/study-pane-views.9a873dcf74adedf7600b.js +0 -204
  297. package/dist/src/charting_library/bundles/study-property-pages-with-definitions.ca4fc2ef5a4deff8c0bb.js +0 -125
  298. package/dist/src/charting_library/bundles/study-template-dialog.fe56a9893a3695e93531.js +0 -320
  299. package/dist/src/charting_library/bundles/symbol-info-dialog-impl.17daedab6f893acdeae4.js +0 -123
  300. package/dist/src/charting_library/bundles/symbol-search-dialog.fd3311eee8604f807c80.js +0 -35
  301. package/dist/src/charting_library/bundles/take-chart-image-impl.c0e6073dcac3041eecf2.js +0 -74
  302. package/dist/src/charting_library/bundles/vendors.6f5e0d8d267cb3e63ee0.js +0 -1304
  303. package/dist/src/charting_library/charting_library.cjs.js +0 -98
  304. package/dist/src/charting_library/charting_library.esm.js +0 -101
  305. package/dist/src/charting_library/charting_library.js +0 -99
  306. package/dist/src/charting_library/charting_library.standalone.js +0 -515
  307. package/dist/src/components/TVChartContainer.js +0 -122
  308. package/dist/src/components/datafeed.js +0 -199
  309. package/dist/src/components/helpers.js +0 -58
  310. package/dist/src/components/index.js +0 -7
  311. package/dist/src/components/streaming.js +0 -92
  312. package/dist/src/index.js +0 -14
@@ -1,1199 +0,0 @@
1
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
2
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
3
- return new (P || (P = Promise))(function (resolve, reject) {
4
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
5
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
6
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
7
- step((generator = generator.apply(thisArg, _arguments || [])).next());
8
- });
9
- };
10
- (window.webpackJsonp = window.webpackJsonp || []).push([["chart-widget-gui"], { "+xKI": function (e, t) { e.exports = '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 7 7" width="7" height="7"><path fill="currentColor" d="M3.5 7L7 4H4V0H3V4H0L3.5 7Z"/></svg>'; }, "/NcV": function (e, t) { e.exports = '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 14 14" width="14" height="14"><path fill="none" stroke="currentColor" stroke-linecap="round" stroke-width="2" d="M5.5 1.5l5 5.5-5 5.5"/></svg>'; }, "0jws": function (e, t, s) { e.exports = { blockHidden: "blockHidden-xPfK7aM7", "pane-button": "pane-button-xPfK7aM7" }; }, "1INk": function (e, t) { e.exports = '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 7 7" width="7" height="7"><path fill="currentColor" d="M3.5 0L0 3h3v4h1V3h3L3.5 0z"/></svg>'; }, "1Wf8": function (e, t) { e.exports = '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 18 18" width="18" height="18"><path fill="currentColor" d="M3.5 2.8a.7.7 0 0 0-.7.7V6H1.2V3.5a2.3 2.3 0 0 1 2.3-2.3h11a2.3 2.3 0 0 1 2.3 2.3V6h-1.6V3.5a.7.7 0 0 0-.7-.7h-11z" class="bracket-up"/><path fill="currentColor" d="M3.5 15.2a.7.7 0 0 1-.7-.7V12H1.2v2.5a2.3 2.3 0 0 0 2.3 2.3h11a2.3 2.3 0 0 0 2.3-2.3V12h-1.6v2.5a.7.7 0 0 1-.7.7h-11z" class="bracket-down"/></svg>'; }, "2CEX": function (e, t) { e.exports = '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 22" width="24" height="22" fill="none"><path fill="currentColor" fill-rule="evenodd" clip-rule="evenodd" d="M6 6.5A2.5 2.5 0 0 1 8.5 4H10v1H8.5C7.67 5 7 5.67 7 6.5v1.15a3.5 3.5 0 0 1-1.93 3.13l-.45.22.45.22A3.5 3.5 0 0 1 7 14.35v1.15c0 .83.67 1.5 1.5 1.5H10v1H8.5A2.5 2.5 0 0 1 6 15.5v-1.15a2.5 2.5 0 0 0-1.38-2.23l-1.34-.67a.5.5 0 0 1 0-.9l1.34-.67A2.5 2.5 0 0 0 6 7.65V6.5zM15.5 5H14V4h1.5A2.5 2.5 0 0 1 18 6.5v1.15c0 .94.54 1.8 1.38 2.23l1.34.67a.5.5 0 0 1 0 .9l-1.34.67A2.5 2.5 0 0 0 18 14.35v1.15a2.5 2.5 0 0 1-2.5 2.5H14v-1h1.5c.83 0 1.5-.67 1.5-1.5v-1.15a3.5 3.5 0 0 1 1.93-3.13l.45-.22-.45-.22A3.5 3.5 0 0 1 17 7.65V6.5c0-.83-.67-1.5-1.5-1.5z"/></svg>'; }, "4nwx": function (e, t, s) {
11
- "use strict";
12
- s.r(t), s.d(t, "monthsFullNames", (function () { return l; })), s.d(t, "monthsShortNames", (function () { return n; })), s.d(t, "weekDaysFullNames", (function () { return a; })), s.d(t, "weekDaysShortNames", (function () { return r; })), s.d(t, "weekDaysMiniNames", (function () { return d; }));
13
- var i = s("YFKU"), o = s("99ZO");
14
- const l = { [o.Months.JANUARY]: Object(i.t)("January"), [o.Months.FEBRUARY]: Object(i.t)("February"), [o.Months.MARCH]: Object(i.t)("March"), [o.Months.APRIL]: Object(i.t)("April"), [o.Months.MAY]: Object(i.t)("May"), [o.Months.JUNE]: Object(i.t)("June"), [o.Months.JULY]: Object(i.t)("July"), [o.Months.AUGUST]: Object(i.t)("August"), [o.Months.SEPTEMBER]: Object(i.t)("September"), [o.Months.OCTOBER]: Object(i.t)("October"), [o.Months.NOVEMBER]: Object(i.t)("November"), [o.Months.DECEMBER]: Object(i.t)("December") }, n = { [o.Months.JANUARY]: Object(i.t)("Jan"), [o.Months.FEBRUARY]: Object(i.t)("Feb"), [o.Months.MARCH]: Object(i.t)("Mar"), [o.Months.APRIL]: Object(i.t)("Apr"), [o.Months.MAY]: Object(i.t)("May", { context: "short" }), [o.Months.JUNE]: Object(i.t)("Jun"), [o.Months.JULY]: Object(i.t)("Jul"),
15
- [o.Months.AUGUST]: Object(i.t)("Aug"), [o.Months.SEPTEMBER]: Object(i.t)("Sep"), [o.Months.OCTOBER]: Object(i.t)("Oct"), [o.Months.NOVEMBER]: Object(i.t)("Nov"), [o.Months.DECEMBER]: Object(i.t)("Dec") }, a = { [o.WeekDays.SUNDAY]: Object(i.t)("Sunday"), [o.WeekDays.MONDAY]: Object(i.t)("Monday"), [o.WeekDays.TUESDAY]: Object(i.t)("Tuesday"), [o.WeekDays.WEDNESDAY]: Object(i.t)("Wednesday"), [o.WeekDays.THURSDAY]: Object(i.t)("Thursday"), [o.WeekDays.FRIDAY]: Object(i.t)("Friday"), [o.WeekDays.SATURDAY]: Object(i.t)("Saturday") }, r = { [o.WeekDays.SUNDAY]: Object(i.t)("Sun"), [o.WeekDays.MONDAY]: Object(i.t)("Mon"), [o.WeekDays.TUESDAY]: Object(i.t)("Tue"), [o.WeekDays.WEDNESDAY]: Object(i.t)("Wed"), [o.WeekDays.THURSDAY]: Object(i.t)("Thu"), [o.WeekDays.FRIDAY]: Object(i.t)("Fri"), [o.WeekDays.SATURDAY]: Object(i.t)("Sat") }, d = { [o.WeekDays.SUNDAY]: Object(i.t)("Su", { context: "day_of_week" }), [o.WeekDays.MONDAY]: Object(i.t)("Mo", { context: "day_of_week" }), [o.WeekDays.TUESDAY]: Object(i.t)("Tu", { context: "day_of_week" }), [o.WeekDays.WEDNESDAY]: Object(i.t)("We", { context: "day_of_week" }), [o.WeekDays.THURSDAY]: Object(i.t)("Th", { context: "day_of_week" }), [o.WeekDays.FRIDAY]: Object(i.t)("Fr", { context: "day_of_week" }), [o.WeekDays.SATURDAY]: Object(i.t)("Sa", { context: "day_of_week" }) };
16
- }, "5Alx": function (e, t, s) {
17
- e.exports = { marginlegendhoriz: "4px", legend: "legend-2KhwsEwE", item: "item-2KhwsEwE", withAction: "withAction-2KhwsEwE", selected: "selected-2KhwsEwE", last: "last-2KhwsEwE", text: "text-2KhwsEwE", noWrapWrapper: "noWrapWrapper-2KhwsEwE", noWrap: "noWrap-2KhwsEwE", series: "series-2KhwsEwE", valuesAdditionalWrapper: "valuesAdditionalWrapper-2KhwsEwE", valueItem: "valueItem-2KhwsEwE", valueTitle: "valueTitle-2KhwsEwE", valueValue: "valueValue-2KhwsEwE", valuesWrapper: "valuesWrapper-2KhwsEwE", directionColumn: "directionColumn-2KhwsEwE", titleWrapper: "titleWrapper-2KhwsEwE", button: "button-2KhwsEwE", statusesWrapper: "statusesWrapper-2KhwsEwE", buttonsWrapper: "buttonsWrapper-2KhwsEwE", buttons: "buttons-2KhwsEwE", noActions: "noActions-2KhwsEwE", title: "title-2KhwsEwE", title2nd: "title2nd-2KhwsEwE", disabled: "disabled-2KhwsEwE", disabledOnInterval: "disabledOnInterval-2KhwsEwE", withCustomTextColor: "withCustomTextColor-2KhwsEwE", study: "study-2KhwsEwE", title1st: "title1st-2KhwsEwE", hideValues: "hideValues-2KhwsEwE", has5Buttons: "has5Buttons-2KhwsEwE", stayInHoveredMode: "stayInHoveredMode-2KhwsEwE", withTail: "withTail-2KhwsEwE", loading: "loading-2KhwsEwE", loader: "loader-2KhwsEwE", withDot: "withDot-2KhwsEwE", title3rd: "title3rd-2KhwsEwE", title4th: "title4th-2KhwsEwE", miniHidden2Title: "miniHidden2Title-2KhwsEwE", microHidden2Title: "microHidden2Title-2KhwsEwE", hidden3Title: "hidden3Title-2KhwsEwE", flagged: "flagged-2KhwsEwE", medium: "medium-2KhwsEwE", minimized: "minimized-2KhwsEwE", micro: "micro-2KhwsEwE", onlyOneButtonCanBeStick: "onlyOneButtonCanBeStick-2KhwsEwE", touchMode: "touchMode-2KhwsEwE", buttonIcon: "buttonIcon-2KhwsEwE", flag: "flag-2KhwsEwE", invisibleHover: "invisibleHover-2KhwsEwE", eye: "eye-2KhwsEwE", hiddenLoading: "hiddenLoading-2KhwsEwE", "eye-animation": "eye-animation-2KhwsEwE", markerContainer: "markerContainer-2KhwsEwE",
18
- flagWrapper: "flagWrapper-2KhwsEwE", sourcesWrapper: "sourcesWrapper-2KhwsEwE", newCollapser: "newCollapser-2KhwsEwE", sources: "sources-2KhwsEwE", toggler: "toggler-2KhwsEwE pane-button-xPfK7aM7", counter: "counter-2KhwsEwE", iconArrow: "iconArrow-2KhwsEwE", objectTree: "objectTree-2KhwsEwE", onlyOneSourceShown: "onlyOneSourceShown-2KhwsEwE", closed: "closed-2KhwsEwE", objectsTreeCanBeShown: "objectsTreeCanBeShown-2KhwsEwE" };
19
- }, "61S9": function (e, t) { e.exports = '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 22" width="30" height="24" fill="none"><g fill="currentColor" fill-rule="evenodd" clip-rule="evenodd" class="normal-eye"><path d="M18 7.91C16.7 6.5 14.7 5 12 5S7.3 6.49 6 7.91C6 7.91 4 10 4 11s2 3.09 2 3.09C7.3 15.5 9.3 17 12 17s4.7-1.49 6-2.91c0 0 2-2.09 2-3.09s-2-3.09-2-3.09zm-11.26 5.5C7.94 14.74 9.7 16 12 16s4.05-1.26 5.25-2.59c0 0 1.75-1.91 1.75-2.41 0-.5-1.75-2.41-1.75-2.41C16.05 7.26 14.3 6 12 6S7.95 7.26 6.74 8.59C6.74 8.59 5 10.5 5 11c0 .5 1.74 2.41 1.74 2.41z"/><path d="M12 13a2 2 0 1 0 0-4 2 2 0 0 0 0 4zm0 1a3 3 0 1 0 0-6 3 3 0 0 0 0 6z"/></g><g fill="currentColor" fill-rule="evenodd" clip-rule="evenodd" class="crossed-eye"><path d="M8.85 16.27c.92.44 1.97.73 3.15.73 2.7 0 4.7-1.49 6-2.91 0 0 2-2.09 2-3.09s-2-3.09-2-3.09l-.39-.4-.7.7.34.38S19 10.5 19 11c0 .5-1.75 2.41-1.75 2.41C16.05 14.74 14.3 16 12 16c-.88 0-1.68-.18-2.4-.48l-.75.75zM7.1 13.78l-.36-.37S5 11.5 5 11c0-.5 1.74-2.41 1.74-2.41C7.94 7.26 9.7 6 12 6c.88 0 1.68.18 2.4.48l.75-.75A7.17 7.17 0 0 0 12 5C9.3 5 7.3 6.49 6 7.91 6 7.91 4 10 4 11s2 3.09 2 3.09l.39.4.7-.7z"/><path d="M11.22 13.9a3 3 0 0 0 3.68-3.68l-.9.9A2 2 0 0 1 12.13 13l-.9.9zm.66-4.9A2 2 0 0 0 10 10.88l-.9.9a3 3 0 0 1 3.68-3.68l-.9.9zM5.65 16.65l12-12 .7.7-12 12-.7-.7z"/></g><g class="loading-eye"><path fill="currentColor" fill-rule="evenodd" clip-rule="evenodd" d="M18 7.91C16.7 6.5 14.7 5 12 5S7.3 6.49 6 7.91C6 7.91 4 10 4 11s2 3.09 2 3.09C7.3 15.5 9.3 17 12 17s4.7-1.49 6-2.91c0 0 2-2.09 2-3.09s-2-3.09-2-3.09zm-11.26 5.5C7.94 14.74 9.7 16 12 16s4.05-1.26 5.25-2.59c0 0 1.75-1.91 1.75-2.41 0-.5-1.75-2.41-1.75-2.41C16.05 7.26 14.3 6 12 6S7.95 7.26 6.74 8.59C6.74 8.59 5 10.5 5 11c0 .5 1.74 2.41 1.74 2.41z"/></g><g class="animated-loading-eye"><path stroke="currentColor" stroke-linecap="round" d="M14.5 11a2.5 2.5 0 1 0-2.5 2.5"/></g></svg>'; }, "6dGu": function (e, t) { e.exports = '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 15 15" width="15" height="15"><path fill="currentColor" d="M3.5 5.58c.24-.28.65-.3.92-.07L7.5 8.14l3.08-2.63a.65.65 0 1 1 .84.98L7.5 9.86 3.58 6.49a.65.65 0 0 1-.07-.91z"/></svg>'; }, "94TV": function (e, t) { e.exports = '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 14 14" width="14" height="14"><path fill="none" stroke="currentColor" stroke-linecap="round" stroke-width="2" d="M6.5 1.5l5 5.5-5 5.5M3 4l2.5 3L3 10"/></svg>'; }, "956S": function (e, t) {
20
- e.exports = '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 18 18" width="18" height="18"><circle fill="currentColor" cx="15" cy="9" r="1.5"/><circle fill="currentColor" cx="9" cy="9" r="1.5"/><circle fill="currentColor" cx="3" cy="9" r="1.5"/></svg>';
21
- }, "9Crk": function (e, t) { e.exports = '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 18 18" width="18" height="18"><path fill="currentColor" d="M13.4 5.9c-.41 1.62-1.16 2.43-2.25 2.43-.52 0-1.25-.15-2.2-.45-.93-.3-1.58-.45-1.96-.45-.55 0-.98.3-1.27.9H4.66c.1-.67.36-1.24.76-1.71.4-.48.86-.72 1.4-.72.56 0 1.31.16 2.27.46.95.3 1.62.45 2.01.45.64 0 1.06-.3 1.27-.9h1.03zm0 3.87c-.41 1.62-1.16 2.43-2.25 2.43-.52 0-1.25-.15-2.2-.45-.93-.3-1.58-.46-1.96-.46-.55 0-.98.3-1.27.9H4.66c.1-.67.36-1.24.76-1.7.4-.48.86-.72 1.4-.72.56 0 1.31.15 2.27.46.95.3 1.62.44 2.01.44.64 0 1.06-.3 1.27-.9h1.03z"/></svg>'; }, "9lPX": function (e, t) { e.exports = '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 18 18" width="18" height="18"><rect width="10" height="4" fill="currentColor" rx="2" x="4" y="7"/></svg>'; }, AH3n: function (e, t) { e.exports = '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 18 18" width="18" height="18"><path fill="currentColor" d="M13 12.78V5.22a.3.3 0 0 0-.51-.2L8.7 8.78a.3.3 0 0 0 0 .42L12.5 13a.3.3 0 0 0 .51-.21zM8 12.78V5.22a.3.3 0 0 0-.51-.2L3.7 8.78a.3.3 0 0 0 0 .42L7.5 13a.3.3 0 0 0 .51-.21z"/></svg>'; }, AvGy: function (e, t, s) {
22
- "use strict";
23
- s.d(t, "a", (function () { return o; }));
24
- var i = s("qFKp");
25
- const o = i.CheckMobile.any();
26
- }, D8x7: function (e, t) { e.exports = '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 22" width="24" height="22" fill="none"><path fill="currentColor" fill-rule="evenodd" clip-rule="evenodd" d="M17.35 6.35l-10 10-.7-.7 10-10 .7.7z"/><path fill="currentColor" fill-rule="evenodd" clip-rule="evenodd" d="M6.65 6.35l10 10 .7-.7-10-10-.7.7z"/></svg>'; }, EV8o: function (e, t, s) {
27
- "use strict";
28
- s.d(t, "a", (function () { return o; }));
29
- var i = s("ogJP");
30
- function o(e, t, s, o, l) { const n = document.createElement("div"); n.className = t, n.classList.toggle(o, !e.visible.value()), Object.assign(n.dataset, e.dataset), void 0 !== e.className && n.classList.add(e.className), void 0 !== e.title && (n.classList.add("apply-common-tooltip"), n.setAttribute("title", e.title.value()), void 0 !== e.hotKeyTitle && (n.dataset.tooltipHotkey = e.hotKeyTitle)), n.addEventListener("touchend", e.action), n.addEventListener("mousedown", t => { 0 === t.button && e.action(t); }); const a = document.createElement("div"); a.classList.add(s); const r = e.iconMap.get(l) || ""; return Object(i.isString)(r) ? a.innerHTML = r : a.appendChild(r), n.appendChild(a), n; }
31
- }, G2LI: function (e, t) { e.exports = '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 18 18" width="18" height="18"><path fill="currentColor" d="M12.57 5.5h-.07a3.5 3.5 0 1 0 .07 7A4.98 4.98 0 0 1 4 9a5 5 0 0 1 8.57-3.5z"/></svg>'; }, GOhO: function (e, t, s) {
32
- "use strict";
33
- var i = s("+DwS");
34
- s("tc+8");
35
- var o = s("m/cY");
36
- function l(e, ...t) { const s = () => e(...t.map(e => e.value())), i = Object(o.a)(s()), l = () => i.setValue(s()), n = {}; for (const e of t)
37
- e.subscribe(n, l); return i.destroy = () => { t.forEach(e => e.unsubscribeAll(n)); }, i; }
38
- s.d(t, "b", (function () { return i.a; })), s.d(t, "a", (function () { return l; }));
39
- }, "Gp/h": function (e, t) { e.exports = '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 18 18" width="18" height="18"><path fill="currentColor" d="M12.22 11.78A3.47 3.47 0 0 0 9 6.98a3.48 3.48 0 0 0-3.22 4.8 6.97 6.97 0 0 1 6.44 0zM4.18 9.83L2.1 9.28l.33-1.24 2.07.55-.33 1.24zM6.38 6.36l-.9-1.94 1.16-.54.9 1.94-1.16.54zM10.46 5.82l.9-1.94 1.16.54-.9 1.94-1.16-.54zM13.49 8.6l2.07-.56.33 1.24-2.07.55-.33-1.24z"/></svg>'; }, Jjb7: function (e, t) { e.exports = '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 18 18" width="18" height="18"><path stroke="currentColor" stroke-linecap="round" stroke-width="2" d="M13.5 4.5l-9 9M4.5 4.5l9 9"/></svg>'; }, JmzL: function (e, t) { e.exports = '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 18 18" width="18" height="18"><path fill="currentColor" fill-rule="evenodd" clip-rule="evenodd" d="M9 4c-.79 0-1.38.7-1.25 1.48l.67 4.03a.59.59 0 0 0 1.16 0l.67-4.03A1.27 1.27 0 0 0 9 4zm0 8a1 1 0 1 0 0 2 1 1 0 0 0 0-2z"/></svg>'; }, LIcf: function (e, t) { e.exports = '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 18 18" width="18" height="18"><path fill="currentColor" d="M7.9 5.87v2.17h3.07v1.4H7.9v2.8h4.22v1.46H6.25V4.4h5.94v1.47H7.9z"/></svg>'; }, LVLx: function (e, t, s) {
40
- "use strict";
41
- (e => { function t(e) { return e instanceof Node ? e : document.createTextNode(String(e)); } for (const s of e) {
42
- if (s.hasOwnProperty("append"))
43
- return;
44
- Object.defineProperty(s, "append", { configurable: !0, enumerable: !0, writable: !0, value: function (...e) { if (1 === e.length)
45
- return void this.appendChild(t(e[0])); const s = document.createDocumentFragment(); for (const i of e)
46
- s.appendChild(t(i)); this.appendChild(s); } });
47
- } })([Element.prototype, Document.prototype, DocumentFragment.prototype]);
48
- }, M3mX: function (e, t) { e.exports = '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 18 18" width="18" height="18"><path fill="currentColor" fill-rule="evenodd" clip-rule="evenodd" d="M9 2.5c-1.06 0-1.88.93-1.75 1.98l.63 5.03a1.13 1.13 0 0 0 2.25 0l.62-5.03A1.77 1.77 0 0 0 9 2.5zm0 10a1.5 1.5 0 1 0 0 3 1.5 1.5 0 0 0 0-3z"/></svg>'; }, MQEA: function (e, t) { e.exports = '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 9 7" width="9" height="7"><path fill="currentColor" d="M8.5 3.5L5 0v3H0v1h5v3z"/></svg>'; }, MjtL: function (e, t) { e.exports = '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 14 14" width="14" height="14"><path fill="none" stroke="currentColor" stroke-linecap="round" stroke-width="2" d="M8.5 1.5L3.5 7l5 5.5"/></svg>'; }, "MyT/": function (e, t) { e.exports = '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 18 18" width="18" height="18" fill="none"><circle fill="currentColor" cx="9" cy="9" r="4"/></svg>'; }, OJSF: function (e, t) { e.exports = '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 15 15" width="15" height="15"><path fill="currentColor" d="M11.65 12.35l-9-9 .7-.7 9 9-.7.7z"/><path fill="currentColor" d="M2.65 11.65l9-9 .7.7-9 9-.7-.7z"/></svg>'; }, OcaN: function (e, t, s) {
49
- e.exports = { loader: "loader-1pOK1lo2", loaderItem: "loaderItem-1pOK1lo2", "loader-animation": "loader-animation-1pOK1lo2",
50
- touchMode: "touchMode-1pOK1lo2" };
51
- }, PXSR: function (e, t) { e.exports = '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 15 15" width="15" height="15"><path fill="currentColor" d="M11.83 6.12l-.66.76L8 4.1V12H7V4.1L3.83 6.88l-.66-.76L7.5 2.34l4.33 3.78z"/></svg>'; }, QEZv: function (e, t) { e.exports = '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 15 15" width="15" height="15"><path fill="currentColor" d="M11.83 8.88l-.66-.76L8 10.9V3H7v7.9L3.83 8.12l-.66.76 4.33 3.78 4.33-3.78z"/></svg>'; }, QkND: function (e, t) { e.exports = '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 18 18" width="18" height="18"><path fill="currentColor" fill-rule="evenodd" clip-rule="evenodd" d="M13.29 4.8h-.09a4.2 4.2 0 1 0 .09 8.4 6 6 0 1 1 0-8.4z"/></svg>'; }, R5JZ: function (e, t, s) {
52
- "use strict";
53
- function i(e, t, s, i, o) { function l(o) { if (e > o.timeStamp)
54
- return; const l = o.target; void 0 !== s && null !== t && null !== l && l.ownerDocument === i && (t.contains(l) || s(o)); } return o.click && i.addEventListener("click", l, !1), o.mouseDown && i.addEventListener("mousedown", l, !1), o.touchEnd && i.addEventListener("touchend", l, !1), o.touchStart && i.addEventListener("touchstart", l, !1), () => { i.removeEventListener("click", l, !1), i.removeEventListener("mousedown", l, !1), i.removeEventListener("touchend", l, !1), i.removeEventListener("touchstart", l, !1); }; }
55
- s.d(t, "a", (function () { return i; }));
56
- }, RgOa: function (e, t) { e.exports = '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 14 14" width="14" height="14" fill="none"><path fill="currentColor" fill-rule="evenodd" d="M8.63 1.08a2.04 2.04 0 0 1-3.26 0c-.51.14-1 .35-1.45.6l.01.2A2.05 2.05 0 0 1 1.7 3.93a6.1 6.1 0 0 0-.6 1.45 2.04 2.04 0 0 1 0 3.26c.13.51.34 1 .6 1.45l.2-.01a2.05 2.05 0 0 1 2.03 2.24c.45.26.94.47 1.45.6a2.04 2.04 0 0 1 3.26 0c.51-.13 1-.34 1.45-.6l-.01-.2a2.05 2.05 0 0 1 2.24-2.03c.26-.45.47-.94.6-1.45a2.04 2.04 0 0 1 0-3.26 6.1 6.1 0 0 0-.6-1.45 2.05 2.05 0 0 1-2.23-2.23 6.1 6.1 0 0 0-1.45-.6zM7.84.42c.17-.24.43-.47.72-.4.84.18 1.62.5 2.32.96.23.15.26.48.22.76a1.03 1.03 0 0 0 1.16 1.16c.28-.04.6-.01.76.22.45.7.78 1.48.97 2.32.06.29-.17.55-.41.72a1.02 1.02 0 0 0 0 1.68c.24.17.47.43.4.72a7.12 7.12 0 0 1-.96 2.32c-.15.23-.48.26-.76.22a1.03 1.03 0 0 0-1.17 1.01l.01.15c.04.28.01.6-.22.76-.7.45-1.48.78-2.32.97-.29.06-.55-.17-.72-.41a1.02 1.02 0 0 0-1.68 0c-.17.24-.43.47-.72.4a7.12 7.12 0 0 1-2.32-.96c-.23-.15-.26-.48-.22-.76v-.15a1.02 1.02 0 0 0-1.16-1c-.28.03-.6 0-.76-.23A7.12 7.12 0 0 1 0 8.56c-.06-.29.17-.55.41-.72a1.02 1.02 0 0 0 0-1.68c-.24-.17-.47-.43-.4-.72.18-.84.5-1.62.96-2.32.15-.23.48-.26.76-.22h.15a1.02 1.02 0 0 0 1-1.16c-.03-.28 0-.6.23-.76C3.82.53 4.6.2 5.44 0c.29-.06.55.17.72.41a1.02 1.02 0 0 0 1.68 0zM9 7a2 2 0 1 1-4 0 2 2 0 0 1 4 0zm1 0a3 3 0 1 1-6 0 3 3 0 0 1 6 0z"/></svg>'; }, S48P: function (e, t) {
57
- e.exports = '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 18 18" width="18" height="18"><path fill="currentColor" d="M12.58 12.1A3.86 3.86 0 0 0 9 6.75a3.87 3.87 0 0 0-3.58 5.33 7.74 7.74 0 0 1 7.16 0zM3.64 9.93l-2.3-.62.37-1.38 2.3.62-.37 1.38zM6.1 6.07L5.07 3.92l1.3-.6 1 2.15-1.29.6zM10.62 5.47l1-2.16 1.3.6-1.01 2.16-1.3-.6zM13.99 8.55l2.3-.62.36 1.38-2.3.62L14 8.55z"/></svg>';
58
- }, TGRH: function (e, t, s) {
59
- "use strict";
60
- s.r(t), s.d(t, "ControlBarNavigation", (function () { return A; }));
61
- var i = s("Eyy1"), o = (s("YFKU"), s("8+VR")), l = s("Kxc7"), n = s("1ANp"), a = s("Ialn"), r = s("gWrr"), d = s("/DW5"), h = s("qFKp"), u = (s("JWMC"), s("MjtL")), c = s("e8Rm"), _ = s("e2QN"), p = s("vg09"), m = s("/NcV"), b = s("94TV"), g = s("qfuz"), w = s("MQEA"), v = s("1INk"), y = s("+xKI"), S = s("eYcT"), M = s("nFx7");
62
- s("jrhZ");
63
- const f = Object(d.b)({ keys: ["Alt", "R"], text: "{0} + {1}" }), E = Object(d.b)({ keys: ["Alt", "Click", "Alt", "Enter"], text: "{0} + {1}, {2} + {3}" }), C = Object(d.b)({ keys: [g], text: "{0}" }), k = Object(d.b)({ keys: [w], text: "{0}" }), V = Object(d.b)({ keys: ["Ctrl", v], text: "{0} + {1}" }), x = Object(d.b)({ keys: ["Ctrl", y], text: "{0} + {1}" }), W = `<div class="control-bar-wrapper">\n\t<div class="control-bar control-bar--hidden">\n\t\t<div class="control-bar__group js-btn-group js-btn-group-zoom">\n\t\t\t<div class="control-bar__btn control-bar__btn--zoom-out apply-common-tooltip" title="${window.t("Zoom Out")}" data-tooltip-hotkey="${x}">\n\t\t\t\t${c}\n\t\t\t</div>\n\t\t\t<div class="control-bar__btn control-bar__btn--zoom-in apply-common-tooltip" title="${window.t("Zoom In")}" data-tooltip-hotkey="${V}">\n\t\t\t\t${p}\n\t\t\t</div>\n\t\t</div>\n\t\t<div class="control-bar__group js-btn-group js-btn-group-maximize">\n\t\t\t<div class="control-bar__btn control-bar__btn--maximize apply-common-tooltip" title="${window.t("Maximize chart")}" data-tooltip-hotkey="${E}">\n\t\t\t\t${S}\n\t\t\t</div>\n\t\t\t<div class="control-bar__btn control-bar__btn--minimize js-hidden apply-common-tooltip" title="${window.t("Restore chart")}" data-tooltip-hotkey="${E}">\n\t\t\t\t${M}\n\t\t\t</div>\n\t\t</div>\n\t\t<div class="control-bar__group js-btn-group js-btn-group-scroll">\n\t\t\t<div class="control-bar__btn control-bar__btn--move-left apply-common-tooltip" title="${window.t("Scroll to the Left")}" data-tooltip-hotkey="${C}">\n\t\t\t\t${u}\n\t\t\t</div>\n\t\t\t<div class="control-bar__btn control-bar__btn--move-right apply-common-tooltip" title="${window.t("Scroll to the Right")}" data-tooltip-hotkey="${k}">\n\t\t\t\t${m}\n\t\t\t</div>\n\t\t</div>\n\t\t<div class="control-bar__group js-btn-group js-btn-group-reset-scale">\n\t\t\t<div class="control-bar__btn control-bar__btn--turn-button control-bar__btn--btn-hidden apply-common-tooltip js-btn-reset" title="${window.t("Reset Chart")}" data-tooltip-hotkey="${f}">\n\t\t\t\t${_}\n\t\t\t</div>\n\t\t</div>\n\t</div>\n</div>`, T = `<div class="control-bar control-bar__btn control-bar__btn--back-present control-bar__btn--btn-hidden apply-common-tooltip" title="${window.t("Scroll to the Most Recent Bar")}">\n\t${b}\n</div>`, L = h.CheckMobile.any(), O = { zoomInOut: !0, maximize: !0,
64
- scrollLeftRight: !0, resetScale: !0, goToRealtime: !0 };
65
- class A {
66
- constructor(e, t, s) { this._widget = Object(i.ensureNotNull)(Object(r.a)(W).querySelector(".control-bar-wrapper")), this._controlBar = Object(i.ensureNotNull)(this._widget.querySelector(".control-bar")), this._back = Object(i.ensureNotNull)(Object(r.a)(T).querySelector(".control-bar__btn--back-present")), this._btnGroups = Array.from(this._controlBar.querySelectorAll(".js-btn-group")), this._backButtonVisible = !1, this._boundMouseHandler = null, this._chartModel = null, this._checkIntervalId = 0, this._controlBarVisible = !1, this._priceAxisChanged = null, this._resetAvailabilityChanged = null, this._priceAxisName = "right", this._rafId = 0, this._visibilityTypeProperty = null, this._boundUpdateMaximizeButtonsVisibility = this._updateMaximizeButtonsVisibility.bind(this), this._boundToggleFullscreenButtons = this._toggleFullscreenButtons.bind(this), this._paneWidth = 0, this._leftPriceScaleWidth = 0, this._rightPriceScaleWidth = 0, this._chart = e, this._parent = t, this._options = Object.assign({}, O, s), this._visibilityPrioritizedGroups = this._initGroupDescriptions(), this._init(), this._initHandlers(), this.updatePosition(); }
67
- destroy() { if (null !== this._visibilityTypeProperty && (this._visibilityTypeProperty.unsubscribe(this, this._onVisibilityTypeChange), this._visibilityTypeProperty = null), null !== this._boundMouseHandler && (this._parent.removeEventListener("mousemove", this._boundMouseHandler, !1), this._parent.removeEventListener("mouseleave", this._boundMouseHandler, !1), this._boundMouseHandler = null), null !== this._priceAxisChanged && (this._priceAxisChanged.unsubscribe(this, this._updateBackBtnPosition), this._priceAxisChanged = null), clearInterval(this._checkIntervalId), null !== this._resetAvailabilityChanged) {
68
- this._resetAvailabilityChanged.unsubscribe(this, this._updateResetScalesButtonVisibility);
69
- const e = this._chart.getResizerDetacher();
70
- e.fullscreenable.unsubscribe(this._boundUpdateMaximizeButtonsVisibility), e.fullscreen.unsubscribe(this._boundToggleFullscreenButtons), this._resetAvailabilityChanged = null;
71
- } this._chart = null; }
72
- updatePosition() { const e = this._chart.paneWidgets(); if (0 === e.length)
73
- return; this._paneWidth = e[0].width(), this._leftPriceScaleWidth = this._chart.getPriceAxisMaxWidthByName("left"), this._rightPriceScaleWidth = this._chart.getPriceAxisMaxWidthByName("right"); const t = this._chart.timeAxisHeight() + this._bottomMargin(); this._widget.style.bottom = t + "px", this._back.style.bottom = t + "px", this._updateBtnGroupVisibility(); }
74
- _bottomMargin() { var e; const t = this._chart.paneWidgets(); return (null !== (e = this._chart.maximizedPaneWidget()) && void 0 !== e ? e : t[t.length - 1]).containsMainSeries() ? 32 : 5; }
75
- _init() {
76
- if (h.CheckMobile.any())
77
- for (const e of this._btnGroups)
78
- e.classList.add("js-hidden");
79
- this._buttons = { zoomIn: this._widget.querySelector(".control-bar__btn--zoom-in"), zoomOut: this._widget.querySelector(".control-bar__btn--zoom-out"), moveLeft: this._widget.querySelector(".control-bar__btn--move-left"), moveRight: this._widget.querySelector(".control-bar__btn--move-right"), turn: this._widget.querySelector(".control-bar__btn--turn-button"),
80
- maximize: this._widget.querySelector(".control-bar__btn--maximize"), minimize: this._widget.querySelector(".control-bar__btn--minimize") }, this._initVisibility(), this._parent.appendChild(this._widget), this._parent.appendChild(this._back), this._backButtonVisible = !1, this._priceAxisName = Object(a.isRtl)() ? "left" : "right", this._chart.withModel(this, () => { this._chartModel = this._chart.model(), this._priceAxisChanged = this._chart.getPriceAxisWidthChangedByName(this._priceAxisName), this._resetAvailabilityChanged = this._chartModel.model().isScalesResetAvailableChanged(), this._priceAxisChanged.subscribe(this, this._updateBackBtnPosition), this._resetAvailabilityChanged.subscribe(this, this._updateResetScalesButtonVisibility); const e = this._chart.getResizerDetacher(); e.fullscreenable.subscribe(this._boundUpdateMaximizeButtonsVisibility), e.fullscreen.subscribe(this._boundToggleFullscreenButtons), this._updateMaximizeButtonsVisibility(), this._updateBackBtnPosition(), this._back.addEventListener("click", () => { null !== this._chartModel && this._chartModel.timeScale().scrollToRealtime(!0); }), this._checkIntervalId = setInterval(() => this._check(), 1e3); });
81
- }
82
- _initHandlers() { const e = o.mobiletouch ? "touchstart" : "mousedown", t = o.mobiletouch ? ["touchend"] : ["mouseup", "mouseout"]; this._buttons.moveLeft.addEventListener(e, e => { e.preventDefault(), this._chart.scrollHelper().moveByBar(1), this._trackEvent("Move Left"); }), this._buttons.moveRight.addEventListener(e, e => { e.preventDefault(), this._chart.scrollHelper().moveByBar(-1), this._trackEvent("Move Right"); }); for (const e of t)
83
- this._buttons.moveLeft.addEventListener(e, () => this._chart.scrollHelper().stopMoveByBar()), this._buttons.moveRight.addEventListener(e, () => this._chart.scrollHelper().stopMoveByBar()); this._buttons.turn.addEventListener("click", e => { e.preventDefault(), this._chart.GUIResetScales(), this._trackEvent("Reset to Default Settings"); }), this._buttons.zoomOut.addEventListener("click", e => { e.preventDefault(), null !== this._chartModel && this._chartModel.zoomOut(), this._trackEvent("Zoom Out"); }), this._buttons.zoomIn.addEventListener("click", e => { e.preventDefault(), null !== this._chartModel && this._chartModel.zoomIn(), this._trackEvent("Zoom In"); }), this._buttons.maximize.addEventListener("click", e => { e.preventDefault(), this._chart.setActive(!0), this._chart.getResizerDetacher().requestFullscreen(), this._trackEvent(" Maximize Chart"); }), this._buttons.minimize.addEventListener("click", e => { e.preventDefault(), this._chart.getResizerDetacher().exitFullscreen(), this._trackEvent(" Restore Chart"); }); const s = e => e.addEventListener("contextmenu", e => e.preventDefault()); s(this._buttons.moveLeft), s(this._buttons.moveRight), s(this._buttons.turn), s(this._buttons.zoomOut), s(this._buttons.zoomIn), s(this._buttons.minimize), s(this._buttons.maximize); }
84
- _initGroupDescriptions() {
85
- return [{ shouldBeHiddenOnMobile: !1, available: this._isMaximizeButtonAvailable.bind(this), className: "js-btn-group-maximize", element: this._getBtnGroup("js-btn-group-maximize"), totalWidth: 50 }, { shouldBeHiddenOnMobile: !1, available: () => this._options.resetScale, className: "js-btn-group-reset-scale",
86
- element: this._getBtnGroup("js-btn-group-reset-scale"), totalWidth: 50 }, { shouldBeHiddenOnMobile: !l.enabled("show_zoom_and_move_buttons_on_touch"), available: () => this._options.zoomInOut, className: "js-btn-group-zoom", element: this._getBtnGroup("js-btn-group-zoom"), totalWidth: 86 }, { shouldBeHiddenOnMobile: !l.enabled("show_zoom_and_move_buttons_on_touch"), available: () => this._options.scrollLeftRight, className: "js-btn-group-scroll", element: this._getBtnGroup("js-btn-group-scroll"), totalWidth: 86 }];
87
- }
88
- _check() { if (null === this._chartModel || !this._options.goToRealtime)
89
- return; const e = this._chartModel.timeScale().rightOffset() < 0; e !== this._backButtonVisible && (this._backButtonVisible = e, this._back.classList.toggle("control-bar__btn--btn-hidden", !this._backButtonVisible)); }
90
- _initVisibility() { this._visibilityTypeProperty = Object(n.actualBehavior)(), this._visibilityTypeProperty.subscribe(this, this._onVisibilityTypeChange), this._onVisibilityTypeChange(); }
91
- _onVisibilityTypeChange() { if (null === this._visibilityTypeProperty)
92
- return; const e = this._visibilityTypeProperty.value(); "alwaysOn" === e || "alwaysOff" === e ? (this._controlBarVisible = "alwaysOn" === e, null !== this._boundMouseHandler && (this._parent.removeEventListener("mousemove", this._boundMouseHandler, !1), this._parent.removeEventListener("mouseleave", this._boundMouseHandler, !1), this._boundMouseHandler = null)) : (this._controlBarVisible = !1, this._boundMouseHandler || (this._boundMouseHandler = this._visibilityMouseHandler.bind(this), this._parent.addEventListener("mousemove", this._boundMouseHandler), this._parent.addEventListener("mouseleave", this._boundMouseHandler))), this._updateControlBarVisibility(); }
93
- _visibilityMouseHandler(e) { if (e.buttons)
94
- return; if (null !== this._chartModel && this._chartModel.lineBeingCreated())
95
- return; let t = "mouseleave" !== e.type; if ("mousemove" === e.type) {
96
- const s = this._widget.getBoundingClientRect(), i = 100 - this._bottomMargin();
97
- t = e.clientX >= s.left - 100 && e.clientX <= s.right + 100 && e.clientY >= s.top - i && e.clientY <= s.bottom + 100;
98
- } this._controlBarVisible !== t && (this._controlBarVisible = t, null === this._rafId && (this._rafId = this._controlBar.ownerDocument.defaultView.requestAnimationFrame(this._updateControlBarVisibility.bind(this)))); }
99
- _updateControlBarVisibility() { this._rafId = null, this._controlBar.classList.toggle("control-bar--hidden", !this._controlBarVisible); }
100
- _updateBackBtnPosition() { if ("left" === this._priceAxisName || "right" === this._priceAxisName) {
101
- const e = this._chart.getPriceAxisMaxWidthByName(this._priceAxisName) + 14;
102
- e && (this._back.style.marginRight = e + "px");
103
- } }
104
- _updateBtnGroupVisibility() { const e = this._leftPriceScaleWidth + this._paneWidth, t = (e + this._rightPriceScaleWidth) / 2; let s = 2 * Math.min(e - t, t - this._leftPriceScaleWidth) - 50 - 50, i = !1; for (const e of this._visibilityPrioritizedGroups) {
105
- e.enoughSpaceForGroup = !1;
106
- e.available() && (!L || !e.shouldBeHiddenOnMobile) && (s -= e.totalWidth, e.enoughSpaceForGroup = s >= 0 && !i, i = i || !e.enoughSpaceForGroup), !e.enoughSpaceForGroup !== e.element.classList.contains("js-hidden") && e.element.classList.toggle("js-hidden", !e.enoughSpaceForGroup);
107
- } this._updateControlBarPosition(); }
108
- _getBtnGroup(e) {
109
- return Object(i.ensureDefined)(this._btnGroups.find(t => t.classList.contains(e)));
110
- }
111
- _updateControlBarPosition() { const e = this._visibilityPrioritizedGroups.reduce((e, t) => e + (t.enoughSpaceForGroup ? t.totalWidth : 0), 0), t = (this._paneWidth + this._leftPriceScaleWidth + this._rightPriceScaleWidth) / 2 - Math.ceil(e / 2); this._widget.style.left = t + "px"; }
112
- _updateResetScalesButtonVisibility() { if (null === this._chartModel)
113
- return; const e = this._chartModel.model().isScalesResetAvailable(); this._buttons.turn.classList.toggle("control-bar__btn--btn-hidden", !e); }
114
- _updateMaximizeButtonsVisibility() { this._updateBtnGroupVisibility(); }
115
- _toggleFullscreenButtons() { const e = this._chart.getResizerDetacher().fullscreen.value(); this._buttons.maximize.classList.toggle("js-hidden", e), this._buttons.minimize.classList.toggle("js-hidden", !e); }
116
- _isMaximizeButtonAvailable() { return this._options.maximize, !1; }
117
- _trackEvent(e) { 0; }
118
- }
119
- }, Tq3g: function (e, t) { e.exports = '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 18 18" width="18" height="18"><path fill="currentColor" d="M14.48 5.1c-.52 2.03-1.46 3.04-2.82 3.04-.64 0-1.55-.19-2.74-.56-1.17-.38-1.99-.57-2.46-.57-.69 0-1.22.37-1.58 1.13H3.55A4.3 4.3 0 0 1 4.5 6c.5-.6 1.08-.9 1.74-.9.7 0 1.65.2 2.84.58 1.2.37 2.04.55 2.52.55.8 0 1.32-.37 1.59-1.13h1.29zm0 4.84c-.52 2.02-1.46 3.03-2.82 3.03-.64 0-1.55-.19-2.74-.56-1.17-.38-1.99-.57-2.46-.57-.69 0-1.22.38-1.58 1.13H3.55a4.3 4.3 0 0 1 .95-2.14c.5-.6 1.08-.9 1.74-.9.7 0 1.65.2 2.84.58 1.2.37 2.04.56 2.52.56.8 0 1.32-.38 1.59-1.13h1.29z"/></svg>'; }, Uua9: function (e, t) { e.exports = '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 18 18" width="18" height="18"><path fill="currentColor" d="M7.65 5.16v2.68h3.78v1.73H7.65V13h5.19v1.8H5.62V3.35h7.3v1.8H7.65z"/></svg>'; }, VrXG: function (e, t) { e.exports = '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 18 18" width="18" height="18"><path fill="currentColor" d="M7.57 14.8H5.03V3.36c1.62-.05 2.64-.08 3.06-.08 1.66 0 2.98.49 3.96 1.47a5.23 5.23 0 0 1 1.47 3.88c0 4.11-1.99 6.17-5.95 6.17zm-.5-9.66v7.8c.32.04.67.06 1.05.06 1.03 0 1.83-.38 2.41-1.12.58-.75.88-1.79.88-3.13 0-2.44-1.14-3.67-3.42-3.67-.22 0-.53.02-.93.06z"/></svg>'; }, VrrN: function (e, t) { e.exports = '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 18 18" width="18" height="18"><path fill="currentColor" d="M7.84 13.7H5.78V4.4l2.48-.06c1.35 0 2.42.4 3.22 1.2.8.78 1.19 1.83 1.19 3.15 0 3.34-1.61 5.01-4.83 5.01zm-.41-7.85v6.35c.26.02.55.03.86.03.83 0 1.48-.3 1.95-.9.48-.6.72-1.46.72-2.54 0-2-.93-2.99-2.78-2.99-.18 0-.43.02-.75.05z"/></svg>'; }, WYzw: function (e, t) { e.exports = '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 28 28" width="28" height="28"><path fill="currentColor" d="M19.32 6H8.68A2.68 2.68 0 0 0 6 8.68V11h1V8.68C7 7.75 7.75 7 8.68 7h10.64c.93 0 1.68.75 1.68 1.68V11h1V8.68C22 7.2 20.8 6 19.32 6zM7 19.32c0 .93.75 1.68 1.68 1.68h10.64c.93 0 1.68-.75 1.68-1.68V17h1v2.32C22 20.8 20.8 22 19.32 22H8.68A2.68 2.68 0 0 1 6 19.32V17h1v2.32z"/></svg>'; }, "Y+EN": function (e, t) {
120
- e.exports = '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 15 15" width="15" height="15"><path fill="currentColor" d="M7.23 2.58a.5.5 0 0 1 .54 0l5.5 3.5a.5.5 0 0 1 0 .84l-5.5 3.5a.5.5 0 0 1-.54 0l-5.5-3.5a.5.5 0 0 1 0-.84l5.5-3.5zM2.93 6.5L7.5 9.4l4.57-2.9L7.5 3.6 2.93 6.5z"/><path fill="currentColor" d="M1.58 9.23a.5.5 0 0 1 .69-.15L7.5 12.4l5.23-3.33a.5.5 0 0 1 .54.84l-5.5 3.5a.5.5 0 0 1-.54 0l-5.5-3.5a.5.5 0 0 1-.15-.69z"/></svg>';
121
- }, YGQl: function (e, t) { e.exports = '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 18 18" width="18" height="18"><path stroke="currentColor" stroke-linecap="round" stroke-width="1.7" d="M12.5 5.5l-7 7m0-7l7 7"/></svg>'; }, ZKFq: function (e, t, s) { e.exports = { "css-value-pane-controls-padding-left": "1px", "css-value-pane-controls-padding-right": "5px", paneControls: "paneControls-2fnY2ZKI", hasTopMargin: "hasTopMargin-2fnY2ZKI", hidden: "hidden-2fnY2ZKI", forceHidden: "forceHidden-2fnY2ZKI", button: "button-2fnY2ZKI pane-button-xPfK7aM7", buttonIcon: "buttonIcon-2fnY2ZKI", minimize: "minimize-2fnY2ZKI", newButton: "newButton-2fnY2ZKI", touchMode: "touchMode-2fnY2ZKI", maximize: "maximize-2fnY2ZKI", "maximize-animation-up-bracket": "maximize-animation-up-bracket-2fnY2ZKI", "maximize-animation-down-bracket": "maximize-animation-down-bracket-2fnY2ZKI", "minimize-animation-up-bracket": "minimize-animation-up-bracket-2fnY2ZKI", "minimize-animation-down-bracket": "minimize-animation-down-bracket-2fnY2ZKI", up: "up-2fnY2ZKI", "up-animation": "up-animation-2fnY2ZKI", down: "down-2fnY2ZKI", "down-animation": "down-animation-2fnY2ZKI", buttonsWrapper: "buttonsWrapper-2fnY2ZKI" }; }, bNWL: function (e, t) { e.exports = '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 2 30 24" width="30" height="24" fill="none"><path fill="currentColor" fill-rule="evenodd" clip-rule="evenodd" d="M15.82 14l5.36-5.36-.82-.82L15 13.18 9.64 7.82l-.82.82L14.18 14l-5.36 5.36.82.82L15 14.82l5.36 5.36.82-.82L15.82 14z"/></svg>'; }, cbig: function (e, t) { e.exports = '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 18 18" width="18" height="18"><path fill="currentColor" d="M9.3 9l.9-4.53a1.23 1.23 0 1 0-2.4 0L8.7 9l-.9 4.53a1.23 1.23 0 1 0 2.4 0L9.3 9z"/><path fill="currentColor" d="M9.15 9.26l4.38-1.48a1.23 1.23 0 1 0-1.21-2.09L8.85 8.74l-4.38 1.48a1.23 1.23 0 1 0 1.21 2.09l3.47-3.05z"/><path fill="currentColor" d="M9.15 8.74L5.68 5.69a1.23 1.23 0 1 0-1.2 2.09l4.37 1.48 3.47 3.05a1.23 1.23 0 1 0 1.2-2.09L9.16 8.74z"/></svg>'; }, e2QN: function (e, t) { e.exports = '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 14 18" width="14" height="18"><g fill="none" stroke="currentColor" stroke-linecap="round" stroke-width="2"><path d="M1 10a6 6 0 1 0 6-6H3"/><path d="M5 1L2.5 4 5 7"/></g></svg>'; }, e8Rm: function (e, t) { e.exports = '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 14 14" width="14" height="14"><path stroke="currentColor" stroke-linecap="round" stroke-width="2" d="M2 7h10"/></svg>'; }, eYcT: function (e, t) {
122
- e.exports = '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 28 28" width="28" height="28"><g class="corner-left-top"><path fill="currentColor" d="M6 9C6 7.89543 6.89543 7 8 7H10C10.5523 7 11 7.44772 11 8C11 8.55228 10.5523 9 10 9H8V11C8 11.5523 7.55228 12 7 12C6.44772 12 6 11.5523 6 11V9Z"/></g><g class="corner-right-top"><path fill="currentColor" d="M17 8C17 7.44772 17.4477 7 18 7H20C21.1046 7 22 7.89543 22 9V11C22 11.5523 21.5523 12 21 12C20.4477 12 20 11.5523 20 11V9H18C17.4477 9 17 8.55228 17 8Z"/></g><g class="corner-right-bottom"><path fill="currentColor" d="M21 16C21.5523 16 22 16.4477 22 17V19C22 20.1046 21.1046 21 20 21H18C17.4477 21 17 20.5523 17 20C17 19.4477 17.4477 19 18 19H20V17C20 16.4477 20.4477 16 21 16Z"/></g><g class="corner-left-bottom"><path fill="currentColor" d="M7 16C7.55228 16 8 16.4477 8 17V19H10C10.5523 19 11 19.4477 11 20C11 20.5523 10.5523 21 10 21H8C6.89543 21 6 20.1046 6 19V17C6 16.4477 6.44772 16 7 16Z"/></g></svg>';
123
- }, fk9O: function (e, t) { e.exports = '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 28 28" width="28" height="28"><path fill="currentColor" d="M13.5 6.35l6.32 5.27-.64.76L14 8.07V21h-1V8.07l-5.18 4.31-.64-.76 6.32-5.27z"/></svg>'; }, gKdq: function (e, t) { e.exports = '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 28 28" width="28" height="28"><path fill="currentColor" d="M14 7v12.93l5.18-4.31.64.76-6.32 5.27-6.32-5.27.64-.76L13 19.93V7h1z"/></svg>'; }, i9xP: function (e, t) { e.exports = '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 15 15" width="15" height="15"><circle fill="currentColor" cx="12.75" cy="7.5" r="1.25"/><circle fill="currentColor" cx="7.5" cy="7.5" r="1.25"/><circle fill="currentColor" cx="2.25" cy="7.5" r="1.25"/></svg>'; }, jXu8: function (e, t) { e.exports = '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 18 18" width="18" height="18"><circle fill="currentColor" cx="9" cy="9" r="5"/></svg>'; }, jrhZ: function (e, t, s) { e.exports = { "animation-minimize-corner-left-top": "animation-minimize-corner-left-top-1yUqeyiZ", "animation-minimize-corner-right-top": "animation-minimize-corner-right-top-1yUqeyiZ", "animation-minimize-corner-right-bottom": "animation-minimize-corner-right-bottom-1yUqeyiZ", "animation-minimize-corner-left-bottom": "animation-minimize-corner-left-bottom-1yUqeyiZ", "animation-maximize-corner-left-top": "animation-maximize-corner-left-top-1yUqeyiZ", "animation-maximize-corner-right-top": "animation-maximize-corner-right-top-1yUqeyiZ", "animation-maximize-corner-right-bottom": "animation-maximize-corner-right-bottom-1yUqeyiZ", "animation-maximize-corner-left-bottom": "animation-maximize-corner-left-bottom-1yUqeyiZ" }; }, ku84: function (e, t) {
124
- e.exports = '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 15 15" width="15" height="15" fill="none"><path fill="currentColor" d="M4.5 12A1.5 1.5 0 0 1 3 10.5V9H2v1.5A2.5 2.5 0 0 0 4.5 13h6a2.5 2.5 0 0 0 2.5-2.5V9h-1v1.5c0 .83-.67 1.5-1.5 1.5h-6z" class="bracket-up"/><path fill="currentColor" d="M4.5 3C3.67 3 3 3.67 3 4.5V6H2V4.5A2.5 2.5 0 0 1 4.5 2h6A2.5 2.5 0 0 1 13 4.5V6h-1V4.5c0-.83-.67-1.5-1.5-1.5h-6z" class="bracket-down"/></svg>';
125
- }, lvAK: function (e, t, s) {
126
- "use strict";
127
- s.r(t);
128
- var i = s("8+VR"), o = s("RspR"), l = s("3ClC"), n = (s("LVLx"), s("Eyy1")), a = s("eJTA"), r = s("AvGy"), d = s("EV8o"), h = s("ZKFq"), u = s("0jws");
129
- class c {
130
- constructor(e, t, s) { this._parentEl = document.createElement("div"), this._listActionsWrapperEl = null, this._listActionsElements = {}, this._actionsSpawns = {}, this._onMouseEnterLeaveEventHandler = null, this._mouseOverWidget = !1, this._wrapEl = e, this._onMouseEnterLeaveEventHandler = this._onMouseEnterLeaveEvent.bind(this), this._wrapEl.addEventListener("mouseenter", this._onMouseEnterLeaveEventHandler), this._wrapEl.addEventListener("mouseleave", this._onMouseEnterLeaveEventHandler), this._actions = t, this._globalVisibility = s.globalVisibility.spawn(), this._globalVisibility.subscribe(this._updatePaneControlsWidgetVisibility.bind(this)), this._visibilityType = s.visibilityType.spawn(), this._visibilityType.subscribe(this._updatePaneControlsWidgetVisibility.bind(this)), this._doNotSwitchToContextMenuMode = s.doNotSwitchToContextMenuMode, this._themedColor = s.themedColor.spawn(), this._themedColor.subscribe(this._updateThemedColor.bind(this)); for (const [e, t] of Object.entries(this._actions)) {
131
- const s = e;
132
- this._actionsSpawns[s] = { visible: t.visible.spawn(), title: void 0 === t.title ? null : t.title.spawn() }, this._actionsSpawns[s].visible.subscribe(this._updateActionVisibilities.bind(this, s));
133
- const i = this._actionsSpawns[s].title;
134
- null !== i && i.subscribe(this._updateActionTitle.bind(this, s));
135
- } this._render(), this._updatePaneControlsWidgetVisibility(), this._updateThemedColor(this._themedColor.value()), this._parentEl.classList.toggle(h.touchMode, r.a), this._parentEl.addEventListener("contextmenu", e => e.preventDefault()); }
136
- destroy() { this._visibilityType.destroy(), this._themedColor.destroy(); for (const e of Object.keys(this._actionsSpawns)) {
137
- const t = e;
138
- this._actionsSpawns[t].visible.destroy();
139
- const s = this._actionsSpawns[t].title;
140
- null !== s && s.destroy();
141
- } null !== this._onMouseEnterLeaveEventHandler && (this._wrapEl.removeEventListener("mouseenter", this._onMouseEnterLeaveEventHandler), this._wrapEl.removeEventListener("mouseleave", this._onMouseEnterLeaveEventHandler), this._onMouseEnterLeaveEventHandler = null), this._parentEl.innerHTML = "", delete this._parentEl; }
142
- getElement() { return this._parentEl; }
143
- updateWidgetModeByWidth(e) { const t = !this._doNotSwitchToContextMenuMode.value() && e < 356, s = !this._doNotSwitchToContextMenuMode.value() && e < 666.65, i = Object(n.ensureNotNull)(this._listActionsWrapperEl), o = Object(n.ensureNotNull)(this._listActionsElements.more); i.classList.toggle(u.blockHidden, t || s), o.classList.toggle(u.blockHidden, t || !s || !this._actions.more.visible.value()); }
144
- _render() {
145
- this._renderActions(),
146
- this._parentEl.classList.add(h.paneControls), this._wrapEl.append(this._parentEl);
147
- }
148
- _renderActions() { null === this._listActionsWrapperEl && (this._listActionsWrapperEl = document.createElement("div"), this._listActionsWrapperEl.classList.add(h.buttonsWrapper), this._parentEl.append(this._listActionsWrapperEl)); const e = r.a ? "large" : "small"; this._listActionsElements.up = Object(d.a)(this._actions.up, h.button, h.buttonIcon, u.blockHidden, e), this._listActionsElements.down = Object(d.a)(this._actions.down, h.button, h.buttonIcon, u.blockHidden, e), this._listActionsElements.close = Object(d.a)(this._actions.close, h.button, h.buttonIcon, u.blockHidden, e), this._listActionsElements.maximize = Object(d.a)(this._actions.maximize, h.button, h.buttonIcon, u.blockHidden, e), this._listActionsElements.minimize = Object(d.a)(this._actions.minimize, h.button, h.buttonIcon, u.blockHidden, e), this._listActionsWrapperEl.append(this._listActionsElements.up, this._listActionsElements.down, this._listActionsElements.close, this._listActionsElements.maximize, this._listActionsElements.minimize), this._listActionsElements.more = Object(d.a)(this._actions.more, h.button, h.buttonIcon, u.blockHidden, e); for (const e of Object.keys(this._listActionsElements))
149
- Object(n.ensureNotNull)(this._listActionsElements[e]).classList.add(h.newButton); this._parentEl.append(this._listActionsElements.more); }
150
- _updateActionVisibilities(e, t) { Object(n.ensureNotNull)(this._listActionsElements[e]).classList.toggle(u.blockHidden, !t); }
151
- _updateActionTitle(e, t) { Object(n.ensureNotNull)(this._listActionsElements[e]).setAttribute("title", t); }
152
- _onMouseEnterLeaveEvent(e) { this._mouseOverWidget = "mouseenter" === e.type, "visibleOnMouseOver" === this._visibilityType.value() && this._updatePaneControlsWidgetVisibility(); }
153
- _updatePaneControlsWidgetVisibility() { let e, t = !1; switch (this._visibilityType.value()) {
154
- case "alwaysOff":
155
- e = !1, t = !0;
156
- break;
157
- case "alwaysOn":
158
- e = this._globalVisibility.value();
159
- break;
160
- case "visibleOnMouseOver": e = this._globalVisibility.value() && this._mouseOverWidget;
161
- } this._parentEl.classList.toggle(h.hidden, !e), this._parentEl.classList.toggle(h.forceHidden, !this._globalVisibility.value() || t); }
162
- _updateThemedColor(e) { if (e.length > 0) {
163
- const [t, s, i] = Object(a.parseRgb)(e);
164
- this._parentEl.style.color = Object(a.rgbaToString)([t, s, i, Object(a.normalizeAlphaComponent)(.8)]);
165
- }
166
- else
167
- this._parentEl.style.removeProperty("color"); }
168
- }
169
- var _ = s("7KDR"), p = s("5VQP"), m = s("obM5"), b = s("fk9O"), g = s("gKdq"), w = s("WYzw");
170
- function v(e, t) {
171
- const s = Object(n.ensureNotNull)(t.target);
172
- return function (e) {
173
- const t = [];
174
- if (e.maximize.visible.value()) {
175
- const s = Object(n.ensure)(e.maximize.title), i = Object(n.ensureNotNull)(e.maximize.action);
176
- t.push(new _.Action({ icon: w, label: s.value(), statName: "Maximize Pane", shortcutHint: y, onExecute: () => i() }));
177
- }
178
- else if (e.minimize.visible.value()) {
179
- const s = Object(n.ensure)(e.minimize.title), i = Object(n.ensureNotNull)(e.minimize.action);
180
- t.push(new _.Action({ icon: w, label: s.value(), statName: "Minimize Pane", shortcutHint: y, onExecute: () => i() }));
181
- }
182
- if (e.up.visible.value()) {
183
- const s = Object(n.ensure)(e.up.title), i = Object(n.ensureNotNull)(e.up.action);
184
- t.push(new _.Action({ icon: b,
185
- label: s.value(), statName: "Move pane up", onExecute: () => i() }));
186
- }
187
- if (e.down.visible.value()) {
188
- const s = Object(n.ensure)(e.down.title), i = Object(n.ensureNotNull)(e.down.action);
189
- t.push(new _.Action({ icon: g, label: s.value(), statName: "Move pane down", onExecute: () => i() }));
190
- }
191
- if (e.close.visible.value()) {
192
- const s = Object(n.ensure)(e.close.title), i = Object(n.ensureNotNull)(e.close.action);
193
- t.push(new _.Action({ icon: m, label: s.value(), statName: "Delete pane", onExecute: () => i() }));
194
- }
195
- return p.ContextMenuManager.createMenu(t);
196
- }(e).then(e => (e.show(e => { const t = s.getBoundingClientRect(); return { clientX: t.right - e, clientY: t.top + t.height + 3 }; }), e));
197
- }
198
- const y = window.t("Double click");
199
- var S = s("hY0g"), M = s.n(S), f = s("EsvI"), E = s("/DW5"), C = s("OJSF"), k = s("PXSR"), V = s("QEZv"), x = s("ku84"), W = s("i9xP"), T = s("1Wf8"), L = s("956S");
200
- s.d(t, "PaneControlsWidget", (function () { return I; }));
201
- const O = i.mobiletouch, A = window.t("Delete pane"), D = window.t("Move pane up"), H = window.t("Move pane down"), B = window.t("Maximize pane"), P = window.t("Restore pane"), z = window.t("Manage panes"), j = window.t("Double click"), N = Object(E.b)({ keys: [""], text: j });
202
- class I {
203
- constructor(e, t, s, i, l) { this._actions = {}, this._moreActionCM = null, this._themedColor = new M.a(""), this._model = e, this._paneWidget = t, this._callbacks = i, this._closeButtonVisibility = new M.a(this._getCloseButtonVisibility()), this._upButtonVisibility = new M.a(this._getUpButtonVisibility()), this._downButtonVisibility = new M.a(this._getDownButtonVisibility()), this._maximizeButtonVisibility = new M.a(this._getMaximizeButtonVisibility()), this._minimizeButtonVisibility = new M.a(this._getMinimizeButtonVisibility()), this._createActions(), this._visibilityTypeProperty = Object(o.actualBehavior)(), this._visibilityTypeProperty.subscribe(this, e => { this._visibilityType.setValue(e.value()); }), this._visibilityType = new M.a(this._visibilityTypeProperty.value()), this._isPaneMaximize = new M.a(this._getIsPaneMaximizeValue()), this._isWidgetShow = new M.a(this._getIsWidgetShow()), this._backgroundThemeName = s.backgroundThemeName, this._renderer = new c(l, this._actions, { visibilityType: this._visibilityType.readonly(), globalVisibility: this._isWidgetShow.readonly(), doNotSwitchToContextMenuMode: this._isPaneMaximize.readonly(), themedColor: this._themedColor.readonly() }); }
204
- destroy() { this._visibilityTypeProperty.unsubscribeAll(this), this._renderer.destroy(); }
205
- getElement() { return this._renderer.getElement(); }
206
- action() { return this._actions; }
207
- update() { this._updateButtonsVisibility(), this._isPaneMaximize.setValue(this._getIsPaneMaximizeValue()), this._isWidgetShow.setValue(this._getIsWidgetShow()); }
208
- updateWidgetModeByWidth(e) { this._renderer.updateWidgetModeByWidth(e); }
209
- updateThemedColors(e) { null === e && (e = Object(f.getStdThemedValue)("chartProperties.paneProperties.background", this._backgroundThemeName.value())), this._themedColor.setValue(e || ""); }
210
- _updateButtonsVisibility() {
211
- this._closeButtonVisibility.setValue(this._getCloseButtonVisibility()), this._upButtonVisibility.setValue(this._getUpButtonVisibility()), this._downButtonVisibility.setValue(this._getDownButtonVisibility()),
212
- this._maximizeButtonVisibility.setValue(this._getMaximizeButtonVisibility()), this._minimizeButtonVisibility.setValue(this._getMinimizeButtonVisibility());
213
- }
214
- _createActions() { this._actions.up = { iconMap: new Map([["large", k], ["small", k]]), action: this._onUpDownButton.bind(this, "up"), visible: this._upButtonVisibility, title: new M.a(D), className: h.up, dataset: { name: "pane-button-up" } }, this._actions.down = { iconMap: new Map([["large", V], ["small", V]]), action: this._onUpDownButton.bind(this, "down"), visible: this._downButtonVisibility, title: new M.a(H), className: h.down, dataset: { name: "pane-button-down" } }, this._actions.close = { iconMap: new Map([["large", C], ["small", C]]), action: this._onCloseButton.bind(this), visible: this._closeButtonVisibility, title: new M.a(A), dataset: { name: "pane-button-close" } }, this._actions.maximize = { iconMap: new Map([["large", T], ["small", x]]), action: this._onToggleMaximizeButton.bind(this), visible: this._maximizeButtonVisibility, title: new M.a(B), hotKeyTitle: N, className: h.maximize, dataset: { name: "pane-button-maximize" } }, this._actions.minimize = { iconMap: new Map([["large", T], ["small", x]]), action: this._onToggleMaximizeButton.bind(this), visible: this._minimizeButtonVisibility, title: new M.a(P), hotKeyTitle: N, className: h.minimize, dataset: { name: "pane-button-minimize" } }, this._actions.more = { iconMap: new Map([["large", L], ["small", W]]), action: this._showButtonsInContextMenu.bind(this), visible: new M.a(!O), title: new M.a(z), dataset: { name: "pane-button-more" } }; }
215
- _getCloseButtonVisibility() { const e = this._paneWidget.state(); let t = !1; return e.containsMainSeries() || e.isMaximized() || O || (t = e.dataSources().some(e => Object(l.isStudy)(e))), t; }
216
- _onCloseButton() { const e = this._model.model().panes().indexOf(this._paneWidget.state()); this._model.removePane(e); }
217
- _getUpButtonVisibility() { const e = this._paneWidget.state(); return this._model.model().panes().indexOf(e) > 0 && !e.isMaximized() && !O; }
218
- _getDownButtonVisibility() { const e = this._paneWidget.state(), t = this._model.model().panes(); return t.indexOf(e) < t.length - 1 && !e.isMaximized() && !O; }
219
- _onUpDownButton(e) { const t = this._model.model().panes().indexOf(this._paneWidget.state()); this._model.rearrangePanes(t, e); }
220
- _getMaximizeButtonVisibility() { const e = this._paneWidget.state(); return this._model.model().panes().length > 1 && !e.isMaximized() && !O; }
221
- _getMinimizeButtonVisibility() { const e = this._paneWidget.state(); return this._model.model().panes().length > 1 && e.isMaximized(); }
222
- _onToggleMaximizeButton() { this._callbacks.toggleMaximizePane(this._paneWidget); }
223
- _showButtonsInContextMenu(e) { e.preventDefault(), null !== this._moreActionCM && this._moreActionCM.isShown() ? this._moreActionCM = null : v(this._actions, e).then(e => { this._moreActionCM = e; }); }
224
- _getIsPaneMaximizeValue() { return this._paneWidget.state().isMaximized(); }
225
- _getIsWidgetShow() { return this._model.model().panes().length > 1; }
226
- }
227
- }, nFx7: function (e, t) {
228
- e.exports = '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 28 28" width="28" height="28"><g class="corner-left-top"><path fill="currentColor" d="M10 7C10.5523 7 11 7.44772 11 8V10C11 11.1046 10.1046 12 9 12H7C6.44772 12 6 11.5523 6 11C6 10.4477 6.44772 10 7 10H9V8C9 7.44772 9.44772 7 10 7Z"/></g><g class="corner-right-top"><path fill="currentColor" d="M18 7C18.5523 7 19 7.44772 19 8V10H21C21.5523 10 22 10.4477 22 11C22 11.5523 21.5523 12 21 12H19C17.8954 12 17 11.1046 17 10V8C17 7.44772 17.4477 7 18 7Z"/></g><g class="corner-right-bottom"><path fill="currentColor" d="M17 18C17 16.8954 17.8954 16 19 16H21C21.5523 16 22 16.4477 22 17C22 17.5523 21.5523 18 21 18H19V20C19 20.5523 18.5523 21 18 21C17.4477 21 17 20.5523 17 20V18Z"/></g><g class="corner-left-bottom"><path fill="currentColor" d="M6 17C6 16.4477 6.44772 16 7 16H9C10.1046 16 11 16.8954 11 18V20C11 20.5523 10.5523 21 10 21C9.44772 21 9 20.5523 9 20V18H7C6.44772 18 6 17.5523 6 17Z"/></g></svg>';
229
- }, obM5: function (e, t) { e.exports = '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 28 28" width="28" height="28"><path fill="currentColor" d="M7.65 8.35l.7-.7 6.15 6.14 6.15-6.14.7.7-6.14 6.15 6.14 6.15-.7.7-6.15-6.14-6.15 6.14-.7-.7 6.14-6.15-6.14-6.15z"/></svg>'; }, qfuz: function (e, t) { e.exports = '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 9 7" width="9" height="7"><path fill="currentColor" d="M.5 3.5L4 0v3h5v1H4v3z"/></svg>'; }, rGGD: function (e, t) { e.exports = '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" width="16" height="16"><path fill="currentColor" d="M2.4 5.46a.8.8 0 0 1 1.14-.05L8 9.42l4.46-4.01a.8.8 0 0 1 1.08 1.18L8 11.58 2.47 6.59a.8.8 0 0 1-.06-1.13z"/></svg>'; }, rh3U: function (e, t, s) { e.exports = { "css-value-small-size": "18px", "css-value-border-radius-small-size": "9px", "css-value-large-size": "22px", "css-value-border-radius-large-size": "11px", statuses: "statuses-1Ho_ylkC", statusItem: "statusItem-1Ho_ylkC", small: "small-1Ho_ylkC", large: "large-1Ho_ylkC", blinking: "blinking-1Ho_ylkC", oneWidgetsVisible: "oneWidgetsVisible-1Ho_ylkC", twoWidgetsVisible: "twoWidgetsVisible-1Ho_ylkC", threeWidgetsVisible: "threeWidgetsVisible-1Ho_ylkC", "blinking-animation": "blinking-animation-1Ho_ylkC", marketStatusOpen: "marketStatusOpen-1Ho_ylkC", marketStatusClose: "marketStatusClose-1Ho_ylkC", marketStatusPre: "marketStatusPre-1Ho_ylkC", marketStatusPost: "marketStatusPost-1Ho_ylkC", marketStatusHoliday: "marketStatusHoliday-1Ho_ylkC", invalidSymbol: "invalidSymbol-1Ho_ylkC", replayMode: "replayMode-1Ho_ylkC", notAccurate: "notAccurate-1Ho_ylkC", delay: "delay-1Ho_ylkC", eod: "eod-1Ho_ylkC", dataProblemHigh: "dataProblemHigh-1Ho_ylkC", dataProblemLow: "dataProblemLow-1Ho_ylkC" }; }, sAH5: function (e, t, s) {
230
- "use strict";
231
- s.r(t);
232
- var i = s("Eyy1"), o = s("hY0g"), l = s.n(o), n = s("ogJP"), a = s("ikwP"), r = s("eJTA"), d = s("Kxc7"), h = s("AvGy"), u = (s("LVLx"), s("MjAr")), c = s("EV8o"), _ = s("S8xo"), p = s("GUQs"), m = s("0jws");
233
- var b = s("OcaN");
234
- class g extends class {
235
- constructor(e, t = {}) { this._loadingEl = document.createElement("span"), this._renderLoading(t), this.toggleVisibility(!1), e.appendChild(this._loadingEl); }
236
- toggleVisibility(e) {
237
- this._loadingEl.classList.toggle(m.blockHidden, !e);
238
- }
239
- _renderLoading(e) { const { className: t } = e; t && this._loadingEl.classList.add(t); }
240
- } {
241
- _renderLoading(e) { super._renderLoading(e), this._loadingEl.innerHTML = `\n\t\t\t<span class="${b.loaderItem}"></span>\n\t\t\t<span class="${b.loaderItem}"></span>\n\t\t\t<span class="${b.loaderItem}"></span>\n\t\t`, this._loadingEl.classList.add(b.loader); }
242
- }
243
- var w = s("qFKp");
244
- function v(e, t) { null === e.firstChild ? e.textContent = t : e.firstChild.nodeValue = t; }
245
- var y = s("5Alx");
246
- const S = w.CheckMobile.any(), M = [y.title1st, y.title2nd, y.title3rd, y.title4th];
247
- class f {
248
- constructor(e, t, s) {
249
- this._el = null, this._firstBlockWrapper = null, this._titleParentEl = null, this._titleElements = [], this._valuesParentEl = null, this._valuesAdditionalWrapperEl = null, this._valuesElements = [], this._actionsParentEl = null, this._actionAdditionalWrapperEl = null, this._stayInHoveredMode = !1, this._mode = 4, this._statusesWrapper = null, this._resizeObserver = null, this._hideInvisibleHover = null, this._hideValues = null, this._allButtonsWidth = null, this._lastStatusesWrapperWidth = null, this._lastActionsWrapperWidth = null, this._showActionsHandler = null, this._hideActionsHandler = null, this._selectedSourceHandler = null, this._mouseEventHandlers = [], this._disableTimeout = null, this._loader = null, this._model = e, this._parentEl = t, this._disabled = this._model.disabled().spawn(), this._disabled.subscribe(this._updateDisabledState.bind(this)), this._disabledOnInterval = this._model.disabledOnInterval().spawn(), this._disabledOnInterval.subscribe(this._updateDisabledOnIntervalState.bind(this)), this._selected = this._model.selected().spawn(), this._selected.subscribe(this._updateSelectedState.bind(this)), this._loading = this._model.loading().spawn(), this._loading.subscribe(function (e, t) { let s = 0; return i => { clearTimeout(s), Boolean(i) ? e() : s = setTimeout(e, t, !1); }; }(this._updateLoadingState.bind(this), 700)), this._isTitleHidden = this._model.isTitleHidden().spawn(), this._isValuesHidden = this._model.isValuesHidden().spawn(), this._isRowHidden = this._model.isRowHidden().spawn(), this._isTitleHidden.subscribe(this._updateShowTitles.bind(this)), this._isValuesHidden.subscribe(this._updateShowValues.bind(this)), this._isRowHidden.subscribe(this._updateShowLine.bind(this)), this._titlesSpawns = this._model.titles().map(e => e.spawn());
250
- for (let e = 0; e < this._titlesSpawns.length; e++)
251
- this._titlesSpawns[e].subscribe(this._updateTitlesHandler.bind(this, e));
252
- this._values = this._model.values().spawn(), this._values.subscribe(this._updateValues.bind(this)), this._createValuesSpawns(), this._addValuesSpawnsSubscriptions(), this._actionsSpawnArray = this._model.actions().map(e => ({ visible: e.visible.spawn(), title: void 0 === e.title ? null : e.title.spawn() }));
253
- for (let e = 0; e < this._actionsSpawnArray.length; e++) {
254
- this._actionsSpawnArray[e].visible.subscribe(this._updateActionVisibilities.bind(this, e));
255
- const t = this._actionsSpawnArray[e].title;
256
- null !== t && t.subscribe(this._updateActionTitle.bind(this, e));
257
- }
258
- this._withActions = s.withActions, this._render(), this._updateStates(), this._updateShowTitles(), this._updateShowValues(), this._updateShowLine(),
259
- null !== this._valuesParentEl && (this._loader = new g(this._valuesParentEl, { className: y.loader })), this._customTextColor = s.customTextColor.spawn(), this._customTextColor.subscribe(this._updateCustomTextColor.bind(this)), this._updateCustomTextColor(), this._withActions && (this._showActionsHandler = Object(p.c)(this._showActions.bind(this)), this._hideActionsHandler = Object(p.c)(this._hideActions.bind(this)), this._selectedSourceHandler = Object(p.c)(this._model.setSourceSelected.bind(this._model)), null !== this._titleParentEl && (this._titleParentEl.addEventListener("touchend", this._selectedSourceHandler), this._titleParentEl.addEventListener("mousedown", this._selectedSourceHandler), S || (this._titleParentEl.addEventListener("mouseenter", this._showActionsHandler), this._titleParentEl.addEventListener("mouseleave", this._hideActionsHandler)), this._mouseEventHandlers.push(new _.MouseEventHandler(this._titleParentEl, { mouseDoubleClickEvent: this._model.onShowSettings.bind(this._model), doubleTapEvent: this._model.onShowSettings.bind(this._model) }))), null === this._actionAdditionalWrapperEl || null === this._actionsParentEl || S || (this._actionAdditionalWrapperEl.addEventListener("mouseenter", this._showActionsHandler), this._actionAdditionalWrapperEl.addEventListener("mouseleave", this._hideActionsHandler), this._actionsParentEl.addEventListener("contextmenu", e => { e.preventDefault(), e.stopPropagation(); })));
260
- }
261
- destroy() {
262
- var e, t;
263
- this._disabled.destroy(), this._disabledOnInterval.destroy(), this._selected.destroy(), this._loading.destroy(), this._isTitleHidden.destroy(), this._isValuesHidden.destroy(), this._isRowHidden.destroy(), this._customTextColor.destroy(), null !== this._disableTimeout && clearTimeout(this._disableTimeout);
264
- for (const e of this._titlesSpawns)
265
- e.destroy();
266
- if (null !== this._titleParentEl) {
267
- for (const e of this._mouseEventHandlers)
268
- e.destroy();
269
- this._titleElements = [], this._withActions && null !== this._selectedSourceHandler && null !== this._showActionsHandler && null !== this._hideActionsHandler && (this._titleParentEl.removeEventListener("touchend", this._selectedSourceHandler), this._titleParentEl.removeEventListener("mousedown", this._selectedSourceHandler), S || (this._titleParentEl.removeEventListener("mouseenter", this._showActionsHandler), this._titleParentEl.removeEventListener("mouseleave", this._hideActionsHandler))), this._titleParentEl = null;
270
- }
271
- for (const e of this._actionsSpawnArray) {
272
- e.visible.destroy();
273
- const t = e.title;
274
- null !== t && t.destroy();
275
- }
276
- if (null !== this._actionAdditionalWrapperEl && (this._withActions && null !== this._showActionsHandler && null !== this._hideActionsHandler && !S && (this._actionAdditionalWrapperEl.removeEventListener("mouseenter", this._showActionsHandler), this._actionAdditionalWrapperEl.removeEventListener("mouseleave", this._hideActionsHandler)), this._actionAdditionalWrapperEl = null), this._actionsParentEl = null, this._removeValuesSpawnsSubscriptions(), this._values.destroy(), null !== this._valuesParentEl && (this._valuesElements = [], this._valuesParentEl = null), null === (e = this._hideInvisibleHover) || void 0 === e || e.destroy(), null === (t = this._hideValues) || void 0 === t || t.destroy(),
277
- null !== this._resizeObserver && (this._resizeObserver.disconnect(), this._resizeObserver = null), null !== this._el) {
278
- Object(i.ensureNotNull)(this._el.parentNode).removeChild(this._el), this._el = null;
279
- }
280
- }
281
- getHeight() { return null === this._el ? null : 24; }
282
- updateMode(e) { this._mode === e && null !== this._allButtonsWidth || (this._mode = e, this._updateAllButtonsWidth()); }
283
- _render() { this._renderTitle(), this._renderActions(), this._renderValues(), this._el = document.createElement("div"), this._firstBlockWrapper = document.createElement("div"), this._firstBlockWrapper.classList.add(y.noWrapWrapper), this._firstBlockWrapper.appendChild(Object(i.ensureNotNull)(this._titleParentEl)), null !== this._actionsParentEl && this._firstBlockWrapper.appendChild(this._actionsParentEl), this._el.appendChild(this._firstBlockWrapper), this._el.appendChild(Object(i.ensureNotNull)(this._valuesParentEl)), this._parentEl.append(this._el); }
284
- _renderTitle() { null === this._titleParentEl && (this._titleParentEl = document.createElement("div"), this._titleParentEl.classList.add(y.titleWrapper)); const e = this._titleParentEl; for (let t = 0; t < this._titlesSpawns.length; t++) {
285
- const s = document.createElement("div");
286
- s.classList.add(y.title, M[t], "apply-overflow-tooltip"), s.dataset.name = "legend-source-title";
287
- const i = this._titlesSpawns[t].value();
288
- i.length > 0 ? (s.appendChild(document.createTextNode(i)), s.classList.add(y.withDot)) : s.classList.add(m.blockHidden), e.appendChild(s), this._titleElements.push(s);
289
- } }
290
- _renderActions() { if (!this._withActions)
291
- return; null === this._actionsParentEl && (this._actionsParentEl = document.createElement("div"), this._actionsParentEl.classList.add(y.buttonsWrapper), this._parentEl.append(this._actionsParentEl), this._actionAdditionalWrapperEl = document.createElement("div"), this._actionAdditionalWrapperEl.classList.add(y.buttons), this._actionsParentEl.appendChild(this._actionAdditionalWrapperEl)); const e = Object(i.ensureNotNull)(this._actionAdditionalWrapperEl), t = h.a ? "large" : "small"; for (const s of this._model.actions()) {
292
- const i = Object(c.a)(s, y.button, y.buttonIcon, m.blockHidden, t);
293
- e.appendChild(i);
294
- } }
295
- _isWidthButtonsMode() { return null !== this._el && (this._el.classList.contains(y.withAction) || this._disabled.value() || this._selected.value() || this._stayInHoveredMode); }
296
- _updateTitlesHandler(e, t) { const s = Object(i.ensureNotNull)(this._titleElements[e]), o = 0 === t.length; s.classList.toggle(m.blockHidden, o), s.classList.toggle(y.withDot, !o), v(s, t); }
297
- _updateStates(e) { this._updateDisabledState(), this._updateDisabledOnIntervalState(), this._updateSelectedState(), this._updateLoadingState(), e && this._clearDisableState(); }
298
- _updateValuesHTMLElHandler(e, t) { v(Object(i.ensure)(this._valuesElements[e].value), t), this._updateShowValues(); }
299
- _updateValueColorHandler(e, t = "") { Object(i.ensure)(this._valuesElements[e].value).style.color = t; }
300
- _updateValueVisibleHandler(e, t) { const s = Object(i.ensure)(this._valuesElements[e].value).closest("." + y.valueItem); null !== s && s.classList.toggle(m.blockHidden, !t); }
301
- _updateShowLine() { null !== this._el && this._el.classList.toggle(m.blockHidden, this._isRowHidden.value()); }
302
- _createValuesSpawns() {
303
- this._valuesSpawnArray = this._values.value().map(e => ({ value: e.value.spawn(), color: e.color.spawn(), visible: e.visible.spawn() }));
304
- }
305
- _removeValuesSpawnsSubscriptions() { for (const e of this._valuesSpawnArray)
306
- e.value.destroy(), e.color.destroy(), e.visible.destroy(); this._valuesSpawnArray = []; }
307
- _addValuesSpawnsSubscriptions() { for (let e = 0; e < this._valuesSpawnArray.length; e++) {
308
- const t = this._valuesSpawnArray[e];
309
- t.value.subscribe(this._updateValuesHTMLElHandler.bind(this, e)), t.color.subscribe(this._updateValueColorHandler.bind(this, e)), t.visible.subscribe(this._updateValueVisibleHandler.bind(this, e));
310
- } }
311
- _updateShowValues() { null !== this._valuesAdditionalWrapperEl && this._valuesAdditionalWrapperEl.classList.toggle(m.blockHidden, this._isValuesShouldBeHidden()); }
312
- _isValuesShouldBeHidden() { return !this._valuesSpawnArray.some(e => e.value.value().length > 0); }
313
- _addStatusesWidget(e, t, s) { this._statusesWrapper = document.createElement("div"), this._statusesWrapper.classList.add(y.statusesWrapper), this._statusesWrapper.appendChild(e), Object(i.ensureNotNull)(this._firstBlockWrapper).appendChild(this._statusesWrapper), this._hideInvisibleHover = t.spawn(), this._hideInvisibleHover.subscribe(this._updateInvisibleHoverMode.bind(this), { callWithLast: !0 }), this._hideValues = s.spawn(), this._hideValues.subscribe(this._updateHideValuesMode.bind(this), { callWithLast: !0 }), this._updateStatusWidgetVisibility(this._disabled.value()), this._resizeObserver = new u.default(this._handlerRestrictTitleWidth.bind(this)), null !== this._actionsParentEl && this._resizeObserver.observe(this._actionsParentEl), this._resizeObserver.observe(this._statusesWrapper); }
314
- _updateTitleMaxWidth() { if (null === this._firstBlockWrapper)
315
- return; const e = this._allButtonsWidth || 0, t = (this._lastActionsWrapperWidth || 0) + (this._lastStatusesWrapperWidth || 0); this._isWidthButtonsMode() ? this._firstBlockWrapper.style.maxWidth = `calc(100% - ${Math.max(e, t)}px)` : this._firstBlockWrapper.style.maxWidth = t > 0 ? `calc(100% - ${t}px)` : ""; }
316
- _updateAllButtonsWidth() { this._allButtonsWidth = this._getButtonsCount() * N + 1, this._updateTitleMaxWidth(); }
317
- _updateInvisibleHoverMode(e) { null !== this._el && this._el.classList.toggle(y.invisibleHover, !e); }
318
- _updateHideValuesMode(e) { null !== this._el && this._el.classList.toggle(y.hideValues, e); }
319
- _showActions() { if (null === this._el || !this._withActions)
320
- return; this._el.classList.add(y.withAction); const e = null !== this._valuesParentEl && null !== this._titleParentEl && this._valuesParentEl.offsetTop === this._titleParentEl.offsetTop; this._el.classList.toggle(y.withTail, e), this._updateTitleMaxWidth(); }
321
- _hideActions() { null !== this._el && this._withActions && !this._stayInHoveredMode && (this._el.classList.remove(y.withAction), null !== this._valuesParentEl && this._valuesParentEl.classList.remove(y.withTail), this._updateTitleMaxWidth()); }
322
- _handlerRestrictTitleWidth(e) {
323
- if (null === this._actionsParentEl || null === this._firstBlockWrapper)
324
- return;
325
- let t = null, s = null;
326
- for (const i of e)
327
- i.target === this._statusesWrapper && (t = i.contentRect.width), i.target === this._actionsParentEl && (s = i.contentRect.width);
328
- t === this._lastStatusesWrapperWidth && s === this._lastActionsWrapperWidth || (null !== t && (this._lastStatusesWrapperWidth = t), null !== s && (this._lastActionsWrapperWidth = s), this._updateTitleMaxWidth());
329
- }
330
- _clearDesabledTimeout() { null !== this._disableTimeout && (clearTimeout(this._disableTimeout), this._disableTimeout = null); }
331
- _updateDisabledState() { null !== this._el && (this._el.classList.remove("tempDisabled"), this._el.classList.remove(y.hiddenLoading), this._clearDesabledTimeout(), this._disabled.value() ? (this._el.classList.add(y.disabled), this._updateStatusWidgetVisibility(!0)) : (this._el.classList.add("tempDisabled"), this._el.classList.add(y.hiddenLoading), this._disableTimeout = setTimeout(() => { null !== this._el && (!this._loading.value() && this._el.classList.contains("tempDisabled") && (this._el.classList.remove("tempDisabled"), this._el.classList.remove(y.hiddenLoading), this._el.classList.toggle(y.disabled, this._disabled.value()), this._updateStatusWidgetVisibility(!1)), this._clearDesabledTimeout()); }, 1e3)), this._updateTitleMaxWidth()); }
332
- _clearDisableState() { null !== this._el && (this._el.classList.remove(y.hiddenLoading), this._el.classList.remove(y.disabled), this._el.classList.remove("tempDisabled"), this._updateStatusWidgetVisibility(this._disabled.value()), this._updateTitleMaxWidth()); }
333
- _updateDisabledOnIntervalState() { var e; null === (e = this._el) || void 0 === e || e.classList.toggle(y.disabledOnInterval, this._disabledOnInterval.value()); }
334
- _updateSelectedState() { null !== this._el && this._withActions && this._el.classList.toggle(y.selected, this._selected.value()); }
335
- _updateLoadingState() { if (null === this._el)
336
- return; this._el.classList.contains("tempDisabled") && (this._loading.value() ? this._el.classList.add(y.hiddenLoading) : this._clearDisableState()); const e = this._loading.value(); this._el.classList.toggle(y.loading, e), null !== this._loader && this._loader.toggleVisibility(e); }
337
- _updateShowTitles() { null !== this._titleParentEl && (this._titleParentEl.classList.toggle(m.blockHidden, this._isTitleHidden.value()), null !== this._actionsParentEl && this._actionsParentEl.classList.toggle(m.blockHidden, this._isTitleHidden.value())); }
338
- _updateValues() { this._removeValuesSpawnsSubscriptions(), this._createValuesSpawns(), null !== this._valuesParentEl && null !== this._valuesAdditionalWrapperEl && (this._valuesElements = [], this._valuesAdditionalWrapperEl.innerHTML = ""), this._renderValues(), this._addValuesSpawnsSubscriptions(), this._updateShowValues(); }
339
- _updateActionVisibilities(e) { null !== this._actionsParentEl && this._actionsParentEl.querySelectorAll("." + y.button)[e].classList.toggle(m.blockHidden, !this._actionsSpawnArray[e].visible.value()); }
340
- _updateActionTitle(e) { const t = this._actionsSpawnArray[e].title; null !== this._actionsParentEl && null !== t && this._actionsParentEl.querySelectorAll("." + y.button)[e].setAttribute("title", t.value()); }
341
- _updateCustomTextColor() {
342
- const e = this._customTextColor.value() || "";
343
- for (const t of this._titleElements)
344
- null !== t && (t.style.color = e);
345
- const t = Object(i.ensureNotNull)(this._valuesParentEl).querySelectorAll("." + y.valueTitle);
346
- for (let s = 0; s < t.length; s++)
347
- t[s].style.color = e;
348
- Object(i.ensureNotNull)(this._el).classList.toggle(y.withCustomTextColor, Boolean(e));
349
- }
350
- _updateStatusWidgetVisibility(e) { null !== this._statusesWrapper && this._statusesWrapper.classList.toggle(m.blockHidden, e); }
351
- }
352
- class E extends f {
353
- constructor(e, t, s) { super(e, t, s), this._clientHeight = null, this._flagged = this._model.flagged().spawn(), this._flagged.subscribe(this._updateFlaggedState.bind(this)), this._updateStates(), s.statusWidgetEl && this._addStatusesWidget(s.statusWidgetEl, s.hideInvisibleHover, s.hideValues), this._selected.subscribe(this._updateTitleMaxWidth.bind(this)); }
354
- destroy() { super.destroy(), void 0 !== this._flagged && this._flagged.destroy(); }
355
- getHeight() { return null === this._el ? null : (null === this._clientHeight && (this._clientHeight = this._el.clientHeight, 0 === this._clientHeight && (this._clientHeight = null)), this._clientHeight); }
356
- _getButtonsCount() { return 1 === this._mode ? 1 : 3; }
357
- _render() { super._render(); const e = Object(i.ensureNotNull)(this._el); e.classList.add(y.item, y.series), e.classList.toggle(y.onlyOneButtonCanBeStick, this._model.isOneButtonCanBeStick()), e.dataset.name = "legend-series-item"; }
358
- _updateStates() { super._updateStates(), this._updateFlaggedState(); }
359
- _renderValues() { null === this._valuesParentEl && (this._valuesParentEl = document.createElement("div"), this._valuesParentEl.classList.add(y.valuesWrapper), this._valuesAdditionalWrapperEl = document.createElement("div"), this._valuesAdditionalWrapperEl.classList.add(y.valuesAdditionalWrapper), this._valuesParentEl.appendChild(this._valuesAdditionalWrapperEl)); const e = Object(i.ensureNotNull)(this._valuesAdditionalWrapperEl), t = this._values.value(); for (const s of t) {
360
- const t = document.createElement("div");
361
- t.classList.add(y.valueItem), t.classList.toggle(m.blockHidden, !s.visible.value());
362
- const i = document.createElement("div"), o = s.title.value() || "";
363
- i.classList.add(y.valueTitle), i.classList.toggle(m.blockHidden, 0 === o.length), i.appendChild(document.createTextNode(o)), t.appendChild(i);
364
- const l = document.createElement("div");
365
- l.classList.add(y.valueValue), l.style.color = s.color.value() || "", l.appendChild(document.createTextNode(s.value.value())), t.appendChild(l), this._valuesElements.push({ title: i, value: l }), e.appendChild(t);
366
- } }
367
- _createValuesSpawns() { super._createValuesSpawns(), this._values.value().forEach((e, t) => { this._valuesSpawnArray[t].title = e.title.spawn(); }); }
368
- _removeValuesSpawnsSubscriptions() { for (const e of this._valuesSpawnArray)
369
- e.title.destroy(); super._removeValuesSpawnsSubscriptions(); }
370
- _addValuesSpawnsSubscriptions() { super._addValuesSpawnsSubscriptions(); for (let e = 0; e < this._valuesSpawnArray.length; e++)
371
- this._valuesSpawnArray[e].title.subscribe(this._updateValuesTitleHTMLElHandler.bind(this, e)); }
372
- _isValuesShouldBeHidden() { return !this._valuesSpawnArray.some(e => e.value.value().length > 0 || (e.title.value() || "").length > 0); }
373
- _updateValuesTitleHTMLElHandler(e, t = "") { const s = Object(i.ensure)(this._valuesElements[e].title); v(s, t), s.classList.toggle(m.blockHidden, 0 === t.length), this._updateShowValues(); }
374
- _isWidthButtonsMode() { return null !== this._el && (void 0 !== this._flagged && Boolean(this._flagged.value()) || super._isWidthButtonsMode()); }
375
- _updateFlaggedState() { if (void 0 === this._flagged)
376
- return; Object(i.ensureNotNull)(this._el).classList.toggle(y.flagged, Boolean(this._flagged.value())), this._updateTitleMaxWidth(); }
377
- }
378
- const C = w.isSafari ? "click" : "auxclick";
379
- class k extends f {
380
- constructor(e, t, s) { super(e, t, s), this._wheelClickHandler = null, this._canUpdateRowVisibility = !0, this._globalRowVisibility = this._model.globalVisibility().spawn(), this._globalRowVisibility.subscribe(this._updateShowLine.bind(this), { callWithLast: !0 }), this._has5Buttons = this._model.isPineScriptDataSource().spawn(), this._has5Buttons.subscribe(this._update5ButtonsStyles.bind(this)), this._updateStates(!this._disabled.value()), s.statusWidgetEl && this._addStatusesWidget(s.statusWidgetEl, s.hideInvisibleHover, s.hideValues), this._selected.subscribe(this._updateTitleMaxWidth.bind(this)), s.withActions && (this._wheelClickHandler = this._onWheelClicked.bind(this), null !== this._titleParentEl && this._titleParentEl.addEventListener(C, this._wheelClickHandler)); }
381
- destroy() { super.destroy(), this._has5Buttons.destroy(), this._globalRowVisibility && this._globalRowVisibility.destroy(), null !== this._wheelClickHandler && null !== this._titleParentEl && this._titleParentEl.removeEventListener(C, this._wheelClickHandler); }
382
- _updateShowLine() { if (null === this._el || !this._canUpdateRowVisibility)
383
- return; const e = !this._globalRowVisibility.value(); e ? this._el.classList.toggle(m.blockHidden, e) : super._updateShowLine(); }
384
- _getButtonsCount() { switch (this._mode) {
385
- case 4: return this._has5Buttons.value() ? 5 : 4;
386
- case 3: return 3;
387
- default: return 2;
388
- } }
389
- _render() { super._render(); const e = Object(i.ensureNotNull)(this._el); e.classList.add(y.item, y.study), e.dataset.name = "legend-source-item"; }
390
- _renderValues() { null === this._valuesParentEl && (this._valuesParentEl = document.createElement("div"), this._valuesParentEl.classList.add(y.valuesWrapper), this._valuesAdditionalWrapperEl = document.createElement("div"), this._valuesAdditionalWrapperEl.classList.add(y.valuesAdditionalWrapper), this._valuesParentEl.appendChild(this._valuesAdditionalWrapperEl)); const e = Object(i.ensureNotNull)(this._valuesAdditionalWrapperEl), t = this._values.value(); for (const s of t) {
391
- const t = document.createElement("div");
392
- t.classList.add(y.valueItem), t.classList.toggle(m.blockHidden, !s.visible.value());
393
- const i = document.createElement("div");
394
- i.classList.add(y.valueValue), i.style.color = s.color.value() || "", i.appendChild(document.createTextNode(s.value.value())), t.appendChild(i), this._valuesElements.push({ value: i }), e.appendChild(t);
395
- } }
396
- _update5ButtonsStyles(e) { null !== this._el && (this._el.classList.toggle(y.has5Buttons, e), this._updateAllButtonsWidth()); }
397
- _onWheelClicked(e) { 1 === e.button && this._model.onRemoveSource(); }
398
- }
399
- var V = s("JWMC");
400
- function x(e) { Object(V.trackEvent)("GUI", "Legend action", e); }
401
- var W = s("6dGu"), T = s("rGGD"), L = s("Y+EN"), O = s("vYP1");
402
- const A = window.t("Hide Indicator Legend"), D = window.t("Show Indicator Legend"), H = window.t("Show Object Tree");
403
- class B {
404
- constructor(e, t, s) {
405
- this._el = null, this._counterEl = null, this._arrowIconEL = null, this._objectTreeEl = null, this._mode = 0, this._parentEl = e, this._themedColor = t.spawn(),
406
- this._themedColor.subscribe(this._updateThemedColor.bind(this)), this._sourceCount = s.visibleDataSourceCount.spawn(), this._sourceCount.subscribe(this._updateSourceCount.bind(this)), this._isStateOpen = s.isDataSourcesCollapsed.spawn(), this._isStateOpen.subscribe(this._updateState.bind(this)), this._showObjectsTree = s.showObjectsTree.spawn(), this._showObjectsTree.subscribe(this._updateObjectTreeVisibility.bind(this)), this._render(), this._updateState(), this._updateThemedColor(this._themedColor.value()), this._updateObjectTreeVisibility(this._showObjectsTree.value()), this._toggleStateHandler = Object(p.c)(s.onCollapseDataSources), this._showObjectTreeHandler = Object(p.c)(s.onShowObjectsTreeDialog), null !== this._el && (this._el.addEventListener("touchend", this._toggleStateHandler), this._el.addEventListener("click", this._toggleStateHandler), this._el.addEventListener("contextmenu", e => { e.preventDefault(), e.stopPropagation(); })), null !== this._objectTreeEl && (this._objectTreeEl.addEventListener("touchend", this._showObjectTreeHandler), this._objectTreeEl.addEventListener("click", this._showObjectTreeHandler));
407
- }
408
- destroy() { this._sourceCount.destroy(), this._isStateOpen.destroy(), null !== this._objectTreeEl && (this._objectTreeEl.removeEventListener("touchend", this._showObjectTreeHandler), this._objectTreeEl.removeEventListener("click", this._showObjectTreeHandler), this._objectTreeEl = null), this._arrowIconEL = null, this._counterEl = null, null !== this._el && (this._el.removeEventListener("touchend", this._toggleStateHandler), this._el.removeEventListener("click", this._toggleStateHandler), this._el.innerHTML = "", this._el = null); }
409
- setMode(e) { this._mode = e ? 1 : 0, this._updateTooltip(); }
410
- _render() { this._el = document.createElement("div"), this._el.className = y.toggler + " apply-common-tooltip", this._arrowIconEL = document.createElement("div"), this._arrowIconEL.classList.add(y.iconArrow), this._arrowIconEL.innerHTML = h.a ? T : W, this._el.appendChild(this._arrowIconEL), this._objectTreeEl = document.createElement("div"), this._objectTreeEl.classList.add(y.objectTree), this._objectTreeEl.innerHTML = h.a ? O : L, this._el.appendChild(this._objectTreeEl), this._counterEl = document.createElement("div"), this._counterEl.classList.add(y.counter), this._counterEl.appendChild(document.createTextNode(String(this._sourceCount.value()))), this._el.appendChild(this._counterEl), this._parentEl.appendChild(this._el); }
411
- _updateThemedColor(e) { if (null !== this._el)
412
- if (e.length > 0) {
413
- const [t, s, i] = Object(r.parseRgb)(e);
414
- this._el.style.backgroundColor = Object(r.rgbaToString)([t, s, i, Object(r.normalizeAlphaComponent)(.8)]);
415
- }
416
- else
417
- this._el.style.removeProperty("background-color"); }
418
- _updateSourceCount(e) { v(Object(i.ensureNotNull)(this._counterEl), String(e)); {
419
- const t = Object(i.ensureNotNull)(this._el), s = e < 1;
420
- t.classList.toggle(m.blockHidden, s);
421
- const o = 1 === e;
422
- t.classList.toggle(y.onlyOneSourceShown, o);
423
- } }
424
- _updateCounterVisibility(e) { if (null === this._counterEl)
425
- return; const t = 1 === e; this._counterEl.classList.toggle(m.blockHidden, t); }
426
- _updateState() {
427
- const e = !this._isStateOpen.value();
428
- this._parentEl.classList.toggle(y.closed, e), this._updateTooltip(),
429
- x((e ? "Hide" : "Show") + " not main sources");
430
- }
431
- _tooltip() { return 1 === this._mode ? H : this._isStateOpen.value() ? A : D; }
432
- _updateTooltip() { null !== this._el && this._el.setAttribute("title", this._tooltip()); }
433
- _updateObjectTreeVisibility(e) { Object(i.ensureNotNull)(this._el).classList.toggle(y.objectsTreeCanBeShown, e); }
434
- }
435
- var P = s("+6II"), z = s("R5JZ");
436
- function j(e, t) { const s = new l.a(t(e.value())); e.subscribe(e => { s.setValue(t(e)); }); return s.readonly().spawn(() => e.unsubscribe()); }
437
- const N = h.a ? 44 : 28, I = d.enabled("object_tree_legend_mode");
438
- class R {
439
- constructor(e, t) { this._renderToggler = null, this._mainDataSourceRenderer = null, this._dataSourceRenderers = [], this._wrapText = null, this._parentEl = document.createElement("div"), this._mainDataSourceEl = null, this._dataSourcesEl = null, this._dataSourcesAdditionalWrapperEl = null, this._collapsedDataSourcesWrapperEl = null, this._collapsedDataSourcesEl = null, this._outsideEventForCollapsedTooltip = null, this._options = e, this._togglerOptions = t, this._isStudiesLegendHidden = e.isStudiesLegendHidden.spawn(), this._isStudiesLegendHidden.subscribe(this._updateLegendVisibility.bind(this)), this._isAllLegendHidden = e.isAllLegendHidden.spawn(), this._isAllLegendHidden.subscribe(this._updateLegendVisibility.bind(this)), this._updateLegendVisibility(), this._themedColor = e.themedColor.spawn(), this._themedColor.subscribe(this._setCustomBg.bind(this)), this._showBackground = e.showBackground.spawn(), this._showBackground.subscribe(this._setCustomBg.bind(this)), this._backgroundTransparency = e.backgroundTransparency.spawn(), this._backgroundTransparency.subscribe(this._setCustomBg.bind(this)), this._collapsedDataSourcesCountSpawn = e.collapsedDataSourcesCount.spawn(), this._collapsedDataSourcesCountSpawn.subscribe(this._updateCollapsedSourcesCount.bind(this)), this._showCollapsedDataSourcesTooltipHandler = this._showCollapsedDataSourcesTooltip.bind(this), h.a || (this._wrapText = e.wrapText.spawn(), this._wrapText.subscribe(this._updateWrapText.bind(this)), this._updateWrapText(this._wrapText.value())), this._parentEl.classList.add(y.legend), this._parentEl.classList.toggle(y.noActions, !this._options.withActions), this._parentEl.classList.toggle(y.touchMode, h.a), this._parentEl.classList.toggle(y.newCollapser, !0), this._parentEl.dataset.name = "legend", this._parentEl.style.setProperty("--legend-source-item-button-width", N + "px"), this._parentEl.addEventListener("contextmenu", t => { t.preventDefault(), e.showLegendWidgetContextMenu(t); }); }
440
- destroy() {
441
- if (this._isStudiesLegendHidden.destroy(), this._isAllLegendHidden.destroy(), this._themedColor.destroy(), this._showBackground.destroy(), this._backgroundTransparency.destroy(), this._collapsedDataSourcesCountSpawn.destroy(), h.a && null !== this._collapsedDataSourcesWrapperEl && this._collapsedDataSourcesWrapperEl.removeEventListener("touchend", this._showCollapsedDataSourcesTooltipHandler), this._outsideEventForCollapsedTooltip && this._outsideEventForCollapsedTooltip(), null !== this._wrapText && this._wrapText.destroy(), null !== this._dataSourcesAdditionalWrapperEl && (this._dataSourcesAdditionalWrapperEl.innerHTML = "", this._dataSourcesAdditionalWrapperEl = null),
442
- null !== this._dataSourcesEl && (this._dataSourcesEl.innerHTML = "", this._dataSourcesEl = null), null !== this._renderToggler && (this._renderToggler.destroy(), this._renderToggler = null), null !== this._mainDataSourceRenderer && (this._mainDataSourceRenderer.destroy(), this._mainDataSourceRenderer = null), 0 !== this._dataSourceRenderers.length) {
443
- for (const e of this._dataSourceRenderers)
444
- e.destroy();
445
- this._dataSourceRenderers = [];
446
- }
447
- this._parentEl.innerHTML = "", delete this._parentEl;
448
- }
449
- addMainDataSource(e, t) { this._renderMainDataSourceEl(), this._mainDataSourceRenderer = new E(e, Object(i.ensureNotNull)(this._mainDataSourceEl), { withActions: this._options.withActions, customTextColor: this._options.customTextColor, statusWidgetEl: t.getElement(), hideInvisibleHover: j(t.visibleWidgetsCount, e => Boolean(e)), hideValues: t.errorWidgetIsShown }), this._updateLegendVisibility(), e.onDestroy().subscribe(this, () => { null !== this._mainDataSourceRenderer && (this._mainDataSourceRenderer.destroy(), this._mainDataSourceRenderer = null); }, !0); }
450
- addDataSources(e, t) { this._renderDataSourcesEl(); const s = Object(i.ensureNotNull)(this._dataSourcesAdditionalWrapperEl); for (let i = 0; i < e.length; i++) {
451
- const o = e[i], l = new k(o, s, { withActions: this._options.withActions, customTextColor: this._options.customTextColor, statusWidgetEl: t[i].getElement(), hideInvisibleHover: j(t[i].visibleWidgetsCount, e => Boolean(e)), hideValues: t[i].errorWidgetIsShown });
452
- this._dataSourceRenderers.push(l), this._updateLegendVisibility(), o.onDestroy().subscribe(this, () => { const e = this._dataSourceRenderers.indexOf(l); -1 !== e && (this._dataSourceRenderers[e].destroy(), this._dataSourceRenderers.splice(e, 1)); }, !0);
453
- } }
454
- addCustomWidget(e, t) { if (0 === t.block) {
455
- this._renderMainDataSourceEl();
456
- const s = Object(i.ensureNotNull)(this._mainDataSourceEl);
457
- 1 === t.position && e.renderTo(s, s.firstChild), 0 === t.position && e.renderTo(s);
458
- } if (1 === t.block) {
459
- this._renderDataSourcesEl();
460
- const s = Object(i.ensureNotNull)(this._dataSourcesAdditionalWrapperEl);
461
- 1 === t.position && e.renderTo(s, s.firstChild), 0 === t.position && e.renderTo(s);
462
- } }
463
- firstTitle() { return this._parentEl.firstElementChild; }
464
- getElement() { return this._parentEl; }
465
- updateMode(e) { const t = I && e < 112 ? 1 : e < 205 ? 2 : e < 222 ? 3 : 4; null !== this._mainDataSourceRenderer && this._mainDataSourceRenderer.updateMode(t); for (const e of this._dataSourceRenderers)
466
- e.updateMode(t); this._parentEl.classList.toggle(y.medium, 3 === t), this._parentEl.classList.toggle(y.minimized, 2 === t), this._parentEl.classList.toggle(y.micro, 1 === t), null !== this._renderToggler && this._renderToggler.setMode(1 === t); const s = h.a || e < 542; this._parentEl.classList.toggle(y.directionColumn, s); }
467
- getMainSourceHeight() { return null === this._mainDataSourceRenderer ? 0 : this._mainDataSourceRenderer.getHeight(); }
468
- getDataSourceHeight() { return 0 === this._dataSourceRenderers.length ? 0 : this._dataSourceRenderers[0].getHeight(); }
469
- _renderMainDataSourceEl() { null === this._mainDataSourceEl && (this._mainDataSourceEl = document.createElement("div"), this._parentEl.insertBefore(this._mainDataSourceEl, this._dataSourcesEl)); }
470
- _renderDataSourcesEl() {
471
- null === this._dataSourcesEl && (this._dataSourcesEl = document.createElement("div"),
472
- this._dataSourcesEl.classList.add(y.sourcesWrapper), this._renderToggle(this._dataSourcesEl), this._dataSourcesAdditionalWrapperEl = document.createElement("div"), this._dataSourcesAdditionalWrapperEl.classList.add(y.sources), this._dataSourcesEl.appendChild(this._dataSourcesAdditionalWrapperEl), this._renderCollapsedCounter(this._dataSourcesAdditionalWrapperEl), this._parentEl.appendChild(this._dataSourcesEl));
473
- }
474
- _renderToggle(e) { this._options.showToggleButton && (this._renderToggler = new B(e, this._options.themedColor, this._togglerOptions)); }
475
- _renderCollapsedCounter(e) { this._collapsedDataSourcesWrapperEl = document.createElement("div"), this._collapsedDataSourcesWrapperEl.className = `${y.item} ${y.last}`, this._collapsedDataSourcesEl = document.createElement("span"), this._collapsedDataSourcesEl.className = y.text + " apply-common-tooltip", this._collapsedDataSourcesWrapperEl.append(this._collapsedDataSourcesEl), e.append(this._collapsedDataSourcesWrapperEl), h.a && this._collapsedDataSourcesWrapperEl.addEventListener("touchend", this._showCollapsedDataSourcesTooltipHandler), this._updateCollapsedSourcesCount(this._collapsedDataSourcesCountSpawn.value()); }
476
- _showCollapsedDataSourcesTooltip() { Object(P.c)(this._collapsedDataSourcesEl, { text: this._options.collapsedDataSourcesTitle.value() }), this._addOutsideEventForHideTooltip(); }
477
- _addOutsideEventForHideTooltip() { null !== this._outsideEventForCollapsedTooltip && this._outsideEventForCollapsedTooltip(), this._outsideEventForCollapsedTooltip = Object(z.a)(new CustomEvent("timestamp").timeStamp, this._collapsedDataSourcesWrapperEl, () => { null !== this._outsideEventForCollapsedTooltip && this._outsideEventForCollapsedTooltip(), Object(P.a)(); }, window.document, { touchEnd: !0 }); }
478
- _updateCollapsedSourcesCount(e) { if (null === this._collapsedDataSourcesWrapperEl || null === this._collapsedDataSourcesEl)
479
- return; const t = 0 === e; this._collapsedDataSourcesWrapperEl.classList.toggle(m.blockHidden, t), t || (v(this._collapsedDataSourcesEl, "+" + e), this._collapsedDataSourcesEl.setAttribute("title", this._options.collapsedDataSourcesTitle.value())); }
480
- _updateLegendVisibility() { this._parentEl.classList.toggle(m.blockHidden, this._isAllLegendHidden.value()), null !== this._dataSourcesEl && this._dataSourcesEl.classList.toggle(m.blockHidden, this._isStudiesLegendHidden.value()); }
481
- _setCustomBg() { const e = this._showBackground.value(), t = this._themedColor.value(), s = this._backgroundTransparency.value(); let i = ""; if (e) {
482
- const [e, o, l] = Object(r.parseRgb)(t);
483
- i = Object(r.rgbaToString)([e, o, l, Object(r.normalizeAlphaComponent)(1 - s / 100)]);
484
- } this._parentEl.style.color = i; }
485
- _updateWrapText(e) { this._parentEl.classList.toggle(y.noWrap, !e); }
486
- }
487
- var F = s("Tmoa"), K = s("aIyQ"), U = s.n(K), Y = s("Ialn"), G = s("QloM"), Z = s("1AAW"), X = s("CLNU");
488
- function $(e) { return void 0 !== e ? F.resetTransparency(e) : e; }
489
- const q = window.t("Show"), J = window.t("Hide");
490
- class Q {
491
- constructor(e, t, s, i, o) {
492
- this._values = new l.a([]), this._actions = [], this._onDestroy = new U.a, this._loading = new l.a(!1), this._moreActionCM = null, this._model = e, this._source = t, this._options = s, this._callbacks = i, this._contextMenuOptions = o, this._disabled = new l.a(this._getDisabledState()),
493
- this._disabledOnInterval = new l.a(this._getDisabledOnIntervalState()), this._selected = new l.a(!1), this._isTitleHidden = new l.a(this._getTitleHiddenValue()), this._isValuesHidden = new l.a(this._getValuesHiddenValue()), this._isRowHidden = new l.a(this._getRowHiddenValue()), Object(Z.a)(() => ({}), this._isTitleHidden, this._isValuesHidden, this._disabled).subscribe(this._updateRowVisibilities.bind(this)), this._values.subscribe(() => { this._isValuesHidden.setValue(this._getValuesHiddenValue()); });
494
- }
495
- destroy() { }
496
- onDestroy() { return this._onDestroy; }
497
- titles() { return this._titles.map(e => e.readonly()); }
498
- values() { return this._values.readonly(); }
499
- actions() { return this._actions; }
500
- disabled() { return this._disabled.readonly(); }
501
- disabledOnInterval() { return this._disabledOnInterval.readonly(); }
502
- selected() { return this._selected.readonly(); }
503
- loading() { return this._loading.readonly(); }
504
- isTitleHidden() { return this._isTitleHidden.readonly(); }
505
- isValuesHidden() { return this._isValuesHidden.readonly(); }
506
- isRowHidden() { return this._isRowHidden.readonly(); }
507
- update() { this._updateTitle(), this._updateValues(), this._updateStates(); }
508
- updateSource(e) { this._source !== e && (this._source = e, this.update(), this._isTitleHidden.setValue(this._getTitleHiddenValue()), this._isValuesHidden.setValue(this._getValuesHiddenValue())); }
509
- onToggleDisabled() { const e = this._source.properties().childs().visible, t = !e.value(); this._model.setProperty(e, t, `${t ? "Show" : "Hide"} ${this._source.title()}`), x((t ? "Show" : "Hide") + " source"); }
510
- onShowSettings() { this._source.userEditEnabled() && (this.setSourceSelected(), this._callbacks.showChartPropertiesForSource(this._source, G.TabNames.style), x("Settings for source")); }
511
- onShowMoreActions(e) { return this._options.readOnlyMode ? Promise.resolve(null) : (this._callbacks.updateActions(), x("Show source context menu"), this._callbacks.showContextMenuForSources([this._source], this._calcNewPosition(e), this._contextMenuOptions)); }
512
- setSourceSelected() { this._model.selectionMacro(e => { e.clearSelection(), e.addSourceToSelection(this._source); }); }
513
- _moreActionHandler(e) { e.preventDefault(), null !== this._moreActionCM && this._moreActionCM.isShown() ? this._moreActionCM = null : (this.setSourceSelected(), this.onShowMoreActions(e).then(e => { this._moreActionCM = e; })); }
514
- _updateTitle() { const e = this._source.statusView(); if (null === e)
515
- return; const t = e.getSplitTitle(); for (let e = 0; e < this._titles.length; e++) {
516
- const s = t[e], i = Object(X.clean)(Array.isArray(s) ? s.join(" ") : s || "", !0);
517
- this._titles[e].setValue(i);
518
- } }
519
- _updateStates() { this._disabled.setValue(this._getDisabledState()), this._disabledOnInterval.setValue(this._getDisabledOnIntervalState()), this._selected.setValue(this._model.selection().isSelected(this._source)), this._loading.setValue(Boolean(this._source.isLoading())); }
520
- _hasValues() { return this._values.value().length > 0; }
521
- _getEyeTitle() { return this._disabled.value() ? q : J; }
522
- _getDisabledState() { return !this._source.properties().visible.value(); }
523
- _updateRowVisibilities() { this._isRowHidden.setValue(this._getRowHiddenValue()); }
524
- _getRowHiddenValue() {
525
- return this._options.readOnlyMode && this._disabled.value() || this._isTitleHidden.value() && (this._isValuesHidden.value() || this._disabled.value());
526
- }
527
- _calcNewPosition(e) { let t = {}; if (e.hasOwnProperty("touches") && e.touches.length > 0)
528
- t = { clientX: e.touches[0].clientX, clientY: e.touches[0].clientY };
529
- else if (null !== e.target) {
530
- const s = e.target.getBoundingClientRect();
531
- t = { clientX: Object(Y.isRtl)() ? s.right : s.left, clientY: s.top + s.height + 3 };
532
- }
533
- else {
534
- const s = e;
535
- t = { clientX: s.clientX, clientY: s.clientY };
536
- } return t; }
537
- }
538
- var ee = s("z4c1"), te = s("61S9"), se = s("vWJB"), ie = s("wZiV");
539
- const oe = window.t("More"), le = window.t("Flag Symbol"), ne = window.t("Unflag Symbol"), ae = d.enabled("show_hide_button_in_legend");
540
- class re extends Q {
541
- constructor(e, t, s, i, o) { super(e, t, s, i, o), this._titles = [new l.a(""), new l.a(""), new l.a(""), new l.a("")], this._symbolMarker = null, this._symbolMarkerIcon = null, this._flagged = new l.a(null), this._symbolAction = null, this._symbol = null, this._isOneButtonCanBeStick = !1, this._createActions(), this._updateSymbolMarker(), this._model.model().properties().paneProperties.legendProperties.showSeriesTitle.subscribe(this, () => { this._isTitleHidden.setValue(this._getTitleHiddenValue()); }); const n = [this._model.model().properties().paneProperties.legendProperties.showSeriesOHLC, this._model.model().properties().paneProperties.legendProperties.showBarChange]; for (const e of n)
542
- e.subscribe(this, () => { this._isValuesHidden.setValue(this._getValuesHiddenValue()); }); this.update(), this._source.onStatusChanged().subscribe(this, () => { this._loading.setValue(this._source.isLoading()); }); }
543
- destroy() { super.destroy(), this._model.model().properties().paneProperties.legendProperties.showSeriesTitle.unsubscribeAll(this), this._model.model().properties().paneProperties.legendProperties.showSeriesOHLC.unsubscribeAll(this), this._model.model().properties().paneProperties.legendProperties.showBarChange.unsubscribeAll(this), this._source.onStatusChanged().unsubscribeAll(this), this._onDestroy.fire(); }
544
- flagged() { return this._flagged.readonly(); }
545
- onShowSettings() { this._source.userEditEnabled() && this._callbacks.showGeneralChartProperties(G.TabNames.symbol); }
546
- isOneButtonCanBeStick() { return this._isOneButtonCanBeStick; }
547
- _updateValues() { const e = this._source.legendView(), t = this._values.value(), s = e.marketTitle(), i = e.marketTitle().length > 0; if (0 === t.length) {
548
- const t = { value: new l.a(""), color: new l.a(""), visible: new l.a(i), title: new l.a(s) }, o = e.items().map(e => ({ value: new l.a(e.value()), color: new l.a($(e.color())), visible: new l.a(e.visible()), title: new l.a(e.title()) }));
549
- this._values.setValue([t].concat(o));
550
- }
551
- else {
552
- t[0].title.setValue(s), t[0].visible.setValue(i);
553
- const o = e.items();
554
- for (let e = 0; e < o.length; e++) {
555
- const s = o[e];
556
- t[e + 1].value.setValue(s.value()), t[e + 1].color.setValue($(s.color())), t[e + 1].visible.setValue(s.visible()), t[e + 1].title.setValue(s.title());
557
- }
558
- } }
559
- _updateStates() { super._updateStates(), this._updateSymbolMarker(); }
560
- _getDisabledOnIntervalState() { return !1; }
561
- _getTitleHiddenValue() { return !this._model.model().properties().paneProperties.legendProperties.showSeriesTitle.value(); }
562
- _getValuesHiddenValue() {
563
- return !this._hasValues() || !this._model.model().properties().paneProperties.legendProperties.showSeriesOHLC.value() && !this._model.model().properties().paneProperties.legendProperties.showBarChange.value();
564
- }
565
- _createActions() { if (ae) {
566
- const e = { iconMap: new Map([["large", te], ["small", ee]]), action: Object(p.c)(this.onToggleDisabled.bind(this)), visible: new l.a(!0), className: y.eye, title: new l.a(this._getEyeTitle()), dataset: { name: "legend-show-hide-action" } };
567
- this._actions.push(e), this._disabled.subscribe(() => { e.title.setValue(this._getEyeTitle()); });
568
- } this._actions.push({ iconMap: new Map([["large", ie], ["small", se]]), action: this._moreActionHandler.bind(this), visible: new l.a(!0), title: new l.a(oe), dataset: { name: "legend-more-action" } }); }
569
- _getMarkerTitle() { return null !== this._symbolMarker ? this._symbolMarker.isMarked() ? ne : le : ""; }
570
- _symbolActionHandler() { null !== this._symbolMarker && (this._updateSymbolMarker(), x("Change flag state")); }
571
- _updateSymbolMarker() { this._isOneButtonCanBeStick = !0; }
572
- }
573
- var de = s("3ClC"), he = s("fZEr");
574
- var ue = s("z61+"), ce = s("txPx"), _e = s("RgOa"), pe = s("2CEX"), me = s("D8x7"), be = s("bNWL"), ge = s("cKqi"), we = s("YzC7");
575
- Object(ce.getLogger)("Chart.LegendWidget");
576
- const ve = window.t("Settings"), ye = window.t("Source code"), Se = window.t("Remove"), Me = window.t("More"), fe = (window.t("Error"), window.t("Could not get Pine source code."), d.enabled("study_buttons_in_legend"), d.enabled("show_hide_button_in_legend")), Ee = d.enabled("property_pages"), Ce = d.enabled("format_button_in_legend"), ke = d.enabled("delete_button_in_legend");
577
- class Ve extends Q {
578
- constructor(e, t, s, i, o) { super(e, t, s, i, o), this._titles = [new l.a(""), new l.a("")], this._error = new l.a(!1), this._isPineScriptDataSource = new l.a(!1), this._pineAction = null, this._globalVisibility = new l.a(!0), this._createActions(); const n = [this._model.model().properties().paneProperties.legendProperties.showSeriesTitle, this._model.model().properties().paneProperties.legendProperties.showStudyTitles]; for (const e of n)
579
- e.subscribe(this, () => { this._isTitleHidden.setValue(this._getTitleHiddenValue()); }); const a = [this._model.model().properties().paneProperties.legendProperties.showSeriesOHLC, this._model.model().properties().paneProperties.legendProperties.showBarChange, this._model.model().properties().paneProperties.legendProperties.showStudyValues]; for (const e of a)
580
- e.subscribe(this, () => { this._isValuesHidden.setValue(this._getValuesHiddenValue()); }); this.update(); }
581
- destroy() { super.destroy(); const e = this._model.model().properties().paneProperties.legendProperties; e.showSeriesTitle.unsubscribeAll(this), e.showStudyTitles.unsubscribeAll(this), e.showSeriesOHLC.unsubscribeAll(this), e.showBarChange.unsubscribeAll(this), e.showStudyValues.unsubscribeAll(this), this._onDestroy.fire(); }
582
- error() { return this._error.readonly(); }
583
- isPineScriptDataSource() { return this._isPineScriptDataSource.readonly(); }
584
- updateSource(e) { this._source !== e && (this._values.setValue([]), super.updateSource(e), this._updateAbleShowSourceCode()); }
585
- onRemoveSource() {
586
- var e;
587
- this._source.isUserDeletable() && (this._source.hasChildren() ? (e = this._model.removeSource.bind(this._model, this._source, !1),
588
- Object(he.showConfirm)({ title: window.t("Confirm Remove Study Tree"), text: window.t("Do you really want to delete study and all of it's children?"), onConfirm: ({ dialogClose: t }) => { e(), t(); } })) : this._model.removeSource(this._source, !1), x("Remove sources"));
589
- }
590
- onShowSourceCode() { 0; }
591
- setGlobalVisibility(e) { this._globalVisibility.setValue(e); }
592
- globalVisibility() { return this._globalVisibility.readonly(); }
593
- getFullTitle() { return this._titles.map(e => e.value()).join(" "); }
594
- _updateValues() { const e = this._source.legendView(); if (null === e)
595
- return; if (0 === e.items().length)
596
- return; const t = this._values.value(); if (0 === t.length) {
597
- const t = e.items().map(e => ({ value: new l.a(e.value()), color: new l.a($(e.color())), visible: new l.a(e.visible()) }));
598
- this._values.setValue(t);
599
- }
600
- else {
601
- const s = e.items();
602
- for (let e = 0; e < s.length; e++) {
603
- const i = t[e], o = s[e];
604
- i.value.setValue(o.value()), i.color.setValue($(o.color())), i.visible.setValue(o.visible());
605
- }
606
- } }
607
- _updateStates() { super._updateStates(), void 0 !== this._error && this._error.setValue(Boolean(this._source.isFailed())); }
608
- _getTitleHiddenValue() { return this._isSymbolLikeStudy() ? !this._model.model().properties().paneProperties.legendProperties.showSeriesTitle.value() : !this._model.model().properties().paneProperties.legendProperties.showStudyTitles.value(); }
609
- _getDisabledOnIntervalState() { return !(!Object(de.isStudy)(this._source) && !Object(de.isStudyStub)(this._source)) && !this._source.isActualInterval(); }
610
- _getValuesHiddenValue() { return !this._hasValues() || (this._isSymbolLikeStudy() ? !this._model.model().properties().paneProperties.legendProperties.showSeriesOHLC.value() && !this._model.model().properties().paneProperties.legendProperties.showBarChange.value() : !this._model.model().properties().paneProperties.legendProperties.showStudyValues.value()); }
611
- _isSymbolLikeStudy() { return this._source instanceof ge.study_Overlay || this._source instanceof we.a; }
612
- _updateAbleShowSourceCode() { 0; }
613
- _updateVisibilityPineAction(e) { null !== this._pineAction && (this._pineAction.visible.setValue(e), this._isPineScriptDataSource.setValue(e)); }
614
- _createActions() {
615
- if (!this._options.readOnlyMode) {
616
- if (this._pineAction = { iconMap: new Map([["large", pe], ["small", pe]]), action: Object(p.c)(this.onShowSourceCode.bind(this)), visible: new l.a(!1), title: new l.a(ye), dataset: { name: "legend-pine-action" } }, fe) {
617
- const e = { iconMap: new Map([["large", te], ["small", ee]]), action: Object(p.c)(this.onToggleDisabled.bind(this)), visible: new l.a(!0), className: y.eye, title: new l.a(this._getEyeTitle()), dataset: { name: "legend-show-hide-action" } };
618
- this._actions.push(e), this._disabled.subscribe(() => { e.title.setValue(this._getEyeTitle()); });
619
- }
620
- Ee && Ce && (!Object(de.isStudy)(this._source) || new ue.a(this._source.metaInfo()).hasUserEditableOptions()) && this._actions.push({ iconMap: new Map([["large", _e], ["small", _e]]), action: Object(p.c)(this.onShowSettings.bind(this)), visible: new l.a(!0), title: new l.a(ve), dataset: { name: "legend-settings-action" } }), ke && this._actions.push({ iconMap: new Map([["large", be], ["small", me]]), action: Object(p.c)(this.onRemoveSource.bind(this)), visible: new l.a(!0), title: new l.a(Se), dataset: { name: "legend-delete-action" } }),
621
- this._actions.push({ iconMap: new Map([["large", ie], ["small", se]]), action: this._moreActionHandler.bind(this), visible: new l.a(!0), title: new l.a(Me), dataset: { name: "legend-more-action" } });
622
- }
623
- }
624
- }
625
- var xe = s("7KDR"), We = s("5VQP"), Te = s("x2L+"), Le = s("2uTr"), Oe = s("MXV9");
626
- function Ae(e, t, s) { e.setProperty(t, !t.value(), s); }
627
- function De(e, t, s, i, o, l) { return function (e, t, s, i, o) { const l = [], n = i.get(0); if (void 0 !== n) {
628
- const e = n.get(1);
629
- void 0 !== e && e.length > 0 && (l.push(...e), l.push(new xe.Separator));
630
- } const a = e.model().properties().paneProperties.legendProperties; l.push(new xe.Action({ checkable: !0, checked: a.showSeriesTitle.value(), label: He, statName: "Show Symbol", onExecute: () => Ae(e, a.showSeriesTitle, "Change Symbol Description Visibility") })), t.showOpenMarketStatus && l.push(new xe.Action({ checkable: !0, checked: Te.b.value(), label: Be, statName: "Show Open market status", onExecute: () => Ae(e, Te.b, "Change open market status visibility") })); if (l.push(new xe.Action({ checkable: !0, checked: a.showSeriesOHLC.value(), label: Pe, statName: "Show OHLC Values", onExecute: () => Ae(e, a.showSeriesOHLC, "Change OHLC Values Visibility") })), l.push(new xe.Action({ checkable: !0, checked: a.showBarChange.value(), label: ze, statName: "Show Bar Change Values", onExecute: () => Ae(e, a.showBarChange, "Change Bar Change Visibility") })), l.push(new xe.Separator), void 0 !== n) {
631
- const e = n.get(0);
632
- void 0 !== e && e.length > 0 && (l.push(...e), l.push(new xe.Separator));
633
- } const r = i.get(1); if (void 0 !== r) {
634
- const e = r.get(1);
635
- void 0 !== e && e.length > 0 && (l.push(...e), l.push(new xe.Separator));
636
- } if (l.push(new xe.Action({ checkable: !0, checked: a.showStudyTitles.value(), label: je, statName: "Show Indicator Titles", onExecute: () => Ae(e, a.showStudyTitles, "Change Indicator Titles Visibility") })), l.push(new xe.Action({ checkable: !0, checked: a.showStudyArguments.value(), label: Ne, statName: "Show Indicator Arguments", onExecute: () => Ae(e, a.showStudyArguments, "Change Indicator Arguments Visibility") })), l.push(new xe.Action({ checkable: !0, checked: a.showStudyValues.value(), label: Ie, statName: "Show Indicator Values", onExecute: () => Ae(e, a.showStudyValues, "Change Indicator Values Visibility") })), void 0 !== r) {
637
- const e = r.get(0);
638
- void 0 !== e && e.length > 0 && (l.push(...e), l.push(new xe.Separator));
639
- } 0; t.settings && (l.push(new xe.Separator), l.push(new xe.Action({ label: Object(Le.appendEllipsis)(window.t("Settings")), icon: Oe, statName: "Settings...", onExecute: () => s(G.TabNames.legend) }))); return We.ContextMenuManager.createMenu(l, {}, o); }(e, t, s, i, l).then(e => (e.show(o), e)); }
640
- const He = window.t("Show Symbol"), Be = window.t("Show Open market status"), Pe = window.t("Show OHLC Values"), ze = window.t("Show Bar Change Values"), je = window.t("Show Indicator Titles"), Ne = window.t("Show Indicator Arguments"), Ie = window.t("Show Indicator Values");
641
- window.t("Wrap text"), w.CheckMobile.any();
642
- var Re = s("+DwS"), Fe = s("Y7w9"), Ke = s("+6ja"), Ue = s("kcTO"), Ye = s("4nwx"), Ge = s("99ZO"), Ze = s("jCNj"), Xe = s("GOhO"), $e = s("5mo2");
643
- function qe(e) { return e === Ge.WeekDays.SUNDAY ? Ge.WeekDays.SATURDAY : e - 1; }
644
- function Je(e) { return e === Ge.WeekDays.SATURDAY ? Ge.WeekDays.SUNDAY : e + 1; }
645
- function Qe(e, t) {
646
- const s = qe(t);
647
- return 0 === e[s].entries.length ? Qe(e, s) : { dayIndex: s, entries: e[s].entries };
648
- }
649
- function et(e, t) { const s = Je(t); return 0 === e[s].entries.length ? et(e, s) : { dayIndex: s, entries: e[s].entries }; }
650
- function tt(e) { for (; e > Ze.minutesPerDay;)
651
- e -= Ze.minutesPerDay; const t = e % 60, s = (e - t) / 60; return Object(Ue.numberToStringWithLeadingZero)(s, 2) + ":" + Object(Ue.numberToStringWithLeadingZero)(t, 2); }
652
- const st = { [Ge.WeekDays.MONDAY]: { title: Ye.weekDaysShortNames[Ge.WeekDays.MONDAY], isActive: !1, entries: [] }, [Ge.WeekDays.TUESDAY]: { title: Ye.weekDaysShortNames[Ge.WeekDays.TUESDAY], isActive: !1, entries: [] }, [Ge.WeekDays.WEDNESDAY]: { title: Ye.weekDaysShortNames[Ge.WeekDays.WEDNESDAY], isActive: !1, entries: [] }, [Ge.WeekDays.THURSDAY]: { title: Ye.weekDaysShortNames[Ge.WeekDays.THURSDAY], isActive: !1, entries: [] }, [Ge.WeekDays.FRIDAY]: { title: Ye.weekDaysShortNames[Ge.WeekDays.FRIDAY], isActive: !1, entries: [] }, [Ge.WeekDays.SATURDAY]: { title: Ye.weekDaysShortNames[Ge.WeekDays.SATURDAY], isActive: !1, entries: [] }, [Ge.WeekDays.SUNDAY]: { title: Ye.weekDaysShortNames[Ge.WeekDays.SUNDAY], isActive: !1, entries: [] } };
653
- function it(e, t) { return e.start.value === t.start.value && e.end.value === t.end.value; }
654
- function ot(e, t) { return it(e[0], t[0]); }
655
- function lt(e) { const t = e.start(), s = e.length(), i = e.sessionStartDayOfWeek(), o = e.sessionEndDayOfWeek(), l = tt(t), n = tt(t + s); return s > Ze.minutesPerDay ? `${Ye.weekDaysShortNames[i]} ${l} — ${Ye.weekDaysShortNames[o]} ${n}` : `${l} — ${n}`; }
656
- function nt(e, t, s, i) { return Math.abs(i - s) > 1 ? `${Ye.weekDaysShortNames[s]} ${e.title} — ${Ye.weekDaysShortNames[i]} ${t.title}` : `${e.title} — ${t.title}`; }
657
- function at(e, t, s) { for (const i of t) {
658
- let t = i.sessionStartDayOfWeek();
659
- const o = i.start(), l = i.length(), n = o + l, a = [];
660
- if (n <= Ze.minutesPerDay)
661
- a.push([o, n]);
662
- else {
663
- const e = Math.min(Ze.minutesPerDay - o, l);
664
- a.push([o, o + e]), a.push([0, l - e]);
665
- }
666
- for (let o = 0; o < a.length; o++) {
667
- const l = a[o], [n, r] = l, d = n / Ze.minutesPerDay, h = Object(Fe.lowerbound)(e[t].entries, d, (e, t) => e.start.value < t), u = { start: { value: d, title: tt(n), isFirstOrLastPoint: n === i.start() }, end: { value: r / Ze.minutesPerDay, title: tt(r), isFirstOrLastPoint: a.length - 1 === o }, type: s, tooltip: lt(i), showStartForLastEntry: !1, showEndForFirstEntry: !1 };
668
- e[t].entries.splice(h, 0, u), t = Je(t);
669
- }
670
- } }
671
- class rt {
672
- constructor(e) { this.sessionsDays = new l.a(Object(n.clone)(st)), this.todaySession = new l.a(Object(n.clone)({ entries: [] })), this._todayInExchangeTime = null; const t = e; this._symbolInfo = Object(Xe.b)(t.symbolInfo.bind(t), t.dataEvents().symbolResolved()), this._symbolInfo.subscribe(this._updateEntriesBySubSessions.bind(this), { callWithLast: !0 }); }
673
- destroy() { this._symbolInfo.destroy(); }
674
- currentTimeValue() { return null === this._todayInExchangeTime ? -1 : Ze.get_minutes_from_midnight(this._todayInExchangeTime) / Ze.minutesPerDay; }
675
- timezone() { const e = this._symbolInfo.value(); return null === e ? "" : Object(Ke.timezoneTitle)(e.timezone); }
676
- _updateEntriesBySubSessions(e) {
677
- var t;
678
- this._updateTodayWithOffsets(e);
679
- const s = this._createSubSessionSpecs(e), o = (l = (null === (t = this._todayInExchangeTime) || void 0 === t ? void 0 : t.getUTCDay()) || (new Date).getDay()) < Ge.WeekDays.SATURDAY ? l + 1 : Ge.WeekDays.SUNDAY;
680
- var l;
681
- const a = Object(n.clone)(st);
682
- a[o].isActive = !0;
683
- for (const e of Array.from(s.keys())) {
684
- at(a, Object(i.ensureDefined)(s.get(e)).getEntriesForWeekByCalendar(Object(i.ensureNotNull)(this._todayInExchangeTime)), e);
685
- }
686
- Object.values(a).some(e => 0 !== e.entries.length) && (function (e) { const t = tt(0), s = tt(Ze.minutesPerDay), o = Object(n.clone)(e); for (const l of Object.keys(e)) {
687
- const n = parseInt(l), a = e[n].entries;
688
- if (0 === a.length) {
689
- a.push({ start: { value: 0, title: t, isFirstOrLastPoint: !0 }, end: { value: 1, title: s, isFirstOrLastPoint: !0 }, type: 3, tooltip: `${t} — ${s}`, showStartForLastEntry: !1, showEndForFirstEntry: !1 });
690
- continue;
691
- }
692
- const r = qe(n), d = Je(n), h = o[r].entries, u = o[d].entries, c = Qe(o, n), _ = et(o, n), p = a.length;
693
- let m = 0;
694
- for (let e = 0; e < p; e++) {
695
- const s = a[e], o = e > 0 ? a[e - 1] : null, l = 0 === e;
696
- if (0 === s.start.value || 0 === s.start.value && 1 === s.end.value || null !== o && s.start.value === o.end.value) {
697
- m++;
698
- continue;
699
- }
700
- const r = l ? c.entries[c.entries.length - 1] : Object(i.ensureNotNull)(o), d = { start: { value: l ? 0 : a[e - 1].end.value, title: l ? t : a[e - 1].end.title, isFirstOrLastPoint: !(l && h.length > 0) || 1 === h[h.length - 1].end.value }, end: { value: s.start.value, title: s.start.title, isFirstOrLastPoint: !0 }, type: 3, tooltip: nt(r.end, s.start, c.dayIndex, n), showStartForLastEntry: !1, showEndForFirstEntry: !1 };
701
- a.splice(m, 0, d), m = e + 2;
702
- }
703
- const b = a[a.length - 1];
704
- 1 !== b.end.value && a.push({ start: { value: b.end.value, title: b.end.title, isFirstOrLastPoint: !0 }, end: { value: 1, title: tt(Ze.minutesPerDay), isFirstOrLastPoint: !(u.length > 0) || 0 === u[0].start.value }, type: 3, tooltip: nt(b.end, _.entries[0].start, n, _.dayIndex), showStartForLastEntry: !1, showEndForFirstEntry: !1 });
705
- } }(a), function (e) { for (const i of Object.keys(e)) {
706
- const o = parseInt(i), l = e[o].entries;
707
- if (1 === l.length)
708
- continue;
709
- const n = qe(o), a = Je(o), r = l[0], d = l[l.length - 1];
710
- r.start.isFirstOrLastPoint || (r.showStartForLastEntry = (t = l, s = e[n].entries, it(t[t.length - 1], s[s.length - 1]))), d.end.isFirstOrLastPoint || (d.showEndForFirstEntry = ot(l, e[a].entries));
711
- } var t, s; }(a)), this.sessionsDays.setValue(a), this.todaySession.setValue(a[o]);
712
- }
713
- _createSubSessionSpecs(e) { if (null === e)
714
- return new Map; if (void 0 === e.subsessions)
715
- return new Map([[0, new $e.SessionSpec(e.timezone, e.session, e.session_holidays, e.corrections)]]); const t = ["regular", "premarket", "postmarket"], s = new Map; for (const i of t) {
716
- let t = null;
717
- switch (i) {
718
- case "regular":
719
- t = 0;
720
- break;
721
- case "premarket":
722
- t = 1;
723
- break;
724
- case "postmarket": t = 2;
725
- }
726
- if (null !== t) {
727
- const o = e.subsessions.find(e => e.id === i);
728
- void 0 !== o && s.set(t, new $e.SessionSpec(e.timezone, o["session-display"] || o.session, "", o["session-correction"]));
729
- }
730
- } return s; }
731
- _updateTodayWithOffsets(e) { if (null === e)
732
- return void (this._todayInExchangeTime = null); const t = 1e3 * window.ChartApiInstance.serverTimeOffset(); this._todayInExchangeTime = Ze.get_cal_from_unix_timestamp_ms(Ze.get_timezone(e.timezone), Date.now() + t); }
733
- }
734
- var dt = s("q1tI"), ht = s.n(dt), ut = s("TSYQ"), ct = s("YFKU"), _t = s("vqb8"), pt = s("e3/o"), mt = s("tfDh");
735
- const bt = new WeakMap;
736
- function gt(e) { return bt.has(e) || bt.set(e, Object(pt.randomHash)()), Object(i.ensureDefined)(bt.get(e)); }
737
- const wt = new Map([[0, mt.green], [1, mt.orange], [2, mt.blue], [3, mt.gray]]), vt = new Map([[0, Object(ct.t)("Market open")], [1, Object(ct.t)("Pre-market")], [2, Object(ct.t)("Post-market")], [3, Object(ct.t)("Market closed")]]);
738
- function yt(e) { const { segment: t, forceStart: s, forceEnd: i } = e, o = t.end.value - t.start.value, l = o < .03, n = { left: 100 * t.start.value + "%", width: `calc(${100 * o}% + ${l ? 2 : 0}px)` }, a = ut(mt.segment, wt.get(t.type), (s || t.start.isFirstOrLastPoint) && mt.start, (i || t.end.isFirstOrLastPoint) && mt.end, l && mt.small, "common-tooltip-html", "apply-common-tooltip"), r = function (e, t) { return `<div class="${mt.tooltip}">\n\t\t<span class="${wt.get(t)}">${vt.get(t)}</span>\n\t\t<span class="${mt.time}">${e}</span>\n\t</div>`; }(t.tooltip, t.type); return ht.a.createElement("div", { className: a, style: n, "data-tooltip": r }); }
739
- function St(e) { const { sessionDay: t } = e, s = t.entries.map((e, s) => ht.a.createElement(yt, { key: gt(e) + "Segment", segment: e, forceStart: 0 === s && 3 === e.type, forceEnd: s === t.entries.length - 1 && 3 === e.type })), i = ut(mt.sessionDay, t.isActive && mt.active); return ht.a.createElement("div", { className: i }, ht.a.createElement("div", { className: mt.weekDay }, t.title), ht.a.createElement("div", { className: mt.sessionDaySegments }, s)); }
740
- function Mt(e) { const { sessionDays: t, currentTimeMark: s } = e, i = [], o = parseInt(Object.keys(t).filter(e => t[parseInt(e)].isActive)[0]), l = t[o], n = l.entries.filter(e => e.start.value <= s && e.end.value >= s)[0]; !n.start.isFirstOrLastPoint && n.showStartForLastEntry ? i.push(l.entries[l.entries.length - 1].start) : i.push(n.start); const a = !n.end.isFirstOrLastPoint && n.showEndForFirstEntry ? l.entries[0].end : n.end; if (i[0].value !== a.value && i.push(a), 0 === i.length)
741
- return null; i.sort((e, t) => e.value - t.value); const r = i.map(e => ht.a.createElement("div", { key: gt(e), className: mt.timeMark }, e.title)), d = 100 * (2 === i.length ? i[1].value - i[0].value : 0), h = ut(d > 12 && mt.timeMarkSegmentAlignByEnds, mt.timeMarkSegment); return ht.a.createElement("div", { className: mt.sessionDay }, ht.a.createElement("div", { className: mt.weekDay }), ht.a.createElement("div", { className: mt.timeMarkWrapper }, ht.a.createElement("div", { className: h, style: { left: 100 * i[0].value + "%", width: d + "%" } }, r))); }
742
- class ft {
743
- constructor(e) { this._fullSessionScheduleViewModel = new rt(e); }
744
- destroy() { this._fullSessionScheduleViewModel.destroy(); }
745
- renderer(e, t) { return function (e) { const { key: t, className: s, now: i, timezone: o } = e, l = Object(_t.a)({ watchedValue: e.sessionDays }), n = Object.values(l).filter(e => e.isActive)[0], a = ut(s, mt.wrapper); return ht.a.createElement("div", { key: t, className: a }, ht.a.createElement("div", { className: mt.timezone }, o), ht.a.createElement("div", { className: mt.sessionDayWrapper }, ht.a.createElement(St, { sessionDay: n }), ht.a.createElement("div", { className: mt.nowWrapper }, ht.a.createElement("div", { className: mt.now, style: { left: 100 * i + "%" } }))), ht.a.createElement(Mt, { sessionDays: l, currentTimeMark: i })); }({ key: e, className: t, sessionDays: this._fullSessionScheduleViewModel.sessionsDays, now: this._fullSessionScheduleViewModel.currentTimeValue(), timezone: this._fullSessionScheduleViewModel.timezone() }); }
746
- updateSource(e) { }
747
- }
748
- var Et = s("HGP3"), Ct = s("25b6");
749
- function kt(e, t) {
750
- const s = new l.a(e()), i = {};
751
- t.forEach(t => t.subscribe(i, () => { s.setValue(e()); }));
752
- return s.readonly().spawn(() => t.forEach(e => e.unsubscribeAll(i)));
753
- }
754
- var Vt = s("rh3U");
755
- class xt {
756
- constructor(e) { this.isBlinkingMode = new l.a(!1), this._status = new l.a(null), this._fullTooltip = new l.a(null), this._iconClassNames = new l.a(null), this._visible = new l.a(!1), this._tooltip = new l.a(null), this._icon = new l.a(null), this._className = new l.a(null), this._infoMaps = e, this._size = e.size || "small", this._status.subscribe(this._updateByStatus.bind(this), { callWithLast: !0 }), this._className.subscribe(this._updateIconClassName.bind(this)); }
757
- turnOffBlinkingMode() { }
758
- status() { return this._status; }
759
- tooltip() { return this._tooltip; }
760
- icon() { return this._icon; }
761
- className() { return this._className; }
762
- visible() { return this._visible; }
763
- size() { return this._size; }
764
- fullInfo() { return this._fullTooltip; }
765
- _getTooltip(e) { var t, s; return null !== (s = null === (t = this._infoMaps.tooltipMap) || void 0 === t ? void 0 : t.get(e)) && void 0 !== s ? s : null; }
766
- _getIcon(e) { let t; const s = this._infoMaps.iconMap.get(e); return void 0 !== s && (t = s.get(this._size)), t || null; }
767
- _getClassName(e) { return this._infoMaps.classNameMap.get(e) || null; }
768
- _getTitle(e) { var t, s; return null !== (s = null === (t = this._infoMaps.titleMap) || void 0 === t ? void 0 : t.get(e)) && void 0 !== s ? s : null; }
769
- _getTitleColor(e) { var t, s; return null !== (s = null === (t = this._infoMaps.titleColorMap) || void 0 === t ? void 0 : t.get(e)) && void 0 !== s ? s : null; }
770
- _getHtml(e) {
771
- return __awaiter(this, void 0, void 0, function* () { var t, s, i; return null !== (i = null === (s = null === (t = this._infoMaps.htmlMap) || void 0 === t ? void 0 : t.get(e)) || void 0 === s ? void 0 : s.map(Ct.b)) && void 0 !== i ? i : null; });
772
- }
773
- _getAction(e) { var t, s; return null !== (s = null === (t = this._infoMaps.actionMap) || void 0 === t ? void 0 : t.get(e)) && void 0 !== s ? s : null; }
774
- _updateFullTooltipByStatus(e) {
775
- return __awaiter(this, void 0, void 0, function* () { const t = yield this._getHtml(e); this._status.value() === e && this._fullTooltip.setValue([{ icon: this._icon.value(), iconClassName: this._iconClassNames.value(), title: this._getTitle(e), titleColor: this._getTitleColor(e), html: t, size: this._size, action: this._getAction(e) }]); });
776
- }
777
- _updateByStatus(e) { if (null === e)
778
- return this._icon.setValue(null), this._tooltip.setValue(null), void this._visible.setValue(!1); this._icon.setValue(this._getIcon(e)), this._className.setValue(this._getClassName(e)), this._tooltip.setValue(this._getTooltip(e)), this._visible.setValue(!0), this._updateFullTooltipByStatus(e); }
779
- _updateIconClassName(e) { null !== e ? this._iconClassNames.setValue([Vt.statusItem, e]) : this._iconClassNames.setValue(null); }
780
- }
781
- var Wt = s("Vdly");
782
- const Tt = [];
783
- function Lt() { return Wt.getJSON("tv.alreadyBlinkedStatuses", Tt); }
784
- const Ot = new l.a(Lt());
785
- function At(e) { const t = Wt.getJSON("tv.alreadyBlinkedStatuses", Tt); t.includes(e) || (t.push(e), Wt.setJSON("tv.alreadyBlinkedStatuses", t), Ot.setValue(Lt())); }
786
- Wt.onSync.subscribe(null, () => Ot.setValue(Lt()));
787
- const Dt = Ot;
788
- var Ht = s("Cf1E"), Bt = s("VrrN"), Pt = s("VrXG"), zt = s("LIcf"), jt = s("Uua9"), Nt = s("9Crk"), It = s("Tq3g");
789
- const Rt = Object(ce.getLogger)("Chart.LegendWidget"), Ft = ["TFEXDelayForGuest", "MOEXDelayForGuest", "CHIXAuDelayForGuest", "NGMDelayForGuest", "DEForGuest", "ICESGDelayForGuest"], Kt = new Map([["DelayToRealtime", new Map([["small", Bt], ["large", Pt]])], ["DelayNoRealtime", new Map([["small", Bt], ["large", Pt]])], ["TFEXDelayForGuest", new Map([["small", Bt], ["large", Pt]])], ["MOEXDelayForGuest", new Map([["small", Bt], ["large", Pt]])], ["CHIXAuDelayForGuest", new Map([["small", Bt], ["large", Pt]])], ["NGMDelayForGuest", new Map([["small", Bt], ["large", Pt]])], ["ICESGDelayForGuest", new Map([["small", Bt], ["large", Pt]])], ["DEForGuest", new Map([["small", Bt], ["large", Pt]])], ["EOD", new Map([["small", zt], ["large", jt]])], ["TickByTick", new Map([["small", Nt], ["large", It]])], ["BATSToRealtime", new Map([["small", Nt], ["large", It]])], ["DelayWithoutMarketAgreement", new Map([["small", Bt], ["large", Pt]])]]), Ut = new Map([["DelayToRealtime", Vt.delay], ["DelayNoRealtime", Vt.delay], ["TFEXDelayForGuest", Vt.delay], ["MOEXDelayForGuest", Vt.delay], ["CHIXAuDelayForGuest", Vt.delay], ["NGMDelayForGuest", Vt.delay], ["ICESGDelayForGuest", Vt.delay], ["DEForGuest", Vt.delay], ["EOD", Vt.eod], ["TickByTick", Vt.notAccurate], ["BATSToRealtime", Vt.notAccurate], ["DelayWithoutMarketAgreement", Vt.delay]]), Yt = new Map([["DelayToRealtime", Et.colorsPalette["color-delay-mode"]], ["DelayNoRealtime", Et.colorsPalette["color-delay-mode"]], ["TFEXDelayForGuest", Et.colorsPalette["color-delay-mode"]], ["MOEXDelayForGuest", Et.colorsPalette["color-delay-mode"]], ["CHIXAuDelayForGuest", Et.colorsPalette["color-delay-mode"]], ["NGMDelayForGuest", Et.colorsPalette["color-delay-mode"]], ["ICESGDelayForGuest", Et.colorsPalette["color-delay-mode"]], ["DEForGuest", Et.colorsPalette["color-delay-mode"]], ["EOD", Et.colorsPalette["color-eod-mode"]], ["TickByTick", Et.colorsPalette["color-notaccurate-mode"]], ["BATSToRealtime", Et.colorsPalette["color-notaccurate-mode"]], ["DelayWithoutMarketAgreement", Et.colorsPalette["color-delay-mode"]]]), Gt = window.t("Data is delayed"), Zt = window.t("End of day data"), Xt = window.t("One update per second"), $t = window.t("Cboe BZX"), qt = window.t("{exchange} by {originalExchange}"), Jt = Object(Ct.b)(window.t("{symbolName} data is delayed by {time} minutes.")), Qt = Object(Ct.b)(window.t("{listedExchange} real-time data is available for free to registered users.")), es = Object(Ct.b)(window.t("To get real-time data for {description}, please buy the real-time data package.")), ts = Object(Ct.b)(window.t("Real-time data for {description} is not supported right now. We may support it in the future.")), ss = Object(Ct.b)(window.t("Data is updated once a day.")), is = Object(Ct.b)(window.t("Data on our Basic plan is updated once per second, even if there are more updates on the market.")), os = Object(Ct.b)(window.t("Data is updated once per second, even if there are more updates on the market.")), ls = Object(Ct.b)(window.t("Paid plans feature faster data updates.")), ns = Object(Ct.b)(window.t("Real-time data for {symbolName} is provided by {exchange} exchange.")), as = Object(Ct.b)(window.t("This data is real-time, but it’s slightly different to its official counterpart coming from primary exchanges.")), rs = Object(Ct.b)(window.t("This data is real-time, but it’s slightly different to its official counterpart coming from {exchange}.")), ds = Object(Ct.b)(window.t("If you'd like {listedExchange} real-time data you'll need to complete an Exchange Agreement. Don't worry, it only takes a few clicks"));
790
- window.t("Create a free account"), window.t("Learn more"), Object(Ct.b)(window.t("Fill out Exchange Agreements"));
791
- class hs extends xt {
792
- constructor(e, t, s) { super({ iconMap: Kt, classNameMap: Ut, titleColorMap: Yt, size: t }), this._dataUpdatedMode = new l.a(null).spawn(), this._options = s, this._model = e, this._dataModeBlinkingStatuses = Dt.spawn(), this._dataModeBlinkingStatuses.subscribe(this._updateBlinkingMode.bind(this)), this.turnOffBlinkingMode = this._turnOffBlinking.bind(this), this.setModel(e); }
793
- destroy() { this._dataUpdatedMode.destroy(), this._dataModeBlinkingStatuses.destroy(); }
794
- setModel(e) { if (this._dataUpdatedMode.destroy(), null === e)
795
- return this._model = e, void (this._dataUpdatedMode = new l.a(null).spawn()); this._dataUpdatedMode = e.status().spawn(), this._dataUpdatedMode.subscribe(this._updateStatus.bind(this), { callWithLast: !0 }); }
796
- _getTooltip() { const e = this._getShortTexts(); return null === e ? null : Object.values(e).join(" · "); }
797
- _updateFullTooltipByStatus() {
798
- return __awaiter(this, void 0, void 0, function* () { const e = this._dataUpdatedMode.value(); if (null === e)
799
- return void this._fullTooltip.setValue(null); const t = this._getShortTexts(), s = yield this._getHtmls(), i = yield this._getActions(); if (e !== this._dataUpdatedMode.value())
800
- return; const o = []; for (const l of e)
801
- o.push({ icon: this._getIcon(l), iconClassName: this._iconClassNames.value(), title: t && t[l], titleColor: this._getTitleColor(l), html: s && s[l], size: this._size, action: i && i[l] }); this._fullTooltip.setValue(o); });
802
- }
803
- _updateStatus(e) { const t = null !== e ? e[0] : null; super._updateByStatus(t), this._updateBlinkingMode(); }
804
- _getHtmls() {
805
- return __awaiter(this, void 0, void 0, function* () { const e = this._dataUpdatedMode.value(); if (null === e || null === this._model)
806
- return Promise.resolve(null); const t = {}, s = this._model.symbolName(); let i = null, o = null; try {
807
- i = yield this._model.description(), o = this._model.exchange();
808
- }
809
- catch (e) {
810
- Rt.logError("Can't get exchange description, reason: " + Object(Ht.a)(e));
811
- } for (const l of e)
812
- if (t[l] = [], ["DelayToRealtime", "DelayNoRealtime", "DelayWithoutMarketAgreement", ...Ft].includes(l) && (t[l].push(Jt.format({ symbolName: s, time: this._model.time().toString() })), this._options.subscriptionFullInfo && null !== i && "DelayToRealtime" === l && t[l].push(es.format({ description: `<b>${i}</b>` })), null !== i && "DelayNoRealtime" === l && t[l].push(ts.format({ description: `<b>${i}</b>` })), "DelayWithoutMarketAgreement" === l && t[l].push(ds.format({ listedExchange: this._model.listedExchange() })), this._options.subscriptionFullInfo && Ft.includes(l) && t[l].push(Qt.format({ listedExchange: this._model.listedExchange() }))), "EOD" === l && (t[l] = [ss]), "TickByTick" === l && (t[l].push(this._options.subscriptionFullInfo ? is : os), this._options.subscriptionFullInfo && t[l].push(ls)), null !== o && "BATSToRealtime" === l) {
813
- let e = this._model.listedExchange();
814
- 0, t[l].push(ns.format({ symbolName: s, exchange: o }), "" !== e ? rs.format({ exchange: e }) : as);
815
- } return Object.keys(t).length > 0 ? t : null; });
816
- }
817
- _getActions() {
818
- return __awaiter(this, void 0, void 0, function* () { if (null === this._dataUpdatedMode.value() || null === this._model)
819
- return null; const e = {}; return Object.keys(e).length > 0 ? e : null; });
820
- }
821
- _getShortTexts() {
822
- var e;
823
- const t = this._dataUpdatedMode.value();
824
- if (null === t || null === this._model)
825
- return null;
826
- const s = {};
827
- for (const i of t)
828
- if (["DelayToRealtime", "DelayNoRealtime", ...Ft, "DelayWithoutMarketAgreement"].includes(i) && (s[i] = Gt), "EOD" === i && (s[i] = Zt), "TickByTick" === i && (s[i] = Xt), "BATSToRealtime" === i) {
829
- let t = null !== (e = this._model.firstReplacedByBatsExchange()) && void 0 !== e ? e : "";
830
- 0, s[i] = "" !== t ? qt.format({ exchange: t, originalExchange: $t }) : $t;
831
- }
832
- return Object.keys(s).length > 0 ? s : null;
833
- }
834
- _updateBlinkingMode() { const e = this._dataUpdatedMode.value(); if (null === e)
835
- return; const t = this._dataModeBlinkingStatuses.value(); for (const s of e)
836
- if (!t.includes(s))
837
- return void this.isBlinkingMode.setValue(!0); this.isBlinkingMode.setValue(!1); }
838
- _turnOffBlinking() { const e = this._dataUpdatedMode.value(); if (null !== e)
839
- for (const t of e)
840
- At(t); }
841
- }
842
- var us = s("JmzL"), cs = s("M3mX");
843
- const _s = window.t("Study Error"), ps = new Map([[!0, new Map([["small", us], ["large", cs]])], [!1, new Map([["small", ""], ["large", ""]])]]), ms = new Map([[!0, Vt.dataProblemLow], [!1, null]]), bs = new Map([[!0, _s], [!1, null]]), gs = new Map([[!0, _s], [!1, null]]), ws = new Map([[!0, Et.colorsPalette["color-data-problem"]], [!1, null]]);
844
- class vs extends xt {
845
- constructor(e, t, s, i) { super({ iconMap: ps, classNameMap: ms, tooltipMap: bs, titleMap: gs, titleColorMap: ws, size: s }), this._dataSourceErrorStatus = new l.a(null).spawn(), this._lastError = null, this._options = i, this.setSource(e, t); }
846
- destroy() { this._dataSourceErrorStatus.destroy(); }
847
- setSource(e, t) { this._dataSourceErrorStatus.destroy(), this._dataSourceErrorStatus = kt(() => e.statusProvider({}).errorStatus(), t), this._dataSourceErrorStatus.subscribe(this._updateStatus.bind(this), { callWithLast: !0 }); }
848
- _getTooltip(e) { const t = this._dataSourceErrorStatus.value(); if (e && null !== t) {
849
- const e = t.title;
850
- if (void 0 !== e)
851
- return e;
852
- } return super._getTooltip(e); }
853
- _getTitle(e) { const t = this._dataSourceErrorStatus.value(); if (e && null !== t) {
854
- const e = t.title;
855
- if (void 0 !== e)
856
- return e;
857
- } return super._getTitle(e); }
858
- _getHtml(e) {
859
- return __awaiter(this, void 0, void 0, function* () { const t = this._dataSourceErrorStatus.value(); return null !== t ? [Object(Ct.b)(t.error)] : null; });
860
- }
861
- _getAction(e) { this._dataSourceErrorStatus.value(); return null; }
862
- _updateStatus(e) { const t = this._status.value(); null !== e ? (this._status.setValue(!0), t && this._lastError !== e.error && this._updateByStatus(!0), this._lastError = e.error) : (this._status.setValue(null), this._lastError = null); }
863
- }
864
- const ys = window.t("Data error"), Ss = new Map([["high", new Map([["small", us], ["large", cs]])], ["low", new Map([["small", us], ["large", cs]])]]), Ms = new Map([["high", Vt.dataProblemHigh], ["low", Vt.dataProblemLow]]), fs = new Map([["high", ys], ["low", ys]]), Es = new Map([["high", Et.colorsPalette["color-data-problem"]], ["low", Et.colorsPalette["color-data-problem"]]]);
865
- class Cs extends xt {
866
- constructor(e, t) { super({ tooltipMap: fs, iconMap: Ss, classNameMap: Ms, titleMap: fs, titleColorMap: Es, size: t }), this._dataProblem = new l.a(null).spawn(), this._isDataProblemCritical = new l.a(!1), this.setModel(e); }
867
- destroy() { this._dataProblem.destroy(); }
868
- isDataProblemCritical() { return this._isDataProblemCritical; }
869
- setModel(e) { this._dataProblem.destroy(), null !== e ? (this._dataProblem = e.status().spawn(), this._dataProblem.subscribe(this._updateStatus.bind(this), { callWithLast: !0 })) : this._dataProblem = new l.a(null).spawn(); }
870
- _getHtml(e) {
871
- return __awaiter(this, void 0, void 0, function* () { const t = this._dataProblem.value(); return null === t ? null : [Object(Ct.b)(t.text)]; });
872
- }
873
- _updateStatus(e) { var t; const s = null !== (t = null == e ? void 0 : e.severity) && void 0 !== t ? t : null; this._status.setValue(s), this._isDataProblemCritical.setValue(function (e) { return "high" === e; }(s)); }
874
- }
875
- class ks extends xt {
876
- constructor(e, t) { super(t), this._booleanStatus = new l.a(!1).spawn(), this.updateStatus(e); }
877
- destroy() { this._booleanStatus.destroy(); }
878
- updateStatus(e) { this._booleanStatus.destroy(), this._booleanStatus = e.spawn(), this._booleanStatus.subscribe(this._updateStatus.bind(this), { callWithLast: !0 }); }
879
- _updateStatus(e) { e ? this._status.setValue(!0) : this._status.setValue(null); }
880
- }
881
- var Vs = s("YGQl"), xs = s("Jjb7");
882
- const Ws = window.t("Invalid Symbol"), Ts = window.t("This symbol doesn't exist, please pick another one."), Ls = new Map([[!0, new Map([["small", Vs], ["large", xs]])], [!1, new Map([["small", ""], ["large", ""]])]]), Os = new Map([[!0, Vt.invalidSymbol], [!1, null]]), As = new Map([[!0, Ws], [!1, null]]), Ds = new Map([[!0, Ws], [!1, null]]), Hs = new Map([[!0, Et.colorsPalette["color-invalid-symbol"]], [!1, null]]), Bs = new Map([[!0, [Ts]], [!1, null]]), Ps = new Map([[!0, null], [!1, null]]);
883
- class zs {
884
- constructor(e) { this._el = document.createElement("div"), this._prevCustomClass = null, this._icon = e.icon.spawn(), this._icon.subscribe(this._updateIcon.bind(this), { callWithLast: !0 }), this._className = e.className.spawn(), this._className.subscribe(this._updateClassName.bind(this), { callWithLast: !0 }), this._visible = e.visible.spawn(), this._visible.subscribe(this._updateVisibility.bind(this), { callWithLast: !0 }), this._size = e.size || "small", this._render(e.parentEl), e.isBlinking && (this._isBlinking = e.isBlinking.spawn(), this._isBlinking.subscribe(this._updateBlinkingMode.bind(this), { callWithLast: !0 }), this._turnOffBlinking = e.turnOffBlinking); }
885
- destroy() { this._visible.destroy(), this._icon.destroy(), this._isBlinking && this._isBlinking.destroy(), this._el.remove(); }
886
- onClick() { this._turnOffBlinking && this._turnOffBlinking(); }
887
- visible() { return this._visible; }
888
- _render(e) { this._el.classList.add(Vt.statusItem, Vt[this._size]), e.appendChild(this._el); }
889
- _updateVisibility(e) { this._el.classList.toggle("js-hidden", !e); }
890
- _updateIcon(e) { this._el.innerHTML = e || ""; }
891
- _updateClassName(e) { this._prevCustomClass !== e && (null !== this._prevCustomClass && this._el.classList.remove(this._prevCustomClass), null !== e && this._el.classList.add(e), this._prevCustomClass = e); }
892
- _updateBlinkingMode(e) { this._el.classList.toggle(Vt.blinking, e); }
893
- }
894
- class js {
895
- constructor(e, t, s, i) { this.element = document.createElement("div"), this._blinkingSpawns = [], this._iconsRenderers = []; const o = [Vt.statuses, "apply-common-tooltip", "common-tooltip-wide"]; h.a && o.push(Vt.touchMode), this.element.classList.add(...o, Vt[e]), this._visibleWidgetsCount = t.spawn(), this._visibleWidgetsCount.subscribe(this._updateSpecialClassAndTooltip.bind(this)), this._tooltips = s.spawn(), this._tooltips.subscribe(this._updateTooltip.bind(this)), this._onClickCallback = i.onClick, this._onClickHandler = this._onClick.bind(this), this.element.addEventListener("click", this._onClickHandler); }
896
- destroy() {
897
- for (const e of this._iconsRenderers)
898
- e.destroy();
899
- for (const e of this._blinkingSpawns)
900
- e.destroy();
901
- this._visibleWidgetsCount.destroy(), this._tooltips.destroy(), this.element.removeEventListener("click", this._onClickHandler), this.element.remove();
902
- }
903
- addStatusModel(e) { this._iconsRenderers.push(new zs({ visible: e.visible, icon: e.model.icon(), className: e.model.className(), size: e.model.size(), parentEl: this.element, isBlinking: e.model.isBlinkingMode, turnOffBlinking: e.model.turnOffBlinkingMode })); const t = e.model.isBlinkingMode.spawn(); t.subscribe(this._updateBlinkingMode.bind(this)), this._blinkingSpawns.push(t), this._updateBlinkingMode(); }
904
- _onClick(e) { e.preventDefault(); const t = this._iconsRenderers.filter(e => e.visible().value()); for (const e of t)
905
- e.onClick(); let s = 14; t.length > 1 && (s -= 2); const i = this.element.getBoundingClientRect(), o = { x: i.left - s, y: i.bottom + 4 }; this._onClickCallback(o); }
906
- _updateTooltip() { this.element.setAttribute("title", this._tooltips.value().join(" · ")); }
907
- _updateSpecialClassAndTooltip() { const e = this._visibleWidgetsCount.value(); this.element.classList.toggle(Vt.oneWidgetsVisible, 1 === e), this.element.classList.toggle(Vt.twoWidgetsVisible, 2 === e), this.element.classList.toggle(Vt.threeWidgetsVisible, 3 === e), this._updateTooltip(); }
908
- _updateBlinkingMode() { const e = this._blinkingSpawns.some(e => e.value()); this.element.classList.toggle(Vt.blinking, e); }
909
- }
910
- var Ns = s("9lPX"), Is = s("MyT/"), Rs = s("jXu8"), Fs = s("cbig"), Ks = s("G2LI"), Us = s("QkND"), Ys = s("Gp/h"), Gs = s("S48P");
911
- const Zs = window.t("Market open"), Xs = window.t("Pre-market"), $s = window.t("Post-market"), qs = window.t("Market closed"), Js = window.t("Holiday"), Qs = window.t("All's well — Market is open."), ei = window.t("Morning. Market is open for pre-market trading."), ti = window.t("Evening. Market is open for post-market trading."), si = window.t("Time for a walk — this market is closed."), ii = window.t("Market is currently on holiday. Lucky them."), oi = new Map([["market", new Map([["small", Is], ["large", Rs]])], ["pre_market", new Map([["small", Ys], ["large", Gs]])], ["post_market", new Map([["small", Ks], ["large", Us]])], ["out_of_session", new Map([["small", Ns], ["large", Ns]])], ["holiday", new Map([["small", Fs], ["large", Fs]])]]), li = new Map([["market", Vt.marketStatusOpen], ["pre_market", Vt.marketStatusPre], ["post_market", Vt.marketStatusPost], ["out_of_session", Vt.marketStatusClose], ["holiday", Vt.marketStatusHoliday]]), ni = new Map([["market", Zs], ["pre_market", Xs], ["post_market", $s], ["out_of_session", qs], ["holiday", Js]]), ai = new Map([["market", Zs], ["pre_market", Xs], ["post_market", $s], ["out_of_session", qs], ["holiday", Js]]), ri = new Map([["market", Et.colorsPalette["color-market-open"]], ["pre_market", Et.colorsPalette["color-pre-market"]], ["post_market", Et.colorsPalette["color-post-market"]], ["out_of_session", Et.colorsPalette["color-market-closed"]], ["holiday", Et.colorsPalette["color-market-holiday"]]]), di = new Map([["market", [Qs]], ["pre_market", [ei]], ["post_market", [ti]], ["out_of_session", [si]], ["holiday", [ii]]]), hi = new Map([["market", null], ["pre_market", null], ["post_market", null], ["out_of_session", null], ["holiday", null]]), ui = window.t("You can turn this data on or off.");
912
- class ci extends xt {
913
- constructor(e, t, s) { super({ tooltipMap: ni, iconMap: oi, classNameMap: li, titleMap: ai, titleColorMap: ri, htmlMap: di, actionMap: hi, size: t }), this._marketStatus = new l.a(null).spawn(), this._options = s, this.setModel(e); }
914
- destroy() { this._marketStatus.destroy(); }
915
- setModel(e) { this._marketStatus.destroy(), null !== e ? (this._marketStatus = e.status().spawn(), this._marketStatus.subscribe(this._updateStatus.bind(this), { callWithLast: !0 })) : this._marketStatus = new l.a(null).spawn(); }
916
- _getHtml(e) {
917
- const _super = Object.create(null, {
918
- _getHtml: { get: () => super._getHtml }
919
- });
920
- return __awaiter(this, void 0, void 0, function* () { const t = yield _super._getHtml.call(this, e); return null !== t && (this._options.preMarketSolution || this._options.postMarketSolution) && ("pre_market" === e && this._options.preMarketSolution && t.push(ui), "post_market" === e && this._options.postMarketSolution && t.push(ui)), t; });
921
- }
922
- _getAction(e) { return super._getAction(e); }
923
- _updateStatus(e) { this._status.setValue(e); }
924
- }
925
- class _i {
926
- constructor(e, t, s) { this.visibleWidgetsCount = new l.a(0), this.errorWidgetIsShown = new l.a(!1), this._size = h.a ? "large" : "small", this._tooltips = new l.a([]), this._visibilitySpawns = [], this._tooltipSpawns = [], this._statusWidgetInfos = [], this._renderer = new js(this._size, this.visibleWidgetsCount, this._tooltips, { onClick: this._handleToggleDropdown.bind(this) }), this._symbolInvalidViewModel = null, this._dataSourceErrorStatusViewModel = null, this._marketStatusViewModel = null, this._dataUpdatedModeViewModel = null, this._dataProblemViewModel = null, this._sessionWidget = null, this._isSymbolInvalid = null, this._dataSourceHasErrorVisible = null, this._dataSourceErrorCanBeShown = new l.a(!1), this._marketStatusCanBeShown = new l.a(!1), this._dataUpdatedModeCanBeShown = new l.a(!1), this._dataProblemCanBeShown = new l.a(!1), this._isDataProblemCritical = null, this._container = document.createElement("div"), this._menuOpened = !1, this._menuPosition = null, this._source = e, this._model = t, this._options = s, this._recreateWidgets(), this._addSubscriptionForSymbolInvalid(), null !== this._dataSourceHasErrorVisible && (this._dataSourceHasErrorVisible.subscribe(this._updateStatusWidgetsVisibilities.bind(this)), this._dataSourceHasErrorVisible.subscribe(this._updateErrorWidgetIsShown.bind(this))), this._options.dataProblemEnabled && null !== this._isDataProblemCritical && this._isDataProblemCritical.subscribe(this._updateStatusWidgetsVisibilities.bind(this)); for (const e of this._tooltipSpawns)
927
- e.subscribe(this._updateTooltips.bind(this)); for (const e of this._visibilitySpawns)
928
- e.subscribe(this._updateVisibleWidgetsCount.bind(this)), e.subscribe(this._updateTooltips.bind(this)); this._updateErrorWidgetIsShown(), this._updateStatusWidgetsVisibilities(), this._updateVisibleWidgetsCount(), this._updateTooltips(); }
929
- destroy() {
930
- var e;
931
- this._source.properties().hasChild("symbol") && this._source.properties().symbol.listeners().unsubscribeAll(this), this._options.sourceStatusesEnabled && null !== this._isSymbolInvalid && this._isSymbolInvalid.destroy(), null === (e = this._isDataProblemCritical) || void 0 === e || e.destroy();
932
- for (const e of this._tooltipSpawns)
933
- e.destroy();
934
- for (const e of this._visibilitySpawns)
935
- e.destroy();
936
- this.visibleWidgetsCount.unsubscribe();
937
- for (const e of this._statusWidgetInfos)
938
- e.model.destroy();
939
- this._renderer.destroy();
940
- }
941
- getElement() { return this._renderer.element; }
942
- updateSource(e) { this._source !== e && (this._source.properties().hasChild("symbol") && this._source.properties().symbol.listeners().unsubscribeAll(this), this._source = e, this._recreateWidgets(), this._updateStatusWidgetsVisibilities(), this._updateErrorWidgetIsShown(), this._updateVisibleWidgetsCount(), this._updateTooltips()); }
943
- _updateStatusWidgetsVisibilities() { const e = this._isForceStatusActive(); this._dataSourceErrorCanBeShown.setValue(!e), this._marketStatusCanBeShown.setValue(!e), this._dataUpdatedModeCanBeShown.setValue(!e), this._dataProblemCanBeShown.setValue(!this._isPrimaryWidgetShown()); }
944
- _isPrimaryWidgetShown() { var e, t; return null !== (t = null === (e = this._isSymbolInvalid) || void 0 === e ? void 0 : e.value()) && void 0 !== t && t; }
945
- _isForceStatusActive() { var e, t; return this._isPrimaryWidgetShown() || null !== (t = null === (e = this._isDataProblemCritical) || void 0 === e ? void 0 : e.value()) && void 0 !== t && t; }
946
- _updateVisibleWidgetsCount() { const e = this._statusWidgetInfos.filter(e => e.visible.value()); this.visibleWidgetsCount.setValue(e.length); }
947
- _updateTooltips() { const e = []; for (let t = 0; t < this._tooltipSpawns.length; t++) {
948
- if (!this._visibilitySpawns[t].value())
949
- continue;
950
- const s = this._tooltipSpawns[t].value();
951
- null !== s && s.length > 0 && e.push(s);
952
- } this._tooltips.setValue(e); }
953
- _recreateWidgets() {
954
- var e, t;
955
- if (this._options.sourceStatusesEnabled) {
956
- if (Object(de.isStudy)(this._source) || Object(de.isStudyStub)(this._source) || this._source === this._model.mainSeries()) {
957
- null === (e = this._isSymbolInvalid) || void 0 === e || e.destroy();
958
- const t = this._source;
959
- if (Object(de.isStudy)(t) || Object(de.isStudyStub)(t) ? this._isSymbolInvalid = kt(() => t.isSymbolInvalid() && t.isActualInterval(), [t.onStatusChanged(), t.onIsActualIntervalChange()]) : this._isSymbolInvalid = Object(Re.a)(() => t.isSymbolInvalid(), t.onStatusChanged()), null === this._symbolInvalidViewModel) {
960
- this._symbolInvalidViewModel = new ks(this._isSymbolInvalid, { tooltipMap: As, iconMap: Ls, classNameMap: Os, titleMap: Ds, titleColorMap: Hs, htmlMap: Bs, actionMap: Ps, size: this._size });
961
- const e = this._symbolInvalidViewModel.visible().spawn();
962
- this._visibilitySpawns.push(e), this._tooltipSpawns.push(this._symbolInvalidViewModel.tooltip().spawn());
963
- const t = { visible: e, model: this._symbolInvalidViewModel };
964
- this._statusWidgetInfos.push(t), this._renderer.addStatusModel(t);
965
- }
966
- else
967
- this._symbolInvalidViewModel.updateStatus(this._isSymbolInvalid), this._addSubscriptionForSymbolInvalid();
968
- }
969
- if (Object(de.isStudy)(this._source) || Object(de.isStudyStub)(this._source) || this._source === this._model.mainSeries()) {
970
- const e = this._source;
971
- let t = [];
972
- if (t = Object(de.isStudy)(e) || Object(de.isStudyStub)(e) ? [e.onStatusChanged(), e.onIsActualIntervalChange()] : [e.onStatusChanged()], null === this._dataSourceErrorStatusViewModel) {
973
- this._dataSourceErrorStatusViewModel = new vs(e, t, this._size, this._options.sourceStatuses), this._dataSourceHasErrorVisible = Object(Z.a)(() => this._dataSourceErrorCanBeShown.value() && Object(i.ensureNotNull)(this._dataSourceErrorStatusViewModel).visible().value(), this._dataSourceErrorCanBeShown, this._dataSourceErrorStatusViewModel.visible()),
974
- this._visibilitySpawns.push(this._dataSourceHasErrorVisible), this._tooltipSpawns.push(this._dataSourceErrorStatusViewModel.tooltip().spawn());
975
- const s = { visible: this._dataSourceHasErrorVisible, model: this._dataSourceErrorStatusViewModel };
976
- this._statusWidgetInfos.push(s), this._renderer.addStatusModel(s);
977
- }
978
- else
979
- this._dataSourceErrorStatusViewModel.setSource(e, t);
980
- }
981
- }
982
- if (this._options.marketStatusEnabled) {
983
- const e = this._source.marketStatusModel();
984
- if (null === this._marketStatusViewModel) {
985
- this._marketStatusViewModel = new ci(e, this._size, this._options.marketStatus);
986
- const t = Object(Z.a)(() => this._marketStatusCanBeShown.value() && Object(i.ensureNotNull)(this._marketStatusViewModel).visible().value(), this._marketStatusCanBeShown, this._marketStatusViewModel.visible());
987
- this._visibilitySpawns.push(t), this._tooltipSpawns.push(this._marketStatusViewModel.tooltip().spawn());
988
- const s = { visible: t, model: this._marketStatusViewModel };
989
- null !== e && (this._sessionWidget = new ft(this._source), s.additionalWidgets = [this._sessionWidget]), this._statusWidgetInfos.push(s), this._renderer.addStatusModel(s);
990
- }
991
- else
992
- this._marketStatusViewModel.setModel(e), null === (t = this._sessionWidget) || void 0 === t || t.updateSource(this._source);
993
- }
994
- if (this._options.dataUpdateModeEnabled) {
995
- const e = this._source.dataUpdatedModeModel();
996
- if (null === this._dataUpdatedModeViewModel) {
997
- this._dataUpdatedModeViewModel = new hs(e, this._size, this._options.dataUpdateMode);
998
- const t = Object(Z.a)(() => this._dataUpdatedModeCanBeShown.value() && Object(i.ensureNotNull)(this._dataUpdatedModeViewModel).visible().value(), this._dataUpdatedModeCanBeShown, this._dataUpdatedModeViewModel.visible());
999
- this._visibilitySpawns.push(t), this._tooltipSpawns.push(this._dataUpdatedModeViewModel.tooltip().spawn());
1000
- const s = { visible: t, model: this._dataUpdatedModeViewModel };
1001
- this._statusWidgetInfos.push(s), this._renderer.addStatusModel(s);
1002
- }
1003
- else
1004
- this._dataUpdatedModeViewModel.setModel(e);
1005
- }
1006
- if (this._options.dataProblemEnabled) {
1007
- const e = this._source.dataProblemModel();
1008
- if (null === this._dataProblemViewModel) {
1009
- this._dataProblemViewModel = new Cs(e, this._size), this._isDataProblemCritical = this._dataProblemViewModel.isDataProblemCritical().spawn();
1010
- const t = Object(Z.a)(() => this._dataProblemCanBeShown.value() && Object(i.ensureNotNull)(this._dataProblemViewModel).visible().value(), this._dataProblemCanBeShown, this._dataProblemViewModel.visible());
1011
- this._visibilitySpawns.push(t), this._tooltipSpawns.push(this._dataProblemViewModel.tooltip().spawn());
1012
- const s = { visible: t, model: this._dataProblemViewModel };
1013
- this._statusWidgetInfos.push(s), this._renderer.addStatusModel(s);
1014
- }
1015
- else
1016
- this._dataProblemViewModel.setModel(e);
1017
- }
1018
- }
1019
- _addSubscriptionForSymbolInvalid() { this._options.sourceStatusesEnabled && null !== this._isSymbolInvalid && (this._isSymbolInvalid.subscribe(this._updateStatusWidgetsVisibilities.bind(this)), this._isSymbolInvalid.subscribe(this._updateErrorWidgetIsShown.bind(this), { callWithLast: !0 })); }
1020
- _updateErrorWidgetIsShown() {
1021
- var e, t, s, i;
1022
- const o = null !== (t = null === (e = this._isSymbolInvalid) || void 0 === e ? void 0 : e.value()) && void 0 !== t && t, l = null !== (i = null === (s = this._dataSourceHasErrorVisible) || void 0 === s ? void 0 : s.value()) && void 0 !== i && i;
1023
- this.errorWidgetIsShown.setValue(o || l);
1024
- }
1025
- _handleToggleDropdown(e) { var t; this._menuPosition = e, this._menuOpened = !this._menuOpened, this._menuOpened && (this._source.properties().hasChild("symbol") && this._source.properties().symbol.listeners().subscribe(this, this._handleDropdownMenuClose), t = "Open full tooltip for statuses: " + this._tooltips.value().join(", "), Object(V.trackEvent)("GUI", "Statuses widget's action", t)), this._updateDropdownMenu(); }
1026
- _handleDropdownMenuClose() { this._menuOpened = !1, this._source.properties().hasChild("symbol") && this._source.properties().symbol.listeners().unsubscribeAll(this), this._updateDropdownMenu(); }
1027
- _updateDropdownMenu() { Promise.all([s.e("react"), s.e(6), s.e(11), s.e(92), s.e(0), s.e(5), s.e("full-tooltips-popup")]).then(s.bind(null, "vR7+")).then(e => { e.render(this._menuOpened, this._container, this._renderer.element, this._statusWidgetInfos, this._handleDropdownMenuClose.bind(this), Object(i.ensureNotNull)(this._menuPosition)); }); }
1028
- }
1029
- var pi = s("AH3n");
1030
- const mi = window.t("Replay mode"), bi = window.t("You're in Replay mode. You're in Replay mode. You're in Replay mode.");
1031
- new Map([[!0, new Map([["small", pi], ["large", pi]])], [!1, new Map([["small", ""], ["large", ""]])]]), new Map([[!0, Vt.replayMode], [!1, null]]), new Map([[!0, mi], [!1, null]]), new Map([[!0, mi], [!1, null]]), new Map([[!0, Et.colorsPalette["color-replay-mode"]], [!1, null]]), new Map([[!0, [bi]], [!1, null]]), new Map([[!0, null], [!1, null]]);
1032
- class gi extends _i {
1033
- constructor(e, t, s) { super(e, t, s), this._isInReplay = new l.a(!1).readonly().spawn(), this._isInReplayCanBeShown = null, this._inited = !1; }
1034
- destroy() { super.destroy(); }
1035
- _updateStatusWidgetsVisibilities() { super._updateStatusWidgetsVisibilities(); }
1036
- _isPrimaryWidgetShown() { var e, t; return super._isPrimaryWidgetShown() || null !== (t = null === (e = this._isInReplay) || void 0 === e ? void 0 : e.value()) && void 0 !== t && t; }
1037
- }
1038
- var wi = s("EsvI"), vi = s("UXvI");
1039
- s.d(t, "LegendWidget", (function () { return Ei; }));
1040
- const yi = { readOnlyMode: !1, contextMenu: { settings: !0, mainSeries: !0, studies: !0, showOpenMarketStatus: !1 }, symbolMarkerEnabled: !1, showToggleButton: !0, canShowSourceCode: !1, statusesWidgets: { sourceStatusesEnabled: !1, sourceStatuses: { errorSolution: !0 }, marketStatusEnabled: !1, marketStatus: { preMarketSolution: !0, postMarketSolution: !0 }, dataUpdateModeEnabled: !1, dataUpdateMode: { subscriptionFullInfo: !0 }, dataProblemEnabled: !1 } }, Si = (d.enabled("hide_legend_by_default"), d.enabled("fundamental_widget")), Mi = d.enabled("legend_context_menu"), fi = 2 * parseInt(y.marginlegendhoriz);
1041
- class Ei {
1042
- constructor(e, t, s, i, o, a, r) {
1043
- this._mainSeriesViewModel = null, this._dataSourceViewModels = [], this._visibleDataSourceCount = new l.a(0), this._themedColor = new l.a(""), this._mainSeriesRowHidden = null, this._dataSourceRowsHidden = [], this._customWidgetsVisibilities = [], this._allLegendHidden = new l.a(!1), this._studiesLegendHidden = new l.a(!1), this._customWidgetsHeights = [], this._onLegendVisibilityToggled = null, this._availableHeight = 0,
1044
- this._collapsedDataSourcesCount = new l.a(0), this._collapsedDataSourcesTitle = new l.a(""), this._mainSeriesStatusWidget = null, this._dataSourcesStatusesWidgets = [], this._size = null, this._customLegendWidgetsFactoriesMap = new Map, this._customLegendWidgetsMap = new Map, this._margin = 0, this._model = e, this._paneWidget = t, this._options = Object(n.merge)(Object(n.clone)(yi), a), this._callbacks = r, this._mainSeriesViewModelsOptions = { readOnlyMode: this._options.readOnlyMode, symbolMarkerEnabled: this._options.symbolMarkerEnabled }, this._dataSourceViewModelsOptions = Object.assign(Object.assign({}, this._mainSeriesViewModelsOptions), { canShowSourceCode: this._options.canShowSourceCode }), this._backgroundThemeName = s;
1045
- const d = this._showLegendCalculatedProperty();
1046
- this._isDataSourcesCollapsed = new l.a(d.value()), d.subscribe(this, () => { this._isDataSourcesCollapsed.setValue(d.value()); });
1047
- const h = new l.a(this._getCustomTextColorValue());
1048
- this._model.model().properties().scalesProperties.textColor.subscribe(this, () => { h.setValue(this._getCustomTextColorValue()); });
1049
- const u = this._model.model().properties().paneProperties.legendProperties.showBackground, c = new l.a(u.value());
1050
- u.subscribe(this, () => { c.setValue(u.value()); });
1051
- const _ = this._model.model().properties().paneProperties.legendProperties.backgroundTransparency, p = new l.a(_.value());
1052
- _.subscribe(this, () => { p.setValue(_.value()); }), this._wrapText = new l.a(!1), this._hideNotMainSources = i.spawn(), this._hideNotMainSources.subscribe(this._updateLegendVisibilities.bind(this)), this._hideWholeLegend = o.spawn(), this._hideWholeLegend.subscribe(this._updateLegendVisibilities.bind(this)), this._isPaneMain = new l.a(this._getIsPaneMainValue()), this._updateCollapsedSourcesModeThrottle = Object(vi.default)(this._updateCollapsedSourcesMode.bind(this), 100), this._renderer = new R({ withActions: !this._options.readOnlyMode, showToggleButton: this._options.showToggleButton, isStudiesLegendHidden: this._studiesLegendHidden.readonly(), isAllLegendHidden: this._allLegendHidden.readonly(), customTextColor: h.readonly(), themedColor: this._themedColor.readonly(), showBackground: c.readonly(), backgroundTransparency: p.readonly(), wrapText: this._wrapText.readonly(), collapsedDataSourcesCount: this._collapsedDataSourcesCount.readonly(), collapsedDataSourcesTitle: this._collapsedDataSourcesTitle.readonly(), showLegendWidgetContextMenu: this.onShowLegendWidgetContextMenu.bind(this) }, { visibleDataSourceCount: this._visibleDataSourceCount.readonly(), isDataSourcesCollapsed: this._isDataSourcesCollapsed.readonly(), showObjectsTree: this._isPaneMain.readonly(), onCollapseDataSources: this.onCollapseDataSources.bind(this), onShowObjectsTreeDialog: this._callbacks.showObjectsTreeDialog });
1053
- }
1054
- destroy() {
1055
- this._hideNotMainSources.destroy(), this._hideWholeLegend.destroy(), null !== this._mainSeriesViewModel && this._destroyMainDataSource();
1056
- for (const e of this._dataSourceViewModels)
1057
- e.destroy();
1058
- for (const e of this._dataSourcesStatusesWidgets)
1059
- e.destroy();
1060
- this._clearSubscriptions();
1061
- for (const e of Array.from(this._customLegendWidgetsMap.keys()))
1062
- this._destroyCustomWidgetFromLayerBlock(e);
1063
- this._customLegendWidgetsMap.clear(), this._renderer.destroy(),
1064
- delete this._renderer, this._showLegendCalculatedProperty().unsubscribeAll(this), this._showLegendOriginalProperty().unsubscribeAll(this), this._model.model().properties().scalesProperties.textColor.unsubscribeAll(this), this._model.model().properties().paneProperties.legendProperties.showBackground.unsubscribeAll(this), this._model.model().properties().paneProperties.legendProperties.backgroundTransparency.unsubscribeAll(this);
1065
- }
1066
- addCustomWidgetToLegend(e, t) { const s = this._customLegendWidgetsFactoriesMap.get(t.block) || new Map, i = s.get(t.position) || []; i.push(e), s.set(t.position, i), this._customLegendWidgetsFactoriesMap.set(t.block, s), this.updateLayout(), this._updateCustomWidgetModeBySize(); }
1067
- onShowLegendWidgetContextMenu(e, t) { if (this._options.readOnlyMode || !Mi)
1068
- return Promise.resolve(null); x("Show legend context menu"); const s = new Map; for (const e of Array.from(this._customLegendWidgetsMap.keys())) {
1069
- const t = Object(i.ensureDefined)(this._customLegendWidgetsMap.get(e)), o = new Map;
1070
- for (const e of Array.from(t.keys())) {
1071
- const s = Object(i.ensureDefined)(t.get(e)), l = o.get(e) || [];
1072
- for (const e of s)
1073
- l.push(...e.contextMenuActions());
1074
- o.set(e, l);
1075
- }
1076
- s.set(e, o);
1077
- } return De(this._model, this._options.contextMenu, this._callbacks.showGeneralChartProperties, s, e, t); }
1078
- onCollapseDataSources() { const e = this._showLegendOriginalProperty(); e.setValue(!e.value()); }
1079
- updateLayout() {
1080
- const e = this._paneWidget.state().sourcesByGroup().all().filter(e => null !== e.statusView());
1081
- if (0 === e.length)
1082
- return;
1083
- const t = this._model.mainSeries(), s = e.indexOf(t);
1084
- s > -1 ? (e.splice(s, 1), Si || null !== this._mainSeriesViewModel || (this._mainSeriesViewModel = new re(this._model, t, this._mainSeriesViewModelsOptions, this._callbacks, this._options.contextMenu), this._mainSeriesStatusWidget = new gi(t, this._model.model(), this._options.statusesWidgets), this._renderer.addMainDataSource(this._mainSeriesViewModel, this._mainSeriesStatusWidget)), this._addCustomWidgetForLayerBlock(0)) : null !== this._mainSeriesViewModel && (this._destroyMainDataSource(), this._destroyCustomWidgetFromLayerBlock(0));
1085
- const o = [], l = [], n = this._dataSourceViewModels.length;
1086
- if (0 === n)
1087
- for (let t = e.length - 1; t >= 0; t--)
1088
- o.push(new Ve(this._model, e[t], this._dataSourceViewModelsOptions, this._callbacks, this._options.contextMenu)), l.push(new _i(e[t], this._model.model(), this._options.statusesWidgets));
1089
- else {
1090
- let t = 0;
1091
- for (let s = e.length - 1; s >= 0; s--)
1092
- this._dataSourceViewModels[t] ? (this._dataSourceViewModels[t].updateSource(e[s]), this._dataSourcesStatusesWidgets[t].updateSource(e[s])) : (o.push(new Ve(this._model, e[s], this._dataSourceViewModelsOptions, this._callbacks, this._options.contextMenu)), l.push(new _i(e[s], this._model.model(), this._options.statusesWidgets))), t++;
1093
- for (; this._dataSourceViewModels.length > t;)
1094
- Object(i.ensureDefined)(this._dataSourceViewModels.pop()).destroy();
1095
- for (; this._dataSourcesStatusesWidgets.length > t;)
1096
- Object(i.ensureDefined)(this._dataSourcesStatusesWidgets.pop()).destroy();
1097
- }
1098
- 0 !== o.length && (this._renderer.addDataSources(o, l), this._dataSourceViewModels.push(...o), this._dataSourcesStatusesWidgets.push(...l)),
1099
- n !== this._dataSourceViewModels.length && this._updateCollapsedSourcesMode(), this._dataSourceViewModels.length > 0 ? this._addCustomWidgetForLayerBlock(1) : this._destroyCustomWidgetFromLayerBlock(1), this._recreateSubscriptions(), this._isPaneMain.setValue(this._getIsPaneMainValue()), this.update(), this._updateWidgetModeByWidth();
1100
- }
1101
- update() { null !== this._mainSeriesViewModel && this._mainSeriesViewModel.update(); for (const e of this._dataSourceViewModels)
1102
- e.update(); }
1103
- updateThemedColors(e) { null === e && (e = Object(wi.getStdThemedValue)("chartProperties.paneProperties.background", this._backgroundThemeName.value())), this._themedColor.setValue(e || ""); }
1104
- firstTitle() { return this._renderer.firstTitle(); }
1105
- getElement() { return this._renderer.getElement(); }
1106
- addMargin(e) { if (this._margin === e)
1107
- return; this._margin = e; this._renderer.getElement().style.maxWidth = 0 === this._margin ? "" : `calc(100% - ${this._margin + fi}px)`, this._updateWidgetModeBySize(); }
1108
- updateWidgetModeBySize(e) { this._size = e, this._updateWidgetModeBySize(); }
1109
- _updateWidgetModeBySize() { this._updateWidgetModeByWidth(), this._updateWidgetModeByHeight(), this._updateCustomWidgetModeBySize(); }
1110
- _updateWidgetModeByWidth() { null !== this._size && this._renderer.updateMode(this._availableWidth()); }
1111
- _updateWidgetModeByHeight() { null !== this._size && (this._availableHeight = .8 * this._size.h, this._updateCollapsedSourcesModeThrottle()); }
1112
- _updateCustomWidgetModeBySize() { if (null === this._size)
1113
- return; const e = new a.Size(this._availableWidth(), this._size.h); for (const t of Array.from(this._customLegendWidgetsMap.values()))
1114
- for (const s of Array.from(t.values()))
1115
- for (const t of s)
1116
- t.updateWidgetModeBySize(e); }
1117
- _destroyMainDataSource() { Object(i.ensureNotNull)(this._mainSeriesStatusWidget).destroy(), this._mainSeriesStatusWidget = null, Object(i.ensureNotNull)(this._mainSeriesViewModel).destroy(), this._mainSeriesViewModel = null; }
1118
- _updateCollapsedSourcesMode() { const e = this._dataSourceViewModels.length; if (!this._wrapText.value() && this._availableHeight > 0 && e > 2) {
1119
- const t = this._renderer.getMainSourceHeight(), s = this._renderer.getDataSourceHeight(), i = this._getCustomWidgetsHeight();
1120
- if (null !== t && null !== s) {
1121
- const o = Math.floor((this._availableHeight - t - i) / s), l = Math.max(o, 2) - 1;
1122
- if (e > l + 1) {
1123
- let t = "";
1124
- for (let s = 0; s < e; s++) {
1125
- const e = s < l;
1126
- this._dataSourceViewModels[s].setGlobalVisibility(e), e || (t += `${0 === t.length ? "" : ", "}${this._dataSourceViewModels[s].getFullTitle()}`);
1127
- }
1128
- return this._collapsedDataSourcesTitle.setValue(t), void this._collapsedDataSourcesCount.setValue(e - l);
1129
- }
1130
- }
1131
- } for (const e of this._dataSourceViewModels)
1132
- e.setGlobalVisibility(!0); this._collapsedDataSourcesCount.setValue(0), this._collapsedDataSourcesTitle.setValue(""); }
1133
- _getCustomWidgetsHeight() { let e = 0; for (const t of Array.from(this._customLegendWidgetsMap.values()))
1134
- for (const s of Array.from(t.values()))
1135
- for (const t of s)
1136
- e += t.height().value(); return e; }
1137
- _getCustomTextColorValue() { const e = this._model.model().properties().scalesProperties.textColor.value(); return Object(wi.isStdThemedDefaultValue)("chartProperties.scalesProperties.textColor", e, Object(wi.getCurrentTheme)().name) ? null : e; }
1138
- _clearSubscriptions() {
1139
- null !== this._mainSeriesRowHidden && (this._mainSeriesRowHidden.destroy(), this._mainSeriesRowHidden = null);
1140
- for (const e of this._dataSourceRowsHidden)
1141
- e.destroy();
1142
- this._dataSourceRowsHidden = [];
1143
- for (const e of this._customWidgetsVisibilities)
1144
- e.destroy();
1145
- this._customWidgetsVisibilities = [];
1146
- for (const e of this._customWidgetsHeights)
1147
- e.destroy();
1148
- this._customWidgetsHeights = [];
1149
- }
1150
- _recreateSubscriptions() { this._clearSubscriptions(), null !== this._mainSeriesViewModel && (this._mainSeriesRowHidden = this._mainSeriesViewModel.isRowHidden().spawn(), this._mainSeriesRowHidden.subscribe(this._updateLegendVisibilities.bind(this))); for (const e of this._dataSourceViewModels) {
1151
- const t = e.isRowHidden().spawn();
1152
- this._dataSourceRowsHidden.push(t), t.subscribe(this._updateVisibleDataSourceCount.bind(this)), t.subscribe(this._updateLegendVisibilities.bind(this));
1153
- } for (const e of Array.from(this._customLegendWidgetsMap.values()))
1154
- for (const t of Array.from(e.values()))
1155
- for (const e of t) {
1156
- const t = e.visibility().spawn();
1157
- this._customWidgetsVisibilities.push(t), t.subscribe(this._updateLegendVisibilities.bind(this));
1158
- const s = e.height().spawn();
1159
- this._customWidgetsHeights.push(s), s.subscribe(this._updateCollapsedSourcesMode.bind(this));
1160
- } this._updateVisibleDataSourceCount(), this._updateLegendVisibilities(); }
1161
- _updateLegendVisibilities() { if (this._hideWholeLegend.value())
1162
- return void this._allLegendHidden.setValue(!0); const e = this._dataSourceRowsHidden.every(e => e.value()), t = this._hideNotMainSources.value() || e; this._studiesLegendHidden.setValue(t); const s = null === this._mainSeriesRowHidden || this._mainSeriesRowHidden.value(), i = this._customWidgetsVisibilities.some(e => e.value()); this._allLegendHidden.setValue(e && s && !i); }
1163
- _updateVisibleDataSourceCount() { const e = this._dataSourceRowsHidden.filter(e => !e.value()).length; this._visibleDataSourceCount.setValue(e); }
1164
- _setLegendVisibilityToggled() { 0; }
1165
- _getIsPaneMainValue() { return this._paneWidget.containsMainSeries(); }
1166
- _showLegendCalculatedProperty() { return this._model.model().showLegend(); }
1167
- _showLegendOriginalProperty() { return this._model.model().properties().paneProperties.legendProperties.showLegend; }
1168
- _addCustomWidgetForLayerBlock(e) { const t = this._customLegendWidgetsFactoriesMap.get(e); if (void 0 === t)
1169
- return; const s = this._customLegendWidgetsMap.get(e) || new Map; let i = !1; for (const o of Array.from(t.keys())) {
1170
- const l = s.get(o) || [], n = t.get(o) || [];
1171
- for (let t = l.length; t < n.length; t++) {
1172
- const s = n[t](this._model.model(), this._backgroundThemeName);
1173
- 0 === e && 0 === o && s.setGlobalVisibility(this._hideNotMainSources.opposite()), l.push(s), this._renderer.addCustomWidget(s, { block: e, position: o }), i = !0;
1174
- }
1175
- i && s.set(o, l);
1176
- } i && this._customLegendWidgetsMap.set(e, s); }
1177
- _destroyCustomWidgetFromLayerBlock(e) { const t = this._customLegendWidgetsMap.get(e); if (void 0 !== t) {
1178
- for (const e of Array.from(t.values()))
1179
- for (const t of e)
1180
- t.destroy();
1181
- t.clear(), this._customLegendWidgetsMap.delete(e);
1182
- } }
1183
- _availableWidth() { return null === this._size ? 0 : this._size.w - this._margin - fi; }
1184
- }
1185
- }, tfDh: function (e, t, s) {
1186
- e.exports = { wrapper: "wrapper-2-RXze0M", timezone: "timezone-2-RXze0M", sessionDayWrapper: "sessionDayWrapper-2-RXze0M",
1187
- nowWrapper: "nowWrapper-2-RXze0M", now: "now-2-RXze0M", sessionDay: "sessionDay-2-RXze0M", weekDay: "weekDay-2-RXze0M", sessionDaySegments: "sessionDaySegments-2-RXze0M", timeMarkWrapper: "timeMarkWrapper-2-RXze0M", timeMarkSegment: "timeMarkSegment-2-RXze0M", timeMark: "timeMark-2-RXze0M", timeMarkSegmentAlignByEnds: "timeMarkSegmentAlignByEnds-2-RXze0M", segment: "segment-2-RXze0M", small: "small-2-RXze0M", start: "start-2-RXze0M", end: "end-2-RXze0M", active: "active-2-RXze0M", green: "green-2-RXze0M", orange: "orange-2-RXze0M", blue: "blue-2-RXze0M", gray: "gray-2-RXze0M", tooltip: "tooltip-2-RXze0M", time: "time-2-RXze0M" };
1188
- }, vWJB: function (e, t) { e.exports = '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 4" width="16" height="4" fill="none"><circle stroke="currentColor" cx="2" cy="2" r="1.5"/><circle stroke="currentColor" cx="8" cy="2" r="1.5"/><circle stroke="currentColor" cx="14" cy="2" r="1.5"/></svg>'; }, vYP1: function (e, t) { e.exports = '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 18 18" width="18" height="18"><path fill="currentColor" d="M8.54.84a.8.8 0 0 1 .92 0l7.5 5.25a.8.8 0 0 1 0 1.32l-7.5 5.25a.8.8 0 0 1-.92 0L1.04 7.4a.8.8 0 0 1 0-1.32L8.54.84zM2.9 6.75L9 11.02l6.1-4.27L9 2.48 2.9 6.75z"/><path fill="currentColor" d="M.84 10.8a.8.8 0 0 1 1.12-.2L9 15.51l7.04-4.93a.8.8 0 0 1 .92 1.32l-7.5 5.25a.8.8 0 0 1-.92 0l-7.5-5.25a.8.8 0 0 1-.2-1.12z"/></svg>'; }, vg09: function (e, t) { e.exports = '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 14 14" width="14" height="14"><path stroke="currentColor" stroke-linecap="round" stroke-width="2" d="M7 2v10M2 7h10"/></svg>'; }, vqb8: function (e, t, s) {
1189
- "use strict";
1190
- s.d(t, "a", (function () { return o; }));
1191
- var i = s("q1tI");
1192
- const o = e => { const t = "watchedValue" in e ? e.watchedValue : void 0, s = "defaultValue" in e ? e.defaultValue : e.watchedValue.value(), [o, l] = Object(i.useState)(t ? t.value() : s); return Object(i.useEffect)(() => { if (t) {
1193
- l(t.value());
1194
- const e = e => l(e);
1195
- return t.subscribe(e), () => t.unsubscribe(e);
1196
- } return () => { }; }, [t]), o; };
1197
- }, wZiV: function (e, t) { e.exports = '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 2 30 24" width="30" height="24" fill="none"><circle stroke="currentColor" stroke-width="1.15" cx="8.08" cy="14" r="1.73"/><circle stroke="currentColor" stroke-width="1.15" cx="15" cy="14" r="1.73"/><circle stroke="currentColor" stroke-width="1.15" cx="21.92" cy="14" r="1.73"/></svg>'; }, z4c1: function (e, t) {
1198
- e.exports = '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 22" width="24" height="22" fill="none"><g class="normal-eye"><path fill="currentColor" fill-rule="evenodd" clip-rule="evenodd" d="M17.9948 7.91366C16.6965 6.48549 14.6975 5 11.9999 5C9.30225 5 7.30322 6.48549 6.00488 7.91366C6.00488 7.91366 4 10 4 11C4 12 6.00488 14.0863 6.00488 14.0863C7.30322 15.5145 9.30225 17 11.9999 17C14.6975 17 16.6965 15.5145 17.9948 14.0863C17.9948 14.0863 20 12 20 11C20 10 17.9948 7.91366 17.9948 7.91366ZM6.74482 13.4137C7.94648 14.7355 9.69746 16 11.9999 16C14.3022 16 16.0532 14.7355 17.2549 13.4137C17.2549 13.4137 19 11.5 19 11C19 10.5 17.2549 8.58634 17.2549 8.58634C16.0532 7.26451 14.3022 6 11.9999 6C9.69746 6 7.94648 7.26451 6.74482 8.58634C6.74482 8.58634 5 10.5 5 11C5 11.5 6.74482 13.4137 6.74482 13.4137Z"/><path fill="currentColor" fill-rule="evenodd" clip-rule="evenodd" d="M12 13C13.1046 13 14 12.1046 14 11C14 9.89543 13.1046 9 12 9C10.8954 9 10 9.89543 10 11C10 12.1046 10.8954 13 12 13ZM12 14C13.6569 14 15 12.6569 15 11C15 9.34315 13.6569 8 12 8C10.3431 8 9 9.34315 9 11C9 12.6569 10.3431 14 12 14Z"/></g><g class="crossed-eye"><path fill="currentColor" fill-rule="evenodd" clip-rule="evenodd" d="M8.8503 16.2712C9.76531 16.7135 10.8152 17 11.9999 17C14.6975 17 16.6965 15.5145 17.9948 14.0863C17.9948 14.0863 20 12 20 11C20 10 17.9948 7.91366 17.9948 7.91366C17.8729 7.77954 17.7448 7.64491 17.6105 7.51105L16.9035 8.2181C17.0254 8.33968 17.1425 8.46276 17.2549 8.58634C17.2549 8.58634 19 10.5 19 11C19 11.5 17.2549 13.4137 17.2549 13.4137C16.0532 14.7355 14.3022 16 11.9999 16C11.1218 16 10.324 15.8161 9.60627 15.5153L8.8503 16.2712ZM7.09663 13.7823C6.97455 13.6606 6.85728 13.5374 6.74482 13.4137C6.74482 13.4137 5 11.5 5 11C5 10.5 6.74482 8.58634 6.74482 8.58634C7.94648 7.26451 9.69746 6 11.9999 6C12.8781 6 13.6761 6.18398 14.394 6.48495L15.1499 5.729C14.2348 5.28657 13.1847 5 11.9999 5C9.30225 5 7.30322 6.48549 6.00488 7.91366C6.00488 7.91366 4 10 4 11C4 12 6.00488 14.0863 6.00488 14.0863C6.12693 14.2206 6.25516 14.3553 6.38959 14.4893L7.09663 13.7823Z"/><path fill="currentColor" fill-rule="evenodd" clip-rule="evenodd" d="M11.2231 13.8984C11.4709 13.9647 11.7313 14 12 14C13.6569 14 15 12.6569 15 11C15 10.7313 14.9647 10.4709 14.8984 10.2231L13.9961 11.1254C13.934 12.1301 13.1301 12.934 12.1254 12.9961L11.2231 13.8984ZM11.8751 9.00384C10.87 9.06578 10.0658 9.87001 10.0038 10.8751L9.10166 11.7772C9.03535 11.5294 9 11.2688 9 11C9 9.34315 10.3431 8 12 8C12.2688 8 12.5294 8.03535 12.7772 8.10166L11.8751 9.00384Z"/><path fill="currentColor" fill-rule="evenodd" clip-rule="evenodd" d="M5.64648 16.6465L17.6465 4.64648L18.3536 5.35359L6.35359 17.3536L5.64648 16.6465Z"/></g><g class="loading-eye"><path fill="currentColor" fill-rule="evenodd" clip-rule="evenodd" d="M17.9948 7.91366C16.6965 6.48549 14.6975 5 11.9999 5C9.30225 5 7.30322 6.48549 6.00488 7.91366C6.00488 7.91366 4 10 4 11C4 12 6.00488 14.0863 6.00488 14.0863C7.30322 15.5145 9.30225 17 11.9999 17C14.6975 17 16.6965 15.5145 17.9948 14.0863C17.9948 14.0863 20 12 20 11C20 10 17.9948 7.91366 17.9948 7.91366ZM6.74482 13.4137C7.94648 14.7355 9.69746 16 11.9999 16C14.3022 16 16.0532 14.7355 17.2549 13.4137C17.2549 13.4137 19 11.5 19 11C19 10.5 17.2549 8.58634 17.2549 8.58634C16.0532 7.26451 14.3022 6 11.9999 6C9.69746 6 7.94648 7.26451 6.74482 8.58634C6.74482 8.58634 5 10.5 5 11C5 11.5 6.74482 13.4137 6.74482 13.4137Z"/></g><g class="animated-loading-eye"><path stroke="currentColor" stroke-linecap="round" d="M14.5 11C14.5 9.61929 13.3807 8.5 12 8.5C10.6193 8.5 9.5 9.61929 9.5 11C9.5 12.3807 10.6193 13.5 12 13.5"/></g></svg>';
1199
- } }]);