From f4efdda98544d608cd210414827c259e9b7ae13a Mon Sep 17 00:00:00 2001 From: Qijia Liu Date: Thu, 5 Sep 2024 16:53:49 +0800 Subject: [PATCH] String and List option --- src/BasicConfig.vue | 16 +++++- src/TooltipButton.vue | 22 +++++++++ src/UpButton.vue | 14 ++++++ src/UpIcon.vue | 9 ++++ src/option/ListOption.vue | 98 +++++++++++++++++++++++++++++++++++++ src/option/StringOption.vue | 15 ++++++ 6 files changed, 173 insertions(+), 1 deletion(-) create mode 100644 src/TooltipButton.vue create mode 100644 src/UpButton.vue create mode 100644 src/UpIcon.vue create mode 100644 src/option/ListOption.vue create mode 100644 src/option/StringOption.vue diff --git a/src/BasicConfig.vue b/src/BasicConfig.vue index 85a5be9..49ba138 100644 --- a/src/BasicConfig.vue +++ b/src/BasicConfig.vue @@ -2,10 +2,13 @@ import { computed } from 'vue' import { NAlert, NForm, NFormItem } from 'naive-ui' import type { Config } from 'fcitx5-js' +import TooltipButton from './TooltipButton.vue' import IntegerOption from './option/IntegerOption.vue' import BooleanOption from './option/BooleanOption.vue' import EnumOption from './option/EnumOption.vue' import KeyOption from './option/KeyOption.vue' +import StringOption from './option/StringOption.vue' +import ListOption from './option/ListOption.vue' import GroupOption from './option/GroupOption.vue' import UnknownOption from './option/UnknownOption.vue' import { isMobile } from './util' @@ -29,7 +32,12 @@ function toComponent(child: { Type: string, Children: any[] | null }) { return EnumOption case 'Key': return KeyOption + case 'String': + return StringOption default: { + if (child.Type.startsWith('List|')) { + return ListOption + } if (child.Children) { return GroupOption } @@ -51,8 +59,14 @@ function toComponent(child: { Type: string, Children: any[] | null }) { + +import { NButton, NTooltip } from 'naive-ui' + +defineProps<{ + text: string +}>() + + + diff --git a/src/UpButton.vue b/src/UpButton.vue new file mode 100644 index 0000000..030b75b --- /dev/null +++ b/src/UpButton.vue @@ -0,0 +1,14 @@ + + + diff --git a/src/UpIcon.vue b/src/UpIcon.vue new file mode 100644 index 0000000..5c21a9e --- /dev/null +++ b/src/UpIcon.vue @@ -0,0 +1,9 @@ + + + diff --git a/src/option/ListOption.vue b/src/option/ListOption.vue new file mode 100644 index 0000000..1a59782 --- /dev/null +++ b/src/option/ListOption.vue @@ -0,0 +1,98 @@ + + + diff --git a/src/option/StringOption.vue b/src/option/StringOption.vue new file mode 100644 index 0000000..34c7357 --- /dev/null +++ b/src/option/StringOption.vue @@ -0,0 +1,15 @@ + + +