@gemx-dev/heatmap-react 3.5.46 → 3.5.47

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 (493) hide show
  1. package/dist/esm/components/Layout/HeatmapLayout.d.ts +3 -2
  2. package/dist/esm/components/Layout/HeatmapLayout.d.ts.map +1 -1
  3. package/dist/esm/components/VizDom/VizDomRenderer.d.ts.map +1 -1
  4. package/dist/esm/components/VizElement/HeatmapElements.d.ts +2 -2
  5. package/dist/esm/components/VizElement/HeatmapElements.d.ts.map +1 -1
  6. package/dist/esm/components/VizElement/HeatmapExample.d.ts +2 -0
  7. package/dist/esm/components/VizElement/HeatmapExample.d.ts.map +1 -0
  8. package/dist/esm/components/VizElement/VizElements.d.ts.map +1 -1
  9. package/dist/esm/components/VizLive/VizLiveHeatmap.d.ts.map +1 -1
  10. package/dist/esm/components/VizLive/VizLiveRenderer.d.ts.map +1 -1
  11. package/dist/esm/components/VizScrollmap/AverageFoldLine.d.ts +8 -0
  12. package/dist/esm/components/VizScrollmap/AverageFoldLine.d.ts.map +1 -0
  13. package/dist/esm/components/VizScrollmap/HoverZones.d.ts +10 -0
  14. package/dist/esm/components/VizScrollmap/HoverZones.d.ts.map +1 -0
  15. package/dist/esm/components/VizScrollmap/MetricRow.d.ts +1 -0
  16. package/dist/esm/components/VizScrollmap/MetricRow.d.ts.map +1 -0
  17. package/dist/esm/components/VizScrollmap/ScrollMapMinimap.d.ts +8 -0
  18. package/dist/esm/components/VizScrollmap/ScrollMapMinimap.d.ts.map +1 -0
  19. package/dist/esm/components/VizScrollmap/ScrollMapOverlay.d.ts +7 -0
  20. package/dist/esm/components/VizScrollmap/ScrollMapOverlay.d.ts.map +1 -0
  21. package/dist/esm/components/VizScrollmap/ScrollZoneHoverArea.d.ts +14 -0
  22. package/dist/esm/components/VizScrollmap/ScrollZoneHoverArea.d.ts.map +1 -0
  23. package/dist/esm/components/VizScrollmap/ScrollZoneTooltip.d.ts +10 -0
  24. package/dist/esm/components/VizScrollmap/ScrollZoneTooltip.d.ts.map +1 -0
  25. package/dist/esm/components/VizScrollmap/ScrollmapMarker.d.ts +7 -0
  26. package/dist/esm/components/VizScrollmap/ScrollmapMarker.d.ts.map +1 -0
  27. package/dist/esm/components/VizScrollmap/VizScrollMap.d.ts +7 -0
  28. package/dist/esm/components/VizScrollmap/VizScrollMap.d.ts.map +1 -0
  29. package/{src/components/VizScrollmap/index.ts → dist/esm/components/VizScrollmap/index.d.ts} +1 -0
  30. package/dist/esm/components/VizScrollmap/index.d.ts.map +1 -0
  31. package/dist/esm/components/VizScrollmapV2/ScrollmapOverlayV2.d.ts +5 -0
  32. package/dist/esm/components/VizScrollmapV2/ScrollmapOverlayV2.d.ts.map +1 -0
  33. package/{src/components/VizScrollmapV2/index.ts → dist/esm/components/VizScrollmapV2/index.d.ts} +1 -0
  34. package/dist/esm/components/VizScrollmapV2/index.d.ts.map +1 -0
  35. package/dist/esm/components/VizScrollmapV2/scrollmap.types.d.ts +18 -0
  36. package/dist/esm/components/VizScrollmapV2/scrollmap.types.d.ts.map +1 -0
  37. package/dist/esm/components/VizScrollmapV2/useScrollmapOverlay.d.ts +16 -0
  38. package/dist/esm/components/VizScrollmapV2/useScrollmapOverlay.d.ts.map +1 -0
  39. package/dist/esm/configs/style.d.ts +2 -0
  40. package/dist/esm/configs/style.d.ts.map +1 -1
  41. package/dist/esm/helpers/elm-getter.d.ts +2 -2
  42. package/dist/esm/helpers/elm-getter.d.ts.map +1 -1
  43. package/dist/esm/helpers/iframe-helper/fixer.d.ts +18 -0
  44. package/dist/esm/helpers/iframe-helper/fixer.d.ts.map +1 -0
  45. package/dist/esm/helpers/iframe-helper/index.d.ts +2 -0
  46. package/dist/esm/helpers/iframe-helper/index.d.ts.map +1 -0
  47. package/dist/esm/helpers/iframe-helper/init.d.ts +5 -0
  48. package/dist/esm/helpers/iframe-helper/init.d.ts.map +1 -0
  49. package/dist/esm/helpers/iframe-helper/navigation-blocker-v2.d.ts +28 -0
  50. package/dist/esm/helpers/iframe-helper/navigation-blocker-v2.d.ts.map +1 -0
  51. package/dist/esm/helpers/iframe-helper/navigation-blocker.d.ts +20 -0
  52. package/dist/esm/helpers/iframe-helper/navigation-blocker.d.ts.map +1 -0
  53. package/dist/esm/helpers/iframe-helper/style-replacer.d.ts +25 -0
  54. package/dist/esm/helpers/iframe-helper/style-replacer.d.ts.map +1 -0
  55. package/dist/esm/helpers/index.d.ts +2 -2
  56. package/dist/esm/helpers/index.d.ts.map +1 -1
  57. package/dist/esm/helpers/viz-canvas/area-clustering.d.ts +44 -0
  58. package/dist/esm/helpers/viz-canvas/area-clustering.d.ts.map +1 -0
  59. package/dist/esm/helpers/viz-canvas/area-overlay-manager-v2.d.ts +17 -0
  60. package/dist/esm/helpers/viz-canvas/area-overlay-manager-v2.d.ts.map +1 -0
  61. package/dist/esm/helpers/viz-canvas/area-overlay-manager.d.ts +51 -0
  62. package/dist/esm/helpers/viz-canvas/area-overlay-manager.d.ts.map +1 -0
  63. package/dist/esm/helpers/viz-canvas/hierarchical-area-clustering.d.ts +73 -0
  64. package/dist/esm/helpers/viz-canvas/hierarchical-area-clustering.d.ts.map +1 -0
  65. package/{src/helpers/viz-canvas/index.ts → dist/esm/helpers/viz-canvas/index.d.ts} +1 -0
  66. package/dist/esm/helpers/viz-canvas/index.d.ts.map +1 -0
  67. package/dist/esm/hooks/index.d.ts +2 -1
  68. package/dist/esm/hooks/index.d.ts.map +1 -1
  69. package/dist/esm/hooks/register/useRegisterData.d.ts +2 -2
  70. package/dist/esm/hooks/register/useRegisterData.d.ts.map +1 -1
  71. package/dist/esm/hooks/register/useRegisterHeatmap.d.ts +7 -2
  72. package/dist/esm/hooks/register/useRegisterHeatmap.d.ts.map +1 -1
  73. package/dist/esm/hooks/viz-area/useAreaHeatmap.d.ts +59 -0
  74. package/dist/esm/hooks/viz-area/useAreaHeatmap.d.ts.map +1 -0
  75. package/dist/esm/hooks/viz-area/useAreaHeatmapManager.d.ts +77 -0
  76. package/dist/esm/hooks/viz-area/useAreaHeatmapManager.d.ts.map +1 -0
  77. package/dist/esm/hooks/viz-canvas/index.d.ts +1 -1
  78. package/dist/esm/hooks/viz-canvas/index.d.ts.map +1 -1
  79. package/dist/esm/hooks/viz-canvas/useAreamap.d.ts +14 -0
  80. package/dist/esm/hooks/viz-canvas/useAreamap.d.ts.map +1 -0
  81. package/dist/esm/hooks/viz-canvas/useClickmap.d.ts +3 -1
  82. package/dist/esm/hooks/viz-canvas/useClickmap.d.ts.map +1 -1
  83. package/dist/esm/hooks/viz-canvas/useHeatmapCanvas.d.ts +4 -0
  84. package/dist/esm/hooks/viz-canvas/useHeatmapCanvas.d.ts.map +1 -0
  85. package/dist/esm/hooks/viz-canvas/useScrollmap.d.ts +3 -1
  86. package/dist/esm/hooks/viz-canvas/useScrollmap.d.ts.map +1 -1
  87. package/dist/esm/hooks/{vix-elements → viz-elements}/index.d.ts.map +1 -1
  88. package/dist/esm/hooks/{vix-elements → viz-elements}/useClickedElement.d.ts.map +1 -1
  89. package/dist/esm/hooks/{vix-elements → viz-elements}/useElementCalloutVisible.d.ts.map +1 -1
  90. package/dist/esm/hooks/{vix-elements → viz-elements}/useHeatmapEffects.d.ts.map +1 -1
  91. package/dist/esm/hooks/{vix-elements → viz-elements}/useHeatmapElementPosition.d.ts.map +1 -1
  92. package/dist/esm/hooks/viz-elements/useHeatmapMouseHandler.d.ts +34 -0
  93. package/dist/esm/hooks/viz-elements/useHeatmapMouseHandler.d.ts.map +1 -0
  94. package/dist/esm/hooks/{vix-elements → viz-elements}/useHoveredElement.d.ts +4 -0
  95. package/dist/esm/hooks/viz-elements/useHoveredElement.d.ts.map +1 -0
  96. package/dist/esm/hooks/viz-live/index.d.ts +1 -1
  97. package/dist/{umd/hooks/viz-live/useIframeMessage.d.ts → esm/hooks/viz-live/useVizLiveIframeMsg.d.ts} +2 -10
  98. package/dist/esm/hooks/viz-live/useVizLiveIframeMsg.d.ts.map +1 -0
  99. package/dist/esm/hooks/viz-live/useVizLiveRender.d.ts +4 -0
  100. package/dist/esm/hooks/viz-live/useVizLiveRender.d.ts.map +1 -0
  101. package/dist/esm/hooks/viz-render/useHeatmapRender.d.ts.map +1 -1
  102. package/dist/esm/hooks/viz-scale/useContainerDimensions.d.ts.map +1 -1
  103. package/dist/esm/hooks/viz-scale/useHeatmapScale.d.ts +1 -1
  104. package/dist/esm/hooks/viz-scale/useHeatmapScale.d.ts.map +1 -1
  105. package/dist/esm/hooks/viz-scale/useObserveIframeHeight.d.ts +10 -0
  106. package/dist/esm/hooks/viz-scale/useObserveIframeHeight.d.ts.map +1 -0
  107. package/{src/hooks/viz-scrollmap/index.ts → dist/esm/hooks/viz-scrollmap/index.d.ts} +1 -0
  108. package/dist/esm/hooks/viz-scrollmap/index.d.ts.map +1 -0
  109. package/dist/esm/hooks/viz-scrollmap/useScrollmapZones.d.ts +29 -0
  110. package/dist/esm/hooks/viz-scrollmap/useScrollmapZones.d.ts.map +1 -0
  111. package/dist/esm/hooks/viz-scrollmap/useZonePositions.d.ts +12 -0
  112. package/dist/esm/hooks/viz-scrollmap/useZonePositions.d.ts.map +1 -0
  113. package/dist/esm/index.d.ts +1 -1
  114. package/dist/esm/index.d.ts.map +1 -1
  115. package/dist/esm/index.js +1181 -210
  116. package/dist/esm/index.mjs +1181 -210
  117. package/dist/esm/stores/config.d.ts +5 -1
  118. package/dist/esm/stores/config.d.ts.map +1 -1
  119. package/dist/esm/stores/data.d.ts +5 -3
  120. package/dist/esm/stores/data.d.ts.map +1 -1
  121. package/dist/esm/stores/index.d.ts +2 -0
  122. package/dist/esm/stores/index.d.ts.map +1 -1
  123. package/dist/esm/stores/interaction.d.ts.map +1 -1
  124. package/dist/esm/stores/mode-live.d.ts +4 -0
  125. package/dist/esm/stores/mode-live.d.ts.map +1 -1
  126. package/dist/esm/stores/mode-single.d.ts +9 -0
  127. package/dist/esm/stores/mode-single.d.ts.map +1 -0
  128. package/dist/esm/stores/viz-scrollmap.d.ts +11 -0
  129. package/dist/esm/stores/viz-scrollmap.d.ts.map +1 -0
  130. package/dist/esm/stores/viz.d.ts +0 -4
  131. package/dist/esm/stores/viz.d.ts.map +1 -1
  132. package/dist/esm/types/clarity.d.ts +5 -0
  133. package/dist/esm/types/clarity.d.ts.map +1 -1
  134. package/dist/esm/types/heatmap-info.d.ts +11 -0
  135. package/dist/esm/types/heatmap-info.d.ts.map +1 -0
  136. package/dist/esm/types/heatmap.d.ts +13 -0
  137. package/dist/esm/types/heatmap.d.ts.map +1 -1
  138. package/dist/esm/types/iframe-helper.d.ts +20 -0
  139. package/dist/esm/types/iframe-helper.d.ts.map +1 -0
  140. package/dist/esm/types/index.d.ts +4 -1
  141. package/dist/esm/types/index.d.ts.map +1 -1
  142. package/dist/esm/types/viz-canvas.d.ts +23 -0
  143. package/dist/esm/types/viz-canvas.d.ts.map +1 -0
  144. package/dist/esm/types/viz-element.d.ts +0 -6
  145. package/dist/esm/types/viz-element.d.ts.map +1 -1
  146. package/dist/esm/types/viz-scrollmap.d.ts +27 -0
  147. package/dist/esm/types/viz-scrollmap.d.ts.map +1 -0
  148. package/dist/umd/components/Layout/HeatmapLayout.d.ts +3 -2
  149. package/dist/umd/components/Layout/HeatmapLayout.d.ts.map +1 -1
  150. package/dist/umd/components/VizDom/VizDomRenderer.d.ts.map +1 -1
  151. package/dist/umd/components/VizElement/HeatmapElements.d.ts +2 -2
  152. package/dist/umd/components/VizElement/HeatmapElements.d.ts.map +1 -1
  153. package/dist/umd/components/VizElement/HeatmapExample.d.ts +2 -0
  154. package/dist/umd/components/VizElement/HeatmapExample.d.ts.map +1 -0
  155. package/dist/umd/components/VizElement/VizElements.d.ts.map +1 -1
  156. package/dist/umd/components/VizLive/VizLiveHeatmap.d.ts.map +1 -1
  157. package/dist/umd/components/VizLive/VizLiveRenderer.d.ts.map +1 -1
  158. package/dist/umd/components/VizScrollmap/AverageFoldLine.d.ts +8 -0
  159. package/dist/umd/components/VizScrollmap/AverageFoldLine.d.ts.map +1 -0
  160. package/dist/umd/components/VizScrollmap/HoverZones.d.ts +10 -0
  161. package/dist/umd/components/VizScrollmap/HoverZones.d.ts.map +1 -0
  162. package/dist/umd/components/VizScrollmap/MetricRow.d.ts +1 -0
  163. package/dist/umd/components/VizScrollmap/MetricRow.d.ts.map +1 -0
  164. package/dist/umd/components/VizScrollmap/ScrollMapMinimap.d.ts +8 -0
  165. package/dist/umd/components/VizScrollmap/ScrollMapMinimap.d.ts.map +1 -0
  166. package/dist/umd/components/VizScrollmap/ScrollMapOverlay.d.ts +7 -0
  167. package/dist/umd/components/VizScrollmap/ScrollMapOverlay.d.ts.map +1 -0
  168. package/dist/umd/components/VizScrollmap/ScrollZoneHoverArea.d.ts +14 -0
  169. package/dist/umd/components/VizScrollmap/ScrollZoneHoverArea.d.ts.map +1 -0
  170. package/dist/umd/components/VizScrollmap/ScrollZoneTooltip.d.ts +10 -0
  171. package/dist/umd/components/VizScrollmap/ScrollZoneTooltip.d.ts.map +1 -0
  172. package/dist/umd/components/VizScrollmap/ScrollmapMarker.d.ts +7 -0
  173. package/dist/umd/components/VizScrollmap/ScrollmapMarker.d.ts.map +1 -0
  174. package/dist/umd/components/VizScrollmap/VizScrollMap.d.ts +7 -0
  175. package/dist/umd/components/VizScrollmap/VizScrollMap.d.ts.map +1 -0
  176. package/dist/umd/components/VizScrollmap/index.d.ts +2 -0
  177. package/dist/umd/components/VizScrollmap/index.d.ts.map +1 -0
  178. package/dist/umd/components/VizScrollmapV2/ScrollmapOverlayV2.d.ts +5 -0
  179. package/dist/umd/components/VizScrollmapV2/ScrollmapOverlayV2.d.ts.map +1 -0
  180. package/dist/umd/components/VizScrollmapV2/index.d.ts +2 -0
  181. package/dist/umd/components/VizScrollmapV2/index.d.ts.map +1 -0
  182. package/dist/umd/components/VizScrollmapV2/scrollmap.types.d.ts +18 -0
  183. package/dist/umd/components/VizScrollmapV2/scrollmap.types.d.ts.map +1 -0
  184. package/dist/umd/components/VizScrollmapV2/useScrollmapOverlay.d.ts +16 -0
  185. package/dist/umd/components/VizScrollmapV2/useScrollmapOverlay.d.ts.map +1 -0
  186. package/dist/umd/configs/style.d.ts +2 -0
  187. package/dist/umd/configs/style.d.ts.map +1 -1
  188. package/dist/umd/helpers/elm-getter.d.ts +2 -2
  189. package/dist/umd/helpers/elm-getter.d.ts.map +1 -1
  190. package/dist/umd/helpers/iframe-helper/fixer.d.ts +18 -0
  191. package/dist/umd/helpers/iframe-helper/fixer.d.ts.map +1 -0
  192. package/dist/umd/helpers/iframe-helper/index.d.ts +2 -0
  193. package/dist/umd/helpers/iframe-helper/index.d.ts.map +1 -0
  194. package/dist/umd/helpers/iframe-helper/init.d.ts +5 -0
  195. package/dist/umd/helpers/iframe-helper/init.d.ts.map +1 -0
  196. package/dist/umd/helpers/iframe-helper/navigation-blocker-v2.d.ts +28 -0
  197. package/dist/umd/helpers/iframe-helper/navigation-blocker-v2.d.ts.map +1 -0
  198. package/dist/umd/helpers/iframe-helper/navigation-blocker.d.ts +20 -0
  199. package/dist/umd/helpers/iframe-helper/navigation-blocker.d.ts.map +1 -0
  200. package/dist/umd/helpers/iframe-helper/style-replacer.d.ts +25 -0
  201. package/dist/umd/helpers/iframe-helper/style-replacer.d.ts.map +1 -0
  202. package/dist/umd/helpers/index.d.ts +2 -2
  203. package/dist/umd/helpers/index.d.ts.map +1 -1
  204. package/dist/umd/helpers/viz-canvas/area-clustering.d.ts +44 -0
  205. package/dist/umd/helpers/viz-canvas/area-clustering.d.ts.map +1 -0
  206. package/dist/umd/helpers/viz-canvas/area-overlay-manager-v2.d.ts +17 -0
  207. package/dist/umd/helpers/viz-canvas/area-overlay-manager-v2.d.ts.map +1 -0
  208. package/dist/umd/helpers/viz-canvas/area-overlay-manager.d.ts +51 -0
  209. package/dist/umd/helpers/viz-canvas/area-overlay-manager.d.ts.map +1 -0
  210. package/dist/umd/helpers/viz-canvas/hierarchical-area-clustering.d.ts +73 -0
  211. package/dist/umd/helpers/viz-canvas/hierarchical-area-clustering.d.ts.map +1 -0
  212. package/dist/umd/helpers/viz-canvas/index.d.ts +3 -0
  213. package/dist/umd/helpers/viz-canvas/index.d.ts.map +1 -0
  214. package/dist/umd/hooks/index.d.ts +2 -1
  215. package/dist/umd/hooks/index.d.ts.map +1 -1
  216. package/dist/umd/hooks/register/useRegisterData.d.ts +2 -2
  217. package/dist/umd/hooks/register/useRegisterData.d.ts.map +1 -1
  218. package/dist/umd/hooks/register/useRegisterHeatmap.d.ts +7 -2
  219. package/dist/umd/hooks/register/useRegisterHeatmap.d.ts.map +1 -1
  220. package/dist/umd/hooks/viz-area/useAreaHeatmap.d.ts +59 -0
  221. package/dist/umd/hooks/viz-area/useAreaHeatmap.d.ts.map +1 -0
  222. package/dist/umd/hooks/viz-area/useAreaHeatmapManager.d.ts +77 -0
  223. package/dist/umd/hooks/viz-area/useAreaHeatmapManager.d.ts.map +1 -0
  224. package/dist/umd/hooks/viz-canvas/index.d.ts +1 -1
  225. package/dist/umd/hooks/viz-canvas/index.d.ts.map +1 -1
  226. package/dist/umd/hooks/viz-canvas/useAreamap.d.ts +14 -0
  227. package/dist/umd/hooks/viz-canvas/useAreamap.d.ts.map +1 -0
  228. package/dist/umd/hooks/viz-canvas/useClickmap.d.ts +3 -1
  229. package/dist/umd/hooks/viz-canvas/useClickmap.d.ts.map +1 -1
  230. package/dist/umd/hooks/viz-canvas/useHeatmapCanvas.d.ts +4 -0
  231. package/dist/umd/hooks/viz-canvas/useHeatmapCanvas.d.ts.map +1 -0
  232. package/dist/umd/hooks/viz-canvas/useScrollmap.d.ts +3 -1
  233. package/dist/umd/hooks/viz-canvas/useScrollmap.d.ts.map +1 -1
  234. package/dist/umd/hooks/{vix-elements → viz-elements}/index.d.ts.map +1 -1
  235. package/dist/umd/hooks/{vix-elements → viz-elements}/useClickedElement.d.ts.map +1 -1
  236. package/dist/umd/hooks/{vix-elements → viz-elements}/useElementCalloutVisible.d.ts.map +1 -1
  237. package/dist/umd/hooks/{vix-elements → viz-elements}/useHeatmapEffects.d.ts.map +1 -1
  238. package/dist/umd/hooks/{vix-elements → viz-elements}/useHeatmapElementPosition.d.ts.map +1 -1
  239. package/dist/umd/hooks/viz-elements/useHeatmapMouseHandler.d.ts +34 -0
  240. package/dist/umd/hooks/viz-elements/useHeatmapMouseHandler.d.ts.map +1 -0
  241. package/dist/umd/hooks/{vix-elements → viz-elements}/useHoveredElement.d.ts +4 -0
  242. package/dist/umd/hooks/viz-elements/useHoveredElement.d.ts.map +1 -0
  243. package/dist/umd/hooks/viz-live/index.d.ts +1 -1
  244. package/dist/{esm/hooks/viz-live/useIframeMessage.d.ts → umd/hooks/viz-live/useVizLiveIframeMsg.d.ts} +2 -10
  245. package/dist/umd/hooks/viz-live/useVizLiveIframeMsg.d.ts.map +1 -0
  246. package/dist/umd/hooks/viz-live/useVizLiveRender.d.ts +4 -0
  247. package/dist/umd/hooks/viz-live/useVizLiveRender.d.ts.map +1 -0
  248. package/dist/umd/hooks/viz-render/useHeatmapRender.d.ts.map +1 -1
  249. package/dist/umd/hooks/viz-scale/useContainerDimensions.d.ts.map +1 -1
  250. package/dist/umd/hooks/viz-scale/useHeatmapScale.d.ts +1 -1
  251. package/dist/umd/hooks/viz-scale/useHeatmapScale.d.ts.map +1 -1
  252. package/dist/umd/hooks/viz-scale/useObserveIframeHeight.d.ts +10 -0
  253. package/dist/umd/hooks/viz-scale/useObserveIframeHeight.d.ts.map +1 -0
  254. package/dist/umd/hooks/viz-scrollmap/index.d.ts +3 -0
  255. package/dist/umd/hooks/viz-scrollmap/index.d.ts.map +1 -0
  256. package/dist/umd/hooks/viz-scrollmap/useScrollmapZones.d.ts +29 -0
  257. package/dist/umd/hooks/viz-scrollmap/useScrollmapZones.d.ts.map +1 -0
  258. package/dist/umd/hooks/viz-scrollmap/useZonePositions.d.ts +12 -0
  259. package/dist/umd/hooks/viz-scrollmap/useZonePositions.d.ts.map +1 -0
  260. package/dist/umd/index.d.ts +1 -1
  261. package/dist/umd/index.d.ts.map +1 -1
  262. package/dist/umd/index.js +2 -2
  263. package/dist/umd/stores/config.d.ts +5 -1
  264. package/dist/umd/stores/config.d.ts.map +1 -1
  265. package/dist/umd/stores/data.d.ts +5 -3
  266. package/dist/umd/stores/data.d.ts.map +1 -1
  267. package/dist/umd/stores/index.d.ts +2 -0
  268. package/dist/umd/stores/index.d.ts.map +1 -1
  269. package/dist/umd/stores/interaction.d.ts.map +1 -1
  270. package/dist/umd/stores/mode-live.d.ts +4 -0
  271. package/dist/umd/stores/mode-live.d.ts.map +1 -1
  272. package/dist/umd/stores/mode-single.d.ts +9 -0
  273. package/dist/umd/stores/mode-single.d.ts.map +1 -0
  274. package/dist/umd/stores/viz-scrollmap.d.ts +11 -0
  275. package/dist/umd/stores/viz-scrollmap.d.ts.map +1 -0
  276. package/dist/umd/stores/viz.d.ts +0 -4
  277. package/dist/umd/stores/viz.d.ts.map +1 -1
  278. package/dist/umd/types/clarity.d.ts +5 -0
  279. package/dist/umd/types/clarity.d.ts.map +1 -1
  280. package/dist/umd/types/heatmap-info.d.ts +11 -0
  281. package/dist/umd/types/heatmap-info.d.ts.map +1 -0
  282. package/dist/umd/types/heatmap.d.ts +13 -0
  283. package/dist/umd/types/heatmap.d.ts.map +1 -1
  284. package/dist/umd/types/iframe-helper.d.ts +20 -0
  285. package/dist/umd/types/iframe-helper.d.ts.map +1 -0
  286. package/dist/umd/types/index.d.ts +4 -1
  287. package/dist/umd/types/index.d.ts.map +1 -1
  288. package/dist/umd/types/viz-canvas.d.ts +23 -0
  289. package/dist/umd/types/viz-canvas.d.ts.map +1 -0
  290. package/dist/umd/types/viz-element.d.ts +0 -6
  291. package/dist/umd/types/viz-element.d.ts.map +1 -1
  292. package/dist/umd/types/viz-scrollmap.d.ts +27 -0
  293. package/dist/umd/types/viz-scrollmap.d.ts.map +1 -0
  294. package/package.json +14 -11
  295. package/dist/esm/components/Layout/ContentHeader.d.ts +0 -4
  296. package/dist/esm/components/Layout/ContentHeader.d.ts.map +0 -1
  297. package/dist/esm/components/Layout/VizMode.d.ts +0 -2
  298. package/dist/esm/components/Layout/VizMode.d.ts.map +0 -1
  299. package/dist/esm/components/Test.d.ts +0 -121
  300. package/dist/esm/components/Test.d.ts.map +0 -1
  301. package/dist/esm/components/VizDom/VizDomContainer.d.ts +0 -6
  302. package/dist/esm/components/VizDom/VizDomContainer.d.ts.map +0 -1
  303. package/dist/esm/components/VizElement/ClickedElementOverlay.d.ts +0 -17
  304. package/dist/esm/components/VizElement/ClickedElementOverlay.d.ts.map +0 -1
  305. package/dist/esm/components/VizElement/HoveredElementOverlay.d.ts +0 -12
  306. package/dist/esm/components/VizElement/HoveredElementOverlay.d.ts.map +0 -1
  307. package/dist/esm/components/VizElement/MissingElementMessage.d.ts +0 -7
  308. package/dist/esm/components/VizElement/MissingElementMessage.d.ts.map +0 -1
  309. package/dist/esm/components/VizElement/temp/ClarityVisualizer.d.ts +0 -150
  310. package/dist/esm/components/VizElement/temp/ClarityVisualizer.d.ts.map +0 -1
  311. package/dist/esm/components/VizElement/temp/VizElementRank.d.ts +0 -74
  312. package/dist/esm/components/VizElement/temp/VizElementRank.d.ts.map +0 -1
  313. package/dist/esm/components/VizLive/VizLive.d.ts +0 -2
  314. package/dist/esm/components/VizLive/VizLive.d.ts.map +0 -1
  315. package/dist/esm/helpers/viewport-fixer.d.ts +0 -13
  316. package/dist/esm/helpers/viewport-fixer.d.ts.map +0 -1
  317. package/dist/esm/helpers/viewport-replacer.d.ts +0 -26
  318. package/dist/esm/helpers/viewport-replacer.d.ts.map +0 -1
  319. package/dist/esm/hooks/vix-elements/useHoveredElement.d.ts.map +0 -1
  320. package/dist/esm/hooks/viz-canvas/useHeatmapVizCanvas.d.ts +0 -2
  321. package/dist/esm/hooks/viz-canvas/useHeatmapVizCanvas.d.ts.map +0 -1
  322. package/dist/esm/hooks/viz-live/useIframeMessage.d.ts.map +0 -1
  323. package/dist/esm/hooks/viz-scale/useIframeHeight.d.ts +0 -10
  324. package/dist/esm/hooks/viz-scale/useIframeHeight.d.ts.map +0 -1
  325. package/dist/esm/types/viewport-fixer.d.ts +0 -31
  326. package/dist/esm/types/viewport-fixer.d.ts.map +0 -1
  327. package/dist/umd/components/Layout/ContentHeader.d.ts +0 -4
  328. package/dist/umd/components/Layout/ContentHeader.d.ts.map +0 -1
  329. package/dist/umd/components/Test.d.ts +0 -121
  330. package/dist/umd/components/Test.d.ts.map +0 -1
  331. package/dist/umd/components/VizDom/VizDomContainer.d.ts +0 -2
  332. package/dist/umd/components/VizDom/VizDomContainer.d.ts.map +0 -1
  333. package/dist/umd/components/VizElement/ClickedElementOverlay.d.ts +0 -17
  334. package/dist/umd/components/VizElement/ClickedElementOverlay.d.ts.map +0 -1
  335. package/dist/umd/components/VizElement/HoveredElementOverlay.d.ts +0 -12
  336. package/dist/umd/components/VizElement/HoveredElementOverlay.d.ts.map +0 -1
  337. package/dist/umd/components/VizElement/MissingElementMessage.d.ts +0 -7
  338. package/dist/umd/components/VizElement/MissingElementMessage.d.ts.map +0 -1
  339. package/dist/umd/components/VizElement/temp/ClarityVisualizer.d.ts +0 -150
  340. package/dist/umd/components/VizElement/temp/ClarityVisualizer.d.ts.map +0 -1
  341. package/dist/umd/components/VizElement/temp/VizElementRank.d.ts +0 -74
  342. package/dist/umd/components/VizElement/temp/VizElementRank.d.ts.map +0 -1
  343. package/dist/umd/helpers/viewport-fixer.d.ts +0 -13
  344. package/dist/umd/helpers/viewport-fixer.d.ts.map +0 -1
  345. package/dist/umd/helpers/viewport-replacer.d.ts +0 -26
  346. package/dist/umd/helpers/viewport-replacer.d.ts.map +0 -1
  347. package/dist/umd/hooks/vix-elements/useHoveredElement.d.ts.map +0 -1
  348. package/dist/umd/hooks/viz-canvas/useHeatmapVizCanvas.d.ts +0 -2
  349. package/dist/umd/hooks/viz-canvas/useHeatmapVizCanvas.d.ts.map +0 -1
  350. package/dist/umd/hooks/viz-live/useIframeMessage.d.ts.map +0 -1
  351. package/dist/umd/hooks/viz-scale/useIframeHeight.d.ts +0 -10
  352. package/dist/umd/hooks/viz-scale/useIframeHeight.d.ts.map +0 -1
  353. package/dist/umd/types/viewport-fixer.d.ts +0 -31
  354. package/dist/umd/types/viewport-fixer.d.ts.map +0 -1
  355. package/src/components/GraphView.tsx +0 -58
  356. package/src/components/Layout/ContentMetricBar.tsx +0 -23
  357. package/src/components/Layout/ContentToolbar.tsx +0 -22
  358. package/src/components/Layout/ContentTopBar.tsx +0 -24
  359. package/src/components/Layout/ContentVizByMode.tsx +0 -14
  360. package/src/components/Layout/HeatmapLayout.tsx +0 -60
  361. package/src/components/Layout/LeftSidebar.tsx +0 -44
  362. package/src/components/Layout/WrapperLayout.tsx +0 -12
  363. package/src/components/Layout/WrapperPreview.tsx +0 -24
  364. package/src/components/Layout/index.ts +0 -1
  365. package/src/components/VizDom/ReplayControls.tsx +0 -48
  366. package/src/components/VizDom/VizContainer.tsx +0 -40
  367. package/src/components/VizDom/VizDomHeatmap.tsx +0 -28
  368. package/src/components/VizDom/VizDomRenderer.tsx +0 -82
  369. package/src/components/VizDom/VizLoading.tsx +0 -8
  370. package/src/components/VizDom/WrapperVisual.tsx +0 -73
  371. package/src/components/VizDom/index.ts +0 -5
  372. package/src/components/VizElement/DefaultRankBadges.tsx +0 -36
  373. package/src/components/VizElement/ElementCallout.tsx +0 -82
  374. package/src/components/VizElement/ElementMissing.tsx +0 -35
  375. package/src/components/VizElement/ElementOverlay.tsx +0 -66
  376. package/src/components/VizElement/HeatmapElements.tsx +0 -127
  377. package/src/components/VizElement/HeatmapExample.tsx +0 -70
  378. package/src/components/VizElement/RankBadge.tsx +0 -25
  379. package/src/components/VizElement/VizElements.tsx +0 -57
  380. package/src/components/VizElement/index.ts +0 -1
  381. package/src/components/VizLive/VizLiveHeatmap.tsx +0 -27
  382. package/src/components/VizLive/VizLiveRenderer.tsx +0 -47
  383. package/src/components/VizLive/index.ts +0 -1
  384. package/src/components/VizScrollmap/AverageFoldLine.tsx +0 -57
  385. package/src/components/VizScrollmap/HoverZones.tsx +0 -58
  386. package/src/components/VizScrollmap/MetricRow.tsx +0 -0
  387. package/src/components/VizScrollmap/ScrollMapMinimap.tsx +0 -64
  388. package/src/components/VizScrollmap/ScrollMapOverlay.tsx +0 -79
  389. package/src/components/VizScrollmap/ScrollZoneHoverArea.tsx +0 -35
  390. package/src/components/VizScrollmap/ScrollZoneTooltip.tsx +0 -146
  391. package/src/components/VizScrollmap/ScrollmapMarker.tsx +0 -106
  392. package/src/components/VizScrollmap/VizScrollMap.tsx +0 -36
  393. package/src/components/VizScrollmapV2/ScrollmapOverlay.css +0 -94
  394. package/src/components/VizScrollmapV2/ScrollmapOverlayV2.tsx +0 -130
  395. package/src/components/VizScrollmapV2/scrollmap.types.ts +0 -21
  396. package/src/components/VizScrollmapV2/useScrollmapOverlay.ts +0 -187
  397. package/src/components/index.tsx +0 -2
  398. package/src/configs/iframe.ts +0 -15
  399. package/src/configs/index.ts +0 -2
  400. package/src/configs/style.ts +0 -21
  401. package/src/constants/index.ts +0 -4
  402. package/src/global.d.ts +0 -5
  403. package/src/helpers/elm-callout.ts +0 -347
  404. package/src/helpers/elm-getter.ts +0 -70
  405. package/src/helpers/iframe-helper/fixer.ts +0 -100
  406. package/src/helpers/iframe-helper/index.ts +0 -1
  407. package/src/helpers/iframe-helper/init.ts +0 -56
  408. package/src/helpers/iframe-helper/navigation-blocker-v2.ts +0 -371
  409. package/src/helpers/iframe-helper/navigation-blocker.ts +0 -367
  410. package/src/helpers/iframe-helper/style-replacer.ts +0 -231
  411. package/src/helpers/iframe.ts +0 -42
  412. package/src/helpers/index.ts +0 -8
  413. package/src/helpers/viz-canvas/area-clustering.ts +0 -234
  414. package/src/helpers/viz-canvas/area-overlay-manager-v2.ts +0 -176
  415. package/src/helpers/viz-canvas/area-overlay-manager.ts +0 -273
  416. package/src/helpers/viz-canvas/hierarchical-area-clustering.ts +0 -420
  417. package/src/helpers/viz-elements.ts +0 -43
  418. package/src/hooks/index.ts +0 -8
  419. package/src/hooks/register/index.ts +0 -4
  420. package/src/hooks/register/useRegisterConfig.ts +0 -17
  421. package/src/hooks/register/useRegisterControl.ts +0 -13
  422. package/src/hooks/register/useRegisterData.ts +0 -36
  423. package/src/hooks/register/useRegisterHeatmap.ts +0 -38
  424. package/src/hooks/viz-area/useAreaHeatmap.ts +0 -336
  425. package/src/hooks/viz-area/useAreaHeatmapManager.ts +0 -692
  426. package/src/hooks/viz-canvas/index.ts +0 -1
  427. package/src/hooks/viz-canvas/useAreamap.ts +0 -162
  428. package/src/hooks/viz-canvas/useClickmap.ts +0 -24
  429. package/src/hooks/viz-canvas/useHeatmapCanvas.ts +0 -27
  430. package/src/hooks/viz-canvas/useScrollmap.ts +0 -22
  431. package/src/hooks/viz-elements/index.ts +0 -5
  432. package/src/hooks/viz-elements/useClickedElement.ts +0 -86
  433. package/src/hooks/viz-elements/useElementCalloutVisible.ts +0 -45
  434. package/src/hooks/viz-elements/useHeatmapEffects.ts +0 -30
  435. package/src/hooks/viz-elements/useHeatmapElementPosition.ts +0 -60
  436. package/src/hooks/viz-elements/useHeatmapMouseHandler.ts +0 -255
  437. package/src/hooks/viz-elements/useHoveredElement.ts +0 -170
  438. package/src/hooks/viz-live/index.ts +0 -1
  439. package/src/hooks/viz-live/useVizLiveIframeMsg.ts +0 -88
  440. package/src/hooks/viz-live/useVizLiveRender.ts +0 -67
  441. package/src/hooks/viz-render/index.ts +0 -1
  442. package/src/hooks/viz-render/useHeatmapRender.ts +0 -71
  443. package/src/hooks/viz-render/useHeatmapVizRender.ts +0 -20
  444. package/src/hooks/viz-render/useReplayRender.ts +0 -160
  445. package/src/hooks/viz-scale/index.ts +0 -2
  446. package/src/hooks/viz-scale/useContainerDimensions.ts +0 -48
  447. package/src/hooks/viz-scale/useContentDimensions.ts +0 -25
  448. package/src/hooks/viz-scale/useHeatmapScale.ts +0 -52
  449. package/src/hooks/viz-scale/useObserveIframeHeight.ts +0 -162
  450. package/src/hooks/viz-scale/useScaleCalculation.ts +0 -31
  451. package/src/hooks/viz-scale/useScrollSync.ts +0 -36
  452. package/src/hooks/viz-scale/useWrapperRefHeight.ts +0 -91
  453. package/src/hooks/viz-scrollmap/useScrollmapZones.ts +0 -165
  454. package/src/hooks/viz-scrollmap/useZonePositions.ts +0 -38
  455. package/src/index.ts +0 -10
  456. package/src/stores/comp.ts +0 -31
  457. package/src/stores/config.ts +0 -37
  458. package/src/stores/data.ts +0 -30
  459. package/src/stores/index.ts +0 -10
  460. package/src/stores/interaction.ts +0 -32
  461. package/src/stores/mode-live.ts +0 -38
  462. package/src/stores/mode-single.ts +0 -18
  463. package/src/stores/viz-scrollmap.ts +0 -22
  464. package/src/stores/viz.ts +0 -17
  465. package/src/styles/base.css +0 -1
  466. package/src/styles/style.css +0 -137
  467. package/src/types/clarity.ts +0 -45
  468. package/src/types/control.ts +0 -10
  469. package/src/types/elm-callout.ts +0 -9
  470. package/src/types/heatmap-info.ts +0 -11
  471. package/src/types/heatmap.ts +0 -25
  472. package/src/types/iframe-helper.ts +0 -18
  473. package/src/types/index.ts +0 -12
  474. package/src/types/viz-canvas.ts +0 -20
  475. package/src/types/viz-element.ts +0 -34
  476. package/src/types/viz-scrollmap.ts +0 -28
  477. package/src/ui/BoxStack/BoxStack.tsx +0 -136
  478. package/src/ui/BoxStack/index.ts +0 -1
  479. package/src/ui/index.ts +0 -1
  480. package/src/utils/debounce.ts +0 -10
  481. package/src/utils/device.ts +0 -7
  482. package/src/utils/retry.ts +0 -20
  483. package/src/utils/sort.ts +0 -5
  484. /package/dist/esm/hooks/{vix-elements → viz-elements}/index.d.ts +0 -0
  485. /package/dist/esm/hooks/{vix-elements → viz-elements}/useClickedElement.d.ts +0 -0
  486. /package/dist/esm/hooks/{vix-elements → viz-elements}/useElementCalloutVisible.d.ts +0 -0
  487. /package/dist/esm/hooks/{vix-elements → viz-elements}/useHeatmapEffects.d.ts +0 -0
  488. /package/dist/esm/hooks/{vix-elements → viz-elements}/useHeatmapElementPosition.d.ts +0 -0
  489. /package/dist/umd/hooks/{vix-elements → viz-elements}/index.d.ts +0 -0
  490. /package/dist/umd/hooks/{vix-elements → viz-elements}/useClickedElement.d.ts +0 -0
  491. /package/dist/umd/hooks/{vix-elements → viz-elements}/useElementCalloutVisible.d.ts +0 -0
  492. /package/dist/umd/hooks/{vix-elements → viz-elements}/useHeatmapEffects.d.ts +0 -0
  493. /package/dist/umd/hooks/{vix-elements → viz-elements}/useHeatmapElementPosition.d.ts +0 -0
@@ -1,106 +0,0 @@
1
- import { useZonePositions } from '../../hooks';
2
- import { useHeatmapConfigStore, useHeatmapDataStore } from '../../stores';
3
- import { IScrollType } from '../../types';
4
-
5
- interface ScrollmapMarkerProps {
6
- iframeRef: React.RefObject<HTMLIFrameElement>;
7
- wrapperRef: React.RefObject<HTMLElement>;
8
- }
9
-
10
- export const ScrollmapMarker: React.FC<ScrollmapMarkerProps> = ({ iframeRef, wrapperRef }) => {
11
- const scrollmap = useHeatmapDataStore((state) => state.scrollmap);
12
- const scrollType = useHeatmapConfigStore((state) => state.scrollType);
13
-
14
- const { getZonePosition } = useZonePositions({ iframeRef, wrapperRef });
15
-
16
- if (!scrollmap || scrollmap.length === 0) return null;
17
-
18
- const findScrollPositionForUserPercent = (targetPercent: number): number | null => {
19
- for (let i = 0; i < scrollmap.length; i++) {
20
- if (scrollmap[i].percUsers <= targetPercent) {
21
- if (i > 0) {
22
- return scrollmap[i - 1].scrollReachY;
23
- }
24
- return scrollmap[i].scrollReachY;
25
- }
26
- }
27
-
28
- return scrollmap[scrollmap.length - 1]?.scrollReachY || null;
29
- };
30
-
31
- const boundaries = [
32
- { percent: 75, label: '75%', color: '#10B981' },
33
- { percent: 50, label: '50%', color: '#F59E0B' },
34
- { percent: 25, label: '25%', color: '#EF4444' },
35
- { percent: 5, label: '5%', color: '#8B5CF6' },
36
- ];
37
-
38
- const isScrollDepth = scrollType === IScrollType.Depth;
39
- if (!isScrollDepth) return null;
40
-
41
- return (
42
- <>
43
- {boundaries.map((boundary) => {
44
- const scrollY = findScrollPositionForUserPercent(boundary.percent);
45
- if (scrollY === null) return null;
46
-
47
- const position = getZonePosition({
48
- startY: scrollY,
49
- endY: scrollY,
50
- });
51
-
52
- if (!position) return null;
53
-
54
- return (
55
- <div
56
- className={`marker-boundary-line-${boundary.percent}`}
57
- key={boundary.label}
58
- style={{
59
- position: 'absolute',
60
- top: `${position.top}px`,
61
- left: 0,
62
- transformOrigin: 'left center',
63
- width: '100%',
64
- height: '0px',
65
- // borderBottom: `2px dashed #323130`,
66
- borderBottom: `2px solid ${boundary.color}`,
67
- // background: 'repeating-linear-gradient(90deg, #323130, transparent 2px 3px)',
68
- zIndex: 1,
69
- display: 'flex',
70
- alignItems: 'center',
71
- }}
72
- >
73
- <div
74
- style={{
75
- position: 'absolute',
76
- padding: '8px',
77
- backgroundColor: boundary.color,
78
- color: 'white',
79
- fontSize: '16px',
80
- fontWeight: 600,
81
- borderRadius: '4px',
82
- whiteSpace: 'nowrap',
83
- left: '12px',
84
- minWidth: '120px',
85
- textAlign: 'center',
86
-
87
- // textAlign: 'center',
88
- // padding: '8px',
89
- // paddingInline: '8px',
90
- // fontSize: '16px',
91
- // background: '#fff',
92
- // width: 'auto',
93
- // borderRadius: '4px',
94
- // position: 'absolute',
95
- // left: '12px',
96
- // minWidth: '120px',
97
- }}
98
- >
99
- {boundary.label}
100
- </div>
101
- </div>
102
- );
103
- })}
104
- </>
105
- );
106
- };
@@ -1,36 +0,0 @@
1
- import { useHeatmapConfigStore, useHeatmapSingleStore } from '../../stores';
2
- import { IHeatmapType } from '../../types';
3
- import { AverageFoldLine } from './AverageFoldLine';
4
- import { ScrollmapMarker } from './ScrollmapMarker';
5
- import { ScrollMapOverlay } from './ScrollMapOverlay';
6
-
7
- interface VizScrollMapProps {
8
- iframeRef: React.RefObject<HTMLIFrameElement>;
9
- wrapperRef: React.RefObject<HTMLElement>;
10
- }
11
-
12
- const SCROLL_TYPES = [IHeatmapType.Scroll];
13
- export const VizScrollMap: React.FC<VizScrollMapProps> = ({ iframeRef, wrapperRef }) => {
14
- const iframeHeight = useHeatmapSingleStore((state) => state.iframeHeight);
15
- const heatmapType = useHeatmapConfigStore((state) => state.heatmapType);
16
-
17
- const isHeatmapScroll = SCROLL_TYPES.includes(heatmapType);
18
- if (!iframeHeight || !isHeatmapScroll) return null;
19
-
20
- return (
21
- <div
22
- style={{
23
- position: 'absolute',
24
- top: 0,
25
- left: '2px',
26
- width: `calc(100% - 4px)`,
27
- height: '100%',
28
- transform: 'translateZ(0)',
29
- }}
30
- >
31
- <ScrollmapMarker iframeRef={iframeRef} wrapperRef={wrapperRef} />
32
- <AverageFoldLine iframeRef={iframeRef} wrapperRef={wrapperRef} />
33
- <ScrollMapOverlay wrapperRef={wrapperRef} iframeRef={iframeRef} />
34
- </div>
35
- );
36
- };
@@ -1,94 +0,0 @@
1
- /* ScrollmapOverlay.css */
2
-
3
- .scrollmap-overlay {
4
- position: absolute;
5
- top: 0;
6
- left: 0;
7
- width: 100%;
8
- height: 100%;
9
- pointer-events: none;
10
- z-index: 10;
11
- }
12
-
13
- /* Marker wrapper */
14
- .scrollmap-marker-wrapper {
15
- position: absolute;
16
- width: 100%;
17
- display: flex;
18
- align-items: center;
19
- gap: 8px;
20
- pointer-events: none;
21
- }
22
-
23
- /* Marker lines */
24
- .scrollmap-marker-line {
25
- flex: 1;
26
- height: 2px;
27
- background-color: rgba(0, 0, 0, 0.3);
28
- }
29
-
30
- /* Marker label base */
31
- .scrollmap-marker {
32
- padding: 4px 12px;
33
- border-radius: 4px;
34
- font-size: 12px;
35
- font-weight: 600;
36
- white-space: nowrap;
37
- box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
38
- }
39
-
40
- /* Average Fold marker - distinctive color */
41
- .scrollmap-marker--avgfold {
42
- background-color: #ff6b6b;
43
- color: white;
44
- }
45
-
46
- /* Percentage markers - neutral color */
47
- .scrollmap-marker--percentage {
48
- background-color: #4a90e2;
49
- color: white;
50
- }
51
-
52
- /* Hover tooltip */
53
- .scrollmap-hover-tooltip {
54
- position: absolute;
55
- pointer-events: none;
56
- z-index: 100;
57
- }
58
-
59
- .scrollmap-hover-tooltip-content {
60
- display: flex;
61
- flex-direction: column;
62
- align-items: center;
63
- padding: 8px 12px;
64
- background-color: rgba(0, 0, 0, 0.85);
65
- color: white;
66
- border-radius: 6px;
67
- font-size: 12px;
68
- box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3);
69
- max-height: 48px;
70
- }
71
-
72
- .scrollmap-hover-tooltip-percentage {
73
- font-size: 14px;
74
- font-weight: 700;
75
- line-height: 1.2;
76
- }
77
-
78
- .scrollmap-hover-tooltip-label {
79
- font-size: 11px;
80
- opacity: 0.8;
81
- line-height: 1.2;
82
- }
83
-
84
- /* Responsive adjustments */
85
- @media (max-width: 768px) {
86
- .scrollmap-marker {
87
- font-size: 10px;
88
- padding: 3px 8px;
89
- }
90
-
91
- .scrollmap-hover-tooltip-content {
92
- padding: 6px 10px;
93
- }
94
- }
@@ -1,130 +0,0 @@
1
- // ScrollmapOverlay.tsx
2
- import React, { useCallback, useState } from 'react';
3
- import { useHeatmapVizStore } from '../../stores';
4
- import { ScrollMapMarker, ScrollmapOverlayProps } from './scrollmap.types';
5
- import './ScrollmapOverlay.css';
6
- import { useScrollmapOverlayV2 } from './useScrollmapOverlay';
7
-
8
- export const ScrollmapOverlayV2: React.FC<ScrollmapOverlayProps> = ({
9
- iframeRef,
10
- wrapperRef,
11
- enabled = true,
12
- }) => {
13
- const [isHovering, setIsHovering] = useState(false);
14
- const [mouseY, setMouseY] = useState(0);
15
-
16
- const { isReady, markers, hoveredPercentage, setHoveredMouseY } = useScrollmapOverlayV2({
17
- enabled,
18
- iframeRef,
19
- wrapperRef,
20
- });
21
-
22
- /**
23
- * Handle mouse move - track position for hover tooltip
24
- */
25
- const handleMouseMove = useCallback(
26
- (event: React.MouseEvent<HTMLDivElement>) => {
27
- const wrapper = wrapperRef.current;
28
- if (!wrapper) return;
29
-
30
- const rect = wrapper.getBoundingClientRect();
31
- const relativeY = event.clientY - rect.top;
32
-
33
- setIsHovering(true);
34
- setMouseY(relativeY);
35
- setHoveredMouseY(relativeY);
36
- },
37
- [wrapperRef, setHoveredMouseY],
38
- );
39
-
40
- /**
41
- * Handle mouse leave - hide tooltip
42
- */
43
- const handleMouseLeave = useCallback(() => {
44
- setIsHovering(false);
45
- setMouseY(0);
46
- setHoveredMouseY(null);
47
- }, [setHoveredMouseY]);
48
-
49
- if (!enabled || !isReady) {
50
- return null;
51
- }
52
-
53
- return (
54
- <div
55
- className="scrollmap-overlay"
56
- onMouseMove={handleMouseMove}
57
- onMouseLeave={handleMouseLeave}
58
- >
59
- {/* Render markers */}
60
- {markers.map((marker) => (
61
- <ScrollmapMarker key={marker.id} marker={marker} />
62
- ))}
63
-
64
- {/* Hover tooltip */}
65
- {isHovering && hoveredPercentage !== null && (
66
- <ScrollmapHoverTooltip mouseY={mouseY} percentage={hoveredPercentage} />
67
- )}
68
- </div>
69
- );
70
- };
71
-
72
- /**
73
- * Individual marker component
74
- */
75
- interface ScrollmapMarkerProps {
76
- marker: ScrollMapMarker;
77
- }
78
-
79
- const ScrollmapMarker: React.FC<ScrollmapMarkerProps> = ({ marker }) => {
80
- const widthScale = useHeatmapVizStore((state) => state.scale);
81
-
82
- const markerStyle: React.CSSProperties = {
83
- transform: `scale(${1 / widthScale})`,
84
- transformOrigin: 'left',
85
- top: marker.yPosition - 24, // Offset for label height
86
- left: 0,
87
- };
88
-
89
- const markerClassName = `scrollmap-marker ${
90
- marker.type === 'avgFold' ? 'scrollmap-marker--avgfold' : 'scrollmap-marker--percentage'
91
- }`;
92
-
93
- return (
94
- <div className="scrollmap-marker-wrapper" style={markerStyle}>
95
- <div className="scrollmap-marker-line" />
96
- <div className={markerClassName}>
97
- <span className="scrollmap-marker-label">{marker.label}</span>
98
- </div>
99
- <div className="scrollmap-marker-line" />
100
- </div>
101
- );
102
- };
103
-
104
- /**
105
- * Hover tooltip component
106
- */
107
- interface ScrollmapHoverTooltipProps {
108
- mouseY: number;
109
- percentage: number;
110
- }
111
-
112
- const ScrollmapHoverTooltip: React.FC<ScrollmapHoverTooltipProps> = ({ mouseY, percentage }) => {
113
- const widthScale = useHeatmapVizStore((state) => state.scale);
114
-
115
- const tooltipStyle: React.CSSProperties = {
116
- transform: `scale(${1 / widthScale})`,
117
- transformOrigin: 'left',
118
- top: mouseY / widthScale - 24,
119
- left: 0,
120
- };
121
-
122
- return (
123
- <div className="scrollmap-hover-tooltip" style={tooltipStyle}>
124
- <div className="scrollmap-hover-tooltip-content">
125
- <span className="scrollmap-hover-tooltip-percentage">{percentage}%</span>
126
- <span className="scrollmap-hover-tooltip-label">of users</span>
127
- </div>
128
- </div>
129
- );
130
- };
@@ -1,21 +0,0 @@
1
- // scrollmap.types.ts
2
-
3
- export interface ScrollMapDataPoint {
4
- scrollReachY: number; // 0-100 (vị trí % trên trang)
5
- cumulativeSum: number; // Tổng số users đến điểm này
6
- percUsers: number; // % users đạt được (100 -> 0, giảm dần)
7
- }
8
-
9
- export interface ScrollMapMarker {
10
- id: string;
11
- type: 'avgFold' | 'percentage';
12
- yPosition: number; // Vị trí pixel
13
- label: string;
14
- percentage?: number; // Chỉ có với type 'percentage'
15
- }
16
-
17
- export interface ScrollmapOverlayProps {
18
- iframeRef: React.RefObject<HTMLIFrameElement>;
19
- wrapperRef: React.RefObject<HTMLElement>;
20
- enabled?: boolean;
21
- }
@@ -1,187 +0,0 @@
1
- // useScrollmapOverlay.ts
2
- import { useEffect, useMemo, useState } from 'react';
3
- import { useHeatmapDataStore, useHeatmapSingleStore, useHeatmapVizStore } from '../../stores';
4
- import { ScrollMapDataPoint, ScrollMapMarker } from './scrollmap.types';
5
-
6
- interface UseScrollmapOverlayOptions {
7
- enabled?: boolean;
8
- iframeRef: React.RefObject<HTMLIFrameElement>;
9
- wrapperRef: React.RefObject<HTMLElement>;
10
- }
11
-
12
- interface UseScrollmapOverlayReturn {
13
- isReady: boolean;
14
- markers: ScrollMapMarker[];
15
- averageFold: number;
16
- hoveredPercentage: number | null;
17
- setHoveredMouseY: (y: number | null) => void;
18
- }
19
-
20
- export const useScrollmapOverlayV2 = (
21
- options: UseScrollmapOverlayOptions,
22
- ): UseScrollmapOverlayReturn => {
23
- const { enabled = true, iframeRef, wrapperRef } = options;
24
-
25
- const [isReady, setIsReady] = useState(false);
26
- const [hoveredMouseY, setHoveredMouseY] = useState<number | null>(null);
27
-
28
- // Zustand stores
29
- const scrollMapInfo = useHeatmapDataStore((state) => state.scrollmap);
30
- const iframeHeight = useHeatmapSingleStore((state) => state.iframeHeight);
31
- const widthScale = useHeatmapVizStore((state) => state.scale);
32
-
33
- /**
34
- * Tính Average Fold (vị trí mà 50% users scroll đến)
35
- * Returns: pixel position
36
- */
37
- const averageFold = useMemo(() => {
38
- if (!scrollMapInfo || scrollMapInfo.length === 0 || !iframeHeight) {
39
- return 0;
40
- }
41
-
42
- // Total users = điểm đầu tiên (100% users)
43
- const totalUsers = scrollMapInfo[0]?.percUsers || 100;
44
- const halfUsers = totalUsers / 2;
45
-
46
- // Tìm điểm đầu tiên có percUsers <= 50%
47
- for (const point of scrollMapInfo) {
48
- if (point.percUsers <= halfUsers) {
49
- // Convert % sang pixel
50
- return (point.scrollReachY / 100) * iframeHeight;
51
- }
52
- }
53
-
54
- // Fallback: 50% chiều cao
55
- return iframeHeight / 2;
56
- }, [scrollMapInfo, iframeHeight]);
57
-
58
- /**
59
- * Tính Percentage Markers (75%, 50%, 25%)
60
- * Tìm điểm gần nhất với mỗi target, trong khoảng ±5%
61
- */
62
- const percentageMarkers = useMemo(() => {
63
- if (!scrollMapInfo || scrollMapInfo.length === 0 || !iframeHeight) {
64
- return [];
65
- }
66
-
67
- const markers: ScrollMapMarker[] = [];
68
- const targetPercentages = [75, 50, 25];
69
-
70
- for (const targetPerc of targetPercentages) {
71
- // Tìm điểm GẦN NHẤT với target percentage
72
- const closestPoint = scrollMapInfo.reduce<ScrollMapDataPoint | null>((prev, curr) => {
73
- if (prev === null) return curr;
74
-
75
- const prevDiff = Math.abs(prev.percUsers - targetPerc);
76
- const currDiff = Math.abs(curr.percUsers - targetPerc);
77
-
78
- return currDiff < prevDiff ? curr : prev;
79
- }, null);
80
-
81
- // Chỉ thêm marker nếu điểm gần nhất nằm trong khoảng ±5%
82
- if (
83
- closestPoint &&
84
- closestPoint.percUsers >= targetPerc - 5 &&
85
- closestPoint.percUsers <= targetPerc + 5
86
- ) {
87
- const yPosition = (closestPoint.scrollReachY / 100) * iframeHeight;
88
-
89
- markers.push({
90
- id: `percentage_${targetPerc}`,
91
- type: 'percentage',
92
- yPosition,
93
- label: `${targetPerc}%`,
94
- percentage: targetPerc,
95
- });
96
- }
97
- }
98
-
99
- return markers;
100
- }, [scrollMapInfo, iframeHeight]);
101
-
102
- /**
103
- * Combine tất cả markers (Average Fold + Percentage Markers)
104
- */
105
- const markers = useMemo(() => {
106
- const allMarkers: ScrollMapMarker[] = [];
107
-
108
- // Average Fold marker
109
- if (averageFold > 0) {
110
- allMarkers.push({
111
- id: 'avgFold',
112
- type: 'avgFold',
113
- yPosition: averageFold,
114
- label: 'Average Fold',
115
- });
116
- }
117
-
118
- // Percentage markers
119
- allMarkers.push(...percentageMarkers);
120
-
121
- return allMarkers;
122
- }, [averageFold, percentageMarkers]);
123
-
124
- /**
125
- * Tính % users tại vị trí hover
126
- * Input: mouseY (pixel position from wrapper top)
127
- * Output: percentage of users reached this position
128
- */
129
- const hoveredPercentage = useMemo(() => {
130
- if (
131
- hoveredMouseY === null ||
132
- !scrollMapInfo ||
133
- scrollMapInfo.length === 0 ||
134
- !iframeHeight ||
135
- !widthScale
136
- ) {
137
- return null;
138
- }
139
-
140
- // Tính % scroll position từ mouseY
141
- const scrollPercent = (hoveredMouseY / widthScale / iframeHeight) * 100;
142
-
143
- // Tìm điểm đầu tiên có scrollReachY >= scrollPercent
144
- for (const point of scrollMapInfo) {
145
- if (point.scrollReachY >= scrollPercent) {
146
- // Tính % cumulative users
147
- const percentage = (point.cumulativeSum / scrollMapInfo[0].cumulativeSum) * 100;
148
- return Math.round(percentage * 10) / 10; // 1 decimal place
149
- }
150
- }
151
-
152
- // Fallback: lấy điểm cuối cùng
153
- const lastPoint = scrollMapInfo[scrollMapInfo.length - 1];
154
- const percentage = (lastPoint.cumulativeSum / scrollMapInfo[0].cumulativeSum) * 100;
155
- return Math.round(percentage * 10) / 10;
156
- }, [hoveredMouseY, scrollMapInfo, iframeHeight, widthScale]);
157
-
158
- /**
159
- * Check if data is ready
160
- */
161
- useEffect(() => {
162
- if (!enabled) {
163
- setIsReady(false);
164
- return;
165
- }
166
-
167
- if (scrollMapInfo && scrollMapInfo.length > 0 && iframeHeight) {
168
- setIsReady(true);
169
- console.log('[useScrollmapOverlay] Ready:', {
170
- dataPoints: scrollMapInfo.length,
171
- iframeHeight,
172
- averageFold,
173
- markers: markers.length,
174
- });
175
- } else {
176
- setIsReady(false);
177
- }
178
- }, [enabled, scrollMapInfo, iframeHeight, averageFold, markers.length]);
179
-
180
- return {
181
- isReady,
182
- markers,
183
- averageFold,
184
- hoveredPercentage,
185
- setHoveredMouseY,
186
- };
187
- };
@@ -1,2 +0,0 @@
1
- export { GraphView } from './GraphView';
2
- export { HeatmapLayout } from './Layout';
@@ -1,15 +0,0 @@
1
- interface IFrameAttrs {
2
- id: string;
3
- title: string;
4
- sandbox: string;
5
- scrolling: string;
6
- height?: string;
7
- }
8
-
9
- export const HEATMAP_IFRAME: IFrameAttrs = {
10
- id: 'clarity-iframe',
11
- title: 'Clarity Session Replay',
12
- sandbox: 'allow-same-origin allow-scripts',
13
- scrolling: 'no',
14
- height: '100%',
15
- };
@@ -1,2 +0,0 @@
1
- export * from './iframe';
2
- export * from './style';
@@ -1,21 +0,0 @@
1
- export const HEATMAP_CONFIG = {
2
- padding: 8,
3
- borderWidth: 1,
4
- borderWidthIframe: 2,
5
- borderColor: '#E3E3E3',
6
- heightToolbar: 60, // height of the toolbar
7
- };
8
-
9
- export const HEATMAP_STYLE = {
10
- viz: {
11
- background: '#f3f3f3',
12
- paddingBottom: `${HEATMAP_CONFIG.padding}px`,
13
- },
14
- wrapper: {
15
- padding: `${HEATMAP_CONFIG.padding}px 0`,
16
- paddingBlock: `${HEATMAP_CONFIG.padding}px`,
17
- paddingInline: `${HEATMAP_CONFIG.padding}px`,
18
- },
19
- };
20
-
21
- export const DEFAULT_SIDEBAR_WIDTH = 260;
@@ -1,4 +0,0 @@
1
- export const CLICKED_ELEMENT_ID = 'gx-hm-clicked-element';
2
- export const SECONDARY_CLICKED_ELEMENT_ID = 'gx-hm-secondary-clicked-element';
3
- export const HOVERED_ELEMENT_ID = 'gx-hm-hovered-element';
4
- export const SECONDARY_HOVERED_ELEMENT_ID = 'gx-hm-secondary-hovered-element';
package/src/global.d.ts DELETED
@@ -1,5 +0,0 @@
1
- /* eslint-disable @typescript-eslint/consistent-type-definitions */
2
-
3
- declare namespace JSX {
4
- interface IntrinsicElements {}
5
- }