From 23b55b02c254c18ea20eaaf906e13bca87324eb9 Mon Sep 17 00:00:00 2001 From: Wing-Kam Wong Date: Fri, 17 Feb 2023 16:09:25 +0800 Subject: [PATCH] feat(nc-gui): include fieldLengthValidator --- packages/nc-gui/components/template/Editor.vue | 7 +++++-- packages/nc-gui/composables/useColumnCreateStore.ts | 4 +++- 2 files changed, 8 insertions(+), 3 deletions(-) diff --git a/packages/nc-gui/components/template/Editor.vue b/packages/nc-gui/components/template/Editor.vue index 4b7a1a7d96..3d44a13a73 100644 --- a/packages/nc-gui/components/template/Editor.vue +++ b/packages/nc-gui/components/template/Editor.vue @@ -12,8 +12,8 @@ import { computed, createEventHook, extractSdkResponseErrorMsg, - fieldRequiredValidator, fieldLengthValidator, + fieldRequiredValidator, getDateFormat, getDateTimeFormat, getUIDTIcon, @@ -116,7 +116,10 @@ const validators = computed(() => hasSelectColumn.value[tableIdx] = false table.columns?.forEach((column, columnIdx) => { - acc[`tables.${tableIdx}.columns.${columnIdx}.column_name`] = [fieldRequiredValidator(), fieldLengthValidator()] + acc[`tables.${tableIdx}.columns.${columnIdx}.column_name`] = [ + fieldRequiredValidator(), + fieldLengthValidator(project.value?.bases?.[0].type || ClientType.MYSQL), + ] acc[`tables.${tableIdx}.columns.${columnIdx}.uidt`] = [fieldRequiredValidator()] if (isSelect(column)) { hasSelectColumn.value[tableIdx] = true diff --git a/packages/nc-gui/composables/useColumnCreateStore.ts b/packages/nc-gui/composables/useColumnCreateStore.ts index 4a23f1e013..d1b5ebb68b 100644 --- a/packages/nc-gui/composables/useColumnCreateStore.ts +++ b/packages/nc-gui/composables/useColumnCreateStore.ts @@ -27,7 +27,8 @@ interface ValidationsObj { const [useProvideColumnCreateStore, useColumnCreateStore] = createInjectionState( (meta: Ref, column: Ref) => { - const { sqlUis, isMysql: isMysqlFunc, isPg: isPgFunc, isMssql: isMssqlFunc } = useProject() + const { project, sqlUis, isMysql: isMysqlFunc, isPg: isPgFunc, isMssql: isMssqlFunc } = useProject() + const { $api } = useNuxtApp() const { getMeta } = useMetas() @@ -93,6 +94,7 @@ const [useProvideColumnCreateStore, useColumnCreateStore] = createInjectionState }) }, }, + fieldLengthValidator(project.value?.bases?.[0].type || ClientType.MYSQL), ], uidt: [ {