@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.
- package/dist/esm/components/Layout/HeatmapLayout.d.ts +3 -2
- package/dist/esm/components/Layout/HeatmapLayout.d.ts.map +1 -1
- package/dist/esm/components/VizDom/VizDomRenderer.d.ts.map +1 -1
- package/dist/esm/components/VizElement/HeatmapElements.d.ts +2 -2
- package/dist/esm/components/VizElement/HeatmapElements.d.ts.map +1 -1
- package/dist/esm/components/VizElement/HeatmapExample.d.ts +2 -0
- package/dist/esm/components/VizElement/HeatmapExample.d.ts.map +1 -0
- package/dist/esm/components/VizElement/VizElements.d.ts.map +1 -1
- package/dist/esm/components/VizLive/VizLiveHeatmap.d.ts.map +1 -1
- package/dist/esm/components/VizLive/VizLiveRenderer.d.ts.map +1 -1
- package/dist/esm/components/VizScrollmap/AverageFoldLine.d.ts +8 -0
- package/dist/esm/components/VizScrollmap/AverageFoldLine.d.ts.map +1 -0
- package/dist/esm/components/VizScrollmap/HoverZones.d.ts +10 -0
- package/dist/esm/components/VizScrollmap/HoverZones.d.ts.map +1 -0
- package/dist/esm/components/VizScrollmap/MetricRow.d.ts +1 -0
- package/dist/esm/components/VizScrollmap/MetricRow.d.ts.map +1 -0
- package/dist/esm/components/VizScrollmap/ScrollMapMinimap.d.ts +8 -0
- package/dist/esm/components/VizScrollmap/ScrollMapMinimap.d.ts.map +1 -0
- package/dist/esm/components/VizScrollmap/ScrollMapOverlay.d.ts +7 -0
- package/dist/esm/components/VizScrollmap/ScrollMapOverlay.d.ts.map +1 -0
- package/dist/esm/components/VizScrollmap/ScrollZoneHoverArea.d.ts +14 -0
- package/dist/esm/components/VizScrollmap/ScrollZoneHoverArea.d.ts.map +1 -0
- package/dist/esm/components/VizScrollmap/ScrollZoneTooltip.d.ts +10 -0
- package/dist/esm/components/VizScrollmap/ScrollZoneTooltip.d.ts.map +1 -0
- package/dist/esm/components/VizScrollmap/ScrollmapMarker.d.ts +7 -0
- package/dist/esm/components/VizScrollmap/ScrollmapMarker.d.ts.map +1 -0
- package/dist/esm/components/VizScrollmap/VizScrollMap.d.ts +7 -0
- package/dist/esm/components/VizScrollmap/VizScrollMap.d.ts.map +1 -0
- package/{src/components/VizScrollmap/index.ts → dist/esm/components/VizScrollmap/index.d.ts} +1 -0
- package/dist/esm/components/VizScrollmap/index.d.ts.map +1 -0
- package/dist/esm/components/VizScrollmapV2/ScrollmapOverlayV2.d.ts +5 -0
- package/dist/esm/components/VizScrollmapV2/ScrollmapOverlayV2.d.ts.map +1 -0
- package/{src/components/VizScrollmapV2/index.ts → dist/esm/components/VizScrollmapV2/index.d.ts} +1 -0
- package/dist/esm/components/VizScrollmapV2/index.d.ts.map +1 -0
- package/dist/esm/components/VizScrollmapV2/scrollmap.types.d.ts +18 -0
- package/dist/esm/components/VizScrollmapV2/scrollmap.types.d.ts.map +1 -0
- package/dist/esm/components/VizScrollmapV2/useScrollmapOverlay.d.ts +16 -0
- package/dist/esm/components/VizScrollmapV2/useScrollmapOverlay.d.ts.map +1 -0
- package/dist/esm/configs/style.d.ts +2 -0
- package/dist/esm/configs/style.d.ts.map +1 -1
- package/dist/esm/helpers/elm-getter.d.ts +2 -2
- package/dist/esm/helpers/elm-getter.d.ts.map +1 -1
- package/dist/esm/helpers/iframe-helper/fixer.d.ts +18 -0
- package/dist/esm/helpers/iframe-helper/fixer.d.ts.map +1 -0
- package/dist/esm/helpers/iframe-helper/index.d.ts +2 -0
- package/dist/esm/helpers/iframe-helper/index.d.ts.map +1 -0
- package/dist/esm/helpers/iframe-helper/init.d.ts +5 -0
- package/dist/esm/helpers/iframe-helper/init.d.ts.map +1 -0
- package/dist/esm/helpers/iframe-helper/navigation-blocker-v2.d.ts +28 -0
- package/dist/esm/helpers/iframe-helper/navigation-blocker-v2.d.ts.map +1 -0
- package/dist/esm/helpers/iframe-helper/navigation-blocker.d.ts +20 -0
- package/dist/esm/helpers/iframe-helper/navigation-blocker.d.ts.map +1 -0
- package/dist/esm/helpers/iframe-helper/style-replacer.d.ts +25 -0
- package/dist/esm/helpers/iframe-helper/style-replacer.d.ts.map +1 -0
- package/dist/esm/helpers/index.d.ts +2 -2
- package/dist/esm/helpers/index.d.ts.map +1 -1
- package/dist/esm/helpers/viz-canvas/area-clustering.d.ts +44 -0
- package/dist/esm/helpers/viz-canvas/area-clustering.d.ts.map +1 -0
- package/dist/esm/helpers/viz-canvas/area-overlay-manager-v2.d.ts +17 -0
- package/dist/esm/helpers/viz-canvas/area-overlay-manager-v2.d.ts.map +1 -0
- package/dist/esm/helpers/viz-canvas/area-overlay-manager.d.ts +51 -0
- package/dist/esm/helpers/viz-canvas/area-overlay-manager.d.ts.map +1 -0
- package/dist/esm/helpers/viz-canvas/hierarchical-area-clustering.d.ts +73 -0
- package/dist/esm/helpers/viz-canvas/hierarchical-area-clustering.d.ts.map +1 -0
- package/{src/helpers/viz-canvas/index.ts → dist/esm/helpers/viz-canvas/index.d.ts} +1 -0
- package/dist/esm/helpers/viz-canvas/index.d.ts.map +1 -0
- package/dist/esm/hooks/index.d.ts +2 -1
- package/dist/esm/hooks/index.d.ts.map +1 -1
- package/dist/esm/hooks/register/useRegisterData.d.ts +2 -2
- package/dist/esm/hooks/register/useRegisterData.d.ts.map +1 -1
- package/dist/esm/hooks/register/useRegisterHeatmap.d.ts +7 -2
- package/dist/esm/hooks/register/useRegisterHeatmap.d.ts.map +1 -1
- package/dist/esm/hooks/viz-area/useAreaHeatmap.d.ts +59 -0
- package/dist/esm/hooks/viz-area/useAreaHeatmap.d.ts.map +1 -0
- package/dist/esm/hooks/viz-area/useAreaHeatmapManager.d.ts +77 -0
- package/dist/esm/hooks/viz-area/useAreaHeatmapManager.d.ts.map +1 -0
- package/dist/esm/hooks/viz-canvas/index.d.ts +1 -1
- package/dist/esm/hooks/viz-canvas/index.d.ts.map +1 -1
- package/dist/esm/hooks/viz-canvas/useAreamap.d.ts +14 -0
- package/dist/esm/hooks/viz-canvas/useAreamap.d.ts.map +1 -0
- package/dist/esm/hooks/viz-canvas/useClickmap.d.ts +3 -1
- package/dist/esm/hooks/viz-canvas/useClickmap.d.ts.map +1 -1
- package/dist/esm/hooks/viz-canvas/useHeatmapCanvas.d.ts +4 -0
- package/dist/esm/hooks/viz-canvas/useHeatmapCanvas.d.ts.map +1 -0
- package/dist/esm/hooks/viz-canvas/useScrollmap.d.ts +3 -1
- package/dist/esm/hooks/viz-canvas/useScrollmap.d.ts.map +1 -1
- package/dist/esm/hooks/{vix-elements → viz-elements}/index.d.ts.map +1 -1
- package/dist/esm/hooks/{vix-elements → viz-elements}/useClickedElement.d.ts.map +1 -1
- package/dist/esm/hooks/{vix-elements → viz-elements}/useElementCalloutVisible.d.ts.map +1 -1
- package/dist/esm/hooks/{vix-elements → viz-elements}/useHeatmapEffects.d.ts.map +1 -1
- package/dist/esm/hooks/{vix-elements → viz-elements}/useHeatmapElementPosition.d.ts.map +1 -1
- package/dist/esm/hooks/viz-elements/useHeatmapMouseHandler.d.ts +34 -0
- package/dist/esm/hooks/viz-elements/useHeatmapMouseHandler.d.ts.map +1 -0
- package/dist/esm/hooks/{vix-elements → viz-elements}/useHoveredElement.d.ts +4 -0
- package/dist/esm/hooks/viz-elements/useHoveredElement.d.ts.map +1 -0
- package/dist/esm/hooks/viz-live/index.d.ts +1 -1
- package/dist/{umd/hooks/viz-live/useIframeMessage.d.ts → esm/hooks/viz-live/useVizLiveIframeMsg.d.ts} +2 -10
- package/dist/esm/hooks/viz-live/useVizLiveIframeMsg.d.ts.map +1 -0
- package/dist/esm/hooks/viz-live/useVizLiveRender.d.ts +4 -0
- package/dist/esm/hooks/viz-live/useVizLiveRender.d.ts.map +1 -0
- package/dist/esm/hooks/viz-render/useHeatmapRender.d.ts.map +1 -1
- package/dist/esm/hooks/viz-scale/useContainerDimensions.d.ts.map +1 -1
- package/dist/esm/hooks/viz-scale/useHeatmapScale.d.ts +1 -1
- package/dist/esm/hooks/viz-scale/useHeatmapScale.d.ts.map +1 -1
- package/dist/esm/hooks/viz-scale/useObserveIframeHeight.d.ts +10 -0
- package/dist/esm/hooks/viz-scale/useObserveIframeHeight.d.ts.map +1 -0
- package/{src/hooks/viz-scrollmap/index.ts → dist/esm/hooks/viz-scrollmap/index.d.ts} +1 -0
- package/dist/esm/hooks/viz-scrollmap/index.d.ts.map +1 -0
- package/dist/esm/hooks/viz-scrollmap/useScrollmapZones.d.ts +29 -0
- package/dist/esm/hooks/viz-scrollmap/useScrollmapZones.d.ts.map +1 -0
- package/dist/esm/hooks/viz-scrollmap/useZonePositions.d.ts +12 -0
- package/dist/esm/hooks/viz-scrollmap/useZonePositions.d.ts.map +1 -0
- package/dist/esm/index.d.ts +1 -1
- package/dist/esm/index.d.ts.map +1 -1
- package/dist/esm/index.js +1181 -210
- package/dist/esm/index.mjs +1181 -210
- package/dist/esm/stores/config.d.ts +5 -1
- package/dist/esm/stores/config.d.ts.map +1 -1
- package/dist/esm/stores/data.d.ts +5 -3
- package/dist/esm/stores/data.d.ts.map +1 -1
- package/dist/esm/stores/index.d.ts +2 -0
- package/dist/esm/stores/index.d.ts.map +1 -1
- package/dist/esm/stores/interaction.d.ts.map +1 -1
- package/dist/esm/stores/mode-live.d.ts +4 -0
- package/dist/esm/stores/mode-live.d.ts.map +1 -1
- package/dist/esm/stores/mode-single.d.ts +9 -0
- package/dist/esm/stores/mode-single.d.ts.map +1 -0
- package/dist/esm/stores/viz-scrollmap.d.ts +11 -0
- package/dist/esm/stores/viz-scrollmap.d.ts.map +1 -0
- package/dist/esm/stores/viz.d.ts +0 -4
- package/dist/esm/stores/viz.d.ts.map +1 -1
- package/dist/esm/types/clarity.d.ts +5 -0
- package/dist/esm/types/clarity.d.ts.map +1 -1
- package/dist/esm/types/heatmap-info.d.ts +11 -0
- package/dist/esm/types/heatmap-info.d.ts.map +1 -0
- package/dist/esm/types/heatmap.d.ts +13 -0
- package/dist/esm/types/heatmap.d.ts.map +1 -1
- package/dist/esm/types/iframe-helper.d.ts +20 -0
- package/dist/esm/types/iframe-helper.d.ts.map +1 -0
- package/dist/esm/types/index.d.ts +4 -1
- package/dist/esm/types/index.d.ts.map +1 -1
- package/dist/esm/types/viz-canvas.d.ts +23 -0
- package/dist/esm/types/viz-canvas.d.ts.map +1 -0
- package/dist/esm/types/viz-element.d.ts +0 -6
- package/dist/esm/types/viz-element.d.ts.map +1 -1
- package/dist/esm/types/viz-scrollmap.d.ts +27 -0
- package/dist/esm/types/viz-scrollmap.d.ts.map +1 -0
- package/dist/umd/components/Layout/HeatmapLayout.d.ts +3 -2
- package/dist/umd/components/Layout/HeatmapLayout.d.ts.map +1 -1
- package/dist/umd/components/VizDom/VizDomRenderer.d.ts.map +1 -1
- package/dist/umd/components/VizElement/HeatmapElements.d.ts +2 -2
- package/dist/umd/components/VizElement/HeatmapElements.d.ts.map +1 -1
- package/dist/umd/components/VizElement/HeatmapExample.d.ts +2 -0
- package/dist/umd/components/VizElement/HeatmapExample.d.ts.map +1 -0
- package/dist/umd/components/VizElement/VizElements.d.ts.map +1 -1
- package/dist/umd/components/VizLive/VizLiveHeatmap.d.ts.map +1 -1
- package/dist/umd/components/VizLive/VizLiveRenderer.d.ts.map +1 -1
- package/dist/umd/components/VizScrollmap/AverageFoldLine.d.ts +8 -0
- package/dist/umd/components/VizScrollmap/AverageFoldLine.d.ts.map +1 -0
- package/dist/umd/components/VizScrollmap/HoverZones.d.ts +10 -0
- package/dist/umd/components/VizScrollmap/HoverZones.d.ts.map +1 -0
- package/dist/umd/components/VizScrollmap/MetricRow.d.ts +1 -0
- package/dist/umd/components/VizScrollmap/MetricRow.d.ts.map +1 -0
- package/dist/umd/components/VizScrollmap/ScrollMapMinimap.d.ts +8 -0
- package/dist/umd/components/VizScrollmap/ScrollMapMinimap.d.ts.map +1 -0
- package/dist/umd/components/VizScrollmap/ScrollMapOverlay.d.ts +7 -0
- package/dist/umd/components/VizScrollmap/ScrollMapOverlay.d.ts.map +1 -0
- package/dist/umd/components/VizScrollmap/ScrollZoneHoverArea.d.ts +14 -0
- package/dist/umd/components/VizScrollmap/ScrollZoneHoverArea.d.ts.map +1 -0
- package/dist/umd/components/VizScrollmap/ScrollZoneTooltip.d.ts +10 -0
- package/dist/umd/components/VizScrollmap/ScrollZoneTooltip.d.ts.map +1 -0
- package/dist/umd/components/VizScrollmap/ScrollmapMarker.d.ts +7 -0
- package/dist/umd/components/VizScrollmap/ScrollmapMarker.d.ts.map +1 -0
- package/dist/umd/components/VizScrollmap/VizScrollMap.d.ts +7 -0
- package/dist/umd/components/VizScrollmap/VizScrollMap.d.ts.map +1 -0
- package/dist/umd/components/VizScrollmap/index.d.ts +2 -0
- package/dist/umd/components/VizScrollmap/index.d.ts.map +1 -0
- package/dist/umd/components/VizScrollmapV2/ScrollmapOverlayV2.d.ts +5 -0
- package/dist/umd/components/VizScrollmapV2/ScrollmapOverlayV2.d.ts.map +1 -0
- package/dist/umd/components/VizScrollmapV2/index.d.ts +2 -0
- package/dist/umd/components/VizScrollmapV2/index.d.ts.map +1 -0
- package/dist/umd/components/VizScrollmapV2/scrollmap.types.d.ts +18 -0
- package/dist/umd/components/VizScrollmapV2/scrollmap.types.d.ts.map +1 -0
- package/dist/umd/components/VizScrollmapV2/useScrollmapOverlay.d.ts +16 -0
- package/dist/umd/components/VizScrollmapV2/useScrollmapOverlay.d.ts.map +1 -0
- package/dist/umd/configs/style.d.ts +2 -0
- package/dist/umd/configs/style.d.ts.map +1 -1
- package/dist/umd/helpers/elm-getter.d.ts +2 -2
- package/dist/umd/helpers/elm-getter.d.ts.map +1 -1
- package/dist/umd/helpers/iframe-helper/fixer.d.ts +18 -0
- package/dist/umd/helpers/iframe-helper/fixer.d.ts.map +1 -0
- package/dist/umd/helpers/iframe-helper/index.d.ts +2 -0
- package/dist/umd/helpers/iframe-helper/index.d.ts.map +1 -0
- package/dist/umd/helpers/iframe-helper/init.d.ts +5 -0
- package/dist/umd/helpers/iframe-helper/init.d.ts.map +1 -0
- package/dist/umd/helpers/iframe-helper/navigation-blocker-v2.d.ts +28 -0
- package/dist/umd/helpers/iframe-helper/navigation-blocker-v2.d.ts.map +1 -0
- package/dist/umd/helpers/iframe-helper/navigation-blocker.d.ts +20 -0
- package/dist/umd/helpers/iframe-helper/navigation-blocker.d.ts.map +1 -0
- package/dist/umd/helpers/iframe-helper/style-replacer.d.ts +25 -0
- package/dist/umd/helpers/iframe-helper/style-replacer.d.ts.map +1 -0
- package/dist/umd/helpers/index.d.ts +2 -2
- package/dist/umd/helpers/index.d.ts.map +1 -1
- package/dist/umd/helpers/viz-canvas/area-clustering.d.ts +44 -0
- package/dist/umd/helpers/viz-canvas/area-clustering.d.ts.map +1 -0
- package/dist/umd/helpers/viz-canvas/area-overlay-manager-v2.d.ts +17 -0
- package/dist/umd/helpers/viz-canvas/area-overlay-manager-v2.d.ts.map +1 -0
- package/dist/umd/helpers/viz-canvas/area-overlay-manager.d.ts +51 -0
- package/dist/umd/helpers/viz-canvas/area-overlay-manager.d.ts.map +1 -0
- package/dist/umd/helpers/viz-canvas/hierarchical-area-clustering.d.ts +73 -0
- package/dist/umd/helpers/viz-canvas/hierarchical-area-clustering.d.ts.map +1 -0
- package/dist/umd/helpers/viz-canvas/index.d.ts +3 -0
- package/dist/umd/helpers/viz-canvas/index.d.ts.map +1 -0
- package/dist/umd/hooks/index.d.ts +2 -1
- package/dist/umd/hooks/index.d.ts.map +1 -1
- package/dist/umd/hooks/register/useRegisterData.d.ts +2 -2
- package/dist/umd/hooks/register/useRegisterData.d.ts.map +1 -1
- package/dist/umd/hooks/register/useRegisterHeatmap.d.ts +7 -2
- package/dist/umd/hooks/register/useRegisterHeatmap.d.ts.map +1 -1
- package/dist/umd/hooks/viz-area/useAreaHeatmap.d.ts +59 -0
- package/dist/umd/hooks/viz-area/useAreaHeatmap.d.ts.map +1 -0
- package/dist/umd/hooks/viz-area/useAreaHeatmapManager.d.ts +77 -0
- package/dist/umd/hooks/viz-area/useAreaHeatmapManager.d.ts.map +1 -0
- package/dist/umd/hooks/viz-canvas/index.d.ts +1 -1
- package/dist/umd/hooks/viz-canvas/index.d.ts.map +1 -1
- package/dist/umd/hooks/viz-canvas/useAreamap.d.ts +14 -0
- package/dist/umd/hooks/viz-canvas/useAreamap.d.ts.map +1 -0
- package/dist/umd/hooks/viz-canvas/useClickmap.d.ts +3 -1
- package/dist/umd/hooks/viz-canvas/useClickmap.d.ts.map +1 -1
- package/dist/umd/hooks/viz-canvas/useHeatmapCanvas.d.ts +4 -0
- package/dist/umd/hooks/viz-canvas/useHeatmapCanvas.d.ts.map +1 -0
- package/dist/umd/hooks/viz-canvas/useScrollmap.d.ts +3 -1
- package/dist/umd/hooks/viz-canvas/useScrollmap.d.ts.map +1 -1
- package/dist/umd/hooks/{vix-elements → viz-elements}/index.d.ts.map +1 -1
- package/dist/umd/hooks/{vix-elements → viz-elements}/useClickedElement.d.ts.map +1 -1
- package/dist/umd/hooks/{vix-elements → viz-elements}/useElementCalloutVisible.d.ts.map +1 -1
- package/dist/umd/hooks/{vix-elements → viz-elements}/useHeatmapEffects.d.ts.map +1 -1
- package/dist/umd/hooks/{vix-elements → viz-elements}/useHeatmapElementPosition.d.ts.map +1 -1
- package/dist/umd/hooks/viz-elements/useHeatmapMouseHandler.d.ts +34 -0
- package/dist/umd/hooks/viz-elements/useHeatmapMouseHandler.d.ts.map +1 -0
- package/dist/umd/hooks/{vix-elements → viz-elements}/useHoveredElement.d.ts +4 -0
- package/dist/umd/hooks/viz-elements/useHoveredElement.d.ts.map +1 -0
- package/dist/umd/hooks/viz-live/index.d.ts +1 -1
- package/dist/{esm/hooks/viz-live/useIframeMessage.d.ts → umd/hooks/viz-live/useVizLiveIframeMsg.d.ts} +2 -10
- package/dist/umd/hooks/viz-live/useVizLiveIframeMsg.d.ts.map +1 -0
- package/dist/umd/hooks/viz-live/useVizLiveRender.d.ts +4 -0
- package/dist/umd/hooks/viz-live/useVizLiveRender.d.ts.map +1 -0
- package/dist/umd/hooks/viz-render/useHeatmapRender.d.ts.map +1 -1
- package/dist/umd/hooks/viz-scale/useContainerDimensions.d.ts.map +1 -1
- package/dist/umd/hooks/viz-scale/useHeatmapScale.d.ts +1 -1
- package/dist/umd/hooks/viz-scale/useHeatmapScale.d.ts.map +1 -1
- package/dist/umd/hooks/viz-scale/useObserveIframeHeight.d.ts +10 -0
- package/dist/umd/hooks/viz-scale/useObserveIframeHeight.d.ts.map +1 -0
- package/dist/umd/hooks/viz-scrollmap/index.d.ts +3 -0
- package/dist/umd/hooks/viz-scrollmap/index.d.ts.map +1 -0
- package/dist/umd/hooks/viz-scrollmap/useScrollmapZones.d.ts +29 -0
- package/dist/umd/hooks/viz-scrollmap/useScrollmapZones.d.ts.map +1 -0
- package/dist/umd/hooks/viz-scrollmap/useZonePositions.d.ts +12 -0
- package/dist/umd/hooks/viz-scrollmap/useZonePositions.d.ts.map +1 -0
- package/dist/umd/index.d.ts +1 -1
- package/dist/umd/index.d.ts.map +1 -1
- package/dist/umd/index.js +2 -2
- package/dist/umd/stores/config.d.ts +5 -1
- package/dist/umd/stores/config.d.ts.map +1 -1
- package/dist/umd/stores/data.d.ts +5 -3
- package/dist/umd/stores/data.d.ts.map +1 -1
- package/dist/umd/stores/index.d.ts +2 -0
- package/dist/umd/stores/index.d.ts.map +1 -1
- package/dist/umd/stores/interaction.d.ts.map +1 -1
- package/dist/umd/stores/mode-live.d.ts +4 -0
- package/dist/umd/stores/mode-live.d.ts.map +1 -1
- package/dist/umd/stores/mode-single.d.ts +9 -0
- package/dist/umd/stores/mode-single.d.ts.map +1 -0
- package/dist/umd/stores/viz-scrollmap.d.ts +11 -0
- package/dist/umd/stores/viz-scrollmap.d.ts.map +1 -0
- package/dist/umd/stores/viz.d.ts +0 -4
- package/dist/umd/stores/viz.d.ts.map +1 -1
- package/dist/umd/types/clarity.d.ts +5 -0
- package/dist/umd/types/clarity.d.ts.map +1 -1
- package/dist/umd/types/heatmap-info.d.ts +11 -0
- package/dist/umd/types/heatmap-info.d.ts.map +1 -0
- package/dist/umd/types/heatmap.d.ts +13 -0
- package/dist/umd/types/heatmap.d.ts.map +1 -1
- package/dist/umd/types/iframe-helper.d.ts +20 -0
- package/dist/umd/types/iframe-helper.d.ts.map +1 -0
- package/dist/umd/types/index.d.ts +4 -1
- package/dist/umd/types/index.d.ts.map +1 -1
- package/dist/umd/types/viz-canvas.d.ts +23 -0
- package/dist/umd/types/viz-canvas.d.ts.map +1 -0
- package/dist/umd/types/viz-element.d.ts +0 -6
- package/dist/umd/types/viz-element.d.ts.map +1 -1
- package/dist/umd/types/viz-scrollmap.d.ts +27 -0
- package/dist/umd/types/viz-scrollmap.d.ts.map +1 -0
- package/package.json +14 -11
- package/dist/esm/components/Layout/ContentHeader.d.ts +0 -4
- package/dist/esm/components/Layout/ContentHeader.d.ts.map +0 -1
- package/dist/esm/components/Layout/VizMode.d.ts +0 -2
- package/dist/esm/components/Layout/VizMode.d.ts.map +0 -1
- package/dist/esm/components/Test.d.ts +0 -121
- package/dist/esm/components/Test.d.ts.map +0 -1
- package/dist/esm/components/VizDom/VizDomContainer.d.ts +0 -6
- package/dist/esm/components/VizDom/VizDomContainer.d.ts.map +0 -1
- package/dist/esm/components/VizElement/ClickedElementOverlay.d.ts +0 -17
- package/dist/esm/components/VizElement/ClickedElementOverlay.d.ts.map +0 -1
- package/dist/esm/components/VizElement/HoveredElementOverlay.d.ts +0 -12
- package/dist/esm/components/VizElement/HoveredElementOverlay.d.ts.map +0 -1
- package/dist/esm/components/VizElement/MissingElementMessage.d.ts +0 -7
- package/dist/esm/components/VizElement/MissingElementMessage.d.ts.map +0 -1
- package/dist/esm/components/VizElement/temp/ClarityVisualizer.d.ts +0 -150
- package/dist/esm/components/VizElement/temp/ClarityVisualizer.d.ts.map +0 -1
- package/dist/esm/components/VizElement/temp/VizElementRank.d.ts +0 -74
- package/dist/esm/components/VizElement/temp/VizElementRank.d.ts.map +0 -1
- package/dist/esm/components/VizLive/VizLive.d.ts +0 -2
- package/dist/esm/components/VizLive/VizLive.d.ts.map +0 -1
- package/dist/esm/helpers/viewport-fixer.d.ts +0 -13
- package/dist/esm/helpers/viewport-fixer.d.ts.map +0 -1
- package/dist/esm/helpers/viewport-replacer.d.ts +0 -26
- package/dist/esm/helpers/viewport-replacer.d.ts.map +0 -1
- package/dist/esm/hooks/vix-elements/useHoveredElement.d.ts.map +0 -1
- package/dist/esm/hooks/viz-canvas/useHeatmapVizCanvas.d.ts +0 -2
- package/dist/esm/hooks/viz-canvas/useHeatmapVizCanvas.d.ts.map +0 -1
- package/dist/esm/hooks/viz-live/useIframeMessage.d.ts.map +0 -1
- package/dist/esm/hooks/viz-scale/useIframeHeight.d.ts +0 -10
- package/dist/esm/hooks/viz-scale/useIframeHeight.d.ts.map +0 -1
- package/dist/esm/types/viewport-fixer.d.ts +0 -31
- package/dist/esm/types/viewport-fixer.d.ts.map +0 -1
- package/dist/umd/components/Layout/ContentHeader.d.ts +0 -4
- package/dist/umd/components/Layout/ContentHeader.d.ts.map +0 -1
- package/dist/umd/components/Test.d.ts +0 -121
- package/dist/umd/components/Test.d.ts.map +0 -1
- package/dist/umd/components/VizDom/VizDomContainer.d.ts +0 -2
- package/dist/umd/components/VizDom/VizDomContainer.d.ts.map +0 -1
- package/dist/umd/components/VizElement/ClickedElementOverlay.d.ts +0 -17
- package/dist/umd/components/VizElement/ClickedElementOverlay.d.ts.map +0 -1
- package/dist/umd/components/VizElement/HoveredElementOverlay.d.ts +0 -12
- package/dist/umd/components/VizElement/HoveredElementOverlay.d.ts.map +0 -1
- package/dist/umd/components/VizElement/MissingElementMessage.d.ts +0 -7
- package/dist/umd/components/VizElement/MissingElementMessage.d.ts.map +0 -1
- package/dist/umd/components/VizElement/temp/ClarityVisualizer.d.ts +0 -150
- package/dist/umd/components/VizElement/temp/ClarityVisualizer.d.ts.map +0 -1
- package/dist/umd/components/VizElement/temp/VizElementRank.d.ts +0 -74
- package/dist/umd/components/VizElement/temp/VizElementRank.d.ts.map +0 -1
- package/dist/umd/helpers/viewport-fixer.d.ts +0 -13
- package/dist/umd/helpers/viewport-fixer.d.ts.map +0 -1
- package/dist/umd/helpers/viewport-replacer.d.ts +0 -26
- package/dist/umd/helpers/viewport-replacer.d.ts.map +0 -1
- package/dist/umd/hooks/vix-elements/useHoveredElement.d.ts.map +0 -1
- package/dist/umd/hooks/viz-canvas/useHeatmapVizCanvas.d.ts +0 -2
- package/dist/umd/hooks/viz-canvas/useHeatmapVizCanvas.d.ts.map +0 -1
- package/dist/umd/hooks/viz-live/useIframeMessage.d.ts.map +0 -1
- package/dist/umd/hooks/viz-scale/useIframeHeight.d.ts +0 -10
- package/dist/umd/hooks/viz-scale/useIframeHeight.d.ts.map +0 -1
- package/dist/umd/types/viewport-fixer.d.ts +0 -31
- package/dist/umd/types/viewport-fixer.d.ts.map +0 -1
- package/src/components/GraphView.tsx +0 -58
- package/src/components/Layout/ContentMetricBar.tsx +0 -23
- package/src/components/Layout/ContentToolbar.tsx +0 -22
- package/src/components/Layout/ContentTopBar.tsx +0 -24
- package/src/components/Layout/ContentVizByMode.tsx +0 -14
- package/src/components/Layout/HeatmapLayout.tsx +0 -60
- package/src/components/Layout/LeftSidebar.tsx +0 -44
- package/src/components/Layout/WrapperLayout.tsx +0 -12
- package/src/components/Layout/WrapperPreview.tsx +0 -24
- package/src/components/Layout/index.ts +0 -1
- package/src/components/VizDom/ReplayControls.tsx +0 -48
- package/src/components/VizDom/VizContainer.tsx +0 -40
- package/src/components/VizDom/VizDomHeatmap.tsx +0 -28
- package/src/components/VizDom/VizDomRenderer.tsx +0 -82
- package/src/components/VizDom/VizLoading.tsx +0 -8
- package/src/components/VizDom/WrapperVisual.tsx +0 -73
- package/src/components/VizDom/index.ts +0 -5
- package/src/components/VizElement/DefaultRankBadges.tsx +0 -36
- package/src/components/VizElement/ElementCallout.tsx +0 -82
- package/src/components/VizElement/ElementMissing.tsx +0 -35
- package/src/components/VizElement/ElementOverlay.tsx +0 -66
- package/src/components/VizElement/HeatmapElements.tsx +0 -127
- package/src/components/VizElement/HeatmapExample.tsx +0 -70
- package/src/components/VizElement/RankBadge.tsx +0 -25
- package/src/components/VizElement/VizElements.tsx +0 -57
- package/src/components/VizElement/index.ts +0 -1
- package/src/components/VizLive/VizLiveHeatmap.tsx +0 -27
- package/src/components/VizLive/VizLiveRenderer.tsx +0 -47
- package/src/components/VizLive/index.ts +0 -1
- package/src/components/VizScrollmap/AverageFoldLine.tsx +0 -57
- package/src/components/VizScrollmap/HoverZones.tsx +0 -58
- package/src/components/VizScrollmap/MetricRow.tsx +0 -0
- package/src/components/VizScrollmap/ScrollMapMinimap.tsx +0 -64
- package/src/components/VizScrollmap/ScrollMapOverlay.tsx +0 -79
- package/src/components/VizScrollmap/ScrollZoneHoverArea.tsx +0 -35
- package/src/components/VizScrollmap/ScrollZoneTooltip.tsx +0 -146
- package/src/components/VizScrollmap/ScrollmapMarker.tsx +0 -106
- package/src/components/VizScrollmap/VizScrollMap.tsx +0 -36
- package/src/components/VizScrollmapV2/ScrollmapOverlay.css +0 -94
- package/src/components/VizScrollmapV2/ScrollmapOverlayV2.tsx +0 -130
- package/src/components/VizScrollmapV2/scrollmap.types.ts +0 -21
- package/src/components/VizScrollmapV2/useScrollmapOverlay.ts +0 -187
- package/src/components/index.tsx +0 -2
- package/src/configs/iframe.ts +0 -15
- package/src/configs/index.ts +0 -2
- package/src/configs/style.ts +0 -21
- package/src/constants/index.ts +0 -4
- package/src/global.d.ts +0 -5
- package/src/helpers/elm-callout.ts +0 -347
- package/src/helpers/elm-getter.ts +0 -70
- package/src/helpers/iframe-helper/fixer.ts +0 -100
- package/src/helpers/iframe-helper/index.ts +0 -1
- package/src/helpers/iframe-helper/init.ts +0 -56
- package/src/helpers/iframe-helper/navigation-blocker-v2.ts +0 -371
- package/src/helpers/iframe-helper/navigation-blocker.ts +0 -367
- package/src/helpers/iframe-helper/style-replacer.ts +0 -231
- package/src/helpers/iframe.ts +0 -42
- package/src/helpers/index.ts +0 -8
- package/src/helpers/viz-canvas/area-clustering.ts +0 -234
- package/src/helpers/viz-canvas/area-overlay-manager-v2.ts +0 -176
- package/src/helpers/viz-canvas/area-overlay-manager.ts +0 -273
- package/src/helpers/viz-canvas/hierarchical-area-clustering.ts +0 -420
- package/src/helpers/viz-elements.ts +0 -43
- package/src/hooks/index.ts +0 -8
- package/src/hooks/register/index.ts +0 -4
- package/src/hooks/register/useRegisterConfig.ts +0 -17
- package/src/hooks/register/useRegisterControl.ts +0 -13
- package/src/hooks/register/useRegisterData.ts +0 -36
- package/src/hooks/register/useRegisterHeatmap.ts +0 -38
- package/src/hooks/viz-area/useAreaHeatmap.ts +0 -336
- package/src/hooks/viz-area/useAreaHeatmapManager.ts +0 -692
- package/src/hooks/viz-canvas/index.ts +0 -1
- package/src/hooks/viz-canvas/useAreamap.ts +0 -162
- package/src/hooks/viz-canvas/useClickmap.ts +0 -24
- package/src/hooks/viz-canvas/useHeatmapCanvas.ts +0 -27
- package/src/hooks/viz-canvas/useScrollmap.ts +0 -22
- package/src/hooks/viz-elements/index.ts +0 -5
- package/src/hooks/viz-elements/useClickedElement.ts +0 -86
- package/src/hooks/viz-elements/useElementCalloutVisible.ts +0 -45
- package/src/hooks/viz-elements/useHeatmapEffects.ts +0 -30
- package/src/hooks/viz-elements/useHeatmapElementPosition.ts +0 -60
- package/src/hooks/viz-elements/useHeatmapMouseHandler.ts +0 -255
- package/src/hooks/viz-elements/useHoveredElement.ts +0 -170
- package/src/hooks/viz-live/index.ts +0 -1
- package/src/hooks/viz-live/useVizLiveIframeMsg.ts +0 -88
- package/src/hooks/viz-live/useVizLiveRender.ts +0 -67
- package/src/hooks/viz-render/index.ts +0 -1
- package/src/hooks/viz-render/useHeatmapRender.ts +0 -71
- package/src/hooks/viz-render/useHeatmapVizRender.ts +0 -20
- package/src/hooks/viz-render/useReplayRender.ts +0 -160
- package/src/hooks/viz-scale/index.ts +0 -2
- package/src/hooks/viz-scale/useContainerDimensions.ts +0 -48
- package/src/hooks/viz-scale/useContentDimensions.ts +0 -25
- package/src/hooks/viz-scale/useHeatmapScale.ts +0 -52
- package/src/hooks/viz-scale/useObserveIframeHeight.ts +0 -162
- package/src/hooks/viz-scale/useScaleCalculation.ts +0 -31
- package/src/hooks/viz-scale/useScrollSync.ts +0 -36
- package/src/hooks/viz-scale/useWrapperRefHeight.ts +0 -91
- package/src/hooks/viz-scrollmap/useScrollmapZones.ts +0 -165
- package/src/hooks/viz-scrollmap/useZonePositions.ts +0 -38
- package/src/index.ts +0 -10
- package/src/stores/comp.ts +0 -31
- package/src/stores/config.ts +0 -37
- package/src/stores/data.ts +0 -30
- package/src/stores/index.ts +0 -10
- package/src/stores/interaction.ts +0 -32
- package/src/stores/mode-live.ts +0 -38
- package/src/stores/mode-single.ts +0 -18
- package/src/stores/viz-scrollmap.ts +0 -22
- package/src/stores/viz.ts +0 -17
- package/src/styles/base.css +0 -1
- package/src/styles/style.css +0 -137
- package/src/types/clarity.ts +0 -45
- package/src/types/control.ts +0 -10
- package/src/types/elm-callout.ts +0 -9
- package/src/types/heatmap-info.ts +0 -11
- package/src/types/heatmap.ts +0 -25
- package/src/types/iframe-helper.ts +0 -18
- package/src/types/index.ts +0 -12
- package/src/types/viz-canvas.ts +0 -20
- package/src/types/viz-element.ts +0 -34
- package/src/types/viz-scrollmap.ts +0 -28
- package/src/ui/BoxStack/BoxStack.tsx +0 -136
- package/src/ui/BoxStack/index.ts +0 -1
- package/src/ui/index.ts +0 -1
- package/src/utils/debounce.ts +0 -10
- package/src/utils/device.ts +0 -7
- package/src/utils/retry.ts +0 -20
- package/src/utils/sort.ts +0 -5
- /package/dist/esm/hooks/{vix-elements → viz-elements}/index.d.ts +0 -0
- /package/dist/esm/hooks/{vix-elements → viz-elements}/useClickedElement.d.ts +0 -0
- /package/dist/esm/hooks/{vix-elements → viz-elements}/useElementCalloutVisible.d.ts +0 -0
- /package/dist/esm/hooks/{vix-elements → viz-elements}/useHeatmapEffects.d.ts +0 -0
- /package/dist/esm/hooks/{vix-elements → viz-elements}/useHeatmapElementPosition.d.ts +0 -0
- /package/dist/umd/hooks/{vix-elements → viz-elements}/index.d.ts +0 -0
- /package/dist/umd/hooks/{vix-elements → viz-elements}/useClickedElement.d.ts +0 -0
- /package/dist/umd/hooks/{vix-elements → viz-elements}/useElementCalloutVisible.d.ts +0 -0
- /package/dist/umd/hooks/{vix-elements → viz-elements}/useHeatmapEffects.d.ts +0 -0
- /package/dist/umd/hooks/{vix-elements → viz-elements}/useHeatmapElementPosition.d.ts +0 -0
|
@@ -1,347 +0,0 @@
|
|
|
1
|
-
import { ICalloutPlacement, ICalloutPosition, IHorizontalAlignment } from '../types/elm-callout';
|
|
2
|
-
|
|
3
|
-
const PADDING = 0;
|
|
4
|
-
const ARROW_SIZE = 8;
|
|
5
|
-
const HORIZONTAL_OFFSET = 0;
|
|
6
|
-
|
|
7
|
-
interface PositionCandidate {
|
|
8
|
-
placement: ICalloutPlacement;
|
|
9
|
-
top: number;
|
|
10
|
-
left: number;
|
|
11
|
-
horizontalAlign: IHorizontalAlignment;
|
|
12
|
-
valid: boolean;
|
|
13
|
-
}
|
|
14
|
-
|
|
15
|
-
interface ViewportDimensions {
|
|
16
|
-
width: number;
|
|
17
|
-
height: number;
|
|
18
|
-
}
|
|
19
|
-
|
|
20
|
-
interface RectDimensions {
|
|
21
|
-
targetRect: DOMRect;
|
|
22
|
-
calloutRect: DOMRect;
|
|
23
|
-
}
|
|
24
|
-
|
|
25
|
-
// ============================================================================
|
|
26
|
-
// Viewport & Dimensions
|
|
27
|
-
// ============================================================================
|
|
28
|
-
const getViewportDimensions = (): ViewportDimensions => ({
|
|
29
|
-
width: window.innerWidth,
|
|
30
|
-
height: window.innerHeight,
|
|
31
|
-
});
|
|
32
|
-
|
|
33
|
-
const getElementDimensions = (targetElm: Element, calloutElm: HTMLElement): RectDimensions => ({
|
|
34
|
-
targetRect: targetElm.getBoundingClientRect(),
|
|
35
|
-
calloutRect: calloutElm.getBoundingClientRect(),
|
|
36
|
-
});
|
|
37
|
-
|
|
38
|
-
// ============================================================================
|
|
39
|
-
// Alignment Order
|
|
40
|
-
// ============================================================================
|
|
41
|
-
const getAlignmentOrder = (alignment: IHorizontalAlignment): IHorizontalAlignment[] => {
|
|
42
|
-
switch (alignment) {
|
|
43
|
-
case 'center':
|
|
44
|
-
return ['center', 'left', 'right'];
|
|
45
|
-
case 'left':
|
|
46
|
-
return ['left', 'center', 'right'];
|
|
47
|
-
case 'right':
|
|
48
|
-
return ['right', 'center', 'left'];
|
|
49
|
-
}
|
|
50
|
-
};
|
|
51
|
-
|
|
52
|
-
// ============================================================================
|
|
53
|
-
// Position Calculation
|
|
54
|
-
// ============================================================================
|
|
55
|
-
const calculateLeftPosition = ({
|
|
56
|
-
targetRect,
|
|
57
|
-
calloutRect,
|
|
58
|
-
hozOffset,
|
|
59
|
-
align,
|
|
60
|
-
}: {
|
|
61
|
-
targetRect: DOMRect;
|
|
62
|
-
calloutRect: DOMRect;
|
|
63
|
-
hozOffset: number;
|
|
64
|
-
align: IHorizontalAlignment;
|
|
65
|
-
}): number => {
|
|
66
|
-
switch (align) {
|
|
67
|
-
case 'left':
|
|
68
|
-
return targetRect.left + hozOffset;
|
|
69
|
-
case 'right':
|
|
70
|
-
return targetRect.right - calloutRect.width - hozOffset;
|
|
71
|
-
case 'center':
|
|
72
|
-
default:
|
|
73
|
-
return targetRect.left + targetRect.width / 2 - calloutRect.width / 2;
|
|
74
|
-
}
|
|
75
|
-
};
|
|
76
|
-
|
|
77
|
-
const calculateVerticalPosition = (
|
|
78
|
-
targetRect: DOMRect,
|
|
79
|
-
calloutRect: DOMRect,
|
|
80
|
-
placement: 'top' | 'bottom',
|
|
81
|
-
padding: number,
|
|
82
|
-
arrowSize: number,
|
|
83
|
-
): number => {
|
|
84
|
-
return placement === 'top'
|
|
85
|
-
? targetRect.top - calloutRect.height - padding - arrowSize
|
|
86
|
-
: targetRect.bottom + padding + arrowSize;
|
|
87
|
-
};
|
|
88
|
-
|
|
89
|
-
const calculateHorizontalPlacementPosition = (
|
|
90
|
-
targetRect: DOMRect,
|
|
91
|
-
calloutRect: DOMRect,
|
|
92
|
-
placement: 'left' | 'right',
|
|
93
|
-
padding: number,
|
|
94
|
-
arrowSize: number,
|
|
95
|
-
): { top: number; left: number } => {
|
|
96
|
-
const top = targetRect.top + targetRect.height / 2 - calloutRect.height / 2;
|
|
97
|
-
const left =
|
|
98
|
-
placement === 'right'
|
|
99
|
-
? targetRect.right + padding + arrowSize
|
|
100
|
-
: targetRect.left - calloutRect.width - padding - arrowSize;
|
|
101
|
-
|
|
102
|
-
return { top, left };
|
|
103
|
-
};
|
|
104
|
-
|
|
105
|
-
// ============================================================================
|
|
106
|
-
// Validation
|
|
107
|
-
// ============================================================================
|
|
108
|
-
const isLeftPositionValid = (
|
|
109
|
-
leftPos: number,
|
|
110
|
-
calloutWidth: number,
|
|
111
|
-
viewportWidth: number,
|
|
112
|
-
padding: number,
|
|
113
|
-
): boolean => {
|
|
114
|
-
return leftPos >= padding && leftPos + calloutWidth <= viewportWidth - padding;
|
|
115
|
-
};
|
|
116
|
-
const isVerticalPositionValid = (
|
|
117
|
-
targetRect: DOMRect,
|
|
118
|
-
calloutRect: DOMRect,
|
|
119
|
-
placement: 'top' | 'bottom',
|
|
120
|
-
viewportHeight: number,
|
|
121
|
-
padding: number,
|
|
122
|
-
arrowSize: number,
|
|
123
|
-
): boolean => {
|
|
124
|
-
return placement === 'top'
|
|
125
|
-
? targetRect.top - calloutRect.height - padding - arrowSize > 0
|
|
126
|
-
: targetRect.bottom + calloutRect.height + padding + arrowSize < viewportHeight;
|
|
127
|
-
};
|
|
128
|
-
const isHorizontalPlacementValid = (
|
|
129
|
-
targetRect: DOMRect,
|
|
130
|
-
calloutRect: DOMRect,
|
|
131
|
-
placement: 'left' | 'right',
|
|
132
|
-
viewportWidth: number,
|
|
133
|
-
padding: number,
|
|
134
|
-
arrowSize: number,
|
|
135
|
-
): boolean => {
|
|
136
|
-
return placement === 'right'
|
|
137
|
-
? targetRect.right + calloutRect.width + padding + arrowSize < viewportWidth
|
|
138
|
-
: targetRect.left - calloutRect.width - padding - arrowSize > 0;
|
|
139
|
-
};
|
|
140
|
-
|
|
141
|
-
// ============================================================================
|
|
142
|
-
// Position Candidates Generation
|
|
143
|
-
// ============================================================================
|
|
144
|
-
const generateVerticalPositionCandidates = (
|
|
145
|
-
targetRect: DOMRect,
|
|
146
|
-
calloutRect: DOMRect,
|
|
147
|
-
viewportHeight: number,
|
|
148
|
-
viewportWidth: number,
|
|
149
|
-
alignment: IHorizontalAlignment,
|
|
150
|
-
hozOffset: number,
|
|
151
|
-
padding: number,
|
|
152
|
-
arrowSize: number,
|
|
153
|
-
): PositionCandidate[] => {
|
|
154
|
-
const candidates: PositionCandidate[] = [];
|
|
155
|
-
const placements: Array<'top' | 'bottom'> = ['top', 'bottom'];
|
|
156
|
-
|
|
157
|
-
placements.forEach((placement) => {
|
|
158
|
-
const verticalPos = calculateVerticalPosition(
|
|
159
|
-
targetRect,
|
|
160
|
-
calloutRect,
|
|
161
|
-
placement,
|
|
162
|
-
padding,
|
|
163
|
-
arrowSize,
|
|
164
|
-
);
|
|
165
|
-
const verticalValid = isVerticalPositionValid(
|
|
166
|
-
targetRect,
|
|
167
|
-
calloutRect,
|
|
168
|
-
placement,
|
|
169
|
-
viewportHeight,
|
|
170
|
-
padding,
|
|
171
|
-
arrowSize,
|
|
172
|
-
);
|
|
173
|
-
|
|
174
|
-
const alignmentOrder = getAlignmentOrder(alignment);
|
|
175
|
-
|
|
176
|
-
alignmentOrder.forEach((align) => {
|
|
177
|
-
const horizontalPos = calculateLeftPosition({
|
|
178
|
-
targetRect,
|
|
179
|
-
calloutRect,
|
|
180
|
-
hozOffset,
|
|
181
|
-
align,
|
|
182
|
-
});
|
|
183
|
-
|
|
184
|
-
candidates.push({
|
|
185
|
-
placement,
|
|
186
|
-
top: verticalPos,
|
|
187
|
-
left: horizontalPos,
|
|
188
|
-
horizontalAlign: align,
|
|
189
|
-
valid:
|
|
190
|
-
verticalValid &&
|
|
191
|
-
isLeftPositionValid(horizontalPos, calloutRect.width, viewportWidth, padding),
|
|
192
|
-
});
|
|
193
|
-
});
|
|
194
|
-
});
|
|
195
|
-
|
|
196
|
-
return candidates;
|
|
197
|
-
};
|
|
198
|
-
const generateHorizontalPositionCandidates = (
|
|
199
|
-
targetRect: DOMRect,
|
|
200
|
-
calloutRect: DOMRect,
|
|
201
|
-
viewportWidth: number,
|
|
202
|
-
padding: number,
|
|
203
|
-
arrowSize: number,
|
|
204
|
-
): PositionCandidate[] => {
|
|
205
|
-
const placements: Array<'left' | 'right'> = ['left', 'right'];
|
|
206
|
-
|
|
207
|
-
return placements.map((placement) => {
|
|
208
|
-
const { top, left } = calculateHorizontalPlacementPosition(
|
|
209
|
-
targetRect,
|
|
210
|
-
calloutRect,
|
|
211
|
-
placement,
|
|
212
|
-
padding,
|
|
213
|
-
arrowSize,
|
|
214
|
-
);
|
|
215
|
-
|
|
216
|
-
return {
|
|
217
|
-
placement,
|
|
218
|
-
top,
|
|
219
|
-
left,
|
|
220
|
-
horizontalAlign: 'center' as IHorizontalAlignment,
|
|
221
|
-
valid: isHorizontalPlacementValid(
|
|
222
|
-
targetRect,
|
|
223
|
-
calloutRect,
|
|
224
|
-
placement,
|
|
225
|
-
viewportWidth,
|
|
226
|
-
padding,
|
|
227
|
-
arrowSize,
|
|
228
|
-
),
|
|
229
|
-
};
|
|
230
|
-
});
|
|
231
|
-
};
|
|
232
|
-
const generateAllPositionCandidates = (
|
|
233
|
-
rectDimensions: RectDimensions,
|
|
234
|
-
viewport: ViewportDimensions,
|
|
235
|
-
alignment: IHorizontalAlignment,
|
|
236
|
-
hozOffset: number,
|
|
237
|
-
padding: number,
|
|
238
|
-
arrowSize: number,
|
|
239
|
-
): PositionCandidate[] => {
|
|
240
|
-
const { targetRect, calloutRect } = rectDimensions;
|
|
241
|
-
|
|
242
|
-
const verticalCandidates = generateVerticalPositionCandidates(
|
|
243
|
-
targetRect,
|
|
244
|
-
calloutRect,
|
|
245
|
-
viewport.height,
|
|
246
|
-
viewport.width,
|
|
247
|
-
alignment,
|
|
248
|
-
hozOffset,
|
|
249
|
-
padding,
|
|
250
|
-
arrowSize,
|
|
251
|
-
);
|
|
252
|
-
|
|
253
|
-
const horizontalCandidates = generateHorizontalPositionCandidates(
|
|
254
|
-
targetRect,
|
|
255
|
-
calloutRect,
|
|
256
|
-
viewport.width,
|
|
257
|
-
padding,
|
|
258
|
-
arrowSize,
|
|
259
|
-
);
|
|
260
|
-
|
|
261
|
-
return [...verticalCandidates, ...horizontalCandidates];
|
|
262
|
-
};
|
|
263
|
-
|
|
264
|
-
// ============================================================================
|
|
265
|
-
// Position Selection
|
|
266
|
-
// ============================================================================
|
|
267
|
-
const selectBestPosition = (candidates: PositionCandidate[]): PositionCandidate => {
|
|
268
|
-
return candidates.find((p) => p.valid) || candidates[0];
|
|
269
|
-
};
|
|
270
|
-
|
|
271
|
-
// ============================================================================
|
|
272
|
-
// Viewport Boundary Adjustment
|
|
273
|
-
// ============================================================================
|
|
274
|
-
const constrainToViewport = (
|
|
275
|
-
position: { top: number; left: number },
|
|
276
|
-
calloutRect: DOMRect,
|
|
277
|
-
viewport: ViewportDimensions,
|
|
278
|
-
padding: number,
|
|
279
|
-
): { top: number; left: number } => {
|
|
280
|
-
const left = Math.max(
|
|
281
|
-
padding,
|
|
282
|
-
Math.min(position.left, viewport.width - calloutRect.width - padding),
|
|
283
|
-
);
|
|
284
|
-
const top = Math.max(
|
|
285
|
-
padding,
|
|
286
|
-
Math.min(position.top, viewport.height - calloutRect.height - padding),
|
|
287
|
-
);
|
|
288
|
-
|
|
289
|
-
return { top, left };
|
|
290
|
-
};
|
|
291
|
-
|
|
292
|
-
// ============================================================================
|
|
293
|
-
// Main Function
|
|
294
|
-
// ============================================================================
|
|
295
|
-
export const calcCalloutPosition = ({
|
|
296
|
-
targetElm,
|
|
297
|
-
calloutElm,
|
|
298
|
-
setPosition,
|
|
299
|
-
hozOffset = HORIZONTAL_OFFSET,
|
|
300
|
-
alignment = 'center',
|
|
301
|
-
}: {
|
|
302
|
-
targetElm: Element;
|
|
303
|
-
calloutElm: HTMLElement;
|
|
304
|
-
setPosition: (position: ICalloutPosition) => void;
|
|
305
|
-
hozOffset?: number;
|
|
306
|
-
alignment?: IHorizontalAlignment;
|
|
307
|
-
}) => {
|
|
308
|
-
return () => {
|
|
309
|
-
// 1. Get dimensions
|
|
310
|
-
const rectDimensions = getElementDimensions(targetElm, calloutElm);
|
|
311
|
-
const viewport = getViewportDimensions();
|
|
312
|
-
|
|
313
|
-
const padding = PADDING;
|
|
314
|
-
const arrowSize = ARROW_SIZE;
|
|
315
|
-
|
|
316
|
-
// 2. Generate all position candidates
|
|
317
|
-
const candidates = generateAllPositionCandidates(
|
|
318
|
-
rectDimensions,
|
|
319
|
-
viewport,
|
|
320
|
-
alignment,
|
|
321
|
-
hozOffset,
|
|
322
|
-
padding,
|
|
323
|
-
arrowSize,
|
|
324
|
-
);
|
|
325
|
-
|
|
326
|
-
// 3. Select best position
|
|
327
|
-
const bestPosition = selectBestPosition(candidates);
|
|
328
|
-
|
|
329
|
-
// 4. Constrain to viewport
|
|
330
|
-
const constrainedPosition = constrainToViewport(
|
|
331
|
-
{ top: bestPosition.top, left: bestPosition.left },
|
|
332
|
-
rectDimensions.calloutRect,
|
|
333
|
-
viewport,
|
|
334
|
-
padding,
|
|
335
|
-
);
|
|
336
|
-
|
|
337
|
-
// 5. Create final position object
|
|
338
|
-
const finalPosition: ICalloutPosition = {
|
|
339
|
-
top: constrainedPosition.top,
|
|
340
|
-
left: constrainedPosition.left,
|
|
341
|
-
placement: bestPosition.placement,
|
|
342
|
-
horizontalAlign: bestPosition.horizontalAlign,
|
|
343
|
-
};
|
|
344
|
-
|
|
345
|
-
setPosition(finalPosition);
|
|
346
|
-
};
|
|
347
|
-
};
|
|
@@ -1,70 +0,0 @@
|
|
|
1
|
-
import type { ElementInfo, ElementRect, HeatmapElement, IHeatmapInfo } from '../types';
|
|
2
|
-
|
|
3
|
-
export function getElementLayout(element: HTMLElement): ElementRect | null {
|
|
4
|
-
if (!element?.getBoundingClientRect) return null;
|
|
5
|
-
const rect = element.getBoundingClientRect();
|
|
6
|
-
if (rect.width === 0 && rect.height === 0) return null;
|
|
7
|
-
|
|
8
|
-
return {
|
|
9
|
-
top: rect.top,
|
|
10
|
-
left: rect.left,
|
|
11
|
-
width: rect.width,
|
|
12
|
-
height: rect.height,
|
|
13
|
-
};
|
|
14
|
-
}
|
|
15
|
-
|
|
16
|
-
export const getElementAtPoint = (doc: Document, x: number, y: number): HTMLElement | null => {
|
|
17
|
-
let el: Node | null = null;
|
|
18
|
-
|
|
19
|
-
if ('caretPositionFromPoint' in doc) {
|
|
20
|
-
el = doc.caretPositionFromPoint(x, y)?.offsetNode ?? null;
|
|
21
|
-
}
|
|
22
|
-
|
|
23
|
-
el = el ?? doc.elementFromPoint(x, y);
|
|
24
|
-
|
|
25
|
-
let element = el as HTMLElement | null;
|
|
26
|
-
while (element && element.nodeType === Node.TEXT_NODE) {
|
|
27
|
-
element = element.parentElement;
|
|
28
|
-
}
|
|
29
|
-
return element;
|
|
30
|
-
};
|
|
31
|
-
|
|
32
|
-
export function getElementHash(element: HTMLElement): string | null {
|
|
33
|
-
return (
|
|
34
|
-
element.getAttribute('data-clarity-hash') ||
|
|
35
|
-
element.getAttribute('data-clarity-hashalpha') ||
|
|
36
|
-
element.getAttribute('data-clarity-hashbeta')
|
|
37
|
-
);
|
|
38
|
-
}
|
|
39
|
-
|
|
40
|
-
const getElementRank = (hash: string, elements?: HeatmapElement[]): number => {
|
|
41
|
-
if (!elements) return 0;
|
|
42
|
-
return elements.findIndex((e) => e.hash === hash) + 1;
|
|
43
|
-
};
|
|
44
|
-
|
|
45
|
-
export const buildElementInfo = (
|
|
46
|
-
hash: string,
|
|
47
|
-
rect: ElementRect | null,
|
|
48
|
-
heatmapInfo: IHeatmapInfo,
|
|
49
|
-
): ElementInfo | null => {
|
|
50
|
-
if (!rect || !heatmapInfo) return null;
|
|
51
|
-
|
|
52
|
-
const info = heatmapInfo.elementMapInfo?.[hash];
|
|
53
|
-
if (!info) return null;
|
|
54
|
-
|
|
55
|
-
const rank = getElementRank(hash, heatmapInfo.sortedElements);
|
|
56
|
-
const clicks = info.totalclicks ?? 0;
|
|
57
|
-
const selector = info.selector ?? '';
|
|
58
|
-
|
|
59
|
-
const baseInfo = {
|
|
60
|
-
hash,
|
|
61
|
-
clicks,
|
|
62
|
-
rank,
|
|
63
|
-
selector,
|
|
64
|
-
};
|
|
65
|
-
|
|
66
|
-
return {
|
|
67
|
-
...baseInfo,
|
|
68
|
-
...rect,
|
|
69
|
-
};
|
|
70
|
-
};
|
|
@@ -1,100 +0,0 @@
|
|
|
1
|
-
import { IframeDimensionsDetail, IframeStyleConfig } from '../../types';
|
|
2
|
-
import { IframeNavigationBlockerV2 } from './navigation-blocker-v2';
|
|
3
|
-
import { IframeStyleReplacer } from './style-replacer';
|
|
4
|
-
|
|
5
|
-
export class IframeHelperFixer {
|
|
6
|
-
private iframe: HTMLIFrameElement;
|
|
7
|
-
private config: IframeStyleConfig;
|
|
8
|
-
private replacer: IframeStyleReplacer | null = null;
|
|
9
|
-
private navigationBlocker: IframeNavigationBlockerV2 | null = null;
|
|
10
|
-
|
|
11
|
-
constructor(config: IframeStyleConfig) {
|
|
12
|
-
this.config = config;
|
|
13
|
-
this.iframe = config.iframe;
|
|
14
|
-
this.init();
|
|
15
|
-
}
|
|
16
|
-
|
|
17
|
-
private async init(): Promise<void> {
|
|
18
|
-
if (!this.iframe) {
|
|
19
|
-
console.error('[IframeHelper] iframe not found');
|
|
20
|
-
this.config.onError?.(new Error('iframe not found'));
|
|
21
|
-
return;
|
|
22
|
-
}
|
|
23
|
-
|
|
24
|
-
// Wait for iframe to load completely
|
|
25
|
-
if (this.iframe.contentDocument?.readyState === 'complete') {
|
|
26
|
-
await this.process();
|
|
27
|
-
} else {
|
|
28
|
-
this.iframe.addEventListener('load', () => this.process());
|
|
29
|
-
}
|
|
30
|
-
}
|
|
31
|
-
|
|
32
|
-
private async process(): Promise<void> {
|
|
33
|
-
if (!this.iframe.contentDocument || !this.iframe.contentWindow) {
|
|
34
|
-
console.error('[IframeHelper] Cannot access iframe document');
|
|
35
|
-
this.config.onError?.(new Error('Cannot access iframe document'));
|
|
36
|
-
return;
|
|
37
|
-
}
|
|
38
|
-
|
|
39
|
-
try {
|
|
40
|
-
console.log('[IframeHelper] Processing viewport units...');
|
|
41
|
-
|
|
42
|
-
// Create replacer instance
|
|
43
|
-
this.replacer = new IframeStyleReplacer(this.iframe, this.config);
|
|
44
|
-
|
|
45
|
-
// Create navigation blocker
|
|
46
|
-
this.navigationBlocker = new IframeNavigationBlockerV2(this.iframe);
|
|
47
|
-
|
|
48
|
-
// Run replacement
|
|
49
|
-
const result = await this.replacer.run();
|
|
50
|
-
|
|
51
|
-
console.log('[IframeHelper] Process completed:', result);
|
|
52
|
-
|
|
53
|
-
// Trigger success callback
|
|
54
|
-
this.config.onSuccess?.(result);
|
|
55
|
-
|
|
56
|
-
// Dispatch custom event
|
|
57
|
-
window.dispatchEvent(
|
|
58
|
-
new CustomEvent<IframeDimensionsDetail>('iframe-dimensions-applied', {
|
|
59
|
-
detail: result,
|
|
60
|
-
}),
|
|
61
|
-
);
|
|
62
|
-
} catch (error) {
|
|
63
|
-
console.error('[IframeHelper] Failed to process:', error);
|
|
64
|
-
this.config.onError?.(error as Error);
|
|
65
|
-
}
|
|
66
|
-
}
|
|
67
|
-
|
|
68
|
-
public async recalculate(): Promise<void> {
|
|
69
|
-
console.log('[IframeHelper] Recalculating...');
|
|
70
|
-
await this.process();
|
|
71
|
-
}
|
|
72
|
-
|
|
73
|
-
public updateConfig(config: Partial<IframeStyleConfig>): void {
|
|
74
|
-
this.config = { ...this.config, ...config };
|
|
75
|
-
if (this.replacer) {
|
|
76
|
-
this.replacer.updateConfig(config);
|
|
77
|
-
}
|
|
78
|
-
}
|
|
79
|
-
|
|
80
|
-
public enableNavigationBlocking(): void {
|
|
81
|
-
this.navigationBlocker?.enable();
|
|
82
|
-
}
|
|
83
|
-
public enableNavigationBlockingMessage(): void {
|
|
84
|
-
this.navigationBlocker?.enableMessage();
|
|
85
|
-
}
|
|
86
|
-
|
|
87
|
-
public disableNavigationBlocking(): void {
|
|
88
|
-
this.navigationBlocker?.disable();
|
|
89
|
-
}
|
|
90
|
-
public disableNavigationBlockingMessage(): void {
|
|
91
|
-
this.navigationBlocker?.disableMessage();
|
|
92
|
-
}
|
|
93
|
-
|
|
94
|
-
public destroy(): void {
|
|
95
|
-
this.replacer = null;
|
|
96
|
-
this.navigationBlocker?.destroy();
|
|
97
|
-
this.navigationBlocker = null;
|
|
98
|
-
console.log('[IframeHelper] Destroyed');
|
|
99
|
-
}
|
|
100
|
-
}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export * from './init';
|
|
@@ -1,56 +0,0 @@
|
|
|
1
|
-
import { IframeDebugInfo, IframeDimensionsDetail, IframeStyleConfig } from '../../types';
|
|
2
|
-
import { IframeHelperFixer } from './fixer';
|
|
3
|
-
|
|
4
|
-
export function initIframeHelperFixer(config: IframeStyleConfig): IframeHelperFixer {
|
|
5
|
-
const fixer = new IframeHelperFixer(config);
|
|
6
|
-
|
|
7
|
-
window.addEventListener('iframe-dimensions-applied', ((e: Event) => {
|
|
8
|
-
const ev = e as CustomEvent<IframeDimensionsDetail>;
|
|
9
|
-
console.log('[IframeHelper] Iframe dimensions finalized:', ev.detail);
|
|
10
|
-
}) as EventListener);
|
|
11
|
-
|
|
12
|
-
window.addEventListener('iframe-navigation-blocked', ((e: Event) => {
|
|
13
|
-
const ev = e as CustomEvent<{ url: string }>;
|
|
14
|
-
console.warn('[IframeHelper] Iframe tried to navigate to:', ev.detail.url);
|
|
15
|
-
}) as EventListener);
|
|
16
|
-
|
|
17
|
-
window.addEventListener('iframe-form-submit', ((e: Event) => {
|
|
18
|
-
const ev = e as CustomEvent<{ form: HTMLFormElement; data: any }>;
|
|
19
|
-
console.log('[IframeHelper] Iframe form submitted:', ev.detail.data);
|
|
20
|
-
}) as EventListener);
|
|
21
|
-
|
|
22
|
-
return fixer;
|
|
23
|
-
}
|
|
24
|
-
|
|
25
|
-
export function debugIframeStyle(): IframeDebugInfo | null {
|
|
26
|
-
const iframe = document.querySelector<HTMLIFrameElement>('clarity-iframe');
|
|
27
|
-
if (!iframe?.contentDocument) {
|
|
28
|
-
console.error('Cannot access iframe document');
|
|
29
|
-
return null;
|
|
30
|
-
}
|
|
31
|
-
|
|
32
|
-
const doc = iframe.contentDocument;
|
|
33
|
-
console.log('=== Viewport Units Debug ===');
|
|
34
|
-
console.log('Iframe:', { w: iframe.offsetWidth, h: iframe.offsetHeight });
|
|
35
|
-
console.log('Body:', {
|
|
36
|
-
scroll: doc.body.scrollHeight,
|
|
37
|
-
offset: doc.body.offsetHeight,
|
|
38
|
-
client: doc.body.clientHeight,
|
|
39
|
-
});
|
|
40
|
-
|
|
41
|
-
const remaining: Array<{ tag: string; style: string }> = [];
|
|
42
|
-
doc.querySelectorAll('*').forEach((el) => {
|
|
43
|
-
const style = el.getAttribute('style') || '';
|
|
44
|
-
if (/v[hwdsl]/.test(style)) {
|
|
45
|
-
remaining.push({ tag: el.tagName, style });
|
|
46
|
-
}
|
|
47
|
-
});
|
|
48
|
-
|
|
49
|
-
console.log(`Remaining viewport units: ${remaining.length}`, remaining);
|
|
50
|
-
|
|
51
|
-
return {
|
|
52
|
-
iframe: iframe.offsetHeight,
|
|
53
|
-
body: doc.body.scrollHeight,
|
|
54
|
-
remaining: remaining.length,
|
|
55
|
-
};
|
|
56
|
-
}
|