From da455ee86eae75b5b254ca8e25bbeb469bfae4b5 Mon Sep 17 00:00:00 2001 From: Julien Veyssier Date: Mon, 23 Feb 2026 12:20:54 +0100 Subject: [PATCH] feat(profile-picker): move the profile picker to the profile app, remove the user_picker app Signed-off-by: Julien Veyssier --- .gitignore | 1 - .tx/config | 6 - apps/{user_picker => profile}/REUSE.toml | 0 .../composer/composer/autoload_classmap.php | 3 + .../composer/composer/autoload_static.php | 3 + apps/profile/img/app-dark.svg | 3 + apps/profile/img/app.svg | 3 + .../lib/AppInfo/Application.php | 10 +- .../ProfilePickerReferenceListener.php} | 6 +- .../ProfilePickerReferenceProvider.php | 6 +- .../src/components/ProfilesCustomPicker.vue | 18 +- .../{user_picker => profile}/src/reference.js | 2 +- .../views/ProfilePickerReferenceWidget.vue | 9 +- .../ProfilePickerReferenceProviderTest.php | 5 +- apps/user_picker/.noopenapi | 0 apps/user_picker/appinfo/info.xml | 21 - apps/user_picker/composer/autoload.php | 22 - apps/user_picker/composer/composer.json | 13 - apps/user_picker/composer/composer.lock | 18 - .../composer/composer/ClassLoader.php | 579 ------------------ .../composer/composer/InstalledVersions.php | 396 ------------ apps/user_picker/composer/composer/LICENSE | 21 - .../composer/composer/autoload_classmap.php | 13 - .../composer/composer/autoload_namespaces.php | 9 - .../composer/composer/autoload_psr4.php | 10 - .../composer/composer/autoload_real.php | 37 -- .../composer/composer/autoload_static.php | 39 -- .../composer/composer/installed.json | 5 - .../composer/composer/installed.php | 23 - apps/user_picker/img/app-dark.svg | 1 - apps/user_picker/img/app.svg | 1 - apps/user_picker/l10n/.gitkeep | 0 apps/user_picker/l10n/cs.js | 14 - apps/user_picker/l10n/cs.json | 12 - apps/user_picker/l10n/de.js | 14 - apps/user_picker/l10n/de.json | 12 - apps/user_picker/l10n/de_DE.js | 14 - apps/user_picker/l10n/de_DE.json | 12 - apps/user_picker/l10n/el.js | 14 - apps/user_picker/l10n/el.json | 12 - apps/user_picker/l10n/es.js | 14 - apps/user_picker/l10n/es.json | 12 - apps/user_picker/l10n/et_EE.js | 14 - apps/user_picker/l10n/et_EE.json | 12 - apps/user_picker/l10n/fi.js | 12 - apps/user_picker/l10n/fi.json | 10 - apps/user_picker/l10n/fr.js | 12 - apps/user_picker/l10n/fr.json | 10 - apps/user_picker/l10n/ga.js | 14 - apps/user_picker/l10n/ga.json | 12 - apps/user_picker/l10n/gl.js | 14 - apps/user_picker/l10n/gl.json | 12 - apps/user_picker/l10n/mn.js | 13 - apps/user_picker/l10n/mn.json | 11 - apps/user_picker/l10n/oc.js | 14 - apps/user_picker/l10n/oc.json | 12 - apps/user_picker/l10n/sk.js | 14 - apps/user_picker/l10n/sk.json | 12 - apps/user_picker/l10n/uk.js | 14 - apps/user_picker/l10n/uk.json | 12 - apps/user_picker/l10n/zh_HK.js | 14 - apps/user_picker/l10n/zh_HK.json | 12 - apps/user_picker/src/utils/logger.ts | 11 - apps/user_picker/tests/bootstrap.php | 20 - .../tests/unit/Service/ApplicationTest.php | 17 - build/frontend/apps/user_picker | 1 - build/frontend/vite.config.ts | 4 +- .../features/provisioning-v1.feature | 1 - build/license.php | 1 - core/shipped.json | 1 - psalm.xml | 1 - 71 files changed, 45 insertions(+), 1675 deletions(-) rename apps/{user_picker => profile}/REUSE.toml (100%) create mode 100644 apps/profile/img/app-dark.svg create mode 100644 apps/profile/img/app.svg rename apps/{user_picker => profile}/lib/AppInfo/Application.php (72%) rename apps/{user_picker/lib/Listener/UserPickerReferenceListener.php => profile/lib/Listener/ProfilePickerReferenceListener.php} (79%) rename apps/{user_picker => profile}/lib/Reference/ProfilePickerReferenceProvider.php (97%) rename apps/{user_picker => profile}/src/components/ProfilesCustomPicker.vue (88%) rename apps/{user_picker => profile}/src/reference.js (91%) rename apps/{user_picker => profile}/src/views/ProfilePickerReferenceWidget.vue (96%) rename apps/{user_picker/tests/unit => profile/tests}/Reference/ProfilePickerReferenceProviderTest.php (99%) delete mode 100644 apps/user_picker/.noopenapi delete mode 100644 apps/user_picker/appinfo/info.xml delete mode 100644 apps/user_picker/composer/autoload.php delete mode 100644 apps/user_picker/composer/composer.json delete mode 100644 apps/user_picker/composer/composer.lock delete mode 100644 apps/user_picker/composer/composer/ClassLoader.php delete mode 100644 apps/user_picker/composer/composer/InstalledVersions.php delete mode 100644 apps/user_picker/composer/composer/LICENSE delete mode 100644 apps/user_picker/composer/composer/autoload_classmap.php delete mode 100644 apps/user_picker/composer/composer/autoload_namespaces.php delete mode 100644 apps/user_picker/composer/composer/autoload_psr4.php delete mode 100644 apps/user_picker/composer/composer/autoload_real.php delete mode 100644 apps/user_picker/composer/composer/autoload_static.php delete mode 100644 apps/user_picker/composer/composer/installed.json delete mode 100644 apps/user_picker/composer/composer/installed.php delete mode 100644 apps/user_picker/img/app-dark.svg delete mode 100644 apps/user_picker/img/app.svg delete mode 100644 apps/user_picker/l10n/.gitkeep delete mode 100644 apps/user_picker/l10n/cs.js delete mode 100644 apps/user_picker/l10n/cs.json delete mode 100644 apps/user_picker/l10n/de.js delete mode 100644 apps/user_picker/l10n/de.json delete mode 100644 apps/user_picker/l10n/de_DE.js delete mode 100644 apps/user_picker/l10n/de_DE.json delete mode 100644 apps/user_picker/l10n/el.js delete mode 100644 apps/user_picker/l10n/el.json delete mode 100644 apps/user_picker/l10n/es.js delete mode 100644 apps/user_picker/l10n/es.json delete mode 100644 apps/user_picker/l10n/et_EE.js delete mode 100644 apps/user_picker/l10n/et_EE.json delete mode 100644 apps/user_picker/l10n/fi.js delete mode 100644 apps/user_picker/l10n/fi.json delete mode 100644 apps/user_picker/l10n/fr.js delete mode 100644 apps/user_picker/l10n/fr.json delete mode 100644 apps/user_picker/l10n/ga.js delete mode 100644 apps/user_picker/l10n/ga.json delete mode 100644 apps/user_picker/l10n/gl.js delete mode 100644 apps/user_picker/l10n/gl.json delete mode 100644 apps/user_picker/l10n/mn.js delete mode 100644 apps/user_picker/l10n/mn.json delete mode 100644 apps/user_picker/l10n/oc.js delete mode 100644 apps/user_picker/l10n/oc.json delete mode 100644 apps/user_picker/l10n/sk.js delete mode 100644 apps/user_picker/l10n/sk.json delete mode 100644 apps/user_picker/l10n/uk.js delete mode 100644 apps/user_picker/l10n/uk.json delete mode 100644 apps/user_picker/l10n/zh_HK.js delete mode 100644 apps/user_picker/l10n/zh_HK.json delete mode 100644 apps/user_picker/src/utils/logger.ts delete mode 100644 apps/user_picker/tests/bootstrap.php delete mode 100644 apps/user_picker/tests/unit/Service/ApplicationTest.php delete mode 120000 build/frontend/apps/user_picker diff --git a/.gitignore b/.gitignore index a2be8a67d8c..06cb1ac1ecc 100644 --- a/.gitignore +++ b/.gitignore @@ -44,7 +44,6 @@ node_modules/ !/apps/updatenotification !/apps/theming !/apps/twofactor_backupcodes -!/apps/user_picker !/apps/user_status !/apps/weather_status !/apps/webhook_listeners diff --git a/.tx/config b/.tx/config index 5ff66fceb1a..fabfedd91a4 100644 --- a/.tx/config +++ b/.tx/config @@ -170,12 +170,6 @@ source_file = translationfiles/templates/user_ldap.pot source_lang = en type = PO -[o:nextcloud:p:nextcloud:r:user_picker] -file_filter = translationfiles//user_picker.po -source_file = translationfiles/templates/user_picker.pot -source_lang = en -type = PO - [o:nextcloud:p:nextcloud:r:user_status] file_filter = translationfiles//user_status.po source_file = translationfiles/templates/user_status.pot diff --git a/apps/user_picker/REUSE.toml b/apps/profile/REUSE.toml similarity index 100% rename from apps/user_picker/REUSE.toml rename to apps/profile/REUSE.toml diff --git a/apps/profile/composer/composer/autoload_classmap.php b/apps/profile/composer/composer/autoload_classmap.php index 1f4149e7210..8e2b1a20ee0 100644 --- a/apps/profile/composer/composer/autoload_classmap.php +++ b/apps/profile/composer/composer/autoload_classmap.php @@ -7,5 +7,8 @@ $baseDir = $vendorDir; return array( 'Composer\\InstalledVersions' => $vendorDir . '/composer/InstalledVersions.php', + 'OCA\\Profile\\AppInfo\\Application' => $baseDir . '/../lib/AppInfo/Application.php', 'OCA\\Profile\\Controller\\ProfilePageController' => $baseDir . '/../lib/Controller/ProfilePageController.php', + 'OCA\\Profile\\Listener\\ProfilePickerReferenceListener' => $baseDir . '/../lib/Listener/ProfilePickerReferenceListener.php', + 'OCA\\Profile\\Reference\\ProfilePickerReferenceProvider' => $baseDir . '/../lib/Reference/ProfilePickerReferenceProvider.php', ); diff --git a/apps/profile/composer/composer/autoload_static.php b/apps/profile/composer/composer/autoload_static.php index ecf136ded24..a12287d9719 100644 --- a/apps/profile/composer/composer/autoload_static.php +++ b/apps/profile/composer/composer/autoload_static.php @@ -22,7 +22,10 @@ class ComposerStaticInitProfile public static $classMap = array ( 'Composer\\InstalledVersions' => __DIR__ . '/..' . '/composer/InstalledVersions.php', + 'OCA\\Profile\\AppInfo\\Application' => __DIR__ . '/..' . '/../lib/AppInfo/Application.php', 'OCA\\Profile\\Controller\\ProfilePageController' => __DIR__ . '/..' . '/../lib/Controller/ProfilePageController.php', + 'OCA\\Profile\\Listener\\ProfilePickerReferenceListener' => __DIR__ . '/..' . '/../lib/Listener/ProfilePickerReferenceListener.php', + 'OCA\\Profile\\Reference\\ProfilePickerReferenceProvider' => __DIR__ . '/..' . '/../lib/Reference/ProfilePickerReferenceProvider.php', ); public static function getInitializer(ClassLoader $loader) diff --git a/apps/profile/img/app-dark.svg b/apps/profile/img/app-dark.svg new file mode 100644 index 00000000000..a9d0ace1f23 --- /dev/null +++ b/apps/profile/img/app-dark.svg @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/apps/profile/img/app.svg b/apps/profile/img/app.svg new file mode 100644 index 00000000000..72fa3b41cc8 --- /dev/null +++ b/apps/profile/img/app.svg @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/apps/user_picker/lib/AppInfo/Application.php b/apps/profile/lib/AppInfo/Application.php similarity index 72% rename from apps/user_picker/lib/AppInfo/Application.php rename to apps/profile/lib/AppInfo/Application.php index 25e3050ba15..d10a8dffe5d 100644 --- a/apps/user_picker/lib/AppInfo/Application.php +++ b/apps/profile/lib/AppInfo/Application.php @@ -6,10 +6,10 @@ declare(strict_types=1); * SPDX-FileCopyrightText: 2026 Nextcloud GmbH and Nextcloud contributors * SPDX-License-Identifier: AGPL-3.0-or-later */ -namespace OCA\UserPicker\AppInfo; +namespace OCA\Profile\AppInfo; -use OCA\UserPicker\Listener\UserPickerReferenceListener; -use OCA\UserPicker\Reference\ProfilePickerReferenceProvider; +use OCA\Profile\Listener\ProfilePickerReferenceListener; +use OCA\Profile\Reference\ProfilePickerReferenceProvider; use OCP\AppFramework\App; use OCP\AppFramework\Bootstrap\IBootContext; use OCP\AppFramework\Bootstrap\IBootstrap; @@ -18,7 +18,7 @@ use OCP\AppFramework\Bootstrap\IRegistrationContext; use OCP\Collaboration\Reference\RenderReferenceEvent; class Application extends App implements IBootstrap { - public const APP_ID = 'user_picker'; + public const APP_ID = 'profile'; public function __construct(array $urlParams = []) { parent::__construct(self::APP_ID, $urlParams); @@ -26,7 +26,7 @@ class Application extends App implements IBootstrap { public function register(IRegistrationContext $context): void { $context->registerReferenceProvider(ProfilePickerReferenceProvider::class); - $context->registerEventListener(RenderReferenceEvent::class, UserPickerReferenceListener::class); + $context->registerEventListener(RenderReferenceEvent::class, ProfilePickerReferenceListener::class); } public function boot(IBootContext $context): void { diff --git a/apps/user_picker/lib/Listener/UserPickerReferenceListener.php b/apps/profile/lib/Listener/ProfilePickerReferenceListener.php similarity index 79% rename from apps/user_picker/lib/Listener/UserPickerReferenceListener.php rename to apps/profile/lib/Listener/ProfilePickerReferenceListener.php index efa78398368..242f89b1e7e 100644 --- a/apps/user_picker/lib/Listener/UserPickerReferenceListener.php +++ b/apps/profile/lib/Listener/ProfilePickerReferenceListener.php @@ -6,9 +6,9 @@ declare(strict_types=1); * SPDX-FileCopyrightText: 2026 Nextcloud GmbH and Nextcloud contributors * SPDX-License-Identifier: AGPL-3.0-or-later */ -namespace OCA\UserPicker\Listener; +namespace OCA\Profile\Listener; -use OCA\UserPicker\AppInfo\Application; +use OCA\Profile\AppInfo\Application; use OCP\Collaboration\Reference\RenderReferenceEvent; use OCP\EventDispatcher\Event; use OCP\EventDispatcher\IEventListener; @@ -17,7 +17,7 @@ use OCP\Util; /** * @template-implements IEventListener */ -class UserPickerReferenceListener implements IEventListener { +class ProfilePickerReferenceListener implements IEventListener { public function handle(Event $event): void { if (!$event instanceof RenderReferenceEvent) { return; diff --git a/apps/user_picker/lib/Reference/ProfilePickerReferenceProvider.php b/apps/profile/lib/Reference/ProfilePickerReferenceProvider.php similarity index 97% rename from apps/user_picker/lib/Reference/ProfilePickerReferenceProvider.php rename to apps/profile/lib/Reference/ProfilePickerReferenceProvider.php index 4994b0045fc..e5c4daa5097 100644 --- a/apps/user_picker/lib/Reference/ProfilePickerReferenceProvider.php +++ b/apps/profile/lib/Reference/ProfilePickerReferenceProvider.php @@ -6,9 +6,9 @@ declare(strict_types=1); * SPDX-FileCopyrightText: 2026 Nextcloud GmbH and Nextcloud contributors * SPDX-License-Identifier: AGPL-3.0-or-later */ -namespace OCA\UserPicker\Reference; +namespace OCA\Profile\Reference; -use OCA\UserPicker\AppInfo\Application; +use OCA\Profile\AppInfo\Application; use OCP\Accounts\IAccountManager; use OCP\Collaboration\Reference\ADiscoverableReferenceProvider; @@ -21,7 +21,7 @@ use OCP\IUserManager; use OCP\Profile\IProfileManager; class ProfilePickerReferenceProvider extends ADiscoverableReferenceProvider { - public const RICH_OBJECT_TYPE = 'user_picker_profile'; + public const RICH_OBJECT_TYPE = 'profile_widget'; public function __construct( private IL10N $l10n, diff --git a/apps/user_picker/src/components/ProfilesCustomPicker.vue b/apps/profile/src/components/ProfilesCustomPicker.vue similarity index 88% rename from apps/user_picker/src/components/ProfilesCustomPicker.vue rename to apps/profile/src/components/ProfilesCustomPicker.vue index d0226465480..99f9b7bd896 100644 --- a/apps/user_picker/src/components/ProfilesCustomPicker.vue +++ b/apps/profile/src/components/ProfilesCustomPicker.vue @@ -7,7 +7,7 @@

- {{ t('user_picker', 'Profile picker') }} + {{ t('profile', 'Profile picker') }}

@@ -38,10 +38,10 @@ - {{ t('user_picker', 'Insert') }} + {{ t('profile', 'Insert') }} @@ -59,7 +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' +import { logger } from '../services/logger.ts' export default { name: 'ProfilesCustomPicker', @@ -107,7 +107,7 @@ export default { }, noResultText() { - return this.loading ? t('user_picker', 'Searching …') : t('user_picker', 'Not found') + return this.loading ? t('profile', 'Searching …') : t('profile', 'Not found') }, }, @@ -149,7 +149,7 @@ export default { } }) } catch (error) { - logger.error('user_picker: error while searching for users', { error }) + logger.error('profile_picker: error while searching for users', { error }) } finally { this.loading = false } @@ -172,7 +172,7 @@ export default { }) this.reference = res.data.ocs.data.references[this.resultUrl] } catch (error) { - logger.error('user_picker: error resolving the user profile link', { error }) + logger.error('profile_picker: error resolving the user profile link', { error }) } finally { this.loading = false } diff --git a/apps/user_picker/src/reference.js b/apps/profile/src/reference.js similarity index 91% rename from apps/user_picker/src/reference.js rename to apps/profile/src/reference.js index 4ffc5e9cf84..95759b4380c 100644 --- a/apps/user_picker/src/reference.js +++ b/apps/profile/src/reference.js @@ -5,7 +5,7 @@ import { NcCustomPickerRenderResult, registerCustomPickerElement, registerWidget } from '@nextcloud/vue/components/NcRichText' -registerWidget('user_picker_profile', async (el, { richObjectType, richObject, accessible }) => { +registerWidget('profile_widget', async (el, { richObjectType, richObject, accessible }) => { const { createApp } = await import('vue') const { default: ProfilePickerReferenceWidget } = await import('./views/ProfilePickerReferenceWidget.vue') diff --git a/apps/user_picker/src/views/ProfilePickerReferenceWidget.vue b/apps/profile/src/views/ProfilePickerReferenceWidget.vue similarity index 96% rename from apps/user_picker/src/views/ProfilePickerReferenceWidget.vue rename to apps/profile/src/views/ProfilePickerReferenceWidget.vue index 7a69b796a9b..a98508c5852 100644 --- a/apps/user_picker/src/views/ProfilePickerReferenceWidget.vue +++ b/apps/profile/src/views/ProfilePickerReferenceWidget.vue @@ -64,7 +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' +import { logger } from '../services/logger.ts' export default { name: 'ProfilePickerReferenceWidget', @@ -116,13 +116,18 @@ export default { &__header { width: 100%; min-height: 70px; - padding: 0 12px; background-color: var(--color-primary); background-image: var(--gradient-primary-background); position: relative; display: flex; align-items: center; gap: 10px; + > *:first-child { + margin-left: 12px; + } + > *:last-child { + margin-right: 12px; + } } .profile-card__title a { diff --git a/apps/user_picker/tests/unit/Reference/ProfilePickerReferenceProviderTest.php b/apps/profile/tests/Reference/ProfilePickerReferenceProviderTest.php similarity index 99% rename from apps/user_picker/tests/unit/Reference/ProfilePickerReferenceProviderTest.php rename to apps/profile/tests/Reference/ProfilePickerReferenceProviderTest.php index 6de2b50360f..45aeb51f1c7 100644 --- a/apps/user_picker/tests/unit/Reference/ProfilePickerReferenceProviderTest.php +++ b/apps/profile/tests/Reference/ProfilePickerReferenceProviderTest.php @@ -1,10 +1,13 @@ - - - user_picker - Profile picker - Profile smart picker and link preview - - 1.0.0 - agpl - Julien Veyssier - UserPicker - integration - https://github.com/nextcloud/server/issues - - - - diff --git a/apps/user_picker/composer/autoload.php b/apps/user_picker/composer/autoload.php deleted file mode 100644 index 834cda88e9d..00000000000 --- a/apps/user_picker/composer/autoload.php +++ /dev/null @@ -1,22 +0,0 @@ - - * Jordi Boggiano - * - * For the full copyright and license information, please view the LICENSE - * file that was distributed with this source code. - */ - -namespace Composer\Autoload; - -/** - * ClassLoader implements a PSR-0, PSR-4 and classmap class loader. - * - * $loader = new \Composer\Autoload\ClassLoader(); - * - * // register classes with namespaces - * $loader->add('Symfony\Component', __DIR__.'/component'); - * $loader->add('Symfony', __DIR__.'/framework'); - * - * // activate the autoloader - * $loader->register(); - * - * // to enable searching the include path (eg. for PEAR packages) - * $loader->setUseIncludePath(true); - * - * In this example, if you try to use a class in the Symfony\Component - * namespace or one of its children (Symfony\Component\Console for instance), - * the autoloader will first look for the class under the component/ - * directory, and it will then fallback to the framework/ directory if not - * found before giving up. - * - * This class is loosely based on the Symfony UniversalClassLoader. - * - * @author Fabien Potencier - * @author Jordi Boggiano - * @see https://www.php-fig.org/psr/psr-0/ - * @see https://www.php-fig.org/psr/psr-4/ - */ -class ClassLoader -{ - /** @var \Closure(string):void */ - private static $includeFile; - - /** @var string|null */ - private $vendorDir; - - // PSR-4 - /** - * @var array> - */ - private $prefixLengthsPsr4 = array(); - /** - * @var array> - */ - private $prefixDirsPsr4 = array(); - /** - * @var list - */ - private $fallbackDirsPsr4 = array(); - - // PSR-0 - /** - * List of PSR-0 prefixes - * - * Structured as array('F (first letter)' => array('Foo\Bar (full prefix)' => array('path', 'path2'))) - * - * @var array>> - */ - private $prefixesPsr0 = array(); - /** - * @var list - */ - private $fallbackDirsPsr0 = array(); - - /** @var bool */ - private $useIncludePath = false; - - /** - * @var array - */ - private $classMap = array(); - - /** @var bool */ - private $classMapAuthoritative = false; - - /** - * @var array - */ - private $missingClasses = array(); - - /** @var string|null */ - private $apcuPrefix; - - /** - * @var array - */ - private static $registeredLoaders = array(); - - /** - * @param string|null $vendorDir - */ - public function __construct($vendorDir = null) - { - $this->vendorDir = $vendorDir; - self::initializeIncludeClosure(); - } - - /** - * @return array> - */ - public function getPrefixes() - { - if (!empty($this->prefixesPsr0)) { - return call_user_func_array('array_merge', array_values($this->prefixesPsr0)); - } - - return array(); - } - - /** - * @return array> - */ - public function getPrefixesPsr4() - { - return $this->prefixDirsPsr4; - } - - /** - * @return list - */ - public function getFallbackDirs() - { - return $this->fallbackDirsPsr0; - } - - /** - * @return list - */ - public function getFallbackDirsPsr4() - { - return $this->fallbackDirsPsr4; - } - - /** - * @return array Array of classname => path - */ - public function getClassMap() - { - return $this->classMap; - } - - /** - * @param array $classMap Class to filename map - * - * @return void - */ - public function addClassMap(array $classMap) - { - if ($this->classMap) { - $this->classMap = array_merge($this->classMap, $classMap); - } else { - $this->classMap = $classMap; - } - } - - /** - * Registers a set of PSR-0 directories for a given prefix, either - * appending or prepending to the ones previously set for this prefix. - * - * @param string $prefix The prefix - * @param list|string $paths The PSR-0 root directories - * @param bool $prepend Whether to prepend the directories - * - * @return void - */ - public function add($prefix, $paths, $prepend = false) - { - $paths = (array) $paths; - if (!$prefix) { - if ($prepend) { - $this->fallbackDirsPsr0 = array_merge( - $paths, - $this->fallbackDirsPsr0 - ); - } else { - $this->fallbackDirsPsr0 = array_merge( - $this->fallbackDirsPsr0, - $paths - ); - } - - return; - } - - $first = $prefix[0]; - if (!isset($this->prefixesPsr0[$first][$prefix])) { - $this->prefixesPsr0[$first][$prefix] = $paths; - - return; - } - if ($prepend) { - $this->prefixesPsr0[$first][$prefix] = array_merge( - $paths, - $this->prefixesPsr0[$first][$prefix] - ); - } else { - $this->prefixesPsr0[$first][$prefix] = array_merge( - $this->prefixesPsr0[$first][$prefix], - $paths - ); - } - } - - /** - * Registers a set of PSR-4 directories for a given namespace, either - * appending or prepending to the ones previously set for this namespace. - * - * @param string $prefix The prefix/namespace, with trailing '\\' - * @param list|string $paths The PSR-4 base directories - * @param bool $prepend Whether to prepend the directories - * - * @throws \InvalidArgumentException - * - * @return void - */ - public function addPsr4($prefix, $paths, $prepend = false) - { - $paths = (array) $paths; - if (!$prefix) { - // Register directories for the root namespace. - if ($prepend) { - $this->fallbackDirsPsr4 = array_merge( - $paths, - $this->fallbackDirsPsr4 - ); - } else { - $this->fallbackDirsPsr4 = array_merge( - $this->fallbackDirsPsr4, - $paths - ); - } - } elseif (!isset($this->prefixDirsPsr4[$prefix])) { - // Register directories for a new namespace. - $length = strlen($prefix); - if ('\\' !== $prefix[$length - 1]) { - throw new \InvalidArgumentException("A non-empty PSR-4 prefix must end with a namespace separator."); - } - $this->prefixLengthsPsr4[$prefix[0]][$prefix] = $length; - $this->prefixDirsPsr4[$prefix] = $paths; - } elseif ($prepend) { - // Prepend directories for an already registered namespace. - $this->prefixDirsPsr4[$prefix] = array_merge( - $paths, - $this->prefixDirsPsr4[$prefix] - ); - } else { - // Append directories for an already registered namespace. - $this->prefixDirsPsr4[$prefix] = array_merge( - $this->prefixDirsPsr4[$prefix], - $paths - ); - } - } - - /** - * Registers a set of PSR-0 directories for a given prefix, - * replacing any others previously set for this prefix. - * - * @param string $prefix The prefix - * @param list|string $paths The PSR-0 base directories - * - * @return void - */ - public function set($prefix, $paths) - { - if (!$prefix) { - $this->fallbackDirsPsr0 = (array) $paths; - } else { - $this->prefixesPsr0[$prefix[0]][$prefix] = (array) $paths; - } - } - - /** - * Registers a set of PSR-4 directories for a given namespace, - * replacing any others previously set for this namespace. - * - * @param string $prefix The prefix/namespace, with trailing '\\' - * @param list|string $paths The PSR-4 base directories - * - * @throws \InvalidArgumentException - * - * @return void - */ - public function setPsr4($prefix, $paths) - { - if (!$prefix) { - $this->fallbackDirsPsr4 = (array) $paths; - } else { - $length = strlen($prefix); - if ('\\' !== $prefix[$length - 1]) { - throw new \InvalidArgumentException("A non-empty PSR-4 prefix must end with a namespace separator."); - } - $this->prefixLengthsPsr4[$prefix[0]][$prefix] = $length; - $this->prefixDirsPsr4[$prefix] = (array) $paths; - } - } - - /** - * Turns on searching the include path for class files. - * - * @param bool $useIncludePath - * - * @return void - */ - public function setUseIncludePath($useIncludePath) - { - $this->useIncludePath = $useIncludePath; - } - - /** - * Can be used to check if the autoloader uses the include path to check - * for classes. - * - * @return bool - */ - public function getUseIncludePath() - { - return $this->useIncludePath; - } - - /** - * Turns off searching the prefix and fallback directories for classes - * that have not been registered with the class map. - * - * @param bool $classMapAuthoritative - * - * @return void - */ - public function setClassMapAuthoritative($classMapAuthoritative) - { - $this->classMapAuthoritative = $classMapAuthoritative; - } - - /** - * Should class lookup fail if not found in the current class map? - * - * @return bool - */ - public function isClassMapAuthoritative() - { - return $this->classMapAuthoritative; - } - - /** - * APCu prefix to use to cache found/not-found classes, if the extension is enabled. - * - * @param string|null $apcuPrefix - * - * @return void - */ - public function setApcuPrefix($apcuPrefix) - { - $this->apcuPrefix = function_exists('apcu_fetch') && filter_var(ini_get('apc.enabled'), FILTER_VALIDATE_BOOLEAN) ? $apcuPrefix : null; - } - - /** - * The APCu prefix in use, or null if APCu caching is not enabled. - * - * @return string|null - */ - public function getApcuPrefix() - { - return $this->apcuPrefix; - } - - /** - * Registers this instance as an autoloader. - * - * @param bool $prepend Whether to prepend the autoloader or not - * - * @return void - */ - public function register($prepend = false) - { - spl_autoload_register(array($this, 'loadClass'), true, $prepend); - - if (null === $this->vendorDir) { - return; - } - - if ($prepend) { - self::$registeredLoaders = array($this->vendorDir => $this) + self::$registeredLoaders; - } else { - unset(self::$registeredLoaders[$this->vendorDir]); - self::$registeredLoaders[$this->vendorDir] = $this; - } - } - - /** - * Unregisters this instance as an autoloader. - * - * @return void - */ - public function unregister() - { - spl_autoload_unregister(array($this, 'loadClass')); - - if (null !== $this->vendorDir) { - unset(self::$registeredLoaders[$this->vendorDir]); - } - } - - /** - * Loads the given class or interface. - * - * @param string $class The name of the class - * @return true|null True if loaded, null otherwise - */ - public function loadClass($class) - { - if ($file = $this->findFile($class)) { - $includeFile = self::$includeFile; - $includeFile($file); - - return true; - } - - return null; - } - - /** - * Finds the path to the file where the class is defined. - * - * @param string $class The name of the class - * - * @return string|false The path if found, false otherwise - */ - public function findFile($class) - { - // class map lookup - if (isset($this->classMap[$class])) { - return $this->classMap[$class]; - } - if ($this->classMapAuthoritative || isset($this->missingClasses[$class])) { - return false; - } - if (null !== $this->apcuPrefix) { - $file = apcu_fetch($this->apcuPrefix.$class, $hit); - if ($hit) { - return $file; - } - } - - $file = $this->findFileWithExtension($class, '.php'); - - // Search for Hack files if we are running on HHVM - if (false === $file && defined('HHVM_VERSION')) { - $file = $this->findFileWithExtension($class, '.hh'); - } - - if (null !== $this->apcuPrefix) { - apcu_add($this->apcuPrefix.$class, $file); - } - - if (false === $file) { - // Remember that this class does not exist. - $this->missingClasses[$class] = true; - } - - return $file; - } - - /** - * Returns the currently registered loaders keyed by their corresponding vendor directories. - * - * @return array - */ - public static function getRegisteredLoaders() - { - return self::$registeredLoaders; - } - - /** - * @param string $class - * @param string $ext - * @return string|false - */ - private function findFileWithExtension($class, $ext) - { - // PSR-4 lookup - $logicalPathPsr4 = strtr($class, '\\', DIRECTORY_SEPARATOR) . $ext; - - $first = $class[0]; - if (isset($this->prefixLengthsPsr4[$first])) { - $subPath = $class; - while (false !== $lastPos = strrpos($subPath, '\\')) { - $subPath = substr($subPath, 0, $lastPos); - $search = $subPath . '\\'; - if (isset($this->prefixDirsPsr4[$search])) { - $pathEnd = DIRECTORY_SEPARATOR . substr($logicalPathPsr4, $lastPos + 1); - foreach ($this->prefixDirsPsr4[$search] as $dir) { - if (file_exists($file = $dir . $pathEnd)) { - return $file; - } - } - } - } - } - - // PSR-4 fallback dirs - foreach ($this->fallbackDirsPsr4 as $dir) { - if (file_exists($file = $dir . DIRECTORY_SEPARATOR . $logicalPathPsr4)) { - return $file; - } - } - - // PSR-0 lookup - if (false !== $pos = strrpos($class, '\\')) { - // namespaced class name - $logicalPathPsr0 = substr($logicalPathPsr4, 0, $pos + 1) - . strtr(substr($logicalPathPsr4, $pos + 1), '_', DIRECTORY_SEPARATOR); - } else { - // PEAR-like class name - $logicalPathPsr0 = strtr($class, '_', DIRECTORY_SEPARATOR) . $ext; - } - - if (isset($this->prefixesPsr0[$first])) { - foreach ($this->prefixesPsr0[$first] as $prefix => $dirs) { - if (0 === strpos($class, $prefix)) { - foreach ($dirs as $dir) { - if (file_exists($file = $dir . DIRECTORY_SEPARATOR . $logicalPathPsr0)) { - return $file; - } - } - } - } - } - - // PSR-0 fallback dirs - foreach ($this->fallbackDirsPsr0 as $dir) { - if (file_exists($file = $dir . DIRECTORY_SEPARATOR . $logicalPathPsr0)) { - return $file; - } - } - - // PSR-0 include paths. - if ($this->useIncludePath && $file = stream_resolve_include_path($logicalPathPsr0)) { - return $file; - } - - return false; - } - - /** - * @return void - */ - private static function initializeIncludeClosure() - { - if (self::$includeFile !== null) { - return; - } - - /** - * Scope isolated include. - * - * Prevents access to $this/self from included files. - * - * @param string $file - * @return void - */ - self::$includeFile = \Closure::bind(static function($file) { - include $file; - }, null, null); - } -} diff --git a/apps/user_picker/composer/composer/InstalledVersions.php b/apps/user_picker/composer/composer/InstalledVersions.php deleted file mode 100644 index 2052022fd8e..00000000000 --- a/apps/user_picker/composer/composer/InstalledVersions.php +++ /dev/null @@ -1,396 +0,0 @@ - - * Jordi Boggiano - * - * For the full copyright and license information, please view the LICENSE - * file that was distributed with this source code. - */ - -namespace Composer; - -use Composer\Autoload\ClassLoader; -use Composer\Semver\VersionParser; - -/** - * This class is copied in every Composer installed project and available to all - * - * See also https://getcomposer.org/doc/07-runtime.md#installed-versions - * - * To require its presence, you can require `composer-runtime-api ^2.0` - * - * @final - */ -class InstalledVersions -{ - /** - * @var string|null if set (by reflection by Composer), this should be set to the path where this class is being copied to - * @internal - */ - private static $selfDir = null; - - /** - * @var mixed[]|null - * @psalm-var array{root: array{name: string, pretty_version: string, version: string, reference: string|null, type: string, install_path: string, aliases: string[], dev: bool}, versions: array}|array{}|null - */ - private static $installed; - - /** - * @var bool - */ - private static $installedIsLocalDir; - - /** - * @var bool|null - */ - private static $canGetVendors; - - /** - * @var array[] - * @psalm-var array}> - */ - private static $installedByVendor = array(); - - /** - * Returns a list of all package names which are present, either by being installed, replaced or provided - * - * @return string[] - * @psalm-return list - */ - public static function getInstalledPackages() - { - $packages = array(); - foreach (self::getInstalled() as $installed) { - $packages[] = array_keys($installed['versions']); - } - - if (1 === \count($packages)) { - return $packages[0]; - } - - return array_keys(array_flip(\call_user_func_array('array_merge', $packages))); - } - - /** - * Returns a list of all package names with a specific type e.g. 'library' - * - * @param string $type - * @return string[] - * @psalm-return list - */ - public static function getInstalledPackagesByType($type) - { - $packagesByType = array(); - - foreach (self::getInstalled() as $installed) { - foreach ($installed['versions'] as $name => $package) { - if (isset($package['type']) && $package['type'] === $type) { - $packagesByType[] = $name; - } - } - } - - return $packagesByType; - } - - /** - * Checks whether the given package is installed - * - * This also returns true if the package name is provided or replaced by another package - * - * @param string $packageName - * @param bool $includeDevRequirements - * @return bool - */ - public static function isInstalled($packageName, $includeDevRequirements = true) - { - foreach (self::getInstalled() as $installed) { - if (isset($installed['versions'][$packageName])) { - return $includeDevRequirements || !isset($installed['versions'][$packageName]['dev_requirement']) || $installed['versions'][$packageName]['dev_requirement'] === false; - } - } - - return false; - } - - /** - * Checks whether the given package satisfies a version constraint - * - * e.g. If you want to know whether version 2.3+ of package foo/bar is installed, you would call: - * - * Composer\InstalledVersions::satisfies(new VersionParser, 'foo/bar', '^2.3') - * - * @param VersionParser $parser Install composer/semver to have access to this class and functionality - * @param string $packageName - * @param string|null $constraint A version constraint to check for, if you pass one you have to make sure composer/semver is required by your package - * @return bool - */ - public static function satisfies(VersionParser $parser, $packageName, $constraint) - { - $constraint = $parser->parseConstraints((string) $constraint); - $provided = $parser->parseConstraints(self::getVersionRanges($packageName)); - - return $provided->matches($constraint); - } - - /** - * Returns a version constraint representing all the range(s) which are installed for a given package - * - * It is easier to use this via isInstalled() with the $constraint argument if you need to check - * whether a given version of a package is installed, and not just whether it exists - * - * @param string $packageName - * @return string Version constraint usable with composer/semver - */ - public static function getVersionRanges($packageName) - { - foreach (self::getInstalled() as $installed) { - if (!isset($installed['versions'][$packageName])) { - continue; - } - - $ranges = array(); - if (isset($installed['versions'][$packageName]['pretty_version'])) { - $ranges[] = $installed['versions'][$packageName]['pretty_version']; - } - if (array_key_exists('aliases', $installed['versions'][$packageName])) { - $ranges = array_merge($ranges, $installed['versions'][$packageName]['aliases']); - } - if (array_key_exists('replaced', $installed['versions'][$packageName])) { - $ranges = array_merge($ranges, $installed['versions'][$packageName]['replaced']); - } - if (array_key_exists('provided', $installed['versions'][$packageName])) { - $ranges = array_merge($ranges, $installed['versions'][$packageName]['provided']); - } - - return implode(' || ', $ranges); - } - - throw new \OutOfBoundsException('Package "' . $packageName . '" is not installed'); - } - - /** - * @param string $packageName - * @return string|null If the package is being replaced or provided but is not really installed, null will be returned as version, use satisfies or getVersionRanges if you need to know if a given version is present - */ - public static function getVersion($packageName) - { - foreach (self::getInstalled() as $installed) { - if (!isset($installed['versions'][$packageName])) { - continue; - } - - if (!isset($installed['versions'][$packageName]['version'])) { - return null; - } - - return $installed['versions'][$packageName]['version']; - } - - throw new \OutOfBoundsException('Package "' . $packageName . '" is not installed'); - } - - /** - * @param string $packageName - * @return string|null If the package is being replaced or provided but is not really installed, null will be returned as version, use satisfies or getVersionRanges if you need to know if a given version is present - */ - public static function getPrettyVersion($packageName) - { - foreach (self::getInstalled() as $installed) { - if (!isset($installed['versions'][$packageName])) { - continue; - } - - if (!isset($installed['versions'][$packageName]['pretty_version'])) { - return null; - } - - return $installed['versions'][$packageName]['pretty_version']; - } - - throw new \OutOfBoundsException('Package "' . $packageName . '" is not installed'); - } - - /** - * @param string $packageName - * @return string|null If the package is being replaced or provided but is not really installed, null will be returned as reference - */ - public static function getReference($packageName) - { - foreach (self::getInstalled() as $installed) { - if (!isset($installed['versions'][$packageName])) { - continue; - } - - if (!isset($installed['versions'][$packageName]['reference'])) { - return null; - } - - return $installed['versions'][$packageName]['reference']; - } - - throw new \OutOfBoundsException('Package "' . $packageName . '" is not installed'); - } - - /** - * @param string $packageName - * @return string|null If the package is being replaced or provided but is not really installed, null will be returned as install path. Packages of type metapackages also have a null install path. - */ - public static function getInstallPath($packageName) - { - foreach (self::getInstalled() as $installed) { - if (!isset($installed['versions'][$packageName])) { - continue; - } - - return isset($installed['versions'][$packageName]['install_path']) ? $installed['versions'][$packageName]['install_path'] : null; - } - - throw new \OutOfBoundsException('Package "' . $packageName . '" is not installed'); - } - - /** - * @return array - * @psalm-return array{name: string, pretty_version: string, version: string, reference: string|null, type: string, install_path: string, aliases: string[], dev: bool} - */ - public static function getRootPackage() - { - $installed = self::getInstalled(); - - return $installed[0]['root']; - } - - /** - * Returns the raw installed.php data for custom implementations - * - * @deprecated Use getAllRawData() instead which returns all datasets for all autoloaders present in the process. getRawData only returns the first dataset loaded, which may not be what you expect. - * @return array[] - * @psalm-return array{root: array{name: string, pretty_version: string, version: string, reference: string|null, type: string, install_path: string, aliases: string[], dev: bool}, versions: array} - */ - public static function getRawData() - { - @trigger_error('getRawData only returns the first dataset loaded, which may not be what you expect. Use getAllRawData() instead which returns all datasets for all autoloaders present in the process.', E_USER_DEPRECATED); - - if (null === self::$installed) { - // only require the installed.php file if this file is loaded from its dumped location, - // and not from its source location in the composer/composer package, see https://github.com/composer/composer/issues/9937 - if (substr(__DIR__, -8, 1) !== 'C') { - self::$installed = include __DIR__ . '/installed.php'; - } else { - self::$installed = array(); - } - } - - return self::$installed; - } - - /** - * Returns the raw data of all installed.php which are currently loaded for custom implementations - * - * @return array[] - * @psalm-return list}> - */ - public static function getAllRawData() - { - return self::getInstalled(); - } - - /** - * Lets you reload the static array from another file - * - * This is only useful for complex integrations in which a project needs to use - * this class but then also needs to execute another project's autoloader in process, - * and wants to ensure both projects have access to their version of installed.php. - * - * A typical case would be PHPUnit, where it would need to make sure it reads all - * the data it needs from this class, then call reload() with - * `require $CWD/vendor/composer/installed.php` (or similar) as input to make sure - * the project in which it runs can then also use this class safely, without - * interference between PHPUnit's dependencies and the project's dependencies. - * - * @param array[] $data A vendor/composer/installed.php data set - * @return void - * - * @psalm-param array{root: array{name: string, pretty_version: string, version: string, reference: string|null, type: string, install_path: string, aliases: string[], dev: bool}, versions: array} $data - */ - public static function reload($data) - { - self::$installed = $data; - self::$installedByVendor = array(); - - // when using reload, we disable the duplicate protection to ensure that self::$installed data is - // always returned, but we cannot know whether it comes from the installed.php in __DIR__ or not, - // so we have to assume it does not, and that may result in duplicate data being returned when listing - // all installed packages for example - self::$installedIsLocalDir = false; - } - - /** - * @return string - */ - private static function getSelfDir() - { - if (self::$selfDir === null) { - self::$selfDir = strtr(__DIR__, '\\', '/'); - } - - return self::$selfDir; - } - - /** - * @return array[] - * @psalm-return list}> - */ - private static function getInstalled() - { - if (null === self::$canGetVendors) { - self::$canGetVendors = method_exists('Composer\Autoload\ClassLoader', 'getRegisteredLoaders'); - } - - $installed = array(); - $copiedLocalDir = false; - - if (self::$canGetVendors) { - $selfDir = self::getSelfDir(); - foreach (ClassLoader::getRegisteredLoaders() as $vendorDir => $loader) { - $vendorDir = strtr($vendorDir, '\\', '/'); - if (isset(self::$installedByVendor[$vendorDir])) { - $installed[] = self::$installedByVendor[$vendorDir]; - } elseif (is_file($vendorDir.'/composer/installed.php')) { - /** @var array{root: array{name: string, pretty_version: string, version: string, reference: string|null, type: string, install_path: string, aliases: string[], dev: bool}, versions: array} $required */ - $required = require $vendorDir.'/composer/installed.php'; - self::$installedByVendor[$vendorDir] = $required; - $installed[] = $required; - if (self::$installed === null && $vendorDir.'/composer' === $selfDir) { - self::$installed = $required; - self::$installedIsLocalDir = true; - } - } - if (self::$installedIsLocalDir && $vendorDir.'/composer' === $selfDir) { - $copiedLocalDir = true; - } - } - } - - if (null === self::$installed) { - // only require the installed.php file if this file is loaded from its dumped location, - // and not from its source location in the composer/composer package, see https://github.com/composer/composer/issues/9937 - if (substr(__DIR__, -8, 1) !== 'C') { - /** @var array{root: array{name: string, pretty_version: string, version: string, reference: string|null, type: string, install_path: string, aliases: string[], dev: bool}, versions: array} $required */ - $required = require __DIR__ . '/installed.php'; - self::$installed = $required; - } else { - self::$installed = array(); - } - } - - if (self::$installed !== array() && !$copiedLocalDir) { - $installed[] = self::$installed; - } - - return $installed; - } -} diff --git a/apps/user_picker/composer/composer/LICENSE b/apps/user_picker/composer/composer/LICENSE deleted file mode 100644 index f27399a042d..00000000000 --- a/apps/user_picker/composer/composer/LICENSE +++ /dev/null @@ -1,21 +0,0 @@ - -Copyright (c) Nils Adermann, Jordi Boggiano - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is furnished -to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -THE SOFTWARE. - diff --git a/apps/user_picker/composer/composer/autoload_classmap.php b/apps/user_picker/composer/composer/autoload_classmap.php deleted file mode 100644 index c9737263aeb..00000000000 --- a/apps/user_picker/composer/composer/autoload_classmap.php +++ /dev/null @@ -1,13 +0,0 @@ - $vendorDir . '/composer/InstalledVersions.php', - 'OCA\\UserPicker\\AppInfo\\Application' => $baseDir . '/../lib/AppInfo/Application.php', - 'OCA\\UserPicker\\Listener\\UserPickerReferenceListener' => $baseDir . '/../lib/Listener/UserPickerReferenceListener.php', - 'OCA\\UserPicker\\Reference\\ProfilePickerReferenceProvider' => $baseDir . '/../lib/Reference/ProfilePickerReferenceProvider.php', -); diff --git a/apps/user_picker/composer/composer/autoload_namespaces.php b/apps/user_picker/composer/composer/autoload_namespaces.php deleted file mode 100644 index 3f5c9296251..00000000000 --- a/apps/user_picker/composer/composer/autoload_namespaces.php +++ /dev/null @@ -1,9 +0,0 @@ - array($baseDir . '/../lib'), -); diff --git a/apps/user_picker/composer/composer/autoload_real.php b/apps/user_picker/composer/composer/autoload_real.php deleted file mode 100644 index c39c53c5081..00000000000 --- a/apps/user_picker/composer/composer/autoload_real.php +++ /dev/null @@ -1,37 +0,0 @@ -setClassMapAuthoritative(true); - $loader->register(true); - - return $loader; - } -} diff --git a/apps/user_picker/composer/composer/autoload_static.php b/apps/user_picker/composer/composer/autoload_static.php deleted file mode 100644 index 02daae8b94e..00000000000 --- a/apps/user_picker/composer/composer/autoload_static.php +++ /dev/null @@ -1,39 +0,0 @@ - - array ( - 'OCA\\UserPicker\\' => 15, - ), - ); - - public static $prefixDirsPsr4 = array ( - 'OCA\\UserPicker\\' => - array ( - 0 => __DIR__ . '/..' . '/../lib', - ), - ); - - public static $classMap = array ( - 'Composer\\InstalledVersions' => __DIR__ . '/..' . '/composer/InstalledVersions.php', - 'OCA\\UserPicker\\AppInfo\\Application' => __DIR__ . '/..' . '/../lib/AppInfo/Application.php', - 'OCA\\UserPicker\\Listener\\UserPickerReferenceListener' => __DIR__ . '/..' . '/../lib/Listener/UserPickerReferenceListener.php', - 'OCA\\UserPicker\\Reference\\ProfilePickerReferenceProvider' => __DIR__ . '/..' . '/../lib/Reference/ProfilePickerReferenceProvider.php', - ); - - public static function getInitializer(ClassLoader $loader) - { - return \Closure::bind(function () use ($loader) { - $loader->prefixLengthsPsr4 = ComposerStaticInitUserPicker::$prefixLengthsPsr4; - $loader->prefixDirsPsr4 = ComposerStaticInitUserPicker::$prefixDirsPsr4; - $loader->classMap = ComposerStaticInitUserPicker::$classMap; - - }, null, ClassLoader::class); - } -} diff --git a/apps/user_picker/composer/composer/installed.json b/apps/user_picker/composer/composer/installed.json deleted file mode 100644 index f20a6c47c6d..00000000000 --- a/apps/user_picker/composer/composer/installed.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "packages": [], - "dev": false, - "dev-package-names": [] -} diff --git a/apps/user_picker/composer/composer/installed.php b/apps/user_picker/composer/composer/installed.php deleted file mode 100644 index 93f63663234..00000000000 --- a/apps/user_picker/composer/composer/installed.php +++ /dev/null @@ -1,23 +0,0 @@ - array( - 'name' => '__root__', - 'pretty_version' => 'dev-master', - 'version' => 'dev-master', - 'reference' => '4ee57514f882450097e09ce9a577c2dcdb0f002c', - 'type' => 'library', - 'install_path' => __DIR__ . '/../', - 'aliases' => array(), - 'dev' => false, - ), - 'versions' => array( - '__root__' => array( - 'pretty_version' => 'dev-master', - 'version' => 'dev-master', - 'reference' => '4ee57514f882450097e09ce9a577c2dcdb0f002c', - 'type' => 'library', - 'install_path' => __DIR__ . '/../', - 'aliases' => array(), - 'dev_requirement' => false, - ), - ), -); diff --git a/apps/user_picker/img/app-dark.svg b/apps/user_picker/img/app-dark.svg deleted file mode 100644 index 2aa865d2cf1..00000000000 --- a/apps/user_picker/img/app-dark.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/apps/user_picker/img/app.svg b/apps/user_picker/img/app.svg deleted file mode 100644 index ed094bacbba..00000000000 --- a/apps/user_picker/img/app.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/apps/user_picker/l10n/.gitkeep b/apps/user_picker/l10n/.gitkeep deleted file mode 100644 index e69de29bb2d..00000000000 diff --git a/apps/user_picker/l10n/cs.js b/apps/user_picker/l10n/cs.js deleted file mode 100644 index 63fbc8cdaa5..00000000000 --- a/apps/user_picker/l10n/cs.js +++ /dev/null @@ -1,14 +0,0 @@ -OC.L10N.register( - "user_picker", - { - "Profile picker" : "Výběr profilu", - "Profile smart picker and link preview" : "Inteligentní výběr profilu a náhled odkazu", - "This app adds the ability to search for user profiles via the smart picker and display link previews for them." : "Tato aplikace přidává možnost hledat uživatelské profily prostřednictvím inteligentního výběru a zobrazovat náhledy odkazů na ně.", - "Searching …" : "Hledání …", - "Not found" : "Nenalezeno", - "Search for a user profile" : "Hledat uživatelský profil", - "Search for a user profile. Start typing" : "Hledejte uživatelský profil. Začněte psát", - "Insert selected user profile link" : "Vložte odkaz na profil vybraného uživatele", - "Insert" : "Vložit" -}, -"nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;"); diff --git a/apps/user_picker/l10n/cs.json b/apps/user_picker/l10n/cs.json deleted file mode 100644 index 93e57505238..00000000000 --- a/apps/user_picker/l10n/cs.json +++ /dev/null @@ -1,12 +0,0 @@ -{ "translations": { - "Profile picker" : "Výběr profilu", - "Profile smart picker and link preview" : "Inteligentní výběr profilu a náhled odkazu", - "This app adds the ability to search for user profiles via the smart picker and display link previews for them." : "Tato aplikace přidává možnost hledat uživatelské profily prostřednictvím inteligentního výběru a zobrazovat náhledy odkazů na ně.", - "Searching …" : "Hledání …", - "Not found" : "Nenalezeno", - "Search for a user profile" : "Hledat uživatelský profil", - "Search for a user profile. Start typing" : "Hledejte uživatelský profil. Začněte psát", - "Insert selected user profile link" : "Vložte odkaz na profil vybraného uživatele", - "Insert" : "Vložit" -},"pluralForm" :"nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;" -} \ No newline at end of file diff --git a/apps/user_picker/l10n/de.js b/apps/user_picker/l10n/de.js deleted file mode 100644 index 67eba5e06de..00000000000 --- a/apps/user_picker/l10n/de.js +++ /dev/null @@ -1,14 +0,0 @@ -OC.L10N.register( - "user_picker", - { - "Profile picker" : "Profilauswahl", - "Profile smart picker and link preview" : "Intelligente Profilauswahl und Linkvorschau", - "This app adds the ability to search for user profiles via the smart picker and display link previews for them." : "Diese App bietet die Möglichkeit, Benutzerprofile über die intelligente Auswahlliste zu suchen und Link-Vorschauen anzuzeigen.", - "Searching …" : "Suche …", - "Not found" : "Nicht gefunden", - "Search for a user profile" : "Suche nach einem Benutzerprofil", - "Search for a user profile. Start typing" : "Suche nach einem Benutzerprofil. Mit der Eingabe beginnen", - "Insert selected user profile link" : "Link zum ausgewählten Benutzerprofil einfügen", - "Insert" : "Einfügen" -}, -"nplurals=2; plural=(n != 1);"); diff --git a/apps/user_picker/l10n/de.json b/apps/user_picker/l10n/de.json deleted file mode 100644 index 5b849b891bd..00000000000 --- a/apps/user_picker/l10n/de.json +++ /dev/null @@ -1,12 +0,0 @@ -{ "translations": { - "Profile picker" : "Profilauswahl", - "Profile smart picker and link preview" : "Intelligente Profilauswahl und Linkvorschau", - "This app adds the ability to search for user profiles via the smart picker and display link previews for them." : "Diese App bietet die Möglichkeit, Benutzerprofile über die intelligente Auswahlliste zu suchen und Link-Vorschauen anzuzeigen.", - "Searching …" : "Suche …", - "Not found" : "Nicht gefunden", - "Search for a user profile" : "Suche nach einem Benutzerprofil", - "Search for a user profile. Start typing" : "Suche nach einem Benutzerprofil. Mit der Eingabe beginnen", - "Insert selected user profile link" : "Link zum ausgewählten Benutzerprofil einfügen", - "Insert" : "Einfügen" -},"pluralForm" :"nplurals=2; plural=(n != 1);" -} \ No newline at end of file diff --git a/apps/user_picker/l10n/de_DE.js b/apps/user_picker/l10n/de_DE.js deleted file mode 100644 index 3449b79bf38..00000000000 --- a/apps/user_picker/l10n/de_DE.js +++ /dev/null @@ -1,14 +0,0 @@ -OC.L10N.register( - "user_picker", - { - "Profile picker" : "Profilauswahl", - "Profile smart picker and link preview" : "Intelligente Profilauswahl und Link-Vorschau", - "This app adds the ability to search for user profiles via the smart picker and display link previews for them." : "Diese App bietet die Möglichkeit, Benutzerprofile über die intelligente Auswahlliste zu suchen und Link-Vorschauen anzuzeigen.", - "Searching …" : "Suche …", - "Not found" : "Nicht gefunden", - "Search for a user profile" : "Suche nach einem Benutzerprofil", - "Search for a user profile. Start typing" : "Suche nach einem Benutzerprofil. Mit der Eingabe beginnen", - "Insert selected user profile link" : "Link zum ausgewählten Benutzerprofil einfügen", - "Insert" : "Einfügen" -}, -"nplurals=2; plural=(n != 1);"); diff --git a/apps/user_picker/l10n/de_DE.json b/apps/user_picker/l10n/de_DE.json deleted file mode 100644 index f5e97da4ab5..00000000000 --- a/apps/user_picker/l10n/de_DE.json +++ /dev/null @@ -1,12 +0,0 @@ -{ "translations": { - "Profile picker" : "Profilauswahl", - "Profile smart picker and link preview" : "Intelligente Profilauswahl und Link-Vorschau", - "This app adds the ability to search for user profiles via the smart picker and display link previews for them." : "Diese App bietet die Möglichkeit, Benutzerprofile über die intelligente Auswahlliste zu suchen und Link-Vorschauen anzuzeigen.", - "Searching …" : "Suche …", - "Not found" : "Nicht gefunden", - "Search for a user profile" : "Suche nach einem Benutzerprofil", - "Search for a user profile. Start typing" : "Suche nach einem Benutzerprofil. Mit der Eingabe beginnen", - "Insert selected user profile link" : "Link zum ausgewählten Benutzerprofil einfügen", - "Insert" : "Einfügen" -},"pluralForm" :"nplurals=2; plural=(n != 1);" -} \ No newline at end of file diff --git a/apps/user_picker/l10n/el.js b/apps/user_picker/l10n/el.js deleted file mode 100644 index 353cd97e1a9..00000000000 --- a/apps/user_picker/l10n/el.js +++ /dev/null @@ -1,14 +0,0 @@ -OC.L10N.register( - "user_picker", - { - "Profile picker" : "Επιλογέας προφίλ", - "Profile smart picker and link preview" : "Έξυπνος επιλογέας προφίλ και προεπισκόπηση συνδέσμου", - "This app adds the ability to search for user profiles via the smart picker and display link previews for them." : "Αυτή η εφαρμογή προσθέτει τη δυνατότητα αναζήτησης προφίλ χρηστών μέσω του έξυπνου επιλογέα και την εμφάνιση προεπισκοπήσεων συνδέσμων για αυτά.", - "Searching …" : "Γίνεται αναζήτηση ...", - "Not found" : "Δεν βρέθηκε", - "Search for a user profile" : "Αναζήτηση για προφίλ χρήστη", - "Search for a user profile. Start typing" : "Αναζήτηση για προφίλ χρήστη. Ξεκινήστε την πληκτρολόγηση", - "Insert selected user profile link" : "Εισαγωγή συνδέσμου επιλεγμένου προφίλ χρήστη", - "Insert" : "Εισαγωγή" -}, -"nplurals=2; plural=(n != 1);"); diff --git a/apps/user_picker/l10n/el.json b/apps/user_picker/l10n/el.json deleted file mode 100644 index e97b4981fb9..00000000000 --- a/apps/user_picker/l10n/el.json +++ /dev/null @@ -1,12 +0,0 @@ -{ "translations": { - "Profile picker" : "Επιλογέας προφίλ", - "Profile smart picker and link preview" : "Έξυπνος επιλογέας προφίλ και προεπισκόπηση συνδέσμου", - "This app adds the ability to search for user profiles via the smart picker and display link previews for them." : "Αυτή η εφαρμογή προσθέτει τη δυνατότητα αναζήτησης προφίλ χρηστών μέσω του έξυπνου επιλογέα και την εμφάνιση προεπισκοπήσεων συνδέσμων για αυτά.", - "Searching …" : "Γίνεται αναζήτηση ...", - "Not found" : "Δεν βρέθηκε", - "Search for a user profile" : "Αναζήτηση για προφίλ χρήστη", - "Search for a user profile. Start typing" : "Αναζήτηση για προφίλ χρήστη. Ξεκινήστε την πληκτρολόγηση", - "Insert selected user profile link" : "Εισαγωγή συνδέσμου επιλεγμένου προφίλ χρήστη", - "Insert" : "Εισαγωγή" -},"pluralForm" :"nplurals=2; plural=(n != 1);" -} \ No newline at end of file diff --git a/apps/user_picker/l10n/es.js b/apps/user_picker/l10n/es.js deleted file mode 100644 index e0f1b98e4f1..00000000000 --- a/apps/user_picker/l10n/es.js +++ /dev/null @@ -1,14 +0,0 @@ -OC.L10N.register( - "user_picker", - { - "Profile picker" : "Seleccionador de perfiles", - "Profile smart picker and link preview" : "Seleccionar de perfiles inteligente y previsualización de enlaces", - "This app adds the ability to search for user profiles via the smart picker and display link previews for them." : "Este aplicación añade la abilidad para buscar perfiles de usuario con el seleccionador de perfiles inteligente y mostrar previsualizaciones de enlace", - "Searching …" : "Buscando …", - "Not found" : "No encontrado", - "Search for a user profile" : "Buscar un perfil de usuario", - "Search for a user profile. Start typing" : "Buscar un perfil de usuario. Empiece a escribir", - "Insert selected user profile link" : "Insertar enlace a perfil de usuario seleccionado", - "Insert" : "Insertar" -}, -"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"); diff --git a/apps/user_picker/l10n/es.json b/apps/user_picker/l10n/es.json deleted file mode 100644 index f3b97e91265..00000000000 --- a/apps/user_picker/l10n/es.json +++ /dev/null @@ -1,12 +0,0 @@ -{ "translations": { - "Profile picker" : "Seleccionador de perfiles", - "Profile smart picker and link preview" : "Seleccionar de perfiles inteligente y previsualización de enlaces", - "This app adds the ability to search for user profiles via the smart picker and display link previews for them." : "Este aplicación añade la abilidad para buscar perfiles de usuario con el seleccionador de perfiles inteligente y mostrar previsualizaciones de enlace", - "Searching …" : "Buscando …", - "Not found" : "No encontrado", - "Search for a user profile" : "Buscar un perfil de usuario", - "Search for a user profile. Start typing" : "Buscar un perfil de usuario. Empiece a escribir", - "Insert selected user profile link" : "Insertar enlace a perfil de usuario seleccionado", - "Insert" : "Insertar" -},"pluralForm" :"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;" -} \ No newline at end of file diff --git a/apps/user_picker/l10n/et_EE.js b/apps/user_picker/l10n/et_EE.js deleted file mode 100644 index 7668d646c6c..00000000000 --- a/apps/user_picker/l10n/et_EE.js +++ /dev/null @@ -1,14 +0,0 @@ -OC.L10N.register( - "user_picker", - { - "Profile picker" : "Profiilivalija", - "Profile smart picker and link preview" : "Profiili nutivalija ja linkide eelvaade", - "This app adds the ability to search for user profiles via the smart picker and display link previews for them." : "See rakendus lisab võimaluse otsida nutivalijast profiile ja kuvada nende lingi eelvaadet.", - "Searching …" : "Otsin...", - "Not found" : "Ei leidu", - "Search for a user profile" : "Otsi kasutajaprofiili", - "Search for a user profile. Start typing" : "Otsi kasutajaprofiili. Kirjuta midagi", - "Insert selected user profile link" : "Lisa valitud kasutajaprofiili link", - "Insert" : "Lisa" -}, -"nplurals=2; plural=(n != 1);"); diff --git a/apps/user_picker/l10n/et_EE.json b/apps/user_picker/l10n/et_EE.json deleted file mode 100644 index 096026b1211..00000000000 --- a/apps/user_picker/l10n/et_EE.json +++ /dev/null @@ -1,12 +0,0 @@ -{ "translations": { - "Profile picker" : "Profiilivalija", - "Profile smart picker and link preview" : "Profiili nutivalija ja linkide eelvaade", - "This app adds the ability to search for user profiles via the smart picker and display link previews for them." : "See rakendus lisab võimaluse otsida nutivalijast profiile ja kuvada nende lingi eelvaadet.", - "Searching …" : "Otsin...", - "Not found" : "Ei leidu", - "Search for a user profile" : "Otsi kasutajaprofiili", - "Search for a user profile. Start typing" : "Otsi kasutajaprofiili. Kirjuta midagi", - "Insert selected user profile link" : "Lisa valitud kasutajaprofiili link", - "Insert" : "Lisa" -},"pluralForm" :"nplurals=2; plural=(n != 1);" -} \ No newline at end of file diff --git a/apps/user_picker/l10n/fi.js b/apps/user_picker/l10n/fi.js deleted file mode 100644 index 3b5a4af4d77..00000000000 --- a/apps/user_picker/l10n/fi.js +++ /dev/null @@ -1,12 +0,0 @@ -OC.L10N.register( - "user_picker", - { - "Profile picker" : "Profiilivalitsin", - "Searching …" : "Haetaan …", - "Not found" : "Ei löytynyt", - "Search for a user profile" : "Etsi käyttäjäprofiilia", - "Search for a user profile. Start typing" : "Etsi käyttäjäprofiilia. Aloita kirjoittaminen", - "Insert selected user profile link" : "Syötä valitun käyttäjäprofiilin linkki", - "Insert" : "Lisää" -}, -"nplurals=2; plural=(n != 1);"); diff --git a/apps/user_picker/l10n/fi.json b/apps/user_picker/l10n/fi.json deleted file mode 100644 index 8f8b9a57b4e..00000000000 --- a/apps/user_picker/l10n/fi.json +++ /dev/null @@ -1,10 +0,0 @@ -{ "translations": { - "Profile picker" : "Profiilivalitsin", - "Searching …" : "Haetaan …", - "Not found" : "Ei löytynyt", - "Search for a user profile" : "Etsi käyttäjäprofiilia", - "Search for a user profile. Start typing" : "Etsi käyttäjäprofiilia. Aloita kirjoittaminen", - "Insert selected user profile link" : "Syötä valitun käyttäjäprofiilin linkki", - "Insert" : "Lisää" -},"pluralForm" :"nplurals=2; plural=(n != 1);" -} \ No newline at end of file diff --git a/apps/user_picker/l10n/fr.js b/apps/user_picker/l10n/fr.js deleted file mode 100644 index ebc39e86a78..00000000000 --- a/apps/user_picker/l10n/fr.js +++ /dev/null @@ -1,12 +0,0 @@ -OC.L10N.register( - "user_picker", - { - "Profile picker" : "Sélecteur de profil", - "Searching …" : "Recherche…", - "Not found" : "Non trouvé", - "Search for a user profile" : "Rechercher un profil utilisateur", - "Search for a user profile. Start typing" : "Rechercher un profil utilisateur. Saisissez quelque chose", - "Insert selected user profile link" : "Insérer le lien du profil utilisateur sélectionné", - "Insert" : "Insérer" -}, -"nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"); diff --git a/apps/user_picker/l10n/fr.json b/apps/user_picker/l10n/fr.json deleted file mode 100644 index 50e001e596f..00000000000 --- a/apps/user_picker/l10n/fr.json +++ /dev/null @@ -1,10 +0,0 @@ -{ "translations": { - "Profile picker" : "Sélecteur de profil", - "Searching …" : "Recherche…", - "Not found" : "Non trouvé", - "Search for a user profile" : "Rechercher un profil utilisateur", - "Search for a user profile. Start typing" : "Rechercher un profil utilisateur. Saisissez quelque chose", - "Insert selected user profile link" : "Insérer le lien du profil utilisateur sélectionné", - "Insert" : "Insérer" -},"pluralForm" :"nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;" -} \ No newline at end of file diff --git a/apps/user_picker/l10n/ga.js b/apps/user_picker/l10n/ga.js deleted file mode 100644 index 9b82cc1cb4a..00000000000 --- a/apps/user_picker/l10n/ga.js +++ /dev/null @@ -1,14 +0,0 @@ -OC.L10N.register( - "user_picker", - { - "Profile picker" : "Roghnóir próifíle", - "Profile smart picker and link preview" : "Roghnóir cliste próifíle agus réamhamharc nasc", - "This app adds the ability to search for user profiles via the smart picker and display link previews for them." : "Cuireann an aip seo an cumas leis próifílí úsáideoirí a chuardach tríd an roghnóir cliste agus réamhamhairc nasc a thaispeáint dóibh.", - "Searching …" : "Ag cuardach …", - "Not found" : "Ní bhfuarthas", - "Search for a user profile" : "Cuardaigh próifíl úsáideora", - "Search for a user profile. Start typing" : "Cuardaigh próifíl úsáideora. Tosaigh ag clóscríobh.", - "Insert selected user profile link" : "Cuir nasc próifíl úsáideora roghnaithe isteach", - "Insert" : "cuir isteach" -}, -"nplurals=5; plural=(n==1 ? 0 : n==2 ? 1 : n<7 ? 2 : n<11 ? 3 : 4);"); diff --git a/apps/user_picker/l10n/ga.json b/apps/user_picker/l10n/ga.json deleted file mode 100644 index d1e2763bd66..00000000000 --- a/apps/user_picker/l10n/ga.json +++ /dev/null @@ -1,12 +0,0 @@ -{ "translations": { - "Profile picker" : "Roghnóir próifíle", - "Profile smart picker and link preview" : "Roghnóir cliste próifíle agus réamhamharc nasc", - "This app adds the ability to search for user profiles via the smart picker and display link previews for them." : "Cuireann an aip seo an cumas leis próifílí úsáideoirí a chuardach tríd an roghnóir cliste agus réamhamhairc nasc a thaispeáint dóibh.", - "Searching …" : "Ag cuardach …", - "Not found" : "Ní bhfuarthas", - "Search for a user profile" : "Cuardaigh próifíl úsáideora", - "Search for a user profile. Start typing" : "Cuardaigh próifíl úsáideora. Tosaigh ag clóscríobh.", - "Insert selected user profile link" : "Cuir nasc próifíl úsáideora roghnaithe isteach", - "Insert" : "cuir isteach" -},"pluralForm" :"nplurals=5; plural=(n==1 ? 0 : n==2 ? 1 : n<7 ? 2 : n<11 ? 3 : 4);" -} \ No newline at end of file diff --git a/apps/user_picker/l10n/gl.js b/apps/user_picker/l10n/gl.js deleted file mode 100644 index 2de9c016d45..00000000000 --- a/apps/user_picker/l10n/gl.js +++ /dev/null @@ -1,14 +0,0 @@ -OC.L10N.register( - "user_picker", - { - "Profile picker" : "Selector de perfís", - "Profile smart picker and link preview" : "Selector intelixente de perfís e vista previa das ligazóns", - "This app adds the ability to search for user profiles via the smart picker and display link previews for them." : "Esta aplicación engade a posibilidade de buscar perfís de usuario a través do selector intelixente e amosar as vistas previas das ligazóns correspondentes.", - "Searching …" : "Buscando…", - "Not found" : "Non atopado", - "Search for a user profile" : "Buscar un perfil de usuario", - "Search for a user profile. Start typing" : "Buscar un perfil de usuario. Comezar a escribir", - "Insert selected user profile link" : "Inserir a ligazón do perfil do usuario seleccionado", - "Insert" : "Inserir" -}, -"nplurals=2; plural=(n != 1);"); diff --git a/apps/user_picker/l10n/gl.json b/apps/user_picker/l10n/gl.json deleted file mode 100644 index eb5941b4982..00000000000 --- a/apps/user_picker/l10n/gl.json +++ /dev/null @@ -1,12 +0,0 @@ -{ "translations": { - "Profile picker" : "Selector de perfís", - "Profile smart picker and link preview" : "Selector intelixente de perfís e vista previa das ligazóns", - "This app adds the ability to search for user profiles via the smart picker and display link previews for them." : "Esta aplicación engade a posibilidade de buscar perfís de usuario a través do selector intelixente e amosar as vistas previas das ligazóns correspondentes.", - "Searching …" : "Buscando…", - "Not found" : "Non atopado", - "Search for a user profile" : "Buscar un perfil de usuario", - "Search for a user profile. Start typing" : "Buscar un perfil de usuario. Comezar a escribir", - "Insert selected user profile link" : "Inserir a ligazón do perfil do usuario seleccionado", - "Insert" : "Inserir" -},"pluralForm" :"nplurals=2; plural=(n != 1);" -} \ No newline at end of file diff --git a/apps/user_picker/l10n/mn.js b/apps/user_picker/l10n/mn.js deleted file mode 100644 index 7bec5bb1ccf..00000000000 --- a/apps/user_picker/l10n/mn.js +++ /dev/null @@ -1,13 +0,0 @@ -OC.L10N.register( - "user_picker", - { - "Profile picker" : "Профайл сонгогч", - "Profile smart picker and link preview" : "Профайлын ухаалаг сонгогч болон холбоосын урьдчилсан үзэлт", - "Searching …" : "Хайж байна …", - "Not found" : "Олдсонгүй", - "Search for a user profile" : "Хэрэглэгчийн профайл хайх", - "Search for a user profile. Start typing" : "Хэрэглэгчийн профайл хайх. Бичиж эхлэнэ үү", - "Insert selected user profile link" : "Сонгосон хэрэглэгчийн профайлын холбоосыг оруулах", - "Insert" : "Оруулах" -}, -"nplurals=2; plural=(n != 1);"); diff --git a/apps/user_picker/l10n/mn.json b/apps/user_picker/l10n/mn.json deleted file mode 100644 index f959aceae94..00000000000 --- a/apps/user_picker/l10n/mn.json +++ /dev/null @@ -1,11 +0,0 @@ -{ "translations": { - "Profile picker" : "Профайл сонгогч", - "Profile smart picker and link preview" : "Профайлын ухаалаг сонгогч болон холбоосын урьдчилсан үзэлт", - "Searching …" : "Хайж байна …", - "Not found" : "Олдсонгүй", - "Search for a user profile" : "Хэрэглэгчийн профайл хайх", - "Search for a user profile. Start typing" : "Хэрэглэгчийн профайл хайх. Бичиж эхлэнэ үү", - "Insert selected user profile link" : "Сонгосон хэрэглэгчийн профайлын холбоосыг оруулах", - "Insert" : "Оруулах" -},"pluralForm" :"nplurals=2; plural=(n != 1);" -} \ No newline at end of file diff --git a/apps/user_picker/l10n/oc.js b/apps/user_picker/l10n/oc.js deleted file mode 100644 index 16b537d9f25..00000000000 --- a/apps/user_picker/l10n/oc.js +++ /dev/null @@ -1,14 +0,0 @@ -OC.L10N.register( - "user_picker", - { - "Profile picker" : "Selector de perfil", - "Profile smart picker and link preview" : "Selector intelligent de perfil e apercebut de ligam", - "This app adds the ability to search for user profiles via the smart picker and display link previews for them." : "Aquesta aplicacion ajusta la possibilitat de cercar de perfils utilizaire via lo selector intelligent e d’afichar los apercebuts de ligams per aqueles.", - "Searching …" : "Recèrca…", - "Not found" : "Non trobat", - "Search for a user profile" : "Cercar un perfil utilizaire", - "Search for a user profile. Start typing" : "Cercar un perfil utilizaire. Començatz de picar", - "Insert selected user profile link" : "Inserir lo ligam del perfil utilizaire seleccionat", - "Insert" : "Inserir" -}, -"nplurals=2; plural=(n > 1);"); diff --git a/apps/user_picker/l10n/oc.json b/apps/user_picker/l10n/oc.json deleted file mode 100644 index 351535f6f9c..00000000000 --- a/apps/user_picker/l10n/oc.json +++ /dev/null @@ -1,12 +0,0 @@ -{ "translations": { - "Profile picker" : "Selector de perfil", - "Profile smart picker and link preview" : "Selector intelligent de perfil e apercebut de ligam", - "This app adds the ability to search for user profiles via the smart picker and display link previews for them." : "Aquesta aplicacion ajusta la possibilitat de cercar de perfils utilizaire via lo selector intelligent e d’afichar los apercebuts de ligams per aqueles.", - "Searching …" : "Recèrca…", - "Not found" : "Non trobat", - "Search for a user profile" : "Cercar un perfil utilizaire", - "Search for a user profile. Start typing" : "Cercar un perfil utilizaire. Començatz de picar", - "Insert selected user profile link" : "Inserir lo ligam del perfil utilizaire seleccionat", - "Insert" : "Inserir" -},"pluralForm" :"nplurals=2; plural=(n > 1);" -} \ No newline at end of file diff --git a/apps/user_picker/l10n/sk.js b/apps/user_picker/l10n/sk.js deleted file mode 100644 index 33539133483..00000000000 --- a/apps/user_picker/l10n/sk.js +++ /dev/null @@ -1,14 +0,0 @@ -OC.L10N.register( - "user_picker", - { - "Profile picker" : "Výber profilu", - "Profile smart picker and link preview" : "Profil inteligentného výberu a náhľad odkazu", - "This app adds the ability to search for user profiles via the smart picker and display link previews for them." : "Táto aplikácia pridáva možnosť vyhľadávať používateľské profily pomocou inteligentného výberu a zobraziť náhľady odkazov pre ne.", - "Searching …" : "Vyhľadáva sa …", - "Not found" : "Nenájdené", - "Search for a user profile" : "Hľadať profil používateľa", - "Search for a user profile. Start typing" : "Hľadajte profil používateľa. Začnite písať", - "Insert selected user profile link" : "Vložte odkaz na vybraný používateľský profil", - "Insert" : "Vložiť" -}, -"nplurals=4; plural=(n % 1 == 0 && n == 1 ? 0 : n % 1 == 0 && n >= 2 && n <= 4 ? 1 : n % 1 != 0 ? 2: 3);"); diff --git a/apps/user_picker/l10n/sk.json b/apps/user_picker/l10n/sk.json deleted file mode 100644 index 77d2dafcff8..00000000000 --- a/apps/user_picker/l10n/sk.json +++ /dev/null @@ -1,12 +0,0 @@ -{ "translations": { - "Profile picker" : "Výber profilu", - "Profile smart picker and link preview" : "Profil inteligentného výberu a náhľad odkazu", - "This app adds the ability to search for user profiles via the smart picker and display link previews for them." : "Táto aplikácia pridáva možnosť vyhľadávať používateľské profily pomocou inteligentného výberu a zobraziť náhľady odkazov pre ne.", - "Searching …" : "Vyhľadáva sa …", - "Not found" : "Nenájdené", - "Search for a user profile" : "Hľadať profil používateľa", - "Search for a user profile. Start typing" : "Hľadajte profil používateľa. Začnite písať", - "Insert selected user profile link" : "Vložte odkaz na vybraný používateľský profil", - "Insert" : "Vložiť" -},"pluralForm" :"nplurals=4; plural=(n % 1 == 0 && n == 1 ? 0 : n % 1 == 0 && n >= 2 && n <= 4 ? 1 : n % 1 != 0 ? 2: 3);" -} \ No newline at end of file diff --git a/apps/user_picker/l10n/uk.js b/apps/user_picker/l10n/uk.js deleted file mode 100644 index bc91511adb6..00000000000 --- a/apps/user_picker/l10n/uk.js +++ /dev/null @@ -1,14 +0,0 @@ -OC.L10N.register( - "user_picker", - { - "Profile picker" : "Вибір профілю", - "Profile smart picker and link preview" : "Асистент з вибору пррофілю та попереднього перегляду посилань", - "This app adds the ability to search for user profiles via the smart picker and display link previews for them." : "Цей застосунок дозволяє користувачам шукати профілі користувачів за допомогою асистента з вибору профіля, показувати посилання попереднього перегляду на ці профілі.", - "Searching …" : "Шукаю...", - "Not found" : "Не знайдено", - "Search for a user profile" : "Шукати профіль користувача", - "Search for a user profile. Start typing" : "Почніть вводити, щоби знайти профіль користувача", - "Insert selected user profile link" : "Вставте посилання на вибраний профіль користувача", - "Insert" : "Вставити" -}, -"nplurals=4; plural=(n % 1 == 0 && n % 10 == 1 && n % 100 != 11 ? 0 : n % 1 == 0 && n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 12 || n % 100 > 14) ? 1 : n % 1 == 0 && (n % 10 ==0 || (n % 10 >=5 && n % 10 <=9) || (n % 100 >=11 && n % 100 <=14 )) ? 2: 3);"); diff --git a/apps/user_picker/l10n/uk.json b/apps/user_picker/l10n/uk.json deleted file mode 100644 index b8cc3f22f0e..00000000000 --- a/apps/user_picker/l10n/uk.json +++ /dev/null @@ -1,12 +0,0 @@ -{ "translations": { - "Profile picker" : "Вибір профілю", - "Profile smart picker and link preview" : "Асистент з вибору пррофілю та попереднього перегляду посилань", - "This app adds the ability to search for user profiles via the smart picker and display link previews for them." : "Цей застосунок дозволяє користувачам шукати профілі користувачів за допомогою асистента з вибору профіля, показувати посилання попереднього перегляду на ці профілі.", - "Searching …" : "Шукаю...", - "Not found" : "Не знайдено", - "Search for a user profile" : "Шукати профіль користувача", - "Search for a user profile. Start typing" : "Почніть вводити, щоби знайти профіль користувача", - "Insert selected user profile link" : "Вставте посилання на вибраний профіль користувача", - "Insert" : "Вставити" -},"pluralForm" :"nplurals=4; plural=(n % 1 == 0 && n % 10 == 1 && n % 100 != 11 ? 0 : n % 1 == 0 && n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 12 || n % 100 > 14) ? 1 : n % 1 == 0 && (n % 10 ==0 || (n % 10 >=5 && n % 10 <=9) || (n % 100 >=11 && n % 100 <=14 )) ? 2: 3);" -} \ No newline at end of file diff --git a/apps/user_picker/l10n/zh_HK.js b/apps/user_picker/l10n/zh_HK.js deleted file mode 100644 index 58adcab1490..00000000000 --- a/apps/user_picker/l10n/zh_HK.js +++ /dev/null @@ -1,14 +0,0 @@ -OC.L10N.register( - "user_picker", - { - "Profile picker" : "個人資料選擇器", - "Profile smart picker and link preview" : "個人資料智能選擇器和連結預覽", - "This app adds the ability to search for user profiles via the smart picker and display link previews for them." : "此應用程式增加了透過智慧型選擇器搜尋用戶個人資料並顯示連結預覽的功能。", - "Searching …" : "搜尋中 …", - "Not found" : "找不到", - "Search for a user profile" : "搜尋用戶個人資料", - "Search for a user profile. Start typing" : "搜尋用戶個人資料。開始打字", - "Insert selected user profile link" : "插入已選擇用戶個人資料連結", - "Insert" : "插入" -}, -"nplurals=1; plural=0;"); diff --git a/apps/user_picker/l10n/zh_HK.json b/apps/user_picker/l10n/zh_HK.json deleted file mode 100644 index 9ad5c32a3ec..00000000000 --- a/apps/user_picker/l10n/zh_HK.json +++ /dev/null @@ -1,12 +0,0 @@ -{ "translations": { - "Profile picker" : "個人資料選擇器", - "Profile smart picker and link preview" : "個人資料智能選擇器和連結預覽", - "This app adds the ability to search for user profiles via the smart picker and display link previews for them." : "此應用程式增加了透過智慧型選擇器搜尋用戶個人資料並顯示連結預覽的功能。", - "Searching …" : "搜尋中 …", - "Not found" : "找不到", - "Search for a user profile" : "搜尋用戶個人資料", - "Search for a user profile. Start typing" : "搜尋用戶個人資料。開始打字", - "Insert selected user profile link" : "插入已選擇用戶個人資料連結", - "Insert" : "插入" -},"pluralForm" :"nplurals=1; plural=0;" -} \ No newline at end of file diff --git a/apps/user_picker/src/utils/logger.ts b/apps/user_picker/src/utils/logger.ts deleted file mode 100644 index c71b7e14bc5..00000000000 --- a/apps/user_picker/src/utils/logger.ts +++ /dev/null @@ -1,11 +0,0 @@ -/*! - * 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/tests/bootstrap.php b/apps/user_picker/tests/bootstrap.php deleted file mode 100644 index b7bddb8a34f..00000000000 --- a/apps/user_picker/tests/bootstrap.php +++ /dev/null @@ -1,20 +0,0 @@ -loadApp('user_picker'); diff --git a/apps/user_picker/tests/unit/Service/ApplicationTest.php b/apps/user_picker/tests/unit/Service/ApplicationTest.php deleted file mode 100644 index 9662f761d5d..00000000000 --- a/apps/user_picker/tests/unit/Service/ApplicationTest.php +++ /dev/null @@ -1,17 +0,0 @@ -assertEquals('user_picker', $app::APP_ID); - } -} diff --git a/build/frontend/apps/user_picker b/build/frontend/apps/user_picker deleted file mode 120000 index 164c674a0b1..00000000000 --- a/build/frontend/apps/user_picker +++ /dev/null @@ -1 +0,0 @@ -../../../apps/user_picker \ No newline at end of file diff --git a/build/frontend/vite.config.ts b/build/frontend/vite.config.ts index eda0059c702..d2567ed2f30 100644 --- a/build/frontend/vite.config.ts +++ b/build/frontend/vite.config.ts @@ -46,6 +46,7 @@ const modules = { }, profile: { main: resolve(import.meta.dirname, 'apps/profile/src', 'main.ts'), + reference: resolve(import.meta.dirname, 'apps/profile/src', 'reference.js'), }, sharebymail: { 'admin-settings': resolve(import.meta.dirname, 'apps/sharebymail/src', 'settings-admin.ts'), @@ -66,9 +67,6 @@ const modules = { renewPassword: resolve(import.meta.dirname, 'apps/user_ldap/src', 'renewPassword.ts'), 'settings-admin': resolve(import.meta.dirname, 'apps/user_ldap/src', 'settings-admin.ts'), }, - user_picker: { - reference: resolve(import.meta.dirname, 'apps/user_picker/src', 'reference.js'), - }, user_status: { menu: resolve(import.meta.dirname, 'apps/user_status/src', 'menu.js'), }, diff --git a/build/integration/features/provisioning-v1.feature b/build/integration/features/provisioning-v1.feature index 3379fdf6abd..62b58279c61 100644 --- a/build/integration/features/provisioning-v1.feature +++ b/build/integration/features/provisioning-v1.feature @@ -640,7 +640,6 @@ Feature: provisioning | twofactor_backupcodes | | updatenotification | | user_ldap | - | user_picker | | user_status | | viewer | | workflowengine | diff --git a/build/license.php b/build/license.php index 1646f724836..bb6351181c6 100644 --- a/build/license.php +++ b/build/license.php @@ -459,7 +459,6 @@ if (isset($argv[1])) { '../apps/twofactor_backupcodes', '../apps/updatenotification', '../apps/user_ldap', - '../apps/user_picker', '../apps/user_status', '../apps/weather_status', '../apps/workflowengine', diff --git a/core/shipped.json b/core/shipped.json index 5cb0c1db7ce..54ba1d29227 100644 --- a/core/shipped.json +++ b/core/shipped.json @@ -95,7 +95,6 @@ "theming", "twofactor_totp", "updatenotification", - "user_picker", "user_status", "viewer", "weather_status", diff --git a/psalm.xml b/psalm.xml index 6f45088b8f7..9b029ce31d4 100644 --- a/psalm.xml +++ b/psalm.xml @@ -47,7 +47,6 @@ -