Du kannst nicht mehr als 25 Themen auswählen Themen müssen mit entweder einem Buchstaben oder einer Ziffer beginnen. Sie können Bindestriche („-“) enthalten und bis zu 35 Zeichen lang sein.

invoke-node.tsx 1.4KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253
  1. import { Flex } from 'antd';
  2. import classNames from 'classnames';
  3. import { get } from 'lodash';
  4. import { useTranslation } from 'react-i18next';
  5. import { Handle, NodeProps, Position } from 'reactflow';
  6. import { NodeData } from '../../interface';
  7. import { LeftHandleStyle, RightHandleStyle } from './handle-icon';
  8. import styles from './index.less';
  9. import NodeHeader from './node-header';
  10. export function InvokeNode({
  11. id,
  12. data,
  13. isConnectable = true,
  14. selected,
  15. }: NodeProps<NodeData>) {
  16. const { t } = useTranslation();
  17. const url = get(data, 'form.url');
  18. return (
  19. <section
  20. className={classNames(styles.ragNode, {
  21. [styles.selectedNode]: selected,
  22. })}
  23. >
  24. <Handle
  25. id="c"
  26. type="source"
  27. position={Position.Left}
  28. isConnectable={isConnectable}
  29. className={styles.handle}
  30. style={LeftHandleStyle}
  31. ></Handle>
  32. <Handle
  33. type="source"
  34. position={Position.Right}
  35. isConnectable={isConnectable}
  36. className={styles.handle}
  37. id="b"
  38. style={RightHandleStyle}
  39. ></Handle>
  40. <NodeHeader
  41. id={id}
  42. name={data.name}
  43. label={data.label}
  44. className={styles.nodeHeader}
  45. ></NodeHeader>
  46. <Flex vertical>
  47. <div>{t('flow.url')}</div>
  48. <div className={styles.nodeText}>{url}</div>
  49. </Flex>
  50. </section>
  51. );
  52. }