From c0a984dfc487b528e14ed6ccc46a00c19c185c71 Mon Sep 17 00:00:00 2001 From: Julien Veyssier Date: Wed, 14 Jan 2026 15:28:11 +0100 Subject: [PATCH] feat(user-picker): use logger instead of console Signed-off-by: Julien Veyssier --- .../src/components/ProfilesCustomPicker.vue | 9 +++++---- apps/user_picker/src/reference.js | 1 - apps/user_picker/src/utils/logger.ts | 11 +++++++++++ .../src/views/ProfilePickerReferenceWidget.vue | 3 ++- 4 files changed, 18 insertions(+), 6 deletions(-) create mode 100644 apps/user_picker/src/utils/logger.ts diff --git a/apps/user_picker/src/components/ProfilesCustomPicker.vue b/apps/user_picker/src/components/ProfilesCustomPicker.vue index 26fff48ba9f..d3b6dcf755b 100644 --- a/apps/user_picker/src/components/ProfilesCustomPicker.vue +++ b/apps/user_picker/src/components/ProfilesCustomPicker.vue @@ -59,6 +59,7 @@ import NcEmptyContent from '@nextcloud/vue/components/NcEmptyContent' import NcSelect from '@nextcloud/vue/components/NcSelect' import AccountOutline from 'vue-material-design-icons/AccountOutline.vue' import ArrowRightIcon from 'vue-material-design-icons/ArrowRight.vue' +import { logger } from '../utils/logger.ts' export default { name: 'ProfilesCustomPicker', @@ -145,8 +146,8 @@ export default { isNoUser: userAutocomplete.source.startsWith('users'), } }) - } catch (err) { - console.error(err) + } catch (error) { + logger.error('user_picker: error while searching for users', { error }) } finally { this.loading = false } @@ -168,8 +169,8 @@ export default { signal: this.abortController.signal, }) this.reference = res.data.ocs.data.references[this.resultUrl] - } catch (err) { - console.error(err) + } catch (error) { + logger.error('user_picker: error resolving the user profile link', { error }) } finally { this.loading = false } diff --git a/apps/user_picker/src/reference.js b/apps/user_picker/src/reference.js index 0aedf95d9af..4ffc5e9cf84 100644 --- a/apps/user_picker/src/reference.js +++ b/apps/user_picker/src/reference.js @@ -37,6 +37,5 @@ registerCustomPickerElement('profile_picker', async (el, { providerId, accessibl return new NcCustomPickerRenderResult(el, app) }, (el, renderResult) => { - console.debug('Users picker custom picker destroy callback. el', el, 'renderResult:', renderResult) renderResult.object.unmount() }, 'normal') diff --git a/apps/user_picker/src/utils/logger.ts b/apps/user_picker/src/utils/logger.ts new file mode 100644 index 00000000000..c71b7e14bc5 --- /dev/null +++ b/apps/user_picker/src/utils/logger.ts @@ -0,0 +1,11 @@ +/*! + * SPDX-FileCopyrightText: 2026 Nextcloud GmbH and Nextcloud contributors + * SPDX-License-Identifier: AGPL-3.0-or-later + */ + +import { getLoggerBuilder } from '@nextcloud/logger' + +export const logger = getLoggerBuilder() + .detectLogLevel() + .setApp('user_picker') + .build() diff --git a/apps/user_picker/src/views/ProfilePickerReferenceWidget.vue b/apps/user_picker/src/views/ProfilePickerReferenceWidget.vue index cc8115f3bc4..0312b1807ad 100644 --- a/apps/user_picker/src/views/ProfilePickerReferenceWidget.vue +++ b/apps/user_picker/src/views/ProfilePickerReferenceWidget.vue @@ -64,6 +64,7 @@ import HandshakeOutline from 'vue-material-design-icons/HandshakeOutline.vue' import MapMarkerOutline from 'vue-material-design-icons/MapMarkerOutline.vue' import TextAccount from 'vue-material-design-icons/TextAccount.vue' import Web from 'vue-material-design-icons/Web.vue' +import { logger } from '../utils/logger.ts' export default { name: 'ProfilePickerReferenceWidget', @@ -95,7 +96,7 @@ export default { }, beforeMount() { - console.debug('ProfilePickerReferenceWidget', this.richObject) + logger.debug('ProfilePickerReferenceWidget', this.richObject) }, }