Vous ne pouvez pas sélectionner plus de 25 sujets Les noms de sujets doivent commencer par une lettre ou un nombre, peuvent contenir des tirets ('-') et peuvent comporter jusqu'à 35 caractères.

index.tsx 1.3KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
  1. import classNames from 'classnames';
  2. import { Handle, NodeProps, Position } from 'reactflow';
  3. import { Space } from 'antd';
  4. import { Operator } from '../../constant';
  5. import OperatorIcon from '../../operator-icon';
  6. import styles from './index.less';
  7. export function TextUpdaterNode({
  8. data,
  9. isConnectable = true,
  10. selected,
  11. }: NodeProps<{ label: string }>) {
  12. return (
  13. <section
  14. className={classNames(styles.textUpdaterNode, {
  15. [styles.selectedNode]: selected,
  16. })}
  17. >
  18. <Handle
  19. id="c"
  20. type="source"
  21. position={Position.Left}
  22. isConnectable={isConnectable}
  23. className={styles.handle}
  24. >
  25. {/* <PlusCircleOutlined style={{ fontSize: 10 }} /> */}
  26. </Handle>
  27. <Handle type="source" position={Position.Top} id="d" isConnectable />
  28. <Handle
  29. type="source"
  30. position={Position.Right}
  31. isConnectable={isConnectable}
  32. className={styles.handle}
  33. id="b"
  34. >
  35. {/* <PlusCircleOutlined style={{ fontSize: 10 }} /> */}
  36. </Handle>
  37. <Handle type="source" position={Position.Bottom} id="a" isConnectable />
  38. <div>
  39. <Space size={4}>
  40. <OperatorIcon
  41. name={data.label as Operator}
  42. fontSize={12}
  43. ></OperatorIcon>
  44. {data.label}
  45. </Space>
  46. </div>
  47. </section>
  48. );
  49. }