diff --git a/frontend/src/components/SuiteInputListSelector.vue b/frontend/src/components/SuiteInputListSelector.vue index 97f20e5df0..eda3b4879d 100644 --- a/frontend/src/components/SuiteInputListSelector.vue +++ b/frontend/src/components/SuiteInputListSelector.vue @@ -4,7 +4,7 @@ - {{ input.name }}: {{ input.type }} = {{ test.args[index].defaultValue }} + {{ input.name }}: {{ input.type }} = {{ test.args[index].defaultValue ?? 'None' }} + + + + + add + CREATE NEW SLICING FUNCTION + + + + @@ -167,6 +177,8 @@ import CodeSnippet from "@/components/CodeSnippet.vue"; import IEditorOptions = editor.IEditorOptions; import mixpanel from "mixpanel-browser"; import { anonymize } from "@/utils"; +import { $vfm } from 'vue-final-modal'; +import CreateSliceCatalogModal from "./modals/CreateSliceCatalogModal.vue"; let props = defineProps<{ projectId: number, @@ -277,6 +289,20 @@ const inputType = computed(() => chain(selected.value?.args ?? []) const doc = computed(() => extractArgumentDocumentation(selected.value)); +function openSliceModal() { + $vfm.show({ + component: CreateSliceCatalogModal, + bind: { + projectId: props.projectId, + }, + on: { + created: (uuid) => { + selected.value = slicingFunctions.value.find(t => t.uuid === uuid); + } + } + }) +} + @@ -361,4 +387,10 @@ const doc = computed(() => extractArgumentDocumentation(selected.value)); .list-func-name { font-weight: 500; } + +.create-slice-item { + text-align: center; + font-size: 1.125rem; + white-space: break-spaces; +} diff --git a/frontend/src/views/main/project/modals/CreateSliceCatalogModal.vue b/frontend/src/views/main/project/modals/CreateSliceCatalogModal.vue new file mode 100644 index 0000000000..eb8d71202d --- /dev/null +++ b/frontend/src/views/main/project/modals/CreateSliceCatalogModal.vue @@ -0,0 +1,111 @@ + + + + +