fix(editor): Showing string numbers and null properly in JSON view (#4513)

* fix(editor): update `vue-json-pretty` package

* fix(editor): JSON view show string numbers and null properly

* fix(editor): testing if RunDataJson.vue display the values according to its type

* chore(editor): resolve package-lock.json conflict

* fix(editor): using @pinia/testing library to mock pinia store

* chore: fix package-lock.json after merge conflicts
This commit is contained in:
Csaba Tuncsik
2022-11-07 12:27:02 +01:00
committed by GitHub
parent 5e0ded4a84
commit f6b85f4a69
6 changed files with 123 additions and 24 deletions

View File

@@ -62,7 +62,7 @@ import VueJsonPretty from 'vue-json-pretty';
import { LOCAL_STORAGE_MAPPING_FLAG } from '@/constants';
import { IDataObject, INodeExecutionData } from "n8n-workflow";
import Draggable from '@/components/Draggable.vue';
import { convertPath, executionDataToJson, isString, isStringNumber } from "@/components/helpers";
import { convertPath, executionDataToJson, isString } from "@/components/helpers";
import { INodeUi } from "@/Interface";
import { shorten } from './helpers';
import { externalHooks } from "@/components/mixins/externalHooks";
@@ -143,7 +143,7 @@ export default mixins(externalHooks).extend({
useNDVStore,
),
jsonData(): IDataObject[] {
return executionDataToJson(this.inputData as INodeExecutionData[]);
return executionDataToJson(this.inputData);
},
showHint(): boolean {
return (
@@ -195,8 +195,8 @@ export default mixins(externalHooks).extend({
this.$telemetry.track('User dragged data for mapping', telemetryPayload);
}, 1000); // ensure dest data gets set if drop
},
getContent(value: string): string {
return isString(value) && !isStringNumber(value) ? `"${ value }"` : value;
getContent(value: unknown): string {
return isString(value) ? `"${ value }"` : JSON.stringify(value);
},
},
});