diff --git a/goofy-client/apps/goofy/src/app/app.component.scss b/goofy-client/apps/goofy/src/app/app.component.scss index f042475b3c4d343ef23062199ecada3ffd912562..48cebda9759eb902a9eec849d3a49a1827055d82 100644 --- a/goofy-client/apps/goofy/src/app/app.component.scss +++ b/goofy-client/apps/goofy/src/app/app.component.scss @@ -44,7 +44,6 @@ main { position: relative; flex-grow: 1; max-width: calc(100vw - (20px + 256px)); - //overflow-x: hidden; transition: max-width 0.3s ease-in-out; transition-delay: 0s; background-color: #fff; @@ -71,8 +70,4 @@ main { width: 20px; z-index: 1; height: calc(100vh - $header-height); - - @include media('>largeDesktop') { - //width: 360px; - } } diff --git a/goofy-client/libs/vorgang-detail/src/lib/vorgang-detail-page/vorgang-detail-area/vorgang-detail-antragsteller/vorgang-detail-antragsteller.component.spec.ts b/goofy-client/libs/vorgang-detail/src/lib/vorgang-detail-page/vorgang-detail-area/vorgang-detail-antragsteller/vorgang-detail-antragsteller.component.spec.ts index 8fb85438bbaf10f2bb1fa08d2641dddd7a1617ff..58002fddae8ebbb51cb0924c357d0356d4a793b6 100644 --- a/goofy-client/libs/vorgang-detail/src/lib/vorgang-detail-page/vorgang-detail-area/vorgang-detail-antragsteller/vorgang-detail-antragsteller.component.spec.ts +++ b/goofy-client/libs/vorgang-detail/src/lib/vorgang-detail-page/vorgang-detail-area/vorgang-detail-antragsteller/vorgang-detail-antragsteller.component.spec.ts @@ -93,6 +93,12 @@ describe('VorgangDetailAntragstellerComponent', () => { expect(element).not.toBeInstanceOf(HTMLElement); }); + + it('should trim multiple spaces to one space', () => { + component.antragsteller = { ...antragsteller, anrede: 'huhu', vorname: null, nachname: 'duda' }; + + expect(component.name).toStrictEqual('huhu duda'); + }); }); describe('email', () => { diff --git a/goofy-client/libs/vorgang-detail/src/lib/vorgang-detail-page/vorgang-detail-area/vorgang-detail-antragsteller/vorgang-detail-antragsteller.component.ts b/goofy-client/libs/vorgang-detail/src/lib/vorgang-detail-page/vorgang-detail-area/vorgang-detail-antragsteller/vorgang-detail-antragsteller.component.ts index f36434d9fd5b5018bd4cca5b90b88f6ef05fe04d..54b9252244e64442ce9bdb905f88fcb023c9baff 100644 --- a/goofy-client/libs/vorgang-detail/src/lib/vorgang-detail-page/vorgang-detail-area/vorgang-detail-antragsteller/vorgang-detail-antragsteller.component.ts +++ b/goofy-client/libs/vorgang-detail/src/lib/vorgang-detail-page/vorgang-detail-area/vorgang-detail-antragsteller/vorgang-detail-antragsteller.component.ts @@ -32,10 +32,12 @@ import { Antragsteller } from '@goofy-client/vorgang-shared'; }) export class VorgangDetailAntragstellerComponent { + private readonly TRIM_TO_ONE_SPACE = /\s{2,}/g; + @Input() antragsteller: Antragsteller; get name(): string { - return [this.antragsteller.anrede, this.antragsteller.vorname, this.antragsteller.nachname].join(' ').trim(); + return [this.antragsteller.anrede, this.antragsteller.vorname, this.antragsteller.nachname].join(' ').trim().replace(this.TRIM_TO_ONE_SPACE, ' '); } get antragstellerStrasseHausnummer(): string { diff --git a/goofy-server/src/main/java/de/itvsh/goofy/common/ReflectionUtil.java b/goofy-server/src/main/java/de/itvsh/goofy/common/ReflectionUtil.java index dd19d43069d6c50a661b042387388c30c3e4304a..b4a154b42d7d6e6e55f171adc621dbfcadce0e82 100644 --- a/goofy-server/src/main/java/de/itvsh/goofy/common/ReflectionUtil.java +++ b/goofy-server/src/main/java/de/itvsh/goofy/common/ReflectionUtil.java @@ -4,16 +4,19 @@ import java.lang.reflect.Field; import java.util.Arrays; import java.util.Optional; +import lombok.AccessLevel; +import lombok.NoArgsConstructor; import lombok.extern.log4j.Log4j2; @Log4j2 -public class ReflectionUtil { // NOSONAR +@NoArgsConstructor(access = AccessLevel.PRIVATE) +public class ReflectionUtil { public static boolean doesObjectContainsNullOnly(Object objToCheck) { - return Arrays.asList(objToCheck.getClass().getDeclaredFields()).stream()// - .map(field -> getFieldValue(field, objToCheck))// - .filter(Optional::isPresent)// - .toList()// + return Arrays.asList(objToCheck.getClass().getDeclaredFields()).stream() + .map(field -> getFieldValue(field, objToCheck)) + .filter(Optional::isPresent) + .toList() .isEmpty(); } diff --git a/goofy-server/src/main/java/de/itvsh/goofy/common/StringToNullMapper.java b/goofy-server/src/main/java/de/itvsh/goofy/common/StringToNullMapper.java index 9b6b53a377eff8f0aa49f774a898f1c13237f216..345e7eaa6edd3b475a6e0a933ee54946fe6dd9be 100644 --- a/goofy-server/src/main/java/de/itvsh/goofy/common/StringToNullMapper.java +++ b/goofy-server/src/main/java/de/itvsh/goofy/common/StringToNullMapper.java @@ -7,6 +7,6 @@ import org.mapstruct.Mapper; public interface StringToNullMapper { default String fromString(String value) { - return StringUtils.isEmpty(value) ? null : value; + return StringUtils.trimToNull(value); } } \ No newline at end of file