123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263 |
- /* eslint-disable @typescript-eslint/camelcase */
- import React from 'react';
- import { AnnotationType } from '../../constants/type';
- import AnnotationSelector from '../AnnotationSelector';
- import {
- Markup, Popper,
- } from './styled';
- type Props = AnnotationType & {
- isCovered: boolean;
- isCollapse: boolean;
- mousePosition: Record<string, any>;
- onUpdate: (data: any) => void;
- onDelete: () => void;
- scale: number;
- };
- const Annotation: React.FunctionComponent<Props> = ({
- obj_type,
- obj_attr,
- isCovered,
- mousePosition,
- isCollapse,
- onUpdate,
- onDelete,
- scale,
- }: any) => {
- const {
- page, position, bdcolor, transparency,
- } = obj_attr;
- return (
- <>
- {
- position.map((ele: any, index: number) => (
- <Markup
- key={`block_${page + index}`}
- position={ele}
- scale={scale}
- bdcolor={bdcolor}
- opacity={transparency}
- markupType={obj_type}
- isCovered={isCovered}
- />
- ))
- }
- {
- !isCollapse ? (
- <Popper position={mousePosition}>
- <AnnotationSelector
- onUpdate={onUpdate}
- onDelete={onDelete}
- />
- </Popper>
- ) : ''
- }
- </>
- );
- };
- export default Annotation;
|