Skip to content
Snippets Groups Projects

Resolve "Support time formats in json schema"

Merged Daniel Göbel requested to merge feature/183-support-time-formats-in-json-schema into main
6 files
+ 625
534
Compare changes
  • Side-by-side
  • Inline
Files
6
@@ -8,6 +8,7 @@ import ParameterFileInput from "@/components/parameter-schema/form-mode/Paramete
import ParameterStringInput from "@/components/parameter-schema/form-mode/ParameterStringInput.vue";
import type { SizeModifierType, ExtendedColors } from "@/types/PropTypes";
import ParameterMappingInput from "@/components/parameter-schema/form-mode/ParameterMappingInput.vue";
import ParameterTimeInput from "@/components/parameter-schema/form-mode/ParameterTimeInput.vue";
const model = defineModel({
required: true,
@@ -35,6 +36,25 @@ const parameterType = computed<string>(
);
const elemId = computed<string>(() => props.id ?? randomIDSuffix);
const parameterFormat = computed<string | undefined>(
() => props.parameter["format"],
);
const fileParameter = computed<boolean>(() => {
return (
parameterFormat.value != undefined &&
(parameterFormat.value === "path" ||
parameterFormat.value === "file-path" ||
parameterFormat.value === "directory-path")
);
});
const timeParameter = computed<boolean>(() => {
return (
parameterFormat.value != undefined &&
(parameterFormat.value === "date" ||
parameterFormat.value === "date-time" ||
parameterFormat.value === "time")
);
});
</script>
<template>
@@ -93,7 +113,7 @@ const elemId = computed<string>(() => props.id ?? randomIDSuffix);
@switch-to-raw="rawInput = true"
/>
<parameter-file-input
v-else-if="parameter['format'] && !rawInput && !forceRawFile"
v-else-if="fileParameter && !rawInput && !forceRawFile"
:id="elemId"
v-model="model"
:required="required"
@@ -104,6 +124,16 @@ const elemId = computed<string>(() => props.id ?? randomIDSuffix);
:custom-validity="customValidity"
@switch-to-raw="rawInput = true"
/>
<parameter-time-input
v-else-if="timeParameter"
:id="elemId"
v-model="model"
:parameter="parameter"
:required="required"
:size-modifier="sizeModifier"
:border="border"
:custom-validity="customValidity"
/>
<parameter-string-input
v-else
:id="elemId"
Loading