fix json editor lint

This commit is contained in:
Michael Genson 2025-06-18 19:45:55 +00:00
commit a7d330d062

View file

@ -1,6 +1,6 @@
<template> <template>
<JsonEditorVue <JsonEditorVue
:modelValue="modelValue" :model-value="modelValue"
v-bind="$attrs" v-bind="$attrs"
:style="{ height }" :style="{ height }"
:stringified="false" :stringified="false"
@ -8,44 +8,50 @@
/> />
</template> </template>
<script setup lang="ts"> <script lang="ts">
import { defineProps, defineEmits } from 'vue' import { defineComponent } from "vue";
import JsonEditorVue from 'json-editor-vue' import JsonEditorVue from "json-editor-vue";
const props = defineProps({ export default defineComponent({
modelValue: { name: "RecipeJsonEditor",
type: Object, components: { JsonEditorVue },
default: () => ({}), props: {
modelValue: {
type: Object,
default: () => ({}),
},
height: {
type: String,
default: "1500px",
},
}, },
height: { emits: ["update:modelValue"],
type: String, setup(_, { emit }) {
default: '1500px', function parseEvent(event: any): object {
if (!event) {
return {};
}
try {
if (event.json) {
return event.json;
}
else if (event.text) {
return JSON.parse(event.text);
}
else {
return event;
}
}
catch {
return {};
}
}
function onChange(event: any) {
emit("update:modelValue", parseEvent(event));
}
return {
onChange,
};
}, },
}) });
const emit = defineEmits(['update:modelValue'])
function parseEvent(event: any): object {
if (!event) {
return {};
}
try {
if (event.json) {
return event.json;
}
else if (event.text) {
return JSON.parse(event.text);
}
else {
return event;
}
} catch {
return {};
}
}
function onChange(event: any) {
emit('update:modelValue', parseEvent(event));
}
</script> </script>