From 66bee0409271b026faed069c7aac9c604579236c Mon Sep 17 00:00:00 2001 From: nsemets Date: Thu, 24 Jul 2025 13:05:33 +0300 Subject: [PATCH] fix(settings): fixed some bugs --- .../developer-app-add-edit-form.component.ts | 2 +- .../employment/employment.component.ts | 4 +-- .../components/social/social.component.ts | 6 ++++- .../profile-settings/constants/data.ts | 26 +++++++++++++++++++ .../profile-settings/models/social.model.ts | 1 + src/assets/styles/overrides/date-picker.scss | 7 ----- src/assets/styles/overrides/datepicker.scss | 8 ++++++ src/assets/styles/overrides/dialog.scss | 6 +++++ src/assets/styles/styles.scss | 2 +- 9 files changed, 50 insertions(+), 12 deletions(-) delete mode 100644 src/assets/styles/overrides/date-picker.scss diff --git a/src/app/features/settings/developer-apps/components/developer-app-add-edit-form/developer-app-add-edit-form.component.ts b/src/app/features/settings/developer-apps/components/developer-app-add-edit-form/developer-app-add-edit-form.component.ts index 176a481fb..bb7e831a7 100644 --- a/src/app/features/settings/developer-apps/components/developer-app-add-edit-form/developer-app-add-edit-form.component.ts +++ b/src/app/features/settings/developer-apps/components/developer-app-add-edit-form/developer-app-add-edit-form.component.ts @@ -43,7 +43,7 @@ export class DeveloperAppAddEditFormComponent implements OnInit { protected readonly appForm: DeveloperAppForm = new FormGroup({ [DeveloperAppFormFormControls.AppName]: new FormControl('', { nonNullable: true, - validators: [CustomValidators.requiredTrimmed(), Validators.maxLength(InputLimits.name.maxLength)], + validators: [CustomValidators.requiredTrimmed(), Validators.maxLength(InputLimits.fullName.maxLength)], }), [DeveloperAppFormFormControls.ProjectHomePageUrl]: new FormControl('', { nonNullable: true, diff --git a/src/app/features/settings/profile-settings/components/employment/employment.component.ts b/src/app/features/settings/profile-settings/components/employment/employment.component.ts index 5861e77cb..533e7ba4b 100644 --- a/src/app/features/settings/profile-settings/components/employment/employment.component.ts +++ b/src/app/features/settings/profile-settings/components/employment/employment.component.ts @@ -122,8 +122,8 @@ export class EmploymentComponent { private createEmploymentFormGroup(employment?: Partial): FormGroup { return this.fb.group( { - institution: [employment?.institution ?? '', CustomValidators.requiredTrimmed()], - title: [employment?.title ?? ''], + title: [employment?.title ?? '', CustomValidators.requiredTrimmed()], + institution: [employment?.institution ?? ''], department: [employment?.department ?? ''], startDate: [employment?.startDate ?? null], endDate: [employment?.endDate ?? null], diff --git a/src/app/features/settings/profile-settings/components/social/social.component.ts b/src/app/features/settings/profile-settings/components/social/social.component.ts index 3abc3245b..f55c7002e 100644 --- a/src/app/features/settings/profile-settings/components/social/social.component.ts +++ b/src/app/features/settings/profile-settings/components/social/social.component.ts @@ -79,7 +79,11 @@ export class SocialComponent { const mappedLinks = links.map((link) => { const key = link.socialOutput.key as SocialLinksKeys; - const value = SOCIAL_KEYS.includes(key) ? [link.webAddress] : link.webAddress; + const value = SOCIAL_KEYS.includes(key) + ? Array.isArray(link.webAddress) + ? link.webAddress + : [link.webAddress] + : link.webAddress; return { [key]: value, diff --git a/src/app/features/settings/profile-settings/constants/data.ts b/src/app/features/settings/profile-settings/constants/data.ts index e8308c445..6449a8220 100644 --- a/src/app/features/settings/profile-settings/constants/data.ts +++ b/src/app/features/settings/profile-settings/constants/data.ts @@ -7,6 +7,7 @@ export const socials: SocialLinksModel[] = [ address: 'http://researchers.com/rid/', placeholder: 'x-xxxx-xxxx', key: 'researcherId', + multiple: false, }, { id: 1, @@ -14,6 +15,7 @@ export const socials: SocialLinksModel[] = [ address: 'http://orcid.org/', placeholder: 'xxxx-xxxx-xxxx', key: 'orcid', + multiple: false, }, { id: 2, @@ -21,6 +23,7 @@ export const socials: SocialLinksModel[] = [ address: 'https://linkedin.com/', placeholder: 'in/userID, profie/view?profileID, or pub/pubID', key: 'linkedIn', + multiple: true, }, { id: 3, @@ -28,6 +31,7 @@ export const socials: SocialLinksModel[] = [ address: '@', placeholder: 'twitterhandle', key: 'twitter', + multiple: true, }, { id: 4, @@ -35,6 +39,7 @@ export const socials: SocialLinksModel[] = [ address: 'https://github.com/', placeholder: 'username', key: 'github', + multiple: true, }, { id: 5, @@ -42,6 +47,7 @@ export const socials: SocialLinksModel[] = [ address: 'https://impactstory.org/u/', placeholder: 'profileID', key: 'impactStory', + multiple: false, }, { id: 6, @@ -49,6 +55,7 @@ export const socials: SocialLinksModel[] = [ address: 'http://scholar.google.com/citations?user=', placeholder: 'profileID', key: 'scholar', + multiple: false, }, { id: 7, @@ -56,6 +63,7 @@ export const socials: SocialLinksModel[] = [ address: 'https://researchgate.net/profile/', placeholder: 'profileID', key: 'researchGate', + multiple: false, }, { id: 8, @@ -63,6 +71,7 @@ export const socials: SocialLinksModel[] = [ address: 'http://xueshu.baidu.com/scholarID/', placeholder: 'profileID', key: 'baiduScholar', + multiple: false, }, { id: 9, @@ -70,5 +79,22 @@ export const socials: SocialLinksModel[] = [ address: 'http://papers.ssrn.com/sol3/cf_dev/AbsByAuth.cfm?per_id=', placeholder: 'profileID', key: 'ssrn', + multiple: false, + }, + { + id: 10, + label: 'Your website', + address: 'website', + placeholder: 'https://yourwebsite.com', + key: 'profileWebsites', + multiple: true, + }, + { + id: 11, + label: 'Academia Profile Id', + address: '.academia.edu/', + placeholder: 'profileId', + key: 'academiaProfileID', + multiple: false, }, ]; diff --git a/src/app/features/settings/profile-settings/models/social.model.ts b/src/app/features/settings/profile-settings/models/social.model.ts index 904f2f23b..5fc16dcd0 100644 --- a/src/app/features/settings/profile-settings/models/social.model.ts +++ b/src/app/features/settings/profile-settings/models/social.model.ts @@ -10,6 +10,7 @@ export interface SocialLinksModel { address: string; placeholder: string; key: SocialLinksKeys; + multiple: boolean; } export interface SocialLinksForm { diff --git a/src/assets/styles/overrides/date-picker.scss b/src/assets/styles/overrides/date-picker.scss deleted file mode 100644 index 26196c4aa..000000000 --- a/src/assets/styles/overrides/date-picker.scss +++ /dev/null @@ -1,7 +0,0 @@ -@use "assets/styles/mixins" as mix; - -.half-width-datepicker { - .p-datepicker-panel { - min-width: mix.rem(350px) !important; - } -} diff --git a/src/assets/styles/overrides/datepicker.scss b/src/assets/styles/overrides/datepicker.scss index 6857cf56c..9d8e0e8c1 100644 --- a/src/assets/styles/overrides/datepicker.scss +++ b/src/assets/styles/overrides/datepicker.scss @@ -1,3 +1,5 @@ +@use "assets/styles/mixins" as mix; + .p-datepicker { width: 100%; --p-datepicker-input-icon-color: var(--grey-1); @@ -36,3 +38,9 @@ --p-datepicker-date-hover-color: var(--white); } } + +.half-width-datepicker { + .p-datepicker-panel { + min-width: mix.rem(350px) !important; + } +} diff --git a/src/assets/styles/overrides/dialog.scss b/src/assets/styles/overrides/dialog.scss index 2f2b1c90f..13ee187f5 100644 --- a/src/assets/styles/overrides/dialog.scss +++ b/src/assets/styles/overrides/dialog.scss @@ -1,5 +1,11 @@ @use "assets/styles/mixins" as mix; +.p-dialog-close-button { + --p-button-padding-y: 0.75rem; + --p-button-padding-x: 0.75rem; + border: 0; +} + .upload-dialog { .p-dialog { width: mix.rem(356px); diff --git a/src/assets/styles/styles.scss b/src/assets/styles/styles.scss index 70cdee3f9..4fe24fd18 100644 --- a/src/assets/styles/styles.scss +++ b/src/assets/styles/styles.scss @@ -23,6 +23,7 @@ @use "./overrides/stepper"; @use "./overrides/radio"; @use "./overrides/confirmation-dialog"; +@use "./overrides/dialog"; @use "./overrides/input-group-addon"; @use "./overrides/iconfield"; @use "./overrides/datepicker"; @@ -44,5 +45,4 @@ @use "./components/md-editor"; @use "./components/preprints"; @use "./overrides/cedar-metadata"; -@use "./overrides/date-picker"; @use "./components/collections";