Skip to content

Commit

Permalink
feat: add EffectOperator
Browse files Browse the repository at this point in the history
  • Loading branch information
everbrez committed Jan 14, 2024
1 parent 1cd43f7 commit bfed0c7
Show file tree
Hide file tree
Showing 7 changed files with 44 additions and 51 deletions.
46 changes: 0 additions & 46 deletions packages/flow/src/Diagrams/Operators/EffectOperator/index.tsx

This file was deleted.

Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
import { type Node } from 'reactflow';
import { type MetaOperator } from '../Operator';
import { EndPoint, type IEffectOperatorData } from '../types';
import { TransformOperator } from './TransformOperator';

export class EffectOperator
extends TransformOperator
implements MetaOperator<IEffectOperatorData>
{
constructor() {
super();
this.defaultOperatorData.operatorName = 'Effect';
this.defaultOperatorData.operatorType = 'EffectOperator';
}

create(): Node<IEffectOperatorData> {
const node = super.create();
const newNode = this.updateData(node, {
endPointOptions: {
endPointList: [
new EndPoint({
type: 'target',
hint: 'input',
label: 'input',
}),
],
},
});

return newNode;
}

getInitCustomCode(): string {
return 'module.exports = function transform(input) {\n\t\n}';
}

nodeColor?: string | undefined = '#F3F8FF';
}
Original file line number Diff line number Diff line change
Expand Up @@ -88,7 +88,7 @@ export class TransformOperator
}

getInitCustomCode() {
return 'module.exports = function main(input) {\n\treturn input;\n}';
return 'module.exports = function transform(input) {\n\treturn input;\n}';
}

renderCustomLabel(currentNode: NodeProps<ITranformOperatorData>) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ import { Editor, type IEditorRefType } from '../../../components/Editor';
import { type ITranformOperatorData } from '../../types';
import { useDiagramsActions } from '../../../State/DiagramsProvider';
import { getOperatorFromNode } from '../../OperatorMap';
import { type TransformOperator } from '..';
import { type TransformOperator } from '../TransformOperator';

export function CustomLabel(props: { node: NodeProps<ITranformOperatorData> }) {
const { node } = props;
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
export { TransformOperator } from './TransformOperator';
export { EffectOperator } from './EffectOperator';
3 changes: 1 addition & 2 deletions packages/flow/src/Diagrams/Operators/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,7 @@ import { OutputOperator } from './OutputOperator';
import { SumOperator } from './SumOperator';
import { CustomOperator } from './CustomOperator';
import { CombineOperator } from './CombineOperator';
import { TransformOperator } from './TransformOperator';
import { EffectOperator } from './EffectOperator';
import { TransformOperator, EffectOperator } from './TransformOperator';

import { registerOperators } from './OperatorMap';

Expand Down
2 changes: 1 addition & 1 deletion packages/flow/src/Diagrams/Operators/types/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -140,6 +140,6 @@ export interface ITranformOperatorData<

export interface IEffectOperatorData<
NodeOptions extends Record<string, any> = Record<string, any>,
> extends IMetaOperatorData<NodeOptions> {
> extends ITranformOperatorData<NodeOptions> {
// noop
}

0 comments on commit bfed0c7

Please sign in to comment.