feat(editor): Add mapping support for data paths (#5191)

* feat: add data path flag

* chore: update types

* feat: use path for data

* feat: add support for multiple values

* fix: handle if not prev node

* fix: update node

* fix: handle multi part path

* feat: add support for multiple vals for field

* feat: add support for table transforms

* feat: use dot notation

* feat: fix bug where brackets removed

* fix: handle dots, fix unit tests

* test: update snapshot

* test: fix tests

* test: add test for edge case
This commit is contained in:
Mutasem Aldmour
2023-01-30 14:42:08 +03:00
committed by GitHub
parent 5b9c650e55
commit 6092f6c41e
14 changed files with 679 additions and 66 deletions

View File

@@ -2,6 +2,7 @@
import { computed } from 'vue';
import { INodeUi, Schema } from '@/Interface';
import { checkExhaustive, shorten } from '@/utils';
import { getMappedExpression } from '@/utils/mappingUtils';
type Props = {
schema: Schema;
@@ -35,7 +36,12 @@ const text = computed(() =>
);
const getJsonParameterPath = (path: string): string =>
`{{ ${props.distanceFromActive === 1 ? '$json' : `$node["${props.node!.name}"].json`}${path} }}`;
getMappedExpression({
nodeName: props.node!.name,
distanceFromActive: props.distanceFromActive,
path,
});
const transitionDelay = (i: number) => `${i * 0.033}s`;
const getIconBySchemaType = (type: Schema['type']): string => {