@reltio/components 1.4.1844 → 1.4.1846
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/cjs/EmptyState/EmptyState.d.ts +1 -0
- package/cjs/EmptyState/EmptyState.js +3 -1
- package/cjs/features/graph/DataModelGraph/DataModelGraph.d.ts +12 -0
- package/cjs/features/graph/DataModelGraph/DataModelGraph.js +28 -0
- package/cjs/features/graph/DataModelGraph/DataModelGraph.test.d.ts +1 -0
- package/cjs/features/graph/DataModelGraph/DataModelGraph.test.js +63 -0
- package/cjs/features/graph/DataModelGraph/components/DataModelCircleLayout/DataModelCircleLayuot.d.ts +11 -0
- package/cjs/features/graph/DataModelGraph/components/DataModelCircleLayout/DataModelCircleLayuot.js +21 -0
- package/cjs/features/graph/DataModelGraph/helpers/edgeLabelHelpers.d.ts +9 -0
- package/cjs/features/graph/DataModelGraph/helpers/edgeLabelHelpers.js +38 -0
- package/cjs/features/graph/DataModelGraph/helpers/edgeLabelHelpers.test.d.ts +1 -0
- package/cjs/features/graph/DataModelGraph/helpers/edgeLabelHelpers.test.js +74 -0
- package/cjs/features/graph/DataModelGraph/hooks/defaultGraph.test-data.d.ts +2 -0
- package/cjs/features/graph/DataModelGraph/hooks/defaultGraph.test-data.js +52 -0
- package/cjs/features/graph/DataModelGraph/hooks/useDataModelGraphAppearance.d.ts +17 -0
- package/cjs/features/graph/DataModelGraph/hooks/useDataModelGraphAppearance.js +139 -0
- package/cjs/features/graph/DataModelGraph/hooks/useDataModelGraphAppearance.test.d.ts +1 -0
- package/cjs/features/graph/DataModelGraph/hooks/useDataModelGraphAppearance.test.js +192 -0
- package/cjs/features/graph/DataModelGraph/hooks/useEdgeLabelsRenderer.d.ts +10 -0
- package/cjs/features/graph/DataModelGraph/hooks/useEdgeLabelsRenderer.js +171 -0
- package/cjs/features/graph/DataModelGraph/hooks/useEdgeLabelsRenderer.test.d.ts +1 -0
- package/cjs/features/graph/DataModelGraph/hooks/useEdgeLabelsRenderer.test.js +176 -0
- package/cjs/features/graph/DataModelGraph/hooks/useFakeCenterNode.d.ts +8 -0
- package/cjs/features/graph/DataModelGraph/hooks/useFakeCenterNode.js +36 -0
- package/cjs/features/graph/DataModelGraph/hooks/useFakeCenterNode.test.d.ts +1 -0
- package/cjs/features/graph/DataModelGraph/hooks/useFakeCenterNode.test.js +37 -0
- package/cjs/features/graph/DataModelGraph/hooks/useSelectedNodeRenderer.d.ts +2 -0
- package/cjs/features/graph/DataModelGraph/hooks/useSelectedNodeRenderer.js +41 -0
- package/cjs/features/graph/DataModelGraph/hooks/useSelectedNodeRenderer.test.d.ts +1 -0
- package/cjs/features/graph/DataModelGraph/hooks/useSelectedNodeRenderer.test.js +63 -0
- package/cjs/features/graph/DataModelGraph/icons/interaction.inline.svg.d.ts +1 -0
- package/cjs/features/graph/DataModelGraph/icons/interaction.inline.svg.js +4 -0
- package/cjs/features/graph/DataModelGraph/index.d.ts +1 -0
- package/cjs/features/graph/DataModelGraph/index.js +5 -0
- package/cjs/features/graph/DataModelGraph/styles.d.ts +1 -0
- package/cjs/features/graph/DataModelGraph/styles.js +26 -0
- package/cjs/features/graph/SigmaCustomRenderersContainer/SigmaCustomRenderersContainer.d.ts +6 -0
- package/cjs/features/graph/SigmaCustomRenderersContainer/SigmaCustomRenderersContainer.js +15 -0
- package/cjs/features/graph/SigmaCustomRenderersContainer/index.d.ts +1 -0
- package/cjs/features/graph/SigmaCustomRenderersContainer/index.js +5 -0
- package/cjs/features/graph/SigmaGraphContainer/SigmaGraphContainer.d.ts +9 -0
- package/cjs/features/graph/SigmaGraphContainer/SigmaGraphContainer.js +86 -0
- package/cjs/features/graph/SigmaGraphContainer/SigmaGraphContainer.test.d.ts +1 -0
- package/cjs/features/graph/SigmaGraphContainer/SigmaGraphContainer.test.js +26 -0
- package/cjs/features/graph/SigmaGraphContainer/index.d.ts +1 -0
- package/cjs/features/graph/SigmaGraphContainer/index.js +5 -0
- package/cjs/features/graph/SigmaGraphResizer/SigmaGraphResizer.d.ts +1 -0
- package/cjs/features/graph/SigmaGraphResizer/SigmaGraphResizer.js +40 -0
- package/cjs/features/graph/SigmaGraphResizer/SigmaGraphResizer.test.d.ts +1 -0
- package/cjs/features/graph/SigmaGraphResizer/SigmaGraphResizer.test.js +37 -0
- package/cjs/features/graph/SigmaGraphResizer/index.d.ts +1 -0
- package/cjs/features/graph/SigmaGraphResizer/index.js +5 -0
- package/cjs/features/graph/ZoomSlider/ZoomSlider.d.ts +7 -0
- package/cjs/features/graph/ZoomSlider/ZoomSlider.js +113 -0
- package/cjs/features/graph/ZoomSlider/ZoomSlider.test.d.ts +1 -0
- package/cjs/features/graph/ZoomSlider/ZoomSlider.test.js +83 -0
- package/cjs/features/graph/ZoomSlider/index.d.ts +1 -0
- package/cjs/features/graph/ZoomSlider/index.js +5 -0
- package/cjs/features/graph/ZoomSlider/styles.d.ts +1 -0
- package/cjs/features/graph/ZoomSlider/styles.js +63 -0
- package/cjs/features/graph/contexts/SigmaCustomRenderersContext.d.ts +9 -0
- package/cjs/features/graph/contexts/SigmaCustomRenderersContext.js +15 -0
- package/cjs/features/graph/hooks/useAnimatedGraphLayout.d.ts +13 -0
- package/cjs/features/graph/hooks/useAnimatedGraphLayout.js +35 -0
- package/cjs/features/graph/hooks/useCircleLayout.d.ts +9 -0
- package/cjs/features/graph/hooks/useCircleLayout.js +50 -0
- package/cjs/features/graph/hooks/useLoopRenderer.d.ts +5 -0
- package/cjs/features/graph/hooks/useLoopRenderer.js +47 -0
- package/cjs/features/graph/hooks/useLoopRenderer.test.d.ts +1 -0
- package/cjs/features/graph/hooks/useLoopRenderer.test.js +221 -0
- package/cjs/features/graph/hooks/useSigmaCustomRenderers.d.ts +7 -0
- package/cjs/features/graph/hooks/useSigmaCustomRenderers.js +95 -0
- package/cjs/features/graph/hooks/useSigmaCustomRenderers.test.d.ts +1 -0
- package/cjs/features/graph/hooks/useSigmaCustomRenderers.test.js +200 -0
- package/cjs/features/graph/index.d.ts +16 -0
- package/cjs/features/graph/index.js +34 -0
- package/cjs/features/graph/rendering/canvas/hover.d.ts +2 -0
- package/cjs/features/graph/rendering/canvas/hover.js +10 -0
- package/cjs/features/graph/rendering/canvas/hover.spec.d.ts +1 -0
- package/cjs/features/graph/rendering/canvas/hover.spec.js +26 -0
- package/cjs/features/graph/rendering/canvas/label.d.ts +7 -0
- package/cjs/features/graph/rendering/canvas/label.js +32 -0
- package/cjs/features/graph/rendering/canvas/label.spec.d.ts +1 -0
- package/cjs/features/graph/rendering/canvas/label.spec.js +81 -0
- package/cjs/features/graph/rendering/canvas/labelBackground.d.ts +9 -0
- package/cjs/features/graph/rendering/canvas/labelBackground.js +37 -0
- package/cjs/features/graph/rendering/canvas/labelBackground.spec.d.ts +1 -0
- package/cjs/features/graph/rendering/canvas/labelBackground.spec.js +92 -0
- package/cjs/features/graph/rendering/canvas/nodeArc.d.ts +10 -0
- package/cjs/features/graph/rendering/canvas/nodeArc.js +33 -0
- package/cjs/features/graph/rendering/canvas/selfRelationLoop.d.ts +11 -0
- package/cjs/features/graph/rendering/canvas/selfRelationLoop.js +73 -0
- package/cjs/features/graph/rendering/canvas/selfRelationLoop.spec.d.ts +1 -0
- package/cjs/features/graph/rendering/canvas/selfRelationLoop.spec.js +92 -0
- package/cjs/features/graph/rendering/canvas/tooltip.d.ts +2 -0
- package/cjs/features/graph/rendering/canvas/tooltip.js +28 -0
- package/cjs/features/graph/rendering/canvas/tooltip.spec.d.ts +1 -0
- package/cjs/features/graph/rendering/canvas/tooltip.spec.js +32 -0
- package/cjs/features/graph/rendering/canvas/utils.d.ts +4 -0
- package/cjs/features/graph/rendering/canvas/utils.js +10 -0
- package/cjs/features/graph/rendering/canvas/utils.spec.d.ts +1 -0
- package/cjs/features/graph/rendering/canvas/utils.spec.js +22 -0
- package/cjs/features/graph/rendering/icons/no_photo.inline.svg.d.ts +1 -0
- package/cjs/features/graph/rendering/icons/no_photo.inline.svg.js +4 -0
- package/cjs/features/graph/rendering/webgl/edge.arrowHead.d.ts +8 -0
- package/cjs/features/graph/rendering/webgl/edge.arrowHead.js +84 -0
- package/cjs/features/graph/rendering/webgl/edge.clamped.d.ts +29 -0
- package/cjs/features/graph/rendering/webgl/edge.clamped.js +176 -0
- package/cjs/features/graph/rendering/webgl/edge.dashed.d.ts +23 -0
- package/cjs/features/graph/rendering/webgl/edge.dashed.js +162 -0
- package/cjs/features/graph/rendering/webgl/edge.reversedArrowHead.d.ts +5 -0
- package/cjs/features/graph/rendering/webgl/edge.reversedArrowHead.js +32 -0
- package/cjs/features/graph/rendering/webgl/helpers/imageHelper.d.ts +17 -0
- package/cjs/features/graph/rendering/webgl/helpers/imageHelper.js +9 -0
- package/cjs/features/graph/rendering/webgl/helpers/imageHelper.spec.d.ts +1 -0
- package/cjs/features/graph/rendering/webgl/helpers/imageHelper.spec.js +29 -0
- package/cjs/features/graph/rendering/webgl/image.d.ts +17 -0
- package/cjs/features/graph/rendering/webgl/image.js +115 -0
- package/cjs/features/graph/rendering/webgl/node.border.d.ts +11 -0
- package/cjs/features/graph/rendering/webgl/node.border.js +79 -0
- package/cjs/features/graph/rendering/webgl/node.dashed.border.d.ts +11 -0
- package/cjs/features/graph/rendering/webgl/node.dashed.border.js +77 -0
- package/cjs/features/graph/rendering/webgl/node.image.d.ts +18 -0
- package/cjs/features/graph/rendering/webgl/node.image.js +147 -0
- package/cjs/features/graph/rendering/webgl/shaders/edge.clamped.vert.glsl.d.ts +1 -0
- package/cjs/features/graph/rendering/webgl/shaders/edge.clamped.vert.glsl.js +8 -0
- package/cjs/features/graph/rendering/webgl/shaders/edge.dashed.frag.glsl.d.ts +1 -0
- package/cjs/features/graph/rendering/webgl/shaders/edge.dashed.frag.glsl.js +8 -0
- package/cjs/features/graph/rendering/webgl/shaders/edge.dashed.vert.glsl.d.ts +1 -0
- package/cjs/features/graph/rendering/webgl/shaders/edge.dashed.vert.glsl.js +8 -0
- package/cjs/features/graph/rendering/webgl/shaders/node.border.frag.glsl.d.ts +1 -0
- package/cjs/features/graph/rendering/webgl/shaders/node.border.frag.glsl.js +9 -0
- package/cjs/features/graph/rendering/webgl/shaders/node.border.vert.glsl.d.ts +1 -0
- package/cjs/features/graph/rendering/webgl/shaders/node.border.vert.glsl.js +8 -0
- package/cjs/features/graph/rendering/webgl/shaders/node.dashed.border.frag.glsl.d.ts +1 -0
- package/cjs/features/graph/rendering/webgl/shaders/node.dashed.border.frag.glsl.js +8 -0
- package/cjs/features/graph/rendering/webgl/shaders/node.image.frag.glsl.d.ts +1 -0
- package/cjs/features/graph/rendering/webgl/shaders/node.image.frag.glsl.js +5 -0
- package/cjs/features/graph/rendering/webgl/shaders/node.image.vert.glsl.d.ts +1 -0
- package/cjs/features/graph/rendering/webgl/shaders/node.image.vert.glsl.js +8 -0
- package/cjs/features/graph/rendering/webgl/shaders/utils.d.ts +1 -0
- package/cjs/features/graph/rendering/webgl/shaders/utils.js +4 -0
- package/cjs/features/graph/types/graphDataTypes.d.ts +51 -0
- package/cjs/features/graph/types/graphDataTypes.js +8 -0
- package/cjs/features/graph/types/sigmaCustomRenderersTypes.d.ts +11 -0
- package/cjs/features/graph/types/sigmaCustomRenderersTypes.js +2 -0
- package/cjs/icons/EmptyLoading.d.ts +3 -0
- package/cjs/icons/EmptyLoading.js +150 -0
- package/cjs/icons/index.d.ts +1 -0
- package/cjs/icons/index.js +4 -2
- package/cjs/index.d.ts +1 -0
- package/cjs/index.js +2 -0
- package/esm/EmptyState/EmptyState.d.ts +1 -0
- package/esm/EmptyState/EmptyState.js +3 -1
- package/esm/features/graph/DataModelGraph/DataModelGraph.d.ts +12 -0
- package/esm/features/graph/DataModelGraph/DataModelGraph.js +21 -0
- package/esm/features/graph/DataModelGraph/DataModelGraph.test.d.ts +1 -0
- package/esm/features/graph/DataModelGraph/DataModelGraph.test.js +58 -0
- package/esm/features/graph/DataModelGraph/components/DataModelCircleLayout/DataModelCircleLayuot.d.ts +11 -0
- package/esm/features/graph/DataModelGraph/components/DataModelCircleLayout/DataModelCircleLayuot.js +17 -0
- package/esm/features/graph/DataModelGraph/helpers/edgeLabelHelpers.d.ts +9 -0
- package/esm/features/graph/DataModelGraph/helpers/edgeLabelHelpers.js +33 -0
- package/esm/features/graph/DataModelGraph/helpers/edgeLabelHelpers.test.d.ts +1 -0
- package/esm/features/graph/DataModelGraph/helpers/edgeLabelHelpers.test.js +72 -0
- package/esm/features/graph/DataModelGraph/hooks/defaultGraph.test-data.d.ts +2 -0
- package/esm/features/graph/DataModelGraph/hooks/defaultGraph.test-data.js +45 -0
- package/esm/features/graph/DataModelGraph/hooks/useDataModelGraphAppearance.d.ts +17 -0
- package/esm/features/graph/DataModelGraph/hooks/useDataModelGraphAppearance.js +135 -0
- package/esm/features/graph/DataModelGraph/hooks/useDataModelGraphAppearance.test.d.ts +1 -0
- package/esm/features/graph/DataModelGraph/hooks/useDataModelGraphAppearance.test.js +190 -0
- package/esm/features/graph/DataModelGraph/hooks/useEdgeLabelsRenderer.d.ts +10 -0
- package/esm/features/graph/DataModelGraph/hooks/useEdgeLabelsRenderer.js +167 -0
- package/esm/features/graph/DataModelGraph/hooks/useEdgeLabelsRenderer.test.d.ts +1 -0
- package/esm/features/graph/DataModelGraph/hooks/useEdgeLabelsRenderer.test.js +174 -0
- package/esm/features/graph/DataModelGraph/hooks/useFakeCenterNode.d.ts +8 -0
- package/esm/features/graph/DataModelGraph/hooks/useFakeCenterNode.js +32 -0
- package/esm/features/graph/DataModelGraph/hooks/useFakeCenterNode.test.d.ts +1 -0
- package/esm/features/graph/DataModelGraph/hooks/useFakeCenterNode.test.js +35 -0
- package/esm/features/graph/DataModelGraph/hooks/useSelectedNodeRenderer.d.ts +2 -0
- package/esm/features/graph/DataModelGraph/hooks/useSelectedNodeRenderer.js +37 -0
- package/esm/features/graph/DataModelGraph/hooks/useSelectedNodeRenderer.test.d.ts +1 -0
- package/esm/features/graph/DataModelGraph/hooks/useSelectedNodeRenderer.test.js +61 -0
- package/esm/features/graph/DataModelGraph/icons/interaction.inline.svg.d.ts +1 -0
- package/esm/features/graph/DataModelGraph/icons/interaction.inline.svg.js +1 -0
- package/esm/features/graph/DataModelGraph/index.d.ts +1 -0
- package/esm/features/graph/DataModelGraph/index.js +1 -0
- package/esm/features/graph/DataModelGraph/styles.d.ts +1 -0
- package/esm/features/graph/DataModelGraph/styles.js +23 -0
- package/esm/features/graph/SigmaCustomRenderersContainer/SigmaCustomRenderersContainer.d.ts +6 -0
- package/esm/features/graph/SigmaCustomRenderersContainer/SigmaCustomRenderersContainer.js +8 -0
- package/esm/features/graph/SigmaCustomRenderersContainer/index.d.ts +1 -0
- package/esm/features/graph/SigmaCustomRenderersContainer/index.js +1 -0
- package/esm/features/graph/SigmaGraphContainer/SigmaGraphContainer.d.ts +9 -0
- package/esm/features/graph/SigmaGraphContainer/SigmaGraphContainer.js +56 -0
- package/esm/features/graph/SigmaGraphContainer/SigmaGraphContainer.test.d.ts +1 -0
- package/esm/features/graph/SigmaGraphContainer/SigmaGraphContainer.test.js +21 -0
- package/esm/features/graph/SigmaGraphContainer/index.d.ts +1 -0
- package/esm/features/graph/SigmaGraphContainer/index.js +1 -0
- package/esm/features/graph/SigmaGraphResizer/SigmaGraphResizer.d.ts +1 -0
- package/esm/features/graph/SigmaGraphResizer/SigmaGraphResizer.js +10 -0
- package/esm/features/graph/SigmaGraphResizer/SigmaGraphResizer.test.d.ts +1 -0
- package/esm/features/graph/SigmaGraphResizer/SigmaGraphResizer.test.js +32 -0
- package/esm/features/graph/SigmaGraphResizer/index.d.ts +1 -0
- package/esm/features/graph/SigmaGraphResizer/index.js +1 -0
- package/esm/features/graph/ZoomSlider/ZoomSlider.d.ts +7 -0
- package/esm/features/graph/ZoomSlider/ZoomSlider.js +83 -0
- package/esm/features/graph/ZoomSlider/ZoomSlider.test.d.ts +1 -0
- package/esm/features/graph/ZoomSlider/ZoomSlider.test.js +78 -0
- package/esm/features/graph/ZoomSlider/index.d.ts +1 -0
- package/esm/features/graph/ZoomSlider/index.js +1 -0
- package/esm/features/graph/ZoomSlider/styles.d.ts +1 -0
- package/esm/features/graph/ZoomSlider/styles.js +60 -0
- package/esm/features/graph/contexts/SigmaCustomRenderersContext.d.ts +9 -0
- package/esm/features/graph/contexts/SigmaCustomRenderersContext.js +11 -0
- package/esm/features/graph/hooks/useAnimatedGraphLayout.d.ts +13 -0
- package/esm/features/graph/hooks/useAnimatedGraphLayout.js +31 -0
- package/esm/features/graph/hooks/useCircleLayout.d.ts +9 -0
- package/esm/features/graph/hooks/useCircleLayout.js +43 -0
- package/esm/features/graph/hooks/useLoopRenderer.d.ts +5 -0
- package/esm/features/graph/hooks/useLoopRenderer.js +43 -0
- package/esm/features/graph/hooks/useLoopRenderer.test.d.ts +1 -0
- package/esm/features/graph/hooks/useLoopRenderer.test.js +219 -0
- package/esm/features/graph/hooks/useSigmaCustomRenderers.d.ts +7 -0
- package/esm/features/graph/hooks/useSigmaCustomRenderers.js +91 -0
- package/esm/features/graph/hooks/useSigmaCustomRenderers.test.d.ts +1 -0
- package/esm/features/graph/hooks/useSigmaCustomRenderers.test.js +198 -0
- package/esm/features/graph/index.d.ts +16 -0
- package/esm/features/graph/index.js +17 -0
- package/esm/features/graph/rendering/canvas/hover.d.ts +2 -0
- package/esm/features/graph/rendering/canvas/hover.js +6 -0
- package/esm/features/graph/rendering/canvas/hover.spec.d.ts +1 -0
- package/esm/features/graph/rendering/canvas/hover.spec.js +24 -0
- package/esm/features/graph/rendering/canvas/label.d.ts +7 -0
- package/esm/features/graph/rendering/canvas/label.js +28 -0
- package/esm/features/graph/rendering/canvas/label.spec.d.ts +1 -0
- package/esm/features/graph/rendering/canvas/label.spec.js +79 -0
- package/esm/features/graph/rendering/canvas/labelBackground.d.ts +9 -0
- package/esm/features/graph/rendering/canvas/labelBackground.js +33 -0
- package/esm/features/graph/rendering/canvas/labelBackground.spec.d.ts +1 -0
- package/esm/features/graph/rendering/canvas/labelBackground.spec.js +90 -0
- package/esm/features/graph/rendering/canvas/nodeArc.d.ts +10 -0
- package/esm/features/graph/rendering/canvas/nodeArc.js +27 -0
- package/esm/features/graph/rendering/canvas/selfRelationLoop.d.ts +11 -0
- package/esm/features/graph/rendering/canvas/selfRelationLoop.js +69 -0
- package/esm/features/graph/rendering/canvas/selfRelationLoop.spec.d.ts +1 -0
- package/esm/features/graph/rendering/canvas/selfRelationLoop.spec.js +90 -0
- package/esm/features/graph/rendering/canvas/tooltip.d.ts +2 -0
- package/esm/features/graph/rendering/canvas/tooltip.js +25 -0
- package/esm/features/graph/rendering/canvas/tooltip.spec.d.ts +1 -0
- package/esm/features/graph/rendering/canvas/tooltip.spec.js +30 -0
- package/esm/features/graph/rendering/canvas/utils.d.ts +4 -0
- package/esm/features/graph/rendering/canvas/utils.js +6 -0
- package/esm/features/graph/rendering/canvas/utils.spec.d.ts +1 -0
- package/esm/features/graph/rendering/canvas/utils.spec.js +20 -0
- package/esm/features/graph/rendering/icons/no_photo.inline.svg.d.ts +1 -0
- package/esm/features/graph/rendering/icons/no_photo.inline.svg.js +1 -0
- package/esm/features/graph/rendering/webgl/edge.arrowHead.d.ts +8 -0
- package/esm/features/graph/rendering/webgl/edge.arrowHead.js +79 -0
- package/esm/features/graph/rendering/webgl/edge.clamped.d.ts +29 -0
- package/esm/features/graph/rendering/webgl/edge.clamped.js +171 -0
- package/esm/features/graph/rendering/webgl/edge.dashed.d.ts +23 -0
- package/esm/features/graph/rendering/webgl/edge.dashed.js +160 -0
- package/esm/features/graph/rendering/webgl/edge.reversedArrowHead.d.ts +5 -0
- package/esm/features/graph/rendering/webgl/edge.reversedArrowHead.js +27 -0
- package/esm/features/graph/rendering/webgl/helpers/imageHelper.d.ts +17 -0
- package/esm/features/graph/rendering/webgl/helpers/imageHelper.js +5 -0
- package/esm/features/graph/rendering/webgl/helpers/imageHelper.spec.d.ts +1 -0
- package/esm/features/graph/rendering/webgl/helpers/imageHelper.spec.js +27 -0
- package/esm/features/graph/rendering/webgl/image.d.ts +17 -0
- package/esm/features/graph/rendering/webgl/image.js +112 -0
- package/esm/features/graph/rendering/webgl/node.border.d.ts +11 -0
- package/esm/features/graph/rendering/webgl/node.border.js +76 -0
- package/esm/features/graph/rendering/webgl/node.dashed.border.d.ts +11 -0
- package/esm/features/graph/rendering/webgl/node.dashed.border.js +74 -0
- package/esm/features/graph/rendering/webgl/node.image.d.ts +18 -0
- package/esm/features/graph/rendering/webgl/node.image.js +144 -0
- package/esm/features/graph/rendering/webgl/shaders/edge.clamped.vert.glsl.d.ts +1 -0
- package/esm/features/graph/rendering/webgl/shaders/edge.clamped.vert.glsl.js +5 -0
- package/esm/features/graph/rendering/webgl/shaders/edge.dashed.frag.glsl.d.ts +1 -0
- package/esm/features/graph/rendering/webgl/shaders/edge.dashed.frag.glsl.js +5 -0
- package/esm/features/graph/rendering/webgl/shaders/edge.dashed.vert.glsl.d.ts +1 -0
- package/esm/features/graph/rendering/webgl/shaders/edge.dashed.vert.glsl.js +5 -0
- package/esm/features/graph/rendering/webgl/shaders/node.border.frag.glsl.d.ts +1 -0
- package/esm/features/graph/rendering/webgl/shaders/node.border.frag.glsl.js +6 -0
- package/esm/features/graph/rendering/webgl/shaders/node.border.vert.glsl.d.ts +1 -0
- package/esm/features/graph/rendering/webgl/shaders/node.border.vert.glsl.js +5 -0
- package/esm/features/graph/rendering/webgl/shaders/node.dashed.border.frag.glsl.d.ts +1 -0
- package/esm/features/graph/rendering/webgl/shaders/node.dashed.border.frag.glsl.js +5 -0
- package/esm/features/graph/rendering/webgl/shaders/node.image.frag.glsl.d.ts +1 -0
- package/esm/features/graph/rendering/webgl/shaders/node.image.frag.glsl.js +2 -0
- package/esm/features/graph/rendering/webgl/shaders/node.image.vert.glsl.d.ts +1 -0
- package/esm/features/graph/rendering/webgl/shaders/node.image.vert.glsl.js +5 -0
- package/esm/features/graph/rendering/webgl/shaders/utils.d.ts +1 -0
- package/esm/features/graph/rendering/webgl/shaders/utils.js +1 -0
- package/esm/features/graph/types/graphDataTypes.d.ts +51 -0
- package/esm/features/graph/types/graphDataTypes.js +5 -0
- package/esm/features/graph/types/sigmaCustomRenderersTypes.d.ts +11 -0
- package/esm/features/graph/types/sigmaCustomRenderersTypes.js +1 -0
- package/esm/icons/EmptyLoading.d.ts +3 -0
- package/esm/icons/EmptyLoading.js +145 -0
- package/esm/icons/index.d.ts +1 -0
- package/esm/icons/index.js +1 -0
- package/esm/index.d.ts +1 -0
- package/esm/index.js +2 -0
- package/package.json +7 -2
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __assign = (this && this.__assign) || function () {
|
|
3
|
+
__assign = Object.assign || function(t) {
|
|
4
|
+
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
5
|
+
s = arguments[i];
|
|
6
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
7
|
+
t[p] = s[p];
|
|
8
|
+
}
|
|
9
|
+
return t;
|
|
10
|
+
};
|
|
11
|
+
return __assign.apply(this, arguments);
|
|
12
|
+
};
|
|
13
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
14
|
+
exports.useSelectedNodeRenderer = void 0;
|
|
15
|
+
var react_1 = require("react");
|
|
16
|
+
var core_1 = require("@react-sigma/core");
|
|
17
|
+
var nodeArc_1 = require("../../rendering/canvas/nodeArc");
|
|
18
|
+
var useSigmaCustomRenderers_1 = require("../../hooks/useSigmaCustomRenderers");
|
|
19
|
+
var useEdgeLabelsRenderer_1 = require("./useEdgeLabelsRenderer");
|
|
20
|
+
var useSelectedNodeRenderer = function (graph) {
|
|
21
|
+
var sigma = (0, core_1.useSigma)();
|
|
22
|
+
var addCustomRenderers = (0, useSigmaCustomRenderers_1.useSigmaCustomRenderers)().addRenderers;
|
|
23
|
+
(0, react_1.useEffect)(function () {
|
|
24
|
+
addCustomRenderers({
|
|
25
|
+
selectedNodeBorder: {
|
|
26
|
+
renderer: function (context) {
|
|
27
|
+
graph.forEachNode(function (nodeId) {
|
|
28
|
+
var data = sigma.getNodeDisplayData(nodeId);
|
|
29
|
+
if (!data.selected)
|
|
30
|
+
return;
|
|
31
|
+
var scaledData = __assign(__assign(__assign({}, data), sigma.framedGraphToViewport(data)), { size: sigma.scaleSize(data.size) });
|
|
32
|
+
(0, nodeArc_1.drawTwoArcs)(context, scaledData);
|
|
33
|
+
});
|
|
34
|
+
},
|
|
35
|
+
// we need to have "selected" node renderer layer before 'labels' layer to have labels of other nodes on top of it in case of overlapping
|
|
36
|
+
insertBefore: useEdgeLabelsRenderer_1.CUSTOM_EDGE_LABELS_CANVAS_NAME
|
|
37
|
+
}
|
|
38
|
+
});
|
|
39
|
+
}, [addCustomRenderers, graph, sigma]);
|
|
40
|
+
};
|
|
41
|
+
exports.useSelectedNodeRenderer = useSelectedNodeRenderer;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
var react_hooks_1 = require("@testing-library/react-hooks");
|
|
4
|
+
var core_1 = require("@react-sigma/core");
|
|
5
|
+
var useSigmaCustomRenderers_1 = require("../../hooks/useSigmaCustomRenderers");
|
|
6
|
+
var useSelectedNodeRenderer_1 = require("./useSelectedNodeRenderer");
|
|
7
|
+
var defaultGraph_test_data_1 = require("./defaultGraph.test-data");
|
|
8
|
+
var nodeArc_1 = require("../../rendering/canvas/nodeArc");
|
|
9
|
+
jest.mock('@react-sigma/core');
|
|
10
|
+
jest.mock('../../hooks/useSigmaCustomRenderers', function () { return ({
|
|
11
|
+
useSigmaCustomRenderers: jest.fn()
|
|
12
|
+
}); });
|
|
13
|
+
jest.mock('../../rendering/canvas/nodeArc', function () { return ({
|
|
14
|
+
drawTwoArcs: jest.fn().mockImplementation(jest.requireActual('../../rendering/canvas/nodeArc').drawTwoArcs)
|
|
15
|
+
}); });
|
|
16
|
+
describe('useSelectedNodeRenderer tests', function () {
|
|
17
|
+
var graph;
|
|
18
|
+
var setUp = function (graphArg) {
|
|
19
|
+
graph = graphArg || (0, defaultGraph_test_data_1.createDefaultGraph)();
|
|
20
|
+
return (0, react_hooks_1.renderHook)(useSelectedNodeRenderer_1.useSelectedNodeRenderer, {
|
|
21
|
+
initialProps: graph
|
|
22
|
+
});
|
|
23
|
+
};
|
|
24
|
+
var getNodeDisplayData = jest.fn().mockImplementation(function (nodeId) { return graph.getNodeAttributes(nodeId); });
|
|
25
|
+
var renderers = {};
|
|
26
|
+
var addRenderers = function (rendererObject) { return Object.assign(renderers, rendererObject); };
|
|
27
|
+
beforeEach(function () {
|
|
28
|
+
useSigmaCustomRenderers_1.useSigmaCustomRenderers.mockReturnValue({
|
|
29
|
+
addRenderers: addRenderers
|
|
30
|
+
});
|
|
31
|
+
core_1.useSigma.mockReturnValue({
|
|
32
|
+
getNodeDisplayData: getNodeDisplayData,
|
|
33
|
+
framedGraphToViewport: function (x) { return x; },
|
|
34
|
+
scaleSize: function (x) { return x; }
|
|
35
|
+
});
|
|
36
|
+
});
|
|
37
|
+
afterEach(function () {
|
|
38
|
+
jest.clearAllMocks();
|
|
39
|
+
});
|
|
40
|
+
var getRenderer = function () { return renderers.selectedNodeBorder; };
|
|
41
|
+
it('should not draw 2 arcs for regular node', function () {
|
|
42
|
+
setUp();
|
|
43
|
+
var renderer = getRenderer().renderer;
|
|
44
|
+
var canvas = document.createElement('canvas');
|
|
45
|
+
var canvasContext = canvas.getContext('2d');
|
|
46
|
+
(0, react_hooks_1.act)(function () {
|
|
47
|
+
renderer(canvasContext);
|
|
48
|
+
});
|
|
49
|
+
expect(nodeArc_1.drawTwoArcs).not.toHaveBeenCalled();
|
|
50
|
+
});
|
|
51
|
+
it('should draw 2 arcs for selected node', function () {
|
|
52
|
+
var graph = (0, defaultGraph_test_data_1.createDefaultGraph)();
|
|
53
|
+
graph.setNodeAttribute('hcp', 'selected', true);
|
|
54
|
+
setUp(graph);
|
|
55
|
+
var renderer = getRenderer().renderer;
|
|
56
|
+
var canvas = document.createElement('canvas');
|
|
57
|
+
var canvasContext = canvas.getContext('2d');
|
|
58
|
+
(0, react_hooks_1.act)(function () {
|
|
59
|
+
renderer(canvasContext);
|
|
60
|
+
});
|
|
61
|
+
expect(nodeArc_1.drawTwoArcs).toHaveBeenCalledTimes(1);
|
|
62
|
+
});
|
|
63
|
+
});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const interactionIcon = "\n<svg id=\"123\" width=\"500px\" height=\"500px\" viewBox=\"0 0 50 50\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <circle cx=\"25\" cy=\"25\" r=\"25\" fill=\"#E7EAED\" stroke=\"#E7EAED\" stroke-width=\"0\"/>\n <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M26 26.1458C26.1784 26.3176 26.3127 26.5349 26.3841 26.7791L28.7321 28.1346C28.9712 28.2727 29.0531 28.5785 28.9151 28.8177L28.4151 29.6837C28.277 29.9228 27.9712 30.0048 27.7321 29.8667L25.4564 28.5529C25.313 28.6007 25.1595 28.6266 25 28.6266C24.8405 28.6266 24.687 28.6007 24.5436 28.5529L22.2679 29.8667C22.0288 30.0048 21.723 29.9228 21.5849 29.6837L21.0849 28.8177C20.9469 28.5785 21.0288 28.2727 21.2679 28.1346L23.6159 26.7791C23.6873 26.5349 23.8216 26.3176 24 26.1458V23.8846C24 23.6085 24.2239 23.3846 24.5 23.3846H25.5C25.7761 23.3846 26 23.6085 26 23.8846V26.1458ZM24.8 22.3846C23.1431 22.3846 21.8 21.0415 21.8 19.3846C21.8 17.7278 23.1431 16.3846 24.8 16.3846C26.4569 16.3846 27.8 17.7278 27.8 19.3846C27.8 21.0415 26.4569 22.3846 24.8 22.3846ZM18 34.3846C16.3431 34.3846 15 33.0415 15 31.3846C15 29.7278 16.3431 28.3846 18 28.3846C19.6569 28.3846 21 29.7278 21 31.3846C21 33.0415 19.6569 34.3846 18 34.3846ZM32 34.3846C30.3431 34.3846 29 33.0415 29 31.3846C29 29.7278 30.3431 28.3846 32 28.3846C33.6569 28.3846 35 29.7278 35 31.3846C35 33.0415 33.6569 34.3846 32 34.3846Z\" fill=\"#37474F\"/>\n</svg>\n";
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.interactionIcon = void 0;
|
|
4
|
+
exports.interactionIcon = "\n<svg id=\"123\" width=\"500px\" height=\"500px\" viewBox=\"0 0 50 50\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <circle cx=\"25\" cy=\"25\" r=\"25\" fill=\"#E7EAED\" stroke=\"#E7EAED\" stroke-width=\"0\"/>\n <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M26 26.1458C26.1784 26.3176 26.3127 26.5349 26.3841 26.7791L28.7321 28.1346C28.9712 28.2727 29.0531 28.5785 28.9151 28.8177L28.4151 29.6837C28.277 29.9228 27.9712 30.0048 27.7321 29.8667L25.4564 28.5529C25.313 28.6007 25.1595 28.6266 25 28.6266C24.8405 28.6266 24.687 28.6007 24.5436 28.5529L22.2679 29.8667C22.0288 30.0048 21.723 29.9228 21.5849 29.6837L21.0849 28.8177C20.9469 28.5785 21.0288 28.2727 21.2679 28.1346L23.6159 26.7791C23.6873 26.5349 23.8216 26.3176 24 26.1458V23.8846C24 23.6085 24.2239 23.3846 24.5 23.3846H25.5C25.7761 23.3846 26 23.6085 26 23.8846V26.1458ZM24.8 22.3846C23.1431 22.3846 21.8 21.0415 21.8 19.3846C21.8 17.7278 23.1431 16.3846 24.8 16.3846C26.4569 16.3846 27.8 17.7278 27.8 19.3846C27.8 21.0415 26.4569 22.3846 24.8 22.3846ZM18 34.3846C16.3431 34.3846 15 33.0415 15 31.3846C15 29.7278 16.3431 28.3846 18 28.3846C19.6569 28.3846 21 29.7278 21 31.3846C21 33.0415 19.6569 34.3846 18 34.3846ZM32 34.3846C30.3431 34.3846 29 33.0415 29 31.3846C29 29.7278 30.3431 28.3846 32 28.3846C33.6569 28.3846 35 29.7278 35 31.3846C35 33.0415 33.6569 34.3846 32 34.3846Z\" fill=\"#37474F\"/>\n</svg>\n";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { DataModelGraph } from './DataModelGraph';
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.DataModelGraph = void 0;
|
|
4
|
+
var DataModelGraph_1 = require("./DataModelGraph");
|
|
5
|
+
Object.defineProperty(exports, "DataModelGraph", { enumerable: true, get: function () { return DataModelGraph_1.DataModelGraph; } });
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const useStyles: (props?: any) => import("@mui/styles").ClassNameMap<"wrapper" | "graph" | "rightBottomControls" | "zoomSlider">;
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.useStyles = void 0;
|
|
4
|
+
var styles_1 = require("@mui/styles");
|
|
5
|
+
exports.useStyles = (0, styles_1.makeStyles)({
|
|
6
|
+
wrapper: {
|
|
7
|
+
height: '100%',
|
|
8
|
+
position: 'relative',
|
|
9
|
+
background: 'rgb(245, 245, 245)'
|
|
10
|
+
},
|
|
11
|
+
graph: {
|
|
12
|
+
height: '100%'
|
|
13
|
+
},
|
|
14
|
+
rightBottomControls: {
|
|
15
|
+
position: 'absolute',
|
|
16
|
+
zIndex: 100,
|
|
17
|
+
right: '18px',
|
|
18
|
+
bottom: '16px',
|
|
19
|
+
display: 'flex',
|
|
20
|
+
width: '200px'
|
|
21
|
+
},
|
|
22
|
+
zoomSlider: {
|
|
23
|
+
flexGrow: 1,
|
|
24
|
+
marginRight: '8px'
|
|
25
|
+
}
|
|
26
|
+
});
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.SigmaCustomRenderersContainer = void 0;
|
|
7
|
+
var react_1 = __importDefault(require("react"));
|
|
8
|
+
var useSigmaCustomRenderers_1 = require("../hooks/useSigmaCustomRenderers");
|
|
9
|
+
var SigmaCustomRenderersContext_1 = require("../contexts/SigmaCustomRenderersContext");
|
|
10
|
+
var SigmaCustomRenderersContainer = function (_a) {
|
|
11
|
+
var children = _a.children;
|
|
12
|
+
var sigmaCustomRenderers = (0, useSigmaCustomRenderers_1.useSigmaCustomRenderers)();
|
|
13
|
+
return (react_1.default.createElement(SigmaCustomRenderersContext_1.SigmaCustomRenderersContext.Provider, { value: sigmaCustomRenderers }, children));
|
|
14
|
+
};
|
|
15
|
+
exports.SigmaCustomRenderersContainer = SigmaCustomRenderersContainer;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { SigmaCustomRenderersContainer } from './SigmaCustomRenderersContainer';
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.SigmaCustomRenderersContainer = void 0;
|
|
4
|
+
var SigmaCustomRenderersContainer_1 = require("./SigmaCustomRenderersContainer");
|
|
5
|
+
Object.defineProperty(exports, "SigmaCustomRenderersContainer", { enumerable: true, get: function () { return SigmaCustomRenderersContainer_1.SigmaCustomRenderersContainer; } });
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import '@react-sigma/core/lib/react-sigma.min.css';
|
|
3
|
+
import { GraphContainerSettings } from '../types/graphDataTypes';
|
|
4
|
+
type Props = {
|
|
5
|
+
children?: React.ReactElement;
|
|
6
|
+
initialSettings?: GraphContainerSettings;
|
|
7
|
+
};
|
|
8
|
+
export declare const SigmaGraphContainer: ({ children, initialSettings: initialSettingsProp }: Props) => JSX.Element;
|
|
9
|
+
export {};
|
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
+
if (mod && mod.__esModule) return mod;
|
|
20
|
+
var result = {};
|
|
21
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
+
__setModuleDefault(result, mod);
|
|
23
|
+
return result;
|
|
24
|
+
};
|
|
25
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
26
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
27
|
+
};
|
|
28
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
29
|
+
exports.SigmaGraphContainer = void 0;
|
|
30
|
+
var react_1 = __importStar(require("react"));
|
|
31
|
+
var graphology_1 = require("graphology");
|
|
32
|
+
var ramda_1 = require("ramda");
|
|
33
|
+
var core_1 = require("@react-sigma/core");
|
|
34
|
+
require("@react-sigma/core/lib/react-sigma.min.css");
|
|
35
|
+
var node_1 = require("sigma/rendering/webgl/programs/common/node");
|
|
36
|
+
var edge_1 = require("sigma/rendering/webgl/programs/common/edge");
|
|
37
|
+
var edge_2 = __importDefault(require("sigma/rendering/webgl/programs/edge"));
|
|
38
|
+
var SigmaCustomRenderersContainer_1 = require("../SigmaCustomRenderersContainer");
|
|
39
|
+
var SigmaGraphResizer_1 = require("../SigmaGraphResizer");
|
|
40
|
+
var hover_1 = require("../rendering/canvas/hover");
|
|
41
|
+
var label_1 = require("../rendering/canvas/label");
|
|
42
|
+
var node_dashed_border_1 = require("../rendering/webgl/node.dashed.border");
|
|
43
|
+
var node_image_1 = require("../rendering/webgl/node.image");
|
|
44
|
+
var edge_arrowHead_1 = __importDefault(require("../rendering/webgl/edge.arrowHead"));
|
|
45
|
+
var edge_reversedArrowHead_1 = __importDefault(require("../rendering/webgl/edge.reversedArrowHead"));
|
|
46
|
+
var edge_clamped_1 = __importDefault(require("../rendering/webgl/edge.clamped"));
|
|
47
|
+
var edge_dashed_1 = __importDefault(require("../rendering/webgl/edge.dashed"));
|
|
48
|
+
var SigmaGraphContainer = function (_a) {
|
|
49
|
+
var children = _a.children, initialSettingsProp = _a.initialSettings;
|
|
50
|
+
var initialSettings = (0, react_1.useMemo)(function () {
|
|
51
|
+
return (0, ramda_1.mergeDeepRight)({
|
|
52
|
+
allowInvalidContainer: true,
|
|
53
|
+
defaultNodeType: 'image',
|
|
54
|
+
hoverRenderer: hover_1.drawHover,
|
|
55
|
+
labelRenderer: label_1.drawLabel,
|
|
56
|
+
nodeProgramClasses: {
|
|
57
|
+
image: (0, node_1.createNodeCompoundProgram)([node_image_1.NodeImageProgram, node_dashed_border_1.NodeDashedBorderProgram])
|
|
58
|
+
},
|
|
59
|
+
edgeProgramClasses: {
|
|
60
|
+
line: edge_2.default,
|
|
61
|
+
arrow: (0, edge_1.createEdgeCompoundProgram)([edge_clamped_1.default, edge_arrowHead_1.default]),
|
|
62
|
+
doubleArrow: (0, edge_1.createEdgeCompoundProgram)([
|
|
63
|
+
edge_clamped_1.default,
|
|
64
|
+
edge_arrowHead_1.default,
|
|
65
|
+
edge_reversedArrowHead_1.default
|
|
66
|
+
]),
|
|
67
|
+
dashed: edge_dashed_1.default
|
|
68
|
+
},
|
|
69
|
+
labelFont: 'Roboto',
|
|
70
|
+
labelSize: 13,
|
|
71
|
+
labelColor: {
|
|
72
|
+
color: 'rgba(0, 0, 0, 0.87)',
|
|
73
|
+
attribute: 'labelColor'
|
|
74
|
+
},
|
|
75
|
+
secondaryLabelColor: {
|
|
76
|
+
color: 'rgba(0, 0, 0, 0.54)',
|
|
77
|
+
attribute: 'secondaryLabelColor'
|
|
78
|
+
}
|
|
79
|
+
}, initialSettingsProp || {});
|
|
80
|
+
}, [initialSettingsProp]);
|
|
81
|
+
return (react_1.default.createElement(core_1.SigmaContainer, { graph: graphology_1.MultiGraph, style: { background: 'transparent' }, settings: initialSettings },
|
|
82
|
+
react_1.default.createElement(SigmaCustomRenderersContainer_1.SigmaCustomRenderersContainer, null,
|
|
83
|
+
react_1.default.createElement(SigmaGraphResizer_1.SigmaGraphResizer, null),
|
|
84
|
+
children)));
|
|
85
|
+
};
|
|
86
|
+
exports.SigmaGraphContainer = SigmaGraphContainer;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
var react_1 = __importDefault(require("react"));
|
|
7
|
+
var enzyme_1 = require("enzyme");
|
|
8
|
+
var core_1 = require("@react-sigma/core");
|
|
9
|
+
var graphology_1 = require("graphology");
|
|
10
|
+
var SigmaGraphContainer_1 = require("./SigmaGraphContainer");
|
|
11
|
+
var SigmaCustomRenderersContainer_1 = require("../SigmaCustomRenderersContainer");
|
|
12
|
+
var children = react_1.default.createElement("div", { className: "children" }, "children");
|
|
13
|
+
var setUp = function () { return (0, enzyme_1.shallow)(react_1.default.createElement(SigmaGraphContainer_1.SigmaGraphContainer, null, children)); };
|
|
14
|
+
describe('SigmaGraphContainer behavior', function () {
|
|
15
|
+
it('should render SigmaContainer with passed children', function () {
|
|
16
|
+
var component = setUp();
|
|
17
|
+
expect(component.find(core_1.SigmaContainer)).toHaveLength(1);
|
|
18
|
+
expect(component.find(core_1.SigmaContainer).prop('graph')).toBe(graphology_1.MultiGraph);
|
|
19
|
+
expect(component.find(core_1.SigmaContainer).find(SigmaCustomRenderersContainer_1.SigmaCustomRenderersContainer).find('.children')).toHaveLength(1);
|
|
20
|
+
});
|
|
21
|
+
it('should render SigmaContainer with initialSettings', function () {
|
|
22
|
+
var component = setUp();
|
|
23
|
+
expect(component.find(core_1.SigmaContainer)).toHaveLength(1);
|
|
24
|
+
expect(component.find(core_1.SigmaContainer).prop('settings')).not.toBeUndefined();
|
|
25
|
+
});
|
|
26
|
+
});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { SigmaGraphContainer } from './SigmaGraphContainer';
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.SigmaGraphContainer = void 0;
|
|
4
|
+
var SigmaGraphContainer_1 = require("./SigmaGraphContainer");
|
|
5
|
+
Object.defineProperty(exports, "SigmaGraphContainer", { enumerable: true, get: function () { return SigmaGraphContainer_1.SigmaGraphContainer; } });
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const SigmaGraphResizer: () => JSX.Element;
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
+
if (mod && mod.__esModule) return mod;
|
|
20
|
+
var result = {};
|
|
21
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
+
__setModuleDefault(result, mod);
|
|
23
|
+
return result;
|
|
24
|
+
};
|
|
25
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
26
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
27
|
+
};
|
|
28
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
29
|
+
exports.SigmaGraphResizer = void 0;
|
|
30
|
+
var react_1 = __importStar(require("react"));
|
|
31
|
+
var react_resize_detector_1 = __importDefault(require("react-resize-detector"));
|
|
32
|
+
var core_1 = require("@react-sigma/core");
|
|
33
|
+
var SigmaGraphResizer = function () {
|
|
34
|
+
var sigma = (0, core_1.useSigma)();
|
|
35
|
+
var onResize = (0, react_1.useCallback)(function () {
|
|
36
|
+
sigma.refresh();
|
|
37
|
+
}, [sigma]);
|
|
38
|
+
return react_1.default.createElement(react_resize_detector_1.default, { handleWidth: true, onResize: onResize });
|
|
39
|
+
};
|
|
40
|
+
exports.SigmaGraphResizer = SigmaGraphResizer;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __assign = (this && this.__assign) || function () {
|
|
3
|
+
__assign = Object.assign || function(t) {
|
|
4
|
+
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
5
|
+
s = arguments[i];
|
|
6
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
7
|
+
t[p] = s[p];
|
|
8
|
+
}
|
|
9
|
+
return t;
|
|
10
|
+
};
|
|
11
|
+
return __assign.apply(this, arguments);
|
|
12
|
+
};
|
|
13
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
14
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
var react_1 = __importDefault(require("react"));
|
|
18
|
+
var enzyme_1 = require("enzyme");
|
|
19
|
+
var react_resize_detector_1 = __importDefault(require("react-resize-detector"));
|
|
20
|
+
var core_1 = require("@react-sigma/core");
|
|
21
|
+
var SigmaGraphResizer_1 = require("./SigmaGraphResizer");
|
|
22
|
+
jest.mock('@react-sigma/core', function () { return (__assign(__assign({}, jest.requireActual('@react-sigma/core')), { useSigma: jest.fn().mockReturnValue({
|
|
23
|
+
refresh: jest.fn()
|
|
24
|
+
}) })); });
|
|
25
|
+
var setUp = function () { return (0, enzyme_1.shallow)(react_1.default.createElement(SigmaGraphResizer_1.SigmaGraphResizer, null)); };
|
|
26
|
+
describe('SigmaGraphResizer behavior', function () {
|
|
27
|
+
it('should render ReactResizeDetector', function () {
|
|
28
|
+
var component = setUp();
|
|
29
|
+
expect(component.find(react_resize_detector_1.default)).toHaveLength(1);
|
|
30
|
+
});
|
|
31
|
+
it('should refresh sigma instance on resize', function () {
|
|
32
|
+
var component = setUp();
|
|
33
|
+
expect((0, core_1.useSigma)().refresh).not.toHaveBeenCalled();
|
|
34
|
+
component.find(react_resize_detector_1.default).prop('onResize')();
|
|
35
|
+
expect((0, core_1.useSigma)().refresh).toHaveBeenCalled();
|
|
36
|
+
});
|
|
37
|
+
});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { SigmaGraphResizer } from './SigmaGraphResizer';
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.SigmaGraphResizer = void 0;
|
|
4
|
+
var SigmaGraphResizer_1 = require("./SigmaGraphResizer");
|
|
5
|
+
Object.defineProperty(exports, "SigmaGraphResizer", { enumerable: true, get: function () { return SigmaGraphResizer_1.SigmaGraphResizer; } });
|
|
@@ -0,0 +1,113 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __assign = (this && this.__assign) || function () {
|
|
3
|
+
__assign = Object.assign || function(t) {
|
|
4
|
+
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
5
|
+
s = arguments[i];
|
|
6
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
7
|
+
t[p] = s[p];
|
|
8
|
+
}
|
|
9
|
+
return t;
|
|
10
|
+
};
|
|
11
|
+
return __assign.apply(this, arguments);
|
|
12
|
+
};
|
|
13
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
14
|
+
if (k2 === undefined) k2 = k;
|
|
15
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
16
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
17
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
18
|
+
}
|
|
19
|
+
Object.defineProperty(o, k2, desc);
|
|
20
|
+
}) : (function(o, m, k, k2) {
|
|
21
|
+
if (k2 === undefined) k2 = k;
|
|
22
|
+
o[k2] = m[k];
|
|
23
|
+
}));
|
|
24
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
25
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
26
|
+
}) : function(o, v) {
|
|
27
|
+
o["default"] = v;
|
|
28
|
+
});
|
|
29
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
30
|
+
if (mod && mod.__esModule) return mod;
|
|
31
|
+
var result = {};
|
|
32
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
33
|
+
__setModuleDefault(result, mod);
|
|
34
|
+
return result;
|
|
35
|
+
};
|
|
36
|
+
var __rest = (this && this.__rest) || function (s, e) {
|
|
37
|
+
var t = {};
|
|
38
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
|
|
39
|
+
t[p] = s[p];
|
|
40
|
+
if (s != null && typeof Object.getOwnPropertySymbols === "function")
|
|
41
|
+
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
|
42
|
+
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
|
|
43
|
+
t[p[i]] = s[p[i]];
|
|
44
|
+
}
|
|
45
|
+
return t;
|
|
46
|
+
};
|
|
47
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
48
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
49
|
+
};
|
|
50
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
51
|
+
exports.ZoomSlider = void 0;
|
|
52
|
+
var react_1 = __importStar(require("react"));
|
|
53
|
+
var classnames_1 = __importDefault(require("classnames"));
|
|
54
|
+
var ramda_1 = require("ramda");
|
|
55
|
+
var core_1 = require("@react-sigma/core");
|
|
56
|
+
var Add_1 = __importDefault(require("@mui/icons-material/Add"));
|
|
57
|
+
var Remove_1 = __importDefault(require("@mui/icons-material/Remove"));
|
|
58
|
+
var Slider_1 = __importStar(require("@mui/material/Slider"));
|
|
59
|
+
var IconButton_1 = __importDefault(require("@mui/material/IconButton"));
|
|
60
|
+
var styles_1 = require("./styles");
|
|
61
|
+
var percentsToRatio = function (percent) { return Math.pow(100 / percent, 2); };
|
|
62
|
+
var ratioToPercents = function (ratio) { return 100 / Math.sqrt(ratio); };
|
|
63
|
+
var ZoomSliderThumb = function (props) {
|
|
64
|
+
var children = props.children, other = __rest(props, ["children"]);
|
|
65
|
+
var styles = (0, styles_1.useStyles)();
|
|
66
|
+
return (react_1.default.createElement(Slider_1.SliderThumb, __assign({}, other),
|
|
67
|
+
children,
|
|
68
|
+
react_1.default.createElement(Remove_1.default, { className: (0, classnames_1.default)(styles.icon, styles.thumbIcon) })));
|
|
69
|
+
};
|
|
70
|
+
var ZoomSlider = function (_a) {
|
|
71
|
+
var className = _a.className, max = _a.max, min = _a.min;
|
|
72
|
+
var styles = (0, styles_1.useStyles)();
|
|
73
|
+
var setSettings = (0, core_1.useSetSettings)();
|
|
74
|
+
var registerEvents = (0, core_1.useRegisterEvents)();
|
|
75
|
+
var camera = (0, core_1.useSigma)().getCamera();
|
|
76
|
+
var _b = (0, core_1.useCamera)({ factor: 1.2 }), zoomIn = _b.zoomIn, zoomOut = _b.zoomOut;
|
|
77
|
+
var _c = (0, react_1.useState)((0, ramda_1.clamp)(min, max, ratioToPercents(camera.getState().ratio))), value = _c[0], setValue = _c[1];
|
|
78
|
+
var maxCameraRatio = (0, react_1.useMemo)(function () { return (min > 0 ? percentsToRatio(min) : null); }, [min]);
|
|
79
|
+
var minCameraRatio = (0, react_1.useMemo)(function () { return (max > 0 ? percentsToRatio(max) : null); }, [max]);
|
|
80
|
+
(0, react_1.useEffect)(function () {
|
|
81
|
+
setSettings({
|
|
82
|
+
maxCameraRatio: maxCameraRatio,
|
|
83
|
+
minCameraRatio: minCameraRatio
|
|
84
|
+
});
|
|
85
|
+
return function () {
|
|
86
|
+
setSettings({
|
|
87
|
+
maxCameraRatio: null,
|
|
88
|
+
minCameraRatio: null
|
|
89
|
+
});
|
|
90
|
+
};
|
|
91
|
+
}, [setSettings, minCameraRatio, maxCameraRatio]);
|
|
92
|
+
(0, react_1.useEffect)(function () {
|
|
93
|
+
registerEvents({
|
|
94
|
+
updated: function (event) { return setValue(ratioToPercents(event.ratio)); }
|
|
95
|
+
});
|
|
96
|
+
}, [registerEvents]);
|
|
97
|
+
var handleChange = function (event, newValue) {
|
|
98
|
+
return camera.setState({ ratio: camera.getBoundedRatio(percentsToRatio(newValue)) });
|
|
99
|
+
};
|
|
100
|
+
return (react_1.default.createElement("div", { className: (0, classnames_1.default)(styles.container, className) },
|
|
101
|
+
react_1.default.createElement(IconButton_1.default, { className: styles.minButton, onClick: function () { return zoomOut(); }, size: "large" },
|
|
102
|
+
react_1.default.createElement(Remove_1.default, { className: styles.icon })),
|
|
103
|
+
react_1.default.createElement(Slider_1.default, { slots: {
|
|
104
|
+
thumb: ZoomSliderThumb
|
|
105
|
+
}, slotProps: {
|
|
106
|
+
thumb: {
|
|
107
|
+
className: styles.thumb
|
|
108
|
+
}
|
|
109
|
+
}, classes: { root: styles.sliderRoot, rail: styles.rail }, track: false, value: value, min: min, max: max, onChange: handleChange }),
|
|
110
|
+
react_1.default.createElement(IconButton_1.default, { className: styles.maxButton, onClick: function () { return zoomIn(); }, size: "large" },
|
|
111
|
+
react_1.default.createElement(Add_1.default, { className: styles.icon }))));
|
|
112
|
+
};
|
|
113
|
+
exports.ZoomSlider = ZoomSlider;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __assign = (this && this.__assign) || function () {
|
|
3
|
+
__assign = Object.assign || function(t) {
|
|
4
|
+
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
5
|
+
s = arguments[i];
|
|
6
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
7
|
+
t[p] = s[p];
|
|
8
|
+
}
|
|
9
|
+
return t;
|
|
10
|
+
};
|
|
11
|
+
return __assign.apply(this, arguments);
|
|
12
|
+
};
|
|
13
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
14
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
var react_1 = __importDefault(require("react"));
|
|
18
|
+
var enzyme_1 = require("enzyme");
|
|
19
|
+
var test_utils_1 = require("react-dom/test-utils");
|
|
20
|
+
var core_1 = require("@react-sigma/core");
|
|
21
|
+
var ZoomSlider_1 = require("./ZoomSlider");
|
|
22
|
+
var IconButton_1 = __importDefault(require("@mui/material/IconButton"));
|
|
23
|
+
var Add_1 = __importDefault(require("@mui/icons-material/Add"));
|
|
24
|
+
var Remove_1 = __importDefault(require("@mui/icons-material/Remove"));
|
|
25
|
+
var Slider_1 = __importDefault(require("@mui/material/Slider"));
|
|
26
|
+
jest.mock('@react-sigma/core', function () { return (__assign(__assign({}, jest.requireActual('@react-sigma/core')), { useCamera: jest.fn().mockReturnValue({
|
|
27
|
+
zoomOut: jest.fn(),
|
|
28
|
+
zoomIn: jest.fn()
|
|
29
|
+
}), useSigma: jest.fn().mockReturnValue({
|
|
30
|
+
getCamera: function () { return ({
|
|
31
|
+
setState: function () { },
|
|
32
|
+
getState: function () { return ({ ratio: 1 }); },
|
|
33
|
+
getBoundedRatio: jest.fn()
|
|
34
|
+
}); }
|
|
35
|
+
}), useSetSettings: jest.fn().mockReturnValue(jest.fn()), useRegisterEvents: jest.fn().mockReturnValue(jest.fn()) })); });
|
|
36
|
+
describe('ZoomSlider tests', function () {
|
|
37
|
+
it('should render main parts', function () {
|
|
38
|
+
var component = (0, enzyme_1.shallow)(react_1.default.createElement(ZoomSlider_1.ZoomSlider, { className: "testClass", min: 30, max: 300 }));
|
|
39
|
+
expect(component.find(IconButton_1.default)).toHaveLength(2);
|
|
40
|
+
expect(component.find(Add_1.default)).toHaveLength(1);
|
|
41
|
+
expect(component.find(Remove_1.default)).toHaveLength(1);
|
|
42
|
+
var slider = component.find(Slider_1.default);
|
|
43
|
+
expect(slider).toHaveLength(1);
|
|
44
|
+
expect(slider.props()).toEqual({
|
|
45
|
+
slots: { thumb: expect.any(Function) },
|
|
46
|
+
classes: { root: 'sliderRoot', rail: 'rail' },
|
|
47
|
+
slotProps: { thumb: { className: 'thumb' } },
|
|
48
|
+
track: false,
|
|
49
|
+
value: 100,
|
|
50
|
+
min: 30,
|
|
51
|
+
max: 300,
|
|
52
|
+
onChange: expect.any(Function)
|
|
53
|
+
});
|
|
54
|
+
});
|
|
55
|
+
it('should call registerEvents and setSettings', function () {
|
|
56
|
+
var setSettings = (0, core_1.useSetSettings)();
|
|
57
|
+
var registerEvents = (0, core_1.useRegisterEvents)();
|
|
58
|
+
(0, enzyme_1.mount)(react_1.default.createElement(ZoomSlider_1.ZoomSlider, { className: "testClass", min: 50, max: 200 }));
|
|
59
|
+
expect(setSettings).toHaveBeenCalledWith({
|
|
60
|
+
maxCameraRatio: 4,
|
|
61
|
+
minCameraRatio: 0.25
|
|
62
|
+
});
|
|
63
|
+
expect(registerEvents).toHaveBeenCalledWith({
|
|
64
|
+
updated: expect.any(Function)
|
|
65
|
+
});
|
|
66
|
+
});
|
|
67
|
+
it('should call zoomOut on min button click', function () {
|
|
68
|
+
var component = (0, enzyme_1.shallow)(react_1.default.createElement(ZoomSlider_1.ZoomSlider, { className: "testClass", min: 30, max: 300 }));
|
|
69
|
+
var zoomOut = (0, core_1.useCamera)().zoomOut;
|
|
70
|
+
(0, test_utils_1.act)(function () {
|
|
71
|
+
component.find(IconButton_1.default).at(0).simulate('click');
|
|
72
|
+
});
|
|
73
|
+
expect(zoomOut).toHaveBeenCalled();
|
|
74
|
+
});
|
|
75
|
+
it('should call zoomIn on max button click', function () {
|
|
76
|
+
var component = (0, enzyme_1.shallow)(react_1.default.createElement(ZoomSlider_1.ZoomSlider, { className: "testClass", min: 30, max: 300 }));
|
|
77
|
+
var zoomIn = (0, core_1.useCamera)().zoomIn;
|
|
78
|
+
(0, test_utils_1.act)(function () {
|
|
79
|
+
component.find(IconButton_1.default).at(1).simulate('click');
|
|
80
|
+
});
|
|
81
|
+
expect(zoomIn).toHaveBeenCalled();
|
|
82
|
+
});
|
|
83
|
+
});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { ZoomSlider } from './ZoomSlider';
|