48 fix missing names in calendar module editor

This commit is contained in:
survellow
2023-11-07 23:23:09 +01:00
parent fafdd96d89
commit 065dd54478
3 changed files with 23 additions and 2 deletions

View File

@@ -5,6 +5,7 @@ import router from "../router";
import tokenStore from "../store/tokenStore.ts"; import tokenStore from "../store/tokenStore.ts";
import { ref } from "vue"; import { ref } from "vue";
import ModuleTemplateDialog from "./ModuleTemplateDialog.vue"; import ModuleTemplateDialog from "./ModuleTemplateDialog.vue";
import { onlyWhitespace } from "../helpers/strings.ts";
const tableData = ref( const tableData = ref(
moduleStore().modules.map((module) => { moduleStore().modules.map((module) => {
@@ -68,7 +69,11 @@ async function finalStep() {
<!-- Text Body --> <!-- Text Body -->
<template #body="{ data, field }"> <template #body="{ data, field }">
<template v-if="field === 'Module'"> <template v-if="field === 'Module'">
{{ data[field].userDefinedName }} {{
onlyWhitespace(data[field].userDefinedName) ?
data[field].name :
data[field].userDefinedName
}}
</template> </template>
<template v-else-if="field === 'Reminder'"> <template v-else-if="field === 'Reminder'">
<Button <Button

View File

@@ -7,6 +7,7 @@ import { saveIndividualFeed } from "../../api/createFeed";
import tokenStore from "../../store/tokenStore"; import tokenStore from "../../store/tokenStore";
import router from "../../router"; import router from "../../router";
import ModuleTemplateDialog from "../ModuleTemplateDialog.vue"; import ModuleTemplateDialog from "../ModuleTemplateDialog.vue";
import { onlyWhitespace } from "../../helpers/strings.ts";
const tableData = computed(() => const tableData = computed(() =>
moduleStore().modules.map((module: Module) => { moduleStore().modules.map((module: Module) => {
@@ -89,7 +90,11 @@ async function finalStep() {
<!-- Text Body --> <!-- Text Body -->
<template #body="{ data, field }"> <template #body="{ data, field }">
<template v-if="field === 'Module'"> <template v-if="field === 'Module'">
{{ data[field].userDefinedName }} {{
onlyWhitespace(data[field].userDefinedName) ?
data[field].name :
data[field].userDefinedName
}}
</template> </template>
<template v-else-if="field === 'Reminder'"> <template v-else-if="field === 'Reminder'">
<Button <Button
@@ -124,6 +129,9 @@ async function finalStep() {
@click="data.Module.reminder = !data.Module.reminder" @click="data.Module.reminder = !data.Module.reminder"
></Button> ></Button>
</template> </template>
<template v-else>
{{ data[field] }}
</template>
</template> </template>
</Column> </Column>
<Column> <Column>

View File

@@ -0,0 +1,8 @@
/**
* Returns false only if the input argument is a string which contains characters that are not considered a whitespace
* @param str - The string to check for whitespace
* @returns boolean - true if the string contains only whitespace, false otherwise
*/
export function onlyWhitespace(str: string): boolean {
return !str || str.length === 0 || /^\s*$/.test(str);
}