@gemx-dev/heatmap-react 3.5.21 → 3.5.23

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 (223) hide show
  1. package/dist/esm/components/HeatmapLayout/ContentHeader.d.ts +4 -0
  2. package/dist/esm/components/HeatmapLayout/ContentHeader.d.ts.map +1 -0
  3. package/dist/esm/components/HeatmapLayout/HeatmapLayout.d.ts +7 -0
  4. package/dist/esm/components/HeatmapLayout/HeatmapLayout.d.ts.map +1 -0
  5. package/dist/esm/components/HeatmapLayout/LeftSidebar.d.ts +4 -0
  6. package/dist/esm/components/HeatmapLayout/LeftSidebar.d.ts.map +1 -0
  7. package/dist/esm/components/HeatmapLayout/ReplayControls.d.ts +2 -0
  8. package/dist/esm/components/HeatmapLayout/ReplayControls.d.ts.map +1 -0
  9. package/dist/esm/components/HeatmapLayout/VizDomContainer.d.ts +2 -0
  10. package/dist/esm/components/HeatmapLayout/VizDomContainer.d.ts.map +1 -0
  11. package/dist/esm/components/HeatmapLayout/VizDomRenderer.d.ts +6 -0
  12. package/dist/esm/components/HeatmapLayout/VizDomRenderer.d.ts.map +1 -0
  13. package/dist/esm/components/HeatmapLayout/WrapperLayout.d.ts +7 -0
  14. package/dist/esm/components/HeatmapLayout/WrapperLayout.d.ts.map +1 -0
  15. package/dist/esm/components/HeatmapLayout/WrapperPreview.d.ts +4 -0
  16. package/dist/esm/components/HeatmapLayout/WrapperPreview.d.ts.map +1 -0
  17. package/dist/esm/components/HeatmapLayout/index.d.ts +2 -0
  18. package/dist/esm/components/HeatmapLayout/index.d.ts.map +1 -0
  19. package/dist/esm/components/VizElement/ClarityVisualizer.d.ts +150 -0
  20. package/dist/esm/components/VizElement/ClarityVisualizer.d.ts.map +1 -0
  21. package/dist/esm/components/VizElement/HeatmapElementV2.d.ts +45 -0
  22. package/dist/esm/components/VizElement/HeatmapElementV2.d.ts.map +1 -0
  23. package/dist/esm/components/VizElement/PayloadProcessor.d.ts +65 -0
  24. package/dist/esm/components/VizElement/PayloadProcessor.d.ts.map +1 -0
  25. package/dist/esm/components/VizElement/VizElementRank.d.ts +74 -0
  26. package/dist/esm/components/VizElement/VizElementRank.d.ts.map +1 -0
  27. package/dist/esm/components/VizElement/constants.d.ts +5 -0
  28. package/dist/esm/components/VizElement/constants.d.ts.map +1 -0
  29. package/dist/esm/components/VizElement/helpers.d.ts +20 -0
  30. package/dist/esm/components/VizElement/helpers.d.ts.map +1 -0
  31. package/dist/esm/components/VizElement/types.d.ts +13 -0
  32. package/dist/esm/components/VizElement/types.d.ts.map +1 -0
  33. package/dist/esm/hooks/useHeatmapByMode.d.ts +6 -0
  34. package/dist/esm/hooks/useHeatmapByMode.d.ts.map +1 -0
  35. package/dist/esm/hooks/useHeatmapRender.d.ts +6 -0
  36. package/dist/esm/hooks/useHeatmapRender.d.ts.map +1 -0
  37. package/dist/esm/hooks/useHeatmapScale.d.ts +28 -0
  38. package/dist/esm/hooks/useHeatmapScale.d.ts.map +1 -0
  39. package/dist/esm/hooks/useReplayRender.d.ts +9 -0
  40. package/dist/esm/hooks/useReplayRender.d.ts.map +1 -0
  41. package/dist/esm/types/index.d.ts +3 -0
  42. package/dist/esm/types/index.d.ts.map +1 -0
  43. package/dist/umd/components/VizElement/VizElementRank.d.ts +75 -0
  44. package/dist/umd/components/VizElement/VizElementRank.d.ts.map +1 -0
  45. package/package.json +11 -14
  46. package/src/components/GraphView.tsx +58 -0
  47. package/src/components/Layout/ContentHeader.tsx +15 -0
  48. package/src/components/Layout/HeatmapLayout.tsx +63 -0
  49. package/src/components/Layout/LeftSidebar.tsx +32 -0
  50. package/src/components/Layout/WrapperLayout.tsx +18 -0
  51. package/src/components/Layout/WrapperPreview.tsx +14 -0
  52. package/src/components/Layout/index.ts +1 -0
  53. package/src/components/Test.tsx +1106 -0
  54. package/src/components/VizDom/ReplayControls.tsx +48 -0
  55. package/src/components/VizDom/VizDomContainer.tsx +25 -0
  56. package/src/components/VizDom/VizDomRenderer.tsx +87 -0
  57. package/src/components/VizDom/index.ts +1 -0
  58. package/src/components/VizElement/ClickedElementOverlay.tsx +65 -0
  59. package/src/components/VizElement/DefaultRankBadges.tsx +33 -0
  60. package/src/components/VizElement/ElementCallout.tsx +337 -0
  61. package/src/components/VizElement/HeatmapElements.tsx +147 -0
  62. package/src/components/VizElement/HoveredElementOverlay.tsx +46 -0
  63. package/src/components/VizElement/MissingElementMessage.tsx +32 -0
  64. package/src/components/VizElement/RankBadge.tsx +25 -0
  65. package/src/components/VizElement/VizElements.tsx +80 -0
  66. package/src/components/VizElement/index.ts +1 -0
  67. package/src/components/VizElement/temp/ClarityVisualizer.ts +764 -0
  68. package/src/components/VizElement/temp/VizElementRank.tsx +579 -0
  69. package/src/components/index.tsx +4 -0
  70. package/src/configs/iframe.ts +15 -0
  71. package/src/configs/index.ts +2 -0
  72. package/src/configs/style.ts +9 -0
  73. package/src/constants/index.ts +4 -0
  74. package/src/dist/components/GraphView.d.ts +9 -0
  75. package/src/dist/components/GraphView.d.ts.map +1 -0
  76. package/src/dist/components/Layout/ContentHeader.d.ts +4 -0
  77. package/src/dist/components/Layout/ContentHeader.d.ts.map +1 -0
  78. package/src/dist/components/Layout/HeatmapLayout.d.ts +11 -0
  79. package/src/dist/components/Layout/HeatmapLayout.d.ts.map +1 -0
  80. package/src/dist/components/Layout/LeftSidebar.d.ts +4 -0
  81. package/src/dist/components/Layout/LeftSidebar.d.ts.map +1 -0
  82. package/src/dist/components/Layout/WrapperLayout.d.ts +8 -0
  83. package/src/dist/components/Layout/WrapperLayout.d.ts.map +1 -0
  84. package/src/dist/components/Layout/WrapperPreview.d.ts +4 -0
  85. package/src/dist/components/Layout/WrapperPreview.d.ts.map +1 -0
  86. package/src/dist/components/Layout/index.d.ts +2 -0
  87. package/src/dist/components/Layout/index.d.ts.map +1 -0
  88. package/src/dist/components/Test.d.ts +121 -0
  89. package/src/dist/components/Test.d.ts.map +1 -0
  90. package/src/dist/components/VizDom/ReplayControls.d.ts +2 -0
  91. package/src/dist/components/VizDom/ReplayControls.d.ts.map +1 -0
  92. package/src/dist/components/VizDom/VizDomContainer.d.ts +2 -0
  93. package/src/dist/components/VizDom/VizDomContainer.d.ts.map +1 -0
  94. package/src/dist/components/VizDom/VizDomRenderer.d.ts +6 -0
  95. package/src/dist/components/VizDom/VizDomRenderer.d.ts.map +1 -0
  96. package/src/dist/components/VizDom/index.d.ts +2 -0
  97. package/src/dist/components/VizDom/index.d.ts.map +1 -0
  98. package/src/dist/components/VizElement/ClickedElementOverlay.d.ts +17 -0
  99. package/src/dist/components/VizElement/ClickedElementOverlay.d.ts.map +1 -0
  100. package/src/dist/components/VizElement/DefaultRankBadges.d.ts +11 -0
  101. package/src/dist/components/VizElement/DefaultRankBadges.d.ts.map +1 -0
  102. package/src/dist/components/VizElement/ElementCallout.d.ts +17 -0
  103. package/src/dist/components/VizElement/ElementCallout.d.ts.map +1 -0
  104. package/src/dist/components/VizElement/HeatmapElements.d.ts +23 -0
  105. package/src/dist/components/VizElement/HeatmapElements.d.ts.map +1 -0
  106. package/src/dist/components/VizElement/HoveredElementOverlay.d.ts +12 -0
  107. package/src/dist/components/VizElement/HoveredElementOverlay.d.ts.map +1 -0
  108. package/src/dist/components/VizElement/MissingElementMessage.d.ts +7 -0
  109. package/src/dist/components/VizElement/MissingElementMessage.d.ts.map +1 -0
  110. package/src/dist/components/VizElement/RankBadge.d.ts +10 -0
  111. package/src/dist/components/VizElement/RankBadge.d.ts.map +1 -0
  112. package/src/dist/components/VizElement/VizElements.d.ts +10 -0
  113. package/src/dist/components/VizElement/VizElements.d.ts.map +1 -0
  114. package/src/dist/components/VizElement/index.d.ts +2 -0
  115. package/src/dist/components/VizElement/index.d.ts.map +1 -0
  116. package/src/dist/components/VizElement/temp/ClarityVisualizer.d.ts +150 -0
  117. package/src/dist/components/VizElement/temp/ClarityVisualizer.d.ts.map +1 -0
  118. package/src/dist/components/VizElement/temp/VizElementRank.d.ts +74 -0
  119. package/src/dist/components/VizElement/temp/VizElementRank.d.ts.map +1 -0
  120. package/src/dist/components/index.d.ts +4 -0
  121. package/src/dist/components/index.d.ts.map +1 -0
  122. package/src/dist/configs/iframe.d.ts +10 -0
  123. package/src/dist/configs/iframe.d.ts.map +1 -0
  124. package/src/dist/configs/index.d.ts +3 -0
  125. package/src/dist/configs/index.d.ts.map +1 -0
  126. package/src/dist/configs/style.d.ts +9 -0
  127. package/src/dist/configs/style.d.ts.map +1 -0
  128. package/src/dist/constants/index.d.ts +5 -0
  129. package/src/dist/constants/index.d.ts.map +1 -0
  130. package/src/dist/helpers/iframe.d.ts +3 -0
  131. package/src/dist/helpers/iframe.d.ts.map +1 -0
  132. package/src/dist/helpers/index.d.ts +2 -0
  133. package/src/dist/helpers/index.d.ts.map +1 -0
  134. package/src/dist/helpers/viz-elements.d.ts +10 -0
  135. package/src/dist/helpers/viz-elements.d.ts.map +1 -0
  136. package/src/dist/hooks/index.d.ts +4 -0
  137. package/src/dist/hooks/index.d.ts.map +1 -0
  138. package/src/dist/hooks/vix-elements/index.d.ts +5 -0
  139. package/src/dist/hooks/vix-elements/index.d.ts.map +1 -0
  140. package/src/dist/hooks/vix-elements/useClickedElement.d.ts +14 -0
  141. package/src/dist/hooks/vix-elements/useClickedElement.d.ts.map +1 -0
  142. package/src/dist/hooks/vix-elements/useHeatmapEffects.d.ts +8 -0
  143. package/src/dist/hooks/vix-elements/useHeatmapEffects.d.ts.map +1 -0
  144. package/src/dist/hooks/vix-elements/useHeatmapElementPosition.d.ts +13 -0
  145. package/src/dist/hooks/vix-elements/useHeatmapElementPosition.d.ts.map +1 -0
  146. package/src/dist/hooks/vix-elements/useHoveredElement.d.ts +17 -0
  147. package/src/dist/hooks/vix-elements/useHoveredElement.d.ts.map +1 -0
  148. package/src/dist/hooks/viz-render/index.d.ts +2 -0
  149. package/src/dist/hooks/viz-render/index.d.ts.map +1 -0
  150. package/src/dist/hooks/viz-render/useHeatmapRender.d.ts +8 -0
  151. package/src/dist/hooks/viz-render/useHeatmapRender.d.ts.map +1 -0
  152. package/src/dist/hooks/viz-render/useHeatmapVizRender.d.ts +8 -0
  153. package/src/dist/hooks/viz-render/useHeatmapVizRender.d.ts.map +1 -0
  154. package/src/dist/hooks/viz-render/useReplayRender.d.ts +11 -0
  155. package/src/dist/hooks/viz-render/useReplayRender.d.ts.map +1 -0
  156. package/src/dist/hooks/viz-scale/index.d.ts +2 -0
  157. package/src/dist/hooks/viz-scale/index.d.ts.map +1 -0
  158. package/src/dist/hooks/viz-scale/useContainerDimensions.d.ts +10 -0
  159. package/src/dist/hooks/viz-scale/useContainerDimensions.d.ts.map +1 -0
  160. package/src/dist/hooks/viz-scale/useContentDimensions.d.ts +11 -0
  161. package/src/dist/hooks/viz-scale/useContentDimensions.d.ts.map +1 -0
  162. package/src/dist/hooks/viz-scale/useHeatmapScale.d.ts +19 -0
  163. package/src/dist/hooks/viz-scale/useHeatmapScale.d.ts.map +1 -0
  164. package/src/dist/hooks/viz-scale/useIframeHeight.d.ts +10 -0
  165. package/src/dist/hooks/viz-scale/useIframeHeight.d.ts.map +1 -0
  166. package/src/dist/hooks/viz-scale/useScaleCalculation.d.ts +10 -0
  167. package/src/dist/hooks/viz-scale/useScaleCalculation.d.ts.map +1 -0
  168. package/src/dist/hooks/viz-scale/useScrollSync.d.ts +10 -0
  169. package/src/dist/hooks/viz-scale/useScrollSync.d.ts.map +1 -0
  170. package/src/dist/index.d.ts +4 -0
  171. package/src/dist/index.d.ts.map +1 -0
  172. package/src/dist/stores/data.d.ts +18 -0
  173. package/src/dist/stores/data.d.ts.map +1 -0
  174. package/src/dist/stores/index.d.ts +2 -0
  175. package/src/dist/stores/index.d.ts.map +1 -0
  176. package/src/dist/ui/BoxStack/BoxStack.d.ts +56 -0
  177. package/src/dist/ui/BoxStack/BoxStack.d.ts.map +1 -0
  178. package/src/dist/ui/BoxStack/index.d.ts +2 -0
  179. package/src/dist/ui/BoxStack/index.d.ts.map +1 -0
  180. package/src/dist/ui/index.d.ts +2 -0
  181. package/src/dist/ui/index.d.ts.map +1 -0
  182. package/src/dist/utils/device.d.ts +2 -0
  183. package/src/dist/utils/device.d.ts.map +1 -0
  184. package/src/dist/utils/retry.d.ts +2 -0
  185. package/src/dist/utils/retry.d.ts.map +1 -0
  186. package/src/dist/utils/sort.d.ts +3 -0
  187. package/src/dist/utils/sort.d.ts.map +1 -0
  188. package/src/global.d.ts +5 -0
  189. package/src/helpers/iframe.ts +33 -0
  190. package/src/helpers/index.ts +1 -0
  191. package/src/helpers/viz-elements.ts +34 -0
  192. package/src/hooks/index.ts +3 -0
  193. package/src/hooks/vix-elements/index.ts +4 -0
  194. package/src/hooks/vix-elements/useClickedElement.ts +62 -0
  195. package/src/hooks/vix-elements/useHeatmapEffects.ts +29 -0
  196. package/src/hooks/vix-elements/useHeatmapElementPosition.ts +66 -0
  197. package/src/hooks/vix-elements/useHoveredElement.ts +135 -0
  198. package/src/hooks/viz-render/index.ts +1 -0
  199. package/src/hooks/viz-render/useHeatmapRender.ts +98 -0
  200. package/src/hooks/viz-render/useHeatmapVizRender.ts +22 -0
  201. package/src/hooks/viz-render/useReplayRender.ts +162 -0
  202. package/src/hooks/viz-scale/index.ts +1 -0
  203. package/src/hooks/viz-scale/useContainerDimensions.ts +46 -0
  204. package/src/hooks/viz-scale/useContentDimensions.ts +29 -0
  205. package/src/hooks/viz-scale/useHeatmapScale.ts +53 -0
  206. package/src/hooks/viz-scale/useIframeHeight.ts +119 -0
  207. package/src/hooks/viz-scale/useScaleCalculation.ts +28 -0
  208. package/src/hooks/viz-scale/useScrollSync.ts +36 -0
  209. package/src/index.ts +5 -0
  210. package/src/stores/data.ts +34 -0
  211. package/src/stores/index.ts +1 -0
  212. package/src/styles/base.css +1 -0
  213. package/src/styles/style.css +30 -0
  214. package/src/types/clarity.d.ts +38 -0
  215. package/src/types/heatmap.d.ts +3 -0
  216. package/src/types/index.d.ts +3 -0
  217. package/src/types/viz-element.d.ts +39 -0
  218. package/src/ui/BoxStack/BoxStack.tsx +120 -0
  219. package/src/ui/BoxStack/index.ts +1 -0
  220. package/src/ui/index.ts +1 -0
  221. package/src/utils/device.ts +7 -0
  222. package/src/utils/retry.ts +20 -0
  223. package/src/utils/sort.ts +5 -0
@@ -0,0 +1,75 @@
1
+ import React from 'react';
2
+ import './HeatmapElements.css';
3
+ export declare enum HeatmapType {
4
+ Sessions = 0,
5
+ Timeline = 1,
6
+ Click = 2,
7
+ Scroll = 3,
8
+ Area = 4,
9
+ Attention = 5
10
+ }
11
+ export declare enum DeviceType {
12
+ Desktop = "desktop",
13
+ Mobile = "mobile",
14
+ Tablet = "tablet"
15
+ }
16
+ interface ElementRect {
17
+ hash: string;
18
+ top: number;
19
+ left: number;
20
+ width: number;
21
+ height: number;
22
+ }
23
+ interface AndroidNode extends ElementRect {
24
+ x: number;
25
+ y: number;
26
+ }
27
+ interface ElementMapInfo {
28
+ totalclicks: number;
29
+ selector?: string;
30
+ hash: string;
31
+ }
32
+ interface SortedElement {
33
+ hash?: string;
34
+ selector?: string;
35
+ }
36
+ interface HeatmapInfo {
37
+ sortedElements?: SortedElement[];
38
+ elementMapInfo?: Record<string, ElementMapInfo>;
39
+ totalClicks?: number;
40
+ }
41
+ interface ClarityVisualizer {
42
+ getAndroidNode: (hash: string, flag1: boolean, flag2: boolean) => AndroidNode | null;
43
+ getAndroidElements: (x: number, y: number, flag: boolean) => AndroidNode[];
44
+ setAndroidClickmapScrolledCallback: (callback: () => void) => void;
45
+ }
46
+ interface DivDimensions {
47
+ width?: number;
48
+ height?: number;
49
+ }
50
+ export interface HeatmapElementsProps {
51
+ widthScale: number;
52
+ divDimensions: DivDimensions;
53
+ transform: string;
54
+ heatmapInfo?: HeatmapInfo;
55
+ selectedElement?: string;
56
+ selectedFrameElements?: SortedElement[];
57
+ clarityVisualizer: ClarityVisualizer;
58
+ heatmapWrapperRef: React.RefObject<HTMLDivElement>;
59
+ parentRef: React.RefObject<HTMLElement>;
60
+ isVisible: boolean;
61
+ isElementSidebarOpen: boolean;
62
+ showScreenElementsOnly: boolean;
63
+ areDefaultRanksHidden: boolean;
64
+ showMissingElementMessage: boolean;
65
+ isRecordingView: boolean;
66
+ isCompareMode: boolean;
67
+ isSecondary?: boolean;
68
+ selectElement: (hash: string) => void;
69
+ deviceType: DeviceType;
70
+ enableAdvancedSelection?: boolean;
71
+ enableMobileOptimization?: boolean;
72
+ }
73
+ export declare const HeatmapElements: React.FC<HeatmapElementsProps>;
74
+ export {};
75
+ //# sourceMappingURL=VizElementRank.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"VizElementRank.d.ts","sourceRoot":"","sources":["../../../src/components/VizElement/VizElementRank.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAmD,MAAM,OAAO,CAAC;AACxE,OAAO,uBAAuB,CAAC;AAM/B,oBAAY,WAAW;IACrB,QAAQ,IAAI;IACZ,QAAQ,IAAI;IACZ,KAAK,IAAI;IACT,MAAM,IAAI;IACV,IAAI,IAAI;IACR,SAAS,IAAI;CACd;AAED,oBAAY,UAAU;IACpB,OAAO,YAAY;IACnB,MAAM,WAAW;IACjB,MAAM,WAAW;CAClB;AAED,UAAU,WAAW;IACnB,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;CAChB;AASD,UAAU,WAAY,SAAQ,WAAW;IACvC,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;CACX;AAED,UAAU,cAAc;IACtB,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,MAAM,CAAC;CACd;AAED,UAAU,aAAa;IACrB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,UAAU,WAAW;IACnB,cAAc,CAAC,EAAE,aAAa,EAAE,CAAC;IACjC,cAAc,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;IAChD,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,UAAU,iBAAiB;IACzB,cAAc,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,KAAK,WAAW,GAAG,IAAI,CAAC;IACrF,kBAAkB,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,KAAK,WAAW,EAAE,CAAC;IAC3E,kCAAkC,EAAE,CAAC,QAAQ,EAAE,MAAM,IAAI,KAAK,IAAI,CAAC;CACpE;AAED,UAAU,aAAa;IACrB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAMD,MAAM,WAAW,oBAAoB;IAEnC,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,EAAE,aAAa,CAAC;IAC7B,SAAS,EAAE,MAAM,CAAC;IAGlB,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,qBAAqB,CAAC,EAAE,aAAa,EAAE,CAAC;IACxC,iBAAiB,EAAE,iBAAiB,CAAC;IAGrC,iBAAiB,EAAE,KAAK,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC;IACnD,SAAS,EAAE,KAAK,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;IAGxC,SAAS,EAAE,OAAO,CAAC;IACnB,oBAAoB,EAAE,OAAO,CAAC;IAC9B,sBAAsB,EAAE,OAAO,CAAC;IAChC,qBAAqB,EAAE,OAAO,CAAC;IAC/B,yBAAyB,EAAE,OAAO,CAAC;IACnC,eAAe,EAAE,OAAO,CAAC;IACzB,aAAa,EAAE,OAAO,CAAC;IACvB,WAAW,CAAC,EAAE,OAAO,CAAC;IAGtB,aAAa,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IAGtC,UAAU,EAAE,UAAU,CAAC;IAGvB,uBAAuB,CAAC,EAAE,OAAO,CAAC;IAClC,wBAAwB,CAAC,EAAE,OAAO,CAAC;CACpC;AAMD,eAAO,MAAM,eAAe,EAAE,KAAK,CAAC,EAAE,CAAC,oBAAoB,CA+c1D,CAAC"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@gemx-dev/heatmap-react",
3
3
  "author": "gemx-dev",
4
- "version": "3.5.21",
4
+ "version": "3.5.23",
5
5
  "license": "MIT",
6
6
  "sideEffects": [
7
7
  "*.css"
@@ -67,22 +67,19 @@
67
67
  "./package.json": "./package.json",
68
68
  ".": {
69
69
  "node": {
70
- "types": "./dist/esm/index.d.ts",
71
- "module": "./dist/esm/index.js",
72
- "require": "./dist/umd/index.js",
73
- "import": "./dist/esm/index.mjs"
70
+ "types": "./src/global.d.ts",
71
+ "module": "./src/index.ts",
72
+ "require": "./src/index.ts",
73
+ "import": "./src/index.ts"
74
74
  },
75
- "browser": {
76
- "import": "./dist/esm/index.js",
77
- "require": "./dist/umd/index.js"
78
- },
79
- "default": "./dist/esm/index.js"
75
+ "default": "./src/index.ts"
80
76
  },
81
- "./dist/base.css": "./dist/base.css",
82
- "./dist/style.css": "./dist/style.css"
77
+ "./dist/base.css": "./src/styles/base.css",
78
+ "./dist/style.css": "./src/styles/style.css"
83
79
  },
84
80
  "files": [
85
- "dist"
81
+ "dist",
82
+ "src"
86
83
  ],
87
84
  "module": "dist/esm/index.js"
88
- }
85
+ }
@@ -0,0 +1,58 @@
1
+ import type { Node } from '@xyflow/react';
2
+
3
+ import { Background, Controls, ReactFlow, useNodesState } from '@xyflow/react';
4
+ import React, { useEffect } from 'react';
5
+
6
+ const initialNodes: Node = { id: '1', position: { x: 0, y: 0 }, data: { label: '1' } };
7
+
8
+ interface GraphViewProps {
9
+ children: React.ReactNode;
10
+ width: number;
11
+ height: number;
12
+ }
13
+
14
+ export const GraphView: React.FC<GraphViewProps> = ({ children, width, height }) => {
15
+ const [nodes, setNodes, onNodesChange] = useNodesState<Node>([
16
+ {
17
+ ...initialNodes,
18
+ width: width,
19
+ height: height,
20
+ },
21
+ ]);
22
+
23
+ const CustomNode = () => {
24
+ return <>{children}</>;
25
+ };
26
+ const nodeTypes = {
27
+ default: CustomNode,
28
+ };
29
+
30
+ useEffect(() => {
31
+ if (!width) return;
32
+
33
+ setNodes((prev) => {
34
+ const node = prev.find((node) => node.id === '1') as Node;
35
+ const newNode: Node = {
36
+ ...node,
37
+ measured: { height: height, width: width },
38
+ height: height,
39
+ width: width,
40
+ };
41
+ return [newNode];
42
+ });
43
+ }, [width, height, setNodes]);
44
+ return (
45
+ <ReactFlow
46
+ nodes={nodes}
47
+ nodeTypes={nodeTypes}
48
+ onNodesChange={onNodesChange}
49
+ debug={true}
50
+ minZoom={0.5}
51
+ maxZoom={2}
52
+ fitView
53
+ >
54
+ <Controls />
55
+ <Background />
56
+ </ReactFlow>
57
+ );
58
+ };
@@ -0,0 +1,15 @@
1
+ import { BoxStack } from '../../ui';
2
+
3
+ export const ContentHeader: React.FC<{ children: React.ReactNode }> = ({ children }) => {
4
+ return (
5
+ <BoxStack
6
+ id="gx-hm-content-header"
7
+ flexDirection="row"
8
+ alignItems="center"
9
+ overflow="auto"
10
+ // style={{ borderBottom: '1px solid #ddd' }}
11
+ >
12
+ {children}
13
+ </BoxStack>
14
+ );
15
+ };
@@ -0,0 +1,63 @@
1
+ import { useCallback, useEffect } from 'react';
2
+ import { useHeatmapDataStore } from '../../stores';
3
+ import { ClickMapPoint, DecodedPayload } from '../../types';
4
+ import { BoxStack } from '../../ui';
5
+ import { WrapperLayout } from './WrapperLayout';
6
+
7
+ interface HeatmapLayoutProps {
8
+ data?: DecodedPayload[];
9
+ clickmap?: ClickMapPoint[];
10
+ header: React.ReactNode;
11
+ sidebar: React.ReactNode;
12
+ toolbar: React.ReactNode;
13
+ }
14
+ export const HeatmapLayout: React.FC<HeatmapLayoutProps> = ({
15
+ data,
16
+ clickmap,
17
+ header,
18
+ toolbar,
19
+ sidebar,
20
+ }) => {
21
+ const setData = useHeatmapDataStore((state) => state.setData);
22
+ const setClickmap = useHeatmapDataStore((state) => state.setClickmap);
23
+
24
+ const handleSetClickmap = useCallback(
25
+ (clickmap?: ClickMapPoint[]) => {
26
+ if (!clickmap) return;
27
+
28
+ setClickmap(clickmap);
29
+ },
30
+ [clickmap],
31
+ );
32
+ const handleSetData = useCallback(
33
+ (data?: DecodedPayload[]) => {
34
+ if (!data) return;
35
+
36
+ setData(data);
37
+ },
38
+ [data],
39
+ );
40
+
41
+ useEffect(() => {
42
+ handleSetData(data);
43
+ }, [data]);
44
+
45
+ useEffect(() => {
46
+ handleSetClickmap(clickmap);
47
+ }, [clickmap]);
48
+
49
+ return (
50
+ <BoxStack id="gx-hm-project" flexDirection="column" flex="1" height="100%">
51
+ <BoxStack id="gx-hm-project-content" flexDirection="column" flex="1">
52
+ <div
53
+ style={{
54
+ minHeight: '100%',
55
+ display: 'flex',
56
+ }}
57
+ >
58
+ <WrapperLayout header={header} toolbar={toolbar} sidebar={sidebar} />
59
+ </div>
60
+ </BoxStack>
61
+ </BoxStack>
62
+ );
63
+ };
@@ -0,0 +1,32 @@
1
+ import { useHeatmapDataStore } from '../../stores';
2
+
3
+ const SIDEBAR_WIDTH = 280;
4
+ export const LeftSidebar: React.FC<{ children: React.ReactNode }> = ({ children }) => {
5
+ const isHideSidebar = useHeatmapDataStore((state) => state.state.hideSidebar);
6
+ if (isHideSidebar) {
7
+ return null;
8
+ }
9
+ return (
10
+ <div
11
+ className="gx-hm-sidebar"
12
+ style={{
13
+ height: '100%',
14
+ display: 'flex',
15
+ ...(isHideSidebar
16
+ ? {
17
+ width: '0',
18
+ transform: 'translateX(-100%)',
19
+ visibility: 'hidden',
20
+ }
21
+ : { width: `${SIDEBAR_WIDTH}px` }),
22
+ }}
23
+ >
24
+ <div
25
+ className="gx-hm-sidebar-wrapper"
26
+ style={{ height: '100%', width: `${SIDEBAR_WIDTH}px` }}
27
+ >
28
+ {children}
29
+ </div>
30
+ </div>
31
+ );
32
+ };
@@ -0,0 +1,18 @@
1
+ import { BoxStack } from '../../ui';
2
+ import { ContentHeader } from './ContentHeader';
3
+ import { WrapperPreview } from './WrapperPreview';
4
+
5
+ interface WrapperLayoutProps {
6
+ header: React.ReactNode;
7
+ toolbar: React.ReactNode;
8
+ sidebar: React.ReactNode;
9
+ }
10
+ export const WrapperLayout: React.FC<WrapperLayoutProps> = ({ header, toolbar, sidebar }) => {
11
+ return (
12
+ <BoxStack id="gx-hm-layout" flexDirection="column" flex="1">
13
+ <ContentHeader>{header}</ContentHeader>
14
+ <ContentHeader>{toolbar}</ContentHeader>
15
+ <WrapperPreview>{sidebar}</WrapperPreview>
16
+ </BoxStack>
17
+ );
18
+ };
@@ -0,0 +1,14 @@
1
+ import { VizDomContainer } from '../VizDom';
2
+ import { LeftSidebar } from './LeftSidebar';
3
+
4
+ export const WrapperPreview: React.FC<{ children: React.ReactNode }> = ({ children }) => {
5
+ return (
6
+ <div
7
+ className="gx-hm-container"
8
+ style={{ display: 'flex', overflowY: 'hidden', flex: '1', position: 'relative' }}
9
+ >
10
+ <LeftSidebar>{children}</LeftSidebar>
11
+ <VizDomContainer />
12
+ </div>
13
+ );
14
+ };
@@ -0,0 +1 @@
1
+ export * from './HeatmapLayout';