diff --git a/packages/nc-gui/components/cell/MultiSelect.vue b/packages/nc-gui/components/cell/MultiSelect.vue index 508cb7509e..d02db8decc 100644 --- a/packages/nc-gui/components/cell/MultiSelect.vue +++ b/packages/nc-gui/components/cell/MultiSelect.vue @@ -132,9 +132,13 @@ const vModel = computed({ const selectedTitles = computed(() => modelValue - ? typeof modelValue === 'string' - ? isMysql(column.value.source_id) - ? modelValue.split(',').sort((a, b) => { + ? Array.isArray(modelValue) + ? modelValue + : isMysql(column.value.source_id) + ? modelValue + .toString() + .split(',') + .sort((a, b) => { const opa = options.value.find((el) => el.title === a) const opb = options.value.find((el) => el.title === b) if (opa && opb) { @@ -142,8 +146,7 @@ const selectedTitles = computed(() => } return 0 }) - : modelValue.split(',') - : modelValue + : modelValue.toString().split(',') : [], ) diff --git a/packages/nc-gui/components/smartsheet/column/SelectOptions.vue b/packages/nc-gui/components/smartsheet/column/SelectOptions.vue index ade13be2f2..904dee1c24 100644 --- a/packages/nc-gui/components/smartsheet/column/SelectOptions.vue +++ b/packages/nc-gui/components/smartsheet/column/SelectOptions.vue @@ -113,7 +113,7 @@ onMounted(() => { op.title = op.title.replace(/^'/, '').replace(/'$/, '') } - if (vModel.value.cdf) { + if (vModel.value.cdf && typeof vModel.value.cdf === 'string') { const fndDefaultOption = options.value.find((el) => el.title === vModel.value.cdf) if (!fndDefaultOption) { vModel.value.cdf = vModel.value.cdf.replace(/^'/, '').replace(/'$/, '') @@ -249,7 +249,7 @@ const undoRemoveRenderedOption = (index: number) => { // Removes the Select Option from cdf if the option is removed watch(vModel.value, (next) => { - const cdfs = (next.cdf ?? '').split(',') + const cdfs = (next.cdf ?? '').toString().split(',') const values = (next.colOptions.options ?? []).map((col) => { return col.title.replace(/^'/, '').replace(/'$/, '') }) diff --git a/packages/nocodb-sdk/src/lib/sqlUi/MysqlUi.ts b/packages/nocodb-sdk/src/lib/sqlUi/MysqlUi.ts index d8ac043d45..b6c5ca0199 100644 --- a/packages/nocodb-sdk/src/lib/sqlUi/MysqlUi.ts +++ b/packages/nocodb-sdk/src/lib/sqlUi/MysqlUi.ts @@ -987,7 +987,7 @@ export class MysqlUi { colProp.dt = 'set'; if ( col.colOptions?.options.length > 64 || - col.dtxp?.split(',').length > 64 + col.dtxp?.toString?.()?.split(',').length > 64 ) { colProp.dt = 'text'; }