diff --git a/ui/src/components/code/segments/Task.vue b/ui/src/components/code/segments/Task.vue
index d106dcc0c95..59a4d95077e 100644
--- a/ui/src/components/code/segments/Task.vue
+++ b/ui/src/components/code/segments/Task.vue
@@ -10,22 +10,19 @@
:is="lastBreadcumb.component.type"
v-bind="lastBreadcumb.component.props"
v-on="lastBreadcumb.component.listeners"
+ :model-value="lastBreadcumb.component.props.modelValue"
@update:model-value="validateTask"
/>
-
+
+
+
+
diff --git a/ui/src/components/flows/tasks/OneOfContent.vue b/ui/src/components/flows/tasks/OneOfContent.vue
new file mode 100644
index 00000000000..b60ec313c6a
--- /dev/null
+++ b/ui/src/components/flows/tasks/OneOfContent.vue
@@ -0,0 +1,97 @@
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/ui/src/components/flows/tasks/TaskOneOf.vue b/ui/src/components/flows/tasks/TaskOneOf.vue
index 07eedcdce48..2a6cb2612f3 100644
--- a/ui/src/components/flows/tasks/TaskOneOf.vue
+++ b/ui/src/components/flows/tasks/TaskOneOf.vue
@@ -1,114 +1,48 @@
-
+
-
-
-
-
-
-
- {{ root }}
-
-
-
-
-
- One of
-
-
-
-
-
-
-
-
- {
+ $store.commit('code/addBreadcrumbs', {
+ breadcrumb: {
+ label: root,
+ to: {},
+ component: h(OneOfContent, {
+ modelValue,
+ schema,
+ definitions,
+ 'onUpdate:modelValue': onInput,
+ }),
+ },
+ position:
+ breadcrumbs.length === 2
+ ? 2
+ : breadcrumbs.length,
+ });
+ }
+ "
/>
-
-
-
- {{ $t("save") }}
-
-
+