diff --git a/apps/testing/ajax/endpoint.php b/apps/testing/ajax/endpoint.php new file mode 100644 index 0000000000000..5dfe6839819d0 --- /dev/null +++ b/apps/testing/ajax/endpoint.php @@ -0,0 +1,10 @@ +clearCb( - function (string $uid) use ($dispatcher): void { - $dispatcher->dispatchTyped(new BeforeUserIdUnassignedEvent($uid)); - /** @psalm-suppress UndefinedInterfaceMethod For now we have to emit, will be removed when all hooks are removed */ - Server::get(IUserManager::class)->emit('\OC\User', 'preUnassignedUserId', [$uid]); - }, - function (string $uid) use ($dispatcher): void { - $dispatcher->dispatchTyped(new UserIdUnassignedEvent($uid)); - /** @psalm-suppress UndefinedInterfaceMethod For now we have to emit, will be removed when all hooks are removed */ - Server::get(IUserManager::class)->emit('\OC\User', 'postUnassignedUserId', [$uid]); - } - ); - } elseif ($subject === 'group') { - $mapping = Server::get(GroupMapping::class); - $result = $mapping->clear(); - } - - if ($mapping === null || !$result) { - $l = Util::getL10N('user_ldap'); - throw new \Exception($l->t('Failed to clear the mappings.')); - } - \OC_JSON::success(); -} catch (\Exception $e) { - \OC_JSON::error(['message' => $e->getMessage()]); -} diff --git a/apps/user_ldap/ajax/deleteConfiguration.php b/apps/user_ldap/ajax/deleteConfiguration.php deleted file mode 100644 index 68bce69f98257..0000000000000 --- a/apps/user_ldap/ajax/deleteConfiguration.php +++ /dev/null @@ -1,24 +0,0 @@ -deleteServerConfiguration($prefix)) { - \OC_JSON::success(); -} else { - $l = Util::getL10N('user_ldap'); - \OC_JSON::error(['message' => $l->t('Failed to delete the server configuration')]); -} diff --git a/apps/user_ldap/ajax/getConfiguration.php b/apps/user_ldap/ajax/getConfiguration.php deleted file mode 100644 index 79a7372813c6e..0000000000000 --- a/apps/user_ldap/ajax/getConfiguration.php +++ /dev/null @@ -1,23 +0,0 @@ -getConfiguration(); -if (isset($configuration['ldap_agent_password']) && $configuration['ldap_agent_password'] !== '') { - // hide password - $configuration['ldap_agent_password'] = '**PASSWORD SET**'; -} -\OC_JSON::success(['configuration' => $configuration]); diff --git a/apps/user_ldap/ajax/getNewServerConfigPrefix.php b/apps/user_ldap/ajax/getNewServerConfigPrefix.php deleted file mode 100644 index b9596395e99dc..0000000000000 --- a/apps/user_ldap/ajax/getNewServerConfigPrefix.php +++ /dev/null @@ -1,33 +0,0 @@ -getNextServerConfigurationPrefix(); - -$resultData = ['configPrefix' => $nk]; - -$newConfig = new Configuration($nk, false); -if (isset($_POST['copyConfig'])) { - $originalConfig = new Configuration($_POST['copyConfig']); - $newConfig->setConfiguration($originalConfig->getConfiguration()); -} else { - $configuration = new Configuration($nk, false); - $newConfig->setConfiguration($configuration->getDefaults()); - $resultData['defaults'] = $configuration->getDefaults(); -} -$newConfig->saveConfiguration(); - -\OC_JSON::success($resultData); diff --git a/apps/user_ldap/ajax/setConfiguration.php b/apps/user_ldap/ajax/setConfiguration.php deleted file mode 100644 index 815ef04025729..0000000000000 --- a/apps/user_ldap/ajax/setConfiguration.php +++ /dev/null @@ -1,32 +0,0 @@ -setConfiguration($_POST); -$connection->saveConfiguration(); -\OC_JSON::success(); diff --git a/apps/user_ldap/ajax/testConfiguration.php b/apps/user_ldap/ajax/testConfiguration.php deleted file mode 100644 index b77439fa3e812..0000000000000 --- a/apps/user_ldap/ajax/testConfiguration.php +++ /dev/null @@ -1,76 +0,0 @@ -getConfiguration(); - if ($conf['ldap_configuration_active'] === '0') { - //needs to be true, otherwise it will also fail with an irritating message - $conf['ldap_configuration_active'] = '1'; - } - try { - $connection->setConfiguration($conf, throw: true); - } catch (ConfigurationIssueException $e) { - $configurationError = $e->getHint(); - } - if ($configurationError === '') { - //Configuration is okay - /* - * Closing the session since it won't be used from this point on. There might be a potential - * race condition if a second request is made: either this request or the other might not - * contact the LDAP backup server the first time when it should, but there shouldn't be any - * problem with that other than the extra connection. - */ - Server::get(ISession::class)->close(); - if ($connection->bind()) { - /* - * This shiny if block is an ugly hack to find out whether anonymous - * bind is possible on AD or not. Because AD happily and constantly - * replies with success to any anonymous bind request, we need to - * fire up a broken operation. If AD does not allow anonymous bind, - * it will end up with LDAP error code 1 which is turned into an - * exception by the LDAP wrapper. We catch this. Other cases may - * pass (like e.g. expected syntax error). - */ - try { - $ldapWrapper->read($connection->getConnectionResource(), '', 'objectClass=*', ['dn']); - } catch (\Exception $e) { - if ($e->getCode() === 1) { - \OC_JSON::error(['message' => $l->t('Invalid configuration: Anonymous binding is not allowed.')]); - exit; - } - } - \OC_JSON::success(['message' - => $l->t('Valid configuration, connection established!')]); - } else { - \OC_JSON::error(['message' - => $l->t('Valid configuration, but binding failed. Please check the server settings and credentials.')]); - } - } else { - \OC_JSON::error(['message' - => $l->t('Invalid configuration: %s', $configurationError)]); - } -} catch (\Exception $e) { - \OC_JSON::error(['message' => $e->getMessage()]); -} diff --git a/apps/user_ldap/ajax/wizard.php b/apps/user_ldap/ajax/wizard.php deleted file mode 100644 index 056299e1bfffd..0000000000000 --- a/apps/user_ldap/ajax/wizard.php +++ /dev/null @@ -1,120 +0,0 @@ - $l->t('No action specified')]); -} -$action = (string)$_POST['action']; - -if (!isset($_POST['ldap_serverconfig_chooser'])) { - \OC_JSON::error(['message' => $l->t('No configuration specified')]); -} -$prefix = (string)$_POST['ldap_serverconfig_chooser']; - -$ldapWrapper = new LDAP(); -$configuration = new Configuration($prefix); - -$con = new \OCA\User_LDAP\Connection($ldapWrapper, $prefix, null); -$con->setConfiguration($configuration->getConfiguration()); -$con->ldapConfigurationActive = (string)true; -$con->setIgnoreValidation(true); - -$factory = Server::get(AccessFactory::class); -$access = $factory->get($con); - -$wizard = new Wizard($configuration, $ldapWrapper, $access); - -switch ($action) { - case 'guessPortAndTLS': - case 'guessBaseDN': - case 'detectEmailAttribute': - case 'detectUserDisplayNameAttribute': - case 'determineGroupMemberAssoc': - case 'determineUserObjectClasses': - case 'determineGroupObjectClasses': - case 'determineGroupsForUsers': - case 'determineGroupsForGroups': - case 'determineAttributes': - case 'getUserListFilter': - case 'getUserLoginFilter': - case 'getGroupFilter': - case 'countUsers': - case 'countGroups': - case 'countInBaseDN': - try { - $result = $wizard->$action(); - if ($result !== false) { - \OC_JSON::success($result->getResultArray()); - exit; - } - } catch (\Exception $e) { - \OC_JSON::error(['message' => $e->getMessage(), 'code' => $e->getCode()]); - exit; - } - \OC_JSON::error(); - exit; - break; - - case 'testLoginName': { - try { - $loginName = $_POST['ldap_test_loginname']; - $result = $wizard->$action($loginName); - if ($result !== false) { - \OC_JSON::success($result->getResultArray()); - exit; - } - } catch (\Exception $e) { - \OC_JSON::error(['message' => $e->getMessage()]); - exit; - } - \OC_JSON::error(); - exit; - break; - } - - case 'save': - $key = $_POST['cfgkey'] ?? false; - $val = $_POST['cfgval'] ?? null; - if ($key === false || is_null($val)) { - \OC_JSON::error(['message' => $l->t('No data specified')]); - exit; - } - if (is_array($key)) { - \OC_JSON::error(['message' => $l->t('Invalid data specified')]); - exit; - } - $cfg = [$key => $val]; - $setParameters = []; - $configuration->setConfiguration($cfg, $setParameters); - if (!in_array($key, $setParameters)) { - \OC_JSON::error(['message' => $l->t('Could not set configuration %1$s to %2$s', [$key, $setParameters[0]])]); - exit; - } - $configuration->saveConfiguration(); - //clear the cache on save - $connection = new \OCA\User_LDAP\Connection($ldapWrapper, $prefix); - $connection->clearCache(); - \OC_JSON::success(); - break; - default: - \OC_JSON::error(['message' => $l->t('Action does not exist')]); - break; -} diff --git a/apps/user_ldap/appinfo/routes.php b/apps/user_ldap/appinfo/routes.php index 688d801455585..ca4b488cd9b05 100644 --- a/apps/user_ldap/appinfo/routes.php +++ b/apps/user_ldap/appinfo/routes.php @@ -7,20 +7,6 @@ * SPDX-FileCopyrightText: 2016 ownCloud, Inc. * SPDX-License-Identifier: AGPL-3.0-only */ -$this->create('user_ldap_ajax_clearMappings', 'apps/user_ldap/ajax/clearMappings.php') - ->actionInclude('user_ldap/ajax/clearMappings.php'); -$this->create('user_ldap_ajax_deleteConfiguration', 'apps/user_ldap/ajax/deleteConfiguration.php') - ->actionInclude('user_ldap/ajax/deleteConfiguration.php'); -$this->create('user_ldap_ajax_getConfiguration', 'apps/user_ldap/ajax/getConfiguration.php') - ->actionInclude('user_ldap/ajax/getConfiguration.php'); -$this->create('user_ldap_ajax_getNewServerConfigPrefix', 'apps/user_ldap/ajax/getNewServerConfigPrefix.php') - ->actionInclude('user_ldap/ajax/getNewServerConfigPrefix.php'); -$this->create('user_ldap_ajax_setConfiguration', 'apps/user_ldap/ajax/setConfiguration.php') - ->actionInclude('user_ldap/ajax/setConfiguration.php'); -$this->create('user_ldap_ajax_testConfiguration', 'apps/user_ldap/ajax/testConfiguration.php') - ->actionInclude('user_ldap/ajax/testConfiguration.php'); -$this->create('user_ldap_ajax_wizard', 'apps/user_ldap/ajax/wizard.php') - ->actionInclude('user_ldap/ajax/wizard.php'); return [ 'routes' => [ diff --git a/apps/user_ldap/composer/composer/autoload_classmap.php b/apps/user_ldap/composer/composer/autoload_classmap.php index 36259880928e2..a1743773f49eb 100644 --- a/apps/user_ldap/composer/composer/autoload_classmap.php +++ b/apps/user_ldap/composer/composer/autoload_classmap.php @@ -30,6 +30,7 @@ 'OCA\\User_LDAP\\ConnectionFactory' => $baseDir . '/../lib/ConnectionFactory.php', 'OCA\\User_LDAP\\Controller\\ConfigAPIController' => $baseDir . '/../lib/Controller/ConfigAPIController.php', 'OCA\\User_LDAP\\Controller\\RenewPasswordController' => $baseDir . '/../lib/Controller/RenewPasswordController.php', + 'OCA\\User_LDAP\\Controller\\WizardController' => $baseDir . '/../lib/Controller/WizardController.php', 'OCA\\User_LDAP\\DataCollector\\LdapDataCollector' => $baseDir . '/../lib/DataCollector/LdapDataCollector.php', 'OCA\\User_LDAP\\Db\\GroupMembership' => $baseDir . '/../lib/Db/GroupMembership.php', 'OCA\\User_LDAP\\Db\\GroupMembershipMapper' => $baseDir . '/../lib/Db/GroupMembershipMapper.php', @@ -95,5 +96,6 @@ 'OCA\\User_LDAP\\User_LDAP' => $baseDir . '/../lib/User_LDAP.php', 'OCA\\User_LDAP\\User_Proxy' => $baseDir . '/../lib/User_Proxy.php', 'OCA\\User_LDAP\\Wizard' => $baseDir . '/../lib/Wizard.php', + 'OCA\\User_LDAP\\WizardFactory' => $baseDir . '/../lib/WizardFactory.php', 'OCA\\User_LDAP\\WizardResult' => $baseDir . '/../lib/WizardResult.php', ); diff --git a/apps/user_ldap/composer/composer/autoload_static.php b/apps/user_ldap/composer/composer/autoload_static.php index be985838393f4..e8ec60e0c8f80 100644 --- a/apps/user_ldap/composer/composer/autoload_static.php +++ b/apps/user_ldap/composer/composer/autoload_static.php @@ -45,6 +45,7 @@ class ComposerStaticInitUser_LDAP 'OCA\\User_LDAP\\ConnectionFactory' => __DIR__ . '/..' . '/../lib/ConnectionFactory.php', 'OCA\\User_LDAP\\Controller\\ConfigAPIController' => __DIR__ . '/..' . '/../lib/Controller/ConfigAPIController.php', 'OCA\\User_LDAP\\Controller\\RenewPasswordController' => __DIR__ . '/..' . '/../lib/Controller/RenewPasswordController.php', + 'OCA\\User_LDAP\\Controller\\WizardController' => __DIR__ . '/..' . '/../lib/Controller/WizardController.php', 'OCA\\User_LDAP\\DataCollector\\LdapDataCollector' => __DIR__ . '/..' . '/../lib/DataCollector/LdapDataCollector.php', 'OCA\\User_LDAP\\Db\\GroupMembership' => __DIR__ . '/..' . '/../lib/Db/GroupMembership.php', 'OCA\\User_LDAP\\Db\\GroupMembershipMapper' => __DIR__ . '/..' . '/../lib/Db/GroupMembershipMapper.php', @@ -110,6 +111,7 @@ class ComposerStaticInitUser_LDAP 'OCA\\User_LDAP\\User_LDAP' => __DIR__ . '/..' . '/../lib/User_LDAP.php', 'OCA\\User_LDAP\\User_Proxy' => __DIR__ . '/..' . '/../lib/User_Proxy.php', 'OCA\\User_LDAP\\Wizard' => __DIR__ . '/..' . '/../lib/Wizard.php', + 'OCA\\User_LDAP\\WizardFactory' => __DIR__ . '/..' . '/../lib/WizardFactory.php', 'OCA\\User_LDAP\\WizardResult' => __DIR__ . '/..' . '/../lib/WizardResult.php', ); diff --git a/apps/user_ldap/lib/Controller/ConfigAPIController.php b/apps/user_ldap/lib/Controller/ConfigAPIController.php index 4c63b18be3364..ca04e29550c88 100644 --- a/apps/user_ldap/lib/Controller/ConfigAPIController.php +++ b/apps/user_ldap/lib/Controller/ConfigAPIController.php @@ -8,7 +8,10 @@ use OCA\User_LDAP\Configuration; use OCA\User_LDAP\ConnectionFactory; +use OCA\User_LDAP\Exceptions\ConfigurationIssueException; use OCA\User_LDAP\Helper; +use OCA\User_LDAP\ILDAPWrapper; +use OCA\User_LDAP\LDAP; use OCA\User_LDAP\Settings\Admin; use OCP\AppFramework\Http; use OCP\AppFramework\Http\Attribute\ApiRoute; @@ -18,7 +21,9 @@ use OCP\AppFramework\OCS\OCSException; use OCP\AppFramework\OCS\OCSNotFoundException; use OCP\AppFramework\OCSController; +use OCP\IL10N; use OCP\IRequest; +use OCP\Server; use Psr\Log\LoggerInterface; class ConfigAPIController extends OCSController { @@ -28,6 +33,7 @@ public function __construct( private Helper $ldapHelper, private LoggerInterface $logger, private ConnectionFactory $connectionFactory, + private IL10N $l, ) { parent::__construct($appName, $request); } @@ -227,6 +233,103 @@ public function show($configID, $showPassword = false) { return new DataResponse($data); } + /** + * Test a configuration + * + * @param string $configID ID of the LDAP config + * @return DataResponse + * @throws OCSException An unexpected error happened + * @throws OCSNotFoundException Config not found + * + * 200: Test was run and results are returned + */ + #[AuthorizedAdminSetting(settings: Admin::class)] + #[ApiRoute(verb: 'POST', url: '/api/v1/config/{configID}/test')] + public function testConfiguration(string $configID) { + try { + $this->ensureConfigIDExists($configID); + $connection = $this->connectionFactory->get($configID); + $conf = $connection->getConfiguration(); + if ($conf['ldap_configuration_active'] === '0') { + //needs to be true, otherwise it will also fail with an irritating message + $conf['ldap_configuration_active'] = '1'; + } + try { + $connection->setConfiguration($conf, throw: true); + } catch (ConfigurationIssueException $e) { + return new DataResponse([ + 'success' => false, + 'message' => $this->l->t('Invalid configuration: %s', $e->getHint()), + ]); + } + // Configuration is okay + if (!$connection->bind()) { + return new DataResponse([ + 'success' => false, + 'message' => $this->l->t('Valid configuration, but binding failed. Please check the server settings and credentials.'), + ]); + } + /* + * This shiny if block is an ugly hack to find out whether anonymous + * bind is possible on AD or not. Because AD happily and constantly + * replies with success to any anonymous bind request, we need to + * fire up a broken operation. If AD does not allow anonymous bind, + * it will end up with LDAP error code 1 which is turned into an + * exception by the LDAP wrapper. We catch this. Other cases may + * pass (like e.g. expected syntax error). + */ + try { + $ldapWrapper = Server::get(ILDAPWrapper::class); + $ldapWrapper->read($connection->getConnectionResource(), '', 'objectClass=*', ['dn']); + } catch (\Exception $e) { + if ($e->getCode() === 1) { + return new DataResponse([ + 'success' => false, + 'message' => $this->l->t('Invalid configuration: Anonymous binding is not allowed.'), + ]); + } + } + return new DataResponse([ + 'success' => true, + 'message' => $this->l->t('Valid configuration, connection established!'), + ]); + } catch (OCSException $e) { + throw $e; + } catch (\Exception $e) { + $this->logger->error($e->getMessage(), ['exception' => $e]); + throw new OCSException('An issue occurred when testing the config.'); + } + } + + /** + * Copy a configuration + * + * @param string $configID ID of the LDAP config + * @return DataResponse + * @throws OCSException An unexpected error happened + * @throws OCSNotFoundException Config not found + * + * 200: Config was copied, new configID was returned + */ + #[AuthorizedAdminSetting(settings: Admin::class)] + #[ApiRoute(verb: 'POST', url: '/api/v1/config/{configID}/copy')] + public function copyConfiguration(string $configID) { + try { + $this->ensureConfigIDExists($configID); + $configPrefix = $this->ldapHelper->getNextServerConfigurationPrefix(); + $newConfig = new Configuration($configPrefix, false); + $originalConfig = new Configuration($configID); + $newConfig->setConfiguration($originalConfig->getConfiguration()); + $newConfig->saveConfiguration(); + return new DataResponse(['configID' => $configPrefix]); + } catch (OCSException $e) { + throw $e; + } catch (\Exception $e) { + $this->logger->error($e->getMessage(), ['exception' => $e]); + throw new OCSException('An issue occurred when creating the new config.'); + } + } + /** * If the given config ID is not available, an exception is thrown * diff --git a/apps/user_ldap/lib/Controller/WizardController.php b/apps/user_ldap/lib/Controller/WizardController.php new file mode 100644 index 0000000000000..63791b0588b50 --- /dev/null +++ b/apps/user_ldap/lib/Controller/WizardController.php @@ -0,0 +1,164 @@ +|list>,options?:array>}, array{}> + * @throws OCSException + * + * 200: Wizard action result + */ + #[AuthorizedAdminSetting(settings: Admin::class)] + #[ApiRoute(verb: 'POST', url: '/api/v1/wizard/{configID}/{wizardAction}')] + public function action( + string $configID, string $wizardAction, + ?string $loginName = null, + ) { + try { + $wizard = $this->wizardFactory->get($configID); + switch ($wizardAction) { + case 'guessPortAndTLS': + case 'guessBaseDN': + case 'detectEmailAttribute': + case 'detectUserDisplayNameAttribute': + case 'determineGroupMemberAssoc': + case 'determineUserObjectClasses': + case 'determineGroupObjectClasses': + case 'determineGroupsForUsers': + case 'determineGroupsForGroups': + case 'determineAttributes': + case 'getUserListFilter': + case 'getUserLoginFilter': + case 'getGroupFilter': + case 'countUsers': + case 'countGroups': + case 'countInBaseDN': + try { + $result = $wizard->$wizardAction(); + if ($result !== false) { + return new DataResponse($result->getResultArray()); + } + } catch (\Exception $e) { + throw new OCSException($e->getMessage()); + } + throw new OCSException(); + + case 'testLoginName': + try { + if ($loginName === null || $loginName === '') { + throw new OCSException('No login name passed'); + } + $result = $wizard->$wizardAction($loginName); + if ($result !== false) { + return new DataResponse($result->getResultArray()); + } + } catch (\Exception $e) { + throw new OCSException($e->getMessage()); + } + throw new OCSException(); + + default: + throw new OCSException($this->l->t('Action does not exist')); + break; + } + } catch (OCSException $e) { + throw $e; + } catch (\Exception $e) { + $this->logger->error($e->getMessage(), ['exception' => $e]); + throw new OCSException('An issue occurred.'); + } + } + + /** + * Clear user or group mappings + * + * @param 'user'|'group' $subject Whether to clear group or user mappings + * @return DataResponse, array{}> + * @throws OCSException + * + * 200: Clearing was done successfuly + */ + #[AuthorizedAdminSetting(settings: Admin::class)] + #[ApiRoute(verb: 'POST', url: '/api/v1/wizard/clearMappings')] + public function clearMappings( + string $subject, + ) { + $mapping = null; + try { + if ($subject === 'user') { + $mapping = Server::get(UserMapping::class); + $result = $mapping->clearCb( + function (string $uid): void { + $this->eventDispatcher->dispatchTyped(new BeforeUserIdUnassignedEvent($uid)); + /** @psalm-suppress UndefinedInterfaceMethod For now we have to emit, will be removed when all hooks are removed */ + Server::get(IUserManager::class)->emit('\OC\User', 'preUnassignedUserId', [$uid]); + }, + function (string $uid): void { + $this->eventDispatcher->dispatchTyped(new UserIdUnassignedEvent($uid)); + /** @psalm-suppress UndefinedInterfaceMethod For now we have to emit, will be removed when all hooks are removed */ + Server::get(IUserManager::class)->emit('\OC\User', 'postUnassignedUserId', [$uid]); + } + ); + } elseif ($subject === 'group') { + $mapping = Server::get(GroupMapping::class); + $result = $mapping->clear(); + } else { + throw new OCSException($this->l->t('Unsupported subject ' . $subject)); + } + + if (!$result) { + throw new OCSException($this->l->t('Failed to clear the mappings.')); + } + return new DataResponse(); + } catch (\Exception $e) { + $this->logger->error($e->getMessage(), ['exception' => $e]); + throw new OCSException('An issue occurred.'); + } + } +} diff --git a/apps/user_ldap/lib/Wizard.php b/apps/user_ldap/lib/Wizard.php index 15a9f9cb2125d..fa77fea8fa2bb 100644 --- a/apps/user_ldap/lib/Wizard.php +++ b/apps/user_ldap/lib/Wizard.php @@ -199,7 +199,7 @@ public function detectUserDisplayNameAttribute() { $count = (int)$this->countUsersWithAttribute($attr, true); if ($count > 0) { //no change, but we sent it back to make sure the user interface - //is still correct, even if the ajax call was cancelled meanwhile + //is still correct, even if the call was cancelled meanwhile $this->result->addChange('ldap_display_name', $attr); return $this->result; } diff --git a/apps/user_ldap/lib/WizardFactory.php b/apps/user_ldap/lib/WizardFactory.php new file mode 100644 index 0000000000000..4c66e7ce8f21b --- /dev/null +++ b/apps/user_ldap/lib/WizardFactory.php @@ -0,0 +1,31 @@ +ldap, $configID, null); + $connection->setConfiguration($configuration->getConfiguration()); + $connection->ldapConfigurationActive = (string)true; + $connection->setIgnoreValidation(true); + + $access = $this->accessFactory->get($connection); + + return new Wizard($configuration, $this->ldap, $access); + } +} diff --git a/apps/user_ldap/lib/WizardResult.php b/apps/user_ldap/lib/WizardResult.php index d6fd67d420402..b1fa715cc108d 100644 --- a/apps/user_ldap/lib/WizardResult.php +++ b/apps/user_ldap/lib/WizardResult.php @@ -1,52 +1,56 @@ + */ + protected array $changes = []; + /** + * @var array + */ + protected array $options = []; + protected bool $markedChange = false; /** - * @param string $key - * @param mixed $value + * @param int|string|int[]|string[] $value */ - public function addChange($key, $value) { + public function addChange(string $key, int|string|array $value): void { $this->changes[$key] = $value; } - public function markChange() { + public function markChange(): void { $this->markedChange = true; } /** - * @param string $key - * @param array|string $values + * @param string|string[] $values */ - public function addOptions($key, $values) { + public function addOptions(string $key, string|array $values): void { if (!is_array($values)) { $values = [$values]; } $this->options[$key] = $values; } - /** - * @return bool - */ - public function hasChanges() { + public function hasChanges(): bool { return (count($this->changes) > 0 || $this->markedChange); } /** - * @return array + * @return array{changes:array,options?:array} */ - public function getResultArray() { + public function getResultArray(): array { $result = []; $result['changes'] = $this->changes; if (count($this->options) > 0) { diff --git a/apps/user_ldap/openapi.json b/apps/user_ldap/openapi.json index 7a04c35072e3c..08e1f34dc0e9e 100644 --- a/apps/user_ldap/openapi.json +++ b/apps/user_ldap/openapi.json @@ -696,6 +696,670 @@ } } } + }, + "/ocs/v2.php/apps/user_ldap/api/v1/config/{configID}/test": { + "post": { + "operationId": "configapi-test-configuration", + "summary": "Test a configuration", + "description": "This endpoint requires admin access", + "tags": [ + "configapi" + ], + "security": [ + { + "bearer_auth": [] + }, + { + "basic_auth": [] + } + ], + "parameters": [ + { + "name": "configID", + "in": "path", + "description": "ID of the LDAP config", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "OCS-APIRequest", + "in": "header", + "description": "Required to be true for the API request to pass", + "required": true, + "schema": { + "type": "boolean", + "default": true + } + } + ], + "responses": { + "200": { + "description": "Test was run and results are returned", + "content": { + "application/json": { + "schema": { + "type": "object", + "required": [ + "ocs" + ], + "properties": { + "ocs": { + "type": "object", + "required": [ + "meta", + "data" + ], + "properties": { + "meta": { + "$ref": "#/components/schemas/OCSMeta" + }, + "data": { + "type": "object", + "required": [ + "success", + "message" + ], + "properties": { + "success": { + "type": "boolean" + }, + "message": { + "type": "string" + } + } + } + } + } + } + } + } + } + }, + "404": { + "description": "Config not found", + "content": { + "application/json": { + "schema": { + "type": "object", + "required": [ + "ocs" + ], + "properties": { + "ocs": { + "type": "object", + "required": [ + "meta", + "data" + ], + "properties": { + "meta": { + "$ref": "#/components/schemas/OCSMeta" + }, + "data": {} + } + } + } + } + } + } + }, + "401": { + "description": "Current user is not logged in", + "content": { + "application/json": { + "schema": { + "type": "object", + "required": [ + "ocs" + ], + "properties": { + "ocs": { + "type": "object", + "required": [ + "meta", + "data" + ], + "properties": { + "meta": { + "$ref": "#/components/schemas/OCSMeta" + }, + "data": {} + } + } + } + } + } + } + }, + "403": { + "description": "Logged in account must be an admin", + "content": { + "application/json": { + "schema": { + "type": "object", + "required": [ + "ocs" + ], + "properties": { + "ocs": { + "type": "object", + "required": [ + "meta", + "data" + ], + "properties": { + "meta": { + "$ref": "#/components/schemas/OCSMeta" + }, + "data": {} + } + } + } + } + } + } + } + } + } + }, + "/ocs/v2.php/apps/user_ldap/api/v1/config/{configID}/copy": { + "post": { + "operationId": "configapi-copy-configuration", + "summary": "Copy a configuration", + "description": "This endpoint requires admin access", + "tags": [ + "configapi" + ], + "security": [ + { + "bearer_auth": [] + }, + { + "basic_auth": [] + } + ], + "parameters": [ + { + "name": "configID", + "in": "path", + "description": "ID of the LDAP config", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "OCS-APIRequest", + "in": "header", + "description": "Required to be true for the API request to pass", + "required": true, + "schema": { + "type": "boolean", + "default": true + } + } + ], + "responses": { + "200": { + "description": "Config was copied, new configID was returned", + "content": { + "application/json": { + "schema": { + "type": "object", + "required": [ + "ocs" + ], + "properties": { + "ocs": { + "type": "object", + "required": [ + "meta", + "data" + ], + "properties": { + "meta": { + "$ref": "#/components/schemas/OCSMeta" + }, + "data": { + "type": "object", + "required": [ + "configID" + ], + "properties": { + "configID": { + "type": "string" + } + } + } + } + } + } + } + } + } + }, + "404": { + "description": "Config not found", + "content": { + "application/json": { + "schema": { + "type": "object", + "required": [ + "ocs" + ], + "properties": { + "ocs": { + "type": "object", + "required": [ + "meta", + "data" + ], + "properties": { + "meta": { + "$ref": "#/components/schemas/OCSMeta" + }, + "data": {} + } + } + } + } + } + } + }, + "401": { + "description": "Current user is not logged in", + "content": { + "application/json": { + "schema": { + "type": "object", + "required": [ + "ocs" + ], + "properties": { + "ocs": { + "type": "object", + "required": [ + "meta", + "data" + ], + "properties": { + "meta": { + "$ref": "#/components/schemas/OCSMeta" + }, + "data": {} + } + } + } + } + } + } + }, + "403": { + "description": "Logged in account must be an admin", + "content": { + "application/json": { + "schema": { + "type": "object", + "required": [ + "ocs" + ], + "properties": { + "ocs": { + "type": "object", + "required": [ + "meta", + "data" + ], + "properties": { + "meta": { + "$ref": "#/components/schemas/OCSMeta" + }, + "data": {} + } + } + } + } + } + } + } + } + } + }, + "/ocs/v2.php/apps/user_ldap/api/v1/wizard/{configID}/{wizardAction}": { + "post": { + "operationId": "wizard-action", + "summary": "Run a wizard action and returns the result", + "description": "This endpoint requires admin access", + "tags": [ + "wizard" + ], + "security": [ + { + "bearer_auth": [] + }, + { + "basic_auth": [] + } + ], + "requestBody": { + "required": false, + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "loginName": { + "type": "string", + "nullable": true, + "default": null, + "description": "Login name to test for testLoginName action" + } + } + } + } + } + }, + "parameters": [ + { + "name": "configID", + "in": "path", + "description": "ID of the LDAP configuration", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "wizardAction", + "in": "path", + "description": "Wizard action to run", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "OCS-APIRequest", + "in": "header", + "description": "Required to be true for the API request to pass", + "required": true, + "schema": { + "type": "boolean", + "default": true + } + } + ], + "responses": { + "200": { + "description": "Wizard action result", + "content": { + "application/json": { + "schema": { + "type": "object", + "required": [ + "ocs" + ], + "properties": { + "ocs": { + "type": "object", + "required": [ + "meta", + "data" + ], + "properties": { + "meta": { + "$ref": "#/components/schemas/OCSMeta" + }, + "data": { + "type": "object", + "required": [ + "changes" + ], + "properties": { + "changes": { + "type": "object", + "additionalProperties": { + "anyOf": [ + { + "type": "integer", + "format": "int64" + }, + { + "type": "string" + }, + { + "type": "array", + "items": { + "type": "integer", + "format": "int64" + } + }, + { + "type": "array", + "items": { + "type": "string" + } + } + ] + } + }, + "options": { + "type": "object", + "additionalProperties": { + "type": "array", + "items": { + "type": "string" + } + } + } + } + } + } + } + } + } + } + } + }, + "401": { + "description": "Current user is not logged in", + "content": { + "application/json": { + "schema": { + "type": "object", + "required": [ + "ocs" + ], + "properties": { + "ocs": { + "type": "object", + "required": [ + "meta", + "data" + ], + "properties": { + "meta": { + "$ref": "#/components/schemas/OCSMeta" + }, + "data": {} + } + } + } + } + } + } + }, + "403": { + "description": "Logged in account must be an admin", + "content": { + "application/json": { + "schema": { + "type": "object", + "required": [ + "ocs" + ], + "properties": { + "ocs": { + "type": "object", + "required": [ + "meta", + "data" + ], + "properties": { + "meta": { + "$ref": "#/components/schemas/OCSMeta" + }, + "data": {} + } + } + } + } + } + } + } + } + } + }, + "/ocs/v2.php/apps/user_ldap/api/v1/wizard/clearMappings": { + "post": { + "operationId": "wizard-clear-mappings", + "summary": "Clear user or group mappings", + "description": "This endpoint requires admin access", + "tags": [ + "wizard" + ], + "security": [ + { + "bearer_auth": [] + }, + { + "basic_auth": [] + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "type": "object", + "required": [ + "subject" + ], + "properties": { + "subject": { + "type": "string", + "enum": [ + "user", + "group" + ], + "description": "Whether to clear group or user mappings" + } + } + } + } + } + }, + "parameters": [ + { + "name": "OCS-APIRequest", + "in": "header", + "description": "Required to be true for the API request to pass", + "required": true, + "schema": { + "type": "boolean", + "default": true + } + } + ], + "responses": { + "200": { + "description": "Clearing was done successfuly", + "content": { + "application/json": { + "schema": { + "type": "object", + "required": [ + "ocs" + ], + "properties": { + "ocs": { + "type": "object", + "required": [ + "meta", + "data" + ], + "properties": { + "meta": { + "$ref": "#/components/schemas/OCSMeta" + }, + "data": {} + } + } + } + } + } + } + }, + "401": { + "description": "Current user is not logged in", + "content": { + "application/json": { + "schema": { + "type": "object", + "required": [ + "ocs" + ], + "properties": { + "ocs": { + "type": "object", + "required": [ + "meta", + "data" + ], + "properties": { + "meta": { + "$ref": "#/components/schemas/OCSMeta" + }, + "data": {} + } + } + } + } + } + } + }, + "403": { + "description": "Logged in account must be an admin", + "content": { + "application/json": { + "schema": { + "type": "object", + "required": [ + "ocs" + ], + "properties": { + "ocs": { + "type": "object", + "required": [ + "meta", + "data" + ], + "properties": { + "meta": { + "$ref": "#/components/schemas/OCSMeta" + }, + "data": {} + } + } + } + } + } + } + } + } + } } }, "tags": [] diff --git a/apps/user_ldap/src/components/SettingsTabs/LoginTab.vue b/apps/user_ldap/src/components/SettingsTabs/LoginTab.vue index 988cf1ca1cb0d..d734c726cb34c 100644 --- a/apps/user_ldap/src/components/SettingsTabs/LoginTab.vue +++ b/apps/user_ldap/src/components/SettingsTabs/LoginTab.vue @@ -111,7 +111,7 @@ async function getUserLoginFilter() { */ async function verifyLoginName() { try { - const response = await callWizard('testLoginName', props.configId, { ldap_test_loginname: testUsername.value }) + const response = await callWizard('testLoginName', props.configId, { loginName: testUsername.value }) const testLoginName = response.changes!.ldap_test_loginname as number const testEffectiveFilter = response.changes!.ldap_test_effective_filter as string diff --git a/apps/user_ldap/src/components/SettingsTabs/ServerTab.vue b/apps/user_ldap/src/components/SettingsTabs/ServerTab.vue index cac1b8ef8e269..96802688430ed 100644 --- a/apps/user_ldap/src/components/SettingsTabs/ServerTab.vue +++ b/apps/user_ldap/src/components/SettingsTabs/ServerTab.vue @@ -83,7 +83,7 @@ {{ t('user_ldap', 'Detect Base DN') }} - + {{ t('user_ldap', 'Test Base DN') }} @@ -146,8 +146,7 @@ async function guessBaseDN() { try { loadingGuessBaseDN.value = true const { changes } = await callWizard('guessBaseDN', props.configId) - // Not using ldapConfigProxy to avoid triggering the save logic. - ldapConfigs.value[props.configId].ldapBase = (changes!.ldap_base as string) ?? '' + ldapConfigProxy.value.ldapBase = (changes!.ldap_base as string) ?? '' } finally { loadingGuessBaseDN.value = false } diff --git a/apps/user_ldap/src/components/WizardControls.vue b/apps/user_ldap/src/components/WizardControls.vue index e7c9f988d6bbc..28bdf8c9f1f2b 100644 --- a/apps/user_ldap/src/components/WizardControls.vue +++ b/apps/user_ldap/src/components/WizardControls.vue @@ -48,8 +48,8 @@ const ldapConfigsStore = useLDAPConfigsStore() const { updatingConfig } = storeToRefs(ldapConfigsStore) const loading = ref(false) -const result = ref<{ message: string, status: 'error' | 'success' } | null>(null) -const isValide = computed(() => result.value?.status === 'success') +const result = ref<{ success: boolean, message: string } | null>(null) +const isValide = computed(() => result.value?.success) watch(updatingConfig, () => { result.value = null diff --git a/apps/user_ldap/src/services/ldapConfigService.ts b/apps/user_ldap/src/services/ldapConfigService.ts index 4923a75225165..c2b2a0d44359a 100644 --- a/apps/user_ldap/src/services/ldapConfigService.ts +++ b/apps/user_ldap/src/services/ldapConfigService.ts @@ -8,15 +8,12 @@ import type { AxiosResponse } from '@nextcloud/axios' import type { OCSResponse } from '@nextcloud/typings/ocs' import type { LDAPConfig } from '../models/index.ts' -import axios from '@nextcloud/axios' +import axios, { isAxiosError } from '@nextcloud/axios' import { getDialogBuilder, showError, showSuccess } from '@nextcloud/dialogs' import { t } from '@nextcloud/l10n' -import { generateOcsUrl, generateUrl } from '@nextcloud/router' -import path from 'path' +import { generateOcsUrl } from '@nextcloud/router' import logger from './logger.ts' -const AJAX_ENDPOINT = generateUrl('apps/user_ldap/ajax') - export type WizardAction = 'guessPortAndTLS' | 'guessBaseDN' @@ -35,7 +32,6 @@ export type WizardAction | 'countGroups' | 'countInBaseDN' | 'testLoginName' - | 'save' /** * @@ -55,12 +51,12 @@ export async function copyConfig(configId: string) { params.set('copyConfig', configId) const response = await axios.post( - path.join(AJAX_ENDPOINT, 'getNewServerConfigPrefix.php'), + generateOcsUrl('apps/user_ldap/api/v1/config/{configId}/copy', { configId }), params, - ) as AxiosResponse<{ status: 'error' | 'success', configPrefix: string }> + ) as AxiosResponse> - logger.debug('Created configuration', { configId: response.data.configPrefix }) - return response.data.configPrefix + logger.debug('Created configuration', { configId: response.data.ocs.data.configID }) + return response.data.ocs.data.configID } /** @@ -119,16 +115,12 @@ export async function deleteConfig(configId: string): Promise { */ export async function testConfiguration(configId: string) { const params = new FormData() - params.set('ldap_serverconfig_chooser', configId) - const response = await axios.post( - path.join(AJAX_ENDPOINT, 'testConfiguration.php'), - params, - ) as AxiosResponse<{ message: string, status: 'error' | 'success' }> + const response = await axios.post(generateOcsUrl('apps/user_ldap/api/v1/config/{configId}/test', { configId })) as AxiosResponse> - logger.debug(`Configuration is ${response.data.status === 'success' ? 'valide' : 'invalide'}`, { configId, params, response }) + logger.debug(`Configuration is ${response.data.ocs.data.success ? 'valide' : 'invalide'}`, { configId, params, response }) - return response.data + return response.data.ocs.data } /** @@ -144,19 +136,18 @@ export async function clearMapping(subject: 'user' | 'group') { return false } - const params = new FormData() - params.set('ldap_clear_mapping', subject) - - const response = await axios.post( - path.join(AJAX_ENDPOINT, 'clearMappings.php'), - params, - ) + try { + const response = await axios.post( + generateOcsUrl('apps/user_ldap/api/v1/wizard/clearMappings'), + { subject }, + ) as AxiosResponse - if (response.data.status === 'success') { logger.debug('Cleared mapping', { subject, params, response }) showSuccess(t('user_ldap', 'Mapping cleared')) - } else { - showError(t('user_ldap', 'Failed to clear mapping')) + return true + } catch (error) { + const errorResponse = (error as AxiosError).response + showError(errorResponse?.data.ocs.meta.message || t('user_ldap', 'Failed to clear mapping')) } } @@ -168,27 +159,28 @@ export async function clearMapping(subject: 'user' | 'group') { */ export async function callWizard(action: WizardAction, configId: string, extraParams: Record = {}) { const params = new FormData() - params.set('action', action) - params.set('ldap_serverconfig_chooser', configId) Object.entries(extraParams).forEach(([key, value]) => { params.set(key, value) }) - const response = await axios.post( - path.join(AJAX_ENDPOINT, 'wizard.php'), - params, - ) as AxiosResponse<{ status: 'error', message?: string } | { status: 'success', changes?: Record, options?: Record }> + try { + const response = await axios.post( + generateOcsUrl('apps/user_ldap/api/v1/wizard/{configId}/{action}', { configId, action }), + params, + ) as AxiosResponse, options?: Record }>> - logger.debug(`Called wizard action: ${action}`, { configId, params, response }) + logger.debug(`Called wizard action: ${action}`, { configId, params, response }) - if (response.data.status === 'error') { - const message = response.data.message ?? t('user_ldap', 'An error occurred') - showError(message) - throw new Error(message) - } + return response.data.ocs.data + } catch (error) { + if (isAxiosError(error) && error.response?.data.ocs.meta.status === 'failure') { + const message = error.response.data.ocs.meta.message ?? t('user_ldap', 'An error occurred') + showError(message) + } - return response.data + throw error + } } /** diff --git a/apps/user_ldap/src/store/configs.ts b/apps/user_ldap/src/store/configs.ts index b2287b16d466e..961e7b513bbe7 100644 --- a/apps/user_ldap/src/store/configs.ts +++ b/apps/user_ldap/src/store/configs.ts @@ -8,7 +8,7 @@ import type { LDAPConfig } from '../models/index.ts' import { loadState } from '@nextcloud/initial-state' import { defineStore } from 'pinia' import Vue, { computed, ref } from 'vue' -import { callWizard, copyConfig, createConfig, deleteConfig, getConfig } from '../services/ldapConfigService.ts' +import { copyConfig, createConfig, deleteConfig, getConfig, updateConfig } from '../services/ldapConfigService.ts' export const useLDAPConfigsStore = defineStore('ldap-configs', () => { const ldapConfigs = ref(loadState('user_ldap', 'ldapConfigs') as Record) @@ -31,7 +31,7 @@ export const useLDAPConfigsStore = defineStore('ldap-configs', () => { ;(async () => { updatingConfig.value++ - await callWizard('save', configId, { cfgkey: property, cfgval: newValue }) + await updateConfig(configId, { [property]: newValue }) updatingConfig.value-- if (postSetHooks[property] !== undefined) { diff --git a/build/psalm-baseline.xml b/build/psalm-baseline.xml index 23bdc04201af2..a70e6bce393fc 100644 --- a/build/psalm-baseline.xml +++ b/build/psalm-baseline.xml @@ -2625,88 +2625,6 @@ - - - - - - $e->getMessage()])]]> - - - - - - - - - $l->t('Failed to delete the server configuration')])]]> - - - - - - - - - $configuration])]]> - - - - - - - - - - - - - - - - - - - - - - - - $l->t('Valid configuration, but binding failed. Please check the server settings and credentials.')])]]> - $l->t('Invalid configuration: %s', $configurationError)])]]> - $e->getMessage()])]]> - $l->t('Invalid configuration: Anonymous binding is not allowed.')])]]> - $l->t('Valid configuration, connection established!')])]]> - - - - - - - - - - $e->getMessage(), 'code' => $e->getCode()])]]> - $e->getMessage()])]]> - $l->t('Action does not exist')])]]> - $l->t('Could not set configuration %1$s to %2$s', [$key, $setParameters[0]])])]]> - $l->t('Invalid data specified')])]]> - $l->t('No action specified')])]]> - $l->t('No configuration specified')])]]> - $l->t('No data specified')])]]> - getResultArray())]]> - getResultArray())]]> - - - - - - - - diff --git a/core/src/files/fileinfo.js b/core/src/files/fileinfo.js index c6fcc17e95e72..b987c840393c0 100644 --- a/core/src/files/fileinfo.js +++ b/core/src/files/fileinfo.js @@ -11,7 +11,7 @@ import _ from 'underscore' * @class OC.Files.FileInfo * @classdesc File information * - * @param {Object} data file data, see attributes for details + * @param {object} data file data, see attributes for details * * @since 8.2 */ diff --git a/dist/core-files_fileinfo.js.map b/dist/core-files_fileinfo.js.map index e23d5a8862bd2..14d7d853c5e17 100644 --- a/dist/core-files_fileinfo.js.map +++ b/dist/core-files_fileinfo.js.map @@ -1 +1 @@ -{"version":3,"file":"core-files_fileinfo.js?v=fd4d8021f99278756f60","mappings":"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","sources":["webpack:///nextcloud/webpack/runtime/chunk loaded","webpack:///nextcloud/core/src/files/fileinfo.js","webpack:///nextcloud/webpack/bootstrap","webpack:///nextcloud/webpack/runtime/compat get default export","webpack:///nextcloud/webpack/runtime/define property getters","webpack:///nextcloud/webpack/runtime/ensure chunk","webpack:///nextcloud/webpack/runtime/global","webpack:///nextcloud/webpack/runtime/hasOwnProperty shorthand","webpack:///nextcloud/webpack/runtime/make namespace object","webpack:///nextcloud/webpack/runtime/node module decorator","webpack:///nextcloud/webpack/runtime/runtimeId","webpack:///nextcloud/webpack/runtime/jsonp chunk loading","webpack:///nextcloud/webpack/runtime/nonce","webpack:///nextcloud/webpack/startup"],"sourcesContent":["var deferred = [];\n__webpack_require__.O = (result, chunkIds, fn, priority) => {\n\tif(chunkIds) {\n\t\tpriority = priority || 0;\n\t\tfor(var i = deferred.length; i > 0 && deferred[i - 1][2] > priority; i--) deferred[i] = deferred[i - 1];\n\t\tdeferred[i] = [chunkIds, fn, priority];\n\t\treturn;\n\t}\n\tvar notFulfilled = Infinity;\n\tfor (var i = 0; i < deferred.length; i++) {\n\t\tvar [chunkIds, fn, priority] = deferred[i];\n\t\tvar fulfilled = true;\n\t\tfor (var j = 0; j < chunkIds.length; j++) {\n\t\t\tif ((priority & 1 === 0 || notFulfilled >= priority) && Object.keys(__webpack_require__.O).every((key) => (__webpack_require__.O[key](chunkIds[j])))) {\n\t\t\t\tchunkIds.splice(j--, 1);\n\t\t\t} else {\n\t\t\t\tfulfilled = false;\n\t\t\t\tif(priority < notFulfilled) notFulfilled = priority;\n\t\t\t}\n\t\t}\n\t\tif(fulfilled) {\n\t\t\tdeferred.splice(i--, 1)\n\t\t\tvar r = fn();\n\t\t\tif (r !== undefined) result = r;\n\t\t}\n\t}\n\treturn result;\n};","/**\n * SPDX-FileCopyrightText: 2016-2024 Nextcloud GmbH and Nextcloud contributors\n * SPDX-FileCopyrightText: 2016 ownCloud, Inc.\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\nimport _ from 'underscore'\n\n(function(OC) {\n\t/**\n\t * @class OC.Files.FileInfo\n\t * @classdesc File information\n\t *\n\t * @param {Object} data file data, see attributes for details\n\t *\n\t * @since 8.2\n\t */\n\tconst FileInfo = function(data) {\n\t\tconst self = this\n\t\t_.each(data, function(value, key) {\n\t\t\tif (!_.isFunction(value)) {\n\t\t\t\tself[key] = value\n\t\t\t}\n\t\t})\n\n\t\tif (!_.isUndefined(this.id)) {\n\t\t\tthis.id = parseInt(data.id, 10)\n\t\t}\n\n\t\t// TODO: normalize path\n\t\tthis.path = data.path || ''\n\n\t\tif (this.type === 'dir') {\n\t\t\tthis.mimetype = 'httpd/unix-directory'\n\t\t} else {\n\t\t\tthis.mimetype = this.mimetype || 'application/octet-stream'\n\t\t}\n\n\t\tif (!this.type) {\n\t\t\tif (this.mimetype === 'httpd/unix-directory') {\n\t\t\t\tthis.type = 'dir'\n\t\t\t} else {\n\t\t\t\tthis.type = 'file'\n\t\t\t}\n\t\t}\n\t}\n\n\t/**\n\t * @memberof OC.Files\n\t */\n\tFileInfo.prototype = {\n\t\t/**\n\t\t * File id\n\t\t *\n\t\t * @type int\n\t\t */\n\t\tid: null,\n\n\t\t/**\n\t\t * File name\n\t\t *\n\t\t * @type String\n\t\t */\n\t\tname: null,\n\n\t\t/**\n\t\t * Path leading to the file, without the file name,\n\t\t * and with a leading slash.\n\t\t *\n\t\t * @type String\n\t\t */\n\t\tpath: null,\n\n\t\t/**\n\t\t * Mime type\n\t\t *\n\t\t * @type String\n\t\t */\n\t\tmimetype: null,\n\n\t\t/**\n\t\t * Icon URL.\n\t\t *\n\t\t * Can be used to override the mime type icon.\n\t\t *\n\t\t * @type String\n\t\t */\n\t\ticon: null,\n\n\t\t/**\n\t\t * File type. 'file' for files, 'dir' for directories.\n\t\t *\n\t\t * @type String\n\t\t * @deprecated rely on mimetype instead\n\t\t */\n\t\ttype: null,\n\n\t\t/**\n\t\t * Permissions.\n\t\t *\n\t\t * @see OC#PERMISSION_ALL for permissions\n\t\t * @type int\n\t\t */\n\t\tpermissions: null,\n\n\t\t/**\n\t\t * Modification time\n\t\t *\n\t\t * @type int\n\t\t */\n\t\tmtime: null,\n\n\t\t/**\n\t\t * Etag\n\t\t *\n\t\t * @type String\n\t\t */\n\t\tetag: null,\n\n\t\t/**\n\t\t * Mount type.\n\t\t *\n\t\t * One of null, \"external-root\", \"shared\" or \"shared-root\"\n\t\t *\n\t\t * @type string\n\t\t */\n\t\tmountType: null,\n\n\t\t/**\n\t\t * @type boolean\n\t\t */\n\t\thasPreview: true,\n\n\t\t/**\n\t\t * @type int\n\t\t */\n\t\tsharePermissions: null,\n\n\t\t/**\n\t\t * @type Array\n\t\t */\n\t\tshareAttributes: [],\n\n\t\tquotaAvailableBytes: -1,\n\n\t\tcanDownload: function() {\n\t\t\tfor (const i in this.shareAttributes) {\n\t\t\t\tconst attr = this.shareAttributes[i]\n\t\t\t\tif (attr.scope === 'permissions' && attr.key === 'download') {\n\t\t\t\t\treturn attr.value === true\n\t\t\t\t}\n\t\t\t}\n\n\t\t\treturn true\n\t\t},\n\t}\n\n\tif (!OC.Files) {\n\t\tOC.Files = {}\n\t}\n\tOC.Files.FileInfo = FileInfo\n})(OC)\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\tid: moduleId,\n\t\tloaded: false,\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n\t// Flag the module as loaded\n\tmodule.loaded = true;\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n// expose the modules object (__webpack_modules__)\n__webpack_require__.m = __webpack_modules__;\n\n","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = (module) => {\n\tvar getter = module && module.__esModule ?\n\t\t() => (module['default']) :\n\t\t() => (module);\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","// The chunk loading function for additional chunks\n// Since all referenced chunks are already included\n// in this file, this function is empty here.\n__webpack_require__.e = () => (Promise.resolve());","__webpack_require__.g = (function() {\n\tif (typeof globalThis === 'object') return globalThis;\n\ttry {\n\t\treturn this || new Function('return this')();\n\t} catch (e) {\n\t\tif (typeof window === 'object') return window;\n\t}\n})();","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","__webpack_require__.nmd = (module) => {\n\tmodule.paths = [];\n\tif (!module.children) module.children = [];\n\treturn module;\n};","__webpack_require__.j = 4313;","__webpack_require__.b = (typeof document !== 'undefined' && document.baseURI) || self.location.href;\n\n// object to store loaded and loading chunks\n// undefined = chunk not loaded, null = chunk preloaded/prefetched\n// [resolve, reject, Promise] = chunk loading, 0 = chunk loaded\nvar installedChunks = {\n\t4313: 0\n};\n\n// no chunk on demand loading\n\n// no prefetching\n\n// no preloaded\n\n// no HMR\n\n// no HMR manifest\n\n__webpack_require__.O.j = (chunkId) => (installedChunks[chunkId] === 0);\n\n// install a JSONP callback for chunk loading\nvar webpackJsonpCallback = (parentChunkLoadingFunction, data) => {\n\tvar [chunkIds, moreModules, runtime] = data;\n\t// add \"moreModules\" to the modules object,\n\t// then flag all \"chunkIds\" as loaded and fire callback\n\tvar moduleId, chunkId, i = 0;\n\tif(chunkIds.some((id) => (installedChunks[id] !== 0))) {\n\t\tfor(moduleId in moreModules) {\n\t\t\tif(__webpack_require__.o(moreModules, moduleId)) {\n\t\t\t\t__webpack_require__.m[moduleId] = moreModules[moduleId];\n\t\t\t}\n\t\t}\n\t\tif(runtime) var result = runtime(__webpack_require__);\n\t}\n\tif(parentChunkLoadingFunction) parentChunkLoadingFunction(data);\n\tfor(;i < chunkIds.length; i++) {\n\t\tchunkId = chunkIds[i];\n\t\tif(__webpack_require__.o(installedChunks, chunkId) && installedChunks[chunkId]) {\n\t\t\tinstalledChunks[chunkId][0]();\n\t\t}\n\t\tinstalledChunks[chunkId] = 0;\n\t}\n\treturn __webpack_require__.O(result);\n}\n\nvar chunkLoadingGlobal = globalThis[\"webpackChunknextcloud_ui_legacy\"] = globalThis[\"webpackChunknextcloud_ui_legacy\"] || [];\nchunkLoadingGlobal.forEach(webpackJsonpCallback.bind(null, 0));\nchunkLoadingGlobal.push = webpackJsonpCallback.bind(null, chunkLoadingGlobal.push.bind(chunkLoadingGlobal));","__webpack_require__.nc = undefined;","// startup\n// Load entry module and return exports\n// This entry module depends on other loaded chunks and execution need to be delayed\nvar __webpack_exports__ = __webpack_require__.O(undefined, [4208], () => (__webpack_require__(75681)))\n__webpack_exports__ = __webpack_require__.O(__webpack_exports__);\n"],"names":["deferred","OC","FileInfo","data","self","this","_","value","key","id","parseInt","path","type","mimetype","prototype","name","icon","permissions","mtime","etag","mountType","hasPreview","sharePermissions","shareAttributes","quotaAvailableBytes","canDownload","i","attr","scope","Files","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","undefined","exports","module","loaded","__webpack_modules__","call","m","O","result","chunkIds","fn","priority","notFulfilled","Infinity","length","fulfilled","j","Object","keys","every","splice","r","n","getter","__esModule","d","a","definition","o","defineProperty","enumerable","get","e","Promise","resolve","g","globalThis","Function","window","obj","prop","hasOwnProperty","Symbol","toStringTag","nmd","paths","children","b","document","baseURI","location","href","installedChunks","chunkId","webpackJsonpCallback","parentChunkLoadingFunction","moreModules","runtime","some","chunkLoadingGlobal","forEach","bind","push","nc","__webpack_exports__"],"sourceRoot":""} \ No newline at end of file +{"version":3,"file":"core-files_fileinfo.js?v=fd4d8021f99278756f60","mappings":"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","sources":["webpack:///nextcloud/webpack/runtime/chunk loaded","webpack:///nextcloud/core/src/files/fileinfo.js","webpack:///nextcloud/webpack/bootstrap","webpack:///nextcloud/webpack/runtime/compat get default export","webpack:///nextcloud/webpack/runtime/define property getters","webpack:///nextcloud/webpack/runtime/ensure chunk","webpack:///nextcloud/webpack/runtime/global","webpack:///nextcloud/webpack/runtime/hasOwnProperty shorthand","webpack:///nextcloud/webpack/runtime/make namespace object","webpack:///nextcloud/webpack/runtime/node module decorator","webpack:///nextcloud/webpack/runtime/runtimeId","webpack:///nextcloud/webpack/runtime/jsonp chunk loading","webpack:///nextcloud/webpack/runtime/nonce","webpack:///nextcloud/webpack/startup"],"sourcesContent":["var deferred = [];\n__webpack_require__.O = (result, chunkIds, fn, priority) => {\n\tif(chunkIds) {\n\t\tpriority = priority || 0;\n\t\tfor(var i = deferred.length; i > 0 && deferred[i - 1][2] > priority; i--) deferred[i] = deferred[i - 1];\n\t\tdeferred[i] = [chunkIds, fn, priority];\n\t\treturn;\n\t}\n\tvar notFulfilled = Infinity;\n\tfor (var i = 0; i < deferred.length; i++) {\n\t\tvar [chunkIds, fn, priority] = deferred[i];\n\t\tvar fulfilled = true;\n\t\tfor (var j = 0; j < chunkIds.length; j++) {\n\t\t\tif ((priority & 1 === 0 || notFulfilled >= priority) && Object.keys(__webpack_require__.O).every((key) => (__webpack_require__.O[key](chunkIds[j])))) {\n\t\t\t\tchunkIds.splice(j--, 1);\n\t\t\t} else {\n\t\t\t\tfulfilled = false;\n\t\t\t\tif(priority < notFulfilled) notFulfilled = priority;\n\t\t\t}\n\t\t}\n\t\tif(fulfilled) {\n\t\t\tdeferred.splice(i--, 1)\n\t\t\tvar r = fn();\n\t\t\tif (r !== undefined) result = r;\n\t\t}\n\t}\n\treturn result;\n};","/**\n * SPDX-FileCopyrightText: 2016-2024 Nextcloud GmbH and Nextcloud contributors\n * SPDX-FileCopyrightText: 2016 ownCloud, Inc.\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\nimport _ from 'underscore'\n\n(function(OC) {\n\t/**\n\t * @class OC.Files.FileInfo\n\t * @classdesc File information\n\t *\n\t * @param {object} data file data, see attributes for details\n\t *\n\t * @since 8.2\n\t */\n\tconst FileInfo = function(data) {\n\t\tconst self = this\n\t\t_.each(data, function(value, key) {\n\t\t\tif (!_.isFunction(value)) {\n\t\t\t\tself[key] = value\n\t\t\t}\n\t\t})\n\n\t\tif (!_.isUndefined(this.id)) {\n\t\t\tthis.id = parseInt(data.id, 10)\n\t\t}\n\n\t\t// TODO: normalize path\n\t\tthis.path = data.path || ''\n\n\t\tif (this.type === 'dir') {\n\t\t\tthis.mimetype = 'httpd/unix-directory'\n\t\t} else {\n\t\t\tthis.mimetype = this.mimetype || 'application/octet-stream'\n\t\t}\n\n\t\tif (!this.type) {\n\t\t\tif (this.mimetype === 'httpd/unix-directory') {\n\t\t\t\tthis.type = 'dir'\n\t\t\t} else {\n\t\t\t\tthis.type = 'file'\n\t\t\t}\n\t\t}\n\t}\n\n\t/**\n\t * @memberof OC.Files\n\t */\n\tFileInfo.prototype = {\n\t\t/**\n\t\t * File id\n\t\t *\n\t\t * @type int\n\t\t */\n\t\tid: null,\n\n\t\t/**\n\t\t * File name\n\t\t *\n\t\t * @type String\n\t\t */\n\t\tname: null,\n\n\t\t/**\n\t\t * Path leading to the file, without the file name,\n\t\t * and with a leading slash.\n\t\t *\n\t\t * @type String\n\t\t */\n\t\tpath: null,\n\n\t\t/**\n\t\t * Mime type\n\t\t *\n\t\t * @type String\n\t\t */\n\t\tmimetype: null,\n\n\t\t/**\n\t\t * Icon URL.\n\t\t *\n\t\t * Can be used to override the mime type icon.\n\t\t *\n\t\t * @type String\n\t\t */\n\t\ticon: null,\n\n\t\t/**\n\t\t * File type. 'file' for files, 'dir' for directories.\n\t\t *\n\t\t * @type String\n\t\t * @deprecated rely on mimetype instead\n\t\t */\n\t\ttype: null,\n\n\t\t/**\n\t\t * Permissions.\n\t\t *\n\t\t * @see OC#PERMISSION_ALL for permissions\n\t\t * @type int\n\t\t */\n\t\tpermissions: null,\n\n\t\t/**\n\t\t * Modification time\n\t\t *\n\t\t * @type int\n\t\t */\n\t\tmtime: null,\n\n\t\t/**\n\t\t * Etag\n\t\t *\n\t\t * @type String\n\t\t */\n\t\tetag: null,\n\n\t\t/**\n\t\t * Mount type.\n\t\t *\n\t\t * One of null, \"external-root\", \"shared\" or \"shared-root\"\n\t\t *\n\t\t * @type string\n\t\t */\n\t\tmountType: null,\n\n\t\t/**\n\t\t * @type boolean\n\t\t */\n\t\thasPreview: true,\n\n\t\t/**\n\t\t * @type int\n\t\t */\n\t\tsharePermissions: null,\n\n\t\t/**\n\t\t * @type Array\n\t\t */\n\t\tshareAttributes: [],\n\n\t\tquotaAvailableBytes: -1,\n\n\t\tcanDownload: function() {\n\t\t\tfor (const i in this.shareAttributes) {\n\t\t\t\tconst attr = this.shareAttributes[i]\n\t\t\t\tif (attr.scope === 'permissions' && attr.key === 'download') {\n\t\t\t\t\treturn attr.value === true\n\t\t\t\t}\n\t\t\t}\n\n\t\t\treturn true\n\t\t},\n\t}\n\n\tif (!OC.Files) {\n\t\tOC.Files = {}\n\t}\n\tOC.Files.FileInfo = FileInfo\n})(OC)\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\tid: moduleId,\n\t\tloaded: false,\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n\t// Flag the module as loaded\n\tmodule.loaded = true;\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n// expose the modules object (__webpack_modules__)\n__webpack_require__.m = __webpack_modules__;\n\n","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = (module) => {\n\tvar getter = module && module.__esModule ?\n\t\t() => (module['default']) :\n\t\t() => (module);\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","// The chunk loading function for additional chunks\n// Since all referenced chunks are already included\n// in this file, this function is empty here.\n__webpack_require__.e = () => (Promise.resolve());","__webpack_require__.g = (function() {\n\tif (typeof globalThis === 'object') return globalThis;\n\ttry {\n\t\treturn this || new Function('return this')();\n\t} catch (e) {\n\t\tif (typeof window === 'object') return window;\n\t}\n})();","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","__webpack_require__.nmd = (module) => {\n\tmodule.paths = [];\n\tif (!module.children) module.children = [];\n\treturn module;\n};","__webpack_require__.j = 4313;","__webpack_require__.b = (typeof document !== 'undefined' && document.baseURI) || self.location.href;\n\n// object to store loaded and loading chunks\n// undefined = chunk not loaded, null = chunk preloaded/prefetched\n// [resolve, reject, Promise] = chunk loading, 0 = chunk loaded\nvar installedChunks = {\n\t4313: 0\n};\n\n// no chunk on demand loading\n\n// no prefetching\n\n// no preloaded\n\n// no HMR\n\n// no HMR manifest\n\n__webpack_require__.O.j = (chunkId) => (installedChunks[chunkId] === 0);\n\n// install a JSONP callback for chunk loading\nvar webpackJsonpCallback = (parentChunkLoadingFunction, data) => {\n\tvar [chunkIds, moreModules, runtime] = data;\n\t// add \"moreModules\" to the modules object,\n\t// then flag all \"chunkIds\" as loaded and fire callback\n\tvar moduleId, chunkId, i = 0;\n\tif(chunkIds.some((id) => (installedChunks[id] !== 0))) {\n\t\tfor(moduleId in moreModules) {\n\t\t\tif(__webpack_require__.o(moreModules, moduleId)) {\n\t\t\t\t__webpack_require__.m[moduleId] = moreModules[moduleId];\n\t\t\t}\n\t\t}\n\t\tif(runtime) var result = runtime(__webpack_require__);\n\t}\n\tif(parentChunkLoadingFunction) parentChunkLoadingFunction(data);\n\tfor(;i < chunkIds.length; i++) {\n\t\tchunkId = chunkIds[i];\n\t\tif(__webpack_require__.o(installedChunks, chunkId) && installedChunks[chunkId]) {\n\t\t\tinstalledChunks[chunkId][0]();\n\t\t}\n\t\tinstalledChunks[chunkId] = 0;\n\t}\n\treturn __webpack_require__.O(result);\n}\n\nvar chunkLoadingGlobal = globalThis[\"webpackChunknextcloud_ui_legacy\"] = globalThis[\"webpackChunknextcloud_ui_legacy\"] || [];\nchunkLoadingGlobal.forEach(webpackJsonpCallback.bind(null, 0));\nchunkLoadingGlobal.push = webpackJsonpCallback.bind(null, chunkLoadingGlobal.push.bind(chunkLoadingGlobal));","__webpack_require__.nc = undefined;","// startup\n// Load entry module and return exports\n// This entry module depends on other loaded chunks and execution need to be delayed\nvar __webpack_exports__ = __webpack_require__.O(undefined, [4208], () => (__webpack_require__(75681)))\n__webpack_exports__ = __webpack_require__.O(__webpack_exports__);\n"],"names":["deferred","OC","FileInfo","data","self","this","_","value","key","id","parseInt","path","type","mimetype","prototype","name","icon","permissions","mtime","etag","mountType","hasPreview","sharePermissions","shareAttributes","quotaAvailableBytes","canDownload","i","attr","scope","Files","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","undefined","exports","module","loaded","__webpack_modules__","call","m","O","result","chunkIds","fn","priority","notFulfilled","Infinity","length","fulfilled","j","Object","keys","every","splice","r","n","getter","__esModule","d","a","definition","o","defineProperty","enumerable","get","e","Promise","resolve","g","globalThis","Function","window","obj","prop","hasOwnProperty","Symbol","toStringTag","nmd","paths","children","b","document","baseURI","location","href","installedChunks","chunkId","webpackJsonpCallback","parentChunkLoadingFunction","moreModules","runtime","some","chunkLoadingGlobal","forEach","bind","push","nc","__webpack_exports__"],"sourceRoot":""} \ No newline at end of file diff --git a/dist/user_ldap-main.js b/dist/user_ldap-main.js index 6309a94b2c81b..da34dfcdc9e3b 100644 --- a/dist/user_ldap-main.js +++ b/dist/user_ldap-main.js @@ -1,2 +1,2 @@ -(()=>{var t,n,a,r={6139:(e,t,n)=>{"use strict";n.d(t,{A:()=>s});var a=n(71354),r=n.n(a),i=n(76314),o=n.n(i)()(r());o.push([e.id,"/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/**\n * SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/*\n* Ensure proper alignment of the vue material icons\n*/\n.material-design-icon[data-v-d81f7625] {\n display: flex;\n align-self: center;\n justify-self: center;\n align-items: center;\n justify-content: center;\n}\n.nc-button-group-base > div[data-v-d81f7625] {\n text-align: center;\n color: var(--color-text-maxcontrast);\n}\n.nc-button-group-base ul.nc-button-group-content[data-v-d81f7625] {\n display: flex;\n gap: 4px;\n justify-content: space-between;\n}\n.nc-button-group-base ul.nc-button-group-content[data-v-d81f7625] li {\n flex: 1 1;\n}\n.nc-button-group-base ul.nc-button-group-content[data-v-d81f7625] .action-button {\n padding: 0 !important;\n width: 100%;\n display: flex;\n justify-content: center;\n}\n.nc-button-group-base ul.nc-button-group-content[data-v-d81f7625] .action-button.action-button--active {\n background-color: var(--color-primary-element);\n border-radius: var(--border-radius-large);\n color: var(--color-primary-element-text);\n}\n.nc-button-group-base ul.nc-button-group-content[data-v-d81f7625] .action-button.action-button--active:hover, .nc-button-group-base ul.nc-button-group-content[data-v-d81f7625] .action-button.action-button--active:focus, .nc-button-group-base ul.nc-button-group-content[data-v-d81f7625] .action-button.action-button--active:focus-within {\n background-color: var(--color-primary-element-hover);\n}\n.nc-button-group-base ul.nc-button-group-content[data-v-d81f7625] .action-button .action-button__pressed-icon {\n display: none;\n}","",{version:3,sources:["webpack://./node_modules/@nextcloud/vue/dist/assets/NcActionButtonGroup-CRXLyFpx.css"],names:[],mappings:"AAAA;;;EAGE;AACF;;;EAGE;AACF;;CAEC;AACD;EACE,aAAa;EACb,kBAAkB;EAClB,oBAAoB;EACpB,mBAAmB;EACnB,uBAAuB;AACzB;AACA;EACE,kBAAkB;EAClB,oCAAoC;AACtC;AACA;EACE,aAAa;EACb,QAAQ;EACR,8BAA8B;AAChC;AACA;EACE,SAAS;AACX;AACA;EACE,qBAAqB;EACrB,WAAW;EACX,aAAa;EACb,uBAAuB;AACzB;AACA;EACE,8CAA8C;EAC9C,yCAAyC;EACzC,wCAAwC;AAC1C;AACA;EACE,oDAAoD;AACtD;AACA;EACE,aAAa;AACf",sourcesContent:["/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/**\n * SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/*\n* Ensure proper alignment of the vue material icons\n*/\n.material-design-icon[data-v-d81f7625] {\n display: flex;\n align-self: center;\n justify-self: center;\n align-items: center;\n justify-content: center;\n}\n.nc-button-group-base > div[data-v-d81f7625] {\n text-align: center;\n color: var(--color-text-maxcontrast);\n}\n.nc-button-group-base ul.nc-button-group-content[data-v-d81f7625] {\n display: flex;\n gap: 4px;\n justify-content: space-between;\n}\n.nc-button-group-base ul.nc-button-group-content[data-v-d81f7625] li {\n flex: 1 1;\n}\n.nc-button-group-base ul.nc-button-group-content[data-v-d81f7625] .action-button {\n padding: 0 !important;\n width: 100%;\n display: flex;\n justify-content: center;\n}\n.nc-button-group-base ul.nc-button-group-content[data-v-d81f7625] .action-button.action-button--active {\n background-color: var(--color-primary-element);\n border-radius: var(--border-radius-large);\n color: var(--color-primary-element-text);\n}\n.nc-button-group-base ul.nc-button-group-content[data-v-d81f7625] .action-button.action-button--active:hover, .nc-button-group-base ul.nc-button-group-content[data-v-d81f7625] .action-button.action-button--active:focus, .nc-button-group-base ul.nc-button-group-content[data-v-d81f7625] .action-button.action-button--active:focus-within {\n background-color: var(--color-primary-element-hover);\n}\n.nc-button-group-base ul.nc-button-group-content[data-v-d81f7625] .action-button .action-button__pressed-icon {\n display: none;\n}"],sourceRoot:""}]);const s=o},9244:(e,t,n)=>{"use strict";n.d(t,{A:()=>s});var a=n(71354),r=n.n(a),i=n(76314),o=n.n(i)()(r());o.push([e.id,"/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/**\n * SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/*\n* Ensure proper alignment of the vue material icons\n*/\n.material-design-icon[data-v-258871fd] {\n display: flex;\n align-self: center;\n justify-self: center;\n align-items: center;\n justify-content: center;\n}\n\n/**\n * SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n.app-navigation-entry[data-v-258871fd] {\n position: relative;\n display: flex;\n flex-shrink: 0;\n flex-wrap: wrap;\n box-sizing: border-box;\n width: 100%;\n min-height: var(--default-clickable-area);\n transition: background-color var(--animation-quick) ease-in-out;\n transition: background-color 200ms ease-in-out;\n border-radius: var(--border-radius-element, var(--border-radius-pill));\n}\n.app-navigation-entry-wrapper[data-v-258871fd] {\n position: relative;\n display: flex;\n flex-shrink: 0;\n flex-wrap: wrap;\n box-sizing: border-box;\n width: 100%;\n}\n.app-navigation-entry-wrapper.app-navigation-entry--collapsible:not(.app-navigation-entry--opened) > ul[data-v-258871fd] {\n display: none;\n}\n.app-navigation-entry.active[data-v-258871fd] {\n background-color: var(--color-primary-element) !important;\n}\n.app-navigation-entry.active[data-v-258871fd]:hover {\n background-color: var(--color-primary-element-hover) !important;\n}\n.app-navigation-entry.active .app-navigation-entry-link[data-v-258871fd], .app-navigation-entry.active .app-navigation-entry-button[data-v-258871fd] {\n color: var(--color-primary-element-text) !important;\n}\n.app-navigation-entry[data-v-258871fd]:focus-within, .app-navigation-entry[data-v-258871fd]:hover {\n background-color: var(--color-background-hover);\n}\n.app-navigation-entry.active .app-navigation-entry__children[data-v-258871fd], .app-navigation-entry:focus-within .app-navigation-entry__children[data-v-258871fd], .app-navigation-entry:hover .app-navigation-entry__children[data-v-258871fd] {\n background-color: var(--color-main-background);\n}\n.app-navigation-entry.active .app-navigation-entry__utils .app-navigation-entry__actions[data-v-258871fd], .app-navigation-entry.app-navigation-entry--deleted .app-navigation-entry__utils .app-navigation-entry__actions[data-v-258871fd], .app-navigation-entry:focus .app-navigation-entry__utils .app-navigation-entry__actions[data-v-258871fd], .app-navigation-entry:focus-within .app-navigation-entry__utils .app-navigation-entry__actions[data-v-258871fd], .app-navigation-entry:hover .app-navigation-entry__utils .app-navigation-entry__actions[data-v-258871fd] {\n display: inline-block;\n}\n.app-navigation-entry .app-navigation-entry__actions[data-v-258871fd]:hover .button-vue {\n background-color: var(--color-background-dark) !important;\n}\n.app-navigation-entry.active .app-navigation-entry__actions[data-v-258871fd]:hover .button-vue {\n background-color: var(--color-primary-element) !important;\n}\n.app-navigation-entry[data-v-258871fd] {\n /* hide deletion/collapse of subitems */\n}\n.app-navigation-entry.app-navigation-entry--deleted > ul[data-v-258871fd] {\n display: none;\n}\n.app-navigation-entry:not(.app-navigation-entry--editing) .app-navigation-entry-link[data-v-258871fd], .app-navigation-entry:not(.app-navigation-entry--editing) .app-navigation-entry-button[data-v-258871fd] {\n padding-inline-end: calc((var(--default-clickable-area) - 16px) / 2);\n}\n.app-navigation-entry .app-navigation-entry-link[data-v-258871fd], .app-navigation-entry .app-navigation-entry-button[data-v-258871fd] {\n z-index: 100; /* above the bullet to allow click*/\n display: flex;\n overflow: hidden;\n flex: 1 1 0;\n box-sizing: border-box;\n min-height: var(--default-clickable-area);\n padding: 0;\n white-space: nowrap;\n color: var(--color-main-text);\n background-repeat: no-repeat;\n background-position: calc((var(--default-clickable-area) - 16px) / 2) center;\n background-size: 16px 16px;\n line-height: var(--default-clickable-area);\n}\n.app-navigation-entry .app-navigation-entry-link .app-navigation-entry-icon[data-v-258871fd], .app-navigation-entry .app-navigation-entry-button .app-navigation-entry-icon[data-v-258871fd] {\n display: flex;\n align-items: center;\n flex: 0 0 var(--default-clickable-area);\n justify-content: center;\n width: var(--default-clickable-area);\n height: var(--default-clickable-area);\n background-size: 16px 16px;\n background-repeat: no-repeat;\n background-position: calc((var(--default-clickable-area) - 16px) / 2) center;\n}\n.app-navigation-entry .app-navigation-entry-link .app-navigation-entry__name[data-v-258871fd], .app-navigation-entry .app-navigation-entry-button .app-navigation-entry__name[data-v-258871fd] {\n overflow: hidden;\n max-width: 100%;\n white-space: nowrap;\n text-overflow: ellipsis;\n}\n.app-navigation-entry .app-navigation-entry-link .editingContainer[data-v-258871fd], .app-navigation-entry .app-navigation-entry-button .editingContainer[data-v-258871fd] {\n width: calc(100% - var(--default-clickable-area));\n margin: auto;\n}\n.app-navigation-entry .app-navigation-entry-link[data-v-258871fd]:focus-visible, .app-navigation-entry .app-navigation-entry-button[data-v-258871fd]:focus-visible {\n box-shadow: 0 0 0 4px var(--color-main-background);\n outline: 2px solid var(--color-main-text);\n border-radius: var(--border-radius-element, var(--border-radius-pill));\n}\n\n/* Second level nesting for lists */\n.app-navigation-entry__children[data-v-258871fd] {\n --app-navigation-item-child-offset: 10px;\n position: relative;\n display: flex;\n flex: 0 1 auto;\n flex-direction: column;\n width: 100%;\n gap: var(--default-grid-baseline, 4px);\n padding-inline-start: var(--app-navigation-item-child-offset);\n}\n.app-navigation-entry__children .app-navigation-entry[data-v-258871fd] {\n display: inline-flex;\n flex-wrap: wrap;\n}\n.app-navigation-entry__children .app-navigation-entry__children .app-navigation-entry__children .app-navigation-entry__children .app-navigation-entry__children .app-navigation-entry__children .app-navigation-entry__children[data-v-258871fd] {\n --app-navigation-item-child-offset: 0;\n}\n\n/* Deleted entries */\n.app-navigation-entry__deleted[data-v-258871fd] {\n display: inline-flex;\n flex: 1 1 0;\n padding-inline-start: calc(var(--default-clickable-area) - (var(--default-clickable-area) - 16px) / 2) !important;\n}\n.app-navigation-entry__deleted .app-navigation-entry__deleted-description[data-v-258871fd] {\n position: relative;\n overflow: hidden;\n flex: 1 1 0;\n white-space: nowrap;\n text-overflow: ellipsis;\n line-height: var(--default-clickable-area);\n}\n\n/* counter and actions */\n.app-navigation-entry__utils[data-v-258871fd] {\n display: flex;\n min-width: var(--default-clickable-area);\n align-items: center;\n flex: 0 1 auto;\n justify-content: flex-end;\n}\n.app-navigation-entry__utils.app-navigation-entry__utils--display-actions .action-item.app-navigation-entry__actions[data-v-258871fd] {\n display: inline-block;\n}\n.app-navigation-entry__utils[data-v-258871fd] {\n /* counter */\n}\n.app-navigation-entry__utils .app-navigation-entry__counter-wrapper[data-v-258871fd] {\n margin-inline-end: calc(var(--default-grid-baseline) * 2);\n display: flex;\n align-items: center;\n flex: 0 1 auto;\n}\n.app-navigation-entry__utils[data-v-258871fd] {\n /* actions */\n}\n.app-navigation-entry__utils .action-item.app-navigation-entry__actions[data-v-258871fd] {\n display: none;\n}\n\n/* editing state */\n.app-navigation-entry--editing .app-navigation-entry-edit[data-v-258871fd] {\n z-index: 250;\n opacity: 1;\n}\n\n/* deleted state */\n.app-navigation-entry--deleted .app-navigation-entry-deleted[data-v-258871fd] {\n z-index: 250;\n transform: translateX(0);\n}\n\n/* pinned state */\n.app-navigation-entry--pinned[data-v-258871fd] {\n order: 2;\n margin-top: auto;\n}\n.app-navigation-entry--pinned ~ .app-navigation-entry--pinned[data-v-258871fd] {\n margin-top: 0;\n}\n[data-themes*=highcontrast] .app-navigation-entry[data-v-258871fd]:active {\n background-color: var(--color-primary-element-light-hover) !important;\n}\n.app-navigation-new-item__name[data-v-258871fd] {\n overflow: hidden;\n max-width: 100%;\n white-space: nowrap;\n text-overflow: ellipsis;\n padding-inline-start: 7px;\n font-size: 14px;\n}\n.newItemContainer[data-v-258871fd] {\n width: calc(100% - var(--default-clickable-area));\n margin: auto;\n}","",{version:3,sources:["webpack://./node_modules/@nextcloud/vue/dist/assets/NcAppNavigationNewItem-CYSjj3pD.css"],names:[],mappings:"AAAA;;;EAGE;AACF;;;EAGE;AACF;;CAEC;AACD;EACE,aAAa;EACb,kBAAkB;EAClB,oBAAoB;EACpB,mBAAmB;EACnB,uBAAuB;AACzB;;AAEA;;;EAGE;AACF;EACE,kBAAkB;EAClB,aAAa;EACb,cAAc;EACd,eAAe;EACf,sBAAsB;EACtB,WAAW;EACX,yCAAyC;EACzC,+DAA+D;EAC/D,8CAA8C;EAC9C,sEAAsE;AACxE;AACA;EACE,kBAAkB;EAClB,aAAa;EACb,cAAc;EACd,eAAe;EACf,sBAAsB;EACtB,WAAW;AACb;AACA;EACE,aAAa;AACf;AACA;EACE,yDAAyD;AAC3D;AACA;EACE,+DAA+D;AACjE;AACA;EACE,mDAAmD;AACrD;AACA;EACE,+CAA+C;AACjD;AACA;EACE,8CAA8C;AAChD;AACA;EACE,qBAAqB;AACvB;AACA;EACE,yDAAyD;AAC3D;AACA;EACE,yDAAyD;AAC3D;AACA;EACE,uCAAuC;AACzC;AACA;EACE,aAAa;AACf;AACA;EACE,oEAAoE;AACtE;AACA;EACE,YAAY,EAAE,mCAAmC;EACjD,aAAa;EACb,gBAAgB;EAChB,WAAW;EACX,sBAAsB;EACtB,yCAAyC;EACzC,UAAU;EACV,mBAAmB;EACnB,6BAA6B;EAC7B,4BAA4B;EAC5B,4EAA4E;EAC5E,0BAA0B;EAC1B,0CAA0C;AAC5C;AACA;EACE,aAAa;EACb,mBAAmB;EACnB,uCAAuC;EACvC,uBAAuB;EACvB,oCAAoC;EACpC,qCAAqC;EACrC,0BAA0B;EAC1B,4BAA4B;EAC5B,4EAA4E;AAC9E;AACA;EACE,gBAAgB;EAChB,eAAe;EACf,mBAAmB;EACnB,uBAAuB;AACzB;AACA;EACE,iDAAiD;EACjD,YAAY;AACd;AACA;EACE,kDAAkD;EAClD,yCAAyC;EACzC,sEAAsE;AACxE;;AAEA,mCAAmC;AACnC;EACE,wCAAwC;EACxC,kBAAkB;EAClB,aAAa;EACb,cAAc;EACd,sBAAsB;EACtB,WAAW;EACX,sCAAsC;EACtC,6DAA6D;AAC/D;AACA;EACE,oBAAoB;EACpB,eAAe;AACjB;AACA;EACE,qCAAqC;AACvC;;AAEA,oBAAoB;AACpB;EACE,oBAAoB;EACpB,WAAW;EACX,iHAAiH;AACnH;AACA;EACE,kBAAkB;EAClB,gBAAgB;EAChB,WAAW;EACX,mBAAmB;EACnB,uBAAuB;EACvB,0CAA0C;AAC5C;;AAEA,wBAAwB;AACxB;EACE,aAAa;EACb,wCAAwC;EACxC,mBAAmB;EACnB,cAAc;EACd,yBAAyB;AAC3B;AACA;EACE,qBAAqB;AACvB;AACA;EACE,YAAY;AACd;AACA;EACE,yDAAyD;EACzD,aAAa;EACb,mBAAmB;EACnB,cAAc;AAChB;AACA;EACE,YAAY;AACd;AACA;EACE,aAAa;AACf;;AAEA,kBAAkB;AAClB;EACE,YAAY;EACZ,UAAU;AACZ;;AAEA,kBAAkB;AAClB;EACE,YAAY;EACZ,wBAAwB;AAC1B;;AAEA,iBAAiB;AACjB;EACE,QAAQ;EACR,gBAAgB;AAClB;AACA;EACE,aAAa;AACf;AACA;EACE,qEAAqE;AACvE;AACA;EACE,gBAAgB;EAChB,eAAe;EACf,mBAAmB;EACnB,uBAAuB;EACvB,yBAAyB;EACzB,eAAe;AACjB;AACA;EACE,iDAAiD;EACjD,YAAY;AACd",sourcesContent:["/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/**\n * SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/*\n* Ensure proper alignment of the vue material icons\n*/\n.material-design-icon[data-v-258871fd] {\n display: flex;\n align-self: center;\n justify-self: center;\n align-items: center;\n justify-content: center;\n}\n\n/**\n * SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n.app-navigation-entry[data-v-258871fd] {\n position: relative;\n display: flex;\n flex-shrink: 0;\n flex-wrap: wrap;\n box-sizing: border-box;\n width: 100%;\n min-height: var(--default-clickable-area);\n transition: background-color var(--animation-quick) ease-in-out;\n transition: background-color 200ms ease-in-out;\n border-radius: var(--border-radius-element, var(--border-radius-pill));\n}\n.app-navigation-entry-wrapper[data-v-258871fd] {\n position: relative;\n display: flex;\n flex-shrink: 0;\n flex-wrap: wrap;\n box-sizing: border-box;\n width: 100%;\n}\n.app-navigation-entry-wrapper.app-navigation-entry--collapsible:not(.app-navigation-entry--opened) > ul[data-v-258871fd] {\n display: none;\n}\n.app-navigation-entry.active[data-v-258871fd] {\n background-color: var(--color-primary-element) !important;\n}\n.app-navigation-entry.active[data-v-258871fd]:hover {\n background-color: var(--color-primary-element-hover) !important;\n}\n.app-navigation-entry.active .app-navigation-entry-link[data-v-258871fd], .app-navigation-entry.active .app-navigation-entry-button[data-v-258871fd] {\n color: var(--color-primary-element-text) !important;\n}\n.app-navigation-entry[data-v-258871fd]:focus-within, .app-navigation-entry[data-v-258871fd]:hover {\n background-color: var(--color-background-hover);\n}\n.app-navigation-entry.active .app-navigation-entry__children[data-v-258871fd], .app-navigation-entry:focus-within .app-navigation-entry__children[data-v-258871fd], .app-navigation-entry:hover .app-navigation-entry__children[data-v-258871fd] {\n background-color: var(--color-main-background);\n}\n.app-navigation-entry.active .app-navigation-entry__utils .app-navigation-entry__actions[data-v-258871fd], .app-navigation-entry.app-navigation-entry--deleted .app-navigation-entry__utils .app-navigation-entry__actions[data-v-258871fd], .app-navigation-entry:focus .app-navigation-entry__utils .app-navigation-entry__actions[data-v-258871fd], .app-navigation-entry:focus-within .app-navigation-entry__utils .app-navigation-entry__actions[data-v-258871fd], .app-navigation-entry:hover .app-navigation-entry__utils .app-navigation-entry__actions[data-v-258871fd] {\n display: inline-block;\n}\n.app-navigation-entry .app-navigation-entry__actions[data-v-258871fd]:hover .button-vue {\n background-color: var(--color-background-dark) !important;\n}\n.app-navigation-entry.active .app-navigation-entry__actions[data-v-258871fd]:hover .button-vue {\n background-color: var(--color-primary-element) !important;\n}\n.app-navigation-entry[data-v-258871fd] {\n /* hide deletion/collapse of subitems */\n}\n.app-navigation-entry.app-navigation-entry--deleted > ul[data-v-258871fd] {\n display: none;\n}\n.app-navigation-entry:not(.app-navigation-entry--editing) .app-navigation-entry-link[data-v-258871fd], .app-navigation-entry:not(.app-navigation-entry--editing) .app-navigation-entry-button[data-v-258871fd] {\n padding-inline-end: calc((var(--default-clickable-area) - 16px) / 2);\n}\n.app-navigation-entry .app-navigation-entry-link[data-v-258871fd], .app-navigation-entry .app-navigation-entry-button[data-v-258871fd] {\n z-index: 100; /* above the bullet to allow click*/\n display: flex;\n overflow: hidden;\n flex: 1 1 0;\n box-sizing: border-box;\n min-height: var(--default-clickable-area);\n padding: 0;\n white-space: nowrap;\n color: var(--color-main-text);\n background-repeat: no-repeat;\n background-position: calc((var(--default-clickable-area) - 16px) / 2) center;\n background-size: 16px 16px;\n line-height: var(--default-clickable-area);\n}\n.app-navigation-entry .app-navigation-entry-link .app-navigation-entry-icon[data-v-258871fd], .app-navigation-entry .app-navigation-entry-button .app-navigation-entry-icon[data-v-258871fd] {\n display: flex;\n align-items: center;\n flex: 0 0 var(--default-clickable-area);\n justify-content: center;\n width: var(--default-clickable-area);\n height: var(--default-clickable-area);\n background-size: 16px 16px;\n background-repeat: no-repeat;\n background-position: calc((var(--default-clickable-area) - 16px) / 2) center;\n}\n.app-navigation-entry .app-navigation-entry-link .app-navigation-entry__name[data-v-258871fd], .app-navigation-entry .app-navigation-entry-button .app-navigation-entry__name[data-v-258871fd] {\n overflow: hidden;\n max-width: 100%;\n white-space: nowrap;\n text-overflow: ellipsis;\n}\n.app-navigation-entry .app-navigation-entry-link .editingContainer[data-v-258871fd], .app-navigation-entry .app-navigation-entry-button .editingContainer[data-v-258871fd] {\n width: calc(100% - var(--default-clickable-area));\n margin: auto;\n}\n.app-navigation-entry .app-navigation-entry-link[data-v-258871fd]:focus-visible, .app-navigation-entry .app-navigation-entry-button[data-v-258871fd]:focus-visible {\n box-shadow: 0 0 0 4px var(--color-main-background);\n outline: 2px solid var(--color-main-text);\n border-radius: var(--border-radius-element, var(--border-radius-pill));\n}\n\n/* Second level nesting for lists */\n.app-navigation-entry__children[data-v-258871fd] {\n --app-navigation-item-child-offset: 10px;\n position: relative;\n display: flex;\n flex: 0 1 auto;\n flex-direction: column;\n width: 100%;\n gap: var(--default-grid-baseline, 4px);\n padding-inline-start: var(--app-navigation-item-child-offset);\n}\n.app-navigation-entry__children .app-navigation-entry[data-v-258871fd] {\n display: inline-flex;\n flex-wrap: wrap;\n}\n.app-navigation-entry__children .app-navigation-entry__children .app-navigation-entry__children .app-navigation-entry__children .app-navigation-entry__children .app-navigation-entry__children .app-navigation-entry__children[data-v-258871fd] {\n --app-navigation-item-child-offset: 0;\n}\n\n/* Deleted entries */\n.app-navigation-entry__deleted[data-v-258871fd] {\n display: inline-flex;\n flex: 1 1 0;\n padding-inline-start: calc(var(--default-clickable-area) - (var(--default-clickable-area) - 16px) / 2) !important;\n}\n.app-navigation-entry__deleted .app-navigation-entry__deleted-description[data-v-258871fd] {\n position: relative;\n overflow: hidden;\n flex: 1 1 0;\n white-space: nowrap;\n text-overflow: ellipsis;\n line-height: var(--default-clickable-area);\n}\n\n/* counter and actions */\n.app-navigation-entry__utils[data-v-258871fd] {\n display: flex;\n min-width: var(--default-clickable-area);\n align-items: center;\n flex: 0 1 auto;\n justify-content: flex-end;\n}\n.app-navigation-entry__utils.app-navigation-entry__utils--display-actions .action-item.app-navigation-entry__actions[data-v-258871fd] {\n display: inline-block;\n}\n.app-navigation-entry__utils[data-v-258871fd] {\n /* counter */\n}\n.app-navigation-entry__utils .app-navigation-entry__counter-wrapper[data-v-258871fd] {\n margin-inline-end: calc(var(--default-grid-baseline) * 2);\n display: flex;\n align-items: center;\n flex: 0 1 auto;\n}\n.app-navigation-entry__utils[data-v-258871fd] {\n /* actions */\n}\n.app-navigation-entry__utils .action-item.app-navigation-entry__actions[data-v-258871fd] {\n display: none;\n}\n\n/* editing state */\n.app-navigation-entry--editing .app-navigation-entry-edit[data-v-258871fd] {\n z-index: 250;\n opacity: 1;\n}\n\n/* deleted state */\n.app-navigation-entry--deleted .app-navigation-entry-deleted[data-v-258871fd] {\n z-index: 250;\n transform: translateX(0);\n}\n\n/* pinned state */\n.app-navigation-entry--pinned[data-v-258871fd] {\n order: 2;\n margin-top: auto;\n}\n.app-navigation-entry--pinned ~ .app-navigation-entry--pinned[data-v-258871fd] {\n margin-top: 0;\n}\n[data-themes*=highcontrast] .app-navigation-entry[data-v-258871fd]:active {\n background-color: var(--color-primary-element-light-hover) !important;\n}\n.app-navigation-new-item__name[data-v-258871fd] {\n overflow: hidden;\n max-width: 100%;\n white-space: nowrap;\n text-overflow: ellipsis;\n padding-inline-start: 7px;\n font-size: 14px;\n}\n.newItemContainer[data-v-258871fd] {\n width: calc(100% - var(--default-clickable-area));\n margin: auto;\n}"],sourceRoot:""}]);const s=o},9555:(e,t,n)=>{"use strict";n.d(t,{A:()=>s});var a=n(71354),r=n.n(a),i=n(76314),o=n.n(i)()(r());o.push([e.id,"/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/**\n * SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/*\n* Ensure proper alignment of the vue material icons\n*/\n.material-design-icon[data-v-9f864ea4] {\n display: flex;\n align-self: center;\n justify-self: center;\n align-items: center;\n justify-content: center;\n}\n.resource[data-v-9f864ea4] {\n display: flex;\n align-items: center;\n height: var(--default-clickable-area);\n}\n.resource__button[data-v-9f864ea4] {\n width: 100% !important;\n justify-content: flex-start !important;\n padding: 0 !important;\n}\n.resource__button[data-v-9f864ea4] .button-vue__wrapper {\n justify-content: flex-start !important;\n}\n.resource__button[data-v-9f864ea4] .button-vue__wrapper .button-vue__text {\n font-weight: normal !important;\n margin-left: 2px !important;\n}\n.resource__icon[data-v-9f864ea4] {\n width: 32px;\n height: 32px;\n background-color: var(--color-text-maxcontrast);\n border-radius: 50%;\n display: flex;\n align-items: center;\n justify-content: center;\n}\n.resource__icon img[data-v-9f864ea4] {\n width: 16px;\n height: 16px;\n filter: var(--background-invert-if-dark);\n}/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/**\n * SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/*\n* Ensure proper alignment of the vue material icons\n*/\n.material-design-icon[data-v-e224f6ac] {\n display: flex;\n align-self: center;\n justify-self: center;\n align-items: center;\n justify-content: center;\n}\n.team-resources__header[data-v-e224f6ac] {\n font-weight: bold;\n margin-bottom: 6px;\n}\n.related-team[data-v-e224f6ac] {\n border-radius: var(--border-radius-rounded);\n border: 2px solid var(--color-border-dark);\n margin-bottom: 6px;\n}\n.related-team__open[data-v-e224f6ac] {\n border-color: var(--color-primary-element);\n}\n.related-team__header[data-v-e224f6ac] {\n padding: 6px;\n padding-right: 24px;\n display: flex;\n gap: 12px;\n}\n.related-team__name[data-v-e224f6ac] {\n display: flex;\n flex-grow: 1;\n align-items: center;\n gap: 12px;\n padding: 6px 12px;\n font-weight: bold;\n margin: 0;\n}\n.related-team .related-team-provider[data-v-e224f6ac] {\n padding: 6px 12px;\n}\n.related-team .related-team-provider__name[data-v-e224f6ac] {\n font-weight: bold;\n margin-bottom: 3px;\n}\n.related-team .related-team-provider__link[data-v-e224f6ac] {\n display: flex;\n gap: 12px;\n padding: 6px 12px;\n font-weight: bold;\n}\n.related-team .related-team-resource__link[data-v-e224f6ac] {\n display: flex;\n gap: 12px;\n height: var(--default-clickable-area);\n align-items: center;\n border-radius: var(--border-radius-large);\n}\n.related-team .related-team-resource__link[data-v-e224f6ac]:hover {\n background-color: var(--color-background-hover);\n}\n.related-team .related-team-resource__link[data-v-e224f6ac]:focus {\n background-color: var(--color-background-hover);\n outline: 2px solid var(--color-primary-element);\n}\n.related-team .related-team-resource .resource__icon[data-v-e224f6ac] {\n width: var(--default-clickable-area);\n height: var(--default-clickable-area);\n display: flex;\n align-items: center;\n justify-content: center;\n text-align: center;\n}\n.related-team .related-team-resource .resource__icon > img[data-v-e224f6ac] {\n border-radius: var(--border-radius-pill);\n overflow: hidden;\n width: 32px;\n height: 32px;\n}/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/**\n * SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/*\n* Ensure proper alignment of the vue material icons\n*/\n.material-design-icon[data-v-eaa109ec] {\n display: flex;\n align-self: center;\n justify-self: center;\n align-items: center;\n justify-content: center;\n}\n.related-resources__header h5[data-v-eaa109ec] {\n font-weight: bold;\n margin-bottom: 6px;\n}\n.related-resources__header p[data-v-eaa109ec] {\n color: var(--color-text-maxcontrast);\n}","",{version:3,sources:["webpack://./node_modules/@nextcloud/vue/dist/assets/NcRelatedResourcesPanel-BgMc8bue.css"],names:[],mappings:"AAAA;;;EAGE;AACF;;;EAGE;AACF;;CAEC;AACD;EACE,aAAa;EACb,kBAAkB;EAClB,oBAAoB;EACpB,mBAAmB;EACnB,uBAAuB;AACzB;AACA;EACE,aAAa;EACb,mBAAmB;EACnB,qCAAqC;AACvC;AACA;EACE,sBAAsB;EACtB,sCAAsC;EACtC,qBAAqB;AACvB;AACA;EACE,sCAAsC;AACxC;AACA;EACE,8BAA8B;EAC9B,2BAA2B;AAC7B;AACA;EACE,WAAW;EACX,YAAY;EACZ,+CAA+C;EAC/C,kBAAkB;EAClB,aAAa;EACb,mBAAmB;EACnB,uBAAuB;AACzB;AACA;EACE,WAAW;EACX,YAAY;EACZ,wCAAwC;AAC1C,CAAC;;;EAGC;AACF;;;EAGE;AACF;;CAEC;AACD;EACE,aAAa;EACb,kBAAkB;EAClB,oBAAoB;EACpB,mBAAmB;EACnB,uBAAuB;AACzB;AACA;EACE,iBAAiB;EACjB,kBAAkB;AACpB;AACA;EACE,2CAA2C;EAC3C,0CAA0C;EAC1C,kBAAkB;AACpB;AACA;EACE,0CAA0C;AAC5C;AACA;EACE,YAAY;EACZ,mBAAmB;EACnB,aAAa;EACb,SAAS;AACX;AACA;EACE,aAAa;EACb,YAAY;EACZ,mBAAmB;EACnB,SAAS;EACT,iBAAiB;EACjB,iBAAiB;EACjB,SAAS;AACX;AACA;EACE,iBAAiB;AACnB;AACA;EACE,iBAAiB;EACjB,kBAAkB;AACpB;AACA;EACE,aAAa;EACb,SAAS;EACT,iBAAiB;EACjB,iBAAiB;AACnB;AACA;EACE,aAAa;EACb,SAAS;EACT,qCAAqC;EACrC,mBAAmB;EACnB,yCAAyC;AAC3C;AACA;EACE,+CAA+C;AACjD;AACA;EACE,+CAA+C;EAC/C,+CAA+C;AACjD;AACA;EACE,oCAAoC;EACpC,qCAAqC;EACrC,aAAa;EACb,mBAAmB;EACnB,uBAAuB;EACvB,kBAAkB;AACpB;AACA;EACE,wCAAwC;EACxC,gBAAgB;EAChB,WAAW;EACX,YAAY;AACd,CAAC;;;EAGC;AACF;;;EAGE;AACF;;CAEC;AACD;EACE,aAAa;EACb,kBAAkB;EAClB,oBAAoB;EACpB,mBAAmB;EACnB,uBAAuB;AACzB;AACA;EACE,iBAAiB;EACjB,kBAAkB;AACpB;AACA;EACE,oCAAoC;AACtC",sourcesContent:["/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/**\n * SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/*\n* Ensure proper alignment of the vue material icons\n*/\n.material-design-icon[data-v-9f864ea4] {\n display: flex;\n align-self: center;\n justify-self: center;\n align-items: center;\n justify-content: center;\n}\n.resource[data-v-9f864ea4] {\n display: flex;\n align-items: center;\n height: var(--default-clickable-area);\n}\n.resource__button[data-v-9f864ea4] {\n width: 100% !important;\n justify-content: flex-start !important;\n padding: 0 !important;\n}\n.resource__button[data-v-9f864ea4] .button-vue__wrapper {\n justify-content: flex-start !important;\n}\n.resource__button[data-v-9f864ea4] .button-vue__wrapper .button-vue__text {\n font-weight: normal !important;\n margin-left: 2px !important;\n}\n.resource__icon[data-v-9f864ea4] {\n width: 32px;\n height: 32px;\n background-color: var(--color-text-maxcontrast);\n border-radius: 50%;\n display: flex;\n align-items: center;\n justify-content: center;\n}\n.resource__icon img[data-v-9f864ea4] {\n width: 16px;\n height: 16px;\n filter: var(--background-invert-if-dark);\n}/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/**\n * SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/*\n* Ensure proper alignment of the vue material icons\n*/\n.material-design-icon[data-v-e224f6ac] {\n display: flex;\n align-self: center;\n justify-self: center;\n align-items: center;\n justify-content: center;\n}\n.team-resources__header[data-v-e224f6ac] {\n font-weight: bold;\n margin-bottom: 6px;\n}\n.related-team[data-v-e224f6ac] {\n border-radius: var(--border-radius-rounded);\n border: 2px solid var(--color-border-dark);\n margin-bottom: 6px;\n}\n.related-team__open[data-v-e224f6ac] {\n border-color: var(--color-primary-element);\n}\n.related-team__header[data-v-e224f6ac] {\n padding: 6px;\n padding-right: 24px;\n display: flex;\n gap: 12px;\n}\n.related-team__name[data-v-e224f6ac] {\n display: flex;\n flex-grow: 1;\n align-items: center;\n gap: 12px;\n padding: 6px 12px;\n font-weight: bold;\n margin: 0;\n}\n.related-team .related-team-provider[data-v-e224f6ac] {\n padding: 6px 12px;\n}\n.related-team .related-team-provider__name[data-v-e224f6ac] {\n font-weight: bold;\n margin-bottom: 3px;\n}\n.related-team .related-team-provider__link[data-v-e224f6ac] {\n display: flex;\n gap: 12px;\n padding: 6px 12px;\n font-weight: bold;\n}\n.related-team .related-team-resource__link[data-v-e224f6ac] {\n display: flex;\n gap: 12px;\n height: var(--default-clickable-area);\n align-items: center;\n border-radius: var(--border-radius-large);\n}\n.related-team .related-team-resource__link[data-v-e224f6ac]:hover {\n background-color: var(--color-background-hover);\n}\n.related-team .related-team-resource__link[data-v-e224f6ac]:focus {\n background-color: var(--color-background-hover);\n outline: 2px solid var(--color-primary-element);\n}\n.related-team .related-team-resource .resource__icon[data-v-e224f6ac] {\n width: var(--default-clickable-area);\n height: var(--default-clickable-area);\n display: flex;\n align-items: center;\n justify-content: center;\n text-align: center;\n}\n.related-team .related-team-resource .resource__icon > img[data-v-e224f6ac] {\n border-radius: var(--border-radius-pill);\n overflow: hidden;\n width: 32px;\n height: 32px;\n}/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/**\n * SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/*\n* Ensure proper alignment of the vue material icons\n*/\n.material-design-icon[data-v-eaa109ec] {\n display: flex;\n align-self: center;\n justify-self: center;\n align-items: center;\n justify-content: center;\n}\n.related-resources__header h5[data-v-eaa109ec] {\n font-weight: bold;\n margin-bottom: 6px;\n}\n.related-resources__header p[data-v-eaa109ec] {\n color: var(--color-text-maxcontrast);\n}"],sourceRoot:""}]);const s=o},14693:(e,t,n)=>{"use strict";n.d(t,{A:()=>s});var a=n(71354),r=n.n(a),i=n(76314),o=n.n(i)()(r());o.push([e.id,"/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/**\n * SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/*\n* Ensure proper alignment of the vue material icons\n*/\n.material-design-icon[data-v-018dbbe8] {\n display: flex;\n align-self: center;\n justify-self: center;\n align-items: center;\n justify-content: center;\n}\n\n/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/**\n * color-text-lighter\t\tnormal state\n * color-text-lighter\t\tactive state\n * color-text-maxcontrast \tdisabled state\n */\n/* Default global values */\nbutton[data-v-018dbbe8]:not(.button-vue),\ninput[data-v-018dbbe8]:not([type=range]),\ntextarea[data-v-018dbbe8] {\n margin: 0;\n padding: 7px 6px;\n cursor: text;\n color: var(--color-text-lighter);\n border: 1px solid var(--color-border-dark);\n border-radius: var(--border-radius);\n outline: none;\n background-color: var(--color-main-background);\n font-size: 13px;\n}\nbutton[data-v-018dbbe8]:not(.button-vue):not(:disabled):not(.primary):hover, button[data-v-018dbbe8]:not(.button-vue):not(:disabled):not(.primary):focus, button:not(.button-vue):not(:disabled):not(.primary).active[data-v-018dbbe8],\ninput[data-v-018dbbe8]:not([type=range]):not(:disabled):not(.primary):hover,\ninput[data-v-018dbbe8]:not([type=range]):not(:disabled):not(.primary):focus,\ninput:not([type=range]):not(:disabled):not(.primary).active[data-v-018dbbe8],\ntextarea[data-v-018dbbe8]:not(:disabled):not(.primary):hover,\ntextarea[data-v-018dbbe8]:not(:disabled):not(.primary):focus,\ntextarea:not(:disabled):not(.primary).active[data-v-018dbbe8] {\n /* active class used for multiselect */\n border-color: var(--color-primary-element);\n outline: none;\n}\nbutton[data-v-018dbbe8]:not(.button-vue):not(:disabled):not(.primary):active,\ninput[data-v-018dbbe8]:not([type=range]):not(:disabled):not(.primary):active,\ntextarea[data-v-018dbbe8]:not(:disabled):not(.primary):active {\n color: var(--color-text-light);\n outline: none;\n background-color: var(--color-main-background);\n}\nbutton[data-v-018dbbe8]:not(.button-vue):disabled,\ninput[data-v-018dbbe8]:not([type=range]):disabled,\ntextarea[data-v-018dbbe8]:disabled {\n cursor: default;\n opacity: 0.5;\n color: var(--color-text-maxcontrast);\n background-color: var(--color-background-dark);\n}\nbutton[data-v-018dbbe8]:not(.button-vue):required,\ninput[data-v-018dbbe8]:not([type=range]):required,\ntextarea[data-v-018dbbe8]:required {\n box-shadow: none;\n}\nbutton[data-v-018dbbe8]:not(.button-vue):invalid,\ninput[data-v-018dbbe8]:not([type=range]):invalid,\ntextarea[data-v-018dbbe8]:invalid {\n border-color: var(--color-border-error, var(--color-error));\n box-shadow: none !important;\n}\nbutton[data-v-018dbbe8]:not(.button-vue),\ninput[data-v-018dbbe8]:not([type=range]),\ntextarea[data-v-018dbbe8] {\n /* Primary action button, use sparingly */\n}\nbutton:not(.button-vue).primary[data-v-018dbbe8],\ninput:not([type=range]).primary[data-v-018dbbe8],\ntextarea.primary[data-v-018dbbe8] {\n cursor: pointer;\n color: var(--color-primary-element-text);\n border-color: var(--color-primary-element);\n background-color: var(--color-primary-element);\n}\nbutton:not(.button-vue).primary[data-v-018dbbe8]:not(:disabled):hover, button:not(.button-vue).primary[data-v-018dbbe8]:not(:disabled):focus, button:not(.button-vue).primary[data-v-018dbbe8]:not(:disabled):active,\ninput:not([type=range]).primary[data-v-018dbbe8]:not(:disabled):hover,\ninput:not([type=range]).primary[data-v-018dbbe8]:not(:disabled):focus,\ninput:not([type=range]).primary[data-v-018dbbe8]:not(:disabled):active,\ntextarea.primary[data-v-018dbbe8]:not(:disabled):hover,\ntextarea.primary[data-v-018dbbe8]:not(:disabled):focus,\ntextarea.primary[data-v-018dbbe8]:not(:disabled):active {\n border-color: var(--color-primary-element-light);\n background-color: var(--color-primary-element-light);\n}\nbutton:not(.button-vue).primary[data-v-018dbbe8]:not(:disabled):active,\ninput:not([type=range]).primary[data-v-018dbbe8]:not(:disabled):active,\ntextarea.primary[data-v-018dbbe8]:not(:disabled):active {\n color: var(--color-primary-element-text-dark);\n}\nbutton:not(.button-vue).primary[data-v-018dbbe8]:disabled,\ninput:not([type=range]).primary[data-v-018dbbe8]:disabled,\ntextarea.primary[data-v-018dbbe8]:disabled {\n cursor: default;\n color: var(--color-primary-element-text-dark);\n background-color: var(--color-primary-element);\n}\n\n/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nli.action[data-v-018dbbe8]:hover, li.action.active[data-v-018dbbe8] {\n border-radius: 6px;\n padding: 0;\n}\nli.action[data-v-018dbbe8]:hover {\n background-color: var(--color-background-hover);\n}\n.action--disabled[data-v-018dbbe8] {\n pointer-events: none;\n opacity: 0.5;\n}\n.action--disabled[data-v-018dbbe8]:hover, .action--disabled[data-v-018dbbe8]:focus {\n cursor: default;\n opacity: 0.5;\n}\n.action--disabled *[data-v-018dbbe8] {\n opacity: 1 !important;\n}\n.action-text-editable[data-v-018dbbe8] {\n display: flex;\n align-items: flex-start;\n width: 100%;\n height: auto;\n margin: 0;\n padding: 0;\n cursor: pointer;\n white-space: nowrap;\n color: var(--color-main-text);\n border: 0;\n border-radius: 0;\n background-color: transparent;\n box-shadow: none;\n font-weight: normal;\n line-height: var(--default-clickable-area);\n}\n.action-text-editable > span[data-v-018dbbe8] {\n cursor: pointer;\n white-space: nowrap;\n}\n.action-text-editable__icon[data-v-018dbbe8] {\n min-width: 0; /* Overwrite icons*/\n min-height: 0;\n /* Keep padding to define the width to\n \tassure correct position of a possible text */\n padding: calc(var(--default-clickable-area) / 2) 0 calc(var(--default-clickable-area) / 2) var(--default-clickable-area);\n background-position: calc((var(--default-clickable-area) - 16px) / 2) center;\n background-size: 16px;\n}\n.action-text-editable[data-v-018dbbe8] .material-design-icon {\n width: var(--default-clickable-area);\n height: var(--default-clickable-area);\n opacity: 1;\n}\n.action-text-editable[data-v-018dbbe8] .material-design-icon .material-design-icon__svg {\n vertical-align: middle;\n}\n.action-text-editable__form[data-v-018dbbe8] {\n display: flex;\n flex: 1 1 auto;\n flex-direction: column;\n position: relative;\n margin: 4px 0;\n padding-inline-end: calc((var(--default-clickable-area) - 16px) / 2);\n}\n.action-text-editable__submit[data-v-018dbbe8] {\n position: absolute;\n inset-inline-start: 0;\n top: auto;\n width: 1px;\n height: 1px;\n overflow: hidden;\n z-index: -1;\n opacity: 0;\n}\n.action-text-editable__label[data-v-018dbbe8] {\n display: flex;\n align-items: center;\n justify-content: center;\n position: absolute;\n inset-inline-end: calc((var(--default-clickable-area) - 16px) / 2 + 1px);\n bottom: 1px;\n width: calc(var(--default-clickable-area) - 8px);\n height: calc(var(--default-clickable-area) - 8px);\n box-sizing: border-box;\n margin: 0;\n padding: 7px 6px;\n border: 0;\n border-radius: 50%;\n /* Avoid background under border */\n background-color: var(--color-main-background);\n background-clip: padding-box;\n}\n.action-text-editable__label[data-v-018dbbe8], .action-text-editable__label *[data-v-018dbbe8] {\n cursor: pointer;\n}\n.action-text-editable[data-v-018dbbe8] {\n /* Inputs inside popover supports text, submit & reset */\n}\n.action-text-editable__textarea[data-v-018dbbe8] {\n flex: 1 1 auto;\n color: inherit;\n border-color: var(--color-border-maxcontrast);\n min-height: calc(var(--default-clickable-area) * 2 - 8px); /* twice the element margin-y */\n max-height: calc(var(--default-clickable-area) * 3 - 8px); /* twice the element margin-y */\n min-width: calc(var(--default-clickable-area) * 4);\n width: 100% !important;\n margin: 0;\n}\n.action-text-editable__textarea[data-v-018dbbe8]:disabled {\n cursor: default;\n}\n.action-text-editable__textarea[data-v-018dbbe8] {\n /* only show confirm borders if input is not focused */\n}\n.action-text-editable__textarea:not(:active):not(:hover):not(:focus):invalid + .action-text-editable__label[data-v-018dbbe8] {\n background-color: var(--color-error);\n}\n.action-text-editable__textarea:not(:active):not(:hover):not(:focus):not(:disabled) + .action-text-editable__label[data-v-018dbbe8]:active, .action-text-editable__textarea:not(:active):not(:hover):not(:focus):not(:disabled) + .action-text-editable__label[data-v-018dbbe8]:hover, .action-text-editable__textarea:not(:active):not(:hover):not(:focus):not(:disabled) + .action-text-editable__label[data-v-018dbbe8]:focus {\n background-color: var(--color-primary-element);\n color: var(--color-primary-element-text);\n}\n.action-text-editable__textarea:active:not(:disabled) + .action-text-editable__label[data-v-018dbbe8], .action-text-editable__textarea:hover:not(:disabled) + .action-text-editable__label[data-v-018dbbe8], .action-text-editable__textarea:focus:not(:disabled) + .action-text-editable__label[data-v-018dbbe8] {\n /* above previous input */\n z-index: 2;\n border-color: var(--color-primary-element);\n border-inline-start-color: transparent;\n}\nli:last-child > .action-text-editable[data-v-018dbbe8] {\n margin-bottom: calc((var(--default-clickable-area) - 16px) / 2 - 4px);\n}\nli:first-child > .action-text-editable[data-v-018dbbe8] {\n margin-top: calc((var(--default-clickable-area) - 16px) / 2 - 4px);\n}","",{version:3,sources:["webpack://./node_modules/@nextcloud/vue/dist/assets/NcActionTextEditable-BCmDMuUg.css"],names:[],mappings:"AAAA;;;EAGE;AACF;;;EAGE;AACF;;CAEC;AACD;EACE,aAAa;EACb,kBAAkB;EAClB,oBAAoB;EACpB,mBAAmB;EACnB,uBAAuB;AACzB;;AAEA;;;EAGE;AACF;;;;EAIE;AACF,0BAA0B;AAC1B;;;EAGE,SAAS;EACT,gBAAgB;EAChB,YAAY;EACZ,gCAAgC;EAChC,0CAA0C;EAC1C,mCAAmC;EACnC,aAAa;EACb,8CAA8C;EAC9C,eAAe;AACjB;AACA;;;;;;;EAOE,sCAAsC;EACtC,0CAA0C;EAC1C,aAAa;AACf;AACA;;;EAGE,8BAA8B;EAC9B,aAAa;EACb,8CAA8C;AAChD;AACA;;;EAGE,eAAe;EACf,YAAY;EACZ,oCAAoC;EACpC,8CAA8C;AAChD;AACA;;;EAGE,gBAAgB;AAClB;AACA;;;EAGE,2DAA2D;EAC3D,2BAA2B;AAC7B;AACA;;;EAGE,yCAAyC;AAC3C;AACA;;;EAGE,eAAe;EACf,wCAAwC;EACxC,0CAA0C;EAC1C,8CAA8C;AAChD;AACA;;;;;;;EAOE,gDAAgD;EAChD,oDAAoD;AACtD;AACA;;;EAGE,6CAA6C;AAC/C;AACA;;;EAGE,eAAe;EACf,6CAA6C;EAC7C,8CAA8C;AAChD;;AAEA;;;EAGE;AACF;EACE,kBAAkB;EAClB,UAAU;AACZ;AACA;EACE,+CAA+C;AACjD;AACA;EACE,oBAAoB;EACpB,YAAY;AACd;AACA;EACE,eAAe;EACf,YAAY;AACd;AACA;EACE,qBAAqB;AACvB;AACA;EACE,aAAa;EACb,uBAAuB;EACvB,WAAW;EACX,YAAY;EACZ,SAAS;EACT,UAAU;EACV,eAAe;EACf,mBAAmB;EACnB,6BAA6B;EAC7B,SAAS;EACT,gBAAgB;EAChB,6BAA6B;EAC7B,gBAAgB;EAChB,mBAAmB;EACnB,0CAA0C;AAC5C;AACA;EACE,eAAe;EACf,mBAAmB;AACrB;AACA;EACE,YAAY,EAAE,mBAAmB;EACjC,aAAa;EACb;+CAC6C;EAC7C,wHAAwH;EACxH,4EAA4E;EAC5E,qBAAqB;AACvB;AACA;EACE,oCAAoC;EACpC,qCAAqC;EACrC,UAAU;AACZ;AACA;EACE,sBAAsB;AACxB;AACA;EACE,aAAa;EACb,cAAc;EACd,sBAAsB;EACtB,kBAAkB;EAClB,aAAa;EACb,oEAAoE;AACtE;AACA;EACE,kBAAkB;EAClB,qBAAqB;EACrB,SAAS;EACT,UAAU;EACV,WAAW;EACX,gBAAgB;EAChB,WAAW;EACX,UAAU;AACZ;AACA;EACE,aAAa;EACb,mBAAmB;EACnB,uBAAuB;EACvB,kBAAkB;EAClB,wEAAwE;EACxE,WAAW;EACX,gDAAgD;EAChD,iDAAiD;EACjD,sBAAsB;EACtB,SAAS;EACT,gBAAgB;EAChB,SAAS;EACT,kBAAkB;EAClB,kCAAkC;EAClC,8CAA8C;EAC9C,4BAA4B;AAC9B;AACA;EACE,eAAe;AACjB;AACA;EACE,wDAAwD;AAC1D;AACA;EACE,cAAc;EACd,cAAc;EACd,6CAA6C;EAC7C,yDAAyD,EAAE,+BAA+B;EAC1F,yDAAyD,EAAE,+BAA+B;EAC1F,kDAAkD;EAClD,sBAAsB;EACtB,SAAS;AACX;AACA;EACE,eAAe;AACjB;AACA;EACE,sDAAsD;AACxD;AACA;EACE,oCAAoC;AACtC;AACA;EACE,8CAA8C;EAC9C,wCAAwC;AAC1C;AACA;EACE,yBAAyB;EACzB,UAAU;EACV,0CAA0C;EAC1C,sCAAsC;AACxC;AACA;EACE,qEAAqE;AACvE;AACA;EACE,kEAAkE;AACpE",sourcesContent:["/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/**\n * SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/*\n* Ensure proper alignment of the vue material icons\n*/\n.material-design-icon[data-v-018dbbe8] {\n display: flex;\n align-self: center;\n justify-self: center;\n align-items: center;\n justify-content: center;\n}\n\n/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/**\n * color-text-lighter\t\tnormal state\n * color-text-lighter\t\tactive state\n * color-text-maxcontrast \tdisabled state\n */\n/* Default global values */\nbutton[data-v-018dbbe8]:not(.button-vue),\ninput[data-v-018dbbe8]:not([type=range]),\ntextarea[data-v-018dbbe8] {\n margin: 0;\n padding: 7px 6px;\n cursor: text;\n color: var(--color-text-lighter);\n border: 1px solid var(--color-border-dark);\n border-radius: var(--border-radius);\n outline: none;\n background-color: var(--color-main-background);\n font-size: 13px;\n}\nbutton[data-v-018dbbe8]:not(.button-vue):not(:disabled):not(.primary):hover, button[data-v-018dbbe8]:not(.button-vue):not(:disabled):not(.primary):focus, button:not(.button-vue):not(:disabled):not(.primary).active[data-v-018dbbe8],\ninput[data-v-018dbbe8]:not([type=range]):not(:disabled):not(.primary):hover,\ninput[data-v-018dbbe8]:not([type=range]):not(:disabled):not(.primary):focus,\ninput:not([type=range]):not(:disabled):not(.primary).active[data-v-018dbbe8],\ntextarea[data-v-018dbbe8]:not(:disabled):not(.primary):hover,\ntextarea[data-v-018dbbe8]:not(:disabled):not(.primary):focus,\ntextarea:not(:disabled):not(.primary).active[data-v-018dbbe8] {\n /* active class used for multiselect */\n border-color: var(--color-primary-element);\n outline: none;\n}\nbutton[data-v-018dbbe8]:not(.button-vue):not(:disabled):not(.primary):active,\ninput[data-v-018dbbe8]:not([type=range]):not(:disabled):not(.primary):active,\ntextarea[data-v-018dbbe8]:not(:disabled):not(.primary):active {\n color: var(--color-text-light);\n outline: none;\n background-color: var(--color-main-background);\n}\nbutton[data-v-018dbbe8]:not(.button-vue):disabled,\ninput[data-v-018dbbe8]:not([type=range]):disabled,\ntextarea[data-v-018dbbe8]:disabled {\n cursor: default;\n opacity: 0.5;\n color: var(--color-text-maxcontrast);\n background-color: var(--color-background-dark);\n}\nbutton[data-v-018dbbe8]:not(.button-vue):required,\ninput[data-v-018dbbe8]:not([type=range]):required,\ntextarea[data-v-018dbbe8]:required {\n box-shadow: none;\n}\nbutton[data-v-018dbbe8]:not(.button-vue):invalid,\ninput[data-v-018dbbe8]:not([type=range]):invalid,\ntextarea[data-v-018dbbe8]:invalid {\n border-color: var(--color-border-error, var(--color-error));\n box-shadow: none !important;\n}\nbutton[data-v-018dbbe8]:not(.button-vue),\ninput[data-v-018dbbe8]:not([type=range]),\ntextarea[data-v-018dbbe8] {\n /* Primary action button, use sparingly */\n}\nbutton:not(.button-vue).primary[data-v-018dbbe8],\ninput:not([type=range]).primary[data-v-018dbbe8],\ntextarea.primary[data-v-018dbbe8] {\n cursor: pointer;\n color: var(--color-primary-element-text);\n border-color: var(--color-primary-element);\n background-color: var(--color-primary-element);\n}\nbutton:not(.button-vue).primary[data-v-018dbbe8]:not(:disabled):hover, button:not(.button-vue).primary[data-v-018dbbe8]:not(:disabled):focus, button:not(.button-vue).primary[data-v-018dbbe8]:not(:disabled):active,\ninput:not([type=range]).primary[data-v-018dbbe8]:not(:disabled):hover,\ninput:not([type=range]).primary[data-v-018dbbe8]:not(:disabled):focus,\ninput:not([type=range]).primary[data-v-018dbbe8]:not(:disabled):active,\ntextarea.primary[data-v-018dbbe8]:not(:disabled):hover,\ntextarea.primary[data-v-018dbbe8]:not(:disabled):focus,\ntextarea.primary[data-v-018dbbe8]:not(:disabled):active {\n border-color: var(--color-primary-element-light);\n background-color: var(--color-primary-element-light);\n}\nbutton:not(.button-vue).primary[data-v-018dbbe8]:not(:disabled):active,\ninput:not([type=range]).primary[data-v-018dbbe8]:not(:disabled):active,\ntextarea.primary[data-v-018dbbe8]:not(:disabled):active {\n color: var(--color-primary-element-text-dark);\n}\nbutton:not(.button-vue).primary[data-v-018dbbe8]:disabled,\ninput:not([type=range]).primary[data-v-018dbbe8]:disabled,\ntextarea.primary[data-v-018dbbe8]:disabled {\n cursor: default;\n color: var(--color-primary-element-text-dark);\n background-color: var(--color-primary-element);\n}\n\n/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nli.action[data-v-018dbbe8]:hover, li.action.active[data-v-018dbbe8] {\n border-radius: 6px;\n padding: 0;\n}\nli.action[data-v-018dbbe8]:hover {\n background-color: var(--color-background-hover);\n}\n.action--disabled[data-v-018dbbe8] {\n pointer-events: none;\n opacity: 0.5;\n}\n.action--disabled[data-v-018dbbe8]:hover, .action--disabled[data-v-018dbbe8]:focus {\n cursor: default;\n opacity: 0.5;\n}\n.action--disabled *[data-v-018dbbe8] {\n opacity: 1 !important;\n}\n.action-text-editable[data-v-018dbbe8] {\n display: flex;\n align-items: flex-start;\n width: 100%;\n height: auto;\n margin: 0;\n padding: 0;\n cursor: pointer;\n white-space: nowrap;\n color: var(--color-main-text);\n border: 0;\n border-radius: 0;\n background-color: transparent;\n box-shadow: none;\n font-weight: normal;\n line-height: var(--default-clickable-area);\n}\n.action-text-editable > span[data-v-018dbbe8] {\n cursor: pointer;\n white-space: nowrap;\n}\n.action-text-editable__icon[data-v-018dbbe8] {\n min-width: 0; /* Overwrite icons*/\n min-height: 0;\n /* Keep padding to define the width to\n \tassure correct position of a possible text */\n padding: calc(var(--default-clickable-area) / 2) 0 calc(var(--default-clickable-area) / 2) var(--default-clickable-area);\n background-position: calc((var(--default-clickable-area) - 16px) / 2) center;\n background-size: 16px;\n}\n.action-text-editable[data-v-018dbbe8] .material-design-icon {\n width: var(--default-clickable-area);\n height: var(--default-clickable-area);\n opacity: 1;\n}\n.action-text-editable[data-v-018dbbe8] .material-design-icon .material-design-icon__svg {\n vertical-align: middle;\n}\n.action-text-editable__form[data-v-018dbbe8] {\n display: flex;\n flex: 1 1 auto;\n flex-direction: column;\n position: relative;\n margin: 4px 0;\n padding-inline-end: calc((var(--default-clickable-area) - 16px) / 2);\n}\n.action-text-editable__submit[data-v-018dbbe8] {\n position: absolute;\n inset-inline-start: 0;\n top: auto;\n width: 1px;\n height: 1px;\n overflow: hidden;\n z-index: -1;\n opacity: 0;\n}\n.action-text-editable__label[data-v-018dbbe8] {\n display: flex;\n align-items: center;\n justify-content: center;\n position: absolute;\n inset-inline-end: calc((var(--default-clickable-area) - 16px) / 2 + 1px);\n bottom: 1px;\n width: calc(var(--default-clickable-area) - 8px);\n height: calc(var(--default-clickable-area) - 8px);\n box-sizing: border-box;\n margin: 0;\n padding: 7px 6px;\n border: 0;\n border-radius: 50%;\n /* Avoid background under border */\n background-color: var(--color-main-background);\n background-clip: padding-box;\n}\n.action-text-editable__label[data-v-018dbbe8], .action-text-editable__label *[data-v-018dbbe8] {\n cursor: pointer;\n}\n.action-text-editable[data-v-018dbbe8] {\n /* Inputs inside popover supports text, submit & reset */\n}\n.action-text-editable__textarea[data-v-018dbbe8] {\n flex: 1 1 auto;\n color: inherit;\n border-color: var(--color-border-maxcontrast);\n min-height: calc(var(--default-clickable-area) * 2 - 8px); /* twice the element margin-y */\n max-height: calc(var(--default-clickable-area) * 3 - 8px); /* twice the element margin-y */\n min-width: calc(var(--default-clickable-area) * 4);\n width: 100% !important;\n margin: 0;\n}\n.action-text-editable__textarea[data-v-018dbbe8]:disabled {\n cursor: default;\n}\n.action-text-editable__textarea[data-v-018dbbe8] {\n /* only show confirm borders if input is not focused */\n}\n.action-text-editable__textarea:not(:active):not(:hover):not(:focus):invalid + .action-text-editable__label[data-v-018dbbe8] {\n background-color: var(--color-error);\n}\n.action-text-editable__textarea:not(:active):not(:hover):not(:focus):not(:disabled) + .action-text-editable__label[data-v-018dbbe8]:active, .action-text-editable__textarea:not(:active):not(:hover):not(:focus):not(:disabled) + .action-text-editable__label[data-v-018dbbe8]:hover, .action-text-editable__textarea:not(:active):not(:hover):not(:focus):not(:disabled) + .action-text-editable__label[data-v-018dbbe8]:focus {\n background-color: var(--color-primary-element);\n color: var(--color-primary-element-text);\n}\n.action-text-editable__textarea:active:not(:disabled) + .action-text-editable__label[data-v-018dbbe8], .action-text-editable__textarea:hover:not(:disabled) + .action-text-editable__label[data-v-018dbbe8], .action-text-editable__textarea:focus:not(:disabled) + .action-text-editable__label[data-v-018dbbe8] {\n /* above previous input */\n z-index: 2;\n border-color: var(--color-primary-element);\n border-inline-start-color: transparent;\n}\nli:last-child > .action-text-editable[data-v-018dbbe8] {\n margin-bottom: calc((var(--default-clickable-area) - 16px) / 2 - 4px);\n}\nli:first-child > .action-text-editable[data-v-018dbbe8] {\n margin-top: calc((var(--default-clickable-area) - 16px) / 2 - 4px);\n}"],sourceRoot:""}]);const s=o},15340:()=>{},16343:(e,t,n)=>{"use strict";n.d(t,{a:()=>c,e:()=>l,g:()=>d,s:()=>u});var a=n(80474),r=n(43850),i=n(24715);const o=(0,a.c0)("nextcloud-vue").persist(!0).build();let s;function l(e,t=10){s||(s=new r.EmojiIndex(i));const n=d();let a;return e?(a=s.search(`:${e}`,t),a.lengths.emoji(e))||[],a.map(e=>e.getSkin(n))}function c(e){r.frequently.add(e)}function d(){const e=Number.parseInt(o.getItem("NcEmojiPicker::currentSkinTone")??"1");return Math.min(Math.max(e,1),6)}function u(e){e=Math.min(Math.max(e,1),6),o.setItem("NcEmojiPicker::currentSkinTone",e.toString())}},16768:(e,t,n)=>{"use strict";n.d(t,{N:()=>Qt}),n(87353);var a=n(43819),r=n(86435),i=n(76643),o=n(87798),s=n(19998),l=n(3288),c=n(8019),d=n(85471),u=n(40173),p=n(36746),A=n(21777),f=n(19051),v=n(63814),g=n(32505),h=n(34935),m=n(3168),b=n(44111),C=n(51431),_=n(88751),y=n(33239),x=n(47970),E=n(64546);const k={name:"NcReferenceList",components:{NcReferenceWidget:h.f},props:{text:{type:String,default:""},referenceData:{type:Array,default:null},limit:{type:Number,default:1},displayFallback:{type:Boolean,default:!1},interactive:{type:Boolean,default:!0},interactiveOptIn:{type:Boolean,default:!1}},data:()=>({references:null,loading:!0}),computed:{isVisible(){return this.loading||0!==this.displayedReferences.length},values(){return this.referenceData?this.referenceData:!this.displayFallback||this.loading||this.references?this.references?Object.values(this.references):[]:[this.fallbackReference]},firstReference(){return this.values[0]??null},displayedReferences(){return this.values.filter(Boolean).slice(0,this.limit)},fallbackReference(){return{accessible:!0,openGraphObject:{id:this.text,link:this.text,name:this.text},richObjectType:"open-graph"}}},watch:{text:"fetch"},mounted(){this.fetch()},methods:{fetch(){return this.loading=!0,this.referenceData?(this.references=null,void(this.loading=!1)):new RegExp(b.U).exec(this.text)?void this.resolve().then(e=>{this.references=e.data.ocs.data.references,this.loading=!1,this.$emit("loaded")}).catch(e=>{m.l.error("Failed to extract references",{error:e}),this.loading=!1,this.$emit("loaded")}):(this.references=null,void(this.loading=!1))},resolve(){const e=new RegExp(b.U).exec(this.text.trim()),t=null===(0,A.HW)();return 1===this.limit&&e?t?f.Ay.get((0,v.KT)("references/resolvePublic")+`?reference=${encodeURIComponent(e[0])}&sharingToken=${(0,g.G)()}`):f.Ay.get((0,v.KT)("references/resolve")+`?reference=${encodeURIComponent(e[0])}`):t?f.Ay.post((0,v.KT)("references/extractPublic"),{text:this.text,resolve:!0,limit:this.limit,sharingToken:(0,g.G)()}):f.Ay.post((0,v.KT)("references/extract"),{text:this.text,resolve:!0,limit:this.limit})}}};var w=function(){var e=this,t=e._self._c;return e.isVisible?t("div",{staticClass:"widgets--list",class:{"icon-loading":e.loading}},e._l(e.displayedReferences,function(n){return t("NcReferenceWidget",{key:n.openGraphObject?.id,attrs:{reference:n,interactive:e.interactive,"interactive-opt-in":e.interactiveOptIn}})}),1):e._e()},B=[];const P=(0,C.n)(k,w,B,!1,null,"a50e616b").exports;function N(e,t){const n=String(e);if("string"!=typeof t)throw new TypeError("Expected character");let a=0,r=n.indexOf(t);for(;-1!==r;)a++,r=n.indexOf(t,r+t.length);return a}const S=z(/[A-Za-z]/),I=z(/[\dA-Za-z]/);function D(e){return null!==e&&e<-2}function L(e){return null!==e&&(e<0||32===e)}function T(e){return-2===e||-1===e||32===e}const F=z(new RegExp("\\p{P}|\\p{S}","u")),G=z(/\s/);function z(e){return function(t){return null!==t&&t>-1&&e.test(String.fromCharCode(t))}}const O=function(e){if(null==e)return R;if("function"==typeof e)return j(e);if("object"==typeof e)return Array.isArray(e)?function(e){const t=[];let n=-1;for(;++n":"")+")"})}return s;function s(){let o,s,l,c=M;if(i(t,a,r[r.length-1]||void 0)&&(c=function(e){return Array.isArray(e)?e:"number"==typeof e?[true,e]:null==e?M:[e]}(n(t,r)),c[0]===X))return c;if("children"in t&&t.children){const n=t;if(n.children&&"skip"!==c[0])for(s=0,l=r.concat(n);s>-1&&s0?{type:"text",value:i}:void 0),!1===i?a.lastIndex=n+1:(s!==n&&d.push({type:"text",value:e.value.slice(s,n)}),Array.isArray(i)?d.push(...i):i&&d.push(i),s=n+u[0].length,c=!0),!a.global)break;u=a.exec(e.value)}return c?(s?\]}]+$/.exec(e);if(!t)return[e,void 0];e=e.slice(0,t.index);let n=t[0],a=n.indexOf(")");const r=N(e,"(");let i=N(e,")");for(;-1!==a&&r>i;)e+=n.slice(0,a+1),n=n.slice(a+1),a=n.indexOf(")"),i++;return[e,n]}(n+a);if(!o[0])return!1;const s={type:"link",title:null,url:i+t+o[0],children:[{type:"text",value:t+o[0]}]};return o[1]?[s,{type:"text",value:o[1]}]:s}function ne(e,t,n,a){return!(!ae(a,!0)||/[-\d_]$/.test(n))&&{type:"link",title:null,url:"mailto:"+t+"@"+n,children:[{type:"text",value:t+"@"+n}]}}function ae(e,t){const n=e.input.charCodeAt(e.index-1);return(0===e.index||G(n)||F(n))&&(!t||47!==n)}function re(e){return e.replace(/[\t\n\r ]+/g," ").replace(/^ | $/g,"").toLowerCase().toUpperCase()}function ie(e){this.enter({type:"footnoteDefinition",identifier:"",label:"",children:[]},e)}function oe(){this.buffer()}function se(e){const t=this.resume(),n=this.stack[this.stack.length-1];n.type,n.label=t,n.identifier=re(this.sliceSerialize(e)).toLowerCase()}function le(e){this.exit(e)}function ce(e){this.enter({type:"footnoteReference",identifier:"",label:""},e)}function de(){this.buffer()}function ue(e){const t=this.resume(),n=this.stack[this.stack.length-1];n.type,n.label=t,n.identifier=re(this.sliceSerialize(e)).toLowerCase()}function pe(e){this.exit(e)}function Ae(e,t,n,a){const r=n.createTracker(a);let i=r.move("[^");const o=n.enter("footnoteReference"),s=n.enter("reference");return i+=r.move(n.safe(n.associationId(e),{...r.current(),before:i,after:"]"})),s(),o(),i+=r.move("]"),i}function fe(e,t,n,a){const r=n.createTracker(a);let i=r.move("[^");const o=n.enter("footnoteDefinition"),s=n.enter("label");return i+=r.move(n.safe(n.associationId(e),{...r.current(),before:i,after:"]"})),s(),i+=r.move("]:"+(e.children&&e.children.length>0?" ":"")),r.shift(4),i+=r.move(n.indentLines(n.containerFlow(e,r.current()),ve)),o(),i}function ve(e,t,n){return 0===t?e:(n?"":" ")+e}Ae.peek=function(){return"["};const ge=["autolink","destinationLiteral","destinationRaw","reference","titleQuote","titleApostrophe"];function he(e){this.enter({type:"delete",children:[]},e)}function me(e){this.exit(e)}function be(e,t,n,a){const r=n.createTracker(a),i=n.enter("strikethrough");let o=r.move("~~");return o+=n.containerPhrasing(e,{...r.current(),before:o,after:"~"}),o+=r.move("~~"),i(),o}function Ce(e){return null==e?"":String(e)}function _e(e){return e.length}function ye(e){const t="string"==typeof e?e.codePointAt(0):0;return 67===t||99===t?99:76===t||108===t?108:82===t||114===t?114:0}function xe(e,t,n){return">"+(n?"":" ")+e}function Ee(e,t){return ke(e,t.inConstruct,!0)&&!ke(e,t.notInConstruct,!1)}function ke(e,t,n){if("string"==typeof t&&(t=[t]),!t||0===t.length)return n;let a=-1;for(;++a",...l.current()})),c+=l.move(">")):(s=n.enter("destinationRaw"),c+=l.move(n.safe(e.url,{before:c,after:e.title?" ":")",...l.current()}))),s(),e.title&&(s=n.enter(`title${i}`),c+=l.move(" "+r),c+=l.move(n.safe(e.title,{before:c,after:r,...l.current()})),c+=l.move(r),s()),c+=l.move(")"),o(),c}function Ge(e,t,n,a){const r=e.referenceType,i=n.enter("imageReference");let o=n.enter("label");const s=n.createTracker(a);let l=s.move("![");const c=n.safe(e.alt,{before:l,after:"]",...s.current()});l+=s.move(c+"]["),o();const d=n.stack;n.stack=[],o=n.enter("reference");const u=n.safe(n.associationId(e),{before:l,after:"]",...s.current()});return o(),n.stack=d,i(),"full"!==r&&c&&c===u?"shortcut"===r?l=l.slice(0,-1):l+=s.move("]"):l+=s.move(u+"]"),l}function ze(e,t,n){let a=e.value||"",r="`",i=-1;for(;new RegExp("(^|[^`])"+r+"([^`]|$)").test(a);)r+="`";for(/[^ \r\n]/.test(a)&&(/^[ \r\n]/.test(a)&&/[ \r\n]$/.test(a)||/^`|`$/.test(a))&&(a=" "+a+" ");++i\u007F]/.test(e.url))}function je(e,t,n,a){const r=Pe(n),i='"'===r?"Quote":"Apostrophe",o=n.createTracker(a);let s,l;if(Oe(e,n)){const t=n.stack;n.stack=[],s=n.enter("autolink");let a=o.move("<");return a+=o.move(n.containerPhrasing(e,{before:a,after:">",...o.current()})),a+=o.move(">"),s(),n.stack=t,a}s=n.enter("link"),l=n.enter("label");let c=o.move("[");return c+=o.move(n.containerPhrasing(e,{before:c,after:"](",...o.current()})),c+=o.move("]("),l(),!e.url&&e.title||/[\0- \u007F]/.test(e.url)?(l=n.enter("destinationLiteral"),c+=o.move("<"),c+=o.move(n.safe(e.url,{before:c,after:">",...o.current()})),c+=o.move(">")):(l=n.enter("destinationRaw"),c+=o.move(n.safe(e.url,{before:c,after:e.title?" ":")",...o.current()}))),l(),e.title&&(l=n.enter(`title${i}`),c+=o.move(" "+r),c+=o.move(n.safe(e.title,{before:c,after:r,...o.current()})),c+=o.move(r),l()),c+=o.move(")"),s(),c}function Re(e,t,n,a){const r=e.referenceType,i=n.enter("linkReference");let o=n.enter("label");const s=n.createTracker(a);let l=s.move("[");const c=n.containerPhrasing(e,{before:l,after:"]",...s.current()});l+=s.move(c+"]["),o();const d=n.stack;n.stack=[],o=n.enter("reference");const u=n.safe(n.associationId(e),{before:l,after:"]",...s.current()});return o(),n.stack=d,i(),"full"!==r&&c&&c===u?"shortcut"===r?l=l.slice(0,-1):l+=s.move("]"):l+=s.move(u+"]"),l}function Me(e){const t=e.options.bullet||"*";if("*"!==t&&"+"!==t&&"-"!==t)throw new Error("Cannot serialize items with `"+t+"` for `options.bullet`, expected `*`, `+`, or `-`");return t}function Xe(e){const t=e.options.rule||"*";if("*"!==t&&"-"!==t&&"_"!==t)throw new Error("Cannot serialize rules with `"+t+"` for `options.rule`, expected `*`, `-`, or `_`");return t}Te.peek=function(){return"<"},Fe.peek=function(){return"!"},Ge.peek=function(){return"!"},ze.peek=function(){return"`"},je.peek=function(e,t,n){return Oe(e,n)?"<":"["},Re.peek=function(){return"["};const qe=O(["break","delete","emphasis","footnote","footnoteReference","image","imageReference","inlineCode","inlineMath","link","linkReference","mdxJsxTextElement","mdxTextExpression","strong","text","textDirective"]);function Ue(e,t,n,a){const r=function(e){const t=e.options.strong||"*";if("*"!==t&&"_"!==t)throw new Error("Cannot serialize strong with `"+t+"` for `options.strong`, expected `*`, or `_`");return t}(n),i=n.enter("strong"),o=n.createTracker(a);let s=o.move(r+r);return s+=o.move(n.containerPhrasing(e,{before:s,after:r,...o.current()})),s+=o.move(r+r),i(),s}Ue.peek=function(e,t,n){return n.options.strong||"*"};const $e={blockquote:function(e,t,n,a){const r=n.enter("blockquote"),i=n.createTracker(a);i.move("> "),i.shift(2);const o=n.indentLines(n.containerFlow(e,i.current()),xe);return r(),o},break:we,code:function(e,t,n,a){const r=function(e){const t=e.options.fence||"`";if("`"!==t&&"~"!==t)throw new Error("Cannot serialize code with `"+t+"` for `options.fence`, expected `` ` `` or `~`");return t}(n),i=e.value||"",o="`"===r?"GraveAccent":"Tilde";if(function(e,t){return Boolean(!1===t.options.fences&&e.value&&!e.lang&&/[^ \r\n]/.test(e.value)&&!/^[\t ]*(?:[\r\n]|$)|(?:^|[\r\n])[\t ]*$/.test(e.value))}(e,n)){const e=n.enter("codeIndented"),t=n.indentLines(i,Be);return e(),t}const s=n.createTracker(a),l=r.repeat(Math.max(function(e,t){const n=String(e);let a=n.indexOf(t),r=a,i=0,o=0;if("string"!=typeof t)throw new TypeError("Expected substring");for(;-1!==a;)a===r?++i>o&&(o=i):i=1,r=a+t.length,a=n.indexOf(t,r);return o}(i,r)+1,3)),c=n.enter("codeFenced");let d=s.move(l);if(e.lang){const t=n.enter(`codeFencedLang${o}`);d+=s.move(n.safe(e.lang,{before:d,after:" ",encode:["`"],...s.current()})),t()}if(e.lang&&e.meta){const t=n.enter(`codeFencedMeta${o}`);d+=s.move(" "),d+=s.move(n.safe(e.meta,{before:d,after:"\n",encode:["`"],...s.current()})),t()}return d+=s.move("\n"),i&&(d+=s.move(i+"\n")),d+=s.move(l),c(),d},definition:function(e,t,n,a){const r=Pe(n),i='"'===r?"Quote":"Apostrophe",o=n.enter("definition");let s=n.enter("label");const l=n.createTracker(a);let c=l.move("[");return c+=l.move(n.safe(n.associationId(e),{before:c,after:"]",...l.current()})),c+=l.move("]: "),s(),!e.url||/[\0- \u007F]/.test(e.url)?(s=n.enter("destinationLiteral"),c+=l.move("<"),c+=l.move(n.safe(e.url,{before:c,after:">",...l.current()})),c+=l.move(">")):(s=n.enter("destinationRaw"),c+=l.move(n.safe(e.url,{before:c,after:e.title?" ":"\n",...l.current()}))),s(),e.title&&(s=n.enter(`title${i}`),c+=l.move(" "+r),c+=l.move(n.safe(e.title,{before:c,after:r,...l.current()})),c+=l.move(r),s()),o(),c},emphasis:Ne,hardBreak:we,heading:function(e,t,n,a){const r=Math.max(Math.min(6,e.depth||1),1),i=n.createTracker(a);if(function(e,t){let n=!1;return(0,x.YR)(e,function(e){if("value"in e&&/\r?\n|\r/.test(e.value)||"break"===e.type)return n=!0,E.dc}),Boolean((!e.depth||e.depth<3)&&Ie(e)&&(t.options.setext||n))}(e,n)){const t=n.enter("headingSetext"),a=n.enter("phrasing"),o=n.containerPhrasing(e,{...i.current(),before:"\n",after:"\n"});return a(),t(),o+"\n"+(1===r?"=":"-").repeat(o.length-(Math.max(o.lastIndexOf("\r"),o.lastIndexOf("\n"))+1))}const o="#".repeat(r),s=n.enter("headingAtx"),l=n.enter("phrasing");i.move(o+" ");let c=n.containerPhrasing(e,{before:"# ",after:"\n",...i.current()});return/^[\t ]/.test(c)&&(c="&#x"+c.charCodeAt(0).toString(16).toUpperCase()+";"+c.slice(1)),c=c?o+" "+c:o,n.options.closeAtx&&(c+=" "+o),l(),s(),c},html:Te,image:Fe,imageReference:Ge,inlineCode:ze,link:je,linkReference:Re,list:function(e,t,n,a){const r=n.enter("list"),i=n.bulletCurrent;let o=e.ordered?function(e){const t=e.options.bulletOrdered||".";if("."!==t&&")"!==t)throw new Error("Cannot serialize items with `"+t+"` for `options.bulletOrdered`, expected `.` or `)`");return t}(n):Me(n);const s=e.ordered?"."===o?")":".":function(e){const t=Me(e),n=e.options.bulletOther;if(!n)return"*"===t?"-":"*";if("*"!==n&&"+"!==n&&"-"!==n)throw new Error("Cannot serialize items with `"+n+"` for `options.bulletOther`, expected `*`, `+`, or `-`");if(n===t)throw new Error("Expected `bullet` (`"+t+"`) and `bulletOther` (`"+n+"`) to be different");return n}(n);let l=!(!t||!n.bulletLastUsed)&&o===n.bulletLastUsed;if(!e.ordered){const t=e.children?e.children[0]:void 0;if("*"!==o&&"-"!==o||!t||t.children&&t.children[0]||"list"!==n.stack[n.stack.length-1]||"listItem"!==n.stack[n.stack.length-2]||"list"!==n.stack[n.stack.length-3]||"listItem"!==n.stack[n.stack.length-4]||0!==n.indexStack[n.indexStack.length-1]||0!==n.indexStack[n.indexStack.length-2]||0!==n.indexStack[n.indexStack.length-3]||(l=!0),Xe(n)===o&&t){let t=-1;for(;++t-1?t.start:1)+(!1===n.options.incrementListMarker?0:t.children.indexOf(e))+i);let o=i.length+1;("tab"===r||"mixed"===r&&(t&&"list"===t.type&&t.spread||e.spread))&&(o=4*Math.ceil(o/4));const s=n.createTracker(a);s.move(i+" ".repeat(o-i.length)),s.shift(o);const l=n.enter("listItem"),c=n.indentLines(n.containerFlow(e,s.current()),function(e,t,n){return t?(n?"":" ".repeat(o))+e:(n?i:i+" ".repeat(o-i.length))+e});return l(),c},paragraph:function(e,t,n,a){const r=n.enter("paragraph"),i=n.enter("phrasing"),o=n.containerPhrasing(e,a);return i(),r(),o},root:function(e,t,n,a){return(e.children.some(function(e){return qe(e)})?n.containerPhrasing:n.containerFlow).call(n,e,a)},strong:Ue,text:function(e,t,n,a){return n.safe(e.value,a)},thematicBreak:function(e,t,n){const a=(Xe(n)+(n.options.ruleSpaces?" ":"")).repeat(function(e){const t=e.options.ruleRepetition||3;if(t<3)throw new Error("Cannot serialize rules with repetition `"+t+"` for `options.ruleRepetition`, expected `3` or more");return t}(n));return n.options.ruleSpaces?a.slice(0,-1):a}};function He(e){const t=e._align;this.enter({type:"table",align:t.map(function(e){return"none"===e?null:e}),children:[]},e),this.data.inTable=!0}function We(e){this.exit(e),this.data.inTable=void 0}function Ve(e){this.enter({type:"tableRow",children:[]},e)}function Ye(e){this.exit(e)}function Qe(e){this.enter({type:"tableCell",children:[]},e)}function Ke(e){let t=this.resume();this.data.inTable&&(t=t.replace(/\\([\\|])/g,Ze));const n=this.stack[this.stack.length-1];n.type,n.value=t,this.exit(e)}function Ze(e,t){return"|"===t?t:e}function Je(e){const t=e||{},n=t.tableCellPadding,a=t.tablePipeAlign,r=t.stringLength,i=n?" ":"|";return{unsafe:[{character:"\r",inConstruct:"tableCell"},{character:"\n",inConstruct:"tableCell"},{atBreak:!0,character:"|",after:"[\t :-]"},{character:"|",inConstruct:"tableCell"},{atBreak:!0,character:":",after:"-"},{atBreak:!0,character:"-",after:"[:|-]"}],handlers:{inlineCode:function(e,t,n){let a=$e.inlineCode(e,t,n);return n.stack.includes("tableCell")&&(a=a.replace(/\|/g,"\\$&")),a},table:function(e,t,n,a){return s(function(e,t,n){const a=e.children;let r=-1;const i=[],o=t.enter("table");for(;++rl&&(l=e[c].length);++ds[d])&&(s[d]=e)}n.push(i)}i[c]=n,o[c]=r}let d=-1;if("object"==typeof n&&"length"in n)for(;++ds[d]&&(s[d]=i),p[d]=i),u[d]=o}i.splice(1,0,u),o.splice(1,0,p),c=-1;const A=[];for(;++cr?0:r+t:t>r?r:t,n=n>0?n:0,a.length<1e4)i=Array.from(a),i.unshift(t,n),e.splice(...i);else for(n&&e.splice(t,n);o0&&!n&&(e[e.length-1][1]._gfmAutolinkLiteralWalkedInto=!0),n}function yt(e){return null===e||L(e)||G(e)?1:F(e)?2:void 0}function xt(e,t,n){const a=[];let r=-1;for(;++r999||93===s&&!i||null===s||91===s||L(s))return n(s);if(93===s){e.exit("chunkString");const i=e.exit("gfmFootnoteCallString");return r.includes(re(a.sliceSerialize(i)))?(e.enter("gfmFootnoteCallLabelMarker"),e.consume(s),e.exit("gfmFootnoteCallLabelMarker"),e.exit("gfmFootnoteCall"),t):n(s)}return L(s)||(i=!0),o++,e.consume(s),92===s?c:l}function c(t){return 91===t||92===t||93===t?(e.consume(t),o++,l):l(t)}}function St(e,t,n){const a=this,r=a.parser.gfmFootnotes||(a.parser.gfmFootnotes=[]);let i,o,s=0;return function(t){return e.enter("gfmFootnoteDefinition")._container=!0,e.enter("gfmFootnoteDefinitionLabel"),e.enter("gfmFootnoteDefinitionLabelMarker"),e.consume(t),e.exit("gfmFootnoteDefinitionLabelMarker"),l};function l(t){return 94===t?(e.enter("gfmFootnoteDefinitionMarker"),e.consume(t),e.exit("gfmFootnoteDefinitionMarker"),e.enter("gfmFootnoteDefinitionLabelString"),e.enter("chunkString").contentType="string",c):n(t)}function c(t){if(s>999||93===t&&!o||null===t||91===t||L(t))return n(t);if(93===t){e.exit("chunkString");const n=e.exit("gfmFootnoteDefinitionLabelString");return i=re(a.sliceSerialize(n)),e.enter("gfmFootnoteDefinitionLabelMarker"),e.consume(t),e.exit("gfmFootnoteDefinitionLabelMarker"),e.exit("gfmFootnoteDefinitionLabel"),u}return L(t)||(o=!0),s++,e.consume(t),92===t?d:c}function d(t){return 91===t||92===t||93===t?(e.consume(t),s++,c):c(t)}function u(t){return 58===t?(e.enter("definitionMarker"),e.consume(t),e.exit("definitionMarker"),r.includes(i)||r.push(i),Et(e,p,"gfmFootnoteDefinitionWhitespace")):n(t)}function p(e){return t(e)}}function It(e,t,n){return e.check(kt,t,e.attempt(wt,t,n))}function Dt(e){e.exit("gfmFootnoteDefinition")}function Lt(e){let t=(e||{}).singleTilde;const n={tokenize:function(e,n,a){const r=this.previous,i=this.events;let o=0;return function(t){return 126===r&&"characterEscape"!==i[i.length-1][1].type?a(t):(e.enter("strikethroughSequenceTemporary"),s(t))};function s(i){const l=yt(r);if(126===i)return o>1?a(i):(e.consume(i),o++,s);if(o<2&&!t)return a(i);const c=e.exit("strikethroughSequenceTemporary"),d=yt(i);return c._open=!d||2===d&&Boolean(l),c._close=!l||2===l&&Boolean(d),n(i)}},resolveAll:function(e,t){let n=-1;for(;++n0;)t-=1,n.push(e.slice(this.map[t][0]+this.map[t][1]),this.map[t][2]),e.length=this.map[t][0];n.push([...e]),e.length=0;let a=n.pop();for(;a;)e.push(...a),a=n.pop();this.map.length=0}}function Ft(e,t){let n=!1;const a=[];for(;t-1;){const e=a.events[t][1].type;if("lineEnding"!==e&&"linePrefix"!==e)break;t--}const r=t>-1?a.events[t][1].type:null,i="tableHead"===r||"tableRow"===r?C:s;return i===C&&a.parser.lazy[a.now().line]?n(e):i(e)};function s(t){return e.enter("tableHead"),e.enter("tableRow"),function(e){return 124===e||(r=!0,o+=1),l(e)}(t)}function l(t){return null===t?n(t):D(t)?o>1?(o=0,a.interrupt=!0,e.exit("tableRow"),e.enter("lineEnding"),e.consume(t),e.exit("lineEnding"),u):n(t):T(t)?Et(e,l,"whitespace")(t):(o+=1,r&&(r=!1,i+=1),124===t?(e.enter("tableCellDivider"),e.consume(t),e.exit("tableCellDivider"),r=!0,l):(e.enter("data"),c(t)))}function c(t){return null===t||124===t||L(t)?(e.exit("data"),l(t)):(e.consume(t),92===t?d:c)}function d(t){return 92===t||124===t?(e.consume(t),c):c(t)}function u(t){return a.interrupt=!1,a.parser.lazy[a.now().line]?n(t):(e.enter("tableDelimiterRow"),r=!1,T(t)?Et(e,p,"linePrefix",a.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(t):p(t))}function p(t){return 45===t||58===t?f(t):124===t?(r=!0,e.enter("tableCellDivider"),e.consume(t),e.exit("tableCellDivider"),A):b(t)}function A(t){return T(t)?Et(e,f,"whitespace")(t):f(t)}function f(t){return 58===t?(o+=1,r=!0,e.enter("tableDelimiterMarker"),e.consume(t),e.exit("tableDelimiterMarker"),v):45===t?(o+=1,v(t)):null===t||D(t)?m(t):b(t)}function v(t){return 45===t?(e.enter("tableDelimiterFiller"),g(t)):b(t)}function g(t){return 45===t?(e.consume(t),g):58===t?(r=!0,e.exit("tableDelimiterFiller"),e.enter("tableDelimiterMarker"),e.consume(t),e.exit("tableDelimiterMarker"),h):(e.exit("tableDelimiterFiller"),h(t))}function h(t){return T(t)?Et(e,m,"whitespace")(t):m(t)}function m(n){return 124===n?p(n):(null===n||D(n))&&r&&i===o?(e.exit("tableDelimiterRow"),e.exit("tableHead"),t(n)):b(n)}function b(e){return n(e)}function C(t){return e.enter("tableRow"),_(t)}function _(n){return 124===n?(e.enter("tableCellDivider"),e.consume(n),e.exit("tableCellDivider"),_):null===n||D(n)?(e.exit("tableRow"),t(n)):T(n)?Et(e,_,"whitespace")(n):(e.enter("data"),y(n))}function y(t){return null===t||124===t||L(t)?(e.exit("data"),_(t)):(e.consume(t),92===t?x:y)}function x(t){return 92===t||124===t?(e.consume(t),y):y(t)}}function zt(e,t){let n,a,r,i=-1,o=!0,s=0,l=[0,0,0,0],c=[0,0,0,0],d=!1,u=0;const p=new Tt;for(;++in[2]+1){const t=n[2]+1,a=n[3]-n[2]-1;e.add(t,a,[])}}e.add(n[3]+1,0,[["exit",o,t]])}return void 0!==r&&(i.end=Object.assign({},Rt(t.events,r)),e.add(r,0,[["exit",i,t]]),i=void 0),i}function jt(e,t,n,a,r){const i=[],o=Rt(t.events,n);r&&(r.end=Object.assign({},o),i.push(["exit",r,t])),a.end=Object.assign({},o),i.push(["exit",a,t]),e.add(n+1,0,i)}function Rt(e,t){const n=e[t],a="enter"===n[0]?"start":"end";return n[1][a]}const Mt={tokenize:function(e,t,n){const a=this;return function(t){return null===a.previous&&a._gfmTasklistFirstContentOfListItem?(e.enter("taskListCheck"),e.enter("taskListCheckMarker"),e.consume(t),e.exit("taskListCheckMarker"),r):n(t)};function r(t){return L(t)?(e.enter("taskListCheckValueUnchecked"),e.consume(t),e.exit("taskListCheckValueUnchecked"),i):88===t||120===t?(e.enter("taskListCheckValueChecked"),e.consume(t),e.exit("taskListCheckValueChecked"),i):n(t)}function i(t){return 93===t?(e.enter("taskListCheckMarker"),e.consume(t),e.exit("taskListCheckMarker"),e.exit("taskListCheck"),o):n(t)}function o(a){return D(a)?t(a):T(a)?e.check({tokenize:Xt},t,n)(a):n(a)}}};function Xt(e,t,n){return Et(e,function(e){return null===e?n(e):t(e)},"whitespace")}const qt={};function Ut(e){const t=e||qt,n=this.data(),a=n.micromarkExtensions||(n.micromarkExtensions=[]),r=n.fromMarkdownExtensions||(n.fromMarkdownExtensions=[]),i=n.toMarkdownExtensions||(n.toMarkdownExtensions=[]);a.push(function(e){return function(e){const t={};let n=-1;for(;++n"text"===e.type,function(e,t,n){const a=e.value.split(/(\{[a-z\-_.0-9]+\})/gi).map(e=>{const t=e.match(/^\{([a-z\-_.0-9]+)\}$/i);if(!t)return(0,y.u)("text",e);const[,n]=t;return(0,y.u)("element",{tagName:`#${n}`})});n.children.splice(t,1,...a)})}}function Ht(){return function(e){(0,x.YR)(e,e=>["text","code","inlineCode"].includes(e.type),(e,t,n)=>(n.children.splice(t,1,{...e,value:e.value.replace(/</gim,"<").replace(/>/gim,">")}),[E._Z,t+1]))}}const Wt=["http","https","mailto","tel"],Vt=(0,d.KR)(null),Yt={name:"NcRichText",components:{NcReferenceList:P},props:{text:{type:String,default:""},arguments:{type:Object,default:()=>({})},referenceLimit:{type:Number,default:0},referenceInteractive:{type:Boolean,default:!0},referenceInteractiveOptIn:{type:Boolean,default:!1},references:{type:Array,default:null},useMarkdown:{type:Boolean,default:!1},useExtendedMarkdown:{type:Boolean,default:!1},interactive:{type:Boolean,default:!1},autolink:{type:Boolean,default:!0}},emits:["interact-todo","interact:todo"],data:()=>({parentId:(0,_.G)(5)}),methods:{renderPlaintext(e){const t=this.text.split(/(\{[a-z\-_.0-9]+\})/gi).map(t=>{const n=t.match(/^\{([a-z\-_.0-9]+)\}$/i);if(!n)return function({h:e,context:t},n){return t.autolink&&(n=(0,b.p)(n)),Array.isArray(n)?n.map(t=>{if("string"==typeof t)return t;const{component:n,props:a}=t,r="NcLink"===n.name?void 0:"rich-text--component";return e(n,{props:a,class:r})}):n}({h:e,context:this},t);const a=n[1],r=this.arguments[a];if("object"==typeof r){const{component:t,props:n}=r;return e(t,{props:n,class:"rich-text--component"})}return r?e("span",{class:"rich-text--fallback"},r):t});return e("div",{class:"rich-text--wrapper"},[e("div",{},t.flat()),this.referenceLimit>0?e("div",{class:"rich-text--reference-widget"},[e(P,{props:{text:this.text,referenceData:this.references,interactive:this.referenceInteractive,interactiveOptIn:this.referenceInteractiveOptIn}})]):null])},renderMarkdown(e){const t=(0,c.l)().use(o.A).use(b.r,{autolink:this.autolink,useMarkdown:this.useMarkdown,useExtendedMarkdown:this.useExtendedMarkdown}).use(Ht).use(this.useExtendedMarkdown?Ut:void 0).use(i.A).use(l.A,{except:Wt}).use(s.A,{handlers:{component:(e,t)=>e(t,t.component,{value:t.value})}}).use(this.useExtendedMarkdown?Vt.value:void 0).use($t).use(a.A,{target:"_blank",rel:["noopener noreferrer"]}).use(r.A,{createElement:(t,a,r)=>{if(!t.startsWith("#")){if(["h1","h2","h3","h4","h5","h6"].includes(t)&&(t=`h${Math.min(+String(t)[1]+3,6)}`),this.useExtendedMarkdown){"code"===t&&!Vt.value&&a?.attrs?.class?.includes("language")&&async function(){const e=await n.e(5862).then(n.bind(n,75862));Vt.value=e.default}();let i=null;if("li"===t&&Array.isArray(r)&&"input"===r[0].tag&&"checkbox"===r[0].data.attrs.type){const[n,...o]=r,s=o.findIndex(e=>["ul","ol","li","blockquote","pre"].includes(e.tag));-1!==s&&(i=o[s],o.splice(s));const l=this.parentId+"-markdown-input-"+(0,_.G)(5),c=e(p.N,{attrs:{...n.data.attrs,id:l,disabled:!this.interactive},on:{"update:checked":()=>{this.$emit("interact-todo",l),this.$emit("interact:todo",l)}}},o);return e(t,a,[c,i])}}if("a"===t){const t=(0,b.g)(this.$router,a.attrs.href);if(t)return delete a.attrs.href,delete a.attrs.target,e(u.Wk,{...a,props:{to:t}},r)}return e(t,a,r)}const i=this.arguments[t.slice(1)];return i?i.component?e(i.component,{attrs:a,props:i.props,class:"rich-text--component"},r):e("span",a,[i]):e("span",{attrs:a,class:"rich-text--fallback"},[`{${t.slice(1)}}`])},prefix:!1}).processSync(this.text.replace(/<[^>]+>/g,e=>e.replace(/")).result;return e("div",{class:"rich-text--wrapper rich-text--wrapper-markdown"},[t,this.referenceLimit>0?e("div",{class:"rich-text--reference-widget"},[e(P,{props:{text:this.text,referenceData:this.references,interactive:this.referenceInteractive,interactiveOptIn:this.referenceInteractiveOptIn}})]):null])}},render(e){return this.useMarkdown||this.useExtendedMarkdown?this.renderMarkdown(e):this.renderPlaintext(e)}},Qt=(0,C.n)(Yt,null,null,!1,null,"ec7a0a24").exports},20265:(e,t,n)=>{"use strict";n.d(t,{A:()=>s});var a=n(71354),r=n.n(a),i=n(76314),o=n.n(i)()(r());o.push([e.id,"/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/**\n * SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/*\n* Ensure proper alignment of the vue material icons\n*/\n.material-design-icon[data-v-8fb21c8b] {\n display: flex;\n align-self: center;\n justify-self: center;\n align-items: center;\n justify-content: center;\n}\n#app-settings[data-v-8fb21c8b] {\n margin-top: auto;\n padding: 3px;\n}\n#app-settings__header[data-v-8fb21c8b] {\n box-sizing: border-box;\n margin: 0 3px 3px 3px;\n}\n#app-settings__header .settings-button[data-v-8fb21c8b] {\n padding-inline: 0 calc((var(--default-clickable-area) - 16px) / 2) !important;\n}\n#app-settings__header .settings-button[data-v-8fb21c8b] .button-vue__text {\n font-weight: normal !important;\n}\n#app-settings__content[data-v-8fb21c8b] {\n display: block;\n padding: 10px;\n /* prevent scrolled contents from stopping too early */\n margin-bottom: -3px;\n /* restrict height of settings and make scrollable */\n max-height: 300px;\n overflow-y: auto;\n box-sizing: border-box;\n}\n.slide-up-leave-active[data-v-8fb21c8b],\n.slide-up-enter-active[data-v-8fb21c8b] {\n transition-duration: var(--animation-slow);\n transition-property: max-height, padding;\n overflow-y: hidden !important;\n}\n.slide-up-enter[data-v-8fb21c8b],\n.slide-up-leave-to[data-v-8fb21c8b] {\n max-height: 0 !important;\n padding: 0 10px !important;\n}","",{version:3,sources:["webpack://./node_modules/@nextcloud/vue/dist/assets/NcAppNavigationSettings-2Wh1E3Hq.css"],names:[],mappings:"AAAA;;;EAGE;AACF;;;EAGE;AACF;;CAEC;AACD;EACE,aAAa;EACb,kBAAkB;EAClB,oBAAoB;EACpB,mBAAmB;EACnB,uBAAuB;AACzB;AACA;EACE,gBAAgB;EAChB,YAAY;AACd;AACA;EACE,sBAAsB;EACtB,qBAAqB;AACvB;AACA;EACE,6EAA6E;AAC/E;AACA;EACE,8BAA8B;AAChC;AACA;EACE,cAAc;EACd,aAAa;EACb,sDAAsD;EACtD,mBAAmB;EACnB,oDAAoD;EACpD,iBAAiB;EACjB,gBAAgB;EAChB,sBAAsB;AACxB;AACA;;EAEE,0CAA0C;EAC1C,wCAAwC;EACxC,6BAA6B;AAC/B;AACA;;EAEE,wBAAwB;EACxB,0BAA0B;AAC5B",sourcesContent:["/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/**\n * SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/*\n* Ensure proper alignment of the vue material icons\n*/\n.material-design-icon[data-v-8fb21c8b] {\n display: flex;\n align-self: center;\n justify-self: center;\n align-items: center;\n justify-content: center;\n}\n#app-settings[data-v-8fb21c8b] {\n margin-top: auto;\n padding: 3px;\n}\n#app-settings__header[data-v-8fb21c8b] {\n box-sizing: border-box;\n margin: 0 3px 3px 3px;\n}\n#app-settings__header .settings-button[data-v-8fb21c8b] {\n padding-inline: 0 calc((var(--default-clickable-area) - 16px) / 2) !important;\n}\n#app-settings__header .settings-button[data-v-8fb21c8b] .button-vue__text {\n font-weight: normal !important;\n}\n#app-settings__content[data-v-8fb21c8b] {\n display: block;\n padding: 10px;\n /* prevent scrolled contents from stopping too early */\n margin-bottom: -3px;\n /* restrict height of settings and make scrollable */\n max-height: 300px;\n overflow-y: auto;\n box-sizing: border-box;\n}\n.slide-up-leave-active[data-v-8fb21c8b],\n.slide-up-enter-active[data-v-8fb21c8b] {\n transition-duration: var(--animation-slow);\n transition-property: max-height, padding;\n overflow-y: hidden !important;\n}\n.slide-up-enter[data-v-8fb21c8b],\n.slide-up-leave-to[data-v-8fb21c8b] {\n max-height: 0 !important;\n padding: 0 10px !important;\n}"],sourceRoot:""}]);const s=o},23441:(e,t,n)=>{"use strict";n.d(t,{A:()=>s});var a=n(71354),r=n.n(a),i=n(76314),o=n.n(i)()(r());o.push([e.id,".ldap-wizard__users[data-v-47c76aa2]{display:flex;flex-direction:column;gap:16px}.ldap-wizard__users__line[data-v-47c76aa2]{display:flex;align-items:start}.ldap-wizard__users__user-filter-object-class[data-v-47c76aa2]{display:flex;gap:16px}.ldap-wizard__users__user-filter-object-class__select[data-v-47c76aa2]{min-width:50%;flex-grow:1}.ldap-wizard__users__user-filter-groups[data-v-47c76aa2]{display:flex;gap:16px}.ldap-wizard__users__user-filter[data-v-47c76aa2]{display:flex;flex-direction:column}.ldap-wizard__users__user-filter code[data-v-47c76aa2]{background-color:var(--color-background-dark);padding:4px;border-radius:4px}.ldap-wizard__users__user-count-check[data-v-47c76aa2]{display:flex;align-items:center;gap:16px}","",{version:3,sources:["webpack://./apps/user_ldap/src/components/SettingsTabs/UsersTab.vue"],names:[],mappings:"AACA,qCACC,YAAA,CACA,qBAAA,CACA,QAAA,CAEA,2CACC,YAAA,CACA,iBAAA,CAGD,+DACC,YAAA,CACA,QAAA,CAEA,uEACC,aAAA,CACA,WAAA,CAIF,yDACC,YAAA,CACA,QAAA,CAGD,kDACC,YAAA,CACA,qBAAA,CAEA,uDACC,6CAAA,CACA,WAAA,CACA,iBAAA,CAIF,uDACC,YAAA,CACA,kBAAA,CACA,QAAA",sourcesContent:["\n.ldap-wizard__users {\n\tdisplay: flex;\n\tflex-direction: column;\n\tgap: 16px;\n\n\t&__line {\n\t\tdisplay: flex;\n\t\talign-items: start;\n\t}\n\n\t&__user-filter-object-class {\n\t\tdisplay: flex;\n\t\tgap: 16px;\n\n\t\t&__select {\n\t\t\tmin-width: 50%;\n\t\t\tflex-grow: 1;\n\t\t}\n\t}\n\n\t&__user-filter-groups {\n\t\tdisplay: flex;\n\t\tgap: 16px;\n\t}\n\n\t&__user-filter {\n\t\tdisplay: flex;\n\t\tflex-direction: column;\n\n\t\tcode {\n\t\t\tbackground-color: var(--color-background-dark);\n\t\t\tpadding: 4px;\n\t\t\tborder-radius: 4px;\n\t\t}\n\t}\n\n\t&__user-count-check {\n\t\tdisplay: flex;\n\t\talign-items: center;\n\t\tgap: 16px;\n\t}\n}\n"],sourceRoot:""}]);const s=o},25706:(e,t,n)=>{"use strict";n.d(t,{A:()=>s});var a=n(71354),r=n.n(a),i=n(76314),o=n.n(i)()(r());o.push([e.id,".ldap-wizard__server[data-v-d79b8f6a]{display:flex;flex-direction:column;gap:16px}.ldap-wizard__server button[data-v-d79b8f6a]{flex-shrink:0}.ldap-wizard__server__line[data-v-d79b8f6a]{display:flex;align-items:start;gap:16px}.ldap-wizard__server__host__port[data-v-d79b8f6a]{display:flex;align-items:center;flex-shrink:0;gap:16px}","",{version:3,sources:["webpack://./apps/user_ldap/src/components/SettingsTabs/ServerTab.vue"],names:[],mappings:"AACA,sCACC,YAAA,CACA,qBAAA,CACA,QAAA,CAEA,6CACC,aAAA,CAGD,4CACC,YAAA,CACA,iBAAA,CACA,QAAA,CAGD,kDACC,YAAA,CACA,kBAAA,CACA,aAAA,CACA,QAAA",sourcesContent:["\n.ldap-wizard__server {\n\tdisplay: flex;\n\tflex-direction: column;\n\tgap: 16px;\n\n\tbutton {\n\t\tflex-shrink: 0;\n\t}\n\n\t&__line {\n\t\tdisplay: flex;\n\t\talign-items: start;\n\t\tgap: 16px;\n\t}\n\n\t&__host__port {\n\t\tdisplay: flex;\n\t\talign-items: center;\n\t\tflex-shrink: 0;\n\t\tgap: 16px;\n\t}\n}\n"],sourceRoot:""}]);const s=o},26582:(e,t,n)=>{"use strict";n.d(t,{A:()=>s});var a=n(71354),r=n.n(a),i=n(76314),o=n.n(i)()(r());o.push([e.id,"/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/**\n * SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/*\n* Ensure proper alignment of the vue material icons\n*/\n.material-design-icon[data-v-9ee34172] {\n display: flex;\n align-self: center;\n justify-self: center;\n align-items: center;\n justify-content: center;\n}\n\n/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nli.action[data-v-9ee34172]:hover, li.action.active[data-v-9ee34172] {\n border-radius: 6px;\n padding: 0;\n}\nli.action[data-v-9ee34172]:hover {\n background-color: var(--color-background-hover);\n}\n.action--disabled[data-v-9ee34172] {\n pointer-events: none;\n opacity: 0.5;\n}\n.action--disabled[data-v-9ee34172]:hover, .action--disabled[data-v-9ee34172]:focus {\n cursor: default;\n opacity: 0.5;\n}\n.action--disabled *[data-v-9ee34172] {\n opacity: 1 !important;\n}\n.action-radio[data-v-9ee34172] {\n display: flex;\n align-items: flex-start;\n width: 100%;\n height: auto;\n margin: 0;\n padding: 0;\n cursor: pointer;\n white-space: nowrap;\n color: var(--color-main-text);\n border: 0;\n border-radius: 0;\n background-color: transparent;\n box-shadow: none;\n font-weight: normal;\n line-height: var(--default-clickable-area);\n /* checkbox/radio fixes */\n}\n.action-radio__radio[data-v-9ee34172] {\n position: absolute;\n inset-inline-start: 0 !important;\n z-index: -1;\n opacity: 0;\n}\n.action-radio__label[data-v-9ee34172] {\n display: flex;\n align-items: center;\n width: 100%;\n padding: 0 !important;\n padding-inline-end: calc((var(--default-clickable-area) - 16px) / 2) !important;\n}\n.action-radio__label[data-v-9ee34172]::before {\n margin: calc((var(--default-clickable-area) - 14px) / 2) !important;\n}\n.action-radio--disabled[data-v-9ee34172],\n.action-radio--disabled .action-radio__label[data-v-9ee34172] {\n cursor: pointer;\n}","",{version:3,sources:["webpack://./node_modules/@nextcloud/vue/dist/assets/NcActionRadio-CLIRNp3t.css"],names:[],mappings:"AAAA;;;EAGE;AACF;;;EAGE;AACF;;CAEC;AACD;EACE,aAAa;EACb,kBAAkB;EAClB,oBAAoB;EACpB,mBAAmB;EACnB,uBAAuB;AACzB;;AAEA;;;EAGE;AACF;EACE,kBAAkB;EAClB,UAAU;AACZ;AACA;EACE,+CAA+C;AACjD;AACA;EACE,oBAAoB;EACpB,YAAY;AACd;AACA;EACE,eAAe;EACf,YAAY;AACd;AACA;EACE,qBAAqB;AACvB;AACA;EACE,aAAa;EACb,uBAAuB;EACvB,WAAW;EACX,YAAY;EACZ,SAAS;EACT,UAAU;EACV,eAAe;EACf,mBAAmB;EACnB,6BAA6B;EAC7B,SAAS;EACT,gBAAgB;EAChB,6BAA6B;EAC7B,gBAAgB;EAChB,mBAAmB;EACnB,0CAA0C;EAC1C,yBAAyB;AAC3B;AACA;EACE,kBAAkB;EAClB,gCAAgC;EAChC,WAAW;EACX,UAAU;AACZ;AACA;EACE,aAAa;EACb,mBAAmB;EACnB,WAAW;EACX,qBAAqB;EACrB,+EAA+E;AACjF;AACA;EACE,mEAAmE;AACrE;AACA;;EAEE,eAAe;AACjB",sourcesContent:["/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/**\n * SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/*\n* Ensure proper alignment of the vue material icons\n*/\n.material-design-icon[data-v-9ee34172] {\n display: flex;\n align-self: center;\n justify-self: center;\n align-items: center;\n justify-content: center;\n}\n\n/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nli.action[data-v-9ee34172]:hover, li.action.active[data-v-9ee34172] {\n border-radius: 6px;\n padding: 0;\n}\nli.action[data-v-9ee34172]:hover {\n background-color: var(--color-background-hover);\n}\n.action--disabled[data-v-9ee34172] {\n pointer-events: none;\n opacity: 0.5;\n}\n.action--disabled[data-v-9ee34172]:hover, .action--disabled[data-v-9ee34172]:focus {\n cursor: default;\n opacity: 0.5;\n}\n.action--disabled *[data-v-9ee34172] {\n opacity: 1 !important;\n}\n.action-radio[data-v-9ee34172] {\n display: flex;\n align-items: flex-start;\n width: 100%;\n height: auto;\n margin: 0;\n padding: 0;\n cursor: pointer;\n white-space: nowrap;\n color: var(--color-main-text);\n border: 0;\n border-radius: 0;\n background-color: transparent;\n box-shadow: none;\n font-weight: normal;\n line-height: var(--default-clickable-area);\n /* checkbox/radio fixes */\n}\n.action-radio__radio[data-v-9ee34172] {\n position: absolute;\n inset-inline-start: 0 !important;\n z-index: -1;\n opacity: 0;\n}\n.action-radio__label[data-v-9ee34172] {\n display: flex;\n align-items: center;\n width: 100%;\n padding: 0 !important;\n padding-inline-end: calc((var(--default-clickable-area) - 16px) / 2) !important;\n}\n.action-radio__label[data-v-9ee34172]::before {\n margin: calc((var(--default-clickable-area) - 14px) / 2) !important;\n}\n.action-radio--disabled[data-v-9ee34172],\n.action-radio--disabled .action-radio__label[data-v-9ee34172] {\n cursor: pointer;\n}"],sourceRoot:""}]);const s=o},27514:e=>{"use strict";e.exports="data:image/svg+xml,%3c%21--%20-%20SPDX-FileCopyrightText:%202020%20Google%20Inc.%20-%20SPDX-License-Identifier:%20Apache-2.0%20--%3e%3csvg%20xmlns=%27http://www.w3.org/2000/svg%27%20width=%2724%27%20height=%2724%27%20fill=%27%23222%27%3e%3cpath%20d=%27M18.4%207.4L17%206l-6%206%206%206%201.4-1.4-4.6-4.6%204.6-4.6m-6%200L11%206l-6%206%206%206%201.4-1.4L7.8%2012l4.6-4.6z%27/%3e%3c/svg%3e"},27518:e=>{"use strict";e.exports="data:image/svg+xml,%3c%21--%20-%20SPDX-FileCopyrightText:%202020%20Google%20Inc.%20-%20SPDX-License-Identifier:%20Apache-2.0%20--%3e%3csvg%20xmlns=%27http://www.w3.org/2000/svg%27%20width=%2724%27%20height=%2724%27%20fill=%27%23222%27%3e%3cpath%20d=%27M15.4%2016.6L10.8%2012l4.6-4.6L14%206l-6%206%206%206%201.4-1.4z%27/%3e%3c/svg%3e"},28953:(e,t,n)=>{"use strict";n.d(t,{A:()=>s});var a=n(71354),r=n.n(a),i=n(76314),o=n.n(i)()(r());o.push([e.id,".ldap-wizard__expert[data-v-1b8d07c0]{display:flex;flex-direction:column;gap:16px}.ldap-wizard__expert__line[data-v-1b8d07c0]{display:flex;flex-direction:column;padding-inline-start:32px;gap:4px}","",{version:3,sources:["webpack://./apps/user_ldap/src/components/SettingsTabs/ExpertTab.vue"],names:[],mappings:"AACA,sCACC,YAAA,CACA,qBAAA,CACA,QAAA,CAEA,4CACC,YAAA,CACA,qBAAA,CACA,yBAAA,CACA,OAAA",sourcesContent:["\n.ldap-wizard__expert {\n\tdisplay: flex;\n\tflex-direction: column;\n\tgap: 16px;\n\n\t&__line {\n\t\tdisplay: flex;\n\t\tflex-direction: column;\n\t\tpadding-inline-start: 32px;\n\t\tgap: 4px;\n\t}\n}\n"],sourceRoot:""}]);const s=o},33954:(e,t,n)=>{"use strict";n.d(t,{A:()=>s});var a=n(71354),r=n.n(a),i=n(76314),o=n.n(i)()(r());o.push([e.id,"/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/**\n * SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/*\n* Ensure proper alignment of the vue material icons\n*/\n._material-design-icon_1ndue_12 {\n display: flex;\n align-self: center;\n justify-self: center;\n align-items: center;\n justify-content: center;\n}\n._assistantIcon_1ndue_20 {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n}\n._assistantIcon_1ndue_20:not(._assistantIcon_inline_1ndue_25) {\n display: flex;\n min-height: var(--default-clickable-area);\n min-width: var(--default-clickable-area);\n}\n._assistantIcon__svg_1ndue_30 {\n display: inline-block;\n width: var(--a843d9d2);\n height: var(--a843d9d2);\n max-width: var(--a843d9d2);\n max-height: var(--a843d9d2);\n}","",{version:3,sources:["webpack://./node_modules/@nextcloud/vue/dist/assets/NcAssistantIcon-BoOnqVRr.css"],names:[],mappings:"AAAA;;;EAGE;AACF;;;EAGE;AACF;;CAEC;AACD;EACE,aAAa;EACb,kBAAkB;EAClB,oBAAoB;EACpB,mBAAmB;EACnB,uBAAuB;AACzB;AACA;EACE,oBAAoB;EACpB,mBAAmB;EACnB,uBAAuB;AACzB;AACA;EACE,aAAa;EACb,yCAAyC;EACzC,wCAAwC;AAC1C;AACA;EACE,qBAAqB;EACrB,sBAAsB;EACtB,uBAAuB;EACvB,0BAA0B;EAC1B,2BAA2B;AAC7B",sourcesContent:["/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/**\n * SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/*\n* Ensure proper alignment of the vue material icons\n*/\n._material-design-icon_1ndue_12 {\n display: flex;\n align-self: center;\n justify-self: center;\n align-items: center;\n justify-content: center;\n}\n._assistantIcon_1ndue_20 {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n}\n._assistantIcon_1ndue_20:not(._assistantIcon_inline_1ndue_25) {\n display: flex;\n min-height: var(--default-clickable-area);\n min-width: var(--default-clickable-area);\n}\n._assistantIcon__svg_1ndue_30 {\n display: inline-block;\n width: var(--a843d9d2);\n height: var(--a843d9d2);\n max-width: var(--a843d9d2);\n max-height: var(--a843d9d2);\n}"],sourceRoot:""}]);const s=o},34810:(e,t,n)=>{"use strict";n.d(t,{A:()=>s});var a=n(71354),r=n.n(a),i=n(76314),o=n.n(i)()(r());o.push([e.id,".ldap-wizard__login[data-v-4b9d7382]{display:flex;flex-direction:column;gap:16px}.ldap-wizard__login button[data-v-4b9d7382]{flex-shrink:0}.ldap-wizard__login__line[data-v-4b9d7382]{display:flex;align-items:start;gap:8px}.ldap-wizard__login__login-attributes[data-v-4b9d7382]{display:flex;flex-direction:column}.ldap-wizard__login__user-login-filter[data-v-4b9d7382]{display:flex;flex-direction:column}.ldap-wizard__login__user-login-filter code[data-v-4b9d7382]{background-color:var(--color-background-dark);padding:4px;border-radius:4px}","",{version:3,sources:["webpack://./apps/user_ldap/src/components/SettingsTabs/LoginTab.vue"],names:[],mappings:"AACA,qCACC,YAAA,CACA,qBAAA,CACA,QAAA,CAEA,4CACC,aAAA,CAGD,2CACC,YAAA,CACA,iBAAA,CACA,OAAA,CAGD,uDACC,YAAA,CACA,qBAAA,CAGD,wDACC,YAAA,CACA,qBAAA,CAEA,6DACC,6CAAA,CACA,WAAA,CACA,iBAAA",sourcesContent:["\n.ldap-wizard__login {\n\tdisplay: flex;\n\tflex-direction: column;\n\tgap: 16px;\n\n\tbutton {\n\t\tflex-shrink: 0;\n\t}\n\n\t&__line {\n\t\tdisplay: flex;\n\t\talign-items: start;\n\t\tgap: 8px;\n\t}\n\n\t&__login-attributes {\n\t\tdisplay: flex;\n\t\tflex-direction: column;\n\t}\n\n\t&__user-login-filter {\n\t\tdisplay: flex;\n\t\tflex-direction: column;\n\n\t\tcode {\n\t\t\tbackground-color: var(--color-background-dark);\n\t\t\tpadding: 4px;\n\t\t\tborder-radius: 4px;\n\t\t}\n\t}\n}\n"],sourceRoot:""}]);const s=o},34935:(e,t,n)=>{"use strict";n.d(t,{f:()=>P,g:()=>ve,s:()=>R}),n(4483);var a=n(85471),r=n(61338),i=n(83427),o=n(89916),s=n(52781),l=n(51431),c=n(19051),d=n(60176),u=n(63814),p=n(47536),A=n(3168),f=n(42507),v=n(51550),g=n(18148),h=n(97786),m=n(40173),b=n(97221),C=n(44111),_=n(88289),y=n(65547),x=n(62388),E=n(42486);(0,p.r)(p.T);const k={name:"NcReferenceWidget",components:{NcButton:b.N},props:{reference:{type:Object,required:!0},interactive:{type:Boolean,default:!0},interactiveOptIn:{type:Boolean,default:!1}},setup(){const e=(0,a.KR)(!1),t=(0,a.KR)(),{width:n}=(0,h.Lhy)(t);return(0,h.BLq)(t,([t])=>{(0,a.dY)(()=>{e.value=t.isIntersecting})}),{width:n,isVisible:e,widgetRoot:t}},data:()=>({showInteractive:!1,rendered:!1,idleTimeout:null}),computed:{isInteractive(){return!this.interactiveOptIn&&this.interactive||this.showInteractive},hasFullWidth(){return(0,s.j)(this.reference.richObjectType)},hasCustomWidget(){return(0,s.i)(this.reference.richObjectType)},hasInteractiveView(){return(0,s.i)(this.reference.richObjectType)&&(0,s.h)(this.reference.richObjectType)},noAccess(){return this.reference&&!this.reference.accessible},descriptionStyle(){if(0===this.numberOfLines)return{display:"none"};const e=this.numberOfLines;return{lineClamp:e,webkitLineClamp:e}},numberOfLines(){return[450,550,650,1/0].findIndex(e=>this.width{this.isVisible||this.destroyWidget()},18e4)},immediate:!0}},beforeDestroy(){this.destroyWidget()},methods:{t:p.a,enableInteractive(){this.showInteractive=!0,this.renderWidget()},renderWidget(){if(!this.$refs.customWidget)return;if("open-graph"===this?.reference?.richObjectType)return;this.$refs.customWidget.innerHTML="";const e=document.createElement("div");e.style="width: 100%;",this.$refs.customWidget.appendChild(e),this.$nextTick(()=>{(0,s.a)(e,{...this.reference,interactive:this.isInteractive}),this.rendered=!0})},destroyWidget(){this.rendered&&((0,s.d)(this.reference.richObjectType,this.$el),this.rendered=!1)}}};var w=function(){var e=this,t=e._self._c;return t("div",{ref:"widgetRoot",class:{"toggle-interactive":e.hasInteractiveView&&!e.isInteractive}},[e.reference&&e.hasCustomWidget?t("div",{ref:"customWidget",staticClass:"widget-custom",class:{"full-width":e.hasFullWidth}}):!e.noAccess&&e.reference&&e.reference.openGraphObject&&!e.hasCustomWidget?t(e.referenceWidgetLinkComponent,e._b({tag:"component",staticClass:"widget-default",attrs:{rel:"noopener noreferrer"}},"component",e.referenceWidgetLinkProps,!1),[e.reference.openGraphObject.thumb?t("img",{staticClass:"widget-default--image",attrs:{src:e.reference.openGraphObject.thumb}}):e._e(),t("div",{staticClass:"widget-default--details"},[t("p",{staticClass:"widget-default--name"},[e._v(" "+e._s(e.reference.openGraphObject.name)+" ")]),t("p",{staticClass:"widget-default--description",style:e.descriptionStyle},[e._v(" "+e._s(e.reference.openGraphObject.description)+" ")]),t("p",{staticClass:"widget-default--link"},[e._v(" "+e._s(e.compactLink)+" ")])])]):e._e(),e.interactiveOptIn&&e.hasInteractiveView&&!e.isInteractive?t("NcButton",{staticClass:"toggle-interactive--button",on:{click:e.enableInteractive}},[e._v(" "+e._s(e.t("Enable interactive view"))+" ")]):e._e()],1)},B=[];const P=(0,l.n)(k,w,B,!1,null,"f05dd81b").exports,N={name:"NcCustomPickerElement",props:{provider:{type:Object,required:!0}},emits:["cancel","submit"],data(){return{isRegistered:(0,s.c)(this.provider.id),renderResult:null}},mounted(){this.isRegistered&&this.renderElement()},beforeDestroy(){this.isRegistered&&(0,s.b)(this.provider.id,this.$el,this.renderResult)},methods:{renderElement(){this.$refs.domElement&&(this.$refs.domElement.innerHTML="");const e=(0,s.f)(this.$refs.domElement,{providerId:this.provider.id,accessible:!1});Promise.resolve(e).then(e=>{this.renderResult=e,this.renderResult.object?._isVue&&this.renderResult.object?.$on&&(this.renderResult.object.$on("submit",this.onSubmit),this.renderResult.object.$on("cancel",this.onCancel)),this.renderResult.element.addEventListener("submit",e=>{this.onSubmit(e.detail)}),this.renderResult.element.addEventListener("cancel",this.onCancel)})},onSubmit(e){this.$emit("submit",e)},onCancel(){this.$emit("cancel")}}};var S=function(){return(0,this._self._c)("div",{ref:"domElement"})},I=[];const D=(0,l.n)(N,S,I,!1,null,"0547d92f").exports,L={name:"LinkVariantIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}};var T=function(){var e=this,t=e._self._c;return t("span",e._b({staticClass:"material-design-icon link-variant-icon",attrs:{"aria-hidden":e.title?null:"true","aria-label":e.title,role:"img"},on:{click:function(t){return e.$emit("click",t)}}},"span",e.$attrs,!1),[t("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 24 24"}},[t("path",{attrs:{d:"M10.59,13.41C11,13.8 11,14.44 10.59,14.83C10.2,15.22 9.56,15.22 9.17,14.83C7.22,12.88 7.22,9.71 9.17,7.76V7.76L12.71,4.22C14.66,2.27 17.83,2.27 19.78,4.22C21.73,6.17 21.73,9.34 19.78,11.29L18.29,12.78C18.3,11.96 18.17,11.14 17.89,10.36L18.36,9.88C19.54,8.71 19.54,6.81 18.36,5.64C17.19,4.46 15.29,4.46 14.12,5.64L10.59,9.17C9.41,10.34 9.41,12.24 10.59,13.41M13.41,9.17C13.8,8.78 14.44,8.78 14.83,9.17C16.78,11.12 16.78,14.29 14.83,16.24V16.24L11.29,19.78C9.34,21.73 6.17,21.73 4.22,19.78C2.27,17.83 2.27,14.66 4.22,12.71L5.71,11.22C5.7,12.04 5.83,12.86 6.11,13.65L5.64,14.12C4.46,15.29 4.46,17.19 5.64,18.36C6.81,19.54 8.71,19.54 9.88,18.36L13.41,14.83C14.59,13.66 14.59,11.76 13.41,10.59C13,10.2 13,9.56 13.41,9.17Z"}},[e.title?t("title",[e._v(e._s(e.title))]):e._e()])])])},F=[];const G=(0,l.n)(L,T,F,!1,null,null).exports;(0,p.r)(p.U);const z="any-link",O={id:z,title:(0,p.a)("Any link"),order:0,icon_url:(0,u.d0)("core","filetypes/link.svg")};function j(){return window._vue_richtext_reference_providers.filter(e=>{const t=!!e.search_providers_ids&&e.search_providers_ids.length>0||(0,s.c)(e.id);return t||A.l.debug(`[smart picker] ${e.id} reference provider is discoverable but does not have any related search provider or custom picker component registered`),t})}function R(e,t){const n=j(),a=e.replace(/[/\-\\^$*+?.()|[\]{}]/g,"\\$&"),r=new RegExp(a,"i"),i=function(e){const t=window._vue_richtext_reference_provider_timestamps;return e.sort((e,t)=>e.order===t.order?0:e.order>t.order?1:-1).sort((e,n)=>{const a=t[e.id],r=t[n.id];return a===r?0:void 0===r?-1:void 0===a?1:a>r?-1:1})}(n).filter(e=>e.title.match(r)),o=t?i.slice(0,t):i;return""!==e&&0!==o.length||o.push(O),o}window._vue_richtext_reference_providers??=(0,d.C)("core","reference-provider-list",[]),window._vue_richtext_reference_provider_timestamps??=(0,d.C)("core","reference-provider-timestamps",{}),(0,p.r)(p.W,p.V);let M=0;function X(e,t){return function(){const n=this,a=arguments;clearTimeout(M),M=setTimeout(function(){e.apply(n,a)},t)}}function q(e){try{return Boolean(new URL(e))}catch{return!1}}const U={name:"NcProviderList",components:{NcSelect:g.N,NcHighlight:v.N,NcEmptyContent:f.A,LinkVariantIcon:G},emits:["select-provider","submit"],data:()=>({selectedProvider:null,query:"",multiselectPlaceholder:(0,p.a)("Select provider"),providerIconAlt:(0,p.a)("Provider icon")}),computed:{options(){const e=[];return""!==this.query&&q(this.query)&&e.push({id:this.query,title:this.query,isLink:!0}),e.push(...R(this.query)),e}},methods:{focus(){setTimeout(()=>{this.$refs["provider-select"]?.$el?.querySelector("#provider-select-input")?.focus()},300)},onProviderSelected(e){null!==e&&(e.isLink?this.$emit("submit",e.title):this.$emit("select-provider",e),this.selectedProvider=null)},onSearch(e){this.query=e}}};var $=function(){var e=this,t=e._self._c;return t("div",{staticClass:"provider-list"},[t("NcSelect",{ref:"provider-select",staticClass:"provider-list--select",attrs:{"input-id":"provider-select-input",label:"title",placeholder:e.multiselectPlaceholder,options:e.options,"append-to-body":!1,"clear-search-on-select":!0,"clear-search-on-blur":()=>!1,filterable:!1},on:{search:e.onSearch,input:e.onProviderSelected},scopedSlots:e._u([{key:"option",fn:function(n){return[n.isLink?t("div",{staticClass:"provider"},[t("LinkVariantIcon",{staticClass:"link-icon",attrs:{size:20}}),t("span",[e._v(e._s(n.title))])],1):t("div",{staticClass:"provider"},[t("img",{staticClass:"provider-icon",attrs:{src:n.icon_url,alt:e.providerIconAlt}}),t("NcHighlight",{staticClass:"option-text",attrs:{search:e.query,text:n.title}})],1)]}}]),model:{value:e.selectedProvider,callback:function(t){e.selectedProvider=t},expression:"selectedProvider"}}),t("NcEmptyContent",{staticClass:"provider-list--empty-content",scopedSlots:e._u([{key:"icon",fn:function(){return[t("LinkVariantIcon")]},proxy:!0}])})],1)},H=[];const W=(0,l.n)(U,$,H,!1,null,"f39d58d9").exports;(0,p.r)(p.X);const V={name:"NcRawLinkInput",components:{LinkVariantIcon:G,NcEmptyContent:f.A,NcLoadingIcon:_.A,NcReferenceWidget:P,NcTextField:y.N},props:{provider:{type:Object,required:!0}},emits:["submit"],data:()=>({inputValue:"",loading:!1,reference:null,abortController:null,inputPlaceholder:(0,p.a)("Enter link")}),computed:{isLinkValid(){return q(this.inputValue)}},methods:{focus(){this.$refs["url-input"].$el.getElementsByTagName("input")[0]?.focus()},onSubmit(e){const t=e.target.value;this.isLinkValid&&this.$emit("submit",t)},onClear(){this.inputValue="",this.reference=null},onInput(){this.reference=null,this.abortController&&this.abortController.abort(),this.isLinkValid&&X(()=>{this.updateReference()},500)()},updateReference(){this.loading=!0,this.abortController=new AbortController,c.Ay.get((0,u.KT)("references/resolve",2)+"?reference="+encodeURIComponent(this.inputValue),{signal:this.abortController.signal}).then(e=>{this.reference=e.data.ocs.data.references[this.inputValue]}).catch(e=>{A.l.error("Could not update reference",{error:e})}).then(()=>{this.loading=!1})}}};var Y=function(){var e=this,t=e._self._c;return t("div",{staticClass:"raw-link"},[t("div",{staticClass:"input-wrapper"},[t("NcTextField",{ref:"url-input",attrs:{value:e.inputValue,"show-trailing-button":""!==e.inputValue,label:e.inputPlaceholder},on:{"update:value":[function(t){e.inputValue=t},e.onInput],"trailing-button-click":e.onClear},nativeOn:{keyup:function(t){return!t.type.indexOf("key")&&e._k(t.keyCode,"enter",13,t.key,"Enter")?null:e.onSubmit.apply(null,arguments)}}},[e.loading?t("NcLoadingIcon",{attrs:{size:16}}):t("LinkVariantIcon",{attrs:{size:16}})],1)],1),null!==e.reference?t("NcReferenceWidget",{staticClass:"reference-widget",attrs:{reference:e.reference}}):t("NcEmptyContent",{staticClass:"raw-link--empty-content",scopedSlots:e._u([{key:"icon",fn:function(){return[e.provider.icon_url?t("img",{staticClass:"provider-icon",attrs:{src:e.provider.icon_url}}):t("LinkVariantIcon")]},proxy:!0}])})],1)},Q=[];const K=(0,l.n)(V,Y,Q,!1,null,"be630586").exports,Z={name:"NcSearchResult",components:{NcHighlight:v.N},props:{entry:{type:Object,required:!0},query:{type:String,required:!0}}};var J=function(){var e=this,t=e._self._c;return t("div",{staticClass:"result"},[e.entry.icon?t("div",{staticClass:"result--icon-class",class:{[e.entry.icon]:!0,rounded:e.entry.rounded}}):t("img",{staticClass:"result--image",class:{rounded:e.entry.rounded},attrs:{src:e.entry.thumbnailUrl}}),t("div",{staticClass:"result--content"},[t("span",{staticClass:"result--content--name"},[t("NcHighlight",{attrs:{search:e.query,text:e.entry.title}})],1),t("span",{staticClass:"result--content--subline"},[t("NcHighlight",{attrs:{search:e.query,text:e.entry.subline}})],1)])])},ee=[];const te=(0,l.n)(Z,J,ee,!1,null,"995c2758").exports;(0,p.r)(p.Y,p.W,p.v);const ne={name:"NcSearch",components:{LinkVariantIcon:G,DotsHorizontalIcon:x.D,NcEmptyContent:f.A,NcSelect:g.N,NcSearchResult:te},props:{provider:{type:Object,required:!0},showEmptyContent:{type:Boolean,default:!0},searchPlaceholder:{type:String,default:null}},emits:["submit"],data:()=>({searchQuery:"",selectedResult:null,resultsBySearchProvider:{},searching:!1,searchingMoreOf:null,abortController:null,noOptionsText:(0,p.a)("Start typing to search"),providerIconAlt:(0,p.a)("Provider icon")}),computed:{mySearchPlaceholder(){return this.searchPlaceholder||(0,p.a)("Search")},searchProviderIds(){return this.provider.search_providers_ids},options(){if(""===this.searchQuery)return[];const e=[];return q(this.searchQuery)&&e.push(this.rawLinkEntry),e.push(...this.formattedSearchResults),e},rawLinkEntry(){return{id:"rawLinkEntry",resourceUrl:this.searchQuery,isRawLink:!0}},formattedSearchResults(){const e=[];return this.searchProviderIds.forEach(t=>{if(this.resultsBySearchProvider[t].entries.length>0){(this.searchProviderIds.length>1||this.resultsBySearchProvider[t].entries.length>1)&&e.push({id:"groupTitle-"+t,name:this.resultsBySearchProvider[t].name,isCustomGroupTitle:!0,providerId:t});const n=this.resultsBySearchProvider[t].entries.map((e,n)=>({id:"provider-"+t+"-entry-"+n,...e}));e.push(...n),this.resultsBySearchProvider[t].isPaginated&&e.push({id:"moreOf-"+t,name:this.resultsBySearchProvider[t].name,isMore:!0,providerId:t,isLoading:this.searchingMoreOf===t})}}),e}},mounted(){this.resetResults()},beforeDestroy(){this.cancelSearchRequests()},methods:{t:p.a,resetResults(){const e={};this.searchProviderIds.forEach(t=>{e[t]={entries:[]}}),this.resultsBySearchProvider=e},focus(){setTimeout(()=>{this.$refs["search-select"]?.$el?.querySelector("#search-select-input")?.focus()},300)},cancelSearchRequests(){this.abortController&&this.abortController.abort()},onSearchInput(e){this.searchQuery=e,X(()=>{this.updateSearch()},500)()},onSelectResultSelected(e){null!==e&&(e.resourceUrl?(this.cancelSearchRequests(),this.$emit("submit",e.resourceUrl)):e.isMore&&this.searchMoreOf(e.providerId).then(()=>{this.selectedResult=null}))},searchMoreOf(e){return this.searchingMoreOf=e,this.cancelSearchRequests(),this.searchProviders(e)},updateSearch(){if(this.cancelSearchRequests(),this.resetResults(),""!==this.searchQuery)return this.searchProviders();this.searching=!1},searchProviders(e=null){this.abortController=new AbortController,this.searching=!0;const t=null===e?[...this.searchProviderIds].map(e=>this.searchOneProvider(e)):[this.searchOneProvider(e,this.resultsBySearchProvider[e]?.cursor??null)];return Promise.allSettled(t).then(e=>{e.find(e=>"rejected"===e.status&&("CanceledError"===e.reason.name||"ERR_CANCELED"===e.reason.code))||(this.searching=!1,this.searchingMoreOf=null)})},searchOneProvider(e,t=null){const n=null===t?(0,u.KT)("search/providers/{providerId}/search?term={term}&limit={limit}",{providerId:e,term:this.searchQuery,limit:5}):(0,u.KT)("search/providers/{providerId}/search?term={term}&limit={limit}&cursor={cursor}",{providerId:e,term:this.searchQuery,limit:5,cursor:t});return c.Ay.get(n,{signal:this.abortController.signal}).then(t=>{const n=t.data.ocs.data;this.resultsBySearchProvider[e].name=n.name,this.resultsBySearchProvider[e].cursor=n.cursor,this.resultsBySearchProvider[e].isPaginated=n.isPaginated,this.resultsBySearchProvider[e].entries.push(...n.entries)})}}};var ae=function(){var e=this,t=e._self._c;return t("div",{staticClass:"smart-picker-search",class:{"with-empty-content":e.showEmptyContent}},[t("NcSelect",{ref:"search-select",staticClass:"smart-picker-search--select",attrs:{"input-id":"search-select-input",label:"name",placeholder:e.mySearchPlaceholder,options:e.options,"append-to-body":!1,"close-on-select":!1,"clear-search-on-select":!1,"clear-search-on-blur":()=>!1,"reset-focus-on-options-change":!1,filterable:!1,autoscroll:!0,"reset-on-options-change":!1,loading:e.searching},on:{search:e.onSearchInput,input:e.onSelectResultSelected},scopedSlots:e._u([{key:"option",fn:function(n){return[n.isRawLink?t("div",{staticClass:"custom-option"},[t("LinkVariantIcon",{staticClass:"option-simple-icon",attrs:{size:20}}),t("span",{staticClass:"option-text"},[e._v(" "+e._s(e.t("Raw link {options}",{options:n.resourceUrl}))+" ")])],1):n.resourceUrl?t("NcSearchResult",{staticClass:"search-result",attrs:{entry:n,query:e.searchQuery}}):n.isCustomGroupTitle?t("span",{staticClass:"custom-option group-name"},[e.provider.icon_url?t("img",{staticClass:"provider-icon group-name-icon",attrs:{src:e.provider.icon_url}}):e._e(),t("span",{staticClass:"option-text"},[t("strong",[e._v(e._s(n.name))])])]):n.isMore?t("span",{staticClass:"custom-option"},[n.isLoading?t("span",{staticClass:"option-simple-icon icon-loading-small"}):t("DotsHorizontalIcon",{staticClass:"option-simple-icon",attrs:{size:20}}),t("span",{staticClass:"option-text"},[e._v(" "+e._s(e.t('Load more "{options}"',{options:n.name}))+" ")])],1):e._e()]}},{key:"no-options",fn:function(){return[e._v(" "+e._s(e.noOptionsText)+" ")]},proxy:!0}]),model:{value:e.selectedResult,callback:function(t){e.selectedResult=t},expression:"selectedResult"}}),e.showEmptyContent?t("NcEmptyContent",{staticClass:"smart-picker-search--empty-content",scopedSlots:e._u([{key:"icon",fn:function(){return[e.provider.icon_url?t("img",{staticClass:"provider-icon",attrs:{alt:e.providerIconAlt,src:e.provider.icon_url}}):t("LinkVariantIcon")]},proxy:!0}],null,!1,2922132592)}):e._e()],1)},re=[];const ie=(0,l.n)(ne,ae,re,!1,null,"e61f71e3").exports,oe={providerList:1,standardLinkInput:2,searchInput:3,customElement:4},se={name:"NcReferencePicker",components:{NcCustomPickerElement:D,NcProviderList:W,NcRawLinkInput:K,NcSearch:ie},props:{initialProvider:{type:Object,default:()=>null},width:{type:Number,default:null},focusOnCreate:{type:Boolean,default:!0}},emits:["cancel","cancel-raw-link","cancel-search","provider-selected","submit"],data(){return{MODES:oe,selectedProvider:this.initialProvider}},computed:{mode(){return null===this.selectedProvider?oe.providerList:(0,s.c)(this.selectedProvider.id)?oe.customElement:this.selectedProvider.search_providers_ids?oe.searchInput:oe.standardLinkInput},pickerWrapperStyle(){return{width:this.width?this.width+"px":void 0}}},mounted(){this.focusOnCreate&&(this.initialProvider?setTimeout(()=>{this.$refs["url-input"]?.focus()},300):this.$nextTick(()=>{this.$refs["provider-list"]?.focus()}))},methods:{onEscapePressed(){null!==this.selectedProvider?this.deselectProvider():this.cancelProviderSelection()},onProviderSelected(e){this.selectedProvider=e,this.$emit("provider-selected",e),this.$nextTick(()=>{this.$refs["url-input"]?.focus()})},cancelCustomElement(){this.deselectProvider()},cancelSearch(){this.$emit("cancel-search",this.selectedProvider?.title),this.deselectProvider()},cancelRawLinkInput(){this.$emit("cancel-raw-link",this.selectedProvider?.title),this.deselectProvider()},cancelProviderSelection(){this.$emit("cancel")},submitLink(e){null!==this.selectedProvider&&async function(e){const t=Math.floor(Date.now()/1e3),n=(0,u.KT)("references/provider/{providerId}",{providerId:e});await c.Ay.put(n,{timestamp:t}),window._vue_richtext_reference_provider_timestamps[e]=t}(this.selectedProvider.id),this.$emit("submit",e),this.deselectProvider()},deselectProvider(){this.selectedProvider=null,this.$emit("provider-selected",null),setTimeout(()=>{this.$refs["provider-list"]?.focus()},300)}}};var le=function(){var e=this,t=e._self._c;return t("div",{staticClass:"reference-picker",style:e.pickerWrapperStyle,attrs:{tabindex:"-1"},on:{keydown:function(t){return!t.type.indexOf("key")&&e._k(t.keyCode,"esc",27,t.key,["Esc","Escape"])?null:(t.stopPropagation(),t.preventDefault(),e.onEscapePressed.apply(null,arguments))}}},[e.mode===e.MODES.providerList?t("NcProviderList",{ref:"provider-list",on:{"select-provider":e.onProviderSelected,submit:e.submitLink,cancel:e.cancelProviderSelection}}):e.mode===e.MODES.standardLinkInput?t("NcRawLinkInput",{ref:"url-input",attrs:{provider:e.selectedProvider},on:{submit:e.submitLink,cancel:e.cancelRawLinkInput}}):e.mode===e.MODES.searchInput?t("NcSearch",{ref:"url-input",attrs:{provider:e.selectedProvider},on:{cancel:e.cancelSearch,submit:e.submitLink}}):e.mode===e.MODES.customElement?t("div",{staticClass:"custom-element-wrapper"},[t("NcCustomPickerElement",{staticClass:"custom-element",attrs:{provider:e.selectedProvider},on:{submit:e.submitLink,cancel:e.cancelCustomElement}})],1):e._e()],1)},ce=[];const de=(0,l.n)(se,le,ce,!1,null,"646d5538").exports;(0,p.r)(p.Z,p.m);const ue={name:"NcReferencePickerModal",components:{NcReferencePicker:de,NcModal:E.A,NcButton:b.N,ArrowLeftIcon:i.A,CloseIcon:o.C},props:{initialProvider:{type:Object,default:()=>null},focusOnCreate:{type:Boolean,default:!0},isInsideViewer:{type:Boolean,default:!1}},emits:["cancel","submit"],data(){return{show:!0,selectedProvider:this.initialProvider,backButtonTitle:(0,p.a)("Back to provider selection"),closeButtonTitle:(0,p.a)("Close"),closeButtonLabel:(0,p.a)("Close Smart Picker")}},computed:{isProviderSelected(){return null!==this.selectedProvider},showBackButton(){return null===this.initialProvider&&this.isProviderSelected},modalSize(){return this.isProviderSelected&&(0,s.c)(this.selectedProvider.id)?(0,s.g)(this.selectedProvider.id)??"large":"normal"},showModalName(){return!this.isProviderSelected||!(0,s.c)(this.selectedProvider.id)},modalName(){return this.isProviderSelected?this.selectedProvider.title:(0,p.a)("Smart Picker")}},mounted(){if(this.isInsideViewer){const e=this.$refs.modal_content;(0,r.Ic)("viewer:trapElements:changed",e)}},methods:{onCancel(){this.show=!1,this.$emit("cancel")},onSubmit(e){this.show=!1,this.$emit("submit",e)},onProviderSelect(e){this.selectedProvider=e,null===e&&null!==this.initialProvider&&this.onCancel()},onBackClicked(){this.$refs.referencePicker.deselectProvider()}}};var pe=function(){var e=this,t=e._self._c;return e.show?t("NcModal",{staticClass:"reference-picker-modal",attrs:{size:e.modalSize,"can-close":!0},on:{close:e.onCancel}},[t("div",{ref:"modal_content",staticClass:"reference-picker-modal--content"},[e.showBackButton?t("NcButton",{staticClass:"back-button",attrs:{"aria-label":e.backButtonTitle,title:e.backButtonTitle},on:{click:e.onBackClicked},scopedSlots:e._u([{key:"icon",fn:function(){return[t("ArrowLeftIcon")]},proxy:!0}],null,!1,3001860362)}):e._e(),t("NcButton",{staticClass:"close-button",attrs:{"aria-label":e.closeButtonLabel,title:e.closeButtonTitle,variant:"tertiary"},on:{click:e.onCancel},scopedSlots:e._u([{key:"icon",fn:function(){return[t("CloseIcon")]},proxy:!0}],null,!1,2491825086)}),e.showModalName?t("h2",[e._v(" "+e._s(e.modalName)+" ")]):e._e(),t("NcReferencePicker",{ref:"referencePicker",attrs:{"initial-provider":e.initialProvider,"focus-on-create":e.focusOnCreate},on:{"provider-selected":e.onProviderSelect,submit:e.onSubmit,cancel:e.onCancel}})],1)]):e._e()},Ae=[];const fe=(0,l.n)(ue,pe,Ae,!1,null,"00990f2a").exports;async function ve(e,t){const n=document.createElement("div");n.id="referencePickerModal",document.body.append(n);const{promise:r,reject:i,resolve:o}=Promise.withResolvers(),s=e&&function(e){return e===z?O:j().find(t=>t.id===e)}(e)||null,l=new(a.Ay.extend(fe))({propsData:{initialProvider:s,isInsideViewer:t}}).$mount(n);return l.$on("cancel",()=>{l.$destroy(),i(new Error("User cancellation"))}),l.$on("submit",e=>{l.$destroy(),o(e)}),r}},36054:(e,t,n)=>{"use strict";n.d(t,{A:()=>s});var a=n(71354),r=n.n(a),i=n(76314),o=n.n(i)()(r());o.push([e.id,"/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/**\n * SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/*\n* Ensure proper alignment of the vue material icons\n*/\n.material-design-icon[data-v-6f255eb3] {\n display: flex;\n align-self: center;\n justify-self: center;\n align-items: center;\n justify-content: center;\n}\n\n/* 'New' button */\n.app-navigation-new[data-v-6f255eb3] {\n display: block;\n padding: calc(var(--default-grid-baseline, 4px) * 2);\n}\n.app-navigation-new button[data-v-6f255eb3] {\n width: 100%;\n}","",{version:3,sources:["webpack://./node_modules/@nextcloud/vue/dist/assets/NcAppNavigationNew-D8_2ab9R.css"],names:[],mappings:"AAAA;;;EAGE;AACF;;;EAGE;AACF;;CAEC;AACD;EACE,aAAa;EACb,kBAAkB;EAClB,oBAAoB;EACpB,mBAAmB;EACnB,uBAAuB;AACzB;;AAEA,iBAAiB;AACjB;EACE,cAAc;EACd,oDAAoD;AACtD;AACA;EACE,WAAW;AACb",sourcesContent:["/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/**\n * SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/*\n* Ensure proper alignment of the vue material icons\n*/\n.material-design-icon[data-v-6f255eb3] {\n display: flex;\n align-self: center;\n justify-self: center;\n align-items: center;\n justify-content: center;\n}\n\n/* 'New' button */\n.app-navigation-new[data-v-6f255eb3] {\n display: block;\n padding: calc(var(--default-grid-baseline, 4px) * 2);\n}\n.app-navigation-new button[data-v-6f255eb3] {\n width: 100%;\n}"],sourceRoot:""}]);const s=o},47790:()=>{},49328:(e,t,n)=>{"use strict";n.d(t,{A:()=>s});var a=n(71354),r=n.n(a),i=n(76314),o=n.n(i)()(r());o.push([e.id,".ldap-wizard__groups[data-v-3200ed48]{display:flex;flex-direction:column;gap:16px}.ldap-wizard__groups__line[data-v-3200ed48]{display:flex;align-items:start}.ldap-wizard__groups__filter-selection[data-v-3200ed48]{flex-direction:column}.ldap-wizard__groups__groups-filter[data-v-3200ed48]{display:flex;flex-direction:column}.ldap-wizard__groups__groups-filter code[data-v-3200ed48]{background-color:var(--color-background-dark);padding:4px;border-radius:4px}.ldap-wizard__groups__groups-count-check[data-v-3200ed48]{display:flex;align-items:center;gap:16px}","",{version:3,sources:["webpack://./apps/user_ldap/src/components/SettingsTabs/GroupsTab.vue"],names:[],mappings:"AACA,sCACC,YAAA,CACA,qBAAA,CACA,QAAA,CAEA,4CACC,YAAA,CACA,iBAAA,CAGD,wDACC,qBAAA,CAGD,qDACC,YAAA,CACA,qBAAA,CAEA,0DACC,6CAAA,CACA,WAAA,CACA,iBAAA,CAIF,0DACC,YAAA,CACA,kBAAA,CACA,QAAA",sourcesContent:["\n.ldap-wizard__groups {\n\tdisplay: flex;\n\tflex-direction: column;\n\tgap: 16px;\n\n\t&__line {\n\t\tdisplay: flex;\n\t\talign-items: start;\n\t}\n\n\t&__filter-selection {\n\t\tflex-direction: column;\n\t}\n\n\t&__groups-filter {\n\t\tdisplay: flex;\n\t\tflex-direction: column;\n\n\t\tcode {\n\t\t\tbackground-color: var(--color-background-dark);\n\t\t\tpadding: 4px;\n\t\t\tborder-radius: 4px;\n\t\t}\n\t}\n\n\t&__groups-count-check {\n\t\tdisplay: flex;\n\t\talign-items: center;\n\t\tgap: 16px;\n\t}\n}\n"],sourceRoot:""}]);const s=o},51020:(t,n,a)=>{"use strict";var r=a(21777),i=a(10810),o=a(85471),s=a(81222),l=a(53334),c=a(97489),d=a(85072),u=a.n(d),p=a(97825),A=a.n(p),f=a(77659),v=a.n(f),g=a(55056),h=a.n(g),m=a(10540),b=a.n(m),C=a(41113),_=a.n(C),y=a(6139),x={};x.styleTagTransform=_(),x.setAttributes=h(),x.insert=v().bind(null,"head"),x.domAPI=A(),x.insertStyleElement=b(),u()(y.A,x),y.A&&y.A.locals&&y.A.locals;var E=a(47536),k=a(88751),w=a(51431);(0,E.r)();const B=(0,o.pM)({name:"NcActionButtonGroup",inject:{isInSemanticMenu:{from:"NcActions:isSemanticMenu",default:!1}},props:{name:{required:!1,default:void 0,type:String}},setup:()=>({labelId:`nc-action-button-group-${(0,k.G)()}`}),methods:{t:E.a}});var P=function(){var e=this,t=e._self._c;return e._self._setupProxy,t("li",{staticClass:"nc-button-group-base",attrs:{role:e.isInSemanticMenu&&"presentation"}},[e.name?t("div",{attrs:{id:e.labelId}},[e._v(" "+e._s(e.name)+" ")]):e._e(),t("ul",{staticClass:"nc-button-group-content",attrs:{role:"group","aria-labelledby":e.name?e.labelId:void 0}},[e._t("default")],2)])},N=[];(0,w.n)(B,P,N,!1,null,"d81f7625").exports;var S=a(61744),I=a(73891),D=a(34772),L=a(57908),T=a(26582),F={};F.styleTagTransform=_(),F.setAttributes=h(),F.insert=v().bind(null,"head"),F.domAPI=A(),F.insertStyleElement=b(),u()(T.A,F),T.A&&T.A.locals&&T.A.locals;var G=a(39841);const z={name:"NcActionRadio",mixins:[a(16086).A],inject:{isInSemanticMenu:{from:"NcActions:isSemanticMenu",default:!1}},model:{prop:"modelValue",event:"update:modelValue"},props:{id:{type:String,default:()=>"action-"+(0,k.G)(),validator:e=>""!==e.trim()},checked:{type:Boolean,default:void 0},modelValue:{type:[Boolean,String,Number],default:!1},name:{type:String,required:!0},value:{type:[String,Number],default:""},disabled:{type:Boolean,default:!1}},emits:["update:checked","update:modelValue","update:model-value","change"],setup:e=>("boolean"==typeof e.modelValue&&o.Ay.util.warn("[NcActionRadio] Boolean type of `modelValue` is deprecated and will be removed in next versions"),{model:(0,G.u)("checked","update:checked")}),computed:{isFocusable(){return!this.disabled},ariaChecked(){if(this.isInSemanticMenu)return this.model?"true":"false"}},methods:{toggleInput(){this.$refs.label.click()},onChange(e){this.$emit("change",e)}}};var O=function(){var e=this,t=e._self._c;return t("li",{staticClass:"action",class:{"action--disabled":e.disabled},attrs:{role:e.isInSemanticMenu&&"presentation"}},[t("span",{staticClass:"action-radio",attrs:{role:"menuitemradio","aria-checked":e.ariaChecked}},[t("input",{directives:[{name:"model",rawName:"v-model",value:e.model,expression:"model"}],staticClass:"radio action-radio__radio",class:{focusable:e.isFocusable},attrs:{id:e.id,disabled:e.disabled,name:e.name,type:"radio"},domProps:{value:e.value,checked:e._q(e.model,e.value)},on:{keydown:function(t){return!t.type.indexOf("key")&&e._k(t.keyCode,"enter",13,t.key,"Enter")||t.ctrlKey||t.shiftKey||t.altKey||t.metaKey?null:(t.preventDefault(),e.toggleInput.apply(null,arguments))},change:[function(t){e.model=e.value},e.onChange]}}),t("label",{ref:"label",staticClass:"action-radio__label",attrs:{for:e.id}},[e._v(e._s(e.text))]),e._e()],2)])},j=[];(0,w.n)(z,O,j,!1,null,"9ee34172").exports;var R=a(59915),M=a(62388),X=a(15502),q=a(71711),U=a(14693),$={};$.styleTagTransform=_(),$.setAttributes=h(),$.insert=v().bind(null,"head"),$.domAPI=A(),$.insertStyleElement=b(),u()(U.A,$),U.A&&U.A.locals&&U.A.locals;var H=a(92777),W=a(97424),V=a(57833);const Y={name:"NcActionTextEditable",components:{NcIconSvgWrapper:V.N},mixins:[W.A],model:{prop:"modelValue",event:"update:modelValue"},props:{id:{type:String,default:()=>"action-"+(0,k.G)(),validator:e=>""!==e.trim()},disabled:{type:Boolean,default:!1},value:{type:String,default:void 0},modelValue:{type:String,default:""}},emits:["input","update:value","update:modelValue","update:model-value","submit"],setup:()=>({model:(0,G.u)("value","update:value"),mdiArrowRight:H.d}),computed:{isFocusable(){return!this.disabled},computedId:()=>(0,k.G)()},methods:{onInput(e){this.$emit("input",e),this.model=e.target.value},onSubmit(e){if(e.preventDefault(),e.stopPropagation(),this.disabled)return!1;this.$emit("submit",e)}}};var Q=function(){var e=this,t=e._self._c;return t("li",{staticClass:"action",class:{"action--disabled":e.disabled}},[t("span",{staticClass:"action-text-editable",on:{click:e.onClick}},[e._t("icon",function(){return[t("span",{staticClass:"action-text-editable__icon",class:[e.isIconUrl?"action-text-editable__icon--url":e.icon],style:{backgroundImage:e.isIconUrl?`url(${e.icon})`:null}})]}),t("form",{ref:"form",staticClass:"action-text-editable__form",attrs:{disabled:e.disabled},on:{submit:function(t){return t.preventDefault(),e.onSubmit.apply(null,arguments)}}},[t("input",{staticClass:"action-text-editable__submit",attrs:{id:e.id,type:"submit"}}),e.name?t("label",{staticClass:"action-text-editable__name",attrs:{for:e.computedId}},[e._v(" "+e._s(e.name)+" ")]):e._e(),t("textarea",e._b({staticClass:"action-text-editable__textarea",class:{focusable:e.isFocusable},attrs:{id:e.computedId,disabled:e.disabled},domProps:{value:e.model},on:{input:e.onInput}},"textarea",e.$attrs,!1)),t("label",{directives:[{name:"show",rawName:"v-show",value:!e.disabled,expression:"!disabled"}],staticClass:"action-text-editable__label",attrs:{for:e.id}},[t("NcIconSvgWrapper",{attrs:{directional:"",path:e.mdiArrowRight}})],1)])],2)])},K=[];(0,w.n)(Y,Q,K,!1,null,"018dbbe8").exports;var Z=a(559);const J={name:"NcAppContentDetails"};var ee=function(){return(0,this._self._c)("div",{staticClass:"app-content-details"},[this._t("default")],2)},te=[];(0,w.n)(J,ee,te,!1,null,null).exports;const ne={name:"NcAppContentList",props:{selection:{type:Boolean,default:!1},showDetails:{type:Boolean,default:!1}}};var ae=function(){var e=this;return(0,e._self._c)("div",{staticClass:"app-content-list",class:{selection:e.selection,showdetails:e.showDetails}},[e._t("default")],2)},re=[];(0,w.n)(ne,ae,re,!1,null,null).exports;var ie=a(59019),oe=a(86795),se={};se.styleTagTransform=_(),se.setAttributes=h(),se.insert=v().bind(null,"head"),se.domAPI=A(),se.insertStyleElement=b(),u()(oe.A,se),oe.A&&oe.A.locals&&oe.A.locals;const le={name:"NcAppNavigationCaption",components:{NcActions:M.N},inheritAttrs:!1,props:{name:{type:String,required:!0},headingId:{type:String,default:null},isHeading:{type:Boolean,default:!1},headingLevel:{type:Number,default:2}," ":{}},computed:{wrapperTag(){return this.isHeading?"div":"li"},captionTag(){const e=Math.max(2,this.headingLevel);return this.isHeading?`h${e}`:"span"},hasActions(){return!!this.$slots.actions}}};var ce=function(){var e=this,t=e._self._c;return t(e.wrapperTag,{tag:"component",staticClass:"app-navigation-caption",class:{"app-navigation-caption--heading":e.isHeading}},[t(e.captionTag,{tag:"component",staticClass:"app-navigation-caption__name",attrs:{id:e.headingId}},[e._v(" "+e._s(e.name)+" ")]),e.hasActions?t("div",{staticClass:"app-navigation-caption__actions"},[t("NcActions",e._g(e._b({scopedSlots:e._u([{key:"icon",fn:function(){return[e._t("actionsTriggerIcon")]},proxy:!0}],null,!0)},"NcActions",e.$attrs,!1),e.$listeners),[e._t("actions")],2)],1):e._e()],1)},de=[];(0,w.n)(le,ce,de,!1,null,"fac69d4a").exports;var ue=a(98621),pe={};pe.styleTagTransform=_(),pe.setAttributes=h(),pe.insert=v().bind(null,"head"),pe.domAPI=A(),pe.insertStyleElement=b(),u()(ue.A,pe),ue.A&&ue.A.locals&&ue.A.locals;const Ae={name:"NcAppNavigationIconBullet",props:{color:{type:String,required:!0,validator:e=>/^#?([0-9A-F]{3}){1,2}$/i.test(e)}},emits:["click"],computed:{formattedColor(){return this.color.startsWith("#")?this.color:"#"+this.color}},methods:{onClick(e){this.$emit("click",e)}}};var fe=function(){var e=this,t=e._self._c;return t("div",{staticClass:"app-navigation-entry__icon-bullet",on:{click:e.onClick}},[t("div",{style:{backgroundColor:e.formattedColor}})])},ve=[];(0,w.n)(Ae,fe,ve,!1,null,"04a313f4").exports;var ge=a(89621),he=a(27345),me=a(36054),be={};be.styleTagTransform=_(),be.setAttributes=h(),be.insert=v().bind(null,"head"),be.domAPI=A(),be.insertStyleElement=b(),u()(me.A,be),me.A&&me.A.locals&&me.A.locals;var Ce=a(97221);const _e={components:{NcButton:Ce.N},props:{buttonId:{type:String,required:!1,default:""},disabled:{type:Boolean,required:!1,default:!1},text:{type:String,required:!0},type:{type:String,default:"primary",validator:e=>-1!==["primary","secondary","tertiary"].indexOf(e)},variant:{type:String,default:"primary",validator:e=>-1!==["primary","secondary","tertiary"].indexOf(e)}},emits:["click"]};var ye=function(){var e=this,t=e._self._c;return t("div",{staticClass:"app-navigation-new"},[t("NcButton",{attrs:{id:e.buttonId,disabled:e.disabled,variant:"primary"!==e.type?e.type:e.variant},on:{click:function(t){return e.$emit("click")}},scopedSlots:e._u([{key:"icon",fn:function(){return[e._t("icon")]},proxy:!0}],null,!0)},[e._v(" "+e._s(e.text)+" ")])],1)},xe=[];(0,w.n)(_e,ye,xe,!1,null,"6f255eb3").exports;var Ee=a(9244),ke={};ke.styleTagTransform=_(),ke.setAttributes=h(),ke.insert=v().bind(null,"head"),ke.domAPI=A(),ke.insertStyleElement=b(),u()(Ee.A,ke),Ee.A&&Ee.A.locals&&Ee.A.locals;var we=a(46832),Be=a(88289);const Pe={name:"NcAppNavigationNewItem",components:{NcInputConfirmCancel:we.N,NcLoadingIcon:Be.A},props:{name:{type:String,required:!0},icon:{type:String,default:""},loading:{type:Boolean,default:!1},editLabel:{type:String,default:""},editPlaceholder:{type:String,default:""}},emits:["new-item"],data:()=>({newItemValue:"",newItemActive:!1}),methods:{handleNewItem(){this.loading||(this.newItemActive=!0,this.$nextTick(()=>{this.$refs.newItemInput.focusInput()}))},cancelNewItem(){this.newItemActive=!1},handleNewItemDone(){this.$emit("new-item",this.newItemValue),this.newItemValue="",this.newItemActive=!1}}};var Ne=function(){var e=this,t=e._self._c;return t("li",{staticClass:"app-navigation-entry",class:{"app-navigation-entry--newItemActive":e.newItemActive}},[t("button",{staticClass:"app-navigation-entry-button",on:{click:e.handleNewItem}},[t("span",{staticClass:"app-navigation-entry-icon",class:{[e.icon]:!e.loading}},[e.loading?t("NcLoadingIcon"):e._t("icon")],2),e.newItemActive?e._e():t("span",{staticClass:"app-navigation-new-item__name",attrs:{title:e.name}},[e._v(" "+e._s(e.name)+" ")]),e.newItemActive?t("span",{staticClass:"newItemContainer"},[t("NcInputConfirmCancel",{ref:"newItemInput",attrs:{placeholder:""!==e.editPlaceholder?e.editPlaceholder:e.name},on:{cancel:e.cancelNewItem,confirm:e.handleNewItemDone},model:{value:e.newItemValue,callback:function(t){e.newItemValue=t},expression:"newItemValue"}})],1):e._e()])])},Se=[];(0,w.n)(Pe,Ne,Se,!1,null,"258871fd").exports;var Ie=a(12368),De=(a(29436),a(20265)),Le={};Le.styleTagTransform=_(),Le.setAttributes=h(),Le.insert=v().bind(null,"head"),Le.domAPI=A(),Le.insertStyleElement=b(),u()(De.A,Le),De.A&&De.A.locals&&De.A.locals;var Te=a(57579),Fe=a(75105),Ge=(a(23020),a(53429),a(70580),a(44349),a(95462)),ze=(a(29928),a(19051)),Oe=a(3168),je=a(70415);(0,E.r)(E.n);const Re={directives:{ClickOutside:Te.z0},components:{NcButton:Ce.N,NcIconSvgWrapper:V.N},mixins:[Fe.A],props:{name:{type:String,required:!1,default:(0,E.a)("Settings")}},setup:()=>({contentId:(0,k.G)(),isLegacy32:je.i,mdiCog:H.i,mdiCogOutline:H.h}),data:()=>({open:!1}),computed:{clickOutsideConfig(){return[this.closeMenu,this.clickOutsideOptions]}},methods:{closeMenu(){this.open=!1}}};var Me=function(){var e=this,t=e._self._c;return t("div",{directives:[{name:"click-outside",rawName:"v-click-outside",value:e.clickOutsideConfig,expression:"clickOutsideConfig"}],class:{open:e.open},attrs:{id:"app-settings"}},[t("div",{attrs:{id:"app-settings__header"}},[t("NcButton",{staticClass:"settings-button",attrs:{"aria-controls":e.contentId,"aria-expanded":e.open?"true":"false",alignment:"start",variant:"tertiary",wide:""},on:{click:function(t){e.open=!e.open}},scopedSlots:e._u([{key:"icon",fn:function(){return[t("NcIconSvgWrapper",{staticClass:"settings-button__icon",attrs:{path:e.isLegacy32?e.mdiCog:e.mdiCogOutline}})]},proxy:!0}])},[e._v(" "+e._s(e.name)+" ")])],1),t("Transition",{attrs:{name:"slide-up"}},[t("div",{directives:[{name:"show",rawName:"v-show",value:e.open,expression:"open"}],attrs:{id:e.contentId}},[e._t("default")],2)])],1)},Xe=[];(0,w.n)(Re,Me,Xe,!1,null,"8fb21c8b").exports;var qe=a(542),Ue=a(41340),$e=a(83600),He=a(89335),We=a(59839),Ve=a(50017),Ye=a(60258),Qe=a(81611),Ke={};Ke.styleTagTransform=_(),Ke.setAttributes=h(),Ke.insert=v().bind(null,"head"),Ke.domAPI=A(),Ke.insertStyleElement=b(),u()(Qe.A,Ke),Qe.A&&Qe.A.locals&&Qe.A.locals;var Ze=a(33954),Je={};Je.styleTagTransform=_(),Je.setAttributes=h(),Je.insert=v().bind(null,"head"),Je.domAPI=A(),Je.insertStyleElement=b(),u()(Ze.A,Je),Ze.A&&Ze.A.locals&&Ze.A.locals;var et=a(34163);const tt={__name:"NcAssistantIcon",props:{inline:{type:Boolean,default:!1},size:{type:Number,default:20}},setup(e){const t=e;(0,o.$9)((e,t)=>({a843d9d2:t.sizePx}));const n=(0,Ge.u)(),a=(0,et.c)(),r=(0,o.EW)(()=>`${t.size}px`);return{__sfc:!0,props:t,isDarkTheme:n,gradientId:a,sizePx:r,mdiCreation:H.e}}};var nt=function(){var e=this,t=e._self._c,n=e._self._setupProxy;return t("span",{class:[e.$style.assistantIcon,e.inline&&e.$style.assistantIcon_inline],attrs:{"aria-hidden":"true",role:"img"}},[t("svg",{class:e.$style.assistantIcon__svg,attrs:{viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg"}},[t("defs",[n.isDarkTheme?t("linearGradient",{attrs:{id:n.gradientId,gradientTransform:"rotateX(285)"}},[t("stop",{attrs:{offset:"15%","stop-color":"#CDACE7"}}),t("stop",{attrs:{offset:"40%","stop-color":"#008FDB"}}),t("stop",{attrs:{offset:"82%","stop-color":"#A180E0"}})],1):t("linearGradient",{attrs:{id:n.gradientId,gradientTransform:"rotateX(285)"}},[t("stop",{attrs:{offset:"15%","stop-color":"#9669D3"}}),t("stop",{attrs:{offset:"40%","stop-color":"#00679E"}}),t("stop",{attrs:{offset:"80%","stop-color":"#492083"}})],1)],1),t("path",{attrs:{d:n.mdiCreation,fill:`url('#${n.gradientId}')`}})])])},at=[];const rt={$style:{"material-design-icon":"_material-design-icon_1ndue_12",assistantIcon:"_assistantIcon_1ndue_20",assistantIcon_inline:"_assistantIcon_inline_1ndue_25",assistantIcon__svg:"_assistantIcon__svg_1ndue_30"}};function it(e){for(var t in rt)this[t]=rt[t]}const ot=(0,w.n)(tt,nt,at,!1,it,null).exports,st={__name:"NcAssistantButton",props:{disabled:{type:Boolean,default:!1},text:{type:String,default:""},variant:{type:String,default:"secondary"}},emits:["click"],setup:e=>({__sfc:!0,mdiCreation:H.e,NcAssistantIcon:ot,NcButton:Ce.N,NcIconSvgWrapper:V.N})};var lt=function(){var e=this,t=e._self._c,n=e._self._setupProxy;return t("div",{class:[{[e.$style.assistantButton_disabled]:e.disabled,[e.$style.assistantButton_primary]:"primary"===e.variant},e.$style.assistantButton]},[t(n.NcButton,{class:e.$style.assistantButton__button,attrs:{disabled:e.disabled,variant:"tertiary"},on:{click:function(t){return e.$emit("click",t)}},scopedSlots:e._u([{key:"icon",fn:function(){return["primary"===e.variant?t(n.NcIconSvgWrapper,{class:e.$style.assistantButton__icon,attrs:{path:n.mdiCreation}}):t(n.NcAssistantIcon)]},proxy:!0},e.text||e.$scopedSlots.default?{key:"default",fn:function(){return[t("div",{class:e.$style.assistantButton__text},[e._t("default",function(){return[e._v(e._s(e.text))]})],2)]},proxy:!0}:null],null,!0)})],1)},ct=[];const dt={$style:{"material-design-icon":"_material-design-icon_1xe1x_12",assistantButton:"_assistantButton_1xe1x_20",assistantButton_disabled:"_assistantButton_disabled_1xe1x_30",assistantButton_primary:"_assistantButton_primary_1xe1x_34",assistantButton__icon:"_assistantButton__icon_1xe1x_38",assistantButton__text:"_assistantButton__text_1xe1x_39",assistantButton__button:"_assistantButton__button_1xe1x_42"}};function ut(e){for(var t in dt)this[t]=dt[t]}(0,w.n)(st,lt,ct,!1,ut,null).exports;var pt=a(93595),At={};At.styleTagTransform=_(),At.setAttributes=h(),At.insert=v().bind(null,"head"),At.domAPI=A(),At.insertStyleElement=b(),u()(pt.A,At),pt.A&&pt.A.locals&&pt.A.locals;const ft={__name:"NcAssistantContent",props:{contentClasses:{type:[String,Array,Object],default:""}},setup:e=>({__sfc:!0})};var vt=function(){var e=this,t=e._self._c;return e._self._setupProxy,t("div",{class:e.$style.assistantContent},[t("div",{class:[e.$style.assistantContent__inner,e.contentClasses]},[e._t("default")],2)])},gt=[];const ht={$style:{"material-design-icon":"_material-design-icon_ri18g_12",assistantContent:"_assistantContent_ri18g_20",assistantContent__inner:"_assistantContent__inner_ri18g_25"}};function mt(e){for(var t in ht)this[t]=ht[t]}(0,w.n)(ft,vt,gt,!1,mt,null).exports;var bt=a(64919),Ct=a(74307),_t={};_t.styleTagTransform=_(),_t.setAttributes=h(),_t.insert=v().bind(null,"head"),_t.domAPI=A(),_t.insertStyleElement=b(),u()(Ct.A,_t),Ct.A&&Ct.A.locals&&Ct.A.locals;var yt=a(95341),xt=a(94067);class Et extends Error{constructor(e){super(e),this.name="TimeoutError"}}class kt extends Error{constructor(e){super(),this.name="AbortError",this.message=e}}const wt=e=>void 0===globalThis.DOMException?new kt(e):new DOMException(e),Bt=e=>{const t=void 0===e.reason?wt("This operation was aborted."):e.reason;return t instanceof Error?t:wt(t)};class Pt{#e=[];enqueue(e,t){const n={priority:(t={priority:0,...t}).priority,id:t.id,run:e};if(0===this.size||this.#e[this.size-1].priority>=t.priority)return void this.#e.push(n);const a=function(e,t,n){let a=0,r=e.length;for(;r>0;){const i=Math.trunc(r/2);let o=a+i;n(e[o],t)<=0?(a=++o,r-=i+1):r=i}return a}(this.#e,n,(e,t)=>t.priority-e.priority);this.#e.splice(a,0,n)}setPriority(e,t){const n=this.#e.findIndex(t=>t.id===e);if(-1===n)throw new ReferenceError(`No promise function with the id "${e}" exists in the queue.`);const[a]=this.#e.splice(n,1);this.enqueue(a.run,{priority:t,id:e})}dequeue(){const e=this.#e.shift();return e?.run}filter(e){return this.#e.filter(t=>t.priority===e.priority).map(e=>e.run)}get size(){return this.#e.length}}const Nt=new class extends xt{#t;#n;#a=0;#r;#i;#o=0;#s;#l;#e;#c;#d=0;#u;#p;#A;#f=1n;timeout;constructor(e){if(super(),!("number"==typeof(e={carryoverConcurrencyCount:!1,intervalCap:Number.POSITIVE_INFINITY,interval:0,concurrency:Number.POSITIVE_INFINITY,autoStart:!0,queueClass:Pt,...e}).intervalCap&&e.intervalCap>=1))throw new TypeError(`Expected \`intervalCap\` to be a number from 1 and up, got \`${e.intervalCap?.toString()??""}\` (${typeof e.intervalCap})`);if(void 0===e.interval||!(Number.isFinite(e.interval)&&e.interval>=0))throw new TypeError(`Expected \`interval\` to be a finite number >= 0, got \`${e.interval?.toString()??""}\` (${typeof e.interval})`);this.#t=e.carryoverConcurrencyCount,this.#n=e.intervalCap===Number.POSITIVE_INFINITY||0===e.interval,this.#r=e.intervalCap,this.#i=e.interval,this.#e=new e.queueClass,this.#c=e.queueClass,this.concurrency=e.concurrency,this.timeout=e.timeout,this.#A=!0===e.throwOnTimeout,this.#p=!1===e.autoStart}get#v(){return this.#n||this.#a{this.#b()},t)),!0;this.#a=this.#t?this.#d:0}return!1}#m(){if(0===this.#e.size)return this.#s&&clearInterval(this.#s),this.#s=void 0,this.emit("empty"),0===this.#d&&this.emit("idle"),!1;if(!this.#p){const e=!this.#y;if(this.#v&&this.#g){const t=this.#e.dequeue();return!!t&&(this.emit("active"),t(),e&&this.#_(),!0)}}return!1}#_(){this.#n||void 0!==this.#s||(this.#s=setInterval(()=>{this.#C()},this.#i),this.#o=Date.now()+this.#i)}#C(){0===this.#a&&0===this.#d&&this.#s&&(clearInterval(this.#s),this.#s=void 0),this.#a=this.#t?this.#d:0,this.#x()}#x(){for(;this.#m(););}get concurrency(){return this.#u}set concurrency(e){if(!("number"==typeof e&&e>=1))throw new TypeError(`Expected \`concurrency\` to be a number from 1 and up, got \`${e}\` (${typeof e})`);this.#u=e,this.#x()}async#E(e){return new Promise((t,n)=>{e.addEventListener("abort",()=>{n(e.reason)},{once:!0})})}setPriority(e,t){this.#e.setPriority(e,t)}async add(e,t={}){return t.id??=(this.#f++).toString(),t={timeout:this.timeout,throwOnTimeout:this.#A,...t},new Promise((n,a)=>{this.#e.enqueue(async()=>{this.#d++;try{t.signal?.throwIfAborted(),this.#a++;let a=e({signal:t.signal});t.timeout&&(a=function(e,t){const{milliseconds:n,fallback:a,message:r,customTimers:i={setTimeout,clearTimeout}}=t;let o,s;const l=new Promise((l,c)=>{if("number"!=typeof n||1!==Math.sign(n))throw new TypeError(`Expected \`milliseconds\` to be a positive number, got \`${n}\``);if(t.signal){const{signal:e}=t;e.aborted&&c(Bt(e)),s=()=>{c(Bt(e))},e.addEventListener("abort",s,{once:!0})}if(n===Number.POSITIVE_INFINITY)return void e.then(l,c);const d=new Et;o=i.setTimeout.call(void 0,()=>{if(a)try{l(a())}catch(e){c(e)}else"function"==typeof e.cancel&&e.cancel(),!1===r?l():r instanceof Error?c(r):(d.message=r??`Promise timed out after ${n} milliseconds`,c(d))},n),(async()=>{try{l(await e)}catch(e){c(e)}})()}).finally(()=>{l.clear(),s&&t.signal&&t.signal.removeEventListener("abort",s)});return l.clear=()=>{i.clearTimeout.call(void 0,o),o=void 0},l}(Promise.resolve(a),{milliseconds:t.timeout})),t.signal&&(a=Promise.race([a,this.#E(t.signal)]));const r=await a;n(r),this.emit("completed",r)}catch(e){if(e instanceof Et&&!t.throwOnTimeout)return void n();a(e),this.emit("error",e)}finally{this.#h()}},t),this.emit("add"),this.#m()})}async addAll(e,t){return Promise.all(e.map(async e=>this.add(e,t)))}start(){return this.#p?(this.#p=!1,this.#x(),this):this}pause(){this.#p=!0}clear(){this.#e=new this.#c}async onEmpty(){0!==this.#e.size&&await this.#k("empty")}async onSizeLessThan(e){this.#e.sizethis.#e.size{const a=()=>{t&&!t()||(this.off(e,a),n())};this.on(e,a)})}get size(){return this.#e.size}sizeBy(e){return this.#e.filter(e).length}get pending(){return this.#d}get isPaused(){return this.#p}}({concurrency:5}),St={__name:"NcBlurHash",props:{hash:{required:!0,type:String},alt:{type:String,default:""},src:{type:String,default:""}},emits:["load"],setup(e,{emit:t}){const n=e,a=(0,o.KR)(),r=(0,o.KR)(!1);function i(){if(r.value)return;if(!n.hash)return void Oe.l.error("Invalid BlurHash value");if(void 0===a.value)return void Oe.l.error("BlurHash canvas not available");const{height:e,width:t}=a.value,i=(0,yt.D4)(n.hash,t,e),o=a.value.getContext("2d");if(null===o)return void Oe.l.error("Cannot create context for BlurHash canvas");const s=o.createImageData(t,e);s.data.set(i),o.putImageData(s,0,0)}return(0,o.wB)(()=>n.hash,i),(0,o.wB)(r,()=>{!1===r.value&&(0,o.dY)(()=>i())},{immediate:!0}),(0,o.wB)(()=>n.src,()=>{r.value=!1,n.src&&function(e){const{resolve:t,promise:n}=Promise.withResolvers();return Nt.add(()=>{const a=new Image;return a.onerror=()=>t(!1),a.onload=()=>t(!0),a.src=e,n}),n}(n.src).then(e=>{r.value=e,t("load",e)})},{immediate:!0}),{__sfc:!0,props:n,emit:t,canvas:a,imageLoaded:r,drawBlurHash:i}}};var It=function(){var e=this,t=e._self._c,n=e._self._setupProxy;return t("Transition",{attrs:{css:!!e.src&&void 0,"enter-active-class":e.$style.fadeTransition,"leave-active-class":e.$style.fadeTransition,"enter-class":e.$style.fadeTransitionActive,"leave-to-class":e.$style.fadeTransitionActive}},[n.imageLoaded?t("img",{attrs:{alt:e.alt,src:e.src}}):t("canvas",{ref:"canvas",attrs:{"aria-hidden":e.alt?null:"true","aria-label":e.alt}})])},Dt=[];const Lt={$style:{fadeTransition:"_fadeTransition_13rtj_2",fadeTransitionActive:"_fadeTransitionActive_13rtj_6"}};function Tt(e){for(var t in Lt)this[t]=Lt[t]}(0,w.n)(St,It,Dt,!1,Tt,null).exports;var Ft=a(36386),Gt=a(82866),zt=a(36746),Ot=a(31078),jt=a(27885),Rt=a(70357),Mt=a(90429),Xt=a(409),qt=a(16024),Ut=a(44025),$t=a(15939),Ht=a(48198),Wt=a(60316),Vt=a(15370),Yt=a(83194),Qt=a(90945),Kt=a(42507),Zt=a(15862),Jt=a(79885),en=a(79157),tn=a(43898),nn=a(18177),an=a(98216),rn={};rn.styleTagTransform=_(),rn.setAttributes=h(),rn.insert=v().bind(null,"head"),rn.domAPI=A(),rn.insertStyleElement=b(),u()(an.A,rn),an.A&&an.A.locals&&an.A.locals;const on={name:"NcGuestContent",mounted(){document.getElementById("content").classList.add("nc-guest-content")},destroyed(){document.getElementById("content").classList.remove("nc-guest-content")}};var sn=function(){return(0,this._self._c)("div",{attrs:{id:"guest-content-vue"}},[this._t("default")],2)},ln=[];(0,w.n)(on,sn,ln,!1,null,"528e9576").exports;var cn=a(95436),dn=a(12623),un=a(51550),pn=a(81189),An=a(36817),fn=a(15063),vn=a(80530),gn=a(32917),hn=a(42486),mn=a(31133),bn=a(50922),Cn=a(60451),_n=a(35290),yn=a(31213),xn=a(89816),En=a(9555),kn={};kn.styleTagTransform=_(),kn.setAttributes=h(),kn.insert=v().bind(null,"head"),kn.domAPI=A(),kn.insertStyleElement=b(),u()(En.A,kn),En.A&&En.A.locals&&En.A.locals;var wn=a(63814),Bn=a(44111),Pn=a(87485),Nn=a(47266),Sn=a(29365);(0,E.r)(E.O);const In={name:"NcResource",components:{NcButton:Ce.N},props:{icon:{type:String,required:!0},name:{type:String,required:!0},url:{type:String,required:!0}},data(){return{labelTranslated:(0,E.a)('Open link to "{resourceName}"',{resourceName:this.name})}},computed:{route(){return(0,Bn.g)(this.$router,this.url)}},methods:{t:E.a}};var Dn=function(){var e=this,t=e._self._c;return t("li",{staticClass:"resource"},[t("NcButton",{staticClass:"resource__button",attrs:{"aria-label":e.labelTranslated,to:e.route,href:e.route?null:e.url,variant:"tertiary"},scopedSlots:e._u([{key:"icon",fn:function(){return[t("div",{staticClass:"resource__icon"},[t("img",{attrs:{src:e.icon}})])]},proxy:!0}])},[e._v(" "+e._s(e.name)+" ")])],1)},Ln=[];const Tn=(0,w.n)(In,Dn,Ln,!1,null,"9f864ea4").exports,Fn={name:"AccountGroupIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}};var Gn=function(){var e=this,t=e._self._c;return t("span",e._b({staticClass:"material-design-icon account-group-icon",attrs:{"aria-hidden":e.title?null:"true","aria-label":e.title,role:"img"},on:{click:function(t){return e.$emit("click",t)}}},"span",e.$attrs,!1),[t("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 24 24"}},[t("path",{attrs:{d:"M12,5.5A3.5,3.5 0 0,1 15.5,9A3.5,3.5 0 0,1 12,12.5A3.5,3.5 0 0,1 8.5,9A3.5,3.5 0 0,1 12,5.5M5,8C5.56,8 6.08,8.15 6.53,8.42C6.38,9.85 6.8,11.27 7.66,12.38C7.16,13.34 6.16,14 5,14A3,3 0 0,1 2,11A3,3 0 0,1 5,8M19,8A3,3 0 0,1 22,11A3,3 0 0,1 19,14C17.84,14 16.84,13.34 16.34,12.38C17.2,11.27 17.62,9.85 17.47,8.42C17.92,8.15 18.44,8 19,8M5.5,18.25C5.5,16.18 8.41,14.5 12,14.5C15.59,14.5 18.5,16.18 18.5,18.25V20H5.5V18.25M0,20V18.5C0,17.11 1.89,15.94 4.45,15.6C3.86,16.28 3.5,17.22 3.5,18.25V20H0M24,20H20.5V18.25C20.5,17.22 20.14,16.28 19.55,15.6C22.11,15.94 24,17.11 24,18.5V20Z"}},[e.title?t("title",[e._v(e._s(e.title))]):e._e()])])])},zn=[];const On=(0,w.n)(Fn,Gn,zn,!1,null,null).exports,jn={name:"OpenInNewIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}};var Rn=function(){var e=this,t=e._self._c;return t("span",e._b({staticClass:"material-design-icon open-in-new-icon",attrs:{"aria-hidden":e.title?null:"true","aria-label":e.title,role:"img"},on:{click:function(t){return e.$emit("click",t)}}},"span",e.$attrs,!1),[t("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 24 24"}},[t("path",{attrs:{d:"M14,3V5H17.59L7.76,14.83L9.17,16.24L19,6.41V10H21V3M19,19H5V5H12V3H5C3.89,3 3,3.9 3,5V19A2,2 0 0,0 5,21H19A2,2 0 0,0 21,19V12H19V19Z"}},[e.title?t("title",[e._v(e._s(e.title))]):e._e()])])])},Mn=[];const Xn=(0,w.n)(jn,Rn,Mn,!1,null,null).exports;(0,E.r)(E.P);const qn=(0,Pn.F)()?.circles?.teamResourceProviders??[],Un={name:"NcTeamResources",components:{AccountGroup:On,ChevronDown:Nn.C,ChevronUp:Sn.C,OpenInNew:Xn,NcButton:Ce.N,NcIconSvgWrapper:V.N},props:{providerId:{type:String,default:null},itemId:{type:[String,Number],default:null}},data:()=>({appEnabled:void 0!==OC?.appswebroots?.circles&&(OC.config.version.split(".")[0]??0)>=29,loading:!1,teamResources:null,teamOpen:[]}),computed:{isVisible(){return!this.loading&&this.teamResources?.length>0},teamProviders(){return e=>{const t=this.teamResources.find(t=>t.teamId===e);return t.resources?.reduce((e,t)=>(t.provider.id===this.providerId&&t.id===String(this.itemId)||(e[t.provider.id]||(e[t.provider.id]=t.provider,e[t.provider.id].resources=[]),t.provider.id===this.providerId&&t.id===String(this.itemId)||e[t.provider.id].resources.push(t)),e),{})}},open(){return e=>-1!==this.teamOpen.indexOf(e)}},watch:{providerId(){this.fetchTeamResources()},itemId(){this.fetchTeamResources()}},created(){this.fetchTeamResources()},methods:{t:E.a,async fetchTeamResources(){if(qn.includes(this.providerId))try{this.loading=!0;const e=await ze.Ay.get((0,wn.KT)(`/teams/resources/${this.providerId}/${this.itemId}`));this.teamResources=e.data.ocs.data.teams,this.teamOpen=[this.teamResources[0]?.teamId]}catch(e){this.teamResources=null,Oe.l.error("Could not fetch Teams resources",{error:e})}finally{this.loading=!1}},toggleOpen(e,t){t?this.teamOpen.push(e):this.teamOpen.splice(this.teamOpen.indexOf(e),1)}}};var $n=function(){var e=this,t=e._self._c;return e.appEnabled&&e.isVisible?t("div",{staticClass:"team-resources"},[t("h5",{staticClass:"team-resources__header"},[e._v(" "+e._s(e.t("Related team resources"))+" ")]),e._l(e.teamResources,function(n){return t("details",{key:n.teamId,staticClass:"related-team",attrs:{name:"Team resources",open:e.open(n.teamId)},on:{toggle:t=>e.toggleOpen(n.teamId,t.target.open)}},[t("summary",{staticClass:"related-team__header"},[t("h5",{staticClass:"related-team__name"},[t("AccountGroup",{attrs:{size:20}}),e._v(" "+e._s(n.displayName)+" ")],1),t("NcButton",{attrs:{"aria-label":e.t("View team"),href:n.link,title:e.t("View team"),variant:"tertiary"},scopedSlots:e._u([{key:"icon",fn:function(){return[t("OpenInNew",{attrs:{size:20}})]},proxy:!0}],null,!0)}),e.open(n.teamId)?t("ChevronUp",{attrs:{size:20}}):t("ChevronDown",{attrs:{size:20}})],1),t("div",e._l(e.teamProviders(n.teamId),function(n){return t("div",{key:n.id,staticClass:"related-team-provider"},[n.resources.length>0?t("h6",[e._v(" "+e._s(n.name)+" ")]):e._e(),t("ul",e._l(n.resources,function(n){return t("li",{key:n.url,staticClass:"related-team-resource"},[t("a",{staticClass:"related-team-resource__link",attrs:{href:n.url}},[n.iconEmoji?t("span",{staticClass:"resource__icon"},[e._v(" "+e._s(n.iconEmoji)+" ")]):n.iconSvg?t("NcIconSvgWrapper",{staticClass:"resource__icon",attrs:{svg:n.iconSvg,size:20}}):n.iconURL?t("span",{staticClass:"resource__icon"},[t("img",{attrs:{src:n.iconURL,alt:""}})]):e._e(),t("span",{staticClass:"resource__name"},[e._v(" "+e._s(n.label)+" ")])],1)])}),0)])}),0)])})],2):e._e()},Hn=[];const Wn=(0,w.n)(Un,$n,Hn,!1,null,"e224f6ac").exports;(0,E.r)(E.Q);const Vn={name:"NcRelatedResourcesPanel",components:{NcResource:Tn,NcTeamResources:Wn},props:{providerId:{type:String,default:null},itemId:{type:[String,Number],default:null},resourceType:{type:String,default:""},limit:{type:Number,default:0},fileInfo:{type:Object,default:null},header:{type:String,default:(0,E.a)("Related resources")},description:{type:String,default:(0,E.a)("Anything shared with the same group of people will show up here")},primary:{type:Boolean,default:!1}},emits:["has-error","has-resources"],data:()=>({appEnabled:void 0!==OC?.appswebroots?.related_resources,loading:!1,error:null,resources:[]}),computed:{isVisible(){return!this.loading&&(this.error??this.resources.length>0)},subline(){return this.error?(0,E.a)("Error getting related resources. Please contact your system administrator if you have any questions."):this.description},hasResourceInfo(){return null!==this.providerId&&null!==this.itemId||null!==this.fileInfo},isFiles(){return void 0!==this.fileInfo?.id},url(){let e=null,t=null;return this.isFiles?(e="files",t=this.fileInfo.id):(e=this.providerId,t=this.itemId),(0,wn.KT)("/apps/related_resources/related/{providerId}?itemId={itemId}&resourceType={resourceType}&limit={limit}&format=json",{providerId:e,itemId:t,resourceType:this.resourceType,limit:this.limit})}},watch:{providerId(){this.fetchRelatedResources()},itemId(){this.fetchRelatedResources()},fileInfo(){this.fetchRelatedResources()},error(e){this.$emit("has-error",Boolean(e))},resources(e){this.$emit("has-resources",e.length>0)}},created(){this.fetchRelatedResources()},methods:{t:E.a,async fetchRelatedResources(){if(this.appEnabled&&this.hasResourceInfo){this.loading=!0,this.error=null,this.resources=[];try{const e=await ze.Ay.get(this.url);this.resources=e.data.ocs?.data}catch(t){this.error=e,Oe.l.error("Could not fetch related resources",{error:t})}finally{this.loading=!1}}}}};var Yn=function(){var e=this,t=e._self._c;return t("div",[t("NcTeamResources",{attrs:{"provider-id":e.providerId,"item-id":e.itemId}}),e.appEnabled&&e.isVisible?t("div",{staticClass:"related-resources"},[t("div",{staticClass:"related-resources__header"},[t("h5",[e._v(e._s(e.header))]),t("p",[e._v(e._s(e.subline))])]),e._l(e.resources,function(e){return t("NcResource",{key:e.itemId,staticClass:"related-resources__entry",attrs:{icon:e.icon,name:e.title,url:e.url}})})],2):e._e()],1)},Qn=[];(0,w.n)(Vn,Yn,Qn,!1,null,"eaa109ec").exports;var Kn=a(36079),Zn=a(4943),Jn=(a(34935),a(52781),a(16768)),ea=a(18148),ta=a(65547);a(61338);const na=(0,o.pM)({name:"NcSavingIndicatorIcon",props:{size:{type:Number,default:20},name:{type:String,default:""},saving:{type:Boolean,default:!1,required:!1},error:{type:Boolean,default:!1,required:!1}},emits:["click"],computed:{indicatorColor(){return this.error?"var(--color-text-error, var(--color-error))":this.saving?"var(--color-primary-element)":"none"}}});var aa=function(){var e=this,t=e._self._c;return e._self._setupProxy,t("span",{staticClass:"material-design-icon",attrs:{"aria-label":e.name,role:"img"},on:{click:function(t){return e.$emit("click",t)}}},[t("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 24 24"}},[t("path",{attrs:{fill:e.indicatorColor,d:"m19 15a4 4 0 0 0-4 4 4 4 0 0 0 4 4 4 4 0 0 0 4-4 4 4 0 0 0-4-4z"}}),t("path",{attrs:{fill:"currentColor",d:"M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z"}},[e.name?t("title",[e._v(e._s(e.name))]):e._e()])])])},ra=[];(0,w.n)(na,aa,ra,!1,null,null).exports;var ia=a(17711),oa=a(53120),sa={};sa.styleTagTransform=_(),sa.setAttributes=h(),sa.insert=v().bind(null,"head"),sa.domAPI=A(),sa.insertStyleElement=b(),u()(oa.A,sa),oa.A&&oa.A.locals&&oa.A.locals,(0,E.r)(E.g,E.j);const la={model:{prop:"modelValue",event:"update:modelValue"}},ca=Object.assign(la,{__name:"NcSelectUsers",props:{ariaLabelClearSelected:{type:String,default:(0,E.a)("Clear selected")},ariaLabelListbox:{type:String,default:(0,E.a)("Options")},ariaLabelDeselectOption:{type:Function,default:e=>(0,E.a)("Deselect {option}",{option:e})},keepOpen:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},filterBy:{type:Function,default:null},inputId:{type:String,default:()=>(0,k.G)()},inputLabel:{type:String,default:(0,E.a)("Select account")},labelOutside:{type:Boolean,default:!1},loading:{type:Boolean,default:!1},multiple:{type:Boolean,default:!1},noWrap:{type:Boolean,default:!1},options:{type:Array,default:()=>[]},placeholder:{type:String,default:""},required:{type:Boolean,default:!1},modelValue:{type:Object,default:null}},emits:["search","update:modelValue"],setup(e,{emit:t}){const n=e,a=(0,o.KR)("");(0,o.wB)(a,()=>{t("search",a.value)});const r=Number.parseInt(window.getComputedStyle(document.body).getPropertyValue("--default-clickable-area")),i=Number.parseInt(window.getComputedStyle(document.body).getPropertyValue("--default-grid-baseline"));return{__sfc:!0,props:n,emit:t,search:a,clickableArea:r,gridBaseLine:i,avatarSize:r-2*i,localFilterBy:function(e,t,a){if(n.filterBy)return n.filterBy;const r=a.match(/[^<]*<([^>]+)/),i=e.subname?.toLocaleLowerCase()??"";return r&&i.indexOf(r[1].toLocaleLowerCase())>-1||`${t} ${e.subname}`.toLocaleLowerCase().indexOf(a.toLocaleLowerCase())>-1},NcListItemIcon:gn.N,NcSelect:ea.N}}});var da=function(){var e=this,t=e._self._c,n=e._self._setupProxy;return t(n.NcSelect,e._b({staticClass:"nc-select-users",attrs:{"filter-by":n.localFilterBy,label:"displayName"},on:{search:function(e){n.search=e},"update:model-value":function(t){return e.$emit("update:modelValue",t)}},scopedSlots:e._u([{key:"option",fn:function(a){return[t(n.NcListItemIcon,e._b({attrs:{"avatar-size":32,name:a.displayName,search:n.search}},"NcListItemIcon",a,!1))]}},{key:"selected-option",fn:function(a){return[t(n.NcListItemIcon,e._b({attrs:{"avatar-size":n.avatarSize,name:a.displayName,"no-margin":"",search:n.search}},"NcListItemIcon",a,!1))]}}])},"NcSelect",e.$props,!1))},ua=[];(0,w.n)(ca,da,ua,!1,null,"e5d43b0e").exports;var pa=a(67503),Aa={};Aa.styleTagTransform=_(),Aa.setAttributes=h(),Aa.insert=v().bind(null,"head"),Aa.domAPI=A(),Aa.insertStyleElement=b(),u()(pa.A,Aa),pa.A&&pa.A.locals&&pa.A.locals,(0,E.r)(E.i);const fa={name:"NcSettingsInputText",model:{prop:"value",event:"update:value"},props:{label:{type:String,required:!0},hint:{type:String,default:""},value:{type:String,default:void 0},modelValue:{type:String,default:""},disabled:{type:Boolean,default:!1},id:{type:String,default:()=>"settings-input-text-"+(0,k.G)(),validator:e=>""!==e.trim()}},emits:["update:value","update:modelValue","update:model-value","input","submit","change"],setup:()=>({model:(0,G.u)("value","update:value")}),data:()=>({submitTranslated:(0,E.a)("Submit")}),computed:{idSubmit(){return this.id+"-submit"}},methods:{onInput(e){this.$emit("input",e),this.model=e.target.value},onSubmit(e){this.disabled||this.$emit("submit",e)},onChange(e){this.$emit("change",e)}}};var va=function(){var e=this,t=e._self._c;return t("form",{ref:"form",attrs:{disabled:e.disabled},on:{submit:function(t){return t.preventDefault(),t.stopPropagation(),e.onSubmit.apply(null,arguments)}}},[t("div",{staticClass:"input-wrapper"},[t("label",{staticClass:"action-input__label",attrs:{for:e.id}},[e._v(e._s(e.label))]),t("input",{attrs:{id:e.id,type:"text",disabled:e.disabled},domProps:{value:e.model},on:{input:e.onInput,change:e.onChange}}),t("input",{staticClass:"action-input__submit",attrs:{id:e.idSubmit,type:"submit"},domProps:{value:e.submitTranslated}}),e.hint?t("p",{staticClass:"hint"},[e._v(" "+e._s(e.hint)+" ")]):e._e()])])},ga=[];(0,w.n)(fa,va,ga,!1,null,"9938ac79").exports;var ha=a(80922),ma=a(6801),ba=a(37994),Ca=a(23245);const _a={__name:"NcThemeProvider",props:{dark:{type:Boolean,default:!1},light:{type:Boolean,default:!1}},setup(e){const t=e,n=(0,o.EW)(()=>t.dark?"dark":t.light?"light":"");return(0,o.Gt)(Ca.I,n),{__sfc:!0,props:t,theme:n}}};var ya=function(){var e=this,t=e._self._c,n=e._self._setupProxy;return t("div",e._b({},"div",e._d({},[`data-theme-${n.theme}`,n.theme])),[e._t("default")],2)},xa=[];(0,w.n)(_a,ya,xa,!1,null,null).exports;var Ea=a(70110),ka=a(72041),wa=a(49313),Ba=a(23610),Pa=(a(55581),a(94205),a(23739),a(16343),a(18547),a(42892)),Na=a(73596),Sa=(a(83278),a(2508));Sa.fF.themes.tooltip.html=!1,Sa.fF.themes.tooltip.delay={show:500,hide:200},Sa.fF.themes.tooltip.distance=10,Sa.fF.themes.tooltip["arrow-padding"]=3,c.N,S.A,I.N,D.N,L.A,R.A,X.A,q.A,M.N,Z.N,ie.N,ge.N,he.A,Ie.N,qe.A,Ue.N,$e.N,He.N,He.N,We.N,Ve.N,Ye.A,Zn.N,bt.N,Ft.N,Gt.N,Ce.N,zt.N,Ot.N,jt.N,Rt.N,Mt.N,Xt.N,qt.N,Ut.N,$t.default,Ht.A,Wt.N,Vt.N,Yt.A,Qt.N,Kt.A,Zt.N,Jt.N,en.N,tn.N,nn.N,cn.N,dn.N,un.N,pn.N,An.N,V.N,fn.N,vn.N,gn.N,Be.A,Kn.N,hn.A,mn.A,bn.N,Cn.N,_n.N,yn.N,xn.N,Zn.a,Jn.N,ea.N,ia.N,ha.N,ma.N,ba.N,ta.N,Ea.N,ka.N,wa.N,Ba.A,Symbol.toStringTag,Pa.A,Na.A,Sa.yw,Symbol.toStringTag;var Ia=a(96078),Da=a(85168),La=a(43627),Ta=a.n(La);const Fa=(0,a(35947).YK)().setApp("LDAP").detectUser().build(),Ga=(0,wn.Jv)("apps/user_ldap/ajax");async function za(e,t,n={}){const a=new FormData;a.set("action",e),a.set("ldap_serverconfig_chooser",t),Object.entries(n).forEach(([e,t])=>{a.set(e,t)});const r=await ze.Ay.post(Ta().join(Ga,"wizard.php"),a);if(Fa.debug(`Called wizard action: ${e}`,{configId:t,params:a,response:r}),"error"===r.data.status){const e=r.data.message??(0,l.t)("user_ldap","An error occurred");throw(0,Da.Qg)(e),new Error(e)}return r.data}async function Oa(){return await ja((0,l.t)("user_ldap","Mode switch"),(0,l.t)("user_ldap","Switching the mode will enable automatic LDAP queries. Depending on your LDAP size they may take a while. Do you still want to switch the mode?"))}async function ja(e,t){let n=!1;const a=(0,Da.As)(e).setText(t).setSeverity("warning").addButton({label:(0,l.t)("user_ldap","Cancel"),callback(){}}).addButton({label:(0,l.t)("user_ldap","Confirm"),variant:"error",callback(){n=!0}}).build();return await a.show(),n}const Ra=(0,i.nY)("ldap-configs",()=>{const e=(0,o.KR)((0,s.C)("user_ldap","ldapConfigs")),t=(0,o.KR)(Object.keys(e.value)[0]),n=(0,o.EW)(()=>e.value[t.value]),a=(0,o.KR)(0);async function r(){const n=await async function(){const e=await ze.Ay.post((0,wn.KT)("apps/user_ldap/api/v1/config"));return Fa.debug("Created configuration",{configId:e.data.ocs.data.configID}),e.data.ocs.data.configID}();return o.Ay.set(e.value,n,await async function(e){const t=await ze.Ay.get((0,wn.KT)("apps/user_ldap/api/v1/config/{configId}",{configId:e}));return Fa.debug("Fetched configuration",{configId:e,config:t.data.ocs.data}),t.data.ocs.data}(n)),t.value=n,n}return{ldapConfigs:e,selectedConfigId:t,selectedConfig:n,updatingConfig:a,getConfigProxy:function(t,n={}){return new Proxy(e.value[t],{get:(e,t)=>e[t],set:(e,r,i)=>(e[r]=i,(async()=>{a.value++,await za("save",t,{cfgkey:r,cfgval:i}),a.value--,void 0!==n[r]&&n[r](e[r])})(),!0)})},create:r,copyConfig:async function(n){const a=await async function(e){const t=new FormData;t.set("copyConfig",e);const n=await ze.Ay.post(Ta().join(Ga,"getNewServerConfigPrefix.php"),t);return Fa.debug("Created configuration",{configId:n.data.configPrefix}),n.data.configPrefix}(n);return o.Ay.set(e.value,a,{...e.value[n]}),t.value=a,a},removeConfig:async function(n){!0===await async function(e){try{if(!await ja((0,l.t)("user_ldap","Confirm action"),(0,l.t)("user_ldap","Are you sure you want to permanently delete this LDAP configuration? This cannot be undone.")))return!1;await ze.Ay.delete((0,wn.KT)("apps/user_ldap/api/v1/config/{configId}",{configId:e})),Fa.debug("Deleted configuration",{configId:e})}catch(e){const t=e.response;(0,Da.Qg)(t?.data.ocs.meta.message||(0,l.t)("user_ldap","Failed to delete config"))}return!0}(n)&&o.Ay.delete(e.value,n),t.value=Object.keys(e.value)[0]??await r()}}}),Ma=(0,o.pM)({__name:"AdvancedTab",props:{configId:null},setup(e){const t=e,n=Ra(),a=(0,o.EW)(()=>n.getConfigProxy(t.configId)),r=(0,Pn.F)().theming.name;return{__sfc:!0,props:t,ldapConfigsStore:n,ldapConfigProxy:a,instanceName:r,groupMemberAssociation:{uniqueMember:"uniqueMember",memberUid:"memberUid",member:"member (AD)",gidNumber:"gidNumber",zimbraMailForwardingAddress:"zimbraMailForwardingAddress"},t:l.t,NcCheckboxRadioSwitch:zt.N,NcSelect:ea.N,NcTextArea:ba.N,NcTextField:ta.N}}});var Xa=a(76253),qa={};qa.styleTagTransform=_(),qa.setAttributes=h(),qa.insert=v().bind(null,"head"),qa.domAPI=A(),qa.insertStyleElement=b(),u()(Xa.A,qa),Xa.A&&Xa.A.locals&&Xa.A.locals;var Ua=a(14486);const $a=(0,Ua.A)(Ma,function(){var e=this,t=e._self._c,n=e._self._setupProxy;return t("fieldset",{staticClass:"ldap-wizard__advanced"},[t("details",{staticClass:"ldap-wizard__advanced__section",attrs:{open:"",name:"ldap-wizard__advanced__section"}},[t("summary",[t("h3",[e._v(e._s(n.t("user_ldap","Connection Settings")))])]),e._v(" "),t(n.NcTextField,{attrs:{autocomplete:"off",label:n.t("user_ldap","Backup (Replica) Host"),value:n.ldapConfigProxy.ldapBackupHost,"helper-text":n.t("user_ldap","Give an optional backup host. It must be a replica of the main LDAP/AD server.")},nativeOn:{change:function(e){return(e=>n.ldapConfigProxy.ldapBackupHost=e.target.value).apply(null,arguments)}}}),e._v(" "),t(n.NcTextField,{attrs:{type:"number",value:n.ldapConfigProxy.ldapBackupPort,label:n.t("user_ldap","Backup (Replica) Port")},nativeOn:{change:function(e){return(e=>n.ldapConfigProxy.ldapBackupPort=e.target.value).apply(null,arguments)}}}),e._v(" "),t(n.NcCheckboxRadioSwitch,{attrs:{checked:"1"===n.ldapConfigProxy.ldapOverrideMainServer,type:"switch","aria-label":n.t("user_ldap","Only connect to the replica server.")},on:{"update:checked":function(e){n.ldapConfigProxy.ldapOverrideMainServer=e?"1":"0"}}},[e._v("\n\t\t\t"+e._s(n.t("user_ldap","Disable Main Server"))+"\n\t\t")]),e._v(" "),t(n.NcCheckboxRadioSwitch,{attrs:{checked:"1"===n.ldapConfigProxy.turnOffCertCheck,"aria-label":n.t("user_ldap","Not recommended, use it for testing only! If connection only works with this option, import the LDAP server's SSL certificate in your {instanceName} server.",{instanceName:n.instanceName})},on:{"update:checked":function(e){n.ldapConfigProxy.turnOffCertCheck=e?"1":"0"}}},[e._v("\n\t\t\t"+e._s(n.t("user_ldap","Turn off SSL certificate validation."))+"\n\t\t")]),e._v(" "),t(n.NcTextField,{attrs:{type:"number",label:n.t("user_ldap","Cache Time-To-Live"),value:n.ldapConfigProxy.ldapCacheTTL,"helper-text":n.t("user_ldap","in seconds. A change empties the cache.")},nativeOn:{change:function(e){return(e=>n.ldapConfigProxy.ldapCacheTTL=e.target.value).apply(null,arguments)}}})],1),e._v(" "),t("details",{staticClass:"ldap-wizard__advanced__section",attrs:{name:"ldap-wizard__advanced__section"}},[t("summary",[t("h3",[e._v(e._s(n.t("user_ldap","Directory Settings")))])]),e._v(" "),t(n.NcTextField,{attrs:{autocomplete:"off",value:n.ldapConfigProxy.ldapUserDisplayName,label:n.t("user_ldap","User Display Name Field"),"helper-text":n.t("user_ldap","The LDAP attribute to use to generate the user's display name.")},nativeOn:{change:function(e){return(e=>n.ldapConfigProxy.ldapUserDisplayName=e.target.value).apply(null,arguments)}}}),e._v(" "),t(n.NcTextField,{attrs:{autocomplete:"off",value:n.ldapConfigProxy.ldapUserDisplayName2,label:n.t("user_ldap","2nd User Display Name Field"),"helper-text":n.t("user_ldap","Optional. An LDAP attribute to be added to the display name in brackets. Results in e.g. »John Doe (john.doe@example.org)«.")},nativeOn:{change:function(e){return(e=>n.ldapConfigProxy.ldapUserDisplayName2=e.target.value).apply(null,arguments)}}}),e._v(" "),t(n.NcTextArea,{attrs:{value:n.ldapConfigProxy.ldapBaseUsers,placeholder:n.t("user_ldap","One User Base DN per line"),label:n.t("user_ldap","Base User Tree")},nativeOn:{change:function(e){return(e=>n.ldapConfigProxy.ldapBaseUsers=e.target.value).apply(null,arguments)}}}),e._v(" "),t(n.NcTextArea,{attrs:{value:n.ldapConfigProxy.ldapAttributesForUserSearch,placeholder:n.t("user_ldap","Optional; one attribute per line"),label:n.t("user_ldap","User Search Attributes")},nativeOn:{change:function(e){return(e=>n.ldapConfigProxy.ldapAttributesForUserSearch=e.target.value).apply(null,arguments)}}}),e._v(" "),t(n.NcCheckboxRadioSwitch,{attrs:{checked:"1"===n.ldapConfigProxy.markRemnantsAsDisabled,"aria-label":n.t("user_ldap","When switched on, users imported from LDAP which are then missing will be disabled")},on:{"update:checked":function(e){n.ldapConfigProxy.markRemnantsAsDisabled=e?"1":"0"}}},[e._v("\n\t\t\t"+e._s(n.t("user_ldap","Disable users missing from LDAP"))+"\n\t\t")]),e._v(" "),t(n.NcTextField,{attrs:{autocomplete:"off",value:n.ldapConfigProxy.ldapGroupDisplayName,label:n.t("user_ldap","Group Display Name Field"),title:n.t("user_ldap","The LDAP attribute to use to generate the groups's display name.")},nativeOn:{change:function(e){return(e=>n.ldapConfigProxy.ldapGroupDisplayName=e.target.value).apply(null,arguments)}}}),e._v(" "),t(n.NcTextArea,{attrs:{value:n.ldapConfigProxy.ldapBaseGroups,placeholder:n.t("user_ldap","One Group Base DN per line"),label:n.t("user_ldap","Base Group Tree")},nativeOn:{change:function(e){return(e=>n.ldapConfigProxy.ldapBaseGroups=e.target.value).apply(null,arguments)}}}),e._v(" "),t(n.NcTextArea,{attrs:{value:n.ldapConfigProxy.ldapAttributesForGroupSearch,placeholder:n.t("user_ldap","Optional; one attribute per line"),label:n.t("user_ldap","Group Search Attributes")},nativeOn:{change:function(e){return(e=>n.ldapConfigProxy.ldapAttributesForGroupSearch=e.target.value).apply(null,arguments)}}}),e._v(" "),t(n.NcSelect,{attrs:{options:Object.keys(n.groupMemberAssociation),"input-label":n.t("user_ldap","Group-Member association")},scopedSlots:e._u([{key:"option",fn:function({label:t}){return[e._v("\n\t\t\t\t"+e._s(n.groupMemberAssociation[t])+"\n\t\t\t")]}},{key:"selected-option",fn:function({label:t}){return[e._v("\n\t\t\t\t"+e._s(n.groupMemberAssociation[t])+"\n\t\t\t")]}}]),model:{value:n.ldapConfigProxy.ldapGroupMemberAssocAttr,callback:function(t){e.$set(n.ldapConfigProxy,"ldapGroupMemberAssocAttr",t)},expression:"ldapConfigProxy.ldapGroupMemberAssocAttr"}}),e._v(" "),t(n.NcTextField,{attrs:{autocomplete:"off",label:n.t("user_ldap","Dynamic Group Member URL"),value:n.ldapConfigProxy.ldapDynamicGroupMemberURL,"helper-text":n.t("user_ldap","The LDAP attribute that on group objects contains an LDAP search URL that determines what objects belong to the group. (An empty setting disables dynamic group membership functionality.)")},nativeOn:{change:function(e){return(e=>n.ldapConfigProxy.ldapDynamicGroupMemberURL=e.target.value).apply(null,arguments)}}}),e._v(" "),t(n.NcCheckboxRadioSwitch,{attrs:{checked:"1"===n.ldapConfigProxy.ldapNestedGroups,"aria-label":n.t("user_ldap","When switched on, groups that contain groups are supported. (Only works if the group member attribute contains DNs.)")},on:{"update:checked":function(e){n.ldapConfigProxy.ldapNestedGroups=e?"1":"0"}}},[e._v("\n\t\t\t"+e._s(n.t("user_ldap","Nested Groups"))+"\n\t\t")]),e._v(" "),t(n.NcTextField,{attrs:{type:"number",label:n.t("user_ldap","Paging chunksize"),value:n.ldapConfigProxy.ldapPagingSize,"helper-text":n.t("user_ldap","Chunksize used for paged LDAP searches that may return bulky results like user or group enumeration. (Setting it 0 disables paged LDAP searches in those situations.)")},nativeOn:{change:function(e){return(e=>n.ldapConfigProxy.ldapPagingSize=e.target.value).apply(null,arguments)}}}),e._v(" "),t(n.NcCheckboxRadioSwitch,{attrs:{checked:"1"===n.ldapConfigProxy.turnOnPasswordChange,"aria-label":n.t("user_ldap","Allow LDAP users to change their password and allow Super Administrators and Group Administrators to change the password of their LDAP users. Only works when access control policies are configured accordingly on the LDAP server. As passwords are sent in plaintext to the LDAP server, transport encryption must be used and password hashing should be configured on the LDAP server.")},on:{"update:checked":function(e){n.ldapConfigProxy.turnOnPasswordChange=e?"1":"0"}}},[e._v("\n\t\t\t"+e._s(n.t("user_ldap","Enable LDAP password changes per user"))+"\n\t\t")]),e._v(" "),t("span",{staticClass:"tablecell"},[e._v("\n\t\t\t"+e._s(n.t("user_ldap","(New password is sent as plain text to LDAP)"))+"\n\t\t")]),e._v(" "),t(n.NcTextField,{attrs:{autocomplete:"off",label:n.t("user_ldap","Default password policy DN"),value:n.ldapConfigProxy.ldapDefaultPPolicyDN,"helper-text":n.t("user_ldap","The DN of a default password policy that will be used for password expiry handling. Works only when LDAP password changes per user are enabled and is only supported by OpenLDAP. Leave empty to disable password expiry handling.")},nativeOn:{change:function(e){return(e=>n.ldapConfigProxy.ldapDefaultPPolicyDN=e.target.value).apply(null,arguments)}}})],1),e._v(" "),t("details",{staticClass:"ldap-wizard__advanced__section",attrs:{name:"ldap-wizard__advanced__section"}},[t("summary",[t("h3",[e._v(e._s(n.t("user_ldap","Special Attributes")))])]),e._v(" "),t(n.NcTextField,{attrs:{autocomplete:"off",value:n.ldapConfigProxy.ldapQuotaAttribute,label:n.t("user_ldap","Quota Field"),"helper-text":n.t("user_ldap","Leave empty for user's default quota. Otherwise, specify an LDAP/AD attribute.")},nativeOn:{change:function(e){return(e=>n.ldapConfigProxy.ldapQuotaAttribute=e.target.value).apply(null,arguments)}}}),e._v(" "),t(n.NcTextField,{attrs:{autocomplete:"off",value:n.ldapConfigProxy.ldapQuotaDefault,label:n.t("user_ldap","Quota Default"),"helper-text":n.t("user_ldap","Override default quota for LDAP users who do not have a quota set in the Quota Field.")},nativeOn:{change:function(e){return(e=>n.ldapConfigProxy.ldapQuotaDefault=e.target.value).apply(null,arguments)}}}),e._v(" "),t(n.NcTextField,{attrs:{autocomplete:"off",value:n.ldapConfigProxy.ldapEmailAttribute,label:n.t("user_ldap","Email Field"),"helper-text":n.t("user_ldap","Set the user's email from their LDAP attribute. Leave it empty for default behaviour.")},nativeOn:{change:function(e){return(e=>n.ldapConfigProxy.ldapEmailAttribute=e.target.value).apply(null,arguments)}}}),e._v(" "),t(n.NcTextField,{attrs:{autocomplete:"off",label:n.t("user_ldap","User Home Folder Naming Rule"),value:n.ldapConfigProxy.homeFolderNamingRule,"helper-text":n.t("user_ldap","Leave empty for username (default). Otherwise, specify an LDAP/AD attribute.")},nativeOn:{change:function(e){return(e=>n.ldapConfigProxy.homeFolderNamingRule=e.target.value).apply(null,arguments)}}}),e._v(" "),t(n.NcTextField,{attrs:{autocomplete:"off",label:n.t("user_ldap","`$home` Placeholder Field"),value:n.ldapConfigProxy.ldapExtStorageHomeAttribute,"helper-text":n.t("user_ldap","$home in an external storage configuration will be replaced with the value of the specified attribute")},nativeOn:{change:function(e){return(e=>n.ldapConfigProxy.ldapExtStorageHomeAttribute=e.target.value).apply(null,arguments)}}})],1),e._v(" "),t("details",{staticClass:"ldap-wizard__advanced__section",attrs:{name:"ldap-wizard__advanced__section"}},[t("summary",[t("h3",[e._v(e._s(n.t("user_ldap","User Profile Attributes")))])]),e._v(" "),t(n.NcTextField,{attrs:{autocomplete:"off",label:n.t("user_ldap","Phone Field"),value:n.ldapConfigProxy.ldapAttributePhone,"helper-text":n.t("user_ldap","User profile Phone will be set from the specified attribute")},nativeOn:{change:function(e){return(e=>n.ldapConfigProxy.ldapAttributePhone=e.target.value).apply(null,arguments)}}}),e._v(" "),t(n.NcTextField,{attrs:{autocomplete:"off",label:n.t("user_ldap","Website Field"),value:n.ldapConfigProxy.ldapAttributeWebsite,"helper-text":n.t("user_ldap","User profile Website will be set from the specified attribute")},nativeOn:{change:function(e){return(e=>n.ldapConfigProxy.ldapAttributeWebsite=e.target.value).apply(null,arguments)}}}),e._v(" "),t(n.NcTextField,{attrs:{autocomplete:"off",label:n.t("user_ldap","Address Field"),value:n.ldapConfigProxy.ldapAttributeAddress,"helper-text":n.t("user_ldap","User profile Address will be set from the specified attribute")},nativeOn:{change:function(e){return(e=>n.ldapConfigProxy.ldapAttributeAddress=e.target.value).apply(null,arguments)}}}),e._v(" "),t(n.NcTextField,{attrs:{autocomplete:"off",label:n.t("user_ldap","Twitter Field"),value:n.ldapConfigProxy.ldapAttributeTwitter,"helper-text":n.t("user_ldap","User profile Twitter will be set from the specified attribute")},nativeOn:{change:function(e){return(e=>n.ldapConfigProxy.ldapAttributeTwitter=e.target.value).apply(null,arguments)}}}),e._v(" "),t(n.NcTextField,{attrs:{autocomplete:"off",label:n.t("user_ldap","Fediverse Field"),value:n.ldapConfigProxy.ldapAttributeFediverse,"helper-text":n.t("user_ldap","User profile Fediverse will be set from the specified attribute")},nativeOn:{change:function(e){return(e=>n.ldapConfigProxy.ldapAttributeFediverse=e.target.value).apply(null,arguments)}}}),e._v(" "),t(n.NcTextField,{attrs:{autocomplete:"off",label:n.t("user_ldap","Organisation Field"),value:n.ldapConfigProxy.ldapAttributeOrganisation,"helper-text":n.t("user_ldap","User profile Organisation will be set from the specified attribute")},nativeOn:{change:function(e){return(e=>n.ldapConfigProxy.ldapAttributeOrganisation=e.target.value).apply(null,arguments)}}}),e._v(" "),t(n.NcTextField,{attrs:{autocomplete:"off",label:n.t("user_ldap","Role Field"),value:n.ldapConfigProxy.ldapAttributeRole,"helper-text":n.t("user_ldap","User profile Role will be set from the specified attribute")},nativeOn:{change:function(e){return(e=>n.ldapConfigProxy.ldapAttributeRole=e.target.value).apply(null,arguments)}}}),e._v(" "),t(n.NcTextField,{attrs:{autocomplete:"off",label:n.t("user_ldap","Headline Field"),value:n.ldapConfigProxy.ldapAttributeHeadline,"helper-text":n.t("user_ldap","User profile Headline will be set from the specified attribute")},nativeOn:{change:function(e){return(e=>n.ldapConfigProxy.ldapAttributeHeadline=e.target.value).apply(null,arguments)}}}),e._v(" "),t(n.NcTextField,{attrs:{autocomplete:"off",label:n.t("user_ldap","Biography Field"),value:n.ldapConfigProxy.ldapAttributeBiography,"helper-text":n.t("user_ldap","User profile Biography will be set from the specified attribute")},nativeOn:{change:function(e){return(e=>n.ldapConfigProxy.ldapAttributeBiography=e.target.value).apply(null,arguments)}}}),e._v(" "),t(n.NcTextField,{attrs:{autocomplete:"off",label:n.t("user_ldap","Birthdate Field"),value:n.ldapConfigProxy.ldapAttributeBirthDate,"helper-text":n.t("user_ldap","User profile Date of birth will be set from the specified attribute")},nativeOn:{change:function(e){return(e=>n.ldapConfigProxy.ldapAttributeBirthDate=e.target.value).apply(null,arguments)}}})],1)])},[],!1,null,"5b57c0d9",null).exports,Ha=(0,o.pM)({__name:"ExpertTab",props:{configId:null},setup(e){const t=e,n=Ra(),a=(0,o.EW)(()=>n.getConfigProxy(t.configId));return{__sfc:!0,props:t,ldapConfigsStore:n,ldapConfigProxy:a,t:l.t,NcTextField:ta.N}}});var Wa=a(28953),Va={};Va.styleTagTransform=_(),Va.setAttributes=h(),Va.insert=v().bind(null,"head"),Va.domAPI=A(),Va.insertStyleElement=b(),u()(Wa.A,Va),Wa.A&&Wa.A.locals&&Wa.A.locals;const Ya=(0,Ua.A)(Ha,function(){var e=this,t=e._self._c,n=e._self._setupProxy;return t("fieldset",{staticClass:"ldap-wizard__expert"},[t("div",{staticClass:"ldap-wizard__expert__line"},[t("strong",[e._v(e._s(n.t("user_ldap","Internal Username")))]),e._v(" "),t("p",{attrs:{id:"ldap_expert_username_attr"}},[e._v("\n\t\t\t"+e._s(n.t("user_ldap","By default the internal username will be created from the UUID attribute. It makes sure that the username is unique and characters do not need to be converted. The internal username has the restriction that only these characters are allowed: [a-zA-Z0-9_.@-]. Other characters are replaced with their ASCII correspondence or simply omitted. On collisions a number will be added/increased. The internal username is used to identify a user internally. It is also the default name for the user home folder. It is also a part of remote URLs, for instance for all DAV services. With this setting, the default behavior can be overridden. Changes will have effect only on newly mapped (added) LDAP users. Leave it empty for default behavior."))+"\n\t\t")]),e._v(" "),t(n.NcTextField,{attrs:{"aria-describedby":"ldap_expert_username_attr",autocomplete:"off",label:n.t("user_ldap","Internal Username Attribute:"),value:n.ldapConfigProxy.ldapExpertUsernameAttr,"label-outside":!0},nativeOn:{change:function(e){return(e=>n.ldapConfigProxy.ldapExpertUsernameAttr=e.target.value).apply(null,arguments)}}})],1),e._v(" "),t("div",{staticClass:"ldap-wizard__expert__line"},[t("strong",[e._v(e._s(n.t("user_ldap","Override UUID detection")))]),e._v(" "),t("p",{attrs:{id:"ldap_expert_uuid_user_attr"}},[e._v("\n\t\t\t"+e._s(n.t("user_ldap","By default, the UUID attribute is automatically detected. The UUID attribute is used to doubtlessly identify LDAP users and groups. Also, the internal username will be created based on the UUID, if not specified otherwise above. You can override the setting and pass an attribute of your choice. You must make sure that the attribute of your choice can be fetched for both users and groups and it is unique. Leave it empty for default behavior. Changes will have effect only on newly mapped (added) LDAP users and groups."))+"\n\t\t")]),e._v(" "),t(n.NcTextField,{attrs:{"aria-describedby":"ldap_expert_uuid_user_attr",autocomplete:"off",label:n.t("user_ldap","UUID Attribute for Users"),value:n.ldapConfigProxy.ldapExpertUUIDUserAttr},nativeOn:{change:function(e){return(e=>n.ldapConfigProxy.ldapExpertUUIDUserAttr=e.target.value).apply(null,arguments)}}}),e._v(" "),t(n.NcTextField,{attrs:{autocomplete:"off",label:n.t("user_ldap","UUID Attribute for Groups"),value:n.ldapConfigProxy.ldapExpertUUIDGroupAttr},nativeOn:{change:function(e){return(e=>n.ldapConfigProxy.ldapExpertUUIDGroupAttr=e.target.value).apply(null,arguments)}}})],1)])},[],!1,null,"1b8d07c0",null).exports,Qa=(0,o.pM)({__name:"GroupsTab",props:{configId:null},setup(e){const t=e,n=Ra(),{ldapConfigs:a}=(0,i.bP)(n),r=(0,o.EW)(()=>n.getConfigProxy(t.configId,{ldapGroupFilterObjectclass:g,ldapGroupFilterGroups:g})),s=(0,Pn.F)().theming.name,c=(0,o.KR)(void 0),d=(0,o.KR)([]),u=(0,o.KR)([]),p=(0,o.KR)(!1),A=(0,o.EW)({get:()=>r.value.ldapGroupFilterObjectclass.split(";").filter(e=>""!==e),set(e){r.value.ldapGroupFilterObjectclass=e.join(";")}}),f=(0,o.EW)({get:()=>r.value.ldapGroupFilterGroups.split(";").filter(e=>""!==e),set(e){r.value.ldapGroupFilterGroups=e.join(";")}});async function v(){const e=await za("determineGroupObjectClasses",t.configId);d.value=e.options.ldap_groupfilter_objectclass;const n=await za("determineGroupsForGroups",t.configId);u.value=n.options.ldap_groupfilter_groups}async function g(){const e=await za("getGroupFilter",t.configId);a.value[t.configId].ldapGroupFilter=e.changes.ldap_group_filter}return v(),{__sfc:!0,props:t,ldapConfigsStore:n,ldapConfigs:a,ldapConfigProxy:r,instanceName:s,groupsCountLabel:c,groupObjectClasses:d,groupGroups:u,loadingGroupCount:p,ldapGroupFilterObjectclass:A,ldapGroupFilterGroups:f,init:v,getGroupFilter:g,countGroups:async function(){try{p.value=!0;const e=await za("countGroups",t.configId);c.value=e.changes.ldap_group_count}finally{p.value=!1}},toggleFilterMode:async function(e){r.value.ldapGroupFilterMode=e?"1":await Oa()?"0":"1"},t:l.t,NcButton:Ce.N,NcCheckboxRadioSwitch:zt.N,NcLoadingIcon:Be.A,NcSelect:ea.N,NcTextArea:ba.N}}});var Ka=a(49328),Za={};Za.styleTagTransform=_(),Za.setAttributes=h(),Za.insert=v().bind(null,"head"),Za.domAPI=A(),Za.insertStyleElement=b(),u()(Ka.A,Za),Ka.A&&Ka.A.locals&&Ka.A.locals;const Ja=(0,Ua.A)(Qa,function(){var e=this,t=e._self._c,n=e._self._setupProxy;return t("fieldset",{staticClass:"ldap-wizard__groups"},[t("legend",[e._v("\n\t\t"+e._s(n.t("user_ldap","Groups meeting these criteria are available in {instanceName}:",{instanceName:n.instanceName}))+"\n\t")]),e._v(" "),t("div",{staticClass:"ldap-wizard__groups__line ldap-wizard__groups__filter-selection"},[t(n.NcSelect,{staticClass:"ldap-wizard__groups__group-filter-groups__select",attrs:{options:n.groupObjectClasses,disabled:"1"===n.ldapConfigProxy.ldapGroupFilterMode,"input-label":n.t("user_ldap","Only these object classes:"),multiple:!0},model:{value:n.ldapGroupFilterObjectclass,callback:function(e){n.ldapGroupFilterObjectclass=e},expression:"ldapGroupFilterObjectclass"}}),e._v(" "),t(n.NcSelect,{staticClass:"ldap-wizard__groups__group-filter-groups__select",attrs:{options:n.groupGroups,disabled:"1"===n.ldapConfigProxy.ldapGroupFilterMode,"input-label":n.t("user_ldap","Only from these groups:"),multiple:!0},model:{value:n.ldapGroupFilterGroups,callback:function(e){n.ldapGroupFilterGroups=e},expression:"ldapGroupFilterGroups"}})],1),e._v(" "),t("div",{staticClass:"ldap-wizard__groups__line ldap-wizard__groups__groups-filter"},[t(n.NcCheckboxRadioSwitch,{attrs:{checked:"1"===n.ldapConfigProxy.ldapGroupFilterMode},on:{"update:checked":n.toggleFilterMode}},[e._v("\n\t\t\t"+e._s(n.t("user_ldap","Edit LDAP Query"))+"\n\t\t")]),e._v(" "),"1"===n.ldapConfigProxy.ldapGroupFilterMode?t("div",[t(n.NcTextArea,{attrs:{value:n.ldapConfigProxy.ldapGroupFilter,placeholder:n.t("user_ldap","Edit LDAP Query"),"helper-text":n.t("user_ldap","The filter specifies which LDAP groups shall have access to the {instanceName} instance.",{instanceName:n.instanceName})},on:{"update:value":function(t){return e.$set(n.ldapConfigProxy,"ldapGroupFilter",t)}}})],1):t("div",[t("span",[e._v(e._s(n.t("user_ldap","LDAP Filter:")))]),e._v(" "),t("code",[e._v(e._s(n.ldapConfigProxy.ldapGroupFilter))])])],1),e._v(" "),t("div",{staticClass:"ldap-wizard__groups__line ldap-wizard__groups__groups-count-check"},[t(n.NcButton,{attrs:{disabled:n.loadingGroupCount},on:{click:n.countGroups}},[e._v("\n\t\t\t"+e._s(n.t("user_ldap","Verify settings and count the groups"))+"\n\t\t")]),e._v(" "),n.loadingGroupCount?t(n.NcLoadingIcon,{attrs:{size:20}}):e._e(),e._v(" "),void 0===n.groupsCountLabel||n.loadingGroupCount?e._e():t("span",[e._v(e._s(n.groupsCountLabel))])],1)])},[],!1,null,"3200ed48",null).exports,er=(0,o.pM)({__name:"LoginTab",props:{configId:null},setup(e){const t=e,n=Ra(),{ldapConfigs:a}=(0,i.bP)(n),r=(0,o.EW)(()=>n.getConfigProxy(t.configId,{ldapLoginFilterAttributes:v,ldapLoginFilterUsername:v,ldapLoginFilterEmail:v})),s=(0,Pn.F)().theming.name,c=(0,o.KR)(""),d=(0,o.KR)([]),u=(0,o.EW)({get:()=>r.value.ldapLoginFilterAttributes.split(";").filter(e=>""!==e),set(e){r.value.ldapLoginFilterAttributes=e.join(";")}}),p=(0,o.EW)(()=>"1"===r.value.ldapLoginFilterMode),A=(0,o.EW)(()=>d.value.filter(e=>!u.value.includes(e)));async function f(){const e=await za("determineAttributes",t.configId);d.value=e.options.ldap_loginfilter_attributes}async function v(){if("0"===r.value.ldapLoginFilterMode){const e=await za("getUserLoginFilter",t.configId);a.value[t.configId].ldapLoginFilter=e.changes.ldap_login_filter}}return f(),{__sfc:!0,props:t,ldapConfigsStore:n,ldapConfigs:a,ldapConfigProxy:r,instanceName:s,testUsername:c,loginFilterOptions:d,ldapLoginFilterAttributes:u,ldapLoginFilterMode:p,filteredLoginFilterOptions:A,init:f,getUserLoginFilter:v,verifyLoginName:async function(){try{const e=await za("testLoginName",t.configId,{ldap_test_loginname:c.value}),n=e.changes.ldap_test_loginname,a=e.changes.ldap_test_effective_filter;n<1?(0,Da.Qg)((0,l.t)("user_ldap","User not found. Please check your login attributes and username. Effective filter (to copy-and-paste for command-line validation): {filter}",{filter:a})):1===n?(0,Da.Te)((0,l.t)("user_ldap","User found and settings verified.")):n>1&&(0,Da.I9)((0,l.t)("user_ldap","Consider narrowing your search, as it encompassed many users, only the first one of whom will be able to log in."))}catch(e){switch(e??(0,l.t)("user_ldap","An unspecified error occurred. Please check log and settings.")){case"Bad search filter":(0,Da.Qg)((0,l.t)("user_ldap","The search filter is invalid, probably due to syntax issues like uneven number of opened and closed brackets. Please revise."));break;case"connection error":(0,Da.Qg)((0,l.t)("user_ldap","A connection error to LDAP/AD occurred. Please check host, port and credentials."));break;case"missing placeholder":(0,Da.Qg)((0,l.t)("user_ldap",'The "%uid" placeholder is missing. It will be replaced with the login name when querying LDAP/AD.'))}}},toggleFilterMode:async function(e){r.value.ldapLoginFilterMode=e?"1":await Oa()?"0":"1"},t:l.t,NcButton:Ce.N,NcCheckboxRadioSwitch:zt.N,NcSelect:ea.N,NcTextArea:ba.N,NcTextField:ta.N}}});var tr=a(34810),nr={};nr.styleTagTransform=_(),nr.setAttributes=h(),nr.insert=v().bind(null,"head"),nr.domAPI=A(),nr.insertStyleElement=b(),u()(tr.A,nr),tr.A&&tr.A.locals&&tr.A.locals;const ar=(0,Ua.A)(er,function(){var e=this,t=e._self._c,n=e._self._setupProxy;return t("fieldset",{staticClass:"ldap-wizard__login"},[t("legend",[e._v("\n\t\t"+e._s(n.t("user_ldap","When logging in, {instanceName} will find the user based on the following attributes:",{instanceName:n.instanceName}))+"\n\t")]),e._v(" "),t("div",{staticClass:"ldap-wizard__login__line ldap-wizard__login__login-attributes"},[t(n.NcSelect,{attrs:{"keep-open":"",disabled:n.ldapLoginFilterMode,options:n.filteredLoginFilterOptions,"input-label":n.t("user_ldap","Other Attributes:"),multiple:!0},model:{value:n.ldapLoginFilterAttributes,callback:function(e){n.ldapLoginFilterAttributes=e},expression:"ldapLoginFilterAttributes"}})],1),e._v(" "),t("div",{staticClass:"ldap-wizard__login__line ldap-wizard__login__user-login-filter"},[t(n.NcCheckboxRadioSwitch,{attrs:{"model-value":n.ldapLoginFilterMode},on:{"update:checked":n.toggleFilterMode}},[e._v("\n\t\t\t"+e._s(n.t("user_ldap","Edit LDAP Query"))+"\n\t\t")]),e._v(" "),n.ldapLoginFilterMode?t(n.NcTextArea,{attrs:{value:n.ldapConfigProxy.ldapLoginFilter,placeholder:n.t("user_ldap","Edit LDAP Query"),"helper-text":n.t("user_ldap","Defines the filter to apply, when login is attempted. `%%uid` replaces the username in the login action. Example: `uid=%%uid`")},nativeOn:{change:function(e){return(e=>n.ldapConfigProxy.ldapLoginFilter=e.target.value).apply(null,arguments)}}}):t("div",[t("span",[e._v(e._s(n.t("user_ldap","LDAP Filter:")))]),e._v(" "),t("code",[e._v(e._s(n.ldapConfigProxy.ldapLoginFilter))])])],1),e._v(" "),t("div",{staticClass:"ldap-wizard__login__line"},[t(n.NcTextField,{attrs:{"helper-text":n.t("user_ldap","Attempts to receive a DN for the given login name and the current login filter"),placeholder:n.t("user_ldap","Test Login name"),autocomplete:"off"},model:{value:n.testUsername,callback:function(e){n.testUsername=e},expression:"testUsername"}}),e._v(" "),t(n.NcButton,{attrs:{disabled:0===n.testUsername.length},on:{click:n.verifyLoginName}},[e._v("\n\t\t\t"+e._s(n.t("user_ldap","Verify settings"))+"\n\t\t")])],1)])},[],!1,null,"4b9d7382",null).exports;var rr=a(31773);const ir={name:"DeleteIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},or=(0,Ua.A)(ir,function(){var e=this,t=e._self._c;return t("span",e._b({staticClass:"material-design-icon delete-icon",attrs:{"aria-hidden":e.title?null:"true","aria-label":e.title,role:"img"},on:{click:function(t){return e.$emit("click",t)}}},"span",e.$attrs,!1),[t("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 24 24"}},[t("path",{attrs:{d:"M19,4H15.5L14.5,3H9.5L8.5,4H5V6H19M6,19A2,2 0 0,0 8,21H16A2,2 0 0,0 18,19V7H6V19Z"}},[e.title?t("title",[e._v(e._s(e.title))]):e._e()])])])},[],!1,null,null,null).exports,sr=(0,o.pM)({__name:"ServerTab",props:{configId:null},setup(e){const t=e,n=Ra(),{ldapConfigs:a}=(0,i.bP)(n),r=(0,o.EW)(()=>n.getConfigProxy(t.configId)),s=(0,o.KR)(!1),c=(0,o.KR)(!1),d=(0,o.KR)(!1),u=(0,o.KR)(r.value.ldapAgentName),p=(0,o.KR)(r.value.ldapAgentPassword),A=(0,o.EW)(()=>r.value.ldapAgentName!==u.value||r.value.ldapAgentPassword!==p.value);return{__sfc:!0,props:t,ldapConfigsStore:n,ldapConfigs:a,ldapConfigProxy:r,loadingGuessPortAndTLS:s,loadingCountInBaseDN:c,loadingGuessBaseDN:d,localLdapAgentName:u,localLdapAgentPassword:p,needsToSaveCredentials:A,updateCredentials:function(){r.value.ldapAgentName=u.value,r.value.ldapAgentPassword=p.value},guessPortAndTLS:async function(){try{s.value=!0;const{changes:e}=await za("guessPortAndTLS",t.configId);a.value[t.configId].ldapPort=e.ldap_port??""}finally{s.value=!1}},guessBaseDN:async function(){try{d.value=!0;const{changes:e}=await za("guessBaseDN",t.configId);a.value[t.configId].ldapBase=e.ldap_base??""}finally{d.value=!1}},countInBaseDN:async function(){try{c.value=!0;const{changes:e}=await za("countInBaseDN",t.configId),n=e.ldap_test_base;n<1?(0,Da.cf)((0,l.t)("user_ldap","No object found in the given Base DN. Please revise.")):n>1e3?(0,Da.cf)((0,l.t)("user_ldap","More than 1,000 directory entries available.")):(0,Da.cf)((0,l.n)("user_ldap","{ldapTestBase} entry available within the provided Base DN","{ldapTestBase} entries available within the provided Base DN",n,{ldapTestBase:n}))}finally{c.value=!1}},t:l.t,NcButton:Ce.N,NcCheckboxRadioSwitch:zt.N,NcTextArea:ba.N,NcTextField:ta.N,ContentCopy:rr.A,Delete:or}}});var lr=a(25706),cr={};cr.styleTagTransform=_(),cr.setAttributes=h(),cr.insert=v().bind(null,"head"),cr.domAPI=A(),cr.insertStyleElement=b(),u()(lr.A,cr),lr.A&&lr.A.locals&&lr.A.locals;const dr=(0,Ua.A)(sr,function(){var e=this,t=e._self._c,n=e._self._setupProxy;return t("fieldset",{staticClass:"ldap-wizard__server"},[t("div",{staticClass:"ldap-wizard__server__line"},[t(n.NcCheckboxRadioSwitch,{attrs:{checked:"1"===n.ldapConfigProxy.ldapConfigurationActive,type:"switch","aria-label":n.t("user_ldap","When unchecked, this configuration will be skipped.")},on:{"update:checked":function(e){n.ldapConfigProxy.ldapConfigurationActive=e?"1":"0"}}},[e._v("\n\t\t\t"+e._s(n.t("user_ldap","Configuration Active"))+"\n\t\t")]),e._v(" "),t(n.NcButton,{attrs:{title:n.t("user_ldap","Copy current configuration into new directory binding")},on:{click:function(t){return n.ldapConfigsStore.copyConfig(e.configId)}},scopedSlots:e._u([{key:"icon",fn:function(){return[t(n.ContentCopy,{attrs:{size:20}})]},proxy:!0}])},[e._v("\n\t\t\t"+e._s(n.t("user_ldap","Copy configuration"))+"\n\t\t")]),e._v(" "),t(n.NcButton,{attrs:{variant:"error"},on:{click:function(t){return n.ldapConfigsStore.removeConfig(e.configId)}},scopedSlots:e._u([{key:"icon",fn:function(){return[t(n.Delete,{attrs:{size:20}})]},proxy:!0}])},[e._v("\n\t\t\t"+e._s(n.t("user_ldap","Delete configuration"))+"\n\t\t")])],1),e._v(" "),t("div",{staticClass:"ldap-wizard__server__line"},[t(n.NcTextField,{attrs:{value:n.ldapConfigProxy.ldapHost,"helper-text":n.t("user_ldap","You can omit the protocol, unless you require SSL. If so, start with ldaps://"),placeholder:n.t("user_ldap","Host"),autocomplete:"off"},nativeOn:{change:function(e){return(e=>n.ldapConfigProxy.ldapHost=e.target.value).apply(null,arguments)}}}),e._v(" "),t("div",{staticClass:"ldap-wizard__server__host__port"},[t(n.NcTextField,{attrs:{value:n.ldapConfigProxy.ldapPort,placeholder:n.t("user_ldap","Port"),type:"number",autocomplete:"off"},nativeOn:{change:function(e){return(e=>n.ldapConfigProxy.ldapPort=e.target.value).apply(null,arguments)}}}),e._v(" "),t(n.NcButton,{attrs:{disabled:n.loadingGuessPortAndTLS},on:{click:n.guessPortAndTLS}},[e._v("\n\t\t\t\t"+e._s(n.t("user_ldap","Detect Port"))+"\n\t\t\t")])],1)],1),e._v(" "),t("div",{staticClass:"ldap-wizard__server__line"},[t(n.NcTextField,{attrs:{"helper-text":n.t("user_ldap","The DN of the client user with which the bind shall be done, e.g. uid=agent,dc=example,dc=com. For anonymous access, leave DN and Password empty."),placeholder:n.t("user_ldap","User DN"),autocomplete:"off"},model:{value:n.localLdapAgentName,callback:function(e){n.localLdapAgentName=e},expression:"localLdapAgentName"}})],1),e._v(" "),t("div",{staticClass:"ldap-wizard__server__line"},[t(n.NcTextField,{attrs:{type:"password","helper-text":n.t("user_ldap","For anonymous access, leave DN and Password empty."),placeholder:n.t("user_ldap","Password"),autocomplete:"off"},model:{value:n.localLdapAgentPassword,callback:function(e){n.localLdapAgentPassword=e},expression:"localLdapAgentPassword"}}),e._v(" "),t(n.NcButton,{attrs:{disabled:!n.needsToSaveCredentials},on:{click:n.updateCredentials}},[e._v("\n\t\t\t"+e._s(n.t("user_ldap","Save Credentials"))+"\n\t\t")])],1),e._v(" "),t("div",{staticClass:"ldap-wizard__server__line"},[t(n.NcTextArea,{attrs:{label:n.t("user_ldap","Base DN"),value:n.ldapConfigProxy.ldapBase,placeholder:n.t("user_ldap","One Base DN per line"),"helper-text":n.t("user_ldap","You can specify Base DN for users and groups in the Advanced tab")},nativeOn:{change:function(e){return(e=>n.ldapConfigProxy.ldapBase=e.target.value).apply(null,arguments)}}}),e._v(" "),t(n.NcButton,{attrs:{disabled:n.loadingGuessBaseDN},on:{click:n.guessBaseDN}},[e._v("\n\t\t\t"+e._s(n.t("user_ldap","Detect Base DN"))+"\n\t\t")]),e._v(" "),t(n.NcButton,{attrs:{disabled:n.loadingCountInBaseDN},on:{click:n.countInBaseDN}},[e._v("\n\t\t\t"+e._s(n.t("user_ldap","Test Base DN"))+"\n\t\t")])],1)])},[],!1,null,"d79b8f6a",null).exports,ur=(0,o.pM)({__name:"UsersTab",props:{configId:null},setup(e){const t=e,n=Ra(),{ldapConfigs:a}=(0,i.bP)(n),r=(0,o.EW)(()=>n.getConfigProxy(t.configId,{ldapUserFilterObjectclass:g,ldapUserFilterGroups:g})),s=(0,o.KR)(void 0),c=(0,o.KR)(!1),d=(0,Pn.F)().theming.name,u=(0,o.KR)([]),p=(0,o.KR)([]),A=(0,o.EW)({get:()=>r.value.ldapUserFilterObjectclass?.split(";").filter(e=>""!==e)??[],set(e){r.value.ldapUserFilterObjectclass=e.join(";")}}),f=(0,o.EW)({get:()=>r.value.ldapUserFilterGroups.split(";").filter(e=>""!==e),set(e){r.value.ldapUserFilterGroups=e.join(";")}});async function v(){const e=await za("determineUserObjectClasses",t.configId);u.value=e.options.ldap_userfilter_objectclass,a.value[t.configId].ldapUserFilterObjectclass=e.changes.ldap_userfilter_objectclass?.join(";")??"";const n=await za("determineGroupsForUsers",t.configId);p.value=n.options.ldap_userfilter_groups,a.value[t.configId].ldapUserFilterGroups=n.changes.ldap_userfilter_groups?.join(";")??""}async function g(){if("0"===r.value.ldapUserFilterMode){const e=await za("getUserListFilter",t.configId);a.value[t.configId].ldapUserFilter=e.changes.ldap_userlist_filter;const n=await za("getUserLoginFilter",t.configId);a.value[t.configId].ldapLoginFilter=n.changes.ldap_userlogin_filter}}return v(),{__sfc:!0,props:t,ldapConfigsStore:n,ldapConfigs:a,ldapConfigProxy:r,usersCount:s,loadingUserCount:c,instanceName:d,userObjectClasses:u,userGroups:p,ldapUserFilterObjectclass:A,ldapUserFilterGroups:f,init:v,reloadFilters:g,countUsers:async function(){try{c.value=!0;const e=await za("countUsers",t.configId);s.value=e.changes.ldap_user_count}finally{c.value=!1}},toggleFilterMode:async function(e){r.value.ldapUserFilterMode=e?"1":await Oa()?"0":"1"},t:l.t,NcButton:Ce.N,NcCheckboxRadioSwitch:zt.N,NcLoadingIcon:Be.A,NcSelect:ea.N,NcTextArea:ba.N}}});var pr=a(23441),Ar={};Ar.styleTagTransform=_(),Ar.setAttributes=h(),Ar.insert=v().bind(null,"head"),Ar.domAPI=A(),Ar.insertStyleElement=b(),u()(pr.A,Ar),pr.A&&pr.A.locals&&pr.A.locals;const fr=(0,Ua.A)(ur,function(){var e=this,t=e._self._c,n=e._self._setupProxy;return t("fieldset",{staticClass:"ldap-wizard__users"},[e._v("\n\t"+e._s(n.t("user_ldap","Listing and searching for users is constrained by these criteria:"))+"\n\n\t"),t("div",{staticClass:"ldap-wizard__users__line ldap-wizard__users__user-filter-object-class"},[t(n.NcSelect,{staticClass:"ldap-wizard__users__user-filter-object-class__select",attrs:{disabled:"1"===n.ldapConfigProxy.ldapUserFilterMode,options:n.userObjectClasses,"input-label":n.t("user_ldap","Only these object classes:"),multiple:!0},model:{value:n.ldapUserFilterObjectclass,callback:function(e){n.ldapUserFilterObjectclass=e},expression:"ldapUserFilterObjectclass"}}),e._v("\n\t\t"+e._s(n.t("user_ldap","The most common object classes for users are organizationalPerson, person, user, and inetOrgPerson. If you are not sure which object class to select, please consult your directory admin."))+"\n\t")],1),e._v(" "),t("div",{staticClass:"ldap-wizard__users__line ldap-wizard__users__user-filter-groups"},[t(n.NcSelect,{staticClass:"ldap-wizard__users__user-filter-groups__select",attrs:{disabled:"1"===n.ldapConfigProxy.ldapUserFilterMode,options:n.userGroups,"input-label":n.t("user_ldap","Only from these groups:"),multiple:!0},model:{value:n.ldapUserFilterGroups,callback:function(e){n.ldapUserFilterGroups=e},expression:"ldapUserFilterGroups"}})],1),e._v(" "),t("div",{staticClass:"ldap-wizard__users__line ldap-wizard__users__user-filter"},[t(n.NcCheckboxRadioSwitch,{attrs:{checked:"1"===n.ldapConfigProxy.ldapUserFilterMode},on:{"update:checked":n.toggleFilterMode}},[e._v("\n\t\t\t"+e._s(n.t("user_ldap","Edit LDAP Query"))+"\n\t\t")]),e._v(" "),"1"===n.ldapConfigProxy.ldapUserFilterMode?t("div",[t(n.NcTextArea,{attrs:{value:n.ldapConfigProxy.ldapUserFilter,placeholder:n.t("user_ldap","Edit LDAP Query"),"helper-text":n.t("user_ldap","The filter specifies which LDAP users shall have access to the {instanceName} instance.",{instanceName:n.instanceName})},on:{"update:value":function(t){return e.$set(n.ldapConfigProxy,"ldapUserFilter",t)}}})],1):t("div",[t("label",[e._v(e._s(n.t("user_ldap","LDAP Filter:")))]),e._v(" "),t("code",[e._v(e._s(n.ldapConfigProxy.ldapUserFilter))])])],1),e._v(" "),t("div",{staticClass:"ldap-wizard__users__line ldap-wizard__users__user-count-check"},[t(n.NcButton,{attrs:{disabled:n.loadingUserCount},on:{click:n.countUsers}},[e._v("\n\t\t\t"+e._s(n.t("user_ldap","Verify settings and count users"))+"\n\t\t")]),e._v(" "),n.loadingUserCount?t(n.NcLoadingIcon,{attrs:{size:16}}):e._e(),e._v(" "),void 0===n.usersCount||n.loadingUserCount?e._e():t("span",[e._v(e._s(n.t("user_ldap","User count: {usersCount}",{usersCount:n.usersCount},{escape:!1})))])],1)])},[],!1,null,"47c76aa2",null).exports,vr=(0,o.pM)({__name:"WizardControls",props:{configId:null},setup(e){const t=e,n=Ra(),{updatingConfig:a}=(0,i.bP)(n),r=(0,o.KR)(!1),s=(0,o.KR)(null),c=(0,o.EW)(()=>"success"===s.value?.status);return(0,o.wB)(a,()=>{s.value=null}),{__sfc:!0,props:t,ldapConfigsStore:n,updatingConfig:a,loading:r,result:s,isValide:c,testSelectedConfig:async function(){try{r.value=!0,s.value=await async function(e){const t=new FormData;t.set("ldap_serverconfig_chooser",e);const n=await ze.Ay.post(Ta().join(Ga,"testConfiguration.php"),t);return Fa.debug("Configuration is "+("success"===n.data.status?"valide":"invalide"),{configId:e,params:t,response:n}),n.data}(t.configId)}finally{r.value=!1}},t:l.t,NcButton:Ce.N,NcLoadingIcon:Be.A,Information:rr.A}}});var gr=a(51214),hr={};hr.styleTagTransform=_(),hr.setAttributes=h(),hr.insert=v().bind(null,"head"),hr.domAPI=A(),hr.insertStyleElement=b(),u()(gr.A,hr),gr.A&&gr.A.locals&&gr.A.locals;const mr=(0,Ua.A)(vr,function(){var e=this,t=e._self._c,n=e._self._setupProxy;return t("div",{staticClass:"ldap-wizard__controls"},[t(n.NcButton,{attrs:{variant:"primary",disabled:n.loading},on:{click:n.testSelectedConfig}},[e._v("\n\t\t"+e._s(n.t("user_ldap","Test Configuration"))+"\n\t")]),e._v(" "),t(n.NcButton,{attrs:{variant:"tertiary",href:"https://docs.nextcloud.com/server/stable/go.php?to=admin-ldap",target:"_blank",rel:"noreferrer noopener"},scopedSlots:e._u([{key:"icon",fn:function(){return[t(n.Information,{attrs:{size:20}})]},proxy:!0}])},[e._v(" "),t("span",[e._v(e._s(n.t("user_ldap","Help")))])]),e._v(" "),null===n.result||n.loading?e._e():[t("span",{staticClass:"ldap-wizard__controls__state_indicator",class:{"ldap-wizard__controls__state_indicator--valid":n.isValide}}),e._v(" "),t("span",{staticClass:"ldap-wizard__controls__state_message"},[e._v("\n\t\t\t"+e._s(n.result.message)+"\n\t\t")])],e._v(" "),n.loading?t(n.NcLoadingIcon,{attrs:{size:16}}):e._e()],2)},[],!1,null,"d316db68",null).exports,br=(0,o.pM)({__name:"Settings",setup(e){const t=(0,s.C)("user_ldap","ldapModuleInstalled"),n={server:(0,l.t)("user_ldap","Server"),users:(0,l.t)("user_ldap","Users"),login:(0,l.t)("user_ldap","Login Attributes"),groups:(0,l.t)("user_ldap","Groups"),advanced:(0,l.t)("user_ldap","Advanced"),expert:(0,l.t)("user_ldap","Expert")},a=Ra(),{ldapConfigs:r,selectedConfigId:c,selectedConfig:d}=(0,i.bP)(a),u=(0,o.KR)("server"),p=(0,o.KR)(!1),A=(0,o.EW)(()=>""!==d.value.ldapHost&&""!==d.value.ldapPort&&""!==d.value.ldapBase&&""!==d.value.ldapAgentName&&""!==d.value.ldapAgentPassword);return{__sfc:!0,ldapModuleInstalled:t,tabs:n,ldapConfigsStore:a,ldapConfigs:r,selectedConfigId:c,selectedConfig:d,selectedTab:u,clearMappingLoading:p,selectedConfigHasServerInfo:A,requestClearMapping:async function(e){try{p.value=!0,await async function(e){if(!await ja((0,l.t)("user_ldap","Confirm action"),(0,l.t)("user_ldap","Are you sure you want to permanently clear the LDAP mapping? This cannot be undone.")))return!1;const t=new FormData;t.set("ldap_clear_mapping",e);const n=await ze.Ay.post(Ta().join(Ga,"clearMappings.php"),t);"success"===n.data.status?(Fa.debug("Cleared mapping",{subject:e,params:t,response:n}),(0,Da.Te)((0,l.t)("user_ldap","Mapping cleared"))):(0,Da.Qg)((0,l.t)("user_ldap","Failed to clear mapping"))}(e)}finally{p.value=!1}},t:l.t,NcButton:Ce.N,NcCheckboxRadioSwitch:zt.N,NcNoteCard:mn.A,NcSelect:ea.N,Plus:Ia.A,AdvancedTab:$a,ExpertTab:Ya,GroupsTab:Ja,LoginTab:ar,ServerTab:dr,UsersTab:fr,WizardControls:mr}}});var Cr=a(87932),_r={};_r.styleTagTransform=_(),_r.setAttributes=h(),_r.insert=v().bind(null,"head"),_r.domAPI=A(),_r.insertStyleElement=b(),u()(Cr.A,_r),Cr.A&&Cr.A.locals&&Cr.A.locals;const yr=(0,Ua.A)(br,function(){var e=this,t=e._self._c,n=e._self._setupProxy;return t("form",{staticClass:"ldap-wizard"},[t("h2",[e._v(e._s(n.t("user_ldap","LDAP/AD integration")))]),e._v(" "),n.ldapModuleInstalled?e._e():t(n.NcNoteCard,{attrs:{type:"warning",text:n.t("user_ldap","The PHP LDAP module is not installed, the backend will not work. Please ask your system administrator to install it.")}}),e._v(" "),n.ldapModuleInstalled?[t("div",{staticClass:"ldap-wizard__config-selection"},[void 0!==n.selectedConfigId?t(n.NcSelect,{attrs:{options:Object.keys(n.ldapConfigs),"input-label":n.t("user_ldap","Select LDAP Config")},scopedSlots:e._u([{key:"option",fn:function({label:t}){return[e._v("\n\t\t\t\t\t"+e._s(`${t}: ${n.ldapConfigs[t].ldapHost}`)+"\n\t\t\t\t")]}},{key:"selected-option",fn:function({label:t}){return[e._v("\n\t\t\t\t\t"+e._s(`${t}: ${n.ldapConfigs[t].ldapHost}`)+"\n\t\t\t\t")]}}],null,!1,2170402317),model:{value:n.selectedConfigId,callback:function(e){n.selectedConfigId=e},expression:"selectedConfigId"}}):e._e(),e._v(" "),t(n.NcButton,{staticClass:"ldap-wizard__config-selection__create-button",attrs:{label:n.t("user_ldap","Create New Config")},on:{click:n.ldapConfigsStore.create},scopedSlots:e._u([{key:"icon",fn:function(){return[t(n.Plus,{attrs:{size:20}})]},proxy:!0}],null,!1,1086138354)},[e._v("\n\t\t\t\t"+e._s(n.t("user_ldap","Create configuration"))+"\n\t\t\t")])],1),e._v(" "),void 0!==n.selectedConfigId?t("div",{staticClass:"ldap-wizard__tab-container"},[t("div",{staticClass:"ldap-wizard__tab-selection-container"},[t("div",{staticClass:"ldap-wizard__tab-selection"},e._l(n.tabs,function(a,r){return t(n.NcCheckboxRadioSwitch,{key:r,attrs:{"button-variant":!0,checked:n.selectedTab,value:r,type:"radio",disabled:"server"!==r&&!n.selectedConfigHasServerInfo,"button-variant-grouped":"horizontal"},on:{"update:checked":function(e){n.selectedTab=e}}},[e._v("\n\t\t\t\t\t\t"+e._s(a)+"\n\t\t\t\t\t")])}),1)]),e._v(" "),"server"===n.selectedTab?t(n.ServerTab,{attrs:{"config-id":n.selectedConfigId}}):"users"===n.selectedTab?t(n.UsersTab,{attrs:{"config-id":n.selectedConfigId}}):"login"===n.selectedTab?t(n.LoginTab,{attrs:{"config-id":n.selectedConfigId}}):"groups"===n.selectedTab?t(n.GroupsTab,{attrs:{"config-id":n.selectedConfigId}}):"expert"===n.selectedTab?t(n.ExpertTab,{attrs:{"config-id":n.selectedConfigId}}):"advanced"===n.selectedTab?t(n.AdvancedTab,{attrs:{"config-id":n.selectedConfigId}}):e._e(),e._v(" "),t(n.WizardControls,{staticClass:"ldap-wizard__controls",attrs:{"config-id":n.selectedConfigId}})],1):e._e(),e._v(" "),t("div",{staticClass:"ldap-wizard__clear-mapping"},[t("strong",[e._v(e._s(n.t("user_ldap","Username-LDAP User Mapping")))]),e._v("\n\t\t\t"+e._s(n.t("user_ldap","Usernames are used to store and assign metadata. In order to precisely identify and recognize users, each LDAP user will have an internal username. This requires a mapping from username to LDAP user. The created username is mapped to the UUID of the LDAP user. Additionally the DN is cached as well to reduce LDAP interaction, but it is not used for identification. If the DN changes, the changes will be found. The internal username is used all over. Clearing the mappings will have leftovers everywhere. Clearing the mappings is not configuration sensitive, it affects all LDAP configurations! Never clear the mappings in a production environment, only in a testing or experimental stage."))+"\n\n\t\t\t"),t("div",{staticClass:"ldap-wizard__clear-mapping__buttons"},[t(n.NcButton,{attrs:{variant:"error",disabled:n.clearMappingLoading},on:{click:function(e){return n.requestClearMapping("user")}}},[e._v("\n\t\t\t\t\t"+e._s(n.t("user_ldap","Clear Username-LDAP User Mapping"))+"\n\t\t\t\t")]),e._v(" "),t(n.NcButton,{attrs:{variant:"error",disabled:n.clearMappingLoading},on:{click:function(e){return n.requestClearMapping("group")}}},[e._v("\n\t\t\t\t\t"+e._s(n.t("user_ldap","Clear Groupname-LDAP Group Mapping"))+"\n\t\t\t\t")])],1)])]:e._e()],2)},[],!1,null,"51715f32",null).exports,xr=(0,o.pM)({__name:"LDAPSettingsApp",setup:e=>({__sfc:!0,Settings:yr})}),Er=(0,Ua.A)(xr,function(){return(0,this._self._c)(this._self._setupProxy.Settings)},[],!1,null,null,null).exports,kr=(0,i.Ey)();a.nc=(0,r.aV)(),o.Ay.use(i.R2),new(o.Ay.extend(Er))({name:"LDAPSettingsApp",pinia:kr}).$mount("#content-ldap-settings")},51069:()=>{},51214:(e,t,n)=>{"use strict";n.d(t,{A:()=>s});var a=n(71354),r=n.n(a),i=n(76314),o=n.n(i)()(r());o.push([e.id,".ldap-wizard__controls[data-v-d316db68]{display:flex;gap:16px;align-items:center;min-height:45px}.ldap-wizard__controls>*[data-v-d316db68]{flex-shrink:0}.ldap-wizard__controls__state_message[data-v-d316db68]{flex-shrink:1}.ldap-wizard__controls__state_indicator[data-v-d316db68]{width:16px;height:16px;border-radius:100%;background-color:var(--color-element-error)}.ldap-wizard__controls__state_indicator--valid[data-v-d316db68]{background-color:var(--color-element-success)}","",{version:3,sources:["webpack://./apps/user_ldap/src/components/WizardControls.vue"],names:[],mappings:"AACA,wCACC,YAAA,CACA,QAAA,CACA,kBAAA,CACA,eAAA,CAEA,0CACC,aAAA,CAGD,uDACC,aAAA,CAGD,yDACC,UAAA,CACA,WAAA,CACA,kBAAA,CACA,2CAAA,CAEA,gEACC,6CAAA",sourcesContent:["\n.ldap-wizard__controls {\n\tdisplay: flex;\n\tgap: 16px;\n\talign-items: center;\n\tmin-height: 45px; // Prevents jumping when the message length need two lines.\n\n\t& > * {\n\t\tflex-shrink: 0;\n\t}\n\n\t&__state_message {\n\t\tflex-shrink: 1;\n\t}\n\n\t&__state_indicator {\n\t\twidth: 16px;\n\t\theight: 16px;\n\t\tborder-radius: 100%;\n\t\tbackground-color: var(--color-element-error);\n\n\t\t&--valid {\n\t\t\tbackground-color: var(--color-element-success);\n\t\t}\n\t}\n}\n"],sourceRoot:""}]);const s=o},53120:(e,t,n)=>{"use strict";n.d(t,{A:()=>s});var a=n(71354),r=n.n(a),i=n(76314),o=n.n(i)()(r());o.push([e.id,"\n.nc-select-users[data-v-e5d43b0e] .vs__selected {\n\tpadding-inline: 0 5px !important;\n}\n","",{version:3,sources:["webpack://./node_modules/@nextcloud/vue/dist/assets/NcSelectUsers-CfOSPgtz.css"],names:[],mappings:";AACA;CACC,gCAAgC;AACjC",sourcesContent:["\n.nc-select-users[data-v-e5d43b0e] .vs__selected {\n\tpadding-inline: 0 5px !important;\n}\n"],sourceRoot:""}]);const s=o},63779:()=>{},64688:()=>{},66089:()=>{},67503:(e,t,n)=>{"use strict";n.d(t,{A:()=>s});var a=n(71354),r=n.n(a),i=n(76314),o=n.n(i)()(r());o.push([e.id,"/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/**\n * SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/*\n* Ensure proper alignment of the vue material icons\n*/\n.material-design-icon[data-v-9938ac79] {\n display: flex;\n align-self: center;\n justify-self: center;\n align-items: center;\n justify-content: center;\n}\n.input-wrapper[data-v-9938ac79] {\n display: flex;\n align-items: center;\n flex-wrap: wrap;\n width: 100%;\n max-width: 400px;\n}\n.input-wrapper .action-input__label[data-v-9938ac79] {\n margin-right: 12px;\n}\n.input-wrapper[data-v-9938ac79]:disabled {\n cursor: default;\n}\n.input-wrapper .hint[data-v-9938ac79] {\n color: var(--color-text-maxcontrast);\n margin-left: 8px;\n}","",{version:3,sources:["webpack://./node_modules/@nextcloud/vue/dist/assets/NcSettingsInputText-18lfGViv.css"],names:[],mappings:"AAAA;;;EAGE;AACF;;;EAGE;AACF;;CAEC;AACD;EACE,aAAa;EACb,kBAAkB;EAClB,oBAAoB;EACpB,mBAAmB;EACnB,uBAAuB;AACzB;AACA;EACE,aAAa;EACb,mBAAmB;EACnB,eAAe;EACf,WAAW;EACX,gBAAgB;AAClB;AACA;EACE,kBAAkB;AACpB;AACA;EACE,eAAe;AACjB;AACA;EACE,oCAAoC;EACpC,gBAAgB;AAClB",sourcesContent:["/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/**\n * SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/*\n* Ensure proper alignment of the vue material icons\n*/\n.material-design-icon[data-v-9938ac79] {\n display: flex;\n align-self: center;\n justify-self: center;\n align-items: center;\n justify-content: center;\n}\n.input-wrapper[data-v-9938ac79] {\n display: flex;\n align-items: center;\n flex-wrap: wrap;\n width: 100%;\n max-width: 400px;\n}\n.input-wrapper .action-input__label[data-v-9938ac79] {\n margin-right: 12px;\n}\n.input-wrapper[data-v-9938ac79]:disabled {\n cursor: default;\n}\n.input-wrapper .hint[data-v-9938ac79] {\n color: var(--color-text-maxcontrast);\n margin-left: 8px;\n}"],sourceRoot:""}]);const s=o},73776:()=>{},74307:(e,t,n)=>{"use strict";n.d(t,{A:()=>s});var a=n(71354),r=n.n(a),i=n(76314),o=n.n(i)()(r());o.push([e.id,"\n._fadeTransition_13rtj_2 {\n\ttransition: all var(--animation-quick) ease;\n}\n._fadeTransitionActive_13rtj_6 {\n\topacity: 0;\n\tposition: absolute;\n}\n","",{version:3,sources:["webpack://./node_modules/@nextcloud/vue/dist/assets/NcBlurHash-7aGtE-_T.css"],names:[],mappings:";AACA;CACC,2CAA2C;AAC5C;AACA;CACC,UAAU;CACV,kBAAkB;AACnB",sourcesContent:["\n._fadeTransition_13rtj_2 {\n\ttransition: all var(--animation-quick) ease;\n}\n._fadeTransitionActive_13rtj_6 {\n\topacity: 0;\n\tposition: absolute;\n}\n"],sourceRoot:""}]);const s=o},76253:(e,t,n)=>{"use strict";n.d(t,{A:()=>s});var a=n(71354),r=n.n(a),i=n(76314),o=n.n(i)()(r());o.push([e.id,".ldap-wizard__advanced[data-v-5b57c0d9]{display:flex;flex-direction:column;gap:16px}.ldap-wizard__advanced__section[data-v-5b57c0d9]{display:flex;flex-direction:column;border:1px solid var(--color-text-lighter);border-radius:var(--border-radius);padding:8px}.ldap-wizard__advanced__section>*[data-v-5b57c0d9]{margin-top:12px !important}.ldap-wizard__advanced__section summary[data-v-5b57c0d9]{margin-top:0 !important}.ldap-wizard__advanced__section summary h3[data-v-5b57c0d9]{margin:0;display:inline;cursor:pointer;color:var(--color-text-lighter);font-size:16px}.ldap-wizard__advanced__section:hover h3[data-v-5b57c0d9],.ldap-wizard__advanced__section[open] h3[data-v-5b57c0d9]{color:var(--color-text-light)}","",{version:3,sources:["webpack://./apps/user_ldap/src/components/SettingsTabs/AdvancedTab.vue"],names:[],mappings:"AACA,wCACC,YAAA,CACA,qBAAA,CACA,QAAA,CAEA,iDACC,YAAA,CACA,qBAAA,CACA,0CAAA,CACA,kCAAA,CACA,WAAA,CAEA,mDACC,0BAAA,CAGD,yDACC,uBAAA,CAEA,4DACC,QAAA,CACA,cAAA,CACA,cAAA,CACA,+BAAA,CACA,cAAA,CAMD,oHACC,6BAAA",sourcesContent:["\n.ldap-wizard__advanced {\n\tdisplay: flex;\n\tflex-direction: column;\n\tgap: 16px;\n\n\t&__section {\n\t\tdisplay: flex;\n\t\tflex-direction: column;\n\t\tborder: 1px solid var(--color-text-lighter);\n\t\tborder-radius: var(--border-radius);\n\t\tpadding: 8px;\n\n\t\t& > * {\n\t\t\tmargin-top: 12px !important;\n\t\t}\n\n\t\tsummary {\n\t\t\tmargin-top: 0 !important;\n\n\t\t\th3 {\n\t\t\t\tmargin: 0;\n\t\t\t\tdisplay: inline;\n\t\t\t\tcursor: pointer;\n\t\t\t\tcolor: var(--color-text-lighter);\n\t\t\t\tfont-size: 16px;\n\n\t\t\t}\n\t\t}\n\n\t\t&:hover, &[open] {\n\t\t\th3 {\n\t\t\t\tcolor: var(--color-text-light);\n\t\t\t}\n\t\t}\n\t}\n}\n"],sourceRoot:""}]);const s=o},77199:()=>{},77965:()=>{},78982:()=>{},79368:()=>{},79722:e=>{"use strict";e.exports="data:image/svg+xml,%3c%21--%20-%20SPDX-FileCopyrightText:%202020%20Google%20Inc.%20-%20SPDX-License-Identifier:%20Apache-2.0%20--%3e%3csvg%20xmlns=%27http://www.w3.org/2000/svg%27%20width=%2724%27%20height=%2724%27%20fill=%27%23222%27%3e%3cpath%20d=%27M5.6%207.4L7%206l6%206-6%206-1.4-1.4%204.6-4.6-4.6-4.6m6%200L13%206l6%206-6%206-1.4-1.4%204.6-4.6-4.6-4.6z%27/%3e%3c/svg%3e"},79838:()=>{},81611:(e,t,n)=>{"use strict";n.d(t,{A:()=>s});var a=n(71354),r=n.n(a),i=n(76314),o=n.n(i)()(r());o.push([e.id,"/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/**\n * SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/*\n* Ensure proper alignment of the vue material icons\n*/\n._material-design-icon_1xe1x_12 {\n display: flex;\n align-self: center;\n justify-self: center;\n align-items: center;\n justify-content: center;\n}\n._assistantButton_1xe1x_20 {\n --assistant-button-color: var(--color-element-assistant, linear-gradient(238deg, #A569D3 12%, #00679E 39%, #422083 86%));\n --assistant-button-background-color: var(--color-background-assistant, #F6F5FF);\n background-image: var(--color-border-assistant, linear-gradient(125deg, #7398FE 50%, #6104A4 125%));\n border-radius: var(--border-radius-element);\n height: var(--default-clickable-area);\n width: fit-content;\n padding-inline: 1px;\n padding-block: 1px 2px;\n}\n._assistantButton_disabled_1xe1x_30 {\n filter: saturate(0.5);\n opacity: 0.5;\n}\n._assistantButton_primary_1xe1x_34 {\n --assistant-button-color: white;\n --assistant-button-background-color: var(--color-element-assistant,linear-gradient(238deg, #A569D3 12%, #00679E 39%, #422083 86%));\n}\n._assistantButton_primary_1xe1x_34 ._assistantButton__icon_1xe1x_38,\n._assistantButton_primary_1xe1x_34 ._assistantButton__text_1xe1x_39 {\n color: white !important;\n}\n._assistantButton__button_1xe1x_42 {\n --button-size: calc(var(--default-clickable-area) - 3px) !important;\n background-color: var(--assistant-button-background-color) !important;\n background-image: var(--assistant-button-background-color) !important;\n border: none !important;\n}\n._assistantButton__button_1xe1x_42:hover {\n filter: brightness(120%);\n}\n._assistantButton__text_1xe1x_39 {\n background-image: var(--assistant-button-color);\n color: transparent !important;\n background-clip: text;\n}","",{version:3,sources:["webpack://./node_modules/@nextcloud/vue/dist/assets/NcAssistantButton-owGSr0s0.css"],names:[],mappings:"AAAA;;;EAGE;AACF;;;EAGE;AACF;;CAEC;AACD;EACE,aAAa;EACb,kBAAkB;EAClB,oBAAoB;EACpB,mBAAmB;EACnB,uBAAuB;AACzB;AACA;EACE,wHAAwH;EACxH,+EAA+E;EAC/E,mGAAmG;EACnG,2CAA2C;EAC3C,qCAAqC;EACrC,kBAAkB;EAClB,mBAAmB;EACnB,sBAAsB;AACxB;AACA;EACE,qBAAqB;EACrB,YAAY;AACd;AACA;EACE,+BAA+B;EAC/B,kIAAkI;AACpI;AACA;;EAEE,uBAAuB;AACzB;AACA;EACE,mEAAmE;EACnE,qEAAqE;EACrE,qEAAqE;EACrE,uBAAuB;AACzB;AACA;EACE,wBAAwB;AAC1B;AACA;EACE,+CAA+C;EAC/C,6BAA6B;EAC7B,qBAAqB;AACvB",sourcesContent:["/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/**\n * SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/*\n* Ensure proper alignment of the vue material icons\n*/\n._material-design-icon_1xe1x_12 {\n display: flex;\n align-self: center;\n justify-self: center;\n align-items: center;\n justify-content: center;\n}\n._assistantButton_1xe1x_20 {\n --assistant-button-color: var(--color-element-assistant, linear-gradient(238deg, #A569D3 12%, #00679E 39%, #422083 86%));\n --assistant-button-background-color: var(--color-background-assistant, #F6F5FF);\n background-image: var(--color-border-assistant, linear-gradient(125deg, #7398FE 50%, #6104A4 125%));\n border-radius: var(--border-radius-element);\n height: var(--default-clickable-area);\n width: fit-content;\n padding-inline: 1px;\n padding-block: 1px 2px;\n}\n._assistantButton_disabled_1xe1x_30 {\n filter: saturate(0.5);\n opacity: 0.5;\n}\n._assistantButton_primary_1xe1x_34 {\n --assistant-button-color: white;\n --assistant-button-background-color: var(--color-element-assistant,linear-gradient(238deg, #A569D3 12%, #00679E 39%, #422083 86%));\n}\n._assistantButton_primary_1xe1x_34 ._assistantButton__icon_1xe1x_38,\n._assistantButton_primary_1xe1x_34 ._assistantButton__text_1xe1x_39 {\n color: white !important;\n}\n._assistantButton__button_1xe1x_42 {\n --button-size: calc(var(--default-clickable-area) - 3px) !important;\n background-color: var(--assistant-button-background-color) !important;\n background-image: var(--assistant-button-background-color) !important;\n border: none !important;\n}\n._assistantButton__button_1xe1x_42:hover {\n filter: brightness(120%);\n}\n._assistantButton__text_1xe1x_39 {\n background-image: var(--assistant-button-color);\n color: transparent !important;\n background-clip: text;\n}"],sourceRoot:""}]);const s=o},86795:(e,t,n)=>{"use strict";n.d(t,{A:()=>s});var a=n(71354),r=n.n(a),i=n(76314),o=n.n(i)()(r());o.push([e.id,"/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/**\n * SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/*\n* Ensure proper alignment of the vue material icons\n*/\n.material-design-icon[data-v-fac69d4a] {\n display: flex;\n align-self: center;\n justify-self: center;\n align-items: center;\n justify-content: center;\n}\n.app-navigation-caption[data-v-fac69d4a] {\n display: flex;\n justify-content: space-between;\n}\n.app-navigation-caption--heading[data-v-fac69d4a] {\n padding: var(--app-navigation-padding);\n}\n.app-navigation-caption--heading[data-v-fac69d4a]:not(:first-child):not(:last-child) {\n padding: 0 var(--app-navigation-padding);\n}\n.app-navigation-caption__name[data-v-fac69d4a] {\n font-weight: bold;\n color: var(--color-main-text);\n font-size: var(--default-font-size);\n line-height: var(--default-clickable-area);\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n box-shadow: none !important;\n flex-shrink: 1;\n padding-block: 0;\n padding-inline: calc(var(--default-grid-baseline, 4px) * 2) 0;\n margin-top: 0px;\n margin-bottom: var(--default-grid-baseline);\n}\n.app-navigation-caption__actions[data-v-fac69d4a] {\n flex: 0 0 var(--default-clickable-area);\n}\n.app-navigation-caption[data-v-fac69d4a]:not(:first-child) {\n margin-top: calc(var(--default-clickable-area) / 2);\n}","",{version:3,sources:["webpack://./node_modules/@nextcloud/vue/dist/assets/NcAppNavigationCaption-C7GtQb_y.css"],names:[],mappings:"AAAA;;;EAGE;AACF;;;EAGE;AACF;;CAEC;AACD;EACE,aAAa;EACb,kBAAkB;EAClB,oBAAoB;EACpB,mBAAmB;EACnB,uBAAuB;AACzB;AACA;EACE,aAAa;EACb,8BAA8B;AAChC;AACA;EACE,sCAAsC;AACxC;AACA;EACE,wCAAwC;AAC1C;AACA;EACE,iBAAiB;EACjB,6BAA6B;EAC7B,mCAAmC;EACnC,0CAA0C;EAC1C,mBAAmB;EACnB,gBAAgB;EAChB,uBAAuB;EACvB,2BAA2B;EAC3B,cAAc;EACd,gBAAgB;EAChB,6DAA6D;EAC7D,eAAe;EACf,2CAA2C;AAC7C;AACA;EACE,uCAAuC;AACzC;AACA;EACE,mDAAmD;AACrD",sourcesContent:["/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/**\n * SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/*\n* Ensure proper alignment of the vue material icons\n*/\n.material-design-icon[data-v-fac69d4a] {\n display: flex;\n align-self: center;\n justify-self: center;\n align-items: center;\n justify-content: center;\n}\n.app-navigation-caption[data-v-fac69d4a] {\n display: flex;\n justify-content: space-between;\n}\n.app-navigation-caption--heading[data-v-fac69d4a] {\n padding: var(--app-navigation-padding);\n}\n.app-navigation-caption--heading[data-v-fac69d4a]:not(:first-child):not(:last-child) {\n padding: 0 var(--app-navigation-padding);\n}\n.app-navigation-caption__name[data-v-fac69d4a] {\n font-weight: bold;\n color: var(--color-main-text);\n font-size: var(--default-font-size);\n line-height: var(--default-clickable-area);\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n box-shadow: none !important;\n flex-shrink: 1;\n padding-block: 0;\n padding-inline: calc(var(--default-grid-baseline, 4px) * 2) 0;\n margin-top: 0px;\n margin-bottom: var(--default-grid-baseline);\n}\n.app-navigation-caption__actions[data-v-fac69d4a] {\n flex: 0 0 var(--default-clickable-area);\n}\n.app-navigation-caption[data-v-fac69d4a]:not(:first-child) {\n margin-top: calc(var(--default-clickable-area) / 2);\n}"],sourceRoot:""}]);const s=o},86886:e=>{"use strict";e.exports="data:image/svg+xml,%3c%21--%20-%20SPDX-FileCopyrightText:%202020%20Google%20Inc.%20-%20SPDX-License-Identifier:%20Apache-2.0%20--%3e%3csvg%20xmlns=%27http://www.w3.org/2000/svg%27%20width=%2724%27%20height=%2724%27%20fill=%27%23222%27%3e%3cpath%20d=%27M8.6%2016.6l4.6-4.6-4.6-4.6L10%206l6%206-6%206-1.4-1.4z%27/%3e%3c/svg%3e"},87932:(e,t,n)=>{"use strict";n.d(t,{A:()=>s});var a=n(71354),r=n.n(a),i=n(76314),o=n.n(i)()(r());o.push([e.id,".ldap-wizard[data-v-51715f32]{padding:16px;max-width:1000px}.ldap-wizard__config-selection[data-v-51715f32]{display:flex;align-items:end;margin-bottom:8px;gap:16px}.ldap-wizard__config-selection__create-button[data-v-51715f32]{margin-bottom:4px}.ldap-wizard__tab-selection-container[data-v-51715f32]{display:flex}.ldap-wizard__tab-selection[data-v-51715f32]{display:flex;margin-inline-start:-16px;margin-bottom:16px}.ldap-wizard__tab-selection[data-v-51715f32]:last-of-type{margin-inline-end:-16px}.ldap-wizard__tab-container[data-v-51715f32]{border-bottom:1px solid var(--color-text-light);padding:0 16px 16px 16px}.ldap-wizard__controls[data-v-51715f32]{margin-top:16px}.ldap-wizard__clear-mapping[data-v-51715f32]{padding:16px}.ldap-wizard__clear-mapping__buttons[data-v-51715f32]{display:flex;margin-top:8px;gap:16px}","",{version:3,sources:["webpack://./apps/user_ldap/src/views/Settings.vue"],names:[],mappings:"AACA,8BACC,YAAA,CACA,gBAAA,CAEA,gDACC,YAAA,CACA,eAAA,CACA,iBAAA,CACA,QAAA,CAEA,+DACC,iBAAA,CAIF,uDACC,YAAA,CAGD,6CACC,YAAA,CACA,yBAAA,CACA,kBAAA,CAEA,0DACC,uBAAA,CAIF,6CACC,+CAAA,CACA,wBAAA,CAGD,wCACC,eAAA,CAGD,6CACC,YAAA,CAEA,sDACC,YAAA,CACA,cAAA,CACA,QAAA",sourcesContent:["\n.ldap-wizard {\n\tpadding: 16px;\n\tmax-width: 1000px;\n\n\t&__config-selection {\n\t\tdisplay: flex;\n\t\talign-items: end;\n\t\tmargin-bottom: 8px;\n\t\tgap: 16px;\n\n\t\t&__create-button {\n\t\t\tmargin-bottom: 4px;\n\t\t}\n\t}\n\n\t&__tab-selection-container {\n\t\tdisplay: flex;\n\t}\n\n\t&__tab-selection {\n\t\tdisplay: flex;\n\t\tmargin-inline-start: -16px;\n\t\tmargin-bottom: 16px;\n\n\t\t&:last-of-type {\n\t\t\tmargin-inline-end: -16px;\n\t\t}\n\t}\n\n\t&__tab-container {\n\t\tborder-bottom: 1px solid var(--color-text-light);\n\t\tpadding: 0 16px 16px 16px;\n\t}\n\n\t&__controls {\n\t\tmargin-top: 16px;\n\t}\n\n\t&__clear-mapping {\n\t\tpadding: 16px;\n\n\t\t&__buttons {\n\t\t\tdisplay: flex;\n\t\t\tmargin-top: 8px;\n\t\t\tgap: 16px;\n\t\t}\n\t}\n}\n"],sourceRoot:""}]);const s=o},93595:(e,t,n)=>{"use strict";n.d(t,{A:()=>s});var a=n(71354),r=n.n(a),i=n(76314),o=n.n(i)()(r());o.push([e.id,"/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/**\n * SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/*\n* Ensure proper alignment of the vue material icons\n*/\n._material-design-icon_ri18g_12 {\n display: flex;\n align-self: center;\n justify-self: center;\n align-items: center;\n justify-content: center;\n}\n._assistantContent_ri18g_20 {\n background-image: var(--color-border-assistant, linear-gradient(125deg, #7398FE 50%, #6104A4 125%));\n border-radius: var(--border-radius-container);\n padding: 2px;\n}\n._assistantContent__inner_ri18g_25 {\n background-color: var(--color-background-assistant, #F6F5FF);\n border-radius: calc(var(--border-radius-container) - 1px);\n color: var(--color-main-text);\n padding: calc(var(--border-radius-container) - 1px);\n height: 100%;\n width: 100%;\n}","",{version:3,sources:["webpack://./node_modules/@nextcloud/vue/dist/assets/NcAssistantContent-Ban7n3Bg.css"],names:[],mappings:"AAAA;;;EAGE;AACF;;;EAGE;AACF;;CAEC;AACD;EACE,aAAa;EACb,kBAAkB;EAClB,oBAAoB;EACpB,mBAAmB;EACnB,uBAAuB;AACzB;AACA;EACE,mGAAmG;EACnG,6CAA6C;EAC7C,YAAY;AACd;AACA;EACE,4DAA4D;EAC5D,yDAAyD;EACzD,6BAA6B;EAC7B,mDAAmD;EACnD,YAAY;EACZ,WAAW;AACb",sourcesContent:["/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/**\n * SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/*\n* Ensure proper alignment of the vue material icons\n*/\n._material-design-icon_ri18g_12 {\n display: flex;\n align-self: center;\n justify-self: center;\n align-items: center;\n justify-content: center;\n}\n._assistantContent_ri18g_20 {\n background-image: var(--color-border-assistant, linear-gradient(125deg, #7398FE 50%, #6104A4 125%));\n border-radius: var(--border-radius-container);\n padding: 2px;\n}\n._assistantContent__inner_ri18g_25 {\n background-color: var(--color-background-assistant, #F6F5FF);\n border-radius: calc(var(--border-radius-container) - 1px);\n color: var(--color-main-text);\n padding: calc(var(--border-radius-container) - 1px);\n height: 100%;\n width: 100%;\n}"],sourceRoot:""}]);const s=o},94067:e=>{"use strict";var t=Object.prototype.hasOwnProperty,n="~";function a(){}function r(e,t,n){this.fn=e,this.context=t,this.once=n||!1}function i(e,t,a,i,o){if("function"!=typeof a)throw new TypeError("The listener must be a function");var s=new r(a,i||e,o),l=n?n+t:t;return e._events[l]?e._events[l].fn?e._events[l]=[e._events[l],s]:e._events[l].push(s):(e._events[l]=s,e._eventsCount++),e}function o(e,t){0===--e._eventsCount?e._events=new a:delete e._events[t]}function s(){this._events=new a,this._eventsCount=0}Object.create&&(a.prototype=Object.create(null),(new a).__proto__||(n=!1)),s.prototype.eventNames=function(){var e,a,r=[];if(0===this._eventsCount)return r;for(a in e=this._events)t.call(e,a)&&r.push(n?a.slice(1):a);return Object.getOwnPropertySymbols?r.concat(Object.getOwnPropertySymbols(e)):r},s.prototype.listeners=function(e){var t=n?n+e:e,a=this._events[t];if(!a)return[];if(a.fn)return[a.fn];for(var r=0,i=a.length,o=new Array(i);r{"use strict";n.d(t,{A:()=>s});var a=n(71354),r=n.n(a),i=n(76314),o=n.n(i)()(r());o.push([e.id,"/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/**\n * SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/*\n* Ensure proper alignment of the vue material icons\n*/\n.material-design-icon[data-v-528e9576] {\n display: flex;\n align-self: center;\n justify-self: center;\n align-items: center;\n justify-content: center;\n}\n#guest-content-vue[data-v-528e9576] {\n color: var(--color-main-text);\n background-color: var(--color-main-background);\n min-width: 0;\n border-radius: var(--border-radius-large);\n box-shadow: 0 0 10px var(--color-box-shadow);\n height: fit-content;\n padding: 15px;\n margin: 20px auto;\n}/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/**\n * SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/*\n* Ensure proper alignment of the vue material icons\n*/\n.material-design-icon {\n display: flex;\n align-self: center;\n justify-self: center;\n align-items: center;\n justify-content: center;\n}\n#content.nc-guest-content {\n overflow: auto;\n margin-bottom: 0;\n height: calc(var(--body-height) + var(--body-container-margin));\n}","",{version:3,sources:["webpack://./node_modules/@nextcloud/vue/dist/assets/NcGuestContent-BkegjnLL.css"],names:[],mappings:"AAAA;;;EAGE;AACF;;;EAGE;AACF;;CAEC;AACD;EACE,aAAa;EACb,kBAAkB;EAClB,oBAAoB;EACpB,mBAAmB;EACnB,uBAAuB;AACzB;AACA;EACE,6BAA6B;EAC7B,8CAA8C;EAC9C,YAAY;EACZ,yCAAyC;EACzC,4CAA4C;EAC5C,mBAAmB;EACnB,aAAa;EACb,iBAAiB;AACnB,CAAC;;;EAGC;AACF;;;EAGE;AACF;;CAEC;AACD;EACE,aAAa;EACb,kBAAkB;EAClB,oBAAoB;EACpB,mBAAmB;EACnB,uBAAuB;AACzB;AACA;EACE,cAAc;EACd,gBAAgB;EAChB,+DAA+D;AACjE",sourcesContent:["/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/**\n * SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/*\n* Ensure proper alignment of the vue material icons\n*/\n.material-design-icon[data-v-528e9576] {\n display: flex;\n align-self: center;\n justify-self: center;\n align-items: center;\n justify-content: center;\n}\n#guest-content-vue[data-v-528e9576] {\n color: var(--color-main-text);\n background-color: var(--color-main-background);\n min-width: 0;\n border-radius: var(--border-radius-large);\n box-shadow: 0 0 10px var(--color-box-shadow);\n height: fit-content;\n padding: 15px;\n margin: 20px auto;\n}/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/**\n * SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/*\n* Ensure proper alignment of the vue material icons\n*/\n.material-design-icon {\n display: flex;\n align-self: center;\n justify-self: center;\n align-items: center;\n justify-content: center;\n}\n#content.nc-guest-content {\n overflow: auto;\n margin-bottom: 0;\n height: calc(var(--body-height) + var(--body-container-margin));\n}"],sourceRoot:""}]);const s=o},98621:(e,t,n)=>{"use strict";n.d(t,{A:()=>s});var a=n(71354),r=n.n(a),i=n(76314),o=n.n(i)()(r());o.push([e.id,"/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/**\n * SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/*\n* Ensure proper alignment of the vue material icons\n*/\n.material-design-icon[data-v-04a313f4] {\n display: flex;\n align-self: center;\n justify-self: center;\n align-items: center;\n justify-content: center;\n}\n.app-navigation-entry__icon-bullet[data-v-04a313f4] {\n display: block;\n padding: calc((var(--default-clickable-area) - 16px) / 2 + 1px);\n}\n.app-navigation-entry__icon-bullet div[data-v-04a313f4] {\n width: 14px;\n height: 14px;\n cursor: pointer;\n transition: background 100ms ease-in-out;\n border: none;\n border-radius: 50%;\n}","",{version:3,sources:["webpack://./node_modules/@nextcloud/vue/dist/assets/NcAppNavigationIconBullet-DLQJkObX.css"],names:[],mappings:"AAAA;;;EAGE;AACF;;;EAGE;AACF;;CAEC;AACD;EACE,aAAa;EACb,kBAAkB;EAClB,oBAAoB;EACpB,mBAAmB;EACnB,uBAAuB;AACzB;AACA;EACE,cAAc;EACd,+DAA+D;AACjE;AACA;EACE,WAAW;EACX,YAAY;EACZ,eAAe;EACf,wCAAwC;EACxC,YAAY;EACZ,kBAAkB;AACpB",sourcesContent:["/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/**\n * SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/*\n* Ensure proper alignment of the vue material icons\n*/\n.material-design-icon[data-v-04a313f4] {\n display: flex;\n align-self: center;\n justify-self: center;\n align-items: center;\n justify-content: center;\n}\n.app-navigation-entry__icon-bullet[data-v-04a313f4] {\n display: block;\n padding: calc((var(--default-clickable-area) - 16px) / 2 + 1px);\n}\n.app-navigation-entry__icon-bullet div[data-v-04a313f4] {\n width: 14px;\n height: 14px;\n cursor: pointer;\n transition: background 100ms ease-in-out;\n border: none;\n border-radius: 50%;\n}"],sourceRoot:""}]);const s=o}},i={};function o(e){var t=i[e];if(void 0!==t)return t.exports;var n=i[e]={id:e,loaded:!1,exports:{}};return r[e].call(n.exports,n,n.exports,o),n.loaded=!0,n.exports}o.m=r,t=[],o.O=(e,n,a,r)=>{if(!n){var i=1/0;for(d=0;d=r)&&Object.keys(o.O).every(e=>o.O[e](n[l]))?n.splice(l--,1):(s=!1,r0&&t[d-1][2]>r;d--)t[d]=t[d-1];t[d]=[n,a,r]},o.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return o.d(t,{a:t}),t},o.d=(e,t)=>{for(var n in t)o.o(t,n)&&!o.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},o.f={},o.e=e=>Promise.all(Object.keys(o.f).reduce((t,n)=>(o.f[n](e,t),t),[])),o.u=e=>e+"-"+e+".js?v="+{594:"2c86902dfae9a5006399",620:"8f7783b39d802f10e22b",2391:"908fc68e4bc9b878c937",2880:"fdf99dc4a6f328ebe498",4325:"67df7ab13a8e8d214551",5862:"d020c05f13d21afee82a",7145:"7889fe0b0ebc57e3d5f1",7471:"e87c2955fa176109d757",8339:"6cdca71a6b3b2d7bef33"}[e],o.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),o.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),n={},a="nextcloud-ui-legacy:",o.l=(e,t,r,i)=>{if(n[e])n[e].push(t);else{var s,l;if(void 0!==r)for(var c=document.getElementsByTagName("script"),d=0;d{s.onerror=s.onload=null,clearTimeout(A);var r=n[e];if(delete n[e],s.parentNode&&s.parentNode.removeChild(s),r&&r.forEach(e=>e(a)),t)return t(a)},A=setTimeout(p.bind(null,void 0,{type:"timeout",target:s}),12e4);s.onerror=p.bind(null,s.onerror),s.onload=p.bind(null,s.onload),l&&document.head.appendChild(s)}},o.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},o.nmd=e=>(e.paths=[],e.children||(e.children=[]),e),o.j=7044,(()=>{var e;o.g.importScripts&&(e=o.g.location+"");var t=o.g.document;if(!e&&t&&(t.currentScript&&"SCRIPT"===t.currentScript.tagName.toUpperCase()&&(e=t.currentScript.src),!e)){var n=t.getElementsByTagName("script");if(n.length)for(var a=n.length-1;a>-1&&(!e||!/^http(s?):/.test(e));)e=n[a--].src}if(!e)throw new Error("Automatic publicPath is not supported in this browser");e=e.replace(/^blob:/,"").replace(/#.*$/,"").replace(/\?.*$/,"").replace(/\/[^\/]+$/,"/"),o.p=e})(),(()=>{o.b="undefined"!=typeof document&&document.baseURI||self.location.href;var e={6768:0,7044:0,7471:0};o.f.j=(t,n)=>{var a=o.o(e,t)?e[t]:void 0;if(0!==a)if(a)n.push(a[2]);else{var r=new Promise((n,r)=>a=e[t]=[n,r]);n.push(a[2]=r);var i=o.p+o.u(t),s=new Error;o.l(i,n=>{if(o.o(e,t)&&(0!==(a=e[t])&&(e[t]=void 0),a)){var r=n&&("load"===n.type?"missing":n.type),i=n&&n.target&&n.target.src;s.message="Loading chunk "+t+" failed.\n("+r+": "+i+")",s.name="ChunkLoadError",s.type=r,s.request=i,a[1](s)}},"chunk-"+t,t)}},o.O.j=t=>0===e[t];var t=(t,n)=>{var a,r,[i,s,l]=n,c=0;if(i.some(t=>0!==e[t])){for(a in s)o.o(s,a)&&(o.m[a]=s[a]);if(l)var d=l(o)}for(t&&t(n);co(51020));s=o.O(s)})(); -//# sourceMappingURL=user_ldap-main.js.map?v=a138933819eeb6f796bc \ No newline at end of file +(()=>{var t,n,a,r={6139:(e,t,n)=>{"use strict";n.d(t,{A:()=>s});var a=n(71354),r=n.n(a),i=n(76314),o=n.n(i)()(r());o.push([e.id,"/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/**\n * SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/*\n* Ensure proper alignment of the vue material icons\n*/\n.material-design-icon[data-v-d81f7625] {\n display: flex;\n align-self: center;\n justify-self: center;\n align-items: center;\n justify-content: center;\n}\n.nc-button-group-base > div[data-v-d81f7625] {\n text-align: center;\n color: var(--color-text-maxcontrast);\n}\n.nc-button-group-base ul.nc-button-group-content[data-v-d81f7625] {\n display: flex;\n gap: 4px;\n justify-content: space-between;\n}\n.nc-button-group-base ul.nc-button-group-content[data-v-d81f7625] li {\n flex: 1 1;\n}\n.nc-button-group-base ul.nc-button-group-content[data-v-d81f7625] .action-button {\n padding: 0 !important;\n width: 100%;\n display: flex;\n justify-content: center;\n}\n.nc-button-group-base ul.nc-button-group-content[data-v-d81f7625] .action-button.action-button--active {\n background-color: var(--color-primary-element);\n border-radius: var(--border-radius-large);\n color: var(--color-primary-element-text);\n}\n.nc-button-group-base ul.nc-button-group-content[data-v-d81f7625] .action-button.action-button--active:hover, .nc-button-group-base ul.nc-button-group-content[data-v-d81f7625] .action-button.action-button--active:focus, .nc-button-group-base ul.nc-button-group-content[data-v-d81f7625] .action-button.action-button--active:focus-within {\n background-color: var(--color-primary-element-hover);\n}\n.nc-button-group-base ul.nc-button-group-content[data-v-d81f7625] .action-button .action-button__pressed-icon {\n display: none;\n}","",{version:3,sources:["webpack://./node_modules/@nextcloud/vue/dist/assets/NcActionButtonGroup-CRXLyFpx.css"],names:[],mappings:"AAAA;;;EAGE;AACF;;;EAGE;AACF;;CAEC;AACD;EACE,aAAa;EACb,kBAAkB;EAClB,oBAAoB;EACpB,mBAAmB;EACnB,uBAAuB;AACzB;AACA;EACE,kBAAkB;EAClB,oCAAoC;AACtC;AACA;EACE,aAAa;EACb,QAAQ;EACR,8BAA8B;AAChC;AACA;EACE,SAAS;AACX;AACA;EACE,qBAAqB;EACrB,WAAW;EACX,aAAa;EACb,uBAAuB;AACzB;AACA;EACE,8CAA8C;EAC9C,yCAAyC;EACzC,wCAAwC;AAC1C;AACA;EACE,oDAAoD;AACtD;AACA;EACE,aAAa;AACf",sourcesContent:["/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/**\n * SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/*\n* Ensure proper alignment of the vue material icons\n*/\n.material-design-icon[data-v-d81f7625] {\n display: flex;\n align-self: center;\n justify-self: center;\n align-items: center;\n justify-content: center;\n}\n.nc-button-group-base > div[data-v-d81f7625] {\n text-align: center;\n color: var(--color-text-maxcontrast);\n}\n.nc-button-group-base ul.nc-button-group-content[data-v-d81f7625] {\n display: flex;\n gap: 4px;\n justify-content: space-between;\n}\n.nc-button-group-base ul.nc-button-group-content[data-v-d81f7625] li {\n flex: 1 1;\n}\n.nc-button-group-base ul.nc-button-group-content[data-v-d81f7625] .action-button {\n padding: 0 !important;\n width: 100%;\n display: flex;\n justify-content: center;\n}\n.nc-button-group-base ul.nc-button-group-content[data-v-d81f7625] .action-button.action-button--active {\n background-color: var(--color-primary-element);\n border-radius: var(--border-radius-large);\n color: var(--color-primary-element-text);\n}\n.nc-button-group-base ul.nc-button-group-content[data-v-d81f7625] .action-button.action-button--active:hover, .nc-button-group-base ul.nc-button-group-content[data-v-d81f7625] .action-button.action-button--active:focus, .nc-button-group-base ul.nc-button-group-content[data-v-d81f7625] .action-button.action-button--active:focus-within {\n background-color: var(--color-primary-element-hover);\n}\n.nc-button-group-base ul.nc-button-group-content[data-v-d81f7625] .action-button .action-button__pressed-icon {\n display: none;\n}"],sourceRoot:""}]);const s=o},9244:(e,t,n)=>{"use strict";n.d(t,{A:()=>s});var a=n(71354),r=n.n(a),i=n(76314),o=n.n(i)()(r());o.push([e.id,"/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/**\n * SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/*\n* Ensure proper alignment of the vue material icons\n*/\n.material-design-icon[data-v-258871fd] {\n display: flex;\n align-self: center;\n justify-self: center;\n align-items: center;\n justify-content: center;\n}\n\n/**\n * SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n.app-navigation-entry[data-v-258871fd] {\n position: relative;\n display: flex;\n flex-shrink: 0;\n flex-wrap: wrap;\n box-sizing: border-box;\n width: 100%;\n min-height: var(--default-clickable-area);\n transition: background-color var(--animation-quick) ease-in-out;\n transition: background-color 200ms ease-in-out;\n border-radius: var(--border-radius-element, var(--border-radius-pill));\n}\n.app-navigation-entry-wrapper[data-v-258871fd] {\n position: relative;\n display: flex;\n flex-shrink: 0;\n flex-wrap: wrap;\n box-sizing: border-box;\n width: 100%;\n}\n.app-navigation-entry-wrapper.app-navigation-entry--collapsible:not(.app-navigation-entry--opened) > ul[data-v-258871fd] {\n display: none;\n}\n.app-navigation-entry.active[data-v-258871fd] {\n background-color: var(--color-primary-element) !important;\n}\n.app-navigation-entry.active[data-v-258871fd]:hover {\n background-color: var(--color-primary-element-hover) !important;\n}\n.app-navigation-entry.active .app-navigation-entry-link[data-v-258871fd], .app-navigation-entry.active .app-navigation-entry-button[data-v-258871fd] {\n color: var(--color-primary-element-text) !important;\n}\n.app-navigation-entry[data-v-258871fd]:focus-within, .app-navigation-entry[data-v-258871fd]:hover {\n background-color: var(--color-background-hover);\n}\n.app-navigation-entry.active .app-navigation-entry__children[data-v-258871fd], .app-navigation-entry:focus-within .app-navigation-entry__children[data-v-258871fd], .app-navigation-entry:hover .app-navigation-entry__children[data-v-258871fd] {\n background-color: var(--color-main-background);\n}\n.app-navigation-entry.active .app-navigation-entry__utils .app-navigation-entry__actions[data-v-258871fd], .app-navigation-entry.app-navigation-entry--deleted .app-navigation-entry__utils .app-navigation-entry__actions[data-v-258871fd], .app-navigation-entry:focus .app-navigation-entry__utils .app-navigation-entry__actions[data-v-258871fd], .app-navigation-entry:focus-within .app-navigation-entry__utils .app-navigation-entry__actions[data-v-258871fd], .app-navigation-entry:hover .app-navigation-entry__utils .app-navigation-entry__actions[data-v-258871fd] {\n display: inline-block;\n}\n.app-navigation-entry .app-navigation-entry__actions[data-v-258871fd]:hover .button-vue {\n background-color: var(--color-background-dark) !important;\n}\n.app-navigation-entry.active .app-navigation-entry__actions[data-v-258871fd]:hover .button-vue {\n background-color: var(--color-primary-element) !important;\n}\n.app-navigation-entry[data-v-258871fd] {\n /* hide deletion/collapse of subitems */\n}\n.app-navigation-entry.app-navigation-entry--deleted > ul[data-v-258871fd] {\n display: none;\n}\n.app-navigation-entry:not(.app-navigation-entry--editing) .app-navigation-entry-link[data-v-258871fd], .app-navigation-entry:not(.app-navigation-entry--editing) .app-navigation-entry-button[data-v-258871fd] {\n padding-inline-end: calc((var(--default-clickable-area) - 16px) / 2);\n}\n.app-navigation-entry .app-navigation-entry-link[data-v-258871fd], .app-navigation-entry .app-navigation-entry-button[data-v-258871fd] {\n z-index: 100; /* above the bullet to allow click*/\n display: flex;\n overflow: hidden;\n flex: 1 1 0;\n box-sizing: border-box;\n min-height: var(--default-clickable-area);\n padding: 0;\n white-space: nowrap;\n color: var(--color-main-text);\n background-repeat: no-repeat;\n background-position: calc((var(--default-clickable-area) - 16px) / 2) center;\n background-size: 16px 16px;\n line-height: var(--default-clickable-area);\n}\n.app-navigation-entry .app-navigation-entry-link .app-navigation-entry-icon[data-v-258871fd], .app-navigation-entry .app-navigation-entry-button .app-navigation-entry-icon[data-v-258871fd] {\n display: flex;\n align-items: center;\n flex: 0 0 var(--default-clickable-area);\n justify-content: center;\n width: var(--default-clickable-area);\n height: var(--default-clickable-area);\n background-size: 16px 16px;\n background-repeat: no-repeat;\n background-position: calc((var(--default-clickable-area) - 16px) / 2) center;\n}\n.app-navigation-entry .app-navigation-entry-link .app-navigation-entry__name[data-v-258871fd], .app-navigation-entry .app-navigation-entry-button .app-navigation-entry__name[data-v-258871fd] {\n overflow: hidden;\n max-width: 100%;\n white-space: nowrap;\n text-overflow: ellipsis;\n}\n.app-navigation-entry .app-navigation-entry-link .editingContainer[data-v-258871fd], .app-navigation-entry .app-navigation-entry-button .editingContainer[data-v-258871fd] {\n width: calc(100% - var(--default-clickable-area));\n margin: auto;\n}\n.app-navigation-entry .app-navigation-entry-link[data-v-258871fd]:focus-visible, .app-navigation-entry .app-navigation-entry-button[data-v-258871fd]:focus-visible {\n box-shadow: 0 0 0 4px var(--color-main-background);\n outline: 2px solid var(--color-main-text);\n border-radius: var(--border-radius-element, var(--border-radius-pill));\n}\n\n/* Second level nesting for lists */\n.app-navigation-entry__children[data-v-258871fd] {\n --app-navigation-item-child-offset: 10px;\n position: relative;\n display: flex;\n flex: 0 1 auto;\n flex-direction: column;\n width: 100%;\n gap: var(--default-grid-baseline, 4px);\n padding-inline-start: var(--app-navigation-item-child-offset);\n}\n.app-navigation-entry__children .app-navigation-entry[data-v-258871fd] {\n display: inline-flex;\n flex-wrap: wrap;\n}\n.app-navigation-entry__children .app-navigation-entry__children .app-navigation-entry__children .app-navigation-entry__children .app-navigation-entry__children .app-navigation-entry__children .app-navigation-entry__children[data-v-258871fd] {\n --app-navigation-item-child-offset: 0;\n}\n\n/* Deleted entries */\n.app-navigation-entry__deleted[data-v-258871fd] {\n display: inline-flex;\n flex: 1 1 0;\n padding-inline-start: calc(var(--default-clickable-area) - (var(--default-clickable-area) - 16px) / 2) !important;\n}\n.app-navigation-entry__deleted .app-navigation-entry__deleted-description[data-v-258871fd] {\n position: relative;\n overflow: hidden;\n flex: 1 1 0;\n white-space: nowrap;\n text-overflow: ellipsis;\n line-height: var(--default-clickable-area);\n}\n\n/* counter and actions */\n.app-navigation-entry__utils[data-v-258871fd] {\n display: flex;\n min-width: var(--default-clickable-area);\n align-items: center;\n flex: 0 1 auto;\n justify-content: flex-end;\n}\n.app-navigation-entry__utils.app-navigation-entry__utils--display-actions .action-item.app-navigation-entry__actions[data-v-258871fd] {\n display: inline-block;\n}\n.app-navigation-entry__utils[data-v-258871fd] {\n /* counter */\n}\n.app-navigation-entry__utils .app-navigation-entry__counter-wrapper[data-v-258871fd] {\n margin-inline-end: calc(var(--default-grid-baseline) * 2);\n display: flex;\n align-items: center;\n flex: 0 1 auto;\n}\n.app-navigation-entry__utils[data-v-258871fd] {\n /* actions */\n}\n.app-navigation-entry__utils .action-item.app-navigation-entry__actions[data-v-258871fd] {\n display: none;\n}\n\n/* editing state */\n.app-navigation-entry--editing .app-navigation-entry-edit[data-v-258871fd] {\n z-index: 250;\n opacity: 1;\n}\n\n/* deleted state */\n.app-navigation-entry--deleted .app-navigation-entry-deleted[data-v-258871fd] {\n z-index: 250;\n transform: translateX(0);\n}\n\n/* pinned state */\n.app-navigation-entry--pinned[data-v-258871fd] {\n order: 2;\n margin-top: auto;\n}\n.app-navigation-entry--pinned ~ .app-navigation-entry--pinned[data-v-258871fd] {\n margin-top: 0;\n}\n[data-themes*=highcontrast] .app-navigation-entry[data-v-258871fd]:active {\n background-color: var(--color-primary-element-light-hover) !important;\n}\n.app-navigation-new-item__name[data-v-258871fd] {\n overflow: hidden;\n max-width: 100%;\n white-space: nowrap;\n text-overflow: ellipsis;\n padding-inline-start: 7px;\n font-size: 14px;\n}\n.newItemContainer[data-v-258871fd] {\n width: calc(100% - var(--default-clickable-area));\n margin: auto;\n}","",{version:3,sources:["webpack://./node_modules/@nextcloud/vue/dist/assets/NcAppNavigationNewItem-CYSjj3pD.css"],names:[],mappings:"AAAA;;;EAGE;AACF;;;EAGE;AACF;;CAEC;AACD;EACE,aAAa;EACb,kBAAkB;EAClB,oBAAoB;EACpB,mBAAmB;EACnB,uBAAuB;AACzB;;AAEA;;;EAGE;AACF;EACE,kBAAkB;EAClB,aAAa;EACb,cAAc;EACd,eAAe;EACf,sBAAsB;EACtB,WAAW;EACX,yCAAyC;EACzC,+DAA+D;EAC/D,8CAA8C;EAC9C,sEAAsE;AACxE;AACA;EACE,kBAAkB;EAClB,aAAa;EACb,cAAc;EACd,eAAe;EACf,sBAAsB;EACtB,WAAW;AACb;AACA;EACE,aAAa;AACf;AACA;EACE,yDAAyD;AAC3D;AACA;EACE,+DAA+D;AACjE;AACA;EACE,mDAAmD;AACrD;AACA;EACE,+CAA+C;AACjD;AACA;EACE,8CAA8C;AAChD;AACA;EACE,qBAAqB;AACvB;AACA;EACE,yDAAyD;AAC3D;AACA;EACE,yDAAyD;AAC3D;AACA;EACE,uCAAuC;AACzC;AACA;EACE,aAAa;AACf;AACA;EACE,oEAAoE;AACtE;AACA;EACE,YAAY,EAAE,mCAAmC;EACjD,aAAa;EACb,gBAAgB;EAChB,WAAW;EACX,sBAAsB;EACtB,yCAAyC;EACzC,UAAU;EACV,mBAAmB;EACnB,6BAA6B;EAC7B,4BAA4B;EAC5B,4EAA4E;EAC5E,0BAA0B;EAC1B,0CAA0C;AAC5C;AACA;EACE,aAAa;EACb,mBAAmB;EACnB,uCAAuC;EACvC,uBAAuB;EACvB,oCAAoC;EACpC,qCAAqC;EACrC,0BAA0B;EAC1B,4BAA4B;EAC5B,4EAA4E;AAC9E;AACA;EACE,gBAAgB;EAChB,eAAe;EACf,mBAAmB;EACnB,uBAAuB;AACzB;AACA;EACE,iDAAiD;EACjD,YAAY;AACd;AACA;EACE,kDAAkD;EAClD,yCAAyC;EACzC,sEAAsE;AACxE;;AAEA,mCAAmC;AACnC;EACE,wCAAwC;EACxC,kBAAkB;EAClB,aAAa;EACb,cAAc;EACd,sBAAsB;EACtB,WAAW;EACX,sCAAsC;EACtC,6DAA6D;AAC/D;AACA;EACE,oBAAoB;EACpB,eAAe;AACjB;AACA;EACE,qCAAqC;AACvC;;AAEA,oBAAoB;AACpB;EACE,oBAAoB;EACpB,WAAW;EACX,iHAAiH;AACnH;AACA;EACE,kBAAkB;EAClB,gBAAgB;EAChB,WAAW;EACX,mBAAmB;EACnB,uBAAuB;EACvB,0CAA0C;AAC5C;;AAEA,wBAAwB;AACxB;EACE,aAAa;EACb,wCAAwC;EACxC,mBAAmB;EACnB,cAAc;EACd,yBAAyB;AAC3B;AACA;EACE,qBAAqB;AACvB;AACA;EACE,YAAY;AACd;AACA;EACE,yDAAyD;EACzD,aAAa;EACb,mBAAmB;EACnB,cAAc;AAChB;AACA;EACE,YAAY;AACd;AACA;EACE,aAAa;AACf;;AAEA,kBAAkB;AAClB;EACE,YAAY;EACZ,UAAU;AACZ;;AAEA,kBAAkB;AAClB;EACE,YAAY;EACZ,wBAAwB;AAC1B;;AAEA,iBAAiB;AACjB;EACE,QAAQ;EACR,gBAAgB;AAClB;AACA;EACE,aAAa;AACf;AACA;EACE,qEAAqE;AACvE;AACA;EACE,gBAAgB;EAChB,eAAe;EACf,mBAAmB;EACnB,uBAAuB;EACvB,yBAAyB;EACzB,eAAe;AACjB;AACA;EACE,iDAAiD;EACjD,YAAY;AACd",sourcesContent:["/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/**\n * SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/*\n* Ensure proper alignment of the vue material icons\n*/\n.material-design-icon[data-v-258871fd] {\n display: flex;\n align-self: center;\n justify-self: center;\n align-items: center;\n justify-content: center;\n}\n\n/**\n * SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n.app-navigation-entry[data-v-258871fd] {\n position: relative;\n display: flex;\n flex-shrink: 0;\n flex-wrap: wrap;\n box-sizing: border-box;\n width: 100%;\n min-height: var(--default-clickable-area);\n transition: background-color var(--animation-quick) ease-in-out;\n transition: background-color 200ms ease-in-out;\n border-radius: var(--border-radius-element, var(--border-radius-pill));\n}\n.app-navigation-entry-wrapper[data-v-258871fd] {\n position: relative;\n display: flex;\n flex-shrink: 0;\n flex-wrap: wrap;\n box-sizing: border-box;\n width: 100%;\n}\n.app-navigation-entry-wrapper.app-navigation-entry--collapsible:not(.app-navigation-entry--opened) > ul[data-v-258871fd] {\n display: none;\n}\n.app-navigation-entry.active[data-v-258871fd] {\n background-color: var(--color-primary-element) !important;\n}\n.app-navigation-entry.active[data-v-258871fd]:hover {\n background-color: var(--color-primary-element-hover) !important;\n}\n.app-navigation-entry.active .app-navigation-entry-link[data-v-258871fd], .app-navigation-entry.active .app-navigation-entry-button[data-v-258871fd] {\n color: var(--color-primary-element-text) !important;\n}\n.app-navigation-entry[data-v-258871fd]:focus-within, .app-navigation-entry[data-v-258871fd]:hover {\n background-color: var(--color-background-hover);\n}\n.app-navigation-entry.active .app-navigation-entry__children[data-v-258871fd], .app-navigation-entry:focus-within .app-navigation-entry__children[data-v-258871fd], .app-navigation-entry:hover .app-navigation-entry__children[data-v-258871fd] {\n background-color: var(--color-main-background);\n}\n.app-navigation-entry.active .app-navigation-entry__utils .app-navigation-entry__actions[data-v-258871fd], .app-navigation-entry.app-navigation-entry--deleted .app-navigation-entry__utils .app-navigation-entry__actions[data-v-258871fd], .app-navigation-entry:focus .app-navigation-entry__utils .app-navigation-entry__actions[data-v-258871fd], .app-navigation-entry:focus-within .app-navigation-entry__utils .app-navigation-entry__actions[data-v-258871fd], .app-navigation-entry:hover .app-navigation-entry__utils .app-navigation-entry__actions[data-v-258871fd] {\n display: inline-block;\n}\n.app-navigation-entry .app-navigation-entry__actions[data-v-258871fd]:hover .button-vue {\n background-color: var(--color-background-dark) !important;\n}\n.app-navigation-entry.active .app-navigation-entry__actions[data-v-258871fd]:hover .button-vue {\n background-color: var(--color-primary-element) !important;\n}\n.app-navigation-entry[data-v-258871fd] {\n /* hide deletion/collapse of subitems */\n}\n.app-navigation-entry.app-navigation-entry--deleted > ul[data-v-258871fd] {\n display: none;\n}\n.app-navigation-entry:not(.app-navigation-entry--editing) .app-navigation-entry-link[data-v-258871fd], .app-navigation-entry:not(.app-navigation-entry--editing) .app-navigation-entry-button[data-v-258871fd] {\n padding-inline-end: calc((var(--default-clickable-area) - 16px) / 2);\n}\n.app-navigation-entry .app-navigation-entry-link[data-v-258871fd], .app-navigation-entry .app-navigation-entry-button[data-v-258871fd] {\n z-index: 100; /* above the bullet to allow click*/\n display: flex;\n overflow: hidden;\n flex: 1 1 0;\n box-sizing: border-box;\n min-height: var(--default-clickable-area);\n padding: 0;\n white-space: nowrap;\n color: var(--color-main-text);\n background-repeat: no-repeat;\n background-position: calc((var(--default-clickable-area) - 16px) / 2) center;\n background-size: 16px 16px;\n line-height: var(--default-clickable-area);\n}\n.app-navigation-entry .app-navigation-entry-link .app-navigation-entry-icon[data-v-258871fd], .app-navigation-entry .app-navigation-entry-button .app-navigation-entry-icon[data-v-258871fd] {\n display: flex;\n align-items: center;\n flex: 0 0 var(--default-clickable-area);\n justify-content: center;\n width: var(--default-clickable-area);\n height: var(--default-clickable-area);\n background-size: 16px 16px;\n background-repeat: no-repeat;\n background-position: calc((var(--default-clickable-area) - 16px) / 2) center;\n}\n.app-navigation-entry .app-navigation-entry-link .app-navigation-entry__name[data-v-258871fd], .app-navigation-entry .app-navigation-entry-button .app-navigation-entry__name[data-v-258871fd] {\n overflow: hidden;\n max-width: 100%;\n white-space: nowrap;\n text-overflow: ellipsis;\n}\n.app-navigation-entry .app-navigation-entry-link .editingContainer[data-v-258871fd], .app-navigation-entry .app-navigation-entry-button .editingContainer[data-v-258871fd] {\n width: calc(100% - var(--default-clickable-area));\n margin: auto;\n}\n.app-navigation-entry .app-navigation-entry-link[data-v-258871fd]:focus-visible, .app-navigation-entry .app-navigation-entry-button[data-v-258871fd]:focus-visible {\n box-shadow: 0 0 0 4px var(--color-main-background);\n outline: 2px solid var(--color-main-text);\n border-radius: var(--border-radius-element, var(--border-radius-pill));\n}\n\n/* Second level nesting for lists */\n.app-navigation-entry__children[data-v-258871fd] {\n --app-navigation-item-child-offset: 10px;\n position: relative;\n display: flex;\n flex: 0 1 auto;\n flex-direction: column;\n width: 100%;\n gap: var(--default-grid-baseline, 4px);\n padding-inline-start: var(--app-navigation-item-child-offset);\n}\n.app-navigation-entry__children .app-navigation-entry[data-v-258871fd] {\n display: inline-flex;\n flex-wrap: wrap;\n}\n.app-navigation-entry__children .app-navigation-entry__children .app-navigation-entry__children .app-navigation-entry__children .app-navigation-entry__children .app-navigation-entry__children .app-navigation-entry__children[data-v-258871fd] {\n --app-navigation-item-child-offset: 0;\n}\n\n/* Deleted entries */\n.app-navigation-entry__deleted[data-v-258871fd] {\n display: inline-flex;\n flex: 1 1 0;\n padding-inline-start: calc(var(--default-clickable-area) - (var(--default-clickable-area) - 16px) / 2) !important;\n}\n.app-navigation-entry__deleted .app-navigation-entry__deleted-description[data-v-258871fd] {\n position: relative;\n overflow: hidden;\n flex: 1 1 0;\n white-space: nowrap;\n text-overflow: ellipsis;\n line-height: var(--default-clickable-area);\n}\n\n/* counter and actions */\n.app-navigation-entry__utils[data-v-258871fd] {\n display: flex;\n min-width: var(--default-clickable-area);\n align-items: center;\n flex: 0 1 auto;\n justify-content: flex-end;\n}\n.app-navigation-entry__utils.app-navigation-entry__utils--display-actions .action-item.app-navigation-entry__actions[data-v-258871fd] {\n display: inline-block;\n}\n.app-navigation-entry__utils[data-v-258871fd] {\n /* counter */\n}\n.app-navigation-entry__utils .app-navigation-entry__counter-wrapper[data-v-258871fd] {\n margin-inline-end: calc(var(--default-grid-baseline) * 2);\n display: flex;\n align-items: center;\n flex: 0 1 auto;\n}\n.app-navigation-entry__utils[data-v-258871fd] {\n /* actions */\n}\n.app-navigation-entry__utils .action-item.app-navigation-entry__actions[data-v-258871fd] {\n display: none;\n}\n\n/* editing state */\n.app-navigation-entry--editing .app-navigation-entry-edit[data-v-258871fd] {\n z-index: 250;\n opacity: 1;\n}\n\n/* deleted state */\n.app-navigation-entry--deleted .app-navigation-entry-deleted[data-v-258871fd] {\n z-index: 250;\n transform: translateX(0);\n}\n\n/* pinned state */\n.app-navigation-entry--pinned[data-v-258871fd] {\n order: 2;\n margin-top: auto;\n}\n.app-navigation-entry--pinned ~ .app-navigation-entry--pinned[data-v-258871fd] {\n margin-top: 0;\n}\n[data-themes*=highcontrast] .app-navigation-entry[data-v-258871fd]:active {\n background-color: var(--color-primary-element-light-hover) !important;\n}\n.app-navigation-new-item__name[data-v-258871fd] {\n overflow: hidden;\n max-width: 100%;\n white-space: nowrap;\n text-overflow: ellipsis;\n padding-inline-start: 7px;\n font-size: 14px;\n}\n.newItemContainer[data-v-258871fd] {\n width: calc(100% - var(--default-clickable-area));\n margin: auto;\n}"],sourceRoot:""}]);const s=o},9456:(e,t,n)=>{"use strict";n.d(t,{A:()=>s});var a=n(71354),r=n.n(a),i=n(76314),o=n.n(i)()(r());o.push([e.id,".ldap-wizard__controls[data-v-50c01e3a]{display:flex;gap:16px;align-items:center;min-height:45px}.ldap-wizard__controls>*[data-v-50c01e3a]{flex-shrink:0}.ldap-wizard__controls__state_message[data-v-50c01e3a]{flex-shrink:1}.ldap-wizard__controls__state_indicator[data-v-50c01e3a]{width:16px;height:16px;border-radius:100%;background-color:var(--color-element-error)}.ldap-wizard__controls__state_indicator--valid[data-v-50c01e3a]{background-color:var(--color-element-success)}","",{version:3,sources:["webpack://./apps/user_ldap/src/components/WizardControls.vue"],names:[],mappings:"AACA,wCACC,YAAA,CACA,QAAA,CACA,kBAAA,CACA,eAAA,CAEA,0CACC,aAAA,CAGD,uDACC,aAAA,CAGD,yDACC,UAAA,CACA,WAAA,CACA,kBAAA,CACA,2CAAA,CAEA,gEACC,6CAAA",sourcesContent:["\n.ldap-wizard__controls {\n\tdisplay: flex;\n\tgap: 16px;\n\talign-items: center;\n\tmin-height: 45px; // Prevents jumping when the message length need two lines.\n\n\t& > * {\n\t\tflex-shrink: 0;\n\t}\n\n\t&__state_message {\n\t\tflex-shrink: 1;\n\t}\n\n\t&__state_indicator {\n\t\twidth: 16px;\n\t\theight: 16px;\n\t\tborder-radius: 100%;\n\t\tbackground-color: var(--color-element-error);\n\n\t\t&--valid {\n\t\t\tbackground-color: var(--color-element-success);\n\t\t}\n\t}\n}\n"],sourceRoot:""}]);const s=o},9555:(e,t,n)=>{"use strict";n.d(t,{A:()=>s});var a=n(71354),r=n.n(a),i=n(76314),o=n.n(i)()(r());o.push([e.id,"/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/**\n * SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/*\n* Ensure proper alignment of the vue material icons\n*/\n.material-design-icon[data-v-9f864ea4] {\n display: flex;\n align-self: center;\n justify-self: center;\n align-items: center;\n justify-content: center;\n}\n.resource[data-v-9f864ea4] {\n display: flex;\n align-items: center;\n height: var(--default-clickable-area);\n}\n.resource__button[data-v-9f864ea4] {\n width: 100% !important;\n justify-content: flex-start !important;\n padding: 0 !important;\n}\n.resource__button[data-v-9f864ea4] .button-vue__wrapper {\n justify-content: flex-start !important;\n}\n.resource__button[data-v-9f864ea4] .button-vue__wrapper .button-vue__text {\n font-weight: normal !important;\n margin-left: 2px !important;\n}\n.resource__icon[data-v-9f864ea4] {\n width: 32px;\n height: 32px;\n background-color: var(--color-text-maxcontrast);\n border-radius: 50%;\n display: flex;\n align-items: center;\n justify-content: center;\n}\n.resource__icon img[data-v-9f864ea4] {\n width: 16px;\n height: 16px;\n filter: var(--background-invert-if-dark);\n}/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/**\n * SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/*\n* Ensure proper alignment of the vue material icons\n*/\n.material-design-icon[data-v-e224f6ac] {\n display: flex;\n align-self: center;\n justify-self: center;\n align-items: center;\n justify-content: center;\n}\n.team-resources__header[data-v-e224f6ac] {\n font-weight: bold;\n margin-bottom: 6px;\n}\n.related-team[data-v-e224f6ac] {\n border-radius: var(--border-radius-rounded);\n border: 2px solid var(--color-border-dark);\n margin-bottom: 6px;\n}\n.related-team__open[data-v-e224f6ac] {\n border-color: var(--color-primary-element);\n}\n.related-team__header[data-v-e224f6ac] {\n padding: 6px;\n padding-right: 24px;\n display: flex;\n gap: 12px;\n}\n.related-team__name[data-v-e224f6ac] {\n display: flex;\n flex-grow: 1;\n align-items: center;\n gap: 12px;\n padding: 6px 12px;\n font-weight: bold;\n margin: 0;\n}\n.related-team .related-team-provider[data-v-e224f6ac] {\n padding: 6px 12px;\n}\n.related-team .related-team-provider__name[data-v-e224f6ac] {\n font-weight: bold;\n margin-bottom: 3px;\n}\n.related-team .related-team-provider__link[data-v-e224f6ac] {\n display: flex;\n gap: 12px;\n padding: 6px 12px;\n font-weight: bold;\n}\n.related-team .related-team-resource__link[data-v-e224f6ac] {\n display: flex;\n gap: 12px;\n height: var(--default-clickable-area);\n align-items: center;\n border-radius: var(--border-radius-large);\n}\n.related-team .related-team-resource__link[data-v-e224f6ac]:hover {\n background-color: var(--color-background-hover);\n}\n.related-team .related-team-resource__link[data-v-e224f6ac]:focus {\n background-color: var(--color-background-hover);\n outline: 2px solid var(--color-primary-element);\n}\n.related-team .related-team-resource .resource__icon[data-v-e224f6ac] {\n width: var(--default-clickable-area);\n height: var(--default-clickable-area);\n display: flex;\n align-items: center;\n justify-content: center;\n text-align: center;\n}\n.related-team .related-team-resource .resource__icon > img[data-v-e224f6ac] {\n border-radius: var(--border-radius-pill);\n overflow: hidden;\n width: 32px;\n height: 32px;\n}/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/**\n * SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/*\n* Ensure proper alignment of the vue material icons\n*/\n.material-design-icon[data-v-eaa109ec] {\n display: flex;\n align-self: center;\n justify-self: center;\n align-items: center;\n justify-content: center;\n}\n.related-resources__header h5[data-v-eaa109ec] {\n font-weight: bold;\n margin-bottom: 6px;\n}\n.related-resources__header p[data-v-eaa109ec] {\n color: var(--color-text-maxcontrast);\n}","",{version:3,sources:["webpack://./node_modules/@nextcloud/vue/dist/assets/NcRelatedResourcesPanel-BgMc8bue.css"],names:[],mappings:"AAAA;;;EAGE;AACF;;;EAGE;AACF;;CAEC;AACD;EACE,aAAa;EACb,kBAAkB;EAClB,oBAAoB;EACpB,mBAAmB;EACnB,uBAAuB;AACzB;AACA;EACE,aAAa;EACb,mBAAmB;EACnB,qCAAqC;AACvC;AACA;EACE,sBAAsB;EACtB,sCAAsC;EACtC,qBAAqB;AACvB;AACA;EACE,sCAAsC;AACxC;AACA;EACE,8BAA8B;EAC9B,2BAA2B;AAC7B;AACA;EACE,WAAW;EACX,YAAY;EACZ,+CAA+C;EAC/C,kBAAkB;EAClB,aAAa;EACb,mBAAmB;EACnB,uBAAuB;AACzB;AACA;EACE,WAAW;EACX,YAAY;EACZ,wCAAwC;AAC1C,CAAC;;;EAGC;AACF;;;EAGE;AACF;;CAEC;AACD;EACE,aAAa;EACb,kBAAkB;EAClB,oBAAoB;EACpB,mBAAmB;EACnB,uBAAuB;AACzB;AACA;EACE,iBAAiB;EACjB,kBAAkB;AACpB;AACA;EACE,2CAA2C;EAC3C,0CAA0C;EAC1C,kBAAkB;AACpB;AACA;EACE,0CAA0C;AAC5C;AACA;EACE,YAAY;EACZ,mBAAmB;EACnB,aAAa;EACb,SAAS;AACX;AACA;EACE,aAAa;EACb,YAAY;EACZ,mBAAmB;EACnB,SAAS;EACT,iBAAiB;EACjB,iBAAiB;EACjB,SAAS;AACX;AACA;EACE,iBAAiB;AACnB;AACA;EACE,iBAAiB;EACjB,kBAAkB;AACpB;AACA;EACE,aAAa;EACb,SAAS;EACT,iBAAiB;EACjB,iBAAiB;AACnB;AACA;EACE,aAAa;EACb,SAAS;EACT,qCAAqC;EACrC,mBAAmB;EACnB,yCAAyC;AAC3C;AACA;EACE,+CAA+C;AACjD;AACA;EACE,+CAA+C;EAC/C,+CAA+C;AACjD;AACA;EACE,oCAAoC;EACpC,qCAAqC;EACrC,aAAa;EACb,mBAAmB;EACnB,uBAAuB;EACvB,kBAAkB;AACpB;AACA;EACE,wCAAwC;EACxC,gBAAgB;EAChB,WAAW;EACX,YAAY;AACd,CAAC;;;EAGC;AACF;;;EAGE;AACF;;CAEC;AACD;EACE,aAAa;EACb,kBAAkB;EAClB,oBAAoB;EACpB,mBAAmB;EACnB,uBAAuB;AACzB;AACA;EACE,iBAAiB;EACjB,kBAAkB;AACpB;AACA;EACE,oCAAoC;AACtC",sourcesContent:["/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/**\n * SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/*\n* Ensure proper alignment of the vue material icons\n*/\n.material-design-icon[data-v-9f864ea4] {\n display: flex;\n align-self: center;\n justify-self: center;\n align-items: center;\n justify-content: center;\n}\n.resource[data-v-9f864ea4] {\n display: flex;\n align-items: center;\n height: var(--default-clickable-area);\n}\n.resource__button[data-v-9f864ea4] {\n width: 100% !important;\n justify-content: flex-start !important;\n padding: 0 !important;\n}\n.resource__button[data-v-9f864ea4] .button-vue__wrapper {\n justify-content: flex-start !important;\n}\n.resource__button[data-v-9f864ea4] .button-vue__wrapper .button-vue__text {\n font-weight: normal !important;\n margin-left: 2px !important;\n}\n.resource__icon[data-v-9f864ea4] {\n width: 32px;\n height: 32px;\n background-color: var(--color-text-maxcontrast);\n border-radius: 50%;\n display: flex;\n align-items: center;\n justify-content: center;\n}\n.resource__icon img[data-v-9f864ea4] {\n width: 16px;\n height: 16px;\n filter: var(--background-invert-if-dark);\n}/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/**\n * SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/*\n* Ensure proper alignment of the vue material icons\n*/\n.material-design-icon[data-v-e224f6ac] {\n display: flex;\n align-self: center;\n justify-self: center;\n align-items: center;\n justify-content: center;\n}\n.team-resources__header[data-v-e224f6ac] {\n font-weight: bold;\n margin-bottom: 6px;\n}\n.related-team[data-v-e224f6ac] {\n border-radius: var(--border-radius-rounded);\n border: 2px solid var(--color-border-dark);\n margin-bottom: 6px;\n}\n.related-team__open[data-v-e224f6ac] {\n border-color: var(--color-primary-element);\n}\n.related-team__header[data-v-e224f6ac] {\n padding: 6px;\n padding-right: 24px;\n display: flex;\n gap: 12px;\n}\n.related-team__name[data-v-e224f6ac] {\n display: flex;\n flex-grow: 1;\n align-items: center;\n gap: 12px;\n padding: 6px 12px;\n font-weight: bold;\n margin: 0;\n}\n.related-team .related-team-provider[data-v-e224f6ac] {\n padding: 6px 12px;\n}\n.related-team .related-team-provider__name[data-v-e224f6ac] {\n font-weight: bold;\n margin-bottom: 3px;\n}\n.related-team .related-team-provider__link[data-v-e224f6ac] {\n display: flex;\n gap: 12px;\n padding: 6px 12px;\n font-weight: bold;\n}\n.related-team .related-team-resource__link[data-v-e224f6ac] {\n display: flex;\n gap: 12px;\n height: var(--default-clickable-area);\n align-items: center;\n border-radius: var(--border-radius-large);\n}\n.related-team .related-team-resource__link[data-v-e224f6ac]:hover {\n background-color: var(--color-background-hover);\n}\n.related-team .related-team-resource__link[data-v-e224f6ac]:focus {\n background-color: var(--color-background-hover);\n outline: 2px solid var(--color-primary-element);\n}\n.related-team .related-team-resource .resource__icon[data-v-e224f6ac] {\n width: var(--default-clickable-area);\n height: var(--default-clickable-area);\n display: flex;\n align-items: center;\n justify-content: center;\n text-align: center;\n}\n.related-team .related-team-resource .resource__icon > img[data-v-e224f6ac] {\n border-radius: var(--border-radius-pill);\n overflow: hidden;\n width: 32px;\n height: 32px;\n}/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/**\n * SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/*\n* Ensure proper alignment of the vue material icons\n*/\n.material-design-icon[data-v-eaa109ec] {\n display: flex;\n align-self: center;\n justify-self: center;\n align-items: center;\n justify-content: center;\n}\n.related-resources__header h5[data-v-eaa109ec] {\n font-weight: bold;\n margin-bottom: 6px;\n}\n.related-resources__header p[data-v-eaa109ec] {\n color: var(--color-text-maxcontrast);\n}"],sourceRoot:""}]);const s=o},14693:(e,t,n)=>{"use strict";n.d(t,{A:()=>s});var a=n(71354),r=n.n(a),i=n(76314),o=n.n(i)()(r());o.push([e.id,"/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/**\n * SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/*\n* Ensure proper alignment of the vue material icons\n*/\n.material-design-icon[data-v-018dbbe8] {\n display: flex;\n align-self: center;\n justify-self: center;\n align-items: center;\n justify-content: center;\n}\n\n/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/**\n * color-text-lighter\t\tnormal state\n * color-text-lighter\t\tactive state\n * color-text-maxcontrast \tdisabled state\n */\n/* Default global values */\nbutton[data-v-018dbbe8]:not(.button-vue),\ninput[data-v-018dbbe8]:not([type=range]),\ntextarea[data-v-018dbbe8] {\n margin: 0;\n padding: 7px 6px;\n cursor: text;\n color: var(--color-text-lighter);\n border: 1px solid var(--color-border-dark);\n border-radius: var(--border-radius);\n outline: none;\n background-color: var(--color-main-background);\n font-size: 13px;\n}\nbutton[data-v-018dbbe8]:not(.button-vue):not(:disabled):not(.primary):hover, button[data-v-018dbbe8]:not(.button-vue):not(:disabled):not(.primary):focus, button:not(.button-vue):not(:disabled):not(.primary).active[data-v-018dbbe8],\ninput[data-v-018dbbe8]:not([type=range]):not(:disabled):not(.primary):hover,\ninput[data-v-018dbbe8]:not([type=range]):not(:disabled):not(.primary):focus,\ninput:not([type=range]):not(:disabled):not(.primary).active[data-v-018dbbe8],\ntextarea[data-v-018dbbe8]:not(:disabled):not(.primary):hover,\ntextarea[data-v-018dbbe8]:not(:disabled):not(.primary):focus,\ntextarea:not(:disabled):not(.primary).active[data-v-018dbbe8] {\n /* active class used for multiselect */\n border-color: var(--color-primary-element);\n outline: none;\n}\nbutton[data-v-018dbbe8]:not(.button-vue):not(:disabled):not(.primary):active,\ninput[data-v-018dbbe8]:not([type=range]):not(:disabled):not(.primary):active,\ntextarea[data-v-018dbbe8]:not(:disabled):not(.primary):active {\n color: var(--color-text-light);\n outline: none;\n background-color: var(--color-main-background);\n}\nbutton[data-v-018dbbe8]:not(.button-vue):disabled,\ninput[data-v-018dbbe8]:not([type=range]):disabled,\ntextarea[data-v-018dbbe8]:disabled {\n cursor: default;\n opacity: 0.5;\n color: var(--color-text-maxcontrast);\n background-color: var(--color-background-dark);\n}\nbutton[data-v-018dbbe8]:not(.button-vue):required,\ninput[data-v-018dbbe8]:not([type=range]):required,\ntextarea[data-v-018dbbe8]:required {\n box-shadow: none;\n}\nbutton[data-v-018dbbe8]:not(.button-vue):invalid,\ninput[data-v-018dbbe8]:not([type=range]):invalid,\ntextarea[data-v-018dbbe8]:invalid {\n border-color: var(--color-border-error, var(--color-error));\n box-shadow: none !important;\n}\nbutton[data-v-018dbbe8]:not(.button-vue),\ninput[data-v-018dbbe8]:not([type=range]),\ntextarea[data-v-018dbbe8] {\n /* Primary action button, use sparingly */\n}\nbutton:not(.button-vue).primary[data-v-018dbbe8],\ninput:not([type=range]).primary[data-v-018dbbe8],\ntextarea.primary[data-v-018dbbe8] {\n cursor: pointer;\n color: var(--color-primary-element-text);\n border-color: var(--color-primary-element);\n background-color: var(--color-primary-element);\n}\nbutton:not(.button-vue).primary[data-v-018dbbe8]:not(:disabled):hover, button:not(.button-vue).primary[data-v-018dbbe8]:not(:disabled):focus, button:not(.button-vue).primary[data-v-018dbbe8]:not(:disabled):active,\ninput:not([type=range]).primary[data-v-018dbbe8]:not(:disabled):hover,\ninput:not([type=range]).primary[data-v-018dbbe8]:not(:disabled):focus,\ninput:not([type=range]).primary[data-v-018dbbe8]:not(:disabled):active,\ntextarea.primary[data-v-018dbbe8]:not(:disabled):hover,\ntextarea.primary[data-v-018dbbe8]:not(:disabled):focus,\ntextarea.primary[data-v-018dbbe8]:not(:disabled):active {\n border-color: var(--color-primary-element-light);\n background-color: var(--color-primary-element-light);\n}\nbutton:not(.button-vue).primary[data-v-018dbbe8]:not(:disabled):active,\ninput:not([type=range]).primary[data-v-018dbbe8]:not(:disabled):active,\ntextarea.primary[data-v-018dbbe8]:not(:disabled):active {\n color: var(--color-primary-element-text-dark);\n}\nbutton:not(.button-vue).primary[data-v-018dbbe8]:disabled,\ninput:not([type=range]).primary[data-v-018dbbe8]:disabled,\ntextarea.primary[data-v-018dbbe8]:disabled {\n cursor: default;\n color: var(--color-primary-element-text-dark);\n background-color: var(--color-primary-element);\n}\n\n/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nli.action[data-v-018dbbe8]:hover, li.action.active[data-v-018dbbe8] {\n border-radius: 6px;\n padding: 0;\n}\nli.action[data-v-018dbbe8]:hover {\n background-color: var(--color-background-hover);\n}\n.action--disabled[data-v-018dbbe8] {\n pointer-events: none;\n opacity: 0.5;\n}\n.action--disabled[data-v-018dbbe8]:hover, .action--disabled[data-v-018dbbe8]:focus {\n cursor: default;\n opacity: 0.5;\n}\n.action--disabled *[data-v-018dbbe8] {\n opacity: 1 !important;\n}\n.action-text-editable[data-v-018dbbe8] {\n display: flex;\n align-items: flex-start;\n width: 100%;\n height: auto;\n margin: 0;\n padding: 0;\n cursor: pointer;\n white-space: nowrap;\n color: var(--color-main-text);\n border: 0;\n border-radius: 0;\n background-color: transparent;\n box-shadow: none;\n font-weight: normal;\n line-height: var(--default-clickable-area);\n}\n.action-text-editable > span[data-v-018dbbe8] {\n cursor: pointer;\n white-space: nowrap;\n}\n.action-text-editable__icon[data-v-018dbbe8] {\n min-width: 0; /* Overwrite icons*/\n min-height: 0;\n /* Keep padding to define the width to\n \tassure correct position of a possible text */\n padding: calc(var(--default-clickable-area) / 2) 0 calc(var(--default-clickable-area) / 2) var(--default-clickable-area);\n background-position: calc((var(--default-clickable-area) - 16px) / 2) center;\n background-size: 16px;\n}\n.action-text-editable[data-v-018dbbe8] .material-design-icon {\n width: var(--default-clickable-area);\n height: var(--default-clickable-area);\n opacity: 1;\n}\n.action-text-editable[data-v-018dbbe8] .material-design-icon .material-design-icon__svg {\n vertical-align: middle;\n}\n.action-text-editable__form[data-v-018dbbe8] {\n display: flex;\n flex: 1 1 auto;\n flex-direction: column;\n position: relative;\n margin: 4px 0;\n padding-inline-end: calc((var(--default-clickable-area) - 16px) / 2);\n}\n.action-text-editable__submit[data-v-018dbbe8] {\n position: absolute;\n inset-inline-start: 0;\n top: auto;\n width: 1px;\n height: 1px;\n overflow: hidden;\n z-index: -1;\n opacity: 0;\n}\n.action-text-editable__label[data-v-018dbbe8] {\n display: flex;\n align-items: center;\n justify-content: center;\n position: absolute;\n inset-inline-end: calc((var(--default-clickable-area) - 16px) / 2 + 1px);\n bottom: 1px;\n width: calc(var(--default-clickable-area) - 8px);\n height: calc(var(--default-clickable-area) - 8px);\n box-sizing: border-box;\n margin: 0;\n padding: 7px 6px;\n border: 0;\n border-radius: 50%;\n /* Avoid background under border */\n background-color: var(--color-main-background);\n background-clip: padding-box;\n}\n.action-text-editable__label[data-v-018dbbe8], .action-text-editable__label *[data-v-018dbbe8] {\n cursor: pointer;\n}\n.action-text-editable[data-v-018dbbe8] {\n /* Inputs inside popover supports text, submit & reset */\n}\n.action-text-editable__textarea[data-v-018dbbe8] {\n flex: 1 1 auto;\n color: inherit;\n border-color: var(--color-border-maxcontrast);\n min-height: calc(var(--default-clickable-area) * 2 - 8px); /* twice the element margin-y */\n max-height: calc(var(--default-clickable-area) * 3 - 8px); /* twice the element margin-y */\n min-width: calc(var(--default-clickable-area) * 4);\n width: 100% !important;\n margin: 0;\n}\n.action-text-editable__textarea[data-v-018dbbe8]:disabled {\n cursor: default;\n}\n.action-text-editable__textarea[data-v-018dbbe8] {\n /* only show confirm borders if input is not focused */\n}\n.action-text-editable__textarea:not(:active):not(:hover):not(:focus):invalid + .action-text-editable__label[data-v-018dbbe8] {\n background-color: var(--color-error);\n}\n.action-text-editable__textarea:not(:active):not(:hover):not(:focus):not(:disabled) + .action-text-editable__label[data-v-018dbbe8]:active, .action-text-editable__textarea:not(:active):not(:hover):not(:focus):not(:disabled) + .action-text-editable__label[data-v-018dbbe8]:hover, .action-text-editable__textarea:not(:active):not(:hover):not(:focus):not(:disabled) + .action-text-editable__label[data-v-018dbbe8]:focus {\n background-color: var(--color-primary-element);\n color: var(--color-primary-element-text);\n}\n.action-text-editable__textarea:active:not(:disabled) + .action-text-editable__label[data-v-018dbbe8], .action-text-editable__textarea:hover:not(:disabled) + .action-text-editable__label[data-v-018dbbe8], .action-text-editable__textarea:focus:not(:disabled) + .action-text-editable__label[data-v-018dbbe8] {\n /* above previous input */\n z-index: 2;\n border-color: var(--color-primary-element);\n border-inline-start-color: transparent;\n}\nli:last-child > .action-text-editable[data-v-018dbbe8] {\n margin-bottom: calc((var(--default-clickable-area) - 16px) / 2 - 4px);\n}\nli:first-child > .action-text-editable[data-v-018dbbe8] {\n margin-top: calc((var(--default-clickable-area) - 16px) / 2 - 4px);\n}","",{version:3,sources:["webpack://./node_modules/@nextcloud/vue/dist/assets/NcActionTextEditable-BCmDMuUg.css"],names:[],mappings:"AAAA;;;EAGE;AACF;;;EAGE;AACF;;CAEC;AACD;EACE,aAAa;EACb,kBAAkB;EAClB,oBAAoB;EACpB,mBAAmB;EACnB,uBAAuB;AACzB;;AAEA;;;EAGE;AACF;;;;EAIE;AACF,0BAA0B;AAC1B;;;EAGE,SAAS;EACT,gBAAgB;EAChB,YAAY;EACZ,gCAAgC;EAChC,0CAA0C;EAC1C,mCAAmC;EACnC,aAAa;EACb,8CAA8C;EAC9C,eAAe;AACjB;AACA;;;;;;;EAOE,sCAAsC;EACtC,0CAA0C;EAC1C,aAAa;AACf;AACA;;;EAGE,8BAA8B;EAC9B,aAAa;EACb,8CAA8C;AAChD;AACA;;;EAGE,eAAe;EACf,YAAY;EACZ,oCAAoC;EACpC,8CAA8C;AAChD;AACA;;;EAGE,gBAAgB;AAClB;AACA;;;EAGE,2DAA2D;EAC3D,2BAA2B;AAC7B;AACA;;;EAGE,yCAAyC;AAC3C;AACA;;;EAGE,eAAe;EACf,wCAAwC;EACxC,0CAA0C;EAC1C,8CAA8C;AAChD;AACA;;;;;;;EAOE,gDAAgD;EAChD,oDAAoD;AACtD;AACA;;;EAGE,6CAA6C;AAC/C;AACA;;;EAGE,eAAe;EACf,6CAA6C;EAC7C,8CAA8C;AAChD;;AAEA;;;EAGE;AACF;EACE,kBAAkB;EAClB,UAAU;AACZ;AACA;EACE,+CAA+C;AACjD;AACA;EACE,oBAAoB;EACpB,YAAY;AACd;AACA;EACE,eAAe;EACf,YAAY;AACd;AACA;EACE,qBAAqB;AACvB;AACA;EACE,aAAa;EACb,uBAAuB;EACvB,WAAW;EACX,YAAY;EACZ,SAAS;EACT,UAAU;EACV,eAAe;EACf,mBAAmB;EACnB,6BAA6B;EAC7B,SAAS;EACT,gBAAgB;EAChB,6BAA6B;EAC7B,gBAAgB;EAChB,mBAAmB;EACnB,0CAA0C;AAC5C;AACA;EACE,eAAe;EACf,mBAAmB;AACrB;AACA;EACE,YAAY,EAAE,mBAAmB;EACjC,aAAa;EACb;+CAC6C;EAC7C,wHAAwH;EACxH,4EAA4E;EAC5E,qBAAqB;AACvB;AACA;EACE,oCAAoC;EACpC,qCAAqC;EACrC,UAAU;AACZ;AACA;EACE,sBAAsB;AACxB;AACA;EACE,aAAa;EACb,cAAc;EACd,sBAAsB;EACtB,kBAAkB;EAClB,aAAa;EACb,oEAAoE;AACtE;AACA;EACE,kBAAkB;EAClB,qBAAqB;EACrB,SAAS;EACT,UAAU;EACV,WAAW;EACX,gBAAgB;EAChB,WAAW;EACX,UAAU;AACZ;AACA;EACE,aAAa;EACb,mBAAmB;EACnB,uBAAuB;EACvB,kBAAkB;EAClB,wEAAwE;EACxE,WAAW;EACX,gDAAgD;EAChD,iDAAiD;EACjD,sBAAsB;EACtB,SAAS;EACT,gBAAgB;EAChB,SAAS;EACT,kBAAkB;EAClB,kCAAkC;EAClC,8CAA8C;EAC9C,4BAA4B;AAC9B;AACA;EACE,eAAe;AACjB;AACA;EACE,wDAAwD;AAC1D;AACA;EACE,cAAc;EACd,cAAc;EACd,6CAA6C;EAC7C,yDAAyD,EAAE,+BAA+B;EAC1F,yDAAyD,EAAE,+BAA+B;EAC1F,kDAAkD;EAClD,sBAAsB;EACtB,SAAS;AACX;AACA;EACE,eAAe;AACjB;AACA;EACE,sDAAsD;AACxD;AACA;EACE,oCAAoC;AACtC;AACA;EACE,8CAA8C;EAC9C,wCAAwC;AAC1C;AACA;EACE,yBAAyB;EACzB,UAAU;EACV,0CAA0C;EAC1C,sCAAsC;AACxC;AACA;EACE,qEAAqE;AACvE;AACA;EACE,kEAAkE;AACpE",sourcesContent:["/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/**\n * SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/*\n* Ensure proper alignment of the vue material icons\n*/\n.material-design-icon[data-v-018dbbe8] {\n display: flex;\n align-self: center;\n justify-self: center;\n align-items: center;\n justify-content: center;\n}\n\n/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/**\n * color-text-lighter\t\tnormal state\n * color-text-lighter\t\tactive state\n * color-text-maxcontrast \tdisabled state\n */\n/* Default global values */\nbutton[data-v-018dbbe8]:not(.button-vue),\ninput[data-v-018dbbe8]:not([type=range]),\ntextarea[data-v-018dbbe8] {\n margin: 0;\n padding: 7px 6px;\n cursor: text;\n color: var(--color-text-lighter);\n border: 1px solid var(--color-border-dark);\n border-radius: var(--border-radius);\n outline: none;\n background-color: var(--color-main-background);\n font-size: 13px;\n}\nbutton[data-v-018dbbe8]:not(.button-vue):not(:disabled):not(.primary):hover, button[data-v-018dbbe8]:not(.button-vue):not(:disabled):not(.primary):focus, button:not(.button-vue):not(:disabled):not(.primary).active[data-v-018dbbe8],\ninput[data-v-018dbbe8]:not([type=range]):not(:disabled):not(.primary):hover,\ninput[data-v-018dbbe8]:not([type=range]):not(:disabled):not(.primary):focus,\ninput:not([type=range]):not(:disabled):not(.primary).active[data-v-018dbbe8],\ntextarea[data-v-018dbbe8]:not(:disabled):not(.primary):hover,\ntextarea[data-v-018dbbe8]:not(:disabled):not(.primary):focus,\ntextarea:not(:disabled):not(.primary).active[data-v-018dbbe8] {\n /* active class used for multiselect */\n border-color: var(--color-primary-element);\n outline: none;\n}\nbutton[data-v-018dbbe8]:not(.button-vue):not(:disabled):not(.primary):active,\ninput[data-v-018dbbe8]:not([type=range]):not(:disabled):not(.primary):active,\ntextarea[data-v-018dbbe8]:not(:disabled):not(.primary):active {\n color: var(--color-text-light);\n outline: none;\n background-color: var(--color-main-background);\n}\nbutton[data-v-018dbbe8]:not(.button-vue):disabled,\ninput[data-v-018dbbe8]:not([type=range]):disabled,\ntextarea[data-v-018dbbe8]:disabled {\n cursor: default;\n opacity: 0.5;\n color: var(--color-text-maxcontrast);\n background-color: var(--color-background-dark);\n}\nbutton[data-v-018dbbe8]:not(.button-vue):required,\ninput[data-v-018dbbe8]:not([type=range]):required,\ntextarea[data-v-018dbbe8]:required {\n box-shadow: none;\n}\nbutton[data-v-018dbbe8]:not(.button-vue):invalid,\ninput[data-v-018dbbe8]:not([type=range]):invalid,\ntextarea[data-v-018dbbe8]:invalid {\n border-color: var(--color-border-error, var(--color-error));\n box-shadow: none !important;\n}\nbutton[data-v-018dbbe8]:not(.button-vue),\ninput[data-v-018dbbe8]:not([type=range]),\ntextarea[data-v-018dbbe8] {\n /* Primary action button, use sparingly */\n}\nbutton:not(.button-vue).primary[data-v-018dbbe8],\ninput:not([type=range]).primary[data-v-018dbbe8],\ntextarea.primary[data-v-018dbbe8] {\n cursor: pointer;\n color: var(--color-primary-element-text);\n border-color: var(--color-primary-element);\n background-color: var(--color-primary-element);\n}\nbutton:not(.button-vue).primary[data-v-018dbbe8]:not(:disabled):hover, button:not(.button-vue).primary[data-v-018dbbe8]:not(:disabled):focus, button:not(.button-vue).primary[data-v-018dbbe8]:not(:disabled):active,\ninput:not([type=range]).primary[data-v-018dbbe8]:not(:disabled):hover,\ninput:not([type=range]).primary[data-v-018dbbe8]:not(:disabled):focus,\ninput:not([type=range]).primary[data-v-018dbbe8]:not(:disabled):active,\ntextarea.primary[data-v-018dbbe8]:not(:disabled):hover,\ntextarea.primary[data-v-018dbbe8]:not(:disabled):focus,\ntextarea.primary[data-v-018dbbe8]:not(:disabled):active {\n border-color: var(--color-primary-element-light);\n background-color: var(--color-primary-element-light);\n}\nbutton:not(.button-vue).primary[data-v-018dbbe8]:not(:disabled):active,\ninput:not([type=range]).primary[data-v-018dbbe8]:not(:disabled):active,\ntextarea.primary[data-v-018dbbe8]:not(:disabled):active {\n color: var(--color-primary-element-text-dark);\n}\nbutton:not(.button-vue).primary[data-v-018dbbe8]:disabled,\ninput:not([type=range]).primary[data-v-018dbbe8]:disabled,\ntextarea.primary[data-v-018dbbe8]:disabled {\n cursor: default;\n color: var(--color-primary-element-text-dark);\n background-color: var(--color-primary-element);\n}\n\n/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nli.action[data-v-018dbbe8]:hover, li.action.active[data-v-018dbbe8] {\n border-radius: 6px;\n padding: 0;\n}\nli.action[data-v-018dbbe8]:hover {\n background-color: var(--color-background-hover);\n}\n.action--disabled[data-v-018dbbe8] {\n pointer-events: none;\n opacity: 0.5;\n}\n.action--disabled[data-v-018dbbe8]:hover, .action--disabled[data-v-018dbbe8]:focus {\n cursor: default;\n opacity: 0.5;\n}\n.action--disabled *[data-v-018dbbe8] {\n opacity: 1 !important;\n}\n.action-text-editable[data-v-018dbbe8] {\n display: flex;\n align-items: flex-start;\n width: 100%;\n height: auto;\n margin: 0;\n padding: 0;\n cursor: pointer;\n white-space: nowrap;\n color: var(--color-main-text);\n border: 0;\n border-radius: 0;\n background-color: transparent;\n box-shadow: none;\n font-weight: normal;\n line-height: var(--default-clickable-area);\n}\n.action-text-editable > span[data-v-018dbbe8] {\n cursor: pointer;\n white-space: nowrap;\n}\n.action-text-editable__icon[data-v-018dbbe8] {\n min-width: 0; /* Overwrite icons*/\n min-height: 0;\n /* Keep padding to define the width to\n \tassure correct position of a possible text */\n padding: calc(var(--default-clickable-area) / 2) 0 calc(var(--default-clickable-area) / 2) var(--default-clickable-area);\n background-position: calc((var(--default-clickable-area) - 16px) / 2) center;\n background-size: 16px;\n}\n.action-text-editable[data-v-018dbbe8] .material-design-icon {\n width: var(--default-clickable-area);\n height: var(--default-clickable-area);\n opacity: 1;\n}\n.action-text-editable[data-v-018dbbe8] .material-design-icon .material-design-icon__svg {\n vertical-align: middle;\n}\n.action-text-editable__form[data-v-018dbbe8] {\n display: flex;\n flex: 1 1 auto;\n flex-direction: column;\n position: relative;\n margin: 4px 0;\n padding-inline-end: calc((var(--default-clickable-area) - 16px) / 2);\n}\n.action-text-editable__submit[data-v-018dbbe8] {\n position: absolute;\n inset-inline-start: 0;\n top: auto;\n width: 1px;\n height: 1px;\n overflow: hidden;\n z-index: -1;\n opacity: 0;\n}\n.action-text-editable__label[data-v-018dbbe8] {\n display: flex;\n align-items: center;\n justify-content: center;\n position: absolute;\n inset-inline-end: calc((var(--default-clickable-area) - 16px) / 2 + 1px);\n bottom: 1px;\n width: calc(var(--default-clickable-area) - 8px);\n height: calc(var(--default-clickable-area) - 8px);\n box-sizing: border-box;\n margin: 0;\n padding: 7px 6px;\n border: 0;\n border-radius: 50%;\n /* Avoid background under border */\n background-color: var(--color-main-background);\n background-clip: padding-box;\n}\n.action-text-editable__label[data-v-018dbbe8], .action-text-editable__label *[data-v-018dbbe8] {\n cursor: pointer;\n}\n.action-text-editable[data-v-018dbbe8] {\n /* Inputs inside popover supports text, submit & reset */\n}\n.action-text-editable__textarea[data-v-018dbbe8] {\n flex: 1 1 auto;\n color: inherit;\n border-color: var(--color-border-maxcontrast);\n min-height: calc(var(--default-clickable-area) * 2 - 8px); /* twice the element margin-y */\n max-height: calc(var(--default-clickable-area) * 3 - 8px); /* twice the element margin-y */\n min-width: calc(var(--default-clickable-area) * 4);\n width: 100% !important;\n margin: 0;\n}\n.action-text-editable__textarea[data-v-018dbbe8]:disabled {\n cursor: default;\n}\n.action-text-editable__textarea[data-v-018dbbe8] {\n /* only show confirm borders if input is not focused */\n}\n.action-text-editable__textarea:not(:active):not(:hover):not(:focus):invalid + .action-text-editable__label[data-v-018dbbe8] {\n background-color: var(--color-error);\n}\n.action-text-editable__textarea:not(:active):not(:hover):not(:focus):not(:disabled) + .action-text-editable__label[data-v-018dbbe8]:active, .action-text-editable__textarea:not(:active):not(:hover):not(:focus):not(:disabled) + .action-text-editable__label[data-v-018dbbe8]:hover, .action-text-editable__textarea:not(:active):not(:hover):not(:focus):not(:disabled) + .action-text-editable__label[data-v-018dbbe8]:focus {\n background-color: var(--color-primary-element);\n color: var(--color-primary-element-text);\n}\n.action-text-editable__textarea:active:not(:disabled) + .action-text-editable__label[data-v-018dbbe8], .action-text-editable__textarea:hover:not(:disabled) + .action-text-editable__label[data-v-018dbbe8], .action-text-editable__textarea:focus:not(:disabled) + .action-text-editable__label[data-v-018dbbe8] {\n /* above previous input */\n z-index: 2;\n border-color: var(--color-primary-element);\n border-inline-start-color: transparent;\n}\nli:last-child > .action-text-editable[data-v-018dbbe8] {\n margin-bottom: calc((var(--default-clickable-area) - 16px) / 2 - 4px);\n}\nli:first-child > .action-text-editable[data-v-018dbbe8] {\n margin-top: calc((var(--default-clickable-area) - 16px) / 2 - 4px);\n}"],sourceRoot:""}]);const s=o},15340:()=>{},16343:(e,t,n)=>{"use strict";n.d(t,{a:()=>c,e:()=>l,g:()=>d,s:()=>u});var a=n(80474),r=n(43850),i=n(24715);const o=(0,a.c0)("nextcloud-vue").persist(!0).build();let s;function l(e,t=10){s||(s=new r.EmojiIndex(i));const n=d();let a;return e?(a=s.search(`:${e}`,t),a.lengths.emoji(e))||[],a.map(e=>e.getSkin(n))}function c(e){r.frequently.add(e)}function d(){const e=Number.parseInt(o.getItem("NcEmojiPicker::currentSkinTone")??"1");return Math.min(Math.max(e,1),6)}function u(e){e=Math.min(Math.max(e,1),6),o.setItem("NcEmojiPicker::currentSkinTone",e.toString())}},16768:(e,t,n)=>{"use strict";n.d(t,{N:()=>Qt}),n(87353);var a=n(43819),r=n(86435),i=n(76643),o=n(87798),s=n(19998),l=n(3288),c=n(8019),d=n(85471),u=n(40173),p=n(36746),A=n(21777),f=n(19051),v=n(63814),g=n(32505),m=n(34935),h=n(3168),b=n(44111),C=n(51431),_=n(88751),y=n(33239),x=n(47970),E=n(64546);const k={name:"NcReferenceList",components:{NcReferenceWidget:m.f},props:{text:{type:String,default:""},referenceData:{type:Array,default:null},limit:{type:Number,default:1},displayFallback:{type:Boolean,default:!1},interactive:{type:Boolean,default:!0},interactiveOptIn:{type:Boolean,default:!1}},data:()=>({references:null,loading:!0}),computed:{isVisible(){return this.loading||0!==this.displayedReferences.length},values(){return this.referenceData?this.referenceData:!this.displayFallback||this.loading||this.references?this.references?Object.values(this.references):[]:[this.fallbackReference]},firstReference(){return this.values[0]??null},displayedReferences(){return this.values.filter(Boolean).slice(0,this.limit)},fallbackReference(){return{accessible:!0,openGraphObject:{id:this.text,link:this.text,name:this.text},richObjectType:"open-graph"}}},watch:{text:"fetch"},mounted(){this.fetch()},methods:{fetch(){return this.loading=!0,this.referenceData?(this.references=null,void(this.loading=!1)):new RegExp(b.U).exec(this.text)?void this.resolve().then(e=>{this.references=e.data.ocs.data.references,this.loading=!1,this.$emit("loaded")}).catch(e=>{h.l.error("Failed to extract references",{error:e}),this.loading=!1,this.$emit("loaded")}):(this.references=null,void(this.loading=!1))},resolve(){const e=new RegExp(b.U).exec(this.text.trim()),t=null===(0,A.HW)();return 1===this.limit&&e?t?f.Ay.get((0,v.KT)("references/resolvePublic")+`?reference=${encodeURIComponent(e[0])}&sharingToken=${(0,g.G)()}`):f.Ay.get((0,v.KT)("references/resolve")+`?reference=${encodeURIComponent(e[0])}`):t?f.Ay.post((0,v.KT)("references/extractPublic"),{text:this.text,resolve:!0,limit:this.limit,sharingToken:(0,g.G)()}):f.Ay.post((0,v.KT)("references/extract"),{text:this.text,resolve:!0,limit:this.limit})}}};var w=function(){var e=this,t=e._self._c;return e.isVisible?t("div",{staticClass:"widgets--list",class:{"icon-loading":e.loading}},e._l(e.displayedReferences,function(n){return t("NcReferenceWidget",{key:n.openGraphObject?.id,attrs:{reference:n,interactive:e.interactive,"interactive-opt-in":e.interactiveOptIn}})}),1):e._e()},B=[];const P=(0,C.n)(k,w,B,!1,null,"a50e616b").exports;function N(e,t){const n=String(e);if("string"!=typeof t)throw new TypeError("Expected character");let a=0,r=n.indexOf(t);for(;-1!==r;)a++,r=n.indexOf(t,r+t.length);return a}const I=z(/[A-Za-z]/),S=z(/[\dA-Za-z]/);function D(e){return null!==e&&e<-2}function L(e){return null!==e&&(e<0||32===e)}function T(e){return-2===e||-1===e||32===e}const F=z(new RegExp("\\p{P}|\\p{S}","u")),G=z(/\s/);function z(e){return function(t){return null!==t&&t>-1&&e.test(String.fromCharCode(t))}}const O=function(e){if(null==e)return R;if("function"==typeof e)return j(e);if("object"==typeof e)return Array.isArray(e)?function(e){const t=[];let n=-1;for(;++n":"")+")"})}return s;function s(){let o,s,l,c=M;if(i(t,a,r[r.length-1]||void 0)&&(c=function(e){return Array.isArray(e)?e:"number"==typeof e?[true,e]:null==e?M:[e]}(n(t,r)),c[0]===X))return c;if("children"in t&&t.children){const n=t;if(n.children&&"skip"!==c[0])for(s=0,l=r.concat(n);s>-1&&s0?{type:"text",value:i}:void 0),!1===i?a.lastIndex=n+1:(s!==n&&d.push({type:"text",value:e.value.slice(s,n)}),Array.isArray(i)?d.push(...i):i&&d.push(i),s=n+u[0].length,c=!0),!a.global)break;u=a.exec(e.value)}return c?(s?\]}]+$/.exec(e);if(!t)return[e,void 0];e=e.slice(0,t.index);let n=t[0],a=n.indexOf(")");const r=N(e,"(");let i=N(e,")");for(;-1!==a&&r>i;)e+=n.slice(0,a+1),n=n.slice(a+1),a=n.indexOf(")"),i++;return[e,n]}(n+a);if(!o[0])return!1;const s={type:"link",title:null,url:i+t+o[0],children:[{type:"text",value:t+o[0]}]};return o[1]?[s,{type:"text",value:o[1]}]:s}function ne(e,t,n,a){return!(!ae(a,!0)||/[-\d_]$/.test(n))&&{type:"link",title:null,url:"mailto:"+t+"@"+n,children:[{type:"text",value:t+"@"+n}]}}function ae(e,t){const n=e.input.charCodeAt(e.index-1);return(0===e.index||G(n)||F(n))&&(!t||47!==n)}function re(e){return e.replace(/[\t\n\r ]+/g," ").replace(/^ | $/g,"").toLowerCase().toUpperCase()}function ie(e){this.enter({type:"footnoteDefinition",identifier:"",label:"",children:[]},e)}function oe(){this.buffer()}function se(e){const t=this.resume(),n=this.stack[this.stack.length-1];n.type,n.label=t,n.identifier=re(this.sliceSerialize(e)).toLowerCase()}function le(e){this.exit(e)}function ce(e){this.enter({type:"footnoteReference",identifier:"",label:""},e)}function de(){this.buffer()}function ue(e){const t=this.resume(),n=this.stack[this.stack.length-1];n.type,n.label=t,n.identifier=re(this.sliceSerialize(e)).toLowerCase()}function pe(e){this.exit(e)}function Ae(e,t,n,a){const r=n.createTracker(a);let i=r.move("[^");const o=n.enter("footnoteReference"),s=n.enter("reference");return i+=r.move(n.safe(n.associationId(e),{...r.current(),before:i,after:"]"})),s(),o(),i+=r.move("]"),i}function fe(e,t,n,a){const r=n.createTracker(a);let i=r.move("[^");const o=n.enter("footnoteDefinition"),s=n.enter("label");return i+=r.move(n.safe(n.associationId(e),{...r.current(),before:i,after:"]"})),s(),i+=r.move("]:"+(e.children&&e.children.length>0?" ":"")),r.shift(4),i+=r.move(n.indentLines(n.containerFlow(e,r.current()),ve)),o(),i}function ve(e,t,n){return 0===t?e:(n?"":" ")+e}Ae.peek=function(){return"["};const ge=["autolink","destinationLiteral","destinationRaw","reference","titleQuote","titleApostrophe"];function me(e){this.enter({type:"delete",children:[]},e)}function he(e){this.exit(e)}function be(e,t,n,a){const r=n.createTracker(a),i=n.enter("strikethrough");let o=r.move("~~");return o+=n.containerPhrasing(e,{...r.current(),before:o,after:"~"}),o+=r.move("~~"),i(),o}function Ce(e){return null==e?"":String(e)}function _e(e){return e.length}function ye(e){const t="string"==typeof e?e.codePointAt(0):0;return 67===t||99===t?99:76===t||108===t?108:82===t||114===t?114:0}function xe(e,t,n){return">"+(n?"":" ")+e}function Ee(e,t){return ke(e,t.inConstruct,!0)&&!ke(e,t.notInConstruct,!1)}function ke(e,t,n){if("string"==typeof t&&(t=[t]),!t||0===t.length)return n;let a=-1;for(;++a",...l.current()})),c+=l.move(">")):(s=n.enter("destinationRaw"),c+=l.move(n.safe(e.url,{before:c,after:e.title?" ":")",...l.current()}))),s(),e.title&&(s=n.enter(`title${i}`),c+=l.move(" "+r),c+=l.move(n.safe(e.title,{before:c,after:r,...l.current()})),c+=l.move(r),s()),c+=l.move(")"),o(),c}function Ge(e,t,n,a){const r=e.referenceType,i=n.enter("imageReference");let o=n.enter("label");const s=n.createTracker(a);let l=s.move("![");const c=n.safe(e.alt,{before:l,after:"]",...s.current()});l+=s.move(c+"]["),o();const d=n.stack;n.stack=[],o=n.enter("reference");const u=n.safe(n.associationId(e),{before:l,after:"]",...s.current()});return o(),n.stack=d,i(),"full"!==r&&c&&c===u?"shortcut"===r?l=l.slice(0,-1):l+=s.move("]"):l+=s.move(u+"]"),l}function ze(e,t,n){let a=e.value||"",r="`",i=-1;for(;new RegExp("(^|[^`])"+r+"([^`]|$)").test(a);)r+="`";for(/[^ \r\n]/.test(a)&&(/^[ \r\n]/.test(a)&&/[ \r\n]$/.test(a)||/^`|`$/.test(a))&&(a=" "+a+" ");++i\u007F]/.test(e.url))}function je(e,t,n,a){const r=Pe(n),i='"'===r?"Quote":"Apostrophe",o=n.createTracker(a);let s,l;if(Oe(e,n)){const t=n.stack;n.stack=[],s=n.enter("autolink");let a=o.move("<");return a+=o.move(n.containerPhrasing(e,{before:a,after:">",...o.current()})),a+=o.move(">"),s(),n.stack=t,a}s=n.enter("link"),l=n.enter("label");let c=o.move("[");return c+=o.move(n.containerPhrasing(e,{before:c,after:"](",...o.current()})),c+=o.move("]("),l(),!e.url&&e.title||/[\0- \u007F]/.test(e.url)?(l=n.enter("destinationLiteral"),c+=o.move("<"),c+=o.move(n.safe(e.url,{before:c,after:">",...o.current()})),c+=o.move(">")):(l=n.enter("destinationRaw"),c+=o.move(n.safe(e.url,{before:c,after:e.title?" ":")",...o.current()}))),l(),e.title&&(l=n.enter(`title${i}`),c+=o.move(" "+r),c+=o.move(n.safe(e.title,{before:c,after:r,...o.current()})),c+=o.move(r),l()),c+=o.move(")"),s(),c}function Re(e,t,n,a){const r=e.referenceType,i=n.enter("linkReference");let o=n.enter("label");const s=n.createTracker(a);let l=s.move("[");const c=n.containerPhrasing(e,{before:l,after:"]",...s.current()});l+=s.move(c+"]["),o();const d=n.stack;n.stack=[],o=n.enter("reference");const u=n.safe(n.associationId(e),{before:l,after:"]",...s.current()});return o(),n.stack=d,i(),"full"!==r&&c&&c===u?"shortcut"===r?l=l.slice(0,-1):l+=s.move("]"):l+=s.move(u+"]"),l}function Me(e){const t=e.options.bullet||"*";if("*"!==t&&"+"!==t&&"-"!==t)throw new Error("Cannot serialize items with `"+t+"` for `options.bullet`, expected `*`, `+`, or `-`");return t}function Xe(e){const t=e.options.rule||"*";if("*"!==t&&"-"!==t&&"_"!==t)throw new Error("Cannot serialize rules with `"+t+"` for `options.rule`, expected `*`, `-`, or `_`");return t}Te.peek=function(){return"<"},Fe.peek=function(){return"!"},Ge.peek=function(){return"!"},ze.peek=function(){return"`"},je.peek=function(e,t,n){return Oe(e,n)?"<":"["},Re.peek=function(){return"["};const qe=O(["break","delete","emphasis","footnote","footnoteReference","image","imageReference","inlineCode","inlineMath","link","linkReference","mdxJsxTextElement","mdxTextExpression","strong","text","textDirective"]);function Ue(e,t,n,a){const r=function(e){const t=e.options.strong||"*";if("*"!==t&&"_"!==t)throw new Error("Cannot serialize strong with `"+t+"` for `options.strong`, expected `*`, or `_`");return t}(n),i=n.enter("strong"),o=n.createTracker(a);let s=o.move(r+r);return s+=o.move(n.containerPhrasing(e,{before:s,after:r,...o.current()})),s+=o.move(r+r),i(),s}Ue.peek=function(e,t,n){return n.options.strong||"*"};const $e={blockquote:function(e,t,n,a){const r=n.enter("blockquote"),i=n.createTracker(a);i.move("> "),i.shift(2);const o=n.indentLines(n.containerFlow(e,i.current()),xe);return r(),o},break:we,code:function(e,t,n,a){const r=function(e){const t=e.options.fence||"`";if("`"!==t&&"~"!==t)throw new Error("Cannot serialize code with `"+t+"` for `options.fence`, expected `` ` `` or `~`");return t}(n),i=e.value||"",o="`"===r?"GraveAccent":"Tilde";if(function(e,t){return Boolean(!1===t.options.fences&&e.value&&!e.lang&&/[^ \r\n]/.test(e.value)&&!/^[\t ]*(?:[\r\n]|$)|(?:^|[\r\n])[\t ]*$/.test(e.value))}(e,n)){const e=n.enter("codeIndented"),t=n.indentLines(i,Be);return e(),t}const s=n.createTracker(a),l=r.repeat(Math.max(function(e,t){const n=String(e);let a=n.indexOf(t),r=a,i=0,o=0;if("string"!=typeof t)throw new TypeError("Expected substring");for(;-1!==a;)a===r?++i>o&&(o=i):i=1,r=a+t.length,a=n.indexOf(t,r);return o}(i,r)+1,3)),c=n.enter("codeFenced");let d=s.move(l);if(e.lang){const t=n.enter(`codeFencedLang${o}`);d+=s.move(n.safe(e.lang,{before:d,after:" ",encode:["`"],...s.current()})),t()}if(e.lang&&e.meta){const t=n.enter(`codeFencedMeta${o}`);d+=s.move(" "),d+=s.move(n.safe(e.meta,{before:d,after:"\n",encode:["`"],...s.current()})),t()}return d+=s.move("\n"),i&&(d+=s.move(i+"\n")),d+=s.move(l),c(),d},definition:function(e,t,n,a){const r=Pe(n),i='"'===r?"Quote":"Apostrophe",o=n.enter("definition");let s=n.enter("label");const l=n.createTracker(a);let c=l.move("[");return c+=l.move(n.safe(n.associationId(e),{before:c,after:"]",...l.current()})),c+=l.move("]: "),s(),!e.url||/[\0- \u007F]/.test(e.url)?(s=n.enter("destinationLiteral"),c+=l.move("<"),c+=l.move(n.safe(e.url,{before:c,after:">",...l.current()})),c+=l.move(">")):(s=n.enter("destinationRaw"),c+=l.move(n.safe(e.url,{before:c,after:e.title?" ":"\n",...l.current()}))),s(),e.title&&(s=n.enter(`title${i}`),c+=l.move(" "+r),c+=l.move(n.safe(e.title,{before:c,after:r,...l.current()})),c+=l.move(r),s()),o(),c},emphasis:Ne,hardBreak:we,heading:function(e,t,n,a){const r=Math.max(Math.min(6,e.depth||1),1),i=n.createTracker(a);if(function(e,t){let n=!1;return(0,x.YR)(e,function(e){if("value"in e&&/\r?\n|\r/.test(e.value)||"break"===e.type)return n=!0,E.dc}),Boolean((!e.depth||e.depth<3)&&Se(e)&&(t.options.setext||n))}(e,n)){const t=n.enter("headingSetext"),a=n.enter("phrasing"),o=n.containerPhrasing(e,{...i.current(),before:"\n",after:"\n"});return a(),t(),o+"\n"+(1===r?"=":"-").repeat(o.length-(Math.max(o.lastIndexOf("\r"),o.lastIndexOf("\n"))+1))}const o="#".repeat(r),s=n.enter("headingAtx"),l=n.enter("phrasing");i.move(o+" ");let c=n.containerPhrasing(e,{before:"# ",after:"\n",...i.current()});return/^[\t ]/.test(c)&&(c="&#x"+c.charCodeAt(0).toString(16).toUpperCase()+";"+c.slice(1)),c=c?o+" "+c:o,n.options.closeAtx&&(c+=" "+o),l(),s(),c},html:Te,image:Fe,imageReference:Ge,inlineCode:ze,link:je,linkReference:Re,list:function(e,t,n,a){const r=n.enter("list"),i=n.bulletCurrent;let o=e.ordered?function(e){const t=e.options.bulletOrdered||".";if("."!==t&&")"!==t)throw new Error("Cannot serialize items with `"+t+"` for `options.bulletOrdered`, expected `.` or `)`");return t}(n):Me(n);const s=e.ordered?"."===o?")":".":function(e){const t=Me(e),n=e.options.bulletOther;if(!n)return"*"===t?"-":"*";if("*"!==n&&"+"!==n&&"-"!==n)throw new Error("Cannot serialize items with `"+n+"` for `options.bulletOther`, expected `*`, `+`, or `-`");if(n===t)throw new Error("Expected `bullet` (`"+t+"`) and `bulletOther` (`"+n+"`) to be different");return n}(n);let l=!(!t||!n.bulletLastUsed)&&o===n.bulletLastUsed;if(!e.ordered){const t=e.children?e.children[0]:void 0;if("*"!==o&&"-"!==o||!t||t.children&&t.children[0]||"list"!==n.stack[n.stack.length-1]||"listItem"!==n.stack[n.stack.length-2]||"list"!==n.stack[n.stack.length-3]||"listItem"!==n.stack[n.stack.length-4]||0!==n.indexStack[n.indexStack.length-1]||0!==n.indexStack[n.indexStack.length-2]||0!==n.indexStack[n.indexStack.length-3]||(l=!0),Xe(n)===o&&t){let t=-1;for(;++t-1?t.start:1)+(!1===n.options.incrementListMarker?0:t.children.indexOf(e))+i);let o=i.length+1;("tab"===r||"mixed"===r&&(t&&"list"===t.type&&t.spread||e.spread))&&(o=4*Math.ceil(o/4));const s=n.createTracker(a);s.move(i+" ".repeat(o-i.length)),s.shift(o);const l=n.enter("listItem"),c=n.indentLines(n.containerFlow(e,s.current()),function(e,t,n){return t?(n?"":" ".repeat(o))+e:(n?i:i+" ".repeat(o-i.length))+e});return l(),c},paragraph:function(e,t,n,a){const r=n.enter("paragraph"),i=n.enter("phrasing"),o=n.containerPhrasing(e,a);return i(),r(),o},root:function(e,t,n,a){return(e.children.some(function(e){return qe(e)})?n.containerPhrasing:n.containerFlow).call(n,e,a)},strong:Ue,text:function(e,t,n,a){return n.safe(e.value,a)},thematicBreak:function(e,t,n){const a=(Xe(n)+(n.options.ruleSpaces?" ":"")).repeat(function(e){const t=e.options.ruleRepetition||3;if(t<3)throw new Error("Cannot serialize rules with repetition `"+t+"` for `options.ruleRepetition`, expected `3` or more");return t}(n));return n.options.ruleSpaces?a.slice(0,-1):a}};function He(e){const t=e._align;this.enter({type:"table",align:t.map(function(e){return"none"===e?null:e}),children:[]},e),this.data.inTable=!0}function We(e){this.exit(e),this.data.inTable=void 0}function Ve(e){this.enter({type:"tableRow",children:[]},e)}function Ye(e){this.exit(e)}function Qe(e){this.enter({type:"tableCell",children:[]},e)}function Ke(e){let t=this.resume();this.data.inTable&&(t=t.replace(/\\([\\|])/g,Ze));const n=this.stack[this.stack.length-1];n.type,n.value=t,this.exit(e)}function Ze(e,t){return"|"===t?t:e}function Je(e){const t=e||{},n=t.tableCellPadding,a=t.tablePipeAlign,r=t.stringLength,i=n?" ":"|";return{unsafe:[{character:"\r",inConstruct:"tableCell"},{character:"\n",inConstruct:"tableCell"},{atBreak:!0,character:"|",after:"[\t :-]"},{character:"|",inConstruct:"tableCell"},{atBreak:!0,character:":",after:"-"},{atBreak:!0,character:"-",after:"[:|-]"}],handlers:{inlineCode:function(e,t,n){let a=$e.inlineCode(e,t,n);return n.stack.includes("tableCell")&&(a=a.replace(/\|/g,"\\$&")),a},table:function(e,t,n,a){return s(function(e,t,n){const a=e.children;let r=-1;const i=[],o=t.enter("table");for(;++rl&&(l=e[c].length);++ds[d])&&(s[d]=e)}n.push(i)}i[c]=n,o[c]=r}let d=-1;if("object"==typeof n&&"length"in n)for(;++ds[d]&&(s[d]=i),p[d]=i),u[d]=o}i.splice(1,0,u),o.splice(1,0,p),c=-1;const A=[];for(;++cr?0:r+t:t>r?r:t,n=n>0?n:0,a.length<1e4)i=Array.from(a),i.unshift(t,n),e.splice(...i);else for(n&&e.splice(t,n);o0&&!n&&(e[e.length-1][1]._gfmAutolinkLiteralWalkedInto=!0),n}function yt(e){return null===e||L(e)||G(e)?1:F(e)?2:void 0}function xt(e,t,n){const a=[];let r=-1;for(;++r999||93===s&&!i||null===s||91===s||L(s))return n(s);if(93===s){e.exit("chunkString");const i=e.exit("gfmFootnoteCallString");return r.includes(re(a.sliceSerialize(i)))?(e.enter("gfmFootnoteCallLabelMarker"),e.consume(s),e.exit("gfmFootnoteCallLabelMarker"),e.exit("gfmFootnoteCall"),t):n(s)}return L(s)||(i=!0),o++,e.consume(s),92===s?c:l}function c(t){return 91===t||92===t||93===t?(e.consume(t),o++,l):l(t)}}function It(e,t,n){const a=this,r=a.parser.gfmFootnotes||(a.parser.gfmFootnotes=[]);let i,o,s=0;return function(t){return e.enter("gfmFootnoteDefinition")._container=!0,e.enter("gfmFootnoteDefinitionLabel"),e.enter("gfmFootnoteDefinitionLabelMarker"),e.consume(t),e.exit("gfmFootnoteDefinitionLabelMarker"),l};function l(t){return 94===t?(e.enter("gfmFootnoteDefinitionMarker"),e.consume(t),e.exit("gfmFootnoteDefinitionMarker"),e.enter("gfmFootnoteDefinitionLabelString"),e.enter("chunkString").contentType="string",c):n(t)}function c(t){if(s>999||93===t&&!o||null===t||91===t||L(t))return n(t);if(93===t){e.exit("chunkString");const n=e.exit("gfmFootnoteDefinitionLabelString");return i=re(a.sliceSerialize(n)),e.enter("gfmFootnoteDefinitionLabelMarker"),e.consume(t),e.exit("gfmFootnoteDefinitionLabelMarker"),e.exit("gfmFootnoteDefinitionLabel"),u}return L(t)||(o=!0),s++,e.consume(t),92===t?d:c}function d(t){return 91===t||92===t||93===t?(e.consume(t),s++,c):c(t)}function u(t){return 58===t?(e.enter("definitionMarker"),e.consume(t),e.exit("definitionMarker"),r.includes(i)||r.push(i),Et(e,p,"gfmFootnoteDefinitionWhitespace")):n(t)}function p(e){return t(e)}}function St(e,t,n){return e.check(kt,t,e.attempt(wt,t,n))}function Dt(e){e.exit("gfmFootnoteDefinition")}function Lt(e){let t=(e||{}).singleTilde;const n={tokenize:function(e,n,a){const r=this.previous,i=this.events;let o=0;return function(t){return 126===r&&"characterEscape"!==i[i.length-1][1].type?a(t):(e.enter("strikethroughSequenceTemporary"),s(t))};function s(i){const l=yt(r);if(126===i)return o>1?a(i):(e.consume(i),o++,s);if(o<2&&!t)return a(i);const c=e.exit("strikethroughSequenceTemporary"),d=yt(i);return c._open=!d||2===d&&Boolean(l),c._close=!l||2===l&&Boolean(d),n(i)}},resolveAll:function(e,t){let n=-1;for(;++n0;)t-=1,n.push(e.slice(this.map[t][0]+this.map[t][1]),this.map[t][2]),e.length=this.map[t][0];n.push([...e]),e.length=0;let a=n.pop();for(;a;)e.push(...a),a=n.pop();this.map.length=0}}function Ft(e,t){let n=!1;const a=[];for(;t-1;){const e=a.events[t][1].type;if("lineEnding"!==e&&"linePrefix"!==e)break;t--}const r=t>-1?a.events[t][1].type:null,i="tableHead"===r||"tableRow"===r?C:s;return i===C&&a.parser.lazy[a.now().line]?n(e):i(e)};function s(t){return e.enter("tableHead"),e.enter("tableRow"),function(e){return 124===e||(r=!0,o+=1),l(e)}(t)}function l(t){return null===t?n(t):D(t)?o>1?(o=0,a.interrupt=!0,e.exit("tableRow"),e.enter("lineEnding"),e.consume(t),e.exit("lineEnding"),u):n(t):T(t)?Et(e,l,"whitespace")(t):(o+=1,r&&(r=!1,i+=1),124===t?(e.enter("tableCellDivider"),e.consume(t),e.exit("tableCellDivider"),r=!0,l):(e.enter("data"),c(t)))}function c(t){return null===t||124===t||L(t)?(e.exit("data"),l(t)):(e.consume(t),92===t?d:c)}function d(t){return 92===t||124===t?(e.consume(t),c):c(t)}function u(t){return a.interrupt=!1,a.parser.lazy[a.now().line]?n(t):(e.enter("tableDelimiterRow"),r=!1,T(t)?Et(e,p,"linePrefix",a.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(t):p(t))}function p(t){return 45===t||58===t?f(t):124===t?(r=!0,e.enter("tableCellDivider"),e.consume(t),e.exit("tableCellDivider"),A):b(t)}function A(t){return T(t)?Et(e,f,"whitespace")(t):f(t)}function f(t){return 58===t?(o+=1,r=!0,e.enter("tableDelimiterMarker"),e.consume(t),e.exit("tableDelimiterMarker"),v):45===t?(o+=1,v(t)):null===t||D(t)?h(t):b(t)}function v(t){return 45===t?(e.enter("tableDelimiterFiller"),g(t)):b(t)}function g(t){return 45===t?(e.consume(t),g):58===t?(r=!0,e.exit("tableDelimiterFiller"),e.enter("tableDelimiterMarker"),e.consume(t),e.exit("tableDelimiterMarker"),m):(e.exit("tableDelimiterFiller"),m(t))}function m(t){return T(t)?Et(e,h,"whitespace")(t):h(t)}function h(n){return 124===n?p(n):(null===n||D(n))&&r&&i===o?(e.exit("tableDelimiterRow"),e.exit("tableHead"),t(n)):b(n)}function b(e){return n(e)}function C(t){return e.enter("tableRow"),_(t)}function _(n){return 124===n?(e.enter("tableCellDivider"),e.consume(n),e.exit("tableCellDivider"),_):null===n||D(n)?(e.exit("tableRow"),t(n)):T(n)?Et(e,_,"whitespace")(n):(e.enter("data"),y(n))}function y(t){return null===t||124===t||L(t)?(e.exit("data"),_(t)):(e.consume(t),92===t?x:y)}function x(t){return 92===t||124===t?(e.consume(t),y):y(t)}}function zt(e,t){let n,a,r,i=-1,o=!0,s=0,l=[0,0,0,0],c=[0,0,0,0],d=!1,u=0;const p=new Tt;for(;++in[2]+1){const t=n[2]+1,a=n[3]-n[2]-1;e.add(t,a,[])}}e.add(n[3]+1,0,[["exit",o,t]])}return void 0!==r&&(i.end=Object.assign({},Rt(t.events,r)),e.add(r,0,[["exit",i,t]]),i=void 0),i}function jt(e,t,n,a,r){const i=[],o=Rt(t.events,n);r&&(r.end=Object.assign({},o),i.push(["exit",r,t])),a.end=Object.assign({},o),i.push(["exit",a,t]),e.add(n+1,0,i)}function Rt(e,t){const n=e[t],a="enter"===n[0]?"start":"end";return n[1][a]}const Mt={tokenize:function(e,t,n){const a=this;return function(t){return null===a.previous&&a._gfmTasklistFirstContentOfListItem?(e.enter("taskListCheck"),e.enter("taskListCheckMarker"),e.consume(t),e.exit("taskListCheckMarker"),r):n(t)};function r(t){return L(t)?(e.enter("taskListCheckValueUnchecked"),e.consume(t),e.exit("taskListCheckValueUnchecked"),i):88===t||120===t?(e.enter("taskListCheckValueChecked"),e.consume(t),e.exit("taskListCheckValueChecked"),i):n(t)}function i(t){return 93===t?(e.enter("taskListCheckMarker"),e.consume(t),e.exit("taskListCheckMarker"),e.exit("taskListCheck"),o):n(t)}function o(a){return D(a)?t(a):T(a)?e.check({tokenize:Xt},t,n)(a):n(a)}}};function Xt(e,t,n){return Et(e,function(e){return null===e?n(e):t(e)},"whitespace")}const qt={};function Ut(e){const t=e||qt,n=this.data(),a=n.micromarkExtensions||(n.micromarkExtensions=[]),r=n.fromMarkdownExtensions||(n.fromMarkdownExtensions=[]),i=n.toMarkdownExtensions||(n.toMarkdownExtensions=[]);a.push(function(e){return function(e){const t={};let n=-1;for(;++n"text"===e.type,function(e,t,n){const a=e.value.split(/(\{[a-z\-_.0-9]+\})/gi).map(e=>{const t=e.match(/^\{([a-z\-_.0-9]+)\}$/i);if(!t)return(0,y.u)("text",e);const[,n]=t;return(0,y.u)("element",{tagName:`#${n}`})});n.children.splice(t,1,...a)})}}function Ht(){return function(e){(0,x.YR)(e,e=>["text","code","inlineCode"].includes(e.type),(e,t,n)=>(n.children.splice(t,1,{...e,value:e.value.replace(/</gim,"<").replace(/>/gim,">")}),[E._Z,t+1]))}}const Wt=["http","https","mailto","tel"],Vt=(0,d.KR)(null),Yt={name:"NcRichText",components:{NcReferenceList:P},props:{text:{type:String,default:""},arguments:{type:Object,default:()=>({})},referenceLimit:{type:Number,default:0},referenceInteractive:{type:Boolean,default:!0},referenceInteractiveOptIn:{type:Boolean,default:!1},references:{type:Array,default:null},useMarkdown:{type:Boolean,default:!1},useExtendedMarkdown:{type:Boolean,default:!1},interactive:{type:Boolean,default:!1},autolink:{type:Boolean,default:!0}},emits:["interact-todo","interact:todo"],data:()=>({parentId:(0,_.G)(5)}),methods:{renderPlaintext(e){const t=this.text.split(/(\{[a-z\-_.0-9]+\})/gi).map(t=>{const n=t.match(/^\{([a-z\-_.0-9]+)\}$/i);if(!n)return function({h:e,context:t},n){return t.autolink&&(n=(0,b.p)(n)),Array.isArray(n)?n.map(t=>{if("string"==typeof t)return t;const{component:n,props:a}=t,r="NcLink"===n.name?void 0:"rich-text--component";return e(n,{props:a,class:r})}):n}({h:e,context:this},t);const a=n[1],r=this.arguments[a];if("object"==typeof r){const{component:t,props:n}=r;return e(t,{props:n,class:"rich-text--component"})}return r?e("span",{class:"rich-text--fallback"},r):t});return e("div",{class:"rich-text--wrapper"},[e("div",{},t.flat()),this.referenceLimit>0?e("div",{class:"rich-text--reference-widget"},[e(P,{props:{text:this.text,referenceData:this.references,interactive:this.referenceInteractive,interactiveOptIn:this.referenceInteractiveOptIn}})]):null])},renderMarkdown(e){const t=(0,c.l)().use(o.A).use(b.r,{autolink:this.autolink,useMarkdown:this.useMarkdown,useExtendedMarkdown:this.useExtendedMarkdown}).use(Ht).use(this.useExtendedMarkdown?Ut:void 0).use(i.A).use(l.A,{except:Wt}).use(s.A,{handlers:{component:(e,t)=>e(t,t.component,{value:t.value})}}).use(this.useExtendedMarkdown?Vt.value:void 0).use($t).use(a.A,{target:"_blank",rel:["noopener noreferrer"]}).use(r.A,{createElement:(t,a,r)=>{if(!t.startsWith("#")){if(["h1","h2","h3","h4","h5","h6"].includes(t)&&(t=`h${Math.min(+String(t)[1]+3,6)}`),this.useExtendedMarkdown){"code"===t&&!Vt.value&&a?.attrs?.class?.includes("language")&&async function(){const e=await n.e(5862).then(n.bind(n,75862));Vt.value=e.default}();let i=null;if("li"===t&&Array.isArray(r)&&"input"===r[0].tag&&"checkbox"===r[0].data.attrs.type){const[n,...o]=r,s=o.findIndex(e=>["ul","ol","li","blockquote","pre"].includes(e.tag));-1!==s&&(i=o[s],o.splice(s));const l=this.parentId+"-markdown-input-"+(0,_.G)(5),c=e(p.N,{attrs:{...n.data.attrs,id:l,disabled:!this.interactive},on:{"update:checked":()=>{this.$emit("interact-todo",l),this.$emit("interact:todo",l)}}},o);return e(t,a,[c,i])}}if("a"===t){const t=(0,b.g)(this.$router,a.attrs.href);if(t)return delete a.attrs.href,delete a.attrs.target,e(u.Wk,{...a,props:{to:t}},r)}return e(t,a,r)}const i=this.arguments[t.slice(1)];return i?i.component?e(i.component,{attrs:a,props:i.props,class:"rich-text--component"},r):e("span",a,[i]):e("span",{attrs:a,class:"rich-text--fallback"},[`{${t.slice(1)}}`])},prefix:!1}).processSync(this.text.replace(/<[^>]+>/g,e=>e.replace(/")).result;return e("div",{class:"rich-text--wrapper rich-text--wrapper-markdown"},[t,this.referenceLimit>0?e("div",{class:"rich-text--reference-widget"},[e(P,{props:{text:this.text,referenceData:this.references,interactive:this.referenceInteractive,interactiveOptIn:this.referenceInteractiveOptIn}})]):null])}},render(e){return this.useMarkdown||this.useExtendedMarkdown?this.renderMarkdown(e):this.renderPlaintext(e)}},Qt=(0,C.n)(Yt,null,null,!1,null,"ec7a0a24").exports},20265:(e,t,n)=>{"use strict";n.d(t,{A:()=>s});var a=n(71354),r=n.n(a),i=n(76314),o=n.n(i)()(r());o.push([e.id,"/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/**\n * SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/*\n* Ensure proper alignment of the vue material icons\n*/\n.material-design-icon[data-v-8fb21c8b] {\n display: flex;\n align-self: center;\n justify-self: center;\n align-items: center;\n justify-content: center;\n}\n#app-settings[data-v-8fb21c8b] {\n margin-top: auto;\n padding: 3px;\n}\n#app-settings__header[data-v-8fb21c8b] {\n box-sizing: border-box;\n margin: 0 3px 3px 3px;\n}\n#app-settings__header .settings-button[data-v-8fb21c8b] {\n padding-inline: 0 calc((var(--default-clickable-area) - 16px) / 2) !important;\n}\n#app-settings__header .settings-button[data-v-8fb21c8b] .button-vue__text {\n font-weight: normal !important;\n}\n#app-settings__content[data-v-8fb21c8b] {\n display: block;\n padding: 10px;\n /* prevent scrolled contents from stopping too early */\n margin-bottom: -3px;\n /* restrict height of settings and make scrollable */\n max-height: 300px;\n overflow-y: auto;\n box-sizing: border-box;\n}\n.slide-up-leave-active[data-v-8fb21c8b],\n.slide-up-enter-active[data-v-8fb21c8b] {\n transition-duration: var(--animation-slow);\n transition-property: max-height, padding;\n overflow-y: hidden !important;\n}\n.slide-up-enter[data-v-8fb21c8b],\n.slide-up-leave-to[data-v-8fb21c8b] {\n max-height: 0 !important;\n padding: 0 10px !important;\n}","",{version:3,sources:["webpack://./node_modules/@nextcloud/vue/dist/assets/NcAppNavigationSettings-2Wh1E3Hq.css"],names:[],mappings:"AAAA;;;EAGE;AACF;;;EAGE;AACF;;CAEC;AACD;EACE,aAAa;EACb,kBAAkB;EAClB,oBAAoB;EACpB,mBAAmB;EACnB,uBAAuB;AACzB;AACA;EACE,gBAAgB;EAChB,YAAY;AACd;AACA;EACE,sBAAsB;EACtB,qBAAqB;AACvB;AACA;EACE,6EAA6E;AAC/E;AACA;EACE,8BAA8B;AAChC;AACA;EACE,cAAc;EACd,aAAa;EACb,sDAAsD;EACtD,mBAAmB;EACnB,oDAAoD;EACpD,iBAAiB;EACjB,gBAAgB;EAChB,sBAAsB;AACxB;AACA;;EAEE,0CAA0C;EAC1C,wCAAwC;EACxC,6BAA6B;AAC/B;AACA;;EAEE,wBAAwB;EACxB,0BAA0B;AAC5B",sourcesContent:["/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/**\n * SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/*\n* Ensure proper alignment of the vue material icons\n*/\n.material-design-icon[data-v-8fb21c8b] {\n display: flex;\n align-self: center;\n justify-self: center;\n align-items: center;\n justify-content: center;\n}\n#app-settings[data-v-8fb21c8b] {\n margin-top: auto;\n padding: 3px;\n}\n#app-settings__header[data-v-8fb21c8b] {\n box-sizing: border-box;\n margin: 0 3px 3px 3px;\n}\n#app-settings__header .settings-button[data-v-8fb21c8b] {\n padding-inline: 0 calc((var(--default-clickable-area) - 16px) / 2) !important;\n}\n#app-settings__header .settings-button[data-v-8fb21c8b] .button-vue__text {\n font-weight: normal !important;\n}\n#app-settings__content[data-v-8fb21c8b] {\n display: block;\n padding: 10px;\n /* prevent scrolled contents from stopping too early */\n margin-bottom: -3px;\n /* restrict height of settings and make scrollable */\n max-height: 300px;\n overflow-y: auto;\n box-sizing: border-box;\n}\n.slide-up-leave-active[data-v-8fb21c8b],\n.slide-up-enter-active[data-v-8fb21c8b] {\n transition-duration: var(--animation-slow);\n transition-property: max-height, padding;\n overflow-y: hidden !important;\n}\n.slide-up-enter[data-v-8fb21c8b],\n.slide-up-leave-to[data-v-8fb21c8b] {\n max-height: 0 !important;\n padding: 0 10px !important;\n}"],sourceRoot:""}]);const s=o},23441:(e,t,n)=>{"use strict";n.d(t,{A:()=>s});var a=n(71354),r=n.n(a),i=n(76314),o=n.n(i)()(r());o.push([e.id,".ldap-wizard__users[data-v-47c76aa2]{display:flex;flex-direction:column;gap:16px}.ldap-wizard__users__line[data-v-47c76aa2]{display:flex;align-items:start}.ldap-wizard__users__user-filter-object-class[data-v-47c76aa2]{display:flex;gap:16px}.ldap-wizard__users__user-filter-object-class__select[data-v-47c76aa2]{min-width:50%;flex-grow:1}.ldap-wizard__users__user-filter-groups[data-v-47c76aa2]{display:flex;gap:16px}.ldap-wizard__users__user-filter[data-v-47c76aa2]{display:flex;flex-direction:column}.ldap-wizard__users__user-filter code[data-v-47c76aa2]{background-color:var(--color-background-dark);padding:4px;border-radius:4px}.ldap-wizard__users__user-count-check[data-v-47c76aa2]{display:flex;align-items:center;gap:16px}","",{version:3,sources:["webpack://./apps/user_ldap/src/components/SettingsTabs/UsersTab.vue"],names:[],mappings:"AACA,qCACC,YAAA,CACA,qBAAA,CACA,QAAA,CAEA,2CACC,YAAA,CACA,iBAAA,CAGD,+DACC,YAAA,CACA,QAAA,CAEA,uEACC,aAAA,CACA,WAAA,CAIF,yDACC,YAAA,CACA,QAAA,CAGD,kDACC,YAAA,CACA,qBAAA,CAEA,uDACC,6CAAA,CACA,WAAA,CACA,iBAAA,CAIF,uDACC,YAAA,CACA,kBAAA,CACA,QAAA",sourcesContent:["\n.ldap-wizard__users {\n\tdisplay: flex;\n\tflex-direction: column;\n\tgap: 16px;\n\n\t&__line {\n\t\tdisplay: flex;\n\t\talign-items: start;\n\t}\n\n\t&__user-filter-object-class {\n\t\tdisplay: flex;\n\t\tgap: 16px;\n\n\t\t&__select {\n\t\t\tmin-width: 50%;\n\t\t\tflex-grow: 1;\n\t\t}\n\t}\n\n\t&__user-filter-groups {\n\t\tdisplay: flex;\n\t\tgap: 16px;\n\t}\n\n\t&__user-filter {\n\t\tdisplay: flex;\n\t\tflex-direction: column;\n\n\t\tcode {\n\t\t\tbackground-color: var(--color-background-dark);\n\t\t\tpadding: 4px;\n\t\t\tborder-radius: 4px;\n\t\t}\n\t}\n\n\t&__user-count-check {\n\t\tdisplay: flex;\n\t\talign-items: center;\n\t\tgap: 16px;\n\t}\n}\n"],sourceRoot:""}]);const s=o},26582:(e,t,n)=>{"use strict";n.d(t,{A:()=>s});var a=n(71354),r=n.n(a),i=n(76314),o=n.n(i)()(r());o.push([e.id,"/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/**\n * SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/*\n* Ensure proper alignment of the vue material icons\n*/\n.material-design-icon[data-v-9ee34172] {\n display: flex;\n align-self: center;\n justify-self: center;\n align-items: center;\n justify-content: center;\n}\n\n/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nli.action[data-v-9ee34172]:hover, li.action.active[data-v-9ee34172] {\n border-radius: 6px;\n padding: 0;\n}\nli.action[data-v-9ee34172]:hover {\n background-color: var(--color-background-hover);\n}\n.action--disabled[data-v-9ee34172] {\n pointer-events: none;\n opacity: 0.5;\n}\n.action--disabled[data-v-9ee34172]:hover, .action--disabled[data-v-9ee34172]:focus {\n cursor: default;\n opacity: 0.5;\n}\n.action--disabled *[data-v-9ee34172] {\n opacity: 1 !important;\n}\n.action-radio[data-v-9ee34172] {\n display: flex;\n align-items: flex-start;\n width: 100%;\n height: auto;\n margin: 0;\n padding: 0;\n cursor: pointer;\n white-space: nowrap;\n color: var(--color-main-text);\n border: 0;\n border-radius: 0;\n background-color: transparent;\n box-shadow: none;\n font-weight: normal;\n line-height: var(--default-clickable-area);\n /* checkbox/radio fixes */\n}\n.action-radio__radio[data-v-9ee34172] {\n position: absolute;\n inset-inline-start: 0 !important;\n z-index: -1;\n opacity: 0;\n}\n.action-radio__label[data-v-9ee34172] {\n display: flex;\n align-items: center;\n width: 100%;\n padding: 0 !important;\n padding-inline-end: calc((var(--default-clickable-area) - 16px) / 2) !important;\n}\n.action-radio__label[data-v-9ee34172]::before {\n margin: calc((var(--default-clickable-area) - 14px) / 2) !important;\n}\n.action-radio--disabled[data-v-9ee34172],\n.action-radio--disabled .action-radio__label[data-v-9ee34172] {\n cursor: pointer;\n}","",{version:3,sources:["webpack://./node_modules/@nextcloud/vue/dist/assets/NcActionRadio-CLIRNp3t.css"],names:[],mappings:"AAAA;;;EAGE;AACF;;;EAGE;AACF;;CAEC;AACD;EACE,aAAa;EACb,kBAAkB;EAClB,oBAAoB;EACpB,mBAAmB;EACnB,uBAAuB;AACzB;;AAEA;;;EAGE;AACF;EACE,kBAAkB;EAClB,UAAU;AACZ;AACA;EACE,+CAA+C;AACjD;AACA;EACE,oBAAoB;EACpB,YAAY;AACd;AACA;EACE,eAAe;EACf,YAAY;AACd;AACA;EACE,qBAAqB;AACvB;AACA;EACE,aAAa;EACb,uBAAuB;EACvB,WAAW;EACX,YAAY;EACZ,SAAS;EACT,UAAU;EACV,eAAe;EACf,mBAAmB;EACnB,6BAA6B;EAC7B,SAAS;EACT,gBAAgB;EAChB,6BAA6B;EAC7B,gBAAgB;EAChB,mBAAmB;EACnB,0CAA0C;EAC1C,yBAAyB;AAC3B;AACA;EACE,kBAAkB;EAClB,gCAAgC;EAChC,WAAW;EACX,UAAU;AACZ;AACA;EACE,aAAa;EACb,mBAAmB;EACnB,WAAW;EACX,qBAAqB;EACrB,+EAA+E;AACjF;AACA;EACE,mEAAmE;AACrE;AACA;;EAEE,eAAe;AACjB",sourcesContent:["/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/**\n * SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/*\n* Ensure proper alignment of the vue material icons\n*/\n.material-design-icon[data-v-9ee34172] {\n display: flex;\n align-self: center;\n justify-self: center;\n align-items: center;\n justify-content: center;\n}\n\n/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nli.action[data-v-9ee34172]:hover, li.action.active[data-v-9ee34172] {\n border-radius: 6px;\n padding: 0;\n}\nli.action[data-v-9ee34172]:hover {\n background-color: var(--color-background-hover);\n}\n.action--disabled[data-v-9ee34172] {\n pointer-events: none;\n opacity: 0.5;\n}\n.action--disabled[data-v-9ee34172]:hover, .action--disabled[data-v-9ee34172]:focus {\n cursor: default;\n opacity: 0.5;\n}\n.action--disabled *[data-v-9ee34172] {\n opacity: 1 !important;\n}\n.action-radio[data-v-9ee34172] {\n display: flex;\n align-items: flex-start;\n width: 100%;\n height: auto;\n margin: 0;\n padding: 0;\n cursor: pointer;\n white-space: nowrap;\n color: var(--color-main-text);\n border: 0;\n border-radius: 0;\n background-color: transparent;\n box-shadow: none;\n font-weight: normal;\n line-height: var(--default-clickable-area);\n /* checkbox/radio fixes */\n}\n.action-radio__radio[data-v-9ee34172] {\n position: absolute;\n inset-inline-start: 0 !important;\n z-index: -1;\n opacity: 0;\n}\n.action-radio__label[data-v-9ee34172] {\n display: flex;\n align-items: center;\n width: 100%;\n padding: 0 !important;\n padding-inline-end: calc((var(--default-clickable-area) - 16px) / 2) !important;\n}\n.action-radio__label[data-v-9ee34172]::before {\n margin: calc((var(--default-clickable-area) - 14px) / 2) !important;\n}\n.action-radio--disabled[data-v-9ee34172],\n.action-radio--disabled .action-radio__label[data-v-9ee34172] {\n cursor: pointer;\n}"],sourceRoot:""}]);const s=o},27514:e=>{"use strict";e.exports="data:image/svg+xml,%3c%21--%20-%20SPDX-FileCopyrightText:%202020%20Google%20Inc.%20-%20SPDX-License-Identifier:%20Apache-2.0%20--%3e%3csvg%20xmlns=%27http://www.w3.org/2000/svg%27%20width=%2724%27%20height=%2724%27%20fill=%27%23222%27%3e%3cpath%20d=%27M18.4%207.4L17%206l-6%206%206%206%201.4-1.4-4.6-4.6%204.6-4.6m-6%200L11%206l-6%206%206%206%201.4-1.4L7.8%2012l4.6-4.6z%27/%3e%3c/svg%3e"},27518:e=>{"use strict";e.exports="data:image/svg+xml,%3c%21--%20-%20SPDX-FileCopyrightText:%202020%20Google%20Inc.%20-%20SPDX-License-Identifier:%20Apache-2.0%20--%3e%3csvg%20xmlns=%27http://www.w3.org/2000/svg%27%20width=%2724%27%20height=%2724%27%20fill=%27%23222%27%3e%3cpath%20d=%27M15.4%2016.6L10.8%2012l4.6-4.6L14%206l-6%206%206%206%201.4-1.4z%27/%3e%3c/svg%3e"},28953:(e,t,n)=>{"use strict";n.d(t,{A:()=>s});var a=n(71354),r=n.n(a),i=n(76314),o=n.n(i)()(r());o.push([e.id,".ldap-wizard__expert[data-v-1b8d07c0]{display:flex;flex-direction:column;gap:16px}.ldap-wizard__expert__line[data-v-1b8d07c0]{display:flex;flex-direction:column;padding-inline-start:32px;gap:4px}","",{version:3,sources:["webpack://./apps/user_ldap/src/components/SettingsTabs/ExpertTab.vue"],names:[],mappings:"AACA,sCACC,YAAA,CACA,qBAAA,CACA,QAAA,CAEA,4CACC,YAAA,CACA,qBAAA,CACA,yBAAA,CACA,OAAA",sourcesContent:["\n.ldap-wizard__expert {\n\tdisplay: flex;\n\tflex-direction: column;\n\tgap: 16px;\n\n\t&__line {\n\t\tdisplay: flex;\n\t\tflex-direction: column;\n\t\tpadding-inline-start: 32px;\n\t\tgap: 4px;\n\t}\n}\n"],sourceRoot:""}]);const s=o},33954:(e,t,n)=>{"use strict";n.d(t,{A:()=>s});var a=n(71354),r=n.n(a),i=n(76314),o=n.n(i)()(r());o.push([e.id,"/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/**\n * SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/*\n* Ensure proper alignment of the vue material icons\n*/\n._material-design-icon_1ndue_12 {\n display: flex;\n align-self: center;\n justify-self: center;\n align-items: center;\n justify-content: center;\n}\n._assistantIcon_1ndue_20 {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n}\n._assistantIcon_1ndue_20:not(._assistantIcon_inline_1ndue_25) {\n display: flex;\n min-height: var(--default-clickable-area);\n min-width: var(--default-clickable-area);\n}\n._assistantIcon__svg_1ndue_30 {\n display: inline-block;\n width: var(--a843d9d2);\n height: var(--a843d9d2);\n max-width: var(--a843d9d2);\n max-height: var(--a843d9d2);\n}","",{version:3,sources:["webpack://./node_modules/@nextcloud/vue/dist/assets/NcAssistantIcon-BoOnqVRr.css"],names:[],mappings:"AAAA;;;EAGE;AACF;;;EAGE;AACF;;CAEC;AACD;EACE,aAAa;EACb,kBAAkB;EAClB,oBAAoB;EACpB,mBAAmB;EACnB,uBAAuB;AACzB;AACA;EACE,oBAAoB;EACpB,mBAAmB;EACnB,uBAAuB;AACzB;AACA;EACE,aAAa;EACb,yCAAyC;EACzC,wCAAwC;AAC1C;AACA;EACE,qBAAqB;EACrB,sBAAsB;EACtB,uBAAuB;EACvB,0BAA0B;EAC1B,2BAA2B;AAC7B",sourcesContent:["/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/**\n * SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/*\n* Ensure proper alignment of the vue material icons\n*/\n._material-design-icon_1ndue_12 {\n display: flex;\n align-self: center;\n justify-self: center;\n align-items: center;\n justify-content: center;\n}\n._assistantIcon_1ndue_20 {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n}\n._assistantIcon_1ndue_20:not(._assistantIcon_inline_1ndue_25) {\n display: flex;\n min-height: var(--default-clickable-area);\n min-width: var(--default-clickable-area);\n}\n._assistantIcon__svg_1ndue_30 {\n display: inline-block;\n width: var(--a843d9d2);\n height: var(--a843d9d2);\n max-width: var(--a843d9d2);\n max-height: var(--a843d9d2);\n}"],sourceRoot:""}]);const s=o},34935:(e,t,n)=>{"use strict";n.d(t,{f:()=>P,g:()=>ve,s:()=>R}),n(4483);var a=n(85471),r=n(61338),i=n(83427),o=n(89916),s=n(52781),l=n(51431),c=n(19051),d=n(60176),u=n(63814),p=n(47536),A=n(3168),f=n(42507),v=n(51550),g=n(18148),m=n(97786),h=n(40173),b=n(97221),C=n(44111),_=n(88289),y=n(65547),x=n(62388),E=n(42486);(0,p.r)(p.T);const k={name:"NcReferenceWidget",components:{NcButton:b.N},props:{reference:{type:Object,required:!0},interactive:{type:Boolean,default:!0},interactiveOptIn:{type:Boolean,default:!1}},setup(){const e=(0,a.KR)(!1),t=(0,a.KR)(),{width:n}=(0,m.Lhy)(t);return(0,m.BLq)(t,([t])=>{(0,a.dY)(()=>{e.value=t.isIntersecting})}),{width:n,isVisible:e,widgetRoot:t}},data:()=>({showInteractive:!1,rendered:!1,idleTimeout:null}),computed:{isInteractive(){return!this.interactiveOptIn&&this.interactive||this.showInteractive},hasFullWidth(){return(0,s.j)(this.reference.richObjectType)},hasCustomWidget(){return(0,s.i)(this.reference.richObjectType)},hasInteractiveView(){return(0,s.i)(this.reference.richObjectType)&&(0,s.h)(this.reference.richObjectType)},noAccess(){return this.reference&&!this.reference.accessible},descriptionStyle(){if(0===this.numberOfLines)return{display:"none"};const e=this.numberOfLines;return{lineClamp:e,webkitLineClamp:e}},numberOfLines(){return[450,550,650,1/0].findIndex(e=>this.width{this.isVisible||this.destroyWidget()},18e4)},immediate:!0}},beforeDestroy(){this.destroyWidget()},methods:{t:p.a,enableInteractive(){this.showInteractive=!0,this.renderWidget()},renderWidget(){if(!this.$refs.customWidget)return;if("open-graph"===this?.reference?.richObjectType)return;this.$refs.customWidget.innerHTML="";const e=document.createElement("div");e.style="width: 100%;",this.$refs.customWidget.appendChild(e),this.$nextTick(()=>{(0,s.a)(e,{...this.reference,interactive:this.isInteractive}),this.rendered=!0})},destroyWidget(){this.rendered&&((0,s.d)(this.reference.richObjectType,this.$el),this.rendered=!1)}}};var w=function(){var e=this,t=e._self._c;return t("div",{ref:"widgetRoot",class:{"toggle-interactive":e.hasInteractiveView&&!e.isInteractive}},[e.reference&&e.hasCustomWidget?t("div",{ref:"customWidget",staticClass:"widget-custom",class:{"full-width":e.hasFullWidth}}):!e.noAccess&&e.reference&&e.reference.openGraphObject&&!e.hasCustomWidget?t(e.referenceWidgetLinkComponent,e._b({tag:"component",staticClass:"widget-default",attrs:{rel:"noopener noreferrer"}},"component",e.referenceWidgetLinkProps,!1),[e.reference.openGraphObject.thumb?t("img",{staticClass:"widget-default--image",attrs:{src:e.reference.openGraphObject.thumb}}):e._e(),t("div",{staticClass:"widget-default--details"},[t("p",{staticClass:"widget-default--name"},[e._v(" "+e._s(e.reference.openGraphObject.name)+" ")]),t("p",{staticClass:"widget-default--description",style:e.descriptionStyle},[e._v(" "+e._s(e.reference.openGraphObject.description)+" ")]),t("p",{staticClass:"widget-default--link"},[e._v(" "+e._s(e.compactLink)+" ")])])]):e._e(),e.interactiveOptIn&&e.hasInteractiveView&&!e.isInteractive?t("NcButton",{staticClass:"toggle-interactive--button",on:{click:e.enableInteractive}},[e._v(" "+e._s(e.t("Enable interactive view"))+" ")]):e._e()],1)},B=[];const P=(0,l.n)(k,w,B,!1,null,"f05dd81b").exports,N={name:"NcCustomPickerElement",props:{provider:{type:Object,required:!0}},emits:["cancel","submit"],data(){return{isRegistered:(0,s.c)(this.provider.id),renderResult:null}},mounted(){this.isRegistered&&this.renderElement()},beforeDestroy(){this.isRegistered&&(0,s.b)(this.provider.id,this.$el,this.renderResult)},methods:{renderElement(){this.$refs.domElement&&(this.$refs.domElement.innerHTML="");const e=(0,s.f)(this.$refs.domElement,{providerId:this.provider.id,accessible:!1});Promise.resolve(e).then(e=>{this.renderResult=e,this.renderResult.object?._isVue&&this.renderResult.object?.$on&&(this.renderResult.object.$on("submit",this.onSubmit),this.renderResult.object.$on("cancel",this.onCancel)),this.renderResult.element.addEventListener("submit",e=>{this.onSubmit(e.detail)}),this.renderResult.element.addEventListener("cancel",this.onCancel)})},onSubmit(e){this.$emit("submit",e)},onCancel(){this.$emit("cancel")}}};var I=function(){return(0,this._self._c)("div",{ref:"domElement"})},S=[];const D=(0,l.n)(N,I,S,!1,null,"0547d92f").exports,L={name:"LinkVariantIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}};var T=function(){var e=this,t=e._self._c;return t("span",e._b({staticClass:"material-design-icon link-variant-icon",attrs:{"aria-hidden":e.title?null:"true","aria-label":e.title,role:"img"},on:{click:function(t){return e.$emit("click",t)}}},"span",e.$attrs,!1),[t("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 24 24"}},[t("path",{attrs:{d:"M10.59,13.41C11,13.8 11,14.44 10.59,14.83C10.2,15.22 9.56,15.22 9.17,14.83C7.22,12.88 7.22,9.71 9.17,7.76V7.76L12.71,4.22C14.66,2.27 17.83,2.27 19.78,4.22C21.73,6.17 21.73,9.34 19.78,11.29L18.29,12.78C18.3,11.96 18.17,11.14 17.89,10.36L18.36,9.88C19.54,8.71 19.54,6.81 18.36,5.64C17.19,4.46 15.29,4.46 14.12,5.64L10.59,9.17C9.41,10.34 9.41,12.24 10.59,13.41M13.41,9.17C13.8,8.78 14.44,8.78 14.83,9.17C16.78,11.12 16.78,14.29 14.83,16.24V16.24L11.29,19.78C9.34,21.73 6.17,21.73 4.22,19.78C2.27,17.83 2.27,14.66 4.22,12.71L5.71,11.22C5.7,12.04 5.83,12.86 6.11,13.65L5.64,14.12C4.46,15.29 4.46,17.19 5.64,18.36C6.81,19.54 8.71,19.54 9.88,18.36L13.41,14.83C14.59,13.66 14.59,11.76 13.41,10.59C13,10.2 13,9.56 13.41,9.17Z"}},[e.title?t("title",[e._v(e._s(e.title))]):e._e()])])])},F=[];const G=(0,l.n)(L,T,F,!1,null,null).exports;(0,p.r)(p.U);const z="any-link",O={id:z,title:(0,p.a)("Any link"),order:0,icon_url:(0,u.d0)("core","filetypes/link.svg")};function j(){return window._vue_richtext_reference_providers.filter(e=>{const t=!!e.search_providers_ids&&e.search_providers_ids.length>0||(0,s.c)(e.id);return t||A.l.debug(`[smart picker] ${e.id} reference provider is discoverable but does not have any related search provider or custom picker component registered`),t})}function R(e,t){const n=j(),a=e.replace(/[/\-\\^$*+?.()|[\]{}]/g,"\\$&"),r=new RegExp(a,"i"),i=function(e){const t=window._vue_richtext_reference_provider_timestamps;return e.sort((e,t)=>e.order===t.order?0:e.order>t.order?1:-1).sort((e,n)=>{const a=t[e.id],r=t[n.id];return a===r?0:void 0===r?-1:void 0===a?1:a>r?-1:1})}(n).filter(e=>e.title.match(r)),o=t?i.slice(0,t):i;return""!==e&&0!==o.length||o.push(O),o}window._vue_richtext_reference_providers??=(0,d.C)("core","reference-provider-list",[]),window._vue_richtext_reference_provider_timestamps??=(0,d.C)("core","reference-provider-timestamps",{}),(0,p.r)(p.W,p.V);let M=0;function X(e,t){return function(){const n=this,a=arguments;clearTimeout(M),M=setTimeout(function(){e.apply(n,a)},t)}}function q(e){try{return Boolean(new URL(e))}catch{return!1}}const U={name:"NcProviderList",components:{NcSelect:g.N,NcHighlight:v.N,NcEmptyContent:f.A,LinkVariantIcon:G},emits:["select-provider","submit"],data:()=>({selectedProvider:null,query:"",multiselectPlaceholder:(0,p.a)("Select provider"),providerIconAlt:(0,p.a)("Provider icon")}),computed:{options(){const e=[];return""!==this.query&&q(this.query)&&e.push({id:this.query,title:this.query,isLink:!0}),e.push(...R(this.query)),e}},methods:{focus(){setTimeout(()=>{this.$refs["provider-select"]?.$el?.querySelector("#provider-select-input")?.focus()},300)},onProviderSelected(e){null!==e&&(e.isLink?this.$emit("submit",e.title):this.$emit("select-provider",e),this.selectedProvider=null)},onSearch(e){this.query=e}}};var $=function(){var e=this,t=e._self._c;return t("div",{staticClass:"provider-list"},[t("NcSelect",{ref:"provider-select",staticClass:"provider-list--select",attrs:{"input-id":"provider-select-input",label:"title",placeholder:e.multiselectPlaceholder,options:e.options,"append-to-body":!1,"clear-search-on-select":!0,"clear-search-on-blur":()=>!1,filterable:!1},on:{search:e.onSearch,input:e.onProviderSelected},scopedSlots:e._u([{key:"option",fn:function(n){return[n.isLink?t("div",{staticClass:"provider"},[t("LinkVariantIcon",{staticClass:"link-icon",attrs:{size:20}}),t("span",[e._v(e._s(n.title))])],1):t("div",{staticClass:"provider"},[t("img",{staticClass:"provider-icon",attrs:{src:n.icon_url,alt:e.providerIconAlt}}),t("NcHighlight",{staticClass:"option-text",attrs:{search:e.query,text:n.title}})],1)]}}]),model:{value:e.selectedProvider,callback:function(t){e.selectedProvider=t},expression:"selectedProvider"}}),t("NcEmptyContent",{staticClass:"provider-list--empty-content",scopedSlots:e._u([{key:"icon",fn:function(){return[t("LinkVariantIcon")]},proxy:!0}])})],1)},H=[];const W=(0,l.n)(U,$,H,!1,null,"f39d58d9").exports;(0,p.r)(p.X);const V={name:"NcRawLinkInput",components:{LinkVariantIcon:G,NcEmptyContent:f.A,NcLoadingIcon:_.A,NcReferenceWidget:P,NcTextField:y.N},props:{provider:{type:Object,required:!0}},emits:["submit"],data:()=>({inputValue:"",loading:!1,reference:null,abortController:null,inputPlaceholder:(0,p.a)("Enter link")}),computed:{isLinkValid(){return q(this.inputValue)}},methods:{focus(){this.$refs["url-input"].$el.getElementsByTagName("input")[0]?.focus()},onSubmit(e){const t=e.target.value;this.isLinkValid&&this.$emit("submit",t)},onClear(){this.inputValue="",this.reference=null},onInput(){this.reference=null,this.abortController&&this.abortController.abort(),this.isLinkValid&&X(()=>{this.updateReference()},500)()},updateReference(){this.loading=!0,this.abortController=new AbortController,c.Ay.get((0,u.KT)("references/resolve",2)+"?reference="+encodeURIComponent(this.inputValue),{signal:this.abortController.signal}).then(e=>{this.reference=e.data.ocs.data.references[this.inputValue]}).catch(e=>{A.l.error("Could not update reference",{error:e})}).then(()=>{this.loading=!1})}}};var Y=function(){var e=this,t=e._self._c;return t("div",{staticClass:"raw-link"},[t("div",{staticClass:"input-wrapper"},[t("NcTextField",{ref:"url-input",attrs:{value:e.inputValue,"show-trailing-button":""!==e.inputValue,label:e.inputPlaceholder},on:{"update:value":[function(t){e.inputValue=t},e.onInput],"trailing-button-click":e.onClear},nativeOn:{keyup:function(t){return!t.type.indexOf("key")&&e._k(t.keyCode,"enter",13,t.key,"Enter")?null:e.onSubmit.apply(null,arguments)}}},[e.loading?t("NcLoadingIcon",{attrs:{size:16}}):t("LinkVariantIcon",{attrs:{size:16}})],1)],1),null!==e.reference?t("NcReferenceWidget",{staticClass:"reference-widget",attrs:{reference:e.reference}}):t("NcEmptyContent",{staticClass:"raw-link--empty-content",scopedSlots:e._u([{key:"icon",fn:function(){return[e.provider.icon_url?t("img",{staticClass:"provider-icon",attrs:{src:e.provider.icon_url}}):t("LinkVariantIcon")]},proxy:!0}])})],1)},Q=[];const K=(0,l.n)(V,Y,Q,!1,null,"be630586").exports,Z={name:"NcSearchResult",components:{NcHighlight:v.N},props:{entry:{type:Object,required:!0},query:{type:String,required:!0}}};var J=function(){var e=this,t=e._self._c;return t("div",{staticClass:"result"},[e.entry.icon?t("div",{staticClass:"result--icon-class",class:{[e.entry.icon]:!0,rounded:e.entry.rounded}}):t("img",{staticClass:"result--image",class:{rounded:e.entry.rounded},attrs:{src:e.entry.thumbnailUrl}}),t("div",{staticClass:"result--content"},[t("span",{staticClass:"result--content--name"},[t("NcHighlight",{attrs:{search:e.query,text:e.entry.title}})],1),t("span",{staticClass:"result--content--subline"},[t("NcHighlight",{attrs:{search:e.query,text:e.entry.subline}})],1)])])},ee=[];const te=(0,l.n)(Z,J,ee,!1,null,"995c2758").exports;(0,p.r)(p.Y,p.W,p.v);const ne={name:"NcSearch",components:{LinkVariantIcon:G,DotsHorizontalIcon:x.D,NcEmptyContent:f.A,NcSelect:g.N,NcSearchResult:te},props:{provider:{type:Object,required:!0},showEmptyContent:{type:Boolean,default:!0},searchPlaceholder:{type:String,default:null}},emits:["submit"],data:()=>({searchQuery:"",selectedResult:null,resultsBySearchProvider:{},searching:!1,searchingMoreOf:null,abortController:null,noOptionsText:(0,p.a)("Start typing to search"),providerIconAlt:(0,p.a)("Provider icon")}),computed:{mySearchPlaceholder(){return this.searchPlaceholder||(0,p.a)("Search")},searchProviderIds(){return this.provider.search_providers_ids},options(){if(""===this.searchQuery)return[];const e=[];return q(this.searchQuery)&&e.push(this.rawLinkEntry),e.push(...this.formattedSearchResults),e},rawLinkEntry(){return{id:"rawLinkEntry",resourceUrl:this.searchQuery,isRawLink:!0}},formattedSearchResults(){const e=[];return this.searchProviderIds.forEach(t=>{if(this.resultsBySearchProvider[t].entries.length>0){(this.searchProviderIds.length>1||this.resultsBySearchProvider[t].entries.length>1)&&e.push({id:"groupTitle-"+t,name:this.resultsBySearchProvider[t].name,isCustomGroupTitle:!0,providerId:t});const n=this.resultsBySearchProvider[t].entries.map((e,n)=>({id:"provider-"+t+"-entry-"+n,...e}));e.push(...n),this.resultsBySearchProvider[t].isPaginated&&e.push({id:"moreOf-"+t,name:this.resultsBySearchProvider[t].name,isMore:!0,providerId:t,isLoading:this.searchingMoreOf===t})}}),e}},mounted(){this.resetResults()},beforeDestroy(){this.cancelSearchRequests()},methods:{t:p.a,resetResults(){const e={};this.searchProviderIds.forEach(t=>{e[t]={entries:[]}}),this.resultsBySearchProvider=e},focus(){setTimeout(()=>{this.$refs["search-select"]?.$el?.querySelector("#search-select-input")?.focus()},300)},cancelSearchRequests(){this.abortController&&this.abortController.abort()},onSearchInput(e){this.searchQuery=e,X(()=>{this.updateSearch()},500)()},onSelectResultSelected(e){null!==e&&(e.resourceUrl?(this.cancelSearchRequests(),this.$emit("submit",e.resourceUrl)):e.isMore&&this.searchMoreOf(e.providerId).then(()=>{this.selectedResult=null}))},searchMoreOf(e){return this.searchingMoreOf=e,this.cancelSearchRequests(),this.searchProviders(e)},updateSearch(){if(this.cancelSearchRequests(),this.resetResults(),""!==this.searchQuery)return this.searchProviders();this.searching=!1},searchProviders(e=null){this.abortController=new AbortController,this.searching=!0;const t=null===e?[...this.searchProviderIds].map(e=>this.searchOneProvider(e)):[this.searchOneProvider(e,this.resultsBySearchProvider[e]?.cursor??null)];return Promise.allSettled(t).then(e=>{e.find(e=>"rejected"===e.status&&("CanceledError"===e.reason.name||"ERR_CANCELED"===e.reason.code))||(this.searching=!1,this.searchingMoreOf=null)})},searchOneProvider(e,t=null){const n=null===t?(0,u.KT)("search/providers/{providerId}/search?term={term}&limit={limit}",{providerId:e,term:this.searchQuery,limit:5}):(0,u.KT)("search/providers/{providerId}/search?term={term}&limit={limit}&cursor={cursor}",{providerId:e,term:this.searchQuery,limit:5,cursor:t});return c.Ay.get(n,{signal:this.abortController.signal}).then(t=>{const n=t.data.ocs.data;this.resultsBySearchProvider[e].name=n.name,this.resultsBySearchProvider[e].cursor=n.cursor,this.resultsBySearchProvider[e].isPaginated=n.isPaginated,this.resultsBySearchProvider[e].entries.push(...n.entries)})}}};var ae=function(){var e=this,t=e._self._c;return t("div",{staticClass:"smart-picker-search",class:{"with-empty-content":e.showEmptyContent}},[t("NcSelect",{ref:"search-select",staticClass:"smart-picker-search--select",attrs:{"input-id":"search-select-input",label:"name",placeholder:e.mySearchPlaceholder,options:e.options,"append-to-body":!1,"close-on-select":!1,"clear-search-on-select":!1,"clear-search-on-blur":()=>!1,"reset-focus-on-options-change":!1,filterable:!1,autoscroll:!0,"reset-on-options-change":!1,loading:e.searching},on:{search:e.onSearchInput,input:e.onSelectResultSelected},scopedSlots:e._u([{key:"option",fn:function(n){return[n.isRawLink?t("div",{staticClass:"custom-option"},[t("LinkVariantIcon",{staticClass:"option-simple-icon",attrs:{size:20}}),t("span",{staticClass:"option-text"},[e._v(" "+e._s(e.t("Raw link {options}",{options:n.resourceUrl}))+" ")])],1):n.resourceUrl?t("NcSearchResult",{staticClass:"search-result",attrs:{entry:n,query:e.searchQuery}}):n.isCustomGroupTitle?t("span",{staticClass:"custom-option group-name"},[e.provider.icon_url?t("img",{staticClass:"provider-icon group-name-icon",attrs:{src:e.provider.icon_url}}):e._e(),t("span",{staticClass:"option-text"},[t("strong",[e._v(e._s(n.name))])])]):n.isMore?t("span",{staticClass:"custom-option"},[n.isLoading?t("span",{staticClass:"option-simple-icon icon-loading-small"}):t("DotsHorizontalIcon",{staticClass:"option-simple-icon",attrs:{size:20}}),t("span",{staticClass:"option-text"},[e._v(" "+e._s(e.t('Load more "{options}"',{options:n.name}))+" ")])],1):e._e()]}},{key:"no-options",fn:function(){return[e._v(" "+e._s(e.noOptionsText)+" ")]},proxy:!0}]),model:{value:e.selectedResult,callback:function(t){e.selectedResult=t},expression:"selectedResult"}}),e.showEmptyContent?t("NcEmptyContent",{staticClass:"smart-picker-search--empty-content",scopedSlots:e._u([{key:"icon",fn:function(){return[e.provider.icon_url?t("img",{staticClass:"provider-icon",attrs:{alt:e.providerIconAlt,src:e.provider.icon_url}}):t("LinkVariantIcon")]},proxy:!0}],null,!1,2922132592)}):e._e()],1)},re=[];const ie=(0,l.n)(ne,ae,re,!1,null,"e61f71e3").exports,oe={providerList:1,standardLinkInput:2,searchInput:3,customElement:4},se={name:"NcReferencePicker",components:{NcCustomPickerElement:D,NcProviderList:W,NcRawLinkInput:K,NcSearch:ie},props:{initialProvider:{type:Object,default:()=>null},width:{type:Number,default:null},focusOnCreate:{type:Boolean,default:!0}},emits:["cancel","cancel-raw-link","cancel-search","provider-selected","submit"],data(){return{MODES:oe,selectedProvider:this.initialProvider}},computed:{mode(){return null===this.selectedProvider?oe.providerList:(0,s.c)(this.selectedProvider.id)?oe.customElement:this.selectedProvider.search_providers_ids?oe.searchInput:oe.standardLinkInput},pickerWrapperStyle(){return{width:this.width?this.width+"px":void 0}}},mounted(){this.focusOnCreate&&(this.initialProvider?setTimeout(()=>{this.$refs["url-input"]?.focus()},300):this.$nextTick(()=>{this.$refs["provider-list"]?.focus()}))},methods:{onEscapePressed(){null!==this.selectedProvider?this.deselectProvider():this.cancelProviderSelection()},onProviderSelected(e){this.selectedProvider=e,this.$emit("provider-selected",e),this.$nextTick(()=>{this.$refs["url-input"]?.focus()})},cancelCustomElement(){this.deselectProvider()},cancelSearch(){this.$emit("cancel-search",this.selectedProvider?.title),this.deselectProvider()},cancelRawLinkInput(){this.$emit("cancel-raw-link",this.selectedProvider?.title),this.deselectProvider()},cancelProviderSelection(){this.$emit("cancel")},submitLink(e){null!==this.selectedProvider&&async function(e){const t=Math.floor(Date.now()/1e3),n=(0,u.KT)("references/provider/{providerId}",{providerId:e});await c.Ay.put(n,{timestamp:t}),window._vue_richtext_reference_provider_timestamps[e]=t}(this.selectedProvider.id),this.$emit("submit",e),this.deselectProvider()},deselectProvider(){this.selectedProvider=null,this.$emit("provider-selected",null),setTimeout(()=>{this.$refs["provider-list"]?.focus()},300)}}};var le=function(){var e=this,t=e._self._c;return t("div",{staticClass:"reference-picker",style:e.pickerWrapperStyle,attrs:{tabindex:"-1"},on:{keydown:function(t){return!t.type.indexOf("key")&&e._k(t.keyCode,"esc",27,t.key,["Esc","Escape"])?null:(t.stopPropagation(),t.preventDefault(),e.onEscapePressed.apply(null,arguments))}}},[e.mode===e.MODES.providerList?t("NcProviderList",{ref:"provider-list",on:{"select-provider":e.onProviderSelected,submit:e.submitLink,cancel:e.cancelProviderSelection}}):e.mode===e.MODES.standardLinkInput?t("NcRawLinkInput",{ref:"url-input",attrs:{provider:e.selectedProvider},on:{submit:e.submitLink,cancel:e.cancelRawLinkInput}}):e.mode===e.MODES.searchInput?t("NcSearch",{ref:"url-input",attrs:{provider:e.selectedProvider},on:{cancel:e.cancelSearch,submit:e.submitLink}}):e.mode===e.MODES.customElement?t("div",{staticClass:"custom-element-wrapper"},[t("NcCustomPickerElement",{staticClass:"custom-element",attrs:{provider:e.selectedProvider},on:{submit:e.submitLink,cancel:e.cancelCustomElement}})],1):e._e()],1)},ce=[];const de=(0,l.n)(se,le,ce,!1,null,"646d5538").exports;(0,p.r)(p.Z,p.m);const ue={name:"NcReferencePickerModal",components:{NcReferencePicker:de,NcModal:E.A,NcButton:b.N,ArrowLeftIcon:i.A,CloseIcon:o.C},props:{initialProvider:{type:Object,default:()=>null},focusOnCreate:{type:Boolean,default:!0},isInsideViewer:{type:Boolean,default:!1}},emits:["cancel","submit"],data(){return{show:!0,selectedProvider:this.initialProvider,backButtonTitle:(0,p.a)("Back to provider selection"),closeButtonTitle:(0,p.a)("Close"),closeButtonLabel:(0,p.a)("Close Smart Picker")}},computed:{isProviderSelected(){return null!==this.selectedProvider},showBackButton(){return null===this.initialProvider&&this.isProviderSelected},modalSize(){return this.isProviderSelected&&(0,s.c)(this.selectedProvider.id)?(0,s.g)(this.selectedProvider.id)??"large":"normal"},showModalName(){return!this.isProviderSelected||!(0,s.c)(this.selectedProvider.id)},modalName(){return this.isProviderSelected?this.selectedProvider.title:(0,p.a)("Smart Picker")}},mounted(){if(this.isInsideViewer){const e=this.$refs.modal_content;(0,r.Ic)("viewer:trapElements:changed",e)}},methods:{onCancel(){this.show=!1,this.$emit("cancel")},onSubmit(e){this.show=!1,this.$emit("submit",e)},onProviderSelect(e){this.selectedProvider=e,null===e&&null!==this.initialProvider&&this.onCancel()},onBackClicked(){this.$refs.referencePicker.deselectProvider()}}};var pe=function(){var e=this,t=e._self._c;return e.show?t("NcModal",{staticClass:"reference-picker-modal",attrs:{size:e.modalSize,"can-close":!0},on:{close:e.onCancel}},[t("div",{ref:"modal_content",staticClass:"reference-picker-modal--content"},[e.showBackButton?t("NcButton",{staticClass:"back-button",attrs:{"aria-label":e.backButtonTitle,title:e.backButtonTitle},on:{click:e.onBackClicked},scopedSlots:e._u([{key:"icon",fn:function(){return[t("ArrowLeftIcon")]},proxy:!0}],null,!1,3001860362)}):e._e(),t("NcButton",{staticClass:"close-button",attrs:{"aria-label":e.closeButtonLabel,title:e.closeButtonTitle,variant:"tertiary"},on:{click:e.onCancel},scopedSlots:e._u([{key:"icon",fn:function(){return[t("CloseIcon")]},proxy:!0}],null,!1,2491825086)}),e.showModalName?t("h2",[e._v(" "+e._s(e.modalName)+" ")]):e._e(),t("NcReferencePicker",{ref:"referencePicker",attrs:{"initial-provider":e.initialProvider,"focus-on-create":e.focusOnCreate},on:{"provider-selected":e.onProviderSelect,submit:e.onSubmit,cancel:e.onCancel}})],1)]):e._e()},Ae=[];const fe=(0,l.n)(ue,pe,Ae,!1,null,"00990f2a").exports;async function ve(e,t){const n=document.createElement("div");n.id="referencePickerModal",document.body.append(n);const{promise:r,reject:i,resolve:o}=Promise.withResolvers(),s=e&&function(e){return e===z?O:j().find(t=>t.id===e)}(e)||null,l=new(a.Ay.extend(fe))({propsData:{initialProvider:s,isInsideViewer:t}}).$mount(n);return l.$on("cancel",()=>{l.$destroy(),i(new Error("User cancellation"))}),l.$on("submit",e=>{l.$destroy(),o(e)}),r}},36054:(e,t,n)=>{"use strict";n.d(t,{A:()=>s});var a=n(71354),r=n.n(a),i=n(76314),o=n.n(i)()(r());o.push([e.id,"/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/**\n * SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/*\n* Ensure proper alignment of the vue material icons\n*/\n.material-design-icon[data-v-6f255eb3] {\n display: flex;\n align-self: center;\n justify-self: center;\n align-items: center;\n justify-content: center;\n}\n\n/* 'New' button */\n.app-navigation-new[data-v-6f255eb3] {\n display: block;\n padding: calc(var(--default-grid-baseline, 4px) * 2);\n}\n.app-navigation-new button[data-v-6f255eb3] {\n width: 100%;\n}","",{version:3,sources:["webpack://./node_modules/@nextcloud/vue/dist/assets/NcAppNavigationNew-D8_2ab9R.css"],names:[],mappings:"AAAA;;;EAGE;AACF;;;EAGE;AACF;;CAEC;AACD;EACE,aAAa;EACb,kBAAkB;EAClB,oBAAoB;EACpB,mBAAmB;EACnB,uBAAuB;AACzB;;AAEA,iBAAiB;AACjB;EACE,cAAc;EACd,oDAAoD;AACtD;AACA;EACE,WAAW;AACb",sourcesContent:["/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/**\n * SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/*\n* Ensure proper alignment of the vue material icons\n*/\n.material-design-icon[data-v-6f255eb3] {\n display: flex;\n align-self: center;\n justify-self: center;\n align-items: center;\n justify-content: center;\n}\n\n/* 'New' button */\n.app-navigation-new[data-v-6f255eb3] {\n display: block;\n padding: calc(var(--default-grid-baseline, 4px) * 2);\n}\n.app-navigation-new button[data-v-6f255eb3] {\n width: 100%;\n}"],sourceRoot:""}]);const s=o},47790:()=>{},49328:(e,t,n)=>{"use strict";n.d(t,{A:()=>s});var a=n(71354),r=n.n(a),i=n(76314),o=n.n(i)()(r());o.push([e.id,".ldap-wizard__groups[data-v-3200ed48]{display:flex;flex-direction:column;gap:16px}.ldap-wizard__groups__line[data-v-3200ed48]{display:flex;align-items:start}.ldap-wizard__groups__filter-selection[data-v-3200ed48]{flex-direction:column}.ldap-wizard__groups__groups-filter[data-v-3200ed48]{display:flex;flex-direction:column}.ldap-wizard__groups__groups-filter code[data-v-3200ed48]{background-color:var(--color-background-dark);padding:4px;border-radius:4px}.ldap-wizard__groups__groups-count-check[data-v-3200ed48]{display:flex;align-items:center;gap:16px}","",{version:3,sources:["webpack://./apps/user_ldap/src/components/SettingsTabs/GroupsTab.vue"],names:[],mappings:"AACA,sCACC,YAAA,CACA,qBAAA,CACA,QAAA,CAEA,4CACC,YAAA,CACA,iBAAA,CAGD,wDACC,qBAAA,CAGD,qDACC,YAAA,CACA,qBAAA,CAEA,0DACC,6CAAA,CACA,WAAA,CACA,iBAAA,CAIF,0DACC,YAAA,CACA,kBAAA,CACA,QAAA",sourcesContent:["\n.ldap-wizard__groups {\n\tdisplay: flex;\n\tflex-direction: column;\n\tgap: 16px;\n\n\t&__line {\n\t\tdisplay: flex;\n\t\talign-items: start;\n\t}\n\n\t&__filter-selection {\n\t\tflex-direction: column;\n\t}\n\n\t&__groups-filter {\n\t\tdisplay: flex;\n\t\tflex-direction: column;\n\n\t\tcode {\n\t\t\tbackground-color: var(--color-background-dark);\n\t\t\tpadding: 4px;\n\t\t\tborder-radius: 4px;\n\t\t}\n\t}\n\n\t&__groups-count-check {\n\t\tdisplay: flex;\n\t\talign-items: center;\n\t\tgap: 16px;\n\t}\n}\n"],sourceRoot:""}]);const s=o},50510:(e,t,n)=>{"use strict";n.d(t,{A:()=>s});var a=n(71354),r=n.n(a),i=n(76314),o=n.n(i)()(r());o.push([e.id,".ldap-wizard__login[data-v-01fb1aea]{display:flex;flex-direction:column;gap:16px}.ldap-wizard__login button[data-v-01fb1aea]{flex-shrink:0}.ldap-wizard__login__line[data-v-01fb1aea]{display:flex;align-items:start;gap:8px}.ldap-wizard__login__login-attributes[data-v-01fb1aea]{display:flex;flex-direction:column}.ldap-wizard__login__user-login-filter[data-v-01fb1aea]{display:flex;flex-direction:column}.ldap-wizard__login__user-login-filter code[data-v-01fb1aea]{background-color:var(--color-background-dark);padding:4px;border-radius:4px}","",{version:3,sources:["webpack://./apps/user_ldap/src/components/SettingsTabs/LoginTab.vue"],names:[],mappings:"AACA,qCACC,YAAA,CACA,qBAAA,CACA,QAAA,CAEA,4CACC,aAAA,CAGD,2CACC,YAAA,CACA,iBAAA,CACA,OAAA,CAGD,uDACC,YAAA,CACA,qBAAA,CAGD,wDACC,YAAA,CACA,qBAAA,CAEA,6DACC,6CAAA,CACA,WAAA,CACA,iBAAA",sourcesContent:["\n.ldap-wizard__login {\n\tdisplay: flex;\n\tflex-direction: column;\n\tgap: 16px;\n\n\tbutton {\n\t\tflex-shrink: 0;\n\t}\n\n\t&__line {\n\t\tdisplay: flex;\n\t\talign-items: start;\n\t\tgap: 8px;\n\t}\n\n\t&__login-attributes {\n\t\tdisplay: flex;\n\t\tflex-direction: column;\n\t}\n\n\t&__user-login-filter {\n\t\tdisplay: flex;\n\t\tflex-direction: column;\n\n\t\tcode {\n\t\t\tbackground-color: var(--color-background-dark);\n\t\t\tpadding: 4px;\n\t\t\tborder-radius: 4px;\n\t\t}\n\t}\n}\n"],sourceRoot:""}]);const s=o},51069:()=>{},53120:(e,t,n)=>{"use strict";n.d(t,{A:()=>s});var a=n(71354),r=n.n(a),i=n(76314),o=n.n(i)()(r());o.push([e.id,"\n.nc-select-users[data-v-e5d43b0e] .vs__selected {\n\tpadding-inline: 0 5px !important;\n}\n","",{version:3,sources:["webpack://./node_modules/@nextcloud/vue/dist/assets/NcSelectUsers-CfOSPgtz.css"],names:[],mappings:";AACA;CACC,gCAAgC;AACjC",sourcesContent:["\n.nc-select-users[data-v-e5d43b0e] .vs__selected {\n\tpadding-inline: 0 5px !important;\n}\n"],sourceRoot:""}]);const s=o},63779:()=>{},64688:()=>{},66089:()=>{},67503:(e,t,n)=>{"use strict";n.d(t,{A:()=>s});var a=n(71354),r=n.n(a),i=n(76314),o=n.n(i)()(r());o.push([e.id,"/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/**\n * SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/*\n* Ensure proper alignment of the vue material icons\n*/\n.material-design-icon[data-v-9938ac79] {\n display: flex;\n align-self: center;\n justify-self: center;\n align-items: center;\n justify-content: center;\n}\n.input-wrapper[data-v-9938ac79] {\n display: flex;\n align-items: center;\n flex-wrap: wrap;\n width: 100%;\n max-width: 400px;\n}\n.input-wrapper .action-input__label[data-v-9938ac79] {\n margin-right: 12px;\n}\n.input-wrapper[data-v-9938ac79]:disabled {\n cursor: default;\n}\n.input-wrapper .hint[data-v-9938ac79] {\n color: var(--color-text-maxcontrast);\n margin-left: 8px;\n}","",{version:3,sources:["webpack://./node_modules/@nextcloud/vue/dist/assets/NcSettingsInputText-18lfGViv.css"],names:[],mappings:"AAAA;;;EAGE;AACF;;;EAGE;AACF;;CAEC;AACD;EACE,aAAa;EACb,kBAAkB;EAClB,oBAAoB;EACpB,mBAAmB;EACnB,uBAAuB;AACzB;AACA;EACE,aAAa;EACb,mBAAmB;EACnB,eAAe;EACf,WAAW;EACX,gBAAgB;AAClB;AACA;EACE,kBAAkB;AACpB;AACA;EACE,eAAe;AACjB;AACA;EACE,oCAAoC;EACpC,gBAAgB;AAClB",sourcesContent:["/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/**\n * SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/*\n* Ensure proper alignment of the vue material icons\n*/\n.material-design-icon[data-v-9938ac79] {\n display: flex;\n align-self: center;\n justify-self: center;\n align-items: center;\n justify-content: center;\n}\n.input-wrapper[data-v-9938ac79] {\n display: flex;\n align-items: center;\n flex-wrap: wrap;\n width: 100%;\n max-width: 400px;\n}\n.input-wrapper .action-input__label[data-v-9938ac79] {\n margin-right: 12px;\n}\n.input-wrapper[data-v-9938ac79]:disabled {\n cursor: default;\n}\n.input-wrapper .hint[data-v-9938ac79] {\n color: var(--color-text-maxcontrast);\n margin-left: 8px;\n}"],sourceRoot:""}]);const s=o},73776:()=>{},74307:(e,t,n)=>{"use strict";n.d(t,{A:()=>s});var a=n(71354),r=n.n(a),i=n(76314),o=n.n(i)()(r());o.push([e.id,"\n._fadeTransition_13rtj_2 {\n\ttransition: all var(--animation-quick) ease;\n}\n._fadeTransitionActive_13rtj_6 {\n\topacity: 0;\n\tposition: absolute;\n}\n","",{version:3,sources:["webpack://./node_modules/@nextcloud/vue/dist/assets/NcBlurHash-7aGtE-_T.css"],names:[],mappings:";AACA;CACC,2CAA2C;AAC5C;AACA;CACC,UAAU;CACV,kBAAkB;AACnB",sourcesContent:["\n._fadeTransition_13rtj_2 {\n\ttransition: all var(--animation-quick) ease;\n}\n._fadeTransitionActive_13rtj_6 {\n\topacity: 0;\n\tposition: absolute;\n}\n"],sourceRoot:""}]);const s=o},76253:(e,t,n)=>{"use strict";n.d(t,{A:()=>s});var a=n(71354),r=n.n(a),i=n(76314),o=n.n(i)()(r());o.push([e.id,".ldap-wizard__advanced[data-v-5b57c0d9]{display:flex;flex-direction:column;gap:16px}.ldap-wizard__advanced__section[data-v-5b57c0d9]{display:flex;flex-direction:column;border:1px solid var(--color-text-lighter);border-radius:var(--border-radius);padding:8px}.ldap-wizard__advanced__section>*[data-v-5b57c0d9]{margin-top:12px !important}.ldap-wizard__advanced__section summary[data-v-5b57c0d9]{margin-top:0 !important}.ldap-wizard__advanced__section summary h3[data-v-5b57c0d9]{margin:0;display:inline;cursor:pointer;color:var(--color-text-lighter);font-size:16px}.ldap-wizard__advanced__section:hover h3[data-v-5b57c0d9],.ldap-wizard__advanced__section[open] h3[data-v-5b57c0d9]{color:var(--color-text-light)}","",{version:3,sources:["webpack://./apps/user_ldap/src/components/SettingsTabs/AdvancedTab.vue"],names:[],mappings:"AACA,wCACC,YAAA,CACA,qBAAA,CACA,QAAA,CAEA,iDACC,YAAA,CACA,qBAAA,CACA,0CAAA,CACA,kCAAA,CACA,WAAA,CAEA,mDACC,0BAAA,CAGD,yDACC,uBAAA,CAEA,4DACC,QAAA,CACA,cAAA,CACA,cAAA,CACA,+BAAA,CACA,cAAA,CAMD,oHACC,6BAAA",sourcesContent:["\n.ldap-wizard__advanced {\n\tdisplay: flex;\n\tflex-direction: column;\n\tgap: 16px;\n\n\t&__section {\n\t\tdisplay: flex;\n\t\tflex-direction: column;\n\t\tborder: 1px solid var(--color-text-lighter);\n\t\tborder-radius: var(--border-radius);\n\t\tpadding: 8px;\n\n\t\t& > * {\n\t\t\tmargin-top: 12px !important;\n\t\t}\n\n\t\tsummary {\n\t\t\tmargin-top: 0 !important;\n\n\t\t\th3 {\n\t\t\t\tmargin: 0;\n\t\t\t\tdisplay: inline;\n\t\t\t\tcursor: pointer;\n\t\t\t\tcolor: var(--color-text-lighter);\n\t\t\t\tfont-size: 16px;\n\n\t\t\t}\n\t\t}\n\n\t\t&:hover, &[open] {\n\t\t\th3 {\n\t\t\t\tcolor: var(--color-text-light);\n\t\t\t}\n\t\t}\n\t}\n}\n"],sourceRoot:""}]);const s=o},76319:(t,n,a)=>{"use strict";var r=a(21777),i=a(10810),o=a(85471),s=a(81222),l=a(53334),c=a(97489),d=a(85072),u=a.n(d),p=a(97825),A=a.n(p),f=a(77659),v=a.n(f),g=a(55056),m=a.n(g),h=a(10540),b=a.n(h),C=a(41113),_=a.n(C),y=a(6139),x={};x.styleTagTransform=_(),x.setAttributes=m(),x.insert=v().bind(null,"head"),x.domAPI=A(),x.insertStyleElement=b(),u()(y.A,x),y.A&&y.A.locals&&y.A.locals;var E=a(47536),k=a(88751),w=a(51431);(0,E.r)();const B=(0,o.pM)({name:"NcActionButtonGroup",inject:{isInSemanticMenu:{from:"NcActions:isSemanticMenu",default:!1}},props:{name:{required:!1,default:void 0,type:String}},setup:()=>({labelId:`nc-action-button-group-${(0,k.G)()}`}),methods:{t:E.a}});var P=function(){var e=this,t=e._self._c;return e._self._setupProxy,t("li",{staticClass:"nc-button-group-base",attrs:{role:e.isInSemanticMenu&&"presentation"}},[e.name?t("div",{attrs:{id:e.labelId}},[e._v(" "+e._s(e.name)+" ")]):e._e(),t("ul",{staticClass:"nc-button-group-content",attrs:{role:"group","aria-labelledby":e.name?e.labelId:void 0}},[e._t("default")],2)])},N=[];(0,w.n)(B,P,N,!1,null,"d81f7625").exports;var I=a(61744),S=a(73891),D=a(34772),L=a(57908),T=a(26582),F={};F.styleTagTransform=_(),F.setAttributes=m(),F.insert=v().bind(null,"head"),F.domAPI=A(),F.insertStyleElement=b(),u()(T.A,F),T.A&&T.A.locals&&T.A.locals;var G=a(39841);const z={name:"NcActionRadio",mixins:[a(16086).A],inject:{isInSemanticMenu:{from:"NcActions:isSemanticMenu",default:!1}},model:{prop:"modelValue",event:"update:modelValue"},props:{id:{type:String,default:()=>"action-"+(0,k.G)(),validator:e=>""!==e.trim()},checked:{type:Boolean,default:void 0},modelValue:{type:[Boolean,String,Number],default:!1},name:{type:String,required:!0},value:{type:[String,Number],default:""},disabled:{type:Boolean,default:!1}},emits:["update:checked","update:modelValue","update:model-value","change"],setup:e=>("boolean"==typeof e.modelValue&&o.Ay.util.warn("[NcActionRadio] Boolean type of `modelValue` is deprecated and will be removed in next versions"),{model:(0,G.u)("checked","update:checked")}),computed:{isFocusable(){return!this.disabled},ariaChecked(){if(this.isInSemanticMenu)return this.model?"true":"false"}},methods:{toggleInput(){this.$refs.label.click()},onChange(e){this.$emit("change",e)}}};var O=function(){var e=this,t=e._self._c;return t("li",{staticClass:"action",class:{"action--disabled":e.disabled},attrs:{role:e.isInSemanticMenu&&"presentation"}},[t("span",{staticClass:"action-radio",attrs:{role:"menuitemradio","aria-checked":e.ariaChecked}},[t("input",{directives:[{name:"model",rawName:"v-model",value:e.model,expression:"model"}],staticClass:"radio action-radio__radio",class:{focusable:e.isFocusable},attrs:{id:e.id,disabled:e.disabled,name:e.name,type:"radio"},domProps:{value:e.value,checked:e._q(e.model,e.value)},on:{keydown:function(t){return!t.type.indexOf("key")&&e._k(t.keyCode,"enter",13,t.key,"Enter")||t.ctrlKey||t.shiftKey||t.altKey||t.metaKey?null:(t.preventDefault(),e.toggleInput.apply(null,arguments))},change:[function(t){e.model=e.value},e.onChange]}}),t("label",{ref:"label",staticClass:"action-radio__label",attrs:{for:e.id}},[e._v(e._s(e.text))]),e._e()],2)])},j=[];(0,w.n)(z,O,j,!1,null,"9ee34172").exports;var R=a(59915),M=a(62388),X=a(15502),q=a(71711),U=a(14693),$={};$.styleTagTransform=_(),$.setAttributes=m(),$.insert=v().bind(null,"head"),$.domAPI=A(),$.insertStyleElement=b(),u()(U.A,$),U.A&&U.A.locals&&U.A.locals;var H=a(92777),W=a(97424),V=a(57833);const Y={name:"NcActionTextEditable",components:{NcIconSvgWrapper:V.N},mixins:[W.A],model:{prop:"modelValue",event:"update:modelValue"},props:{id:{type:String,default:()=>"action-"+(0,k.G)(),validator:e=>""!==e.trim()},disabled:{type:Boolean,default:!1},value:{type:String,default:void 0},modelValue:{type:String,default:""}},emits:["input","update:value","update:modelValue","update:model-value","submit"],setup:()=>({model:(0,G.u)("value","update:value"),mdiArrowRight:H.d}),computed:{isFocusable(){return!this.disabled},computedId:()=>(0,k.G)()},methods:{onInput(e){this.$emit("input",e),this.model=e.target.value},onSubmit(e){if(e.preventDefault(),e.stopPropagation(),this.disabled)return!1;this.$emit("submit",e)}}};var Q=function(){var e=this,t=e._self._c;return t("li",{staticClass:"action",class:{"action--disabled":e.disabled}},[t("span",{staticClass:"action-text-editable",on:{click:e.onClick}},[e._t("icon",function(){return[t("span",{staticClass:"action-text-editable__icon",class:[e.isIconUrl?"action-text-editable__icon--url":e.icon],style:{backgroundImage:e.isIconUrl?`url(${e.icon})`:null}})]}),t("form",{ref:"form",staticClass:"action-text-editable__form",attrs:{disabled:e.disabled},on:{submit:function(t){return t.preventDefault(),e.onSubmit.apply(null,arguments)}}},[t("input",{staticClass:"action-text-editable__submit",attrs:{id:e.id,type:"submit"}}),e.name?t("label",{staticClass:"action-text-editable__name",attrs:{for:e.computedId}},[e._v(" "+e._s(e.name)+" ")]):e._e(),t("textarea",e._b({staticClass:"action-text-editable__textarea",class:{focusable:e.isFocusable},attrs:{id:e.computedId,disabled:e.disabled},domProps:{value:e.model},on:{input:e.onInput}},"textarea",e.$attrs,!1)),t("label",{directives:[{name:"show",rawName:"v-show",value:!e.disabled,expression:"!disabled"}],staticClass:"action-text-editable__label",attrs:{for:e.id}},[t("NcIconSvgWrapper",{attrs:{directional:"",path:e.mdiArrowRight}})],1)])],2)])},K=[];(0,w.n)(Y,Q,K,!1,null,"018dbbe8").exports;var Z=a(559);const J={name:"NcAppContentDetails"};var ee=function(){return(0,this._self._c)("div",{staticClass:"app-content-details"},[this._t("default")],2)},te=[];(0,w.n)(J,ee,te,!1,null,null).exports;const ne={name:"NcAppContentList",props:{selection:{type:Boolean,default:!1},showDetails:{type:Boolean,default:!1}}};var ae=function(){var e=this;return(0,e._self._c)("div",{staticClass:"app-content-list",class:{selection:e.selection,showdetails:e.showDetails}},[e._t("default")],2)},re=[];(0,w.n)(ne,ae,re,!1,null,null).exports;var ie=a(59019),oe=a(86795),se={};se.styleTagTransform=_(),se.setAttributes=m(),se.insert=v().bind(null,"head"),se.domAPI=A(),se.insertStyleElement=b(),u()(oe.A,se),oe.A&&oe.A.locals&&oe.A.locals;const le={name:"NcAppNavigationCaption",components:{NcActions:M.N},inheritAttrs:!1,props:{name:{type:String,required:!0},headingId:{type:String,default:null},isHeading:{type:Boolean,default:!1},headingLevel:{type:Number,default:2}," ":{}},computed:{wrapperTag(){return this.isHeading?"div":"li"},captionTag(){const e=Math.max(2,this.headingLevel);return this.isHeading?`h${e}`:"span"},hasActions(){return!!this.$slots.actions}}};var ce=function(){var e=this,t=e._self._c;return t(e.wrapperTag,{tag:"component",staticClass:"app-navigation-caption",class:{"app-navigation-caption--heading":e.isHeading}},[t(e.captionTag,{tag:"component",staticClass:"app-navigation-caption__name",attrs:{id:e.headingId}},[e._v(" "+e._s(e.name)+" ")]),e.hasActions?t("div",{staticClass:"app-navigation-caption__actions"},[t("NcActions",e._g(e._b({scopedSlots:e._u([{key:"icon",fn:function(){return[e._t("actionsTriggerIcon")]},proxy:!0}],null,!0)},"NcActions",e.$attrs,!1),e.$listeners),[e._t("actions")],2)],1):e._e()],1)},de=[];(0,w.n)(le,ce,de,!1,null,"fac69d4a").exports;var ue=a(98621),pe={};pe.styleTagTransform=_(),pe.setAttributes=m(),pe.insert=v().bind(null,"head"),pe.domAPI=A(),pe.insertStyleElement=b(),u()(ue.A,pe),ue.A&&ue.A.locals&&ue.A.locals;const Ae={name:"NcAppNavigationIconBullet",props:{color:{type:String,required:!0,validator:e=>/^#?([0-9A-F]{3}){1,2}$/i.test(e)}},emits:["click"],computed:{formattedColor(){return this.color.startsWith("#")?this.color:"#"+this.color}},methods:{onClick(e){this.$emit("click",e)}}};var fe=function(){var e=this,t=e._self._c;return t("div",{staticClass:"app-navigation-entry__icon-bullet",on:{click:e.onClick}},[t("div",{style:{backgroundColor:e.formattedColor}})])},ve=[];(0,w.n)(Ae,fe,ve,!1,null,"04a313f4").exports;var ge=a(89621),me=a(27345),he=a(36054),be={};be.styleTagTransform=_(),be.setAttributes=m(),be.insert=v().bind(null,"head"),be.domAPI=A(),be.insertStyleElement=b(),u()(he.A,be),he.A&&he.A.locals&&he.A.locals;var Ce=a(97221);const _e={components:{NcButton:Ce.N},props:{buttonId:{type:String,required:!1,default:""},disabled:{type:Boolean,required:!1,default:!1},text:{type:String,required:!0},type:{type:String,default:"primary",validator:e=>-1!==["primary","secondary","tertiary"].indexOf(e)},variant:{type:String,default:"primary",validator:e=>-1!==["primary","secondary","tertiary"].indexOf(e)}},emits:["click"]};var ye=function(){var e=this,t=e._self._c;return t("div",{staticClass:"app-navigation-new"},[t("NcButton",{attrs:{id:e.buttonId,disabled:e.disabled,variant:"primary"!==e.type?e.type:e.variant},on:{click:function(t){return e.$emit("click")}},scopedSlots:e._u([{key:"icon",fn:function(){return[e._t("icon")]},proxy:!0}],null,!0)},[e._v(" "+e._s(e.text)+" ")])],1)},xe=[];(0,w.n)(_e,ye,xe,!1,null,"6f255eb3").exports;var Ee=a(9244),ke={};ke.styleTagTransform=_(),ke.setAttributes=m(),ke.insert=v().bind(null,"head"),ke.domAPI=A(),ke.insertStyleElement=b(),u()(Ee.A,ke),Ee.A&&Ee.A.locals&&Ee.A.locals;var we=a(46832),Be=a(88289);const Pe={name:"NcAppNavigationNewItem",components:{NcInputConfirmCancel:we.N,NcLoadingIcon:Be.A},props:{name:{type:String,required:!0},icon:{type:String,default:""},loading:{type:Boolean,default:!1},editLabel:{type:String,default:""},editPlaceholder:{type:String,default:""}},emits:["new-item"],data:()=>({newItemValue:"",newItemActive:!1}),methods:{handleNewItem(){this.loading||(this.newItemActive=!0,this.$nextTick(()=>{this.$refs.newItemInput.focusInput()}))},cancelNewItem(){this.newItemActive=!1},handleNewItemDone(){this.$emit("new-item",this.newItemValue),this.newItemValue="",this.newItemActive=!1}}};var Ne=function(){var e=this,t=e._self._c;return t("li",{staticClass:"app-navigation-entry",class:{"app-navigation-entry--newItemActive":e.newItemActive}},[t("button",{staticClass:"app-navigation-entry-button",on:{click:e.handleNewItem}},[t("span",{staticClass:"app-navigation-entry-icon",class:{[e.icon]:!e.loading}},[e.loading?t("NcLoadingIcon"):e._t("icon")],2),e.newItemActive?e._e():t("span",{staticClass:"app-navigation-new-item__name",attrs:{title:e.name}},[e._v(" "+e._s(e.name)+" ")]),e.newItemActive?t("span",{staticClass:"newItemContainer"},[t("NcInputConfirmCancel",{ref:"newItemInput",attrs:{placeholder:""!==e.editPlaceholder?e.editPlaceholder:e.name},on:{cancel:e.cancelNewItem,confirm:e.handleNewItemDone},model:{value:e.newItemValue,callback:function(t){e.newItemValue=t},expression:"newItemValue"}})],1):e._e()])])},Ie=[];(0,w.n)(Pe,Ne,Ie,!1,null,"258871fd").exports;var Se=a(12368),De=(a(29436),a(20265)),Le={};Le.styleTagTransform=_(),Le.setAttributes=m(),Le.insert=v().bind(null,"head"),Le.domAPI=A(),Le.insertStyleElement=b(),u()(De.A,Le),De.A&&De.A.locals&&De.A.locals;var Te=a(57579),Fe=a(75105),Ge=(a(23020),a(53429),a(70580),a(44349),a(95462)),ze=(a(29928),a(19051)),Oe=a(3168),je=a(70415);(0,E.r)(E.n);const Re={directives:{ClickOutside:Te.z0},components:{NcButton:Ce.N,NcIconSvgWrapper:V.N},mixins:[Fe.A],props:{name:{type:String,required:!1,default:(0,E.a)("Settings")}},setup:()=>({contentId:(0,k.G)(),isLegacy32:je.i,mdiCog:H.i,mdiCogOutline:H.h}),data:()=>({open:!1}),computed:{clickOutsideConfig(){return[this.closeMenu,this.clickOutsideOptions]}},methods:{closeMenu(){this.open=!1}}};var Me=function(){var e=this,t=e._self._c;return t("div",{directives:[{name:"click-outside",rawName:"v-click-outside",value:e.clickOutsideConfig,expression:"clickOutsideConfig"}],class:{open:e.open},attrs:{id:"app-settings"}},[t("div",{attrs:{id:"app-settings__header"}},[t("NcButton",{staticClass:"settings-button",attrs:{"aria-controls":e.contentId,"aria-expanded":e.open?"true":"false",alignment:"start",variant:"tertiary",wide:""},on:{click:function(t){e.open=!e.open}},scopedSlots:e._u([{key:"icon",fn:function(){return[t("NcIconSvgWrapper",{staticClass:"settings-button__icon",attrs:{path:e.isLegacy32?e.mdiCog:e.mdiCogOutline}})]},proxy:!0}])},[e._v(" "+e._s(e.name)+" ")])],1),t("Transition",{attrs:{name:"slide-up"}},[t("div",{directives:[{name:"show",rawName:"v-show",value:e.open,expression:"open"}],attrs:{id:e.contentId}},[e._t("default")],2)])],1)},Xe=[];(0,w.n)(Re,Me,Xe,!1,null,"8fb21c8b").exports;var qe=a(542),Ue=a(41340),$e=a(83600),He=a(89335),We=a(59839),Ve=a(50017),Ye=a(60258),Qe=a(81611),Ke={};Ke.styleTagTransform=_(),Ke.setAttributes=m(),Ke.insert=v().bind(null,"head"),Ke.domAPI=A(),Ke.insertStyleElement=b(),u()(Qe.A,Ke),Qe.A&&Qe.A.locals&&Qe.A.locals;var Ze=a(33954),Je={};Je.styleTagTransform=_(),Je.setAttributes=m(),Je.insert=v().bind(null,"head"),Je.domAPI=A(),Je.insertStyleElement=b(),u()(Ze.A,Je),Ze.A&&Ze.A.locals&&Ze.A.locals;var et=a(34163);const tt={__name:"NcAssistantIcon",props:{inline:{type:Boolean,default:!1},size:{type:Number,default:20}},setup(e){const t=e;(0,o.$9)((e,t)=>({a843d9d2:t.sizePx}));const n=(0,Ge.u)(),a=(0,et.c)(),r=(0,o.EW)(()=>`${t.size}px`);return{__sfc:!0,props:t,isDarkTheme:n,gradientId:a,sizePx:r,mdiCreation:H.e}}};var nt=function(){var e=this,t=e._self._c,n=e._self._setupProxy;return t("span",{class:[e.$style.assistantIcon,e.inline&&e.$style.assistantIcon_inline],attrs:{"aria-hidden":"true",role:"img"}},[t("svg",{class:e.$style.assistantIcon__svg,attrs:{viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg"}},[t("defs",[n.isDarkTheme?t("linearGradient",{attrs:{id:n.gradientId,gradientTransform:"rotateX(285)"}},[t("stop",{attrs:{offset:"15%","stop-color":"#CDACE7"}}),t("stop",{attrs:{offset:"40%","stop-color":"#008FDB"}}),t("stop",{attrs:{offset:"82%","stop-color":"#A180E0"}})],1):t("linearGradient",{attrs:{id:n.gradientId,gradientTransform:"rotateX(285)"}},[t("stop",{attrs:{offset:"15%","stop-color":"#9669D3"}}),t("stop",{attrs:{offset:"40%","stop-color":"#00679E"}}),t("stop",{attrs:{offset:"80%","stop-color":"#492083"}})],1)],1),t("path",{attrs:{d:n.mdiCreation,fill:`url('#${n.gradientId}')`}})])])},at=[];const rt={$style:{"material-design-icon":"_material-design-icon_1ndue_12",assistantIcon:"_assistantIcon_1ndue_20",assistantIcon_inline:"_assistantIcon_inline_1ndue_25",assistantIcon__svg:"_assistantIcon__svg_1ndue_30"}};function it(e){for(var t in rt)this[t]=rt[t]}const ot=(0,w.n)(tt,nt,at,!1,it,null).exports,st={__name:"NcAssistantButton",props:{disabled:{type:Boolean,default:!1},text:{type:String,default:""},variant:{type:String,default:"secondary"}},emits:["click"],setup:e=>({__sfc:!0,mdiCreation:H.e,NcAssistantIcon:ot,NcButton:Ce.N,NcIconSvgWrapper:V.N})};var lt=function(){var e=this,t=e._self._c,n=e._self._setupProxy;return t("div",{class:[{[e.$style.assistantButton_disabled]:e.disabled,[e.$style.assistantButton_primary]:"primary"===e.variant},e.$style.assistantButton]},[t(n.NcButton,{class:e.$style.assistantButton__button,attrs:{disabled:e.disabled,variant:"tertiary"},on:{click:function(t){return e.$emit("click",t)}},scopedSlots:e._u([{key:"icon",fn:function(){return["primary"===e.variant?t(n.NcIconSvgWrapper,{class:e.$style.assistantButton__icon,attrs:{path:n.mdiCreation}}):t(n.NcAssistantIcon)]},proxy:!0},e.text||e.$scopedSlots.default?{key:"default",fn:function(){return[t("div",{class:e.$style.assistantButton__text},[e._t("default",function(){return[e._v(e._s(e.text))]})],2)]},proxy:!0}:null],null,!0)})],1)},ct=[];const dt={$style:{"material-design-icon":"_material-design-icon_1xe1x_12",assistantButton:"_assistantButton_1xe1x_20",assistantButton_disabled:"_assistantButton_disabled_1xe1x_30",assistantButton_primary:"_assistantButton_primary_1xe1x_34",assistantButton__icon:"_assistantButton__icon_1xe1x_38",assistantButton__text:"_assistantButton__text_1xe1x_39",assistantButton__button:"_assistantButton__button_1xe1x_42"}};function ut(e){for(var t in dt)this[t]=dt[t]}(0,w.n)(st,lt,ct,!1,ut,null).exports;var pt=a(93595),At={};At.styleTagTransform=_(),At.setAttributes=m(),At.insert=v().bind(null,"head"),At.domAPI=A(),At.insertStyleElement=b(),u()(pt.A,At),pt.A&&pt.A.locals&&pt.A.locals;const ft={__name:"NcAssistantContent",props:{contentClasses:{type:[String,Array,Object],default:""}},setup:e=>({__sfc:!0})};var vt=function(){var e=this,t=e._self._c;return e._self._setupProxy,t("div",{class:e.$style.assistantContent},[t("div",{class:[e.$style.assistantContent__inner,e.contentClasses]},[e._t("default")],2)])},gt=[];const mt={$style:{"material-design-icon":"_material-design-icon_ri18g_12",assistantContent:"_assistantContent_ri18g_20",assistantContent__inner:"_assistantContent__inner_ri18g_25"}};function ht(e){for(var t in mt)this[t]=mt[t]}(0,w.n)(ft,vt,gt,!1,ht,null).exports;var bt=a(64919),Ct=a(74307),_t={};_t.styleTagTransform=_(),_t.setAttributes=m(),_t.insert=v().bind(null,"head"),_t.domAPI=A(),_t.insertStyleElement=b(),u()(Ct.A,_t),Ct.A&&Ct.A.locals&&Ct.A.locals;var yt=a(95341),xt=a(94067);class Et extends Error{constructor(e){super(e),this.name="TimeoutError"}}class kt extends Error{constructor(e){super(),this.name="AbortError",this.message=e}}const wt=e=>void 0===globalThis.DOMException?new kt(e):new DOMException(e),Bt=e=>{const t=void 0===e.reason?wt("This operation was aborted."):e.reason;return t instanceof Error?t:wt(t)};class Pt{#e=[];enqueue(e,t){const n={priority:(t={priority:0,...t}).priority,id:t.id,run:e};if(0===this.size||this.#e[this.size-1].priority>=t.priority)return void this.#e.push(n);const a=function(e,t,n){let a=0,r=e.length;for(;r>0;){const i=Math.trunc(r/2);let o=a+i;n(e[o],t)<=0?(a=++o,r-=i+1):r=i}return a}(this.#e,n,(e,t)=>t.priority-e.priority);this.#e.splice(a,0,n)}setPriority(e,t){const n=this.#e.findIndex(t=>t.id===e);if(-1===n)throw new ReferenceError(`No promise function with the id "${e}" exists in the queue.`);const[a]=this.#e.splice(n,1);this.enqueue(a.run,{priority:t,id:e})}dequeue(){const e=this.#e.shift();return e?.run}filter(e){return this.#e.filter(t=>t.priority===e.priority).map(e=>e.run)}get size(){return this.#e.length}}const Nt=new class extends xt{#t;#n;#a=0;#r;#i;#o=0;#s;#l;#e;#c;#d=0;#u;#p;#A;#f=1n;timeout;constructor(e){if(super(),!("number"==typeof(e={carryoverConcurrencyCount:!1,intervalCap:Number.POSITIVE_INFINITY,interval:0,concurrency:Number.POSITIVE_INFINITY,autoStart:!0,queueClass:Pt,...e}).intervalCap&&e.intervalCap>=1))throw new TypeError(`Expected \`intervalCap\` to be a number from 1 and up, got \`${e.intervalCap?.toString()??""}\` (${typeof e.intervalCap})`);if(void 0===e.interval||!(Number.isFinite(e.interval)&&e.interval>=0))throw new TypeError(`Expected \`interval\` to be a finite number >= 0, got \`${e.interval?.toString()??""}\` (${typeof e.interval})`);this.#t=e.carryoverConcurrencyCount,this.#n=e.intervalCap===Number.POSITIVE_INFINITY||0===e.interval,this.#r=e.intervalCap,this.#i=e.interval,this.#e=new e.queueClass,this.#c=e.queueClass,this.concurrency=e.concurrency,this.timeout=e.timeout,this.#A=!0===e.throwOnTimeout,this.#p=!1===e.autoStart}get#v(){return this.#n||this.#a{this.#b()},t)),!0;this.#a=this.#t?this.#d:0}return!1}#h(){if(0===this.#e.size)return this.#s&&clearInterval(this.#s),this.#s=void 0,this.emit("empty"),0===this.#d&&this.emit("idle"),!1;if(!this.#p){const e=!this.#y;if(this.#v&&this.#g){const t=this.#e.dequeue();return!!t&&(this.emit("active"),t(),e&&this.#_(),!0)}}return!1}#_(){this.#n||void 0!==this.#s||(this.#s=setInterval(()=>{this.#C()},this.#i),this.#o=Date.now()+this.#i)}#C(){0===this.#a&&0===this.#d&&this.#s&&(clearInterval(this.#s),this.#s=void 0),this.#a=this.#t?this.#d:0,this.#x()}#x(){for(;this.#h(););}get concurrency(){return this.#u}set concurrency(e){if(!("number"==typeof e&&e>=1))throw new TypeError(`Expected \`concurrency\` to be a number from 1 and up, got \`${e}\` (${typeof e})`);this.#u=e,this.#x()}async#E(e){return new Promise((t,n)=>{e.addEventListener("abort",()=>{n(e.reason)},{once:!0})})}setPriority(e,t){this.#e.setPriority(e,t)}async add(e,t={}){return t.id??=(this.#f++).toString(),t={timeout:this.timeout,throwOnTimeout:this.#A,...t},new Promise((n,a)=>{this.#e.enqueue(async()=>{this.#d++;try{t.signal?.throwIfAborted(),this.#a++;let a=e({signal:t.signal});t.timeout&&(a=function(e,t){const{milliseconds:n,fallback:a,message:r,customTimers:i={setTimeout,clearTimeout}}=t;let o,s;const l=new Promise((l,c)=>{if("number"!=typeof n||1!==Math.sign(n))throw new TypeError(`Expected \`milliseconds\` to be a positive number, got \`${n}\``);if(t.signal){const{signal:e}=t;e.aborted&&c(Bt(e)),s=()=>{c(Bt(e))},e.addEventListener("abort",s,{once:!0})}if(n===Number.POSITIVE_INFINITY)return void e.then(l,c);const d=new Et;o=i.setTimeout.call(void 0,()=>{if(a)try{l(a())}catch(e){c(e)}else"function"==typeof e.cancel&&e.cancel(),!1===r?l():r instanceof Error?c(r):(d.message=r??`Promise timed out after ${n} milliseconds`,c(d))},n),(async()=>{try{l(await e)}catch(e){c(e)}})()}).finally(()=>{l.clear(),s&&t.signal&&t.signal.removeEventListener("abort",s)});return l.clear=()=>{i.clearTimeout.call(void 0,o),o=void 0},l}(Promise.resolve(a),{milliseconds:t.timeout})),t.signal&&(a=Promise.race([a,this.#E(t.signal)]));const r=await a;n(r),this.emit("completed",r)}catch(e){if(e instanceof Et&&!t.throwOnTimeout)return void n();a(e),this.emit("error",e)}finally{this.#m()}},t),this.emit("add"),this.#h()})}async addAll(e,t){return Promise.all(e.map(async e=>this.add(e,t)))}start(){return this.#p?(this.#p=!1,this.#x(),this):this}pause(){this.#p=!0}clear(){this.#e=new this.#c}async onEmpty(){0!==this.#e.size&&await this.#k("empty")}async onSizeLessThan(e){this.#e.sizethis.#e.size{const a=()=>{t&&!t()||(this.off(e,a),n())};this.on(e,a)})}get size(){return this.#e.size}sizeBy(e){return this.#e.filter(e).length}get pending(){return this.#d}get isPaused(){return this.#p}}({concurrency:5}),It={__name:"NcBlurHash",props:{hash:{required:!0,type:String},alt:{type:String,default:""},src:{type:String,default:""}},emits:["load"],setup(e,{emit:t}){const n=e,a=(0,o.KR)(),r=(0,o.KR)(!1);function i(){if(r.value)return;if(!n.hash)return void Oe.l.error("Invalid BlurHash value");if(void 0===a.value)return void Oe.l.error("BlurHash canvas not available");const{height:e,width:t}=a.value,i=(0,yt.D4)(n.hash,t,e),o=a.value.getContext("2d");if(null===o)return void Oe.l.error("Cannot create context for BlurHash canvas");const s=o.createImageData(t,e);s.data.set(i),o.putImageData(s,0,0)}return(0,o.wB)(()=>n.hash,i),(0,o.wB)(r,()=>{!1===r.value&&(0,o.dY)(()=>i())},{immediate:!0}),(0,o.wB)(()=>n.src,()=>{r.value=!1,n.src&&function(e){const{resolve:t,promise:n}=Promise.withResolvers();return Nt.add(()=>{const a=new Image;return a.onerror=()=>t(!1),a.onload=()=>t(!0),a.src=e,n}),n}(n.src).then(e=>{r.value=e,t("load",e)})},{immediate:!0}),{__sfc:!0,props:n,emit:t,canvas:a,imageLoaded:r,drawBlurHash:i}}};var St=function(){var e=this,t=e._self._c,n=e._self._setupProxy;return t("Transition",{attrs:{css:!!e.src&&void 0,"enter-active-class":e.$style.fadeTransition,"leave-active-class":e.$style.fadeTransition,"enter-class":e.$style.fadeTransitionActive,"leave-to-class":e.$style.fadeTransitionActive}},[n.imageLoaded?t("img",{attrs:{alt:e.alt,src:e.src}}):t("canvas",{ref:"canvas",attrs:{"aria-hidden":e.alt?null:"true","aria-label":e.alt}})])},Dt=[];const Lt={$style:{fadeTransition:"_fadeTransition_13rtj_2",fadeTransitionActive:"_fadeTransitionActive_13rtj_6"}};function Tt(e){for(var t in Lt)this[t]=Lt[t]}(0,w.n)(It,St,Dt,!1,Tt,null).exports;var Ft=a(36386),Gt=a(82866),zt=a(36746),Ot=a(31078),jt=a(27885),Rt=a(70357),Mt=a(90429),Xt=a(409),qt=a(16024),Ut=a(44025),$t=a(15939),Ht=a(48198),Wt=a(60316),Vt=a(15370),Yt=a(83194),Qt=a(90945),Kt=a(42507),Zt=a(15862),Jt=a(79885),en=a(79157),tn=a(43898),nn=a(18177),an=a(98216),rn={};rn.styleTagTransform=_(),rn.setAttributes=m(),rn.insert=v().bind(null,"head"),rn.domAPI=A(),rn.insertStyleElement=b(),u()(an.A,rn),an.A&&an.A.locals&&an.A.locals;const on={name:"NcGuestContent",mounted(){document.getElementById("content").classList.add("nc-guest-content")},destroyed(){document.getElementById("content").classList.remove("nc-guest-content")}};var sn=function(){return(0,this._self._c)("div",{attrs:{id:"guest-content-vue"}},[this._t("default")],2)},ln=[];(0,w.n)(on,sn,ln,!1,null,"528e9576").exports;var cn=a(95436),dn=a(12623),un=a(51550),pn=a(81189),An=a(36817),fn=a(15063),vn=a(80530),gn=a(32917),mn=a(42486),hn=a(31133),bn=a(50922),Cn=a(60451),_n=a(35290),yn=a(31213),xn=a(89816),En=a(9555),kn={};kn.styleTagTransform=_(),kn.setAttributes=m(),kn.insert=v().bind(null,"head"),kn.domAPI=A(),kn.insertStyleElement=b(),u()(En.A,kn),En.A&&En.A.locals&&En.A.locals;var wn=a(63814),Bn=a(44111),Pn=a(87485),Nn=a(47266),In=a(29365);(0,E.r)(E.O);const Sn={name:"NcResource",components:{NcButton:Ce.N},props:{icon:{type:String,required:!0},name:{type:String,required:!0},url:{type:String,required:!0}},data(){return{labelTranslated:(0,E.a)('Open link to "{resourceName}"',{resourceName:this.name})}},computed:{route(){return(0,Bn.g)(this.$router,this.url)}},methods:{t:E.a}};var Dn=function(){var e=this,t=e._self._c;return t("li",{staticClass:"resource"},[t("NcButton",{staticClass:"resource__button",attrs:{"aria-label":e.labelTranslated,to:e.route,href:e.route?null:e.url,variant:"tertiary"},scopedSlots:e._u([{key:"icon",fn:function(){return[t("div",{staticClass:"resource__icon"},[t("img",{attrs:{src:e.icon}})])]},proxy:!0}])},[e._v(" "+e._s(e.name)+" ")])],1)},Ln=[];const Tn=(0,w.n)(Sn,Dn,Ln,!1,null,"9f864ea4").exports,Fn={name:"AccountGroupIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}};var Gn=function(){var e=this,t=e._self._c;return t("span",e._b({staticClass:"material-design-icon account-group-icon",attrs:{"aria-hidden":e.title?null:"true","aria-label":e.title,role:"img"},on:{click:function(t){return e.$emit("click",t)}}},"span",e.$attrs,!1),[t("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 24 24"}},[t("path",{attrs:{d:"M12,5.5A3.5,3.5 0 0,1 15.5,9A3.5,3.5 0 0,1 12,12.5A3.5,3.5 0 0,1 8.5,9A3.5,3.5 0 0,1 12,5.5M5,8C5.56,8 6.08,8.15 6.53,8.42C6.38,9.85 6.8,11.27 7.66,12.38C7.16,13.34 6.16,14 5,14A3,3 0 0,1 2,11A3,3 0 0,1 5,8M19,8A3,3 0 0,1 22,11A3,3 0 0,1 19,14C17.84,14 16.84,13.34 16.34,12.38C17.2,11.27 17.62,9.85 17.47,8.42C17.92,8.15 18.44,8 19,8M5.5,18.25C5.5,16.18 8.41,14.5 12,14.5C15.59,14.5 18.5,16.18 18.5,18.25V20H5.5V18.25M0,20V18.5C0,17.11 1.89,15.94 4.45,15.6C3.86,16.28 3.5,17.22 3.5,18.25V20H0M24,20H20.5V18.25C20.5,17.22 20.14,16.28 19.55,15.6C22.11,15.94 24,17.11 24,18.5V20Z"}},[e.title?t("title",[e._v(e._s(e.title))]):e._e()])])])},zn=[];const On=(0,w.n)(Fn,Gn,zn,!1,null,null).exports,jn={name:"OpenInNewIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}};var Rn=function(){var e=this,t=e._self._c;return t("span",e._b({staticClass:"material-design-icon open-in-new-icon",attrs:{"aria-hidden":e.title?null:"true","aria-label":e.title,role:"img"},on:{click:function(t){return e.$emit("click",t)}}},"span",e.$attrs,!1),[t("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 24 24"}},[t("path",{attrs:{d:"M14,3V5H17.59L7.76,14.83L9.17,16.24L19,6.41V10H21V3M19,19H5V5H12V3H5C3.89,3 3,3.9 3,5V19A2,2 0 0,0 5,21H19A2,2 0 0,0 21,19V12H19V19Z"}},[e.title?t("title",[e._v(e._s(e.title))]):e._e()])])])},Mn=[];const Xn=(0,w.n)(jn,Rn,Mn,!1,null,null).exports;(0,E.r)(E.P);const qn=(0,Pn.F)()?.circles?.teamResourceProviders??[],Un={name:"NcTeamResources",components:{AccountGroup:On,ChevronDown:Nn.C,ChevronUp:In.C,OpenInNew:Xn,NcButton:Ce.N,NcIconSvgWrapper:V.N},props:{providerId:{type:String,default:null},itemId:{type:[String,Number],default:null}},data:()=>({appEnabled:void 0!==OC?.appswebroots?.circles&&(OC.config.version.split(".")[0]??0)>=29,loading:!1,teamResources:null,teamOpen:[]}),computed:{isVisible(){return!this.loading&&this.teamResources?.length>0},teamProviders(){return e=>{const t=this.teamResources.find(t=>t.teamId===e);return t.resources?.reduce((e,t)=>(t.provider.id===this.providerId&&t.id===String(this.itemId)||(e[t.provider.id]||(e[t.provider.id]=t.provider,e[t.provider.id].resources=[]),t.provider.id===this.providerId&&t.id===String(this.itemId)||e[t.provider.id].resources.push(t)),e),{})}},open(){return e=>-1!==this.teamOpen.indexOf(e)}},watch:{providerId(){this.fetchTeamResources()},itemId(){this.fetchTeamResources()}},created(){this.fetchTeamResources()},methods:{t:E.a,async fetchTeamResources(){if(qn.includes(this.providerId))try{this.loading=!0;const e=await ze.Ay.get((0,wn.KT)(`/teams/resources/${this.providerId}/${this.itemId}`));this.teamResources=e.data.ocs.data.teams,this.teamOpen=[this.teamResources[0]?.teamId]}catch(e){this.teamResources=null,Oe.l.error("Could not fetch Teams resources",{error:e})}finally{this.loading=!1}},toggleOpen(e,t){t?this.teamOpen.push(e):this.teamOpen.splice(this.teamOpen.indexOf(e),1)}}};var $n=function(){var e=this,t=e._self._c;return e.appEnabled&&e.isVisible?t("div",{staticClass:"team-resources"},[t("h5",{staticClass:"team-resources__header"},[e._v(" "+e._s(e.t("Related team resources"))+" ")]),e._l(e.teamResources,function(n){return t("details",{key:n.teamId,staticClass:"related-team",attrs:{name:"Team resources",open:e.open(n.teamId)},on:{toggle:t=>e.toggleOpen(n.teamId,t.target.open)}},[t("summary",{staticClass:"related-team__header"},[t("h5",{staticClass:"related-team__name"},[t("AccountGroup",{attrs:{size:20}}),e._v(" "+e._s(n.displayName)+" ")],1),t("NcButton",{attrs:{"aria-label":e.t("View team"),href:n.link,title:e.t("View team"),variant:"tertiary"},scopedSlots:e._u([{key:"icon",fn:function(){return[t("OpenInNew",{attrs:{size:20}})]},proxy:!0}],null,!0)}),e.open(n.teamId)?t("ChevronUp",{attrs:{size:20}}):t("ChevronDown",{attrs:{size:20}})],1),t("div",e._l(e.teamProviders(n.teamId),function(n){return t("div",{key:n.id,staticClass:"related-team-provider"},[n.resources.length>0?t("h6",[e._v(" "+e._s(n.name)+" ")]):e._e(),t("ul",e._l(n.resources,function(n){return t("li",{key:n.url,staticClass:"related-team-resource"},[t("a",{staticClass:"related-team-resource__link",attrs:{href:n.url}},[n.iconEmoji?t("span",{staticClass:"resource__icon"},[e._v(" "+e._s(n.iconEmoji)+" ")]):n.iconSvg?t("NcIconSvgWrapper",{staticClass:"resource__icon",attrs:{svg:n.iconSvg,size:20}}):n.iconURL?t("span",{staticClass:"resource__icon"},[t("img",{attrs:{src:n.iconURL,alt:""}})]):e._e(),t("span",{staticClass:"resource__name"},[e._v(" "+e._s(n.label)+" ")])],1)])}),0)])}),0)])})],2):e._e()},Hn=[];const Wn=(0,w.n)(Un,$n,Hn,!1,null,"e224f6ac").exports;(0,E.r)(E.Q);const Vn={name:"NcRelatedResourcesPanel",components:{NcResource:Tn,NcTeamResources:Wn},props:{providerId:{type:String,default:null},itemId:{type:[String,Number],default:null},resourceType:{type:String,default:""},limit:{type:Number,default:0},fileInfo:{type:Object,default:null},header:{type:String,default:(0,E.a)("Related resources")},description:{type:String,default:(0,E.a)("Anything shared with the same group of people will show up here")},primary:{type:Boolean,default:!1}},emits:["has-error","has-resources"],data:()=>({appEnabled:void 0!==OC?.appswebroots?.related_resources,loading:!1,error:null,resources:[]}),computed:{isVisible(){return!this.loading&&(this.error??this.resources.length>0)},subline(){return this.error?(0,E.a)("Error getting related resources. Please contact your system administrator if you have any questions."):this.description},hasResourceInfo(){return null!==this.providerId&&null!==this.itemId||null!==this.fileInfo},isFiles(){return void 0!==this.fileInfo?.id},url(){let e=null,t=null;return this.isFiles?(e="files",t=this.fileInfo.id):(e=this.providerId,t=this.itemId),(0,wn.KT)("/apps/related_resources/related/{providerId}?itemId={itemId}&resourceType={resourceType}&limit={limit}&format=json",{providerId:e,itemId:t,resourceType:this.resourceType,limit:this.limit})}},watch:{providerId(){this.fetchRelatedResources()},itemId(){this.fetchRelatedResources()},fileInfo(){this.fetchRelatedResources()},error(e){this.$emit("has-error",Boolean(e))},resources(e){this.$emit("has-resources",e.length>0)}},created(){this.fetchRelatedResources()},methods:{t:E.a,async fetchRelatedResources(){if(this.appEnabled&&this.hasResourceInfo){this.loading=!0,this.error=null,this.resources=[];try{const e=await ze.Ay.get(this.url);this.resources=e.data.ocs?.data}catch(t){this.error=e,Oe.l.error("Could not fetch related resources",{error:t})}finally{this.loading=!1}}}}};var Yn=function(){var e=this,t=e._self._c;return t("div",[t("NcTeamResources",{attrs:{"provider-id":e.providerId,"item-id":e.itemId}}),e.appEnabled&&e.isVisible?t("div",{staticClass:"related-resources"},[t("div",{staticClass:"related-resources__header"},[t("h5",[e._v(e._s(e.header))]),t("p",[e._v(e._s(e.subline))])]),e._l(e.resources,function(e){return t("NcResource",{key:e.itemId,staticClass:"related-resources__entry",attrs:{icon:e.icon,name:e.title,url:e.url}})})],2):e._e()],1)},Qn=[];(0,w.n)(Vn,Yn,Qn,!1,null,"eaa109ec").exports;var Kn=a(36079),Zn=a(4943),Jn=(a(34935),a(52781),a(16768)),ea=a(18148),ta=a(65547);a(61338);const na=(0,o.pM)({name:"NcSavingIndicatorIcon",props:{size:{type:Number,default:20},name:{type:String,default:""},saving:{type:Boolean,default:!1,required:!1},error:{type:Boolean,default:!1,required:!1}},emits:["click"],computed:{indicatorColor(){return this.error?"var(--color-text-error, var(--color-error))":this.saving?"var(--color-primary-element)":"none"}}});var aa=function(){var e=this,t=e._self._c;return e._self._setupProxy,t("span",{staticClass:"material-design-icon",attrs:{"aria-label":e.name,role:"img"},on:{click:function(t){return e.$emit("click",t)}}},[t("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 24 24"}},[t("path",{attrs:{fill:e.indicatorColor,d:"m19 15a4 4 0 0 0-4 4 4 4 0 0 0 4 4 4 4 0 0 0 4-4 4 4 0 0 0-4-4z"}}),t("path",{attrs:{fill:"currentColor",d:"M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z"}},[e.name?t("title",[e._v(e._s(e.name))]):e._e()])])])},ra=[];(0,w.n)(na,aa,ra,!1,null,null).exports;var ia=a(17711),oa=a(53120),sa={};sa.styleTagTransform=_(),sa.setAttributes=m(),sa.insert=v().bind(null,"head"),sa.domAPI=A(),sa.insertStyleElement=b(),u()(oa.A,sa),oa.A&&oa.A.locals&&oa.A.locals,(0,E.r)(E.g,E.j);const la={model:{prop:"modelValue",event:"update:modelValue"}},ca=Object.assign(la,{__name:"NcSelectUsers",props:{ariaLabelClearSelected:{type:String,default:(0,E.a)("Clear selected")},ariaLabelListbox:{type:String,default:(0,E.a)("Options")},ariaLabelDeselectOption:{type:Function,default:e=>(0,E.a)("Deselect {option}",{option:e})},keepOpen:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},filterBy:{type:Function,default:null},inputId:{type:String,default:()=>(0,k.G)()},inputLabel:{type:String,default:(0,E.a)("Select account")},labelOutside:{type:Boolean,default:!1},loading:{type:Boolean,default:!1},multiple:{type:Boolean,default:!1},noWrap:{type:Boolean,default:!1},options:{type:Array,default:()=>[]},placeholder:{type:String,default:""},required:{type:Boolean,default:!1},modelValue:{type:Object,default:null}},emits:["search","update:modelValue"],setup(e,{emit:t}){const n=e,a=(0,o.KR)("");(0,o.wB)(a,()=>{t("search",a.value)});const r=Number.parseInt(window.getComputedStyle(document.body).getPropertyValue("--default-clickable-area")),i=Number.parseInt(window.getComputedStyle(document.body).getPropertyValue("--default-grid-baseline"));return{__sfc:!0,props:n,emit:t,search:a,clickableArea:r,gridBaseLine:i,avatarSize:r-2*i,localFilterBy:function(e,t,a){if(n.filterBy)return n.filterBy;const r=a.match(/[^<]*<([^>]+)/),i=e.subname?.toLocaleLowerCase()??"";return r&&i.indexOf(r[1].toLocaleLowerCase())>-1||`${t} ${e.subname}`.toLocaleLowerCase().indexOf(a.toLocaleLowerCase())>-1},NcListItemIcon:gn.N,NcSelect:ea.N}}});var da=function(){var e=this,t=e._self._c,n=e._self._setupProxy;return t(n.NcSelect,e._b({staticClass:"nc-select-users",attrs:{"filter-by":n.localFilterBy,label:"displayName"},on:{search:function(e){n.search=e},"update:model-value":function(t){return e.$emit("update:modelValue",t)}},scopedSlots:e._u([{key:"option",fn:function(a){return[t(n.NcListItemIcon,e._b({attrs:{"avatar-size":32,name:a.displayName,search:n.search}},"NcListItemIcon",a,!1))]}},{key:"selected-option",fn:function(a){return[t(n.NcListItemIcon,e._b({attrs:{"avatar-size":n.avatarSize,name:a.displayName,"no-margin":"",search:n.search}},"NcListItemIcon",a,!1))]}}])},"NcSelect",e.$props,!1))},ua=[];(0,w.n)(ca,da,ua,!1,null,"e5d43b0e").exports;var pa=a(67503),Aa={};Aa.styleTagTransform=_(),Aa.setAttributes=m(),Aa.insert=v().bind(null,"head"),Aa.domAPI=A(),Aa.insertStyleElement=b(),u()(pa.A,Aa),pa.A&&pa.A.locals&&pa.A.locals,(0,E.r)(E.i);const fa={name:"NcSettingsInputText",model:{prop:"value",event:"update:value"},props:{label:{type:String,required:!0},hint:{type:String,default:""},value:{type:String,default:void 0},modelValue:{type:String,default:""},disabled:{type:Boolean,default:!1},id:{type:String,default:()=>"settings-input-text-"+(0,k.G)(),validator:e=>""!==e.trim()}},emits:["update:value","update:modelValue","update:model-value","input","submit","change"],setup:()=>({model:(0,G.u)("value","update:value")}),data:()=>({submitTranslated:(0,E.a)("Submit")}),computed:{idSubmit(){return this.id+"-submit"}},methods:{onInput(e){this.$emit("input",e),this.model=e.target.value},onSubmit(e){this.disabled||this.$emit("submit",e)},onChange(e){this.$emit("change",e)}}};var va=function(){var e=this,t=e._self._c;return t("form",{ref:"form",attrs:{disabled:e.disabled},on:{submit:function(t){return t.preventDefault(),t.stopPropagation(),e.onSubmit.apply(null,arguments)}}},[t("div",{staticClass:"input-wrapper"},[t("label",{staticClass:"action-input__label",attrs:{for:e.id}},[e._v(e._s(e.label))]),t("input",{attrs:{id:e.id,type:"text",disabled:e.disabled},domProps:{value:e.model},on:{input:e.onInput,change:e.onChange}}),t("input",{staticClass:"action-input__submit",attrs:{id:e.idSubmit,type:"submit"},domProps:{value:e.submitTranslated}}),e.hint?t("p",{staticClass:"hint"},[e._v(" "+e._s(e.hint)+" ")]):e._e()])])},ga=[];(0,w.n)(fa,va,ga,!1,null,"9938ac79").exports;var ma=a(80922),ha=a(6801),ba=a(37994),Ca=a(23245);const _a={__name:"NcThemeProvider",props:{dark:{type:Boolean,default:!1},light:{type:Boolean,default:!1}},setup(e){const t=e,n=(0,o.EW)(()=>t.dark?"dark":t.light?"light":"");return(0,o.Gt)(Ca.I,n),{__sfc:!0,props:t,theme:n}}};var ya=function(){var e=this,t=e._self._c,n=e._self._setupProxy;return t("div",e._b({},"div",e._d({},[`data-theme-${n.theme}`,n.theme])),[e._t("default")],2)},xa=[];(0,w.n)(_a,ya,xa,!1,null,null).exports;var Ea=a(70110),ka=a(72041),wa=a(49313),Ba=a(23610),Pa=(a(55581),a(94205),a(23739),a(16343),a(18547),a(42892)),Na=a(73596),Ia=(a(83278),a(2508));Ia.fF.themes.tooltip.html=!1,Ia.fF.themes.tooltip.delay={show:500,hide:200},Ia.fF.themes.tooltip.distance=10,Ia.fF.themes.tooltip["arrow-padding"]=3,c.N,I.A,S.N,D.N,L.A,R.A,X.A,q.A,M.N,Z.N,ie.N,ge.N,me.A,Se.N,qe.A,Ue.N,$e.N,He.N,He.N,We.N,Ve.N,Ye.A,Zn.N,bt.N,Ft.N,Gt.N,Ce.N,zt.N,Ot.N,jt.N,Rt.N,Mt.N,Xt.N,qt.N,Ut.N,$t.default,Ht.A,Wt.N,Vt.N,Yt.A,Qt.N,Kt.A,Zt.N,Jt.N,en.N,tn.N,nn.N,cn.N,dn.N,un.N,pn.N,An.N,V.N,fn.N,vn.N,gn.N,Be.A,Kn.N,mn.A,hn.A,bn.N,Cn.N,_n.N,yn.N,xn.N,Zn.a,Jn.N,ea.N,ia.N,ma.N,ha.N,ba.N,ta.N,Ea.N,ka.N,wa.N,Ba.A,Symbol.toStringTag,Pa.A,Na.A,Ia.yw,Symbol.toStringTag;var Sa=a(96078),Da=a(85168);const La=(0,a(35947).YK)().setApp("LDAP").detectUser().build();async function Ta(e,t,n={}){const a=new FormData;Object.entries(n).forEach(([e,t])=>{a.set(e,t)});try{const n=await ze.Ay.post((0,wn.KT)("apps/user_ldap/api/v1/wizard/{configId}/{action}",{configId:t,action:e}),a);return La.debug(`Called wizard action: ${e}`,{configId:t,params:a,response:n}),n.data.ocs.data}catch(e){if((0,ze.F0)(e)&&"failure"===e.response?.data.ocs.meta.status){const t=e.response.data.ocs.meta.message??(0,l.t)("user_ldap","An error occurred");(0,Da.Qg)(t)}throw e}}async function Fa(){return await Ga((0,l.t)("user_ldap","Mode switch"),(0,l.t)("user_ldap","Switching the mode will enable automatic LDAP queries. Depending on your LDAP size they may take a while. Do you still want to switch the mode?"))}async function Ga(e,t){let n=!1;const a=(0,Da.As)(e).setText(t).setSeverity("warning").addButton({label:(0,l.t)("user_ldap","Cancel"),callback(){}}).addButton({label:(0,l.t)("user_ldap","Confirm"),variant:"error",callback(){n=!0}}).build();return await a.show(),n}const za=(0,i.nY)("ldap-configs",()=>{const e=(0,o.KR)((0,s.C)("user_ldap","ldapConfigs")),t=(0,o.KR)(Object.keys(e.value)[0]),n=(0,o.EW)(()=>e.value[t.value]),a=(0,o.KR)(0);async function r(){const n=await async function(){const e=await ze.Ay.post((0,wn.KT)("apps/user_ldap/api/v1/config"));return La.debug("Created configuration",{configId:e.data.ocs.data.configID}),e.data.ocs.data.configID}();return o.Ay.set(e.value,n,await async function(e){const t=await ze.Ay.get((0,wn.KT)("apps/user_ldap/api/v1/config/{configId}",{configId:e}));return La.debug("Fetched configuration",{configId:e,config:t.data.ocs.data}),t.data.ocs.data}(n)),t.value=n,n}return{ldapConfigs:e,selectedConfigId:t,selectedConfig:n,updatingConfig:a,getConfigProxy:function(t,n={}){return new Proxy(e.value[t],{get:(e,t)=>e[t],set:(e,r,i)=>(e[r]=i,(async()=>{a.value++,await async function(e,t){const n=await ze.Ay.put((0,wn.KT)("apps/user_ldap/api/v1/config/{configId}",{configId:e}),{configData:t});return La.debug("Updated configuration",{configId:e,config:t}),n.data.ocs.data}(t,{[r]:i}),a.value--,void 0!==n[r]&&n[r](e[r])})(),!0)})},create:r,copyConfig:async function(n){const a=await async function(e){const t=new FormData;t.set("copyConfig",e);const n=await ze.Ay.post((0,wn.KT)("apps/user_ldap/api/v1/config/{configId}/copy",{configId:e}),t);return La.debug("Created configuration",{configId:n.data.ocs.data.configID}),n.data.ocs.data.configID}(n);return o.Ay.set(e.value,a,{...e.value[n]}),t.value=a,a},removeConfig:async function(n){!0===await async function(e){try{if(!await Ga((0,l.t)("user_ldap","Confirm action"),(0,l.t)("user_ldap","Are you sure you want to permanently delete this LDAP configuration? This cannot be undone.")))return!1;await ze.Ay.delete((0,wn.KT)("apps/user_ldap/api/v1/config/{configId}",{configId:e})),La.debug("Deleted configuration",{configId:e})}catch(e){const t=e.response;(0,Da.Qg)(t?.data.ocs.meta.message||(0,l.t)("user_ldap","Failed to delete config"))}return!0}(n)&&o.Ay.delete(e.value,n),t.value=Object.keys(e.value)[0]??await r()}}}),Oa=(0,o.pM)({__name:"AdvancedTab",props:{configId:null},setup(e){const t=e,n=za(),a=(0,o.EW)(()=>n.getConfigProxy(t.configId)),r=(0,Pn.F)().theming.name;return{__sfc:!0,props:t,ldapConfigsStore:n,ldapConfigProxy:a,instanceName:r,groupMemberAssociation:{uniqueMember:"uniqueMember",memberUid:"memberUid",member:"member (AD)",gidNumber:"gidNumber",zimbraMailForwardingAddress:"zimbraMailForwardingAddress"},t:l.t,NcCheckboxRadioSwitch:zt.N,NcSelect:ea.N,NcTextArea:ba.N,NcTextField:ta.N}}});var ja=a(76253),Ra={};Ra.styleTagTransform=_(),Ra.setAttributes=m(),Ra.insert=v().bind(null,"head"),Ra.domAPI=A(),Ra.insertStyleElement=b(),u()(ja.A,Ra),ja.A&&ja.A.locals&&ja.A.locals;var Ma=a(14486);const Xa=(0,Ma.A)(Oa,function(){var e=this,t=e._self._c,n=e._self._setupProxy;return t("fieldset",{staticClass:"ldap-wizard__advanced"},[t("details",{staticClass:"ldap-wizard__advanced__section",attrs:{open:"",name:"ldap-wizard__advanced__section"}},[t("summary",[t("h3",[e._v(e._s(n.t("user_ldap","Connection Settings")))])]),e._v(" "),t(n.NcTextField,{attrs:{autocomplete:"off",label:n.t("user_ldap","Backup (Replica) Host"),value:n.ldapConfigProxy.ldapBackupHost,"helper-text":n.t("user_ldap","Give an optional backup host. It must be a replica of the main LDAP/AD server.")},nativeOn:{change:function(e){return(e=>n.ldapConfigProxy.ldapBackupHost=e.target.value).apply(null,arguments)}}}),e._v(" "),t(n.NcTextField,{attrs:{type:"number",value:n.ldapConfigProxy.ldapBackupPort,label:n.t("user_ldap","Backup (Replica) Port")},nativeOn:{change:function(e){return(e=>n.ldapConfigProxy.ldapBackupPort=e.target.value).apply(null,arguments)}}}),e._v(" "),t(n.NcCheckboxRadioSwitch,{attrs:{checked:"1"===n.ldapConfigProxy.ldapOverrideMainServer,type:"switch","aria-label":n.t("user_ldap","Only connect to the replica server.")},on:{"update:checked":function(e){n.ldapConfigProxy.ldapOverrideMainServer=e?"1":"0"}}},[e._v("\n\t\t\t"+e._s(n.t("user_ldap","Disable Main Server"))+"\n\t\t")]),e._v(" "),t(n.NcCheckboxRadioSwitch,{attrs:{checked:"1"===n.ldapConfigProxy.turnOffCertCheck,"aria-label":n.t("user_ldap","Not recommended, use it for testing only! If connection only works with this option, import the LDAP server's SSL certificate in your {instanceName} server.",{instanceName:n.instanceName})},on:{"update:checked":function(e){n.ldapConfigProxy.turnOffCertCheck=e?"1":"0"}}},[e._v("\n\t\t\t"+e._s(n.t("user_ldap","Turn off SSL certificate validation."))+"\n\t\t")]),e._v(" "),t(n.NcTextField,{attrs:{type:"number",label:n.t("user_ldap","Cache Time-To-Live"),value:n.ldapConfigProxy.ldapCacheTTL,"helper-text":n.t("user_ldap","in seconds. A change empties the cache.")},nativeOn:{change:function(e){return(e=>n.ldapConfigProxy.ldapCacheTTL=e.target.value).apply(null,arguments)}}})],1),e._v(" "),t("details",{staticClass:"ldap-wizard__advanced__section",attrs:{name:"ldap-wizard__advanced__section"}},[t("summary",[t("h3",[e._v(e._s(n.t("user_ldap","Directory Settings")))])]),e._v(" "),t(n.NcTextField,{attrs:{autocomplete:"off",value:n.ldapConfigProxy.ldapUserDisplayName,label:n.t("user_ldap","User Display Name Field"),"helper-text":n.t("user_ldap","The LDAP attribute to use to generate the user's display name.")},nativeOn:{change:function(e){return(e=>n.ldapConfigProxy.ldapUserDisplayName=e.target.value).apply(null,arguments)}}}),e._v(" "),t(n.NcTextField,{attrs:{autocomplete:"off",value:n.ldapConfigProxy.ldapUserDisplayName2,label:n.t("user_ldap","2nd User Display Name Field"),"helper-text":n.t("user_ldap","Optional. An LDAP attribute to be added to the display name in brackets. Results in e.g. »John Doe (john.doe@example.org)«.")},nativeOn:{change:function(e){return(e=>n.ldapConfigProxy.ldapUserDisplayName2=e.target.value).apply(null,arguments)}}}),e._v(" "),t(n.NcTextArea,{attrs:{value:n.ldapConfigProxy.ldapBaseUsers,placeholder:n.t("user_ldap","One User Base DN per line"),label:n.t("user_ldap","Base User Tree")},nativeOn:{change:function(e){return(e=>n.ldapConfigProxy.ldapBaseUsers=e.target.value).apply(null,arguments)}}}),e._v(" "),t(n.NcTextArea,{attrs:{value:n.ldapConfigProxy.ldapAttributesForUserSearch,placeholder:n.t("user_ldap","Optional; one attribute per line"),label:n.t("user_ldap","User Search Attributes")},nativeOn:{change:function(e){return(e=>n.ldapConfigProxy.ldapAttributesForUserSearch=e.target.value).apply(null,arguments)}}}),e._v(" "),t(n.NcCheckboxRadioSwitch,{attrs:{checked:"1"===n.ldapConfigProxy.markRemnantsAsDisabled,"aria-label":n.t("user_ldap","When switched on, users imported from LDAP which are then missing will be disabled")},on:{"update:checked":function(e){n.ldapConfigProxy.markRemnantsAsDisabled=e?"1":"0"}}},[e._v("\n\t\t\t"+e._s(n.t("user_ldap","Disable users missing from LDAP"))+"\n\t\t")]),e._v(" "),t(n.NcTextField,{attrs:{autocomplete:"off",value:n.ldapConfigProxy.ldapGroupDisplayName,label:n.t("user_ldap","Group Display Name Field"),title:n.t("user_ldap","The LDAP attribute to use to generate the groups's display name.")},nativeOn:{change:function(e){return(e=>n.ldapConfigProxy.ldapGroupDisplayName=e.target.value).apply(null,arguments)}}}),e._v(" "),t(n.NcTextArea,{attrs:{value:n.ldapConfigProxy.ldapBaseGroups,placeholder:n.t("user_ldap","One Group Base DN per line"),label:n.t("user_ldap","Base Group Tree")},nativeOn:{change:function(e){return(e=>n.ldapConfigProxy.ldapBaseGroups=e.target.value).apply(null,arguments)}}}),e._v(" "),t(n.NcTextArea,{attrs:{value:n.ldapConfigProxy.ldapAttributesForGroupSearch,placeholder:n.t("user_ldap","Optional; one attribute per line"),label:n.t("user_ldap","Group Search Attributes")},nativeOn:{change:function(e){return(e=>n.ldapConfigProxy.ldapAttributesForGroupSearch=e.target.value).apply(null,arguments)}}}),e._v(" "),t(n.NcSelect,{attrs:{options:Object.keys(n.groupMemberAssociation),"input-label":n.t("user_ldap","Group-Member association")},scopedSlots:e._u([{key:"option",fn:function({label:t}){return[e._v("\n\t\t\t\t"+e._s(n.groupMemberAssociation[t])+"\n\t\t\t")]}},{key:"selected-option",fn:function({label:t}){return[e._v("\n\t\t\t\t"+e._s(n.groupMemberAssociation[t])+"\n\t\t\t")]}}]),model:{value:n.ldapConfigProxy.ldapGroupMemberAssocAttr,callback:function(t){e.$set(n.ldapConfigProxy,"ldapGroupMemberAssocAttr",t)},expression:"ldapConfigProxy.ldapGroupMemberAssocAttr"}}),e._v(" "),t(n.NcTextField,{attrs:{autocomplete:"off",label:n.t("user_ldap","Dynamic Group Member URL"),value:n.ldapConfigProxy.ldapDynamicGroupMemberURL,"helper-text":n.t("user_ldap","The LDAP attribute that on group objects contains an LDAP search URL that determines what objects belong to the group. (An empty setting disables dynamic group membership functionality.)")},nativeOn:{change:function(e){return(e=>n.ldapConfigProxy.ldapDynamicGroupMemberURL=e.target.value).apply(null,arguments)}}}),e._v(" "),t(n.NcCheckboxRadioSwitch,{attrs:{checked:"1"===n.ldapConfigProxy.ldapNestedGroups,"aria-label":n.t("user_ldap","When switched on, groups that contain groups are supported. (Only works if the group member attribute contains DNs.)")},on:{"update:checked":function(e){n.ldapConfigProxy.ldapNestedGroups=e?"1":"0"}}},[e._v("\n\t\t\t"+e._s(n.t("user_ldap","Nested Groups"))+"\n\t\t")]),e._v(" "),t(n.NcTextField,{attrs:{type:"number",label:n.t("user_ldap","Paging chunksize"),value:n.ldapConfigProxy.ldapPagingSize,"helper-text":n.t("user_ldap","Chunksize used for paged LDAP searches that may return bulky results like user or group enumeration. (Setting it 0 disables paged LDAP searches in those situations.)")},nativeOn:{change:function(e){return(e=>n.ldapConfigProxy.ldapPagingSize=e.target.value).apply(null,arguments)}}}),e._v(" "),t(n.NcCheckboxRadioSwitch,{attrs:{checked:"1"===n.ldapConfigProxy.turnOnPasswordChange,"aria-label":n.t("user_ldap","Allow LDAP users to change their password and allow Super Administrators and Group Administrators to change the password of their LDAP users. Only works when access control policies are configured accordingly on the LDAP server. As passwords are sent in plaintext to the LDAP server, transport encryption must be used and password hashing should be configured on the LDAP server.")},on:{"update:checked":function(e){n.ldapConfigProxy.turnOnPasswordChange=e?"1":"0"}}},[e._v("\n\t\t\t"+e._s(n.t("user_ldap","Enable LDAP password changes per user"))+"\n\t\t")]),e._v(" "),t("span",{staticClass:"tablecell"},[e._v("\n\t\t\t"+e._s(n.t("user_ldap","(New password is sent as plain text to LDAP)"))+"\n\t\t")]),e._v(" "),t(n.NcTextField,{attrs:{autocomplete:"off",label:n.t("user_ldap","Default password policy DN"),value:n.ldapConfigProxy.ldapDefaultPPolicyDN,"helper-text":n.t("user_ldap","The DN of a default password policy that will be used for password expiry handling. Works only when LDAP password changes per user are enabled and is only supported by OpenLDAP. Leave empty to disable password expiry handling.")},nativeOn:{change:function(e){return(e=>n.ldapConfigProxy.ldapDefaultPPolicyDN=e.target.value).apply(null,arguments)}}})],1),e._v(" "),t("details",{staticClass:"ldap-wizard__advanced__section",attrs:{name:"ldap-wizard__advanced__section"}},[t("summary",[t("h3",[e._v(e._s(n.t("user_ldap","Special Attributes")))])]),e._v(" "),t(n.NcTextField,{attrs:{autocomplete:"off",value:n.ldapConfigProxy.ldapQuotaAttribute,label:n.t("user_ldap","Quota Field"),"helper-text":n.t("user_ldap","Leave empty for user's default quota. Otherwise, specify an LDAP/AD attribute.")},nativeOn:{change:function(e){return(e=>n.ldapConfigProxy.ldapQuotaAttribute=e.target.value).apply(null,arguments)}}}),e._v(" "),t(n.NcTextField,{attrs:{autocomplete:"off",value:n.ldapConfigProxy.ldapQuotaDefault,label:n.t("user_ldap","Quota Default"),"helper-text":n.t("user_ldap","Override default quota for LDAP users who do not have a quota set in the Quota Field.")},nativeOn:{change:function(e){return(e=>n.ldapConfigProxy.ldapQuotaDefault=e.target.value).apply(null,arguments)}}}),e._v(" "),t(n.NcTextField,{attrs:{autocomplete:"off",value:n.ldapConfigProxy.ldapEmailAttribute,label:n.t("user_ldap","Email Field"),"helper-text":n.t("user_ldap","Set the user's email from their LDAP attribute. Leave it empty for default behaviour.")},nativeOn:{change:function(e){return(e=>n.ldapConfigProxy.ldapEmailAttribute=e.target.value).apply(null,arguments)}}}),e._v(" "),t(n.NcTextField,{attrs:{autocomplete:"off",label:n.t("user_ldap","User Home Folder Naming Rule"),value:n.ldapConfigProxy.homeFolderNamingRule,"helper-text":n.t("user_ldap","Leave empty for username (default). Otherwise, specify an LDAP/AD attribute.")},nativeOn:{change:function(e){return(e=>n.ldapConfigProxy.homeFolderNamingRule=e.target.value).apply(null,arguments)}}}),e._v(" "),t(n.NcTextField,{attrs:{autocomplete:"off",label:n.t("user_ldap","`$home` Placeholder Field"),value:n.ldapConfigProxy.ldapExtStorageHomeAttribute,"helper-text":n.t("user_ldap","$home in an external storage configuration will be replaced with the value of the specified attribute")},nativeOn:{change:function(e){return(e=>n.ldapConfigProxy.ldapExtStorageHomeAttribute=e.target.value).apply(null,arguments)}}})],1),e._v(" "),t("details",{staticClass:"ldap-wizard__advanced__section",attrs:{name:"ldap-wizard__advanced__section"}},[t("summary",[t("h3",[e._v(e._s(n.t("user_ldap","User Profile Attributes")))])]),e._v(" "),t(n.NcTextField,{attrs:{autocomplete:"off",label:n.t("user_ldap","Phone Field"),value:n.ldapConfigProxy.ldapAttributePhone,"helper-text":n.t("user_ldap","User profile Phone will be set from the specified attribute")},nativeOn:{change:function(e){return(e=>n.ldapConfigProxy.ldapAttributePhone=e.target.value).apply(null,arguments)}}}),e._v(" "),t(n.NcTextField,{attrs:{autocomplete:"off",label:n.t("user_ldap","Website Field"),value:n.ldapConfigProxy.ldapAttributeWebsite,"helper-text":n.t("user_ldap","User profile Website will be set from the specified attribute")},nativeOn:{change:function(e){return(e=>n.ldapConfigProxy.ldapAttributeWebsite=e.target.value).apply(null,arguments)}}}),e._v(" "),t(n.NcTextField,{attrs:{autocomplete:"off",label:n.t("user_ldap","Address Field"),value:n.ldapConfigProxy.ldapAttributeAddress,"helper-text":n.t("user_ldap","User profile Address will be set from the specified attribute")},nativeOn:{change:function(e){return(e=>n.ldapConfigProxy.ldapAttributeAddress=e.target.value).apply(null,arguments)}}}),e._v(" "),t(n.NcTextField,{attrs:{autocomplete:"off",label:n.t("user_ldap","Twitter Field"),value:n.ldapConfigProxy.ldapAttributeTwitter,"helper-text":n.t("user_ldap","User profile Twitter will be set from the specified attribute")},nativeOn:{change:function(e){return(e=>n.ldapConfigProxy.ldapAttributeTwitter=e.target.value).apply(null,arguments)}}}),e._v(" "),t(n.NcTextField,{attrs:{autocomplete:"off",label:n.t("user_ldap","Fediverse Field"),value:n.ldapConfigProxy.ldapAttributeFediverse,"helper-text":n.t("user_ldap","User profile Fediverse will be set from the specified attribute")},nativeOn:{change:function(e){return(e=>n.ldapConfigProxy.ldapAttributeFediverse=e.target.value).apply(null,arguments)}}}),e._v(" "),t(n.NcTextField,{attrs:{autocomplete:"off",label:n.t("user_ldap","Organisation Field"),value:n.ldapConfigProxy.ldapAttributeOrganisation,"helper-text":n.t("user_ldap","User profile Organisation will be set from the specified attribute")},nativeOn:{change:function(e){return(e=>n.ldapConfigProxy.ldapAttributeOrganisation=e.target.value).apply(null,arguments)}}}),e._v(" "),t(n.NcTextField,{attrs:{autocomplete:"off",label:n.t("user_ldap","Role Field"),value:n.ldapConfigProxy.ldapAttributeRole,"helper-text":n.t("user_ldap","User profile Role will be set from the specified attribute")},nativeOn:{change:function(e){return(e=>n.ldapConfigProxy.ldapAttributeRole=e.target.value).apply(null,arguments)}}}),e._v(" "),t(n.NcTextField,{attrs:{autocomplete:"off",label:n.t("user_ldap","Headline Field"),value:n.ldapConfigProxy.ldapAttributeHeadline,"helper-text":n.t("user_ldap","User profile Headline will be set from the specified attribute")},nativeOn:{change:function(e){return(e=>n.ldapConfigProxy.ldapAttributeHeadline=e.target.value).apply(null,arguments)}}}),e._v(" "),t(n.NcTextField,{attrs:{autocomplete:"off",label:n.t("user_ldap","Biography Field"),value:n.ldapConfigProxy.ldapAttributeBiography,"helper-text":n.t("user_ldap","User profile Biography will be set from the specified attribute")},nativeOn:{change:function(e){return(e=>n.ldapConfigProxy.ldapAttributeBiography=e.target.value).apply(null,arguments)}}}),e._v(" "),t(n.NcTextField,{attrs:{autocomplete:"off",label:n.t("user_ldap","Birthdate Field"),value:n.ldapConfigProxy.ldapAttributeBirthDate,"helper-text":n.t("user_ldap","User profile Date of birth will be set from the specified attribute")},nativeOn:{change:function(e){return(e=>n.ldapConfigProxy.ldapAttributeBirthDate=e.target.value).apply(null,arguments)}}})],1)])},[],!1,null,"5b57c0d9",null).exports,qa=(0,o.pM)({__name:"ExpertTab",props:{configId:null},setup(e){const t=e,n=za(),a=(0,o.EW)(()=>n.getConfigProxy(t.configId));return{__sfc:!0,props:t,ldapConfigsStore:n,ldapConfigProxy:a,t:l.t,NcTextField:ta.N}}});var Ua=a(28953),$a={};$a.styleTagTransform=_(),$a.setAttributes=m(),$a.insert=v().bind(null,"head"),$a.domAPI=A(),$a.insertStyleElement=b(),u()(Ua.A,$a),Ua.A&&Ua.A.locals&&Ua.A.locals;const Ha=(0,Ma.A)(qa,function(){var e=this,t=e._self._c,n=e._self._setupProxy;return t("fieldset",{staticClass:"ldap-wizard__expert"},[t("div",{staticClass:"ldap-wizard__expert__line"},[t("strong",[e._v(e._s(n.t("user_ldap","Internal Username")))]),e._v(" "),t("p",{attrs:{id:"ldap_expert_username_attr"}},[e._v("\n\t\t\t"+e._s(n.t("user_ldap","By default the internal username will be created from the UUID attribute. It makes sure that the username is unique and characters do not need to be converted. The internal username has the restriction that only these characters are allowed: [a-zA-Z0-9_.@-]. Other characters are replaced with their ASCII correspondence or simply omitted. On collisions a number will be added/increased. The internal username is used to identify a user internally. It is also the default name for the user home folder. It is also a part of remote URLs, for instance for all DAV services. With this setting, the default behavior can be overridden. Changes will have effect only on newly mapped (added) LDAP users. Leave it empty for default behavior."))+"\n\t\t")]),e._v(" "),t(n.NcTextField,{attrs:{"aria-describedby":"ldap_expert_username_attr",autocomplete:"off",label:n.t("user_ldap","Internal Username Attribute:"),value:n.ldapConfigProxy.ldapExpertUsernameAttr,"label-outside":!0},nativeOn:{change:function(e){return(e=>n.ldapConfigProxy.ldapExpertUsernameAttr=e.target.value).apply(null,arguments)}}})],1),e._v(" "),t("div",{staticClass:"ldap-wizard__expert__line"},[t("strong",[e._v(e._s(n.t("user_ldap","Override UUID detection")))]),e._v(" "),t("p",{attrs:{id:"ldap_expert_uuid_user_attr"}},[e._v("\n\t\t\t"+e._s(n.t("user_ldap","By default, the UUID attribute is automatically detected. The UUID attribute is used to doubtlessly identify LDAP users and groups. Also, the internal username will be created based on the UUID, if not specified otherwise above. You can override the setting and pass an attribute of your choice. You must make sure that the attribute of your choice can be fetched for both users and groups and it is unique. Leave it empty for default behavior. Changes will have effect only on newly mapped (added) LDAP users and groups."))+"\n\t\t")]),e._v(" "),t(n.NcTextField,{attrs:{"aria-describedby":"ldap_expert_uuid_user_attr",autocomplete:"off",label:n.t("user_ldap","UUID Attribute for Users"),value:n.ldapConfigProxy.ldapExpertUUIDUserAttr},nativeOn:{change:function(e){return(e=>n.ldapConfigProxy.ldapExpertUUIDUserAttr=e.target.value).apply(null,arguments)}}}),e._v(" "),t(n.NcTextField,{attrs:{autocomplete:"off",label:n.t("user_ldap","UUID Attribute for Groups"),value:n.ldapConfigProxy.ldapExpertUUIDGroupAttr},nativeOn:{change:function(e){return(e=>n.ldapConfigProxy.ldapExpertUUIDGroupAttr=e.target.value).apply(null,arguments)}}})],1)])},[],!1,null,"1b8d07c0",null).exports,Wa=(0,o.pM)({__name:"GroupsTab",props:{configId:null},setup(e){const t=e,n=za(),{ldapConfigs:a}=(0,i.bP)(n),r=(0,o.EW)(()=>n.getConfigProxy(t.configId,{ldapGroupFilterObjectclass:g,ldapGroupFilterGroups:g})),s=(0,Pn.F)().theming.name,c=(0,o.KR)(void 0),d=(0,o.KR)([]),u=(0,o.KR)([]),p=(0,o.KR)(!1),A=(0,o.EW)({get:()=>r.value.ldapGroupFilterObjectclass.split(";").filter(e=>""!==e),set(e){r.value.ldapGroupFilterObjectclass=e.join(";")}}),f=(0,o.EW)({get:()=>r.value.ldapGroupFilterGroups.split(";").filter(e=>""!==e),set(e){r.value.ldapGroupFilterGroups=e.join(";")}});async function v(){const e=await Ta("determineGroupObjectClasses",t.configId);d.value=e.options.ldap_groupfilter_objectclass;const n=await Ta("determineGroupsForGroups",t.configId);u.value=n.options.ldap_groupfilter_groups}async function g(){const e=await Ta("getGroupFilter",t.configId);a.value[t.configId].ldapGroupFilter=e.changes.ldap_group_filter}return v(),{__sfc:!0,props:t,ldapConfigsStore:n,ldapConfigs:a,ldapConfigProxy:r,instanceName:s,groupsCountLabel:c,groupObjectClasses:d,groupGroups:u,loadingGroupCount:p,ldapGroupFilterObjectclass:A,ldapGroupFilterGroups:f,init:v,getGroupFilter:g,countGroups:async function(){try{p.value=!0;const e=await Ta("countGroups",t.configId);c.value=e.changes.ldap_group_count}finally{p.value=!1}},toggleFilterMode:async function(e){r.value.ldapGroupFilterMode=e?"1":await Fa()?"0":"1"},t:l.t,NcButton:Ce.N,NcCheckboxRadioSwitch:zt.N,NcLoadingIcon:Be.A,NcSelect:ea.N,NcTextArea:ba.N}}});var Va=a(49328),Ya={};Ya.styleTagTransform=_(),Ya.setAttributes=m(),Ya.insert=v().bind(null,"head"),Ya.domAPI=A(),Ya.insertStyleElement=b(),u()(Va.A,Ya),Va.A&&Va.A.locals&&Va.A.locals;const Qa=(0,Ma.A)(Wa,function(){var e=this,t=e._self._c,n=e._self._setupProxy;return t("fieldset",{staticClass:"ldap-wizard__groups"},[t("legend",[e._v("\n\t\t"+e._s(n.t("user_ldap","Groups meeting these criteria are available in {instanceName}:",{instanceName:n.instanceName}))+"\n\t")]),e._v(" "),t("div",{staticClass:"ldap-wizard__groups__line ldap-wizard__groups__filter-selection"},[t(n.NcSelect,{staticClass:"ldap-wizard__groups__group-filter-groups__select",attrs:{options:n.groupObjectClasses,disabled:"1"===n.ldapConfigProxy.ldapGroupFilterMode,"input-label":n.t("user_ldap","Only these object classes:"),multiple:!0},model:{value:n.ldapGroupFilterObjectclass,callback:function(e){n.ldapGroupFilterObjectclass=e},expression:"ldapGroupFilterObjectclass"}}),e._v(" "),t(n.NcSelect,{staticClass:"ldap-wizard__groups__group-filter-groups__select",attrs:{options:n.groupGroups,disabled:"1"===n.ldapConfigProxy.ldapGroupFilterMode,"input-label":n.t("user_ldap","Only from these groups:"),multiple:!0},model:{value:n.ldapGroupFilterGroups,callback:function(e){n.ldapGroupFilterGroups=e},expression:"ldapGroupFilterGroups"}})],1),e._v(" "),t("div",{staticClass:"ldap-wizard__groups__line ldap-wizard__groups__groups-filter"},[t(n.NcCheckboxRadioSwitch,{attrs:{checked:"1"===n.ldapConfigProxy.ldapGroupFilterMode},on:{"update:checked":n.toggleFilterMode}},[e._v("\n\t\t\t"+e._s(n.t("user_ldap","Edit LDAP Query"))+"\n\t\t")]),e._v(" "),"1"===n.ldapConfigProxy.ldapGroupFilterMode?t("div",[t(n.NcTextArea,{attrs:{value:n.ldapConfigProxy.ldapGroupFilter,placeholder:n.t("user_ldap","Edit LDAP Query"),"helper-text":n.t("user_ldap","The filter specifies which LDAP groups shall have access to the {instanceName} instance.",{instanceName:n.instanceName})},on:{"update:value":function(t){return e.$set(n.ldapConfigProxy,"ldapGroupFilter",t)}}})],1):t("div",[t("span",[e._v(e._s(n.t("user_ldap","LDAP Filter:")))]),e._v(" "),t("code",[e._v(e._s(n.ldapConfigProxy.ldapGroupFilter))])])],1),e._v(" "),t("div",{staticClass:"ldap-wizard__groups__line ldap-wizard__groups__groups-count-check"},[t(n.NcButton,{attrs:{disabled:n.loadingGroupCount},on:{click:n.countGroups}},[e._v("\n\t\t\t"+e._s(n.t("user_ldap","Verify settings and count the groups"))+"\n\t\t")]),e._v(" "),n.loadingGroupCount?t(n.NcLoadingIcon,{attrs:{size:20}}):e._e(),e._v(" "),void 0===n.groupsCountLabel||n.loadingGroupCount?e._e():t("span",[e._v(e._s(n.groupsCountLabel))])],1)])},[],!1,null,"3200ed48",null).exports,Ka=(0,o.pM)({__name:"LoginTab",props:{configId:null},setup(e){const t=e,n=za(),{ldapConfigs:a}=(0,i.bP)(n),r=(0,o.EW)(()=>n.getConfigProxy(t.configId,{ldapLoginFilterAttributes:v,ldapLoginFilterUsername:v,ldapLoginFilterEmail:v})),s=(0,Pn.F)().theming.name,c=(0,o.KR)(""),d=(0,o.KR)([]),u=(0,o.EW)({get:()=>r.value.ldapLoginFilterAttributes.split(";").filter(e=>""!==e),set(e){r.value.ldapLoginFilterAttributes=e.join(";")}}),p=(0,o.EW)(()=>"1"===r.value.ldapLoginFilterMode),A=(0,o.EW)(()=>d.value.filter(e=>!u.value.includes(e)));async function f(){const e=await Ta("determineAttributes",t.configId);d.value=e.options.ldap_loginfilter_attributes}async function v(){if("0"===r.value.ldapLoginFilterMode){const e=await Ta("getUserLoginFilter",t.configId);a.value[t.configId].ldapLoginFilter=e.changes.ldap_login_filter}}return f(),{__sfc:!0,props:t,ldapConfigsStore:n,ldapConfigs:a,ldapConfigProxy:r,instanceName:s,testUsername:c,loginFilterOptions:d,ldapLoginFilterAttributes:u,ldapLoginFilterMode:p,filteredLoginFilterOptions:A,init:f,getUserLoginFilter:v,verifyLoginName:async function(){try{const e=await Ta("testLoginName",t.configId,{loginName:c.value}),n=e.changes.ldap_test_loginname,a=e.changes.ldap_test_effective_filter;n<1?(0,Da.Qg)((0,l.t)("user_ldap","User not found. Please check your login attributes and username. Effective filter (to copy-and-paste for command-line validation): {filter}",{filter:a})):1===n?(0,Da.Te)((0,l.t)("user_ldap","User found and settings verified.")):n>1&&(0,Da.I9)((0,l.t)("user_ldap","Consider narrowing your search, as it encompassed many users, only the first one of whom will be able to log in."))}catch(e){switch(e??(0,l.t)("user_ldap","An unspecified error occurred. Please check log and settings.")){case"Bad search filter":(0,Da.Qg)((0,l.t)("user_ldap","The search filter is invalid, probably due to syntax issues like uneven number of opened and closed brackets. Please revise."));break;case"connection error":(0,Da.Qg)((0,l.t)("user_ldap","A connection error to LDAP/AD occurred. Please check host, port and credentials."));break;case"missing placeholder":(0,Da.Qg)((0,l.t)("user_ldap",'The "%uid" placeholder is missing. It will be replaced with the login name when querying LDAP/AD.'))}}},toggleFilterMode:async function(e){r.value.ldapLoginFilterMode=e?"1":await Fa()?"0":"1"},t:l.t,NcButton:Ce.N,NcCheckboxRadioSwitch:zt.N,NcSelect:ea.N,NcTextArea:ba.N,NcTextField:ta.N}}});var Za=a(50510),Ja={};Ja.styleTagTransform=_(),Ja.setAttributes=m(),Ja.insert=v().bind(null,"head"),Ja.domAPI=A(),Ja.insertStyleElement=b(),u()(Za.A,Ja),Za.A&&Za.A.locals&&Za.A.locals;const er=(0,Ma.A)(Ka,function(){var e=this,t=e._self._c,n=e._self._setupProxy;return t("fieldset",{staticClass:"ldap-wizard__login"},[t("legend",[e._v("\n\t\t"+e._s(n.t("user_ldap","When logging in, {instanceName} will find the user based on the following attributes:",{instanceName:n.instanceName}))+"\n\t")]),e._v(" "),t("div",{staticClass:"ldap-wizard__login__line ldap-wizard__login__login-attributes"},[t(n.NcSelect,{attrs:{"keep-open":"",disabled:n.ldapLoginFilterMode,options:n.filteredLoginFilterOptions,"input-label":n.t("user_ldap","Other Attributes:"),multiple:!0},model:{value:n.ldapLoginFilterAttributes,callback:function(e){n.ldapLoginFilterAttributes=e},expression:"ldapLoginFilterAttributes"}})],1),e._v(" "),t("div",{staticClass:"ldap-wizard__login__line ldap-wizard__login__user-login-filter"},[t(n.NcCheckboxRadioSwitch,{attrs:{"model-value":n.ldapLoginFilterMode},on:{"update:checked":n.toggleFilterMode}},[e._v("\n\t\t\t"+e._s(n.t("user_ldap","Edit LDAP Query"))+"\n\t\t")]),e._v(" "),n.ldapLoginFilterMode?t(n.NcTextArea,{attrs:{value:n.ldapConfigProxy.ldapLoginFilter,placeholder:n.t("user_ldap","Edit LDAP Query"),"helper-text":n.t("user_ldap","Defines the filter to apply, when login is attempted. `%%uid` replaces the username in the login action. Example: `uid=%%uid`")},nativeOn:{change:function(e){return(e=>n.ldapConfigProxy.ldapLoginFilter=e.target.value).apply(null,arguments)}}}):t("div",[t("span",[e._v(e._s(n.t("user_ldap","LDAP Filter:")))]),e._v(" "),t("code",[e._v(e._s(n.ldapConfigProxy.ldapLoginFilter))])])],1),e._v(" "),t("div",{staticClass:"ldap-wizard__login__line"},[t(n.NcTextField,{attrs:{"helper-text":n.t("user_ldap","Attempts to receive a DN for the given login name and the current login filter"),placeholder:n.t("user_ldap","Test Login name"),autocomplete:"off"},model:{value:n.testUsername,callback:function(e){n.testUsername=e},expression:"testUsername"}}),e._v(" "),t(n.NcButton,{attrs:{disabled:0===n.testUsername.length},on:{click:n.verifyLoginName}},[e._v("\n\t\t\t"+e._s(n.t("user_ldap","Verify settings"))+"\n\t\t")])],1)])},[],!1,null,"01fb1aea",null).exports;var tr=a(31773);const nr={name:"DeleteIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},ar=(0,Ma.A)(nr,function(){var e=this,t=e._self._c;return t("span",e._b({staticClass:"material-design-icon delete-icon",attrs:{"aria-hidden":e.title?null:"true","aria-label":e.title,role:"img"},on:{click:function(t){return e.$emit("click",t)}}},"span",e.$attrs,!1),[t("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 24 24"}},[t("path",{attrs:{d:"M19,4H15.5L14.5,3H9.5L8.5,4H5V6H19M6,19A2,2 0 0,0 8,21H16A2,2 0 0,0 18,19V7H6V19Z"}},[e.title?t("title",[e._v(e._s(e.title))]):e._e()])])])},[],!1,null,null,null).exports,rr=(0,o.pM)({__name:"ServerTab",props:{configId:null},setup(e){const t=e,n=za(),{ldapConfigs:a}=(0,i.bP)(n),r=(0,o.EW)(()=>n.getConfigProxy(t.configId)),s=(0,o.KR)(!1),c=(0,o.KR)(!1),d=(0,o.KR)(!1),u=(0,o.KR)(r.value.ldapAgentName),p=(0,o.KR)(r.value.ldapAgentPassword),A=(0,o.EW)(()=>r.value.ldapAgentName!==u.value||r.value.ldapAgentPassword!==p.value);return{__sfc:!0,props:t,ldapConfigsStore:n,ldapConfigs:a,ldapConfigProxy:r,loadingGuessPortAndTLS:s,loadingCountInBaseDN:c,loadingGuessBaseDN:d,localLdapAgentName:u,localLdapAgentPassword:p,needsToSaveCredentials:A,updateCredentials:function(){r.value.ldapAgentName=u.value,r.value.ldapAgentPassword=p.value},guessPortAndTLS:async function(){try{s.value=!0;const{changes:e}=await Ta("guessPortAndTLS",t.configId);a.value[t.configId].ldapPort=e.ldap_port??""}finally{s.value=!1}},guessBaseDN:async function(){try{d.value=!0;const{changes:e}=await Ta("guessBaseDN",t.configId);r.value.ldapBase=e.ldap_base??""}finally{d.value=!1}},countInBaseDN:async function(){try{c.value=!0;const{changes:e}=await Ta("countInBaseDN",t.configId),n=e.ldap_test_base;n<1?(0,Da.cf)((0,l.t)("user_ldap","No object found in the given Base DN. Please revise.")):n>1e3?(0,Da.cf)((0,l.t)("user_ldap","More than 1,000 directory entries available.")):(0,Da.cf)((0,l.n)("user_ldap","{ldapTestBase} entry available within the provided Base DN","{ldapTestBase} entries available within the provided Base DN",n,{ldapTestBase:n}))}finally{c.value=!1}},t:l.t,NcButton:Ce.N,NcCheckboxRadioSwitch:zt.N,NcTextArea:ba.N,NcTextField:ta.N,ContentCopy:tr.A,Delete:ar}}});var ir=a(84323),or={};or.styleTagTransform=_(),or.setAttributes=m(),or.insert=v().bind(null,"head"),or.domAPI=A(),or.insertStyleElement=b(),u()(ir.A,or),ir.A&&ir.A.locals&&ir.A.locals;const sr=(0,Ma.A)(rr,function(){var e=this,t=e._self._c,n=e._self._setupProxy;return t("fieldset",{staticClass:"ldap-wizard__server"},[t("div",{staticClass:"ldap-wizard__server__line"},[t(n.NcCheckboxRadioSwitch,{attrs:{checked:"1"===n.ldapConfigProxy.ldapConfigurationActive,type:"switch","aria-label":n.t("user_ldap","When unchecked, this configuration will be skipped.")},on:{"update:checked":function(e){n.ldapConfigProxy.ldapConfigurationActive=e?"1":"0"}}},[e._v("\n\t\t\t"+e._s(n.t("user_ldap","Configuration Active"))+"\n\t\t")]),e._v(" "),t(n.NcButton,{attrs:{title:n.t("user_ldap","Copy current configuration into new directory binding")},on:{click:function(t){return n.ldapConfigsStore.copyConfig(e.configId)}},scopedSlots:e._u([{key:"icon",fn:function(){return[t(n.ContentCopy,{attrs:{size:20}})]},proxy:!0}])},[e._v("\n\t\t\t"+e._s(n.t("user_ldap","Copy configuration"))+"\n\t\t")]),e._v(" "),t(n.NcButton,{attrs:{variant:"error"},on:{click:function(t){return n.ldapConfigsStore.removeConfig(e.configId)}},scopedSlots:e._u([{key:"icon",fn:function(){return[t(n.Delete,{attrs:{size:20}})]},proxy:!0}])},[e._v("\n\t\t\t"+e._s(n.t("user_ldap","Delete configuration"))+"\n\t\t")])],1),e._v(" "),t("div",{staticClass:"ldap-wizard__server__line"},[t(n.NcTextField,{attrs:{value:n.ldapConfigProxy.ldapHost,"helper-text":n.t("user_ldap","You can omit the protocol, unless you require SSL. If so, start with ldaps://"),placeholder:n.t("user_ldap","Host"),autocomplete:"off"},nativeOn:{change:function(e){return(e=>n.ldapConfigProxy.ldapHost=e.target.value).apply(null,arguments)}}}),e._v(" "),t("div",{staticClass:"ldap-wizard__server__host__port"},[t(n.NcTextField,{attrs:{value:n.ldapConfigProxy.ldapPort,placeholder:n.t("user_ldap","Port"),type:"number",autocomplete:"off"},nativeOn:{change:function(e){return(e=>n.ldapConfigProxy.ldapPort=e.target.value).apply(null,arguments)}}}),e._v(" "),t(n.NcButton,{attrs:{disabled:n.loadingGuessPortAndTLS},on:{click:n.guessPortAndTLS}},[e._v("\n\t\t\t\t"+e._s(n.t("user_ldap","Detect Port"))+"\n\t\t\t")])],1)],1),e._v(" "),t("div",{staticClass:"ldap-wizard__server__line"},[t(n.NcTextField,{attrs:{"helper-text":n.t("user_ldap","The DN of the client user with which the bind shall be done, e.g. uid=agent,dc=example,dc=com. For anonymous access, leave DN and Password empty."),placeholder:n.t("user_ldap","User DN"),autocomplete:"off"},model:{value:n.localLdapAgentName,callback:function(e){n.localLdapAgentName=e},expression:"localLdapAgentName"}})],1),e._v(" "),t("div",{staticClass:"ldap-wizard__server__line"},[t(n.NcTextField,{attrs:{type:"password","helper-text":n.t("user_ldap","For anonymous access, leave DN and Password empty."),placeholder:n.t("user_ldap","Password"),autocomplete:"off"},model:{value:n.localLdapAgentPassword,callback:function(e){n.localLdapAgentPassword=e},expression:"localLdapAgentPassword"}}),e._v(" "),t(n.NcButton,{attrs:{disabled:!n.needsToSaveCredentials},on:{click:n.updateCredentials}},[e._v("\n\t\t\t"+e._s(n.t("user_ldap","Save Credentials"))+"\n\t\t")])],1),e._v(" "),t("div",{staticClass:"ldap-wizard__server__line"},[t(n.NcTextArea,{attrs:{label:n.t("user_ldap","Base DN"),value:n.ldapConfigProxy.ldapBase,placeholder:n.t("user_ldap","One Base DN per line"),"helper-text":n.t("user_ldap","You can specify Base DN for users and groups in the Advanced tab")},nativeOn:{change:function(e){return(e=>n.ldapConfigProxy.ldapBase=e.target.value).apply(null,arguments)}}}),e._v(" "),t(n.NcButton,{attrs:{disabled:n.loadingGuessBaseDN},on:{click:n.guessBaseDN}},[e._v("\n\t\t\t"+e._s(n.t("user_ldap","Detect Base DN"))+"\n\t\t")]),e._v(" "),t(n.NcButton,{attrs:{disabled:n.loadingCountInBaseDN||""===n.ldapConfigProxy.ldapBase},on:{click:n.countInBaseDN}},[e._v("\n\t\t\t"+e._s(n.t("user_ldap","Test Base DN"))+"\n\t\t")])],1)])},[],!1,null,"0d8c49c7",null).exports,lr=(0,o.pM)({__name:"UsersTab",props:{configId:null},setup(e){const t=e,n=za(),{ldapConfigs:a}=(0,i.bP)(n),r=(0,o.EW)(()=>n.getConfigProxy(t.configId,{ldapUserFilterObjectclass:g,ldapUserFilterGroups:g})),s=(0,o.KR)(void 0),c=(0,o.KR)(!1),d=(0,Pn.F)().theming.name,u=(0,o.KR)([]),p=(0,o.KR)([]),A=(0,o.EW)({get:()=>r.value.ldapUserFilterObjectclass?.split(";").filter(e=>""!==e)??[],set(e){r.value.ldapUserFilterObjectclass=e.join(";")}}),f=(0,o.EW)({get:()=>r.value.ldapUserFilterGroups.split(";").filter(e=>""!==e),set(e){r.value.ldapUserFilterGroups=e.join(";")}});async function v(){const e=await Ta("determineUserObjectClasses",t.configId);u.value=e.options.ldap_userfilter_objectclass,a.value[t.configId].ldapUserFilterObjectclass=e.changes.ldap_userfilter_objectclass?.join(";")??"";const n=await Ta("determineGroupsForUsers",t.configId);p.value=n.options.ldap_userfilter_groups,a.value[t.configId].ldapUserFilterGroups=n.changes.ldap_userfilter_groups?.join(";")??""}async function g(){if("0"===r.value.ldapUserFilterMode){const e=await Ta("getUserListFilter",t.configId);a.value[t.configId].ldapUserFilter=e.changes.ldap_userlist_filter;const n=await Ta("getUserLoginFilter",t.configId);a.value[t.configId].ldapLoginFilter=n.changes.ldap_userlogin_filter}}return v(),{__sfc:!0,props:t,ldapConfigsStore:n,ldapConfigs:a,ldapConfigProxy:r,usersCount:s,loadingUserCount:c,instanceName:d,userObjectClasses:u,userGroups:p,ldapUserFilterObjectclass:A,ldapUserFilterGroups:f,init:v,reloadFilters:g,countUsers:async function(){try{c.value=!0;const e=await Ta("countUsers",t.configId);s.value=e.changes.ldap_user_count}finally{c.value=!1}},toggleFilterMode:async function(e){r.value.ldapUserFilterMode=e?"1":await Fa()?"0":"1"},t:l.t,NcButton:Ce.N,NcCheckboxRadioSwitch:zt.N,NcLoadingIcon:Be.A,NcSelect:ea.N,NcTextArea:ba.N}}});var cr=a(23441),dr={};dr.styleTagTransform=_(),dr.setAttributes=m(),dr.insert=v().bind(null,"head"),dr.domAPI=A(),dr.insertStyleElement=b(),u()(cr.A,dr),cr.A&&cr.A.locals&&cr.A.locals;const ur=(0,Ma.A)(lr,function(){var e=this,t=e._self._c,n=e._self._setupProxy;return t("fieldset",{staticClass:"ldap-wizard__users"},[e._v("\n\t"+e._s(n.t("user_ldap","Listing and searching for users is constrained by these criteria:"))+"\n\n\t"),t("div",{staticClass:"ldap-wizard__users__line ldap-wizard__users__user-filter-object-class"},[t(n.NcSelect,{staticClass:"ldap-wizard__users__user-filter-object-class__select",attrs:{disabled:"1"===n.ldapConfigProxy.ldapUserFilterMode,options:n.userObjectClasses,"input-label":n.t("user_ldap","Only these object classes:"),multiple:!0},model:{value:n.ldapUserFilterObjectclass,callback:function(e){n.ldapUserFilterObjectclass=e},expression:"ldapUserFilterObjectclass"}}),e._v("\n\t\t"+e._s(n.t("user_ldap","The most common object classes for users are organizationalPerson, person, user, and inetOrgPerson. If you are not sure which object class to select, please consult your directory admin."))+"\n\t")],1),e._v(" "),t("div",{staticClass:"ldap-wizard__users__line ldap-wizard__users__user-filter-groups"},[t(n.NcSelect,{staticClass:"ldap-wizard__users__user-filter-groups__select",attrs:{disabled:"1"===n.ldapConfigProxy.ldapUserFilterMode,options:n.userGroups,"input-label":n.t("user_ldap","Only from these groups:"),multiple:!0},model:{value:n.ldapUserFilterGroups,callback:function(e){n.ldapUserFilterGroups=e},expression:"ldapUserFilterGroups"}})],1),e._v(" "),t("div",{staticClass:"ldap-wizard__users__line ldap-wizard__users__user-filter"},[t(n.NcCheckboxRadioSwitch,{attrs:{checked:"1"===n.ldapConfigProxy.ldapUserFilterMode},on:{"update:checked":n.toggleFilterMode}},[e._v("\n\t\t\t"+e._s(n.t("user_ldap","Edit LDAP Query"))+"\n\t\t")]),e._v(" "),"1"===n.ldapConfigProxy.ldapUserFilterMode?t("div",[t(n.NcTextArea,{attrs:{value:n.ldapConfigProxy.ldapUserFilter,placeholder:n.t("user_ldap","Edit LDAP Query"),"helper-text":n.t("user_ldap","The filter specifies which LDAP users shall have access to the {instanceName} instance.",{instanceName:n.instanceName})},on:{"update:value":function(t){return e.$set(n.ldapConfigProxy,"ldapUserFilter",t)}}})],1):t("div",[t("label",[e._v(e._s(n.t("user_ldap","LDAP Filter:")))]),e._v(" "),t("code",[e._v(e._s(n.ldapConfigProxy.ldapUserFilter))])])],1),e._v(" "),t("div",{staticClass:"ldap-wizard__users__line ldap-wizard__users__user-count-check"},[t(n.NcButton,{attrs:{disabled:n.loadingUserCount},on:{click:n.countUsers}},[e._v("\n\t\t\t"+e._s(n.t("user_ldap","Verify settings and count users"))+"\n\t\t")]),e._v(" "),n.loadingUserCount?t(n.NcLoadingIcon,{attrs:{size:16}}):e._e(),e._v(" "),void 0===n.usersCount||n.loadingUserCount?e._e():t("span",[e._v(e._s(n.t("user_ldap","User count: {usersCount}",{usersCount:n.usersCount},{escape:!1})))])],1)])},[],!1,null,"47c76aa2",null).exports,pr=(0,o.pM)({__name:"WizardControls",props:{configId:null},setup(e){const t=e,n=za(),{updatingConfig:a}=(0,i.bP)(n),r=(0,o.KR)(!1),s=(0,o.KR)(null),c=(0,o.EW)(()=>s.value?.success);return(0,o.wB)(a,()=>{s.value=null}),{__sfc:!0,props:t,ldapConfigsStore:n,updatingConfig:a,loading:r,result:s,isValide:c,testSelectedConfig:async function(){try{r.value=!0,s.value=await async function(e){const t=new FormData,n=await ze.Ay.post((0,wn.KT)("apps/user_ldap/api/v1/config/{configId}/test",{configId:e}));return La.debug("Configuration is "+(n.data.ocs.data.success?"valide":"invalide"),{configId:e,params:t,response:n}),n.data.ocs.data}(t.configId)}finally{r.value=!1}},t:l.t,NcButton:Ce.N,NcLoadingIcon:Be.A,Information:tr.A}}});var Ar=a(9456),fr={};fr.styleTagTransform=_(),fr.setAttributes=m(),fr.insert=v().bind(null,"head"),fr.domAPI=A(),fr.insertStyleElement=b(),u()(Ar.A,fr),Ar.A&&Ar.A.locals&&Ar.A.locals;const vr=(0,Ma.A)(pr,function(){var e=this,t=e._self._c,n=e._self._setupProxy;return t("div",{staticClass:"ldap-wizard__controls"},[t(n.NcButton,{attrs:{variant:"primary",disabled:n.loading},on:{click:n.testSelectedConfig}},[e._v("\n\t\t"+e._s(n.t("user_ldap","Test Configuration"))+"\n\t")]),e._v(" "),t(n.NcButton,{attrs:{variant:"tertiary",href:"https://docs.nextcloud.com/server/stable/go.php?to=admin-ldap",target:"_blank",rel:"noreferrer noopener"},scopedSlots:e._u([{key:"icon",fn:function(){return[t(n.Information,{attrs:{size:20}})]},proxy:!0}])},[e._v(" "),t("span",[e._v(e._s(n.t("user_ldap","Help")))])]),e._v(" "),null===n.result||n.loading?e._e():[t("span",{staticClass:"ldap-wizard__controls__state_indicator",class:{"ldap-wizard__controls__state_indicator--valid":n.isValide}}),e._v(" "),t("span",{staticClass:"ldap-wizard__controls__state_message"},[e._v("\n\t\t\t"+e._s(n.result.message)+"\n\t\t")])],e._v(" "),n.loading?t(n.NcLoadingIcon,{attrs:{size:16}}):e._e()],2)},[],!1,null,"50c01e3a",null).exports,gr=(0,o.pM)({__name:"Settings",setup(e){const t=(0,s.C)("user_ldap","ldapModuleInstalled"),n={server:(0,l.t)("user_ldap","Server"),users:(0,l.t)("user_ldap","Users"),login:(0,l.t)("user_ldap","Login Attributes"),groups:(0,l.t)("user_ldap","Groups"),advanced:(0,l.t)("user_ldap","Advanced"),expert:(0,l.t)("user_ldap","Expert")},a=za(),{ldapConfigs:r,selectedConfigId:c,selectedConfig:d}=(0,i.bP)(a),u=(0,o.KR)("server"),p=(0,o.KR)(!1),A=(0,o.EW)(()=>""!==d.value.ldapHost&&""!==d.value.ldapPort&&""!==d.value.ldapBase&&""!==d.value.ldapAgentName&&""!==d.value.ldapAgentPassword);return{__sfc:!0,ldapModuleInstalled:t,tabs:n,ldapConfigsStore:a,ldapConfigs:r,selectedConfigId:c,selectedConfig:d,selectedTab:u,clearMappingLoading:p,selectedConfigHasServerInfo:A,requestClearMapping:async function(e){try{p.value=!0,await async function(e){if(!await Ga((0,l.t)("user_ldap","Confirm action"),(0,l.t)("user_ldap","Are you sure you want to permanently clear the LDAP mapping? This cannot be undone.")))return!1;try{const t=await ze.Ay.post((0,wn.KT)("apps/user_ldap/api/v1/wizard/clearMappings"),{subject:e});return La.debug("Cleared mapping",{subject:e,params,response:t}),(0,Da.Te)((0,l.t)("user_ldap","Mapping cleared")),!0}catch(e){const t=e.response;(0,Da.Qg)(t?.data.ocs.meta.message||(0,l.t)("user_ldap","Failed to clear mapping"))}}(e)}finally{p.value=!1}},t:l.t,NcButton:Ce.N,NcCheckboxRadioSwitch:zt.N,NcNoteCard:hn.A,NcSelect:ea.N,Plus:Sa.A,AdvancedTab:Xa,ExpertTab:Ha,GroupsTab:Qa,LoginTab:er,ServerTab:sr,UsersTab:ur,WizardControls:vr}}});var mr=a(87932),hr={};hr.styleTagTransform=_(),hr.setAttributes=m(),hr.insert=v().bind(null,"head"),hr.domAPI=A(),hr.insertStyleElement=b(),u()(mr.A,hr),mr.A&&mr.A.locals&&mr.A.locals;const br=(0,Ma.A)(gr,function(){var e=this,t=e._self._c,n=e._self._setupProxy;return t("form",{staticClass:"ldap-wizard"},[t("h2",[e._v(e._s(n.t("user_ldap","LDAP/AD integration")))]),e._v(" "),n.ldapModuleInstalled?e._e():t(n.NcNoteCard,{attrs:{type:"warning",text:n.t("user_ldap","The PHP LDAP module is not installed, the backend will not work. Please ask your system administrator to install it.")}}),e._v(" "),n.ldapModuleInstalled?[t("div",{staticClass:"ldap-wizard__config-selection"},[void 0!==n.selectedConfigId?t(n.NcSelect,{attrs:{options:Object.keys(n.ldapConfigs),"input-label":n.t("user_ldap","Select LDAP Config")},scopedSlots:e._u([{key:"option",fn:function({label:t}){return[e._v("\n\t\t\t\t\t"+e._s(`${t}: ${n.ldapConfigs[t].ldapHost}`)+"\n\t\t\t\t")]}},{key:"selected-option",fn:function({label:t}){return[e._v("\n\t\t\t\t\t"+e._s(`${t}: ${n.ldapConfigs[t].ldapHost}`)+"\n\t\t\t\t")]}}],null,!1,2170402317),model:{value:n.selectedConfigId,callback:function(e){n.selectedConfigId=e},expression:"selectedConfigId"}}):e._e(),e._v(" "),t(n.NcButton,{staticClass:"ldap-wizard__config-selection__create-button",attrs:{label:n.t("user_ldap","Create New Config")},on:{click:n.ldapConfigsStore.create},scopedSlots:e._u([{key:"icon",fn:function(){return[t(n.Plus,{attrs:{size:20}})]},proxy:!0}],null,!1,1086138354)},[e._v("\n\t\t\t\t"+e._s(n.t("user_ldap","Create configuration"))+"\n\t\t\t")])],1),e._v(" "),void 0!==n.selectedConfigId?t("div",{staticClass:"ldap-wizard__tab-container"},[t("div",{staticClass:"ldap-wizard__tab-selection-container"},[t("div",{staticClass:"ldap-wizard__tab-selection"},e._l(n.tabs,function(a,r){return t(n.NcCheckboxRadioSwitch,{key:r,attrs:{"button-variant":!0,checked:n.selectedTab,value:r,type:"radio",disabled:"server"!==r&&!n.selectedConfigHasServerInfo,"button-variant-grouped":"horizontal"},on:{"update:checked":function(e){n.selectedTab=e}}},[e._v("\n\t\t\t\t\t\t"+e._s(a)+"\n\t\t\t\t\t")])}),1)]),e._v(" "),"server"===n.selectedTab?t(n.ServerTab,{attrs:{"config-id":n.selectedConfigId}}):"users"===n.selectedTab?t(n.UsersTab,{attrs:{"config-id":n.selectedConfigId}}):"login"===n.selectedTab?t(n.LoginTab,{attrs:{"config-id":n.selectedConfigId}}):"groups"===n.selectedTab?t(n.GroupsTab,{attrs:{"config-id":n.selectedConfigId}}):"expert"===n.selectedTab?t(n.ExpertTab,{attrs:{"config-id":n.selectedConfigId}}):"advanced"===n.selectedTab?t(n.AdvancedTab,{attrs:{"config-id":n.selectedConfigId}}):e._e(),e._v(" "),t(n.WizardControls,{staticClass:"ldap-wizard__controls",attrs:{"config-id":n.selectedConfigId}})],1):e._e(),e._v(" "),t("div",{staticClass:"ldap-wizard__clear-mapping"},[t("strong",[e._v(e._s(n.t("user_ldap","Username-LDAP User Mapping")))]),e._v("\n\t\t\t"+e._s(n.t("user_ldap","Usernames are used to store and assign metadata. In order to precisely identify and recognize users, each LDAP user will have an internal username. This requires a mapping from username to LDAP user. The created username is mapped to the UUID of the LDAP user. Additionally the DN is cached as well to reduce LDAP interaction, but it is not used for identification. If the DN changes, the changes will be found. The internal username is used all over. Clearing the mappings will have leftovers everywhere. Clearing the mappings is not configuration sensitive, it affects all LDAP configurations! Never clear the mappings in a production environment, only in a testing or experimental stage."))+"\n\n\t\t\t"),t("div",{staticClass:"ldap-wizard__clear-mapping__buttons"},[t(n.NcButton,{attrs:{variant:"error",disabled:n.clearMappingLoading},on:{click:function(e){return n.requestClearMapping("user")}}},[e._v("\n\t\t\t\t\t"+e._s(n.t("user_ldap","Clear Username-LDAP User Mapping"))+"\n\t\t\t\t")]),e._v(" "),t(n.NcButton,{attrs:{variant:"error",disabled:n.clearMappingLoading},on:{click:function(e){return n.requestClearMapping("group")}}},[e._v("\n\t\t\t\t\t"+e._s(n.t("user_ldap","Clear Groupname-LDAP Group Mapping"))+"\n\t\t\t\t")])],1)])]:e._e()],2)},[],!1,null,"51715f32",null).exports,Cr=(0,o.pM)({__name:"LDAPSettingsApp",setup:e=>({__sfc:!0,Settings:br})}),_r=(0,Ma.A)(Cr,function(){return(0,this._self._c)(this._self._setupProxy.Settings)},[],!1,null,null,null).exports,yr=(0,i.Ey)();a.nc=(0,r.aV)(),o.Ay.use(i.R2),new(o.Ay.extend(_r))({name:"LDAPSettingsApp",pinia:yr}).$mount("#content-ldap-settings")},77199:()=>{},77965:()=>{},78982:()=>{},79368:()=>{},79722:e=>{"use strict";e.exports="data:image/svg+xml,%3c%21--%20-%20SPDX-FileCopyrightText:%202020%20Google%20Inc.%20-%20SPDX-License-Identifier:%20Apache-2.0%20--%3e%3csvg%20xmlns=%27http://www.w3.org/2000/svg%27%20width=%2724%27%20height=%2724%27%20fill=%27%23222%27%3e%3cpath%20d=%27M5.6%207.4L7%206l6%206-6%206-1.4-1.4%204.6-4.6-4.6-4.6m6%200L13%206l6%206-6%206-1.4-1.4%204.6-4.6-4.6-4.6z%27/%3e%3c/svg%3e"},79838:()=>{},81611:(e,t,n)=>{"use strict";n.d(t,{A:()=>s});var a=n(71354),r=n.n(a),i=n(76314),o=n.n(i)()(r());o.push([e.id,"/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/**\n * SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/*\n* Ensure proper alignment of the vue material icons\n*/\n._material-design-icon_1xe1x_12 {\n display: flex;\n align-self: center;\n justify-self: center;\n align-items: center;\n justify-content: center;\n}\n._assistantButton_1xe1x_20 {\n --assistant-button-color: var(--color-element-assistant, linear-gradient(238deg, #A569D3 12%, #00679E 39%, #422083 86%));\n --assistant-button-background-color: var(--color-background-assistant, #F6F5FF);\n background-image: var(--color-border-assistant, linear-gradient(125deg, #7398FE 50%, #6104A4 125%));\n border-radius: var(--border-radius-element);\n height: var(--default-clickable-area);\n width: fit-content;\n padding-inline: 1px;\n padding-block: 1px 2px;\n}\n._assistantButton_disabled_1xe1x_30 {\n filter: saturate(0.5);\n opacity: 0.5;\n}\n._assistantButton_primary_1xe1x_34 {\n --assistant-button-color: white;\n --assistant-button-background-color: var(--color-element-assistant,linear-gradient(238deg, #A569D3 12%, #00679E 39%, #422083 86%));\n}\n._assistantButton_primary_1xe1x_34 ._assistantButton__icon_1xe1x_38,\n._assistantButton_primary_1xe1x_34 ._assistantButton__text_1xe1x_39 {\n color: white !important;\n}\n._assistantButton__button_1xe1x_42 {\n --button-size: calc(var(--default-clickable-area) - 3px) !important;\n background-color: var(--assistant-button-background-color) !important;\n background-image: var(--assistant-button-background-color) !important;\n border: none !important;\n}\n._assistantButton__button_1xe1x_42:hover {\n filter: brightness(120%);\n}\n._assistantButton__text_1xe1x_39 {\n background-image: var(--assistant-button-color);\n color: transparent !important;\n background-clip: text;\n}","",{version:3,sources:["webpack://./node_modules/@nextcloud/vue/dist/assets/NcAssistantButton-owGSr0s0.css"],names:[],mappings:"AAAA;;;EAGE;AACF;;;EAGE;AACF;;CAEC;AACD;EACE,aAAa;EACb,kBAAkB;EAClB,oBAAoB;EACpB,mBAAmB;EACnB,uBAAuB;AACzB;AACA;EACE,wHAAwH;EACxH,+EAA+E;EAC/E,mGAAmG;EACnG,2CAA2C;EAC3C,qCAAqC;EACrC,kBAAkB;EAClB,mBAAmB;EACnB,sBAAsB;AACxB;AACA;EACE,qBAAqB;EACrB,YAAY;AACd;AACA;EACE,+BAA+B;EAC/B,kIAAkI;AACpI;AACA;;EAEE,uBAAuB;AACzB;AACA;EACE,mEAAmE;EACnE,qEAAqE;EACrE,qEAAqE;EACrE,uBAAuB;AACzB;AACA;EACE,wBAAwB;AAC1B;AACA;EACE,+CAA+C;EAC/C,6BAA6B;EAC7B,qBAAqB;AACvB",sourcesContent:["/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/**\n * SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/*\n* Ensure proper alignment of the vue material icons\n*/\n._material-design-icon_1xe1x_12 {\n display: flex;\n align-self: center;\n justify-self: center;\n align-items: center;\n justify-content: center;\n}\n._assistantButton_1xe1x_20 {\n --assistant-button-color: var(--color-element-assistant, linear-gradient(238deg, #A569D3 12%, #00679E 39%, #422083 86%));\n --assistant-button-background-color: var(--color-background-assistant, #F6F5FF);\n background-image: var(--color-border-assistant, linear-gradient(125deg, #7398FE 50%, #6104A4 125%));\n border-radius: var(--border-radius-element);\n height: var(--default-clickable-area);\n width: fit-content;\n padding-inline: 1px;\n padding-block: 1px 2px;\n}\n._assistantButton_disabled_1xe1x_30 {\n filter: saturate(0.5);\n opacity: 0.5;\n}\n._assistantButton_primary_1xe1x_34 {\n --assistant-button-color: white;\n --assistant-button-background-color: var(--color-element-assistant,linear-gradient(238deg, #A569D3 12%, #00679E 39%, #422083 86%));\n}\n._assistantButton_primary_1xe1x_34 ._assistantButton__icon_1xe1x_38,\n._assistantButton_primary_1xe1x_34 ._assistantButton__text_1xe1x_39 {\n color: white !important;\n}\n._assistantButton__button_1xe1x_42 {\n --button-size: calc(var(--default-clickable-area) - 3px) !important;\n background-color: var(--assistant-button-background-color) !important;\n background-image: var(--assistant-button-background-color) !important;\n border: none !important;\n}\n._assistantButton__button_1xe1x_42:hover {\n filter: brightness(120%);\n}\n._assistantButton__text_1xe1x_39 {\n background-image: var(--assistant-button-color);\n color: transparent !important;\n background-clip: text;\n}"],sourceRoot:""}]);const s=o},84323:(e,t,n)=>{"use strict";n.d(t,{A:()=>s});var a=n(71354),r=n.n(a),i=n(76314),o=n.n(i)()(r());o.push([e.id,".ldap-wizard__server[data-v-0d8c49c7]{display:flex;flex-direction:column;gap:16px}.ldap-wizard__server button[data-v-0d8c49c7]{flex-shrink:0}.ldap-wizard__server__line[data-v-0d8c49c7]{display:flex;align-items:start;gap:16px}.ldap-wizard__server__host__port[data-v-0d8c49c7]{display:flex;align-items:center;flex-shrink:0;gap:16px}","",{version:3,sources:["webpack://./apps/user_ldap/src/components/SettingsTabs/ServerTab.vue"],names:[],mappings:"AACA,sCACC,YAAA,CACA,qBAAA,CACA,QAAA,CAEA,6CACC,aAAA,CAGD,4CACC,YAAA,CACA,iBAAA,CACA,QAAA,CAGD,kDACC,YAAA,CACA,kBAAA,CACA,aAAA,CACA,QAAA",sourcesContent:["\n.ldap-wizard__server {\n\tdisplay: flex;\n\tflex-direction: column;\n\tgap: 16px;\n\n\tbutton {\n\t\tflex-shrink: 0;\n\t}\n\n\t&__line {\n\t\tdisplay: flex;\n\t\talign-items: start;\n\t\tgap: 16px;\n\t}\n\n\t&__host__port {\n\t\tdisplay: flex;\n\t\talign-items: center;\n\t\tflex-shrink: 0;\n\t\tgap: 16px;\n\t}\n}\n"],sourceRoot:""}]);const s=o},86795:(e,t,n)=>{"use strict";n.d(t,{A:()=>s});var a=n(71354),r=n.n(a),i=n(76314),o=n.n(i)()(r());o.push([e.id,"/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/**\n * SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/*\n* Ensure proper alignment of the vue material icons\n*/\n.material-design-icon[data-v-fac69d4a] {\n display: flex;\n align-self: center;\n justify-self: center;\n align-items: center;\n justify-content: center;\n}\n.app-navigation-caption[data-v-fac69d4a] {\n display: flex;\n justify-content: space-between;\n}\n.app-navigation-caption--heading[data-v-fac69d4a] {\n padding: var(--app-navigation-padding);\n}\n.app-navigation-caption--heading[data-v-fac69d4a]:not(:first-child):not(:last-child) {\n padding: 0 var(--app-navigation-padding);\n}\n.app-navigation-caption__name[data-v-fac69d4a] {\n font-weight: bold;\n color: var(--color-main-text);\n font-size: var(--default-font-size);\n line-height: var(--default-clickable-area);\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n box-shadow: none !important;\n flex-shrink: 1;\n padding-block: 0;\n padding-inline: calc(var(--default-grid-baseline, 4px) * 2) 0;\n margin-top: 0px;\n margin-bottom: var(--default-grid-baseline);\n}\n.app-navigation-caption__actions[data-v-fac69d4a] {\n flex: 0 0 var(--default-clickable-area);\n}\n.app-navigation-caption[data-v-fac69d4a]:not(:first-child) {\n margin-top: calc(var(--default-clickable-area) / 2);\n}","",{version:3,sources:["webpack://./node_modules/@nextcloud/vue/dist/assets/NcAppNavigationCaption-C7GtQb_y.css"],names:[],mappings:"AAAA;;;EAGE;AACF;;;EAGE;AACF;;CAEC;AACD;EACE,aAAa;EACb,kBAAkB;EAClB,oBAAoB;EACpB,mBAAmB;EACnB,uBAAuB;AACzB;AACA;EACE,aAAa;EACb,8BAA8B;AAChC;AACA;EACE,sCAAsC;AACxC;AACA;EACE,wCAAwC;AAC1C;AACA;EACE,iBAAiB;EACjB,6BAA6B;EAC7B,mCAAmC;EACnC,0CAA0C;EAC1C,mBAAmB;EACnB,gBAAgB;EAChB,uBAAuB;EACvB,2BAA2B;EAC3B,cAAc;EACd,gBAAgB;EAChB,6DAA6D;EAC7D,eAAe;EACf,2CAA2C;AAC7C;AACA;EACE,uCAAuC;AACzC;AACA;EACE,mDAAmD;AACrD",sourcesContent:["/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/**\n * SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/*\n* Ensure proper alignment of the vue material icons\n*/\n.material-design-icon[data-v-fac69d4a] {\n display: flex;\n align-self: center;\n justify-self: center;\n align-items: center;\n justify-content: center;\n}\n.app-navigation-caption[data-v-fac69d4a] {\n display: flex;\n justify-content: space-between;\n}\n.app-navigation-caption--heading[data-v-fac69d4a] {\n padding: var(--app-navigation-padding);\n}\n.app-navigation-caption--heading[data-v-fac69d4a]:not(:first-child):not(:last-child) {\n padding: 0 var(--app-navigation-padding);\n}\n.app-navigation-caption__name[data-v-fac69d4a] {\n font-weight: bold;\n color: var(--color-main-text);\n font-size: var(--default-font-size);\n line-height: var(--default-clickable-area);\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n box-shadow: none !important;\n flex-shrink: 1;\n padding-block: 0;\n padding-inline: calc(var(--default-grid-baseline, 4px) * 2) 0;\n margin-top: 0px;\n margin-bottom: var(--default-grid-baseline);\n}\n.app-navigation-caption__actions[data-v-fac69d4a] {\n flex: 0 0 var(--default-clickable-area);\n}\n.app-navigation-caption[data-v-fac69d4a]:not(:first-child) {\n margin-top: calc(var(--default-clickable-area) / 2);\n}"],sourceRoot:""}]);const s=o},86886:e=>{"use strict";e.exports="data:image/svg+xml,%3c%21--%20-%20SPDX-FileCopyrightText:%202020%20Google%20Inc.%20-%20SPDX-License-Identifier:%20Apache-2.0%20--%3e%3csvg%20xmlns=%27http://www.w3.org/2000/svg%27%20width=%2724%27%20height=%2724%27%20fill=%27%23222%27%3e%3cpath%20d=%27M8.6%2016.6l4.6-4.6-4.6-4.6L10%206l6%206-6%206-1.4-1.4z%27/%3e%3c/svg%3e"},87932:(e,t,n)=>{"use strict";n.d(t,{A:()=>s});var a=n(71354),r=n.n(a),i=n(76314),o=n.n(i)()(r());o.push([e.id,".ldap-wizard[data-v-51715f32]{padding:16px;max-width:1000px}.ldap-wizard__config-selection[data-v-51715f32]{display:flex;align-items:end;margin-bottom:8px;gap:16px}.ldap-wizard__config-selection__create-button[data-v-51715f32]{margin-bottom:4px}.ldap-wizard__tab-selection-container[data-v-51715f32]{display:flex}.ldap-wizard__tab-selection[data-v-51715f32]{display:flex;margin-inline-start:-16px;margin-bottom:16px}.ldap-wizard__tab-selection[data-v-51715f32]:last-of-type{margin-inline-end:-16px}.ldap-wizard__tab-container[data-v-51715f32]{border-bottom:1px solid var(--color-text-light);padding:0 16px 16px 16px}.ldap-wizard__controls[data-v-51715f32]{margin-top:16px}.ldap-wizard__clear-mapping[data-v-51715f32]{padding:16px}.ldap-wizard__clear-mapping__buttons[data-v-51715f32]{display:flex;margin-top:8px;gap:16px}","",{version:3,sources:["webpack://./apps/user_ldap/src/views/Settings.vue"],names:[],mappings:"AACA,8BACC,YAAA,CACA,gBAAA,CAEA,gDACC,YAAA,CACA,eAAA,CACA,iBAAA,CACA,QAAA,CAEA,+DACC,iBAAA,CAIF,uDACC,YAAA,CAGD,6CACC,YAAA,CACA,yBAAA,CACA,kBAAA,CAEA,0DACC,uBAAA,CAIF,6CACC,+CAAA,CACA,wBAAA,CAGD,wCACC,eAAA,CAGD,6CACC,YAAA,CAEA,sDACC,YAAA,CACA,cAAA,CACA,QAAA",sourcesContent:["\n.ldap-wizard {\n\tpadding: 16px;\n\tmax-width: 1000px;\n\n\t&__config-selection {\n\t\tdisplay: flex;\n\t\talign-items: end;\n\t\tmargin-bottom: 8px;\n\t\tgap: 16px;\n\n\t\t&__create-button {\n\t\t\tmargin-bottom: 4px;\n\t\t}\n\t}\n\n\t&__tab-selection-container {\n\t\tdisplay: flex;\n\t}\n\n\t&__tab-selection {\n\t\tdisplay: flex;\n\t\tmargin-inline-start: -16px;\n\t\tmargin-bottom: 16px;\n\n\t\t&:last-of-type {\n\t\t\tmargin-inline-end: -16px;\n\t\t}\n\t}\n\n\t&__tab-container {\n\t\tborder-bottom: 1px solid var(--color-text-light);\n\t\tpadding: 0 16px 16px 16px;\n\t}\n\n\t&__controls {\n\t\tmargin-top: 16px;\n\t}\n\n\t&__clear-mapping {\n\t\tpadding: 16px;\n\n\t\t&__buttons {\n\t\t\tdisplay: flex;\n\t\t\tmargin-top: 8px;\n\t\t\tgap: 16px;\n\t\t}\n\t}\n}\n"],sourceRoot:""}]);const s=o},93595:(e,t,n)=>{"use strict";n.d(t,{A:()=>s});var a=n(71354),r=n.n(a),i=n(76314),o=n.n(i)()(r());o.push([e.id,"/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/**\n * SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/*\n* Ensure proper alignment of the vue material icons\n*/\n._material-design-icon_ri18g_12 {\n display: flex;\n align-self: center;\n justify-self: center;\n align-items: center;\n justify-content: center;\n}\n._assistantContent_ri18g_20 {\n background-image: var(--color-border-assistant, linear-gradient(125deg, #7398FE 50%, #6104A4 125%));\n border-radius: var(--border-radius-container);\n padding: 2px;\n}\n._assistantContent__inner_ri18g_25 {\n background-color: var(--color-background-assistant, #F6F5FF);\n border-radius: calc(var(--border-radius-container) - 1px);\n color: var(--color-main-text);\n padding: calc(var(--border-radius-container) - 1px);\n height: 100%;\n width: 100%;\n}","",{version:3,sources:["webpack://./node_modules/@nextcloud/vue/dist/assets/NcAssistantContent-Ban7n3Bg.css"],names:[],mappings:"AAAA;;;EAGE;AACF;;;EAGE;AACF;;CAEC;AACD;EACE,aAAa;EACb,kBAAkB;EAClB,oBAAoB;EACpB,mBAAmB;EACnB,uBAAuB;AACzB;AACA;EACE,mGAAmG;EACnG,6CAA6C;EAC7C,YAAY;AACd;AACA;EACE,4DAA4D;EAC5D,yDAAyD;EACzD,6BAA6B;EAC7B,mDAAmD;EACnD,YAAY;EACZ,WAAW;AACb",sourcesContent:["/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/**\n * SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/*\n* Ensure proper alignment of the vue material icons\n*/\n._material-design-icon_ri18g_12 {\n display: flex;\n align-self: center;\n justify-self: center;\n align-items: center;\n justify-content: center;\n}\n._assistantContent_ri18g_20 {\n background-image: var(--color-border-assistant, linear-gradient(125deg, #7398FE 50%, #6104A4 125%));\n border-radius: var(--border-radius-container);\n padding: 2px;\n}\n._assistantContent__inner_ri18g_25 {\n background-color: var(--color-background-assistant, #F6F5FF);\n border-radius: calc(var(--border-radius-container) - 1px);\n color: var(--color-main-text);\n padding: calc(var(--border-radius-container) - 1px);\n height: 100%;\n width: 100%;\n}"],sourceRoot:""}]);const s=o},94067:e=>{"use strict";var t=Object.prototype.hasOwnProperty,n="~";function a(){}function r(e,t,n){this.fn=e,this.context=t,this.once=n||!1}function i(e,t,a,i,o){if("function"!=typeof a)throw new TypeError("The listener must be a function");var s=new r(a,i||e,o),l=n?n+t:t;return e._events[l]?e._events[l].fn?e._events[l]=[e._events[l],s]:e._events[l].push(s):(e._events[l]=s,e._eventsCount++),e}function o(e,t){0===--e._eventsCount?e._events=new a:delete e._events[t]}function s(){this._events=new a,this._eventsCount=0}Object.create&&(a.prototype=Object.create(null),(new a).__proto__||(n=!1)),s.prototype.eventNames=function(){var e,a,r=[];if(0===this._eventsCount)return r;for(a in e=this._events)t.call(e,a)&&r.push(n?a.slice(1):a);return Object.getOwnPropertySymbols?r.concat(Object.getOwnPropertySymbols(e)):r},s.prototype.listeners=function(e){var t=n?n+e:e,a=this._events[t];if(!a)return[];if(a.fn)return[a.fn];for(var r=0,i=a.length,o=new Array(i);r{"use strict";n.d(t,{A:()=>s});var a=n(71354),r=n.n(a),i=n(76314),o=n.n(i)()(r());o.push([e.id,"/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/**\n * SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/*\n* Ensure proper alignment of the vue material icons\n*/\n.material-design-icon[data-v-528e9576] {\n display: flex;\n align-self: center;\n justify-self: center;\n align-items: center;\n justify-content: center;\n}\n#guest-content-vue[data-v-528e9576] {\n color: var(--color-main-text);\n background-color: var(--color-main-background);\n min-width: 0;\n border-radius: var(--border-radius-large);\n box-shadow: 0 0 10px var(--color-box-shadow);\n height: fit-content;\n padding: 15px;\n margin: 20px auto;\n}/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/**\n * SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/*\n* Ensure proper alignment of the vue material icons\n*/\n.material-design-icon {\n display: flex;\n align-self: center;\n justify-self: center;\n align-items: center;\n justify-content: center;\n}\n#content.nc-guest-content {\n overflow: auto;\n margin-bottom: 0;\n height: calc(var(--body-height) + var(--body-container-margin));\n}","",{version:3,sources:["webpack://./node_modules/@nextcloud/vue/dist/assets/NcGuestContent-BkegjnLL.css"],names:[],mappings:"AAAA;;;EAGE;AACF;;;EAGE;AACF;;CAEC;AACD;EACE,aAAa;EACb,kBAAkB;EAClB,oBAAoB;EACpB,mBAAmB;EACnB,uBAAuB;AACzB;AACA;EACE,6BAA6B;EAC7B,8CAA8C;EAC9C,YAAY;EACZ,yCAAyC;EACzC,4CAA4C;EAC5C,mBAAmB;EACnB,aAAa;EACb,iBAAiB;AACnB,CAAC;;;EAGC;AACF;;;EAGE;AACF;;CAEC;AACD;EACE,aAAa;EACb,kBAAkB;EAClB,oBAAoB;EACpB,mBAAmB;EACnB,uBAAuB;AACzB;AACA;EACE,cAAc;EACd,gBAAgB;EAChB,+DAA+D;AACjE",sourcesContent:["/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/**\n * SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/*\n* Ensure proper alignment of the vue material icons\n*/\n.material-design-icon[data-v-528e9576] {\n display: flex;\n align-self: center;\n justify-self: center;\n align-items: center;\n justify-content: center;\n}\n#guest-content-vue[data-v-528e9576] {\n color: var(--color-main-text);\n background-color: var(--color-main-background);\n min-width: 0;\n border-radius: var(--border-radius-large);\n box-shadow: 0 0 10px var(--color-box-shadow);\n height: fit-content;\n padding: 15px;\n margin: 20px auto;\n}/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/**\n * SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/*\n* Ensure proper alignment of the vue material icons\n*/\n.material-design-icon {\n display: flex;\n align-self: center;\n justify-self: center;\n align-items: center;\n justify-content: center;\n}\n#content.nc-guest-content {\n overflow: auto;\n margin-bottom: 0;\n height: calc(var(--body-height) + var(--body-container-margin));\n}"],sourceRoot:""}]);const s=o},98621:(e,t,n)=>{"use strict";n.d(t,{A:()=>s});var a=n(71354),r=n.n(a),i=n(76314),o=n.n(i)()(r());o.push([e.id,"/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/**\n * SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/*\n* Ensure proper alignment of the vue material icons\n*/\n.material-design-icon[data-v-04a313f4] {\n display: flex;\n align-self: center;\n justify-self: center;\n align-items: center;\n justify-content: center;\n}\n.app-navigation-entry__icon-bullet[data-v-04a313f4] {\n display: block;\n padding: calc((var(--default-clickable-area) - 16px) / 2 + 1px);\n}\n.app-navigation-entry__icon-bullet div[data-v-04a313f4] {\n width: 14px;\n height: 14px;\n cursor: pointer;\n transition: background 100ms ease-in-out;\n border: none;\n border-radius: 50%;\n}","",{version:3,sources:["webpack://./node_modules/@nextcloud/vue/dist/assets/NcAppNavigationIconBullet-DLQJkObX.css"],names:[],mappings:"AAAA;;;EAGE;AACF;;;EAGE;AACF;;CAEC;AACD;EACE,aAAa;EACb,kBAAkB;EAClB,oBAAoB;EACpB,mBAAmB;EACnB,uBAAuB;AACzB;AACA;EACE,cAAc;EACd,+DAA+D;AACjE;AACA;EACE,WAAW;EACX,YAAY;EACZ,eAAe;EACf,wCAAwC;EACxC,YAAY;EACZ,kBAAkB;AACpB",sourcesContent:["/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/**\n * SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/*\n* Ensure proper alignment of the vue material icons\n*/\n.material-design-icon[data-v-04a313f4] {\n display: flex;\n align-self: center;\n justify-self: center;\n align-items: center;\n justify-content: center;\n}\n.app-navigation-entry__icon-bullet[data-v-04a313f4] {\n display: block;\n padding: calc((var(--default-clickable-area) - 16px) / 2 + 1px);\n}\n.app-navigation-entry__icon-bullet div[data-v-04a313f4] {\n width: 14px;\n height: 14px;\n cursor: pointer;\n transition: background 100ms ease-in-out;\n border: none;\n border-radius: 50%;\n}"],sourceRoot:""}]);const s=o}},i={};function o(e){var t=i[e];if(void 0!==t)return t.exports;var n=i[e]={id:e,loaded:!1,exports:{}};return r[e].call(n.exports,n,n.exports,o),n.loaded=!0,n.exports}o.m=r,t=[],o.O=(e,n,a,r)=>{if(!n){var i=1/0;for(d=0;d=r)&&Object.keys(o.O).every(e=>o.O[e](n[l]))?n.splice(l--,1):(s=!1,r0&&t[d-1][2]>r;d--)t[d]=t[d-1];t[d]=[n,a,r]},o.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return o.d(t,{a:t}),t},o.d=(e,t)=>{for(var n in t)o.o(t,n)&&!o.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},o.f={},o.e=e=>Promise.all(Object.keys(o.f).reduce((t,n)=>(o.f[n](e,t),t),[])),o.u=e=>e+"-"+e+".js?v="+{594:"2c86902dfae9a5006399",620:"8f7783b39d802f10e22b",2391:"908fc68e4bc9b878c937",2880:"fdf99dc4a6f328ebe498",4325:"67df7ab13a8e8d214551",5862:"d020c05f13d21afee82a",7145:"7889fe0b0ebc57e3d5f1",7471:"e87c2955fa176109d757",8339:"6cdca71a6b3b2d7bef33"}[e],o.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),o.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),n={},a="nextcloud-ui-legacy:",o.l=(e,t,r,i)=>{if(n[e])n[e].push(t);else{var s,l;if(void 0!==r)for(var c=document.getElementsByTagName("script"),d=0;d{s.onerror=s.onload=null,clearTimeout(A);var r=n[e];if(delete n[e],s.parentNode&&s.parentNode.removeChild(s),r&&r.forEach(e=>e(a)),t)return t(a)},A=setTimeout(p.bind(null,void 0,{type:"timeout",target:s}),12e4);s.onerror=p.bind(null,s.onerror),s.onload=p.bind(null,s.onload),l&&document.head.appendChild(s)}},o.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},o.nmd=e=>(e.paths=[],e.children||(e.children=[]),e),o.j=7044,(()=>{var e;o.g.importScripts&&(e=o.g.location+"");var t=o.g.document;if(!e&&t&&(t.currentScript&&"SCRIPT"===t.currentScript.tagName.toUpperCase()&&(e=t.currentScript.src),!e)){var n=t.getElementsByTagName("script");if(n.length)for(var a=n.length-1;a>-1&&(!e||!/^http(s?):/.test(e));)e=n[a--].src}if(!e)throw new Error("Automatic publicPath is not supported in this browser");e=e.replace(/^blob:/,"").replace(/#.*$/,"").replace(/\?.*$/,"").replace(/\/[^\/]+$/,"/"),o.p=e})(),(()=>{o.b="undefined"!=typeof document&&document.baseURI||self.location.href;var e={6768:0,7044:0,7471:0};o.f.j=(t,n)=>{var a=o.o(e,t)?e[t]:void 0;if(0!==a)if(a)n.push(a[2]);else{var r=new Promise((n,r)=>a=e[t]=[n,r]);n.push(a[2]=r);var i=o.p+o.u(t),s=new Error;o.l(i,n=>{if(o.o(e,t)&&(0!==(a=e[t])&&(e[t]=void 0),a)){var r=n&&("load"===n.type?"missing":n.type),i=n&&n.target&&n.target.src;s.message="Loading chunk "+t+" failed.\n("+r+": "+i+")",s.name="ChunkLoadError",s.type=r,s.request=i,a[1](s)}},"chunk-"+t,t)}},o.O.j=t=>0===e[t];var t=(t,n)=>{var a,r,[i,s,l]=n,c=0;if(i.some(t=>0!==e[t])){for(a in s)o.o(s,a)&&(o.m[a]=s[a]);if(l)var d=l(o)}for(t&&t(n);co(76319));s=o.O(s)})(); +//# sourceMappingURL=user_ldap-main.js.map?v=87d1c8b75fe48cb1cd1f \ No newline at end of file diff --git a/dist/user_ldap-main.js.license b/dist/user_ldap-main.js.license index aaafb8accb75e..4b939662329a2 100644 --- a/dist/user_ldap-main.js.license +++ b/dist/user_ldap-main.js.license @@ -51,7 +51,6 @@ SPDX-FileCopyrightText: Mark SPDX-FileCopyrightText: Mapbox SPDX-FileCopyrightText: Kirill Fomichev (https://github.com/fanatid) SPDX-FileCopyrightText: Julian Gruber -SPDX-FileCopyrightText: Joyent SPDX-FileCopyrightText: Jordan Humphreys SPDX-FileCopyrightText: Jordan Harband SPDX-FileCopyrightText: Jordan Harband @@ -590,15 +589,6 @@ This file is generated from multiple sources. Included packages: - parse-asn1 - version: 5.1.9 - license: ISC -- inherits - - version: 2.0.3 - - license: ISC -- util - - version: 0.10.4 - - license: MIT -- path - - version: 0.12.7 - - license: MIT - pbkdf2 - version: 3.1.5 - license: MIT diff --git a/dist/user_ldap-main.js.map b/dist/user_ldap-main.js.map index fb8f77e5ecad2..c031c4a028073 100644 --- a/dist/user_ldap-main.js.map +++ b/dist/user_ldap-main.js.map @@ -1 +1 @@ -{"version":3,"file":"user_ldap-main.js?v=a138933819eeb6f796bc","mappings":"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","sources":["webpack:///nextcloud/webpack/runtime/chunk loaded","webpack:///nextcloud/webpack/runtime/load script","webpack:///nextcloud/node_modules/@nextcloud/vue/dist/assets/NcActionButtonGroup-CRXLyFpx.css","webpack:///nextcloud/node_modules/@nextcloud/vue/dist/assets/NcAppNavigationNewItem-CYSjj3pD.css","webpack:///nextcloud/node_modules/@nextcloud/vue/dist/assets/NcRelatedResourcesPanel-BgMc8bue.css","webpack:///nextcloud/node_modules/@nextcloud/vue/dist/assets/NcActionTextEditable-BCmDMuUg.css","webpack:///nextcloud/node_modules/@nextcloud/vue/dist/chunks/emoji-BY_D0V5K.mjs","webpack:///nextcloud/node_modules/@nextcloud/vue/dist/chunks/NcRichText-BfK6Ybyf.mjs","webpack:///nextcloud/node_modules/@nextcloud/vue/dist/assets/NcAppNavigationSettings-2Wh1E3Hq.css","webpack:///nextcloud/apps/user_ldap/src/components/SettingsTabs/UsersTab.vue?vue&type=style&index=0&id=47c76aa2&prod&lang=scss&scoped=true","webpack:///nextcloud/apps/user_ldap/src/components/SettingsTabs/ServerTab.vue?vue&type=style&index=0&id=d79b8f6a&prod&lang=scss&scoped=true","webpack:///nextcloud/node_modules/@nextcloud/vue/dist/assets/NcActionRadio-CLIRNp3t.css","webpack:///nextcloud/apps/user_ldap/src/components/SettingsTabs/ExpertTab.vue?vue&type=style&index=0&id=1b8d07c0&prod&lang=scss&scoped=true","webpack:///nextcloud/node_modules/@nextcloud/vue/dist/assets/NcAssistantIcon-BoOnqVRr.css","webpack:///nextcloud/apps/user_ldap/src/components/SettingsTabs/LoginTab.vue?vue&type=style&index=0&id=4b9d7382&prod&lang=scss&scoped=true","webpack:///nextcloud/node_modules/@nextcloud/vue/dist/chunks/referencePickerModal-CHpUHrDL.mjs","webpack:///nextcloud/node_modules/@nextcloud/vue/dist/assets/NcAppNavigationNew-D8_2ab9R.css","webpack:///nextcloud/apps/user_ldap/src/components/SettingsTabs/GroupsTab.vue?vue&type=style&index=0&id=3200ed48&prod&lang=scss&scoped=true","webpack://nextcloud/./node_modules/@nextcloud/vue/dist/assets/NcActionButtonGroup-CRXLyFpx.css?f39f","webpack:///nextcloud/node_modules/@nextcloud/vue/dist/chunks/NcActionButtonGroup-Uol_nwut.mjs","webpack://nextcloud/./node_modules/@nextcloud/vue/dist/assets/NcActionRadio-CLIRNp3t.css?da02","webpack:///nextcloud/node_modules/@nextcloud/vue/dist/chunks/NcActionRadio-BmVR-lhZ.mjs","webpack://nextcloud/./node_modules/@nextcloud/vue/dist/assets/NcActionTextEditable-BCmDMuUg.css?e46f","webpack:///nextcloud/node_modules/@nextcloud/vue/dist/chunks/NcActionTextEditable-Bnt0-S7Y.mjs","webpack:///nextcloud/node_modules/@nextcloud/vue/dist/Components/NcAppContentDetails.mjs","webpack:///nextcloud/node_modules/@nextcloud/vue/dist/Components/NcAppContentList.mjs","webpack://nextcloud/./node_modules/@nextcloud/vue/dist/assets/NcAppNavigationCaption-C7GtQb_y.css?ff24","webpack:///nextcloud/node_modules/@nextcloud/vue/dist/chunks/NcAppNavigationCaption-CcWZR8rN.mjs","webpack://nextcloud/./node_modules/@nextcloud/vue/dist/assets/NcAppNavigationIconBullet-DLQJkObX.css?fba0","webpack:///nextcloud/node_modules/@nextcloud/vue/dist/Components/NcAppNavigationIconBullet.mjs","webpack://nextcloud/./node_modules/@nextcloud/vue/dist/assets/NcAppNavigationNew-D8_2ab9R.css?8911","webpack:///nextcloud/node_modules/@nextcloud/vue/dist/chunks/NcAppNavigationNew-BHzvRlVc.mjs","webpack://nextcloud/./node_modules/@nextcloud/vue/dist/assets/NcAppNavigationNewItem-CYSjj3pD.css?f8ce","webpack:///nextcloud/node_modules/@nextcloud/vue/dist/chunks/NcAppNavigationNewItem-DUNLtTs8.mjs","webpack://nextcloud/./node_modules/@nextcloud/vue/dist/assets/NcAppNavigationSettings-2Wh1E3Hq.css?073f","webpack:///nextcloud/node_modules/@nextcloud/vue/dist/chunks/NcAppNavigationSettings-B29zrNPr.mjs","webpack://nextcloud/./node_modules/@nextcloud/vue/dist/assets/NcAssistantButton-owGSr0s0.css?7bca","webpack://nextcloud/./node_modules/@nextcloud/vue/dist/assets/NcAssistantIcon-BoOnqVRr.css?d6f9","webpack:///nextcloud/node_modules/@nextcloud/vue/dist/chunks/NcAssistantIcon-B9L1Ih5x.mjs","webpack:///nextcloud/node_modules/@nextcloud/vue/dist/chunks/NcAssistantButton-lRXTGAwe.mjs","webpack://nextcloud/./node_modules/@nextcloud/vue/dist/assets/NcAssistantContent-Ban7n3Bg.css?b13d","webpack:///nextcloud/node_modules/@nextcloud/vue/dist/Components/NcAssistantContent.mjs","webpack://nextcloud/./node_modules/@nextcloud/vue/dist/assets/NcBlurHash-7aGtE-_T.css?9538","webpack:///nextcloud/node_modules/@nextcloud/vue/node_modules/p-timeout/index.js","webpack:///nextcloud/node_modules/@nextcloud/vue/node_modules/p-queue/dist/priority-queue.js","webpack:///nextcloud/node_modules/@nextcloud/vue/node_modules/p-queue/dist/lower-bound.js","webpack:///nextcloud/node_modules/@nextcloud/vue/dist/Functions/preloadImage.mjs","webpack:///nextcloud/node_modules/@nextcloud/vue/node_modules/p-queue/dist/index.js","webpack:///nextcloud/node_modules/@nextcloud/vue/dist/chunks/NcBlurHash-DZmsBU0q.mjs","webpack://nextcloud/./node_modules/@nextcloud/vue/dist/assets/NcGuestContent-BkegjnLL.css?7552","webpack:///nextcloud/node_modules/@nextcloud/vue/dist/Components/NcGuestContent.mjs","webpack://nextcloud/./node_modules/@nextcloud/vue/dist/assets/NcRelatedResourcesPanel-BgMc8bue.css?a9c9","webpack:///nextcloud/node_modules/@nextcloud/vue/dist/chunks/NcRelatedResourcesPanel-D9-wo_xr.mjs","webpack:///nextcloud/node_modules/@nextcloud/vue/dist/chunks/NcSavingIndicatorIcon-U7AIamCl.mjs","webpack://nextcloud/./node_modules/@nextcloud/vue/dist/assets/NcSelectUsers-CfOSPgtz.css?ca29","webpack:///nextcloud/node_modules/@nextcloud/vue/dist/chunks/NcSelectUsers-RyUVUaWQ.mjs","webpack://nextcloud/./node_modules/@nextcloud/vue/dist/assets/NcSettingsInputText-18lfGViv.css?4373","webpack:///nextcloud/node_modules/@nextcloud/vue/dist/chunks/NcSettingsInputText-Dtr4Rn2b.mjs","webpack:///nextcloud/node_modules/@nextcloud/vue/dist/chunks/NcThemeProvider-25ResoIv.mjs","webpack:///nextcloud/node_modules/@nextcloud/vue/dist/Directives/Tooltip.mjs","webpack:///nextcloud/node_modules/@nextcloud/vue/dist/index.mjs","webpack:///nextcloud/apps/user_ldap/src/services/logger.ts","webpack:///nextcloud/apps/user_ldap/src/services/ldapConfigService.ts","webpack:///nextcloud/apps/user_ldap/src/store/configs.ts","webpack:///nextcloud/apps/user_ldap/src/components/SettingsTabs/AdvancedTab.vue?vue&type=script&lang=ts&setup=true","webpack:///nextcloud/apps/user_ldap/src/components/SettingsTabs/AdvancedTab.vue","webpack://nextcloud/./apps/user_ldap/src/components/SettingsTabs/AdvancedTab.vue?0210","webpack://nextcloud/./apps/user_ldap/src/components/SettingsTabs/AdvancedTab.vue?c8c3","webpack:///nextcloud/apps/user_ldap/src/components/SettingsTabs/ExpertTab.vue?vue&type=script&lang=ts&setup=true","webpack:///nextcloud/apps/user_ldap/src/components/SettingsTabs/ExpertTab.vue","webpack://nextcloud/./apps/user_ldap/src/components/SettingsTabs/ExpertTab.vue?0fad","webpack://nextcloud/./apps/user_ldap/src/components/SettingsTabs/ExpertTab.vue?574e","webpack:///nextcloud/apps/user_ldap/src/components/SettingsTabs/GroupsTab.vue?vue&type=script&lang=ts&setup=true","webpack:///nextcloud/apps/user_ldap/src/components/SettingsTabs/GroupsTab.vue","webpack://nextcloud/./apps/user_ldap/src/components/SettingsTabs/GroupsTab.vue?f4a4","webpack://nextcloud/./apps/user_ldap/src/components/SettingsTabs/GroupsTab.vue?240e","webpack:///nextcloud/apps/user_ldap/src/components/SettingsTabs/LoginTab.vue?vue&type=script&lang=ts&setup=true","webpack:///nextcloud/apps/user_ldap/src/components/SettingsTabs/LoginTab.vue","webpack://nextcloud/./apps/user_ldap/src/components/SettingsTabs/LoginTab.vue?e35c","webpack://nextcloud/./apps/user_ldap/src/components/SettingsTabs/LoginTab.vue?816b","webpack:///nextcloud/apps/user_ldap/src/components/SettingsTabs/ServerTab.vue","webpack:///nextcloud/node_modules/vue-material-design-icons/Delete.vue","webpack:///nextcloud/node_modules/vue-material-design-icons/Delete.vue?vue&type=script&lang=js","webpack://nextcloud/./node_modules/vue-material-design-icons/Delete.vue?92e1","webpack:///nextcloud/node_modules/vue-material-design-icons/Delete.vue?vue&type=template&id=3ecd235c","webpack:///nextcloud/apps/user_ldap/src/components/SettingsTabs/ServerTab.vue?vue&type=script&lang=ts&setup=true","webpack://nextcloud/./apps/user_ldap/src/components/SettingsTabs/ServerTab.vue?4af7","webpack://nextcloud/./apps/user_ldap/src/components/SettingsTabs/ServerTab.vue?d930","webpack:///nextcloud/apps/user_ldap/src/components/SettingsTabs/UsersTab.vue?vue&type=script&lang=ts&setup=true","webpack:///nextcloud/apps/user_ldap/src/components/SettingsTabs/UsersTab.vue","webpack://nextcloud/./apps/user_ldap/src/components/SettingsTabs/UsersTab.vue?e7d5","webpack://nextcloud/./apps/user_ldap/src/components/SettingsTabs/UsersTab.vue?effa","webpack:///nextcloud/apps/user_ldap/src/components/WizardControls.vue?vue&type=script&lang=ts&setup=true","webpack:///nextcloud/apps/user_ldap/src/components/WizardControls.vue","webpack://nextcloud/./apps/user_ldap/src/components/WizardControls.vue?da6f","webpack://nextcloud/./apps/user_ldap/src/components/WizardControls.vue?2764","webpack:///nextcloud/apps/user_ldap/src/views/Settings.vue?vue&type=script&lang=ts&setup=true","webpack:///nextcloud/apps/user_ldap/src/views/Settings.vue","webpack://nextcloud/./apps/user_ldap/src/views/Settings.vue?a114","webpack://nextcloud/./apps/user_ldap/src/views/Settings.vue?fcfc","webpack:///nextcloud/apps/user_ldap/src/LDAPSettingsApp.vue?vue&type=script&lang=ts&setup=true","webpack:///nextcloud/apps/user_ldap/src/LDAPSettingsApp.vue","webpack://nextcloud/./apps/user_ldap/src/LDAPSettingsApp.vue?ccc4","webpack:///nextcloud/apps/user_ldap/src/store/index.ts","webpack:///nextcloud/apps/user_ldap/src/main.ts","webpack:///nextcloud/apps/user_ldap/src/components/WizardControls.vue?vue&type=style&index=0&id=d316db68&prod&lang=scss&scoped=true","webpack:///nextcloud/node_modules/@nextcloud/vue/dist/assets/NcSelectUsers-CfOSPgtz.css","webpack:///nextcloud/node_modules/@nextcloud/vue/dist/assets/NcSettingsInputText-18lfGViv.css","webpack:///nextcloud/node_modules/@nextcloud/vue/dist/assets/NcBlurHash-7aGtE-_T.css","webpack:///nextcloud/apps/user_ldap/src/components/SettingsTabs/AdvancedTab.vue?vue&type=style&index=0&id=5b57c0d9&prod&lang=scss&scoped=true","webpack:///nextcloud/node_modules/@nextcloud/vue/dist/assets/NcAssistantButton-owGSr0s0.css","webpack:///nextcloud/node_modules/@nextcloud/vue/dist/assets/NcAppNavigationCaption-C7GtQb_y.css","webpack:///nextcloud/apps/user_ldap/src/views/Settings.vue?vue&type=style&index=0&id=51715f32&prod&lang=scss&scoped=true","webpack:///nextcloud/node_modules/@nextcloud/vue/dist/assets/NcAssistantContent-Ban7n3Bg.css","webpack:///nextcloud/node_modules/@nextcloud/vue/node_modules/eventemitter3/index.js","webpack:///nextcloud/node_modules/@nextcloud/vue/dist/assets/NcGuestContent-BkegjnLL.css","webpack:///nextcloud/node_modules/@nextcloud/vue/dist/assets/NcAppNavigationIconBullet-DLQJkObX.css","webpack:///nextcloud/webpack/bootstrap","webpack:///nextcloud/webpack/runtime/compat get default export","webpack:///nextcloud/webpack/runtime/define property getters","webpack:///nextcloud/webpack/runtime/ensure chunk","webpack:///nextcloud/webpack/runtime/get javascript chunk filename","webpack:///nextcloud/webpack/runtime/global","webpack:///nextcloud/webpack/runtime/hasOwnProperty shorthand","webpack:///nextcloud/webpack/runtime/make namespace object","webpack:///nextcloud/webpack/runtime/node module decorator","webpack:///nextcloud/webpack/runtime/runtimeId","webpack:///nextcloud/webpack/runtime/publicPath","webpack:///nextcloud/webpack/runtime/jsonp chunk loading","webpack:///nextcloud/webpack/runtime/nonce","webpack:///nextcloud/webpack/startup"],"sourcesContent":["var deferred = [];\n__webpack_require__.O = (result, chunkIds, fn, priority) => {\n\tif(chunkIds) {\n\t\tpriority = priority || 0;\n\t\tfor(var i = deferred.length; i > 0 && deferred[i - 1][2] > priority; i--) deferred[i] = deferred[i - 1];\n\t\tdeferred[i] = [chunkIds, fn, priority];\n\t\treturn;\n\t}\n\tvar notFulfilled = Infinity;\n\tfor (var i = 0; i < deferred.length; i++) {\n\t\tvar [chunkIds, fn, priority] = deferred[i];\n\t\tvar fulfilled = true;\n\t\tfor (var j = 0; j < chunkIds.length; j++) {\n\t\t\tif ((priority & 1 === 0 || notFulfilled >= priority) && Object.keys(__webpack_require__.O).every((key) => (__webpack_require__.O[key](chunkIds[j])))) {\n\t\t\t\tchunkIds.splice(j--, 1);\n\t\t\t} else {\n\t\t\t\tfulfilled = false;\n\t\t\t\tif(priority < notFulfilled) notFulfilled = priority;\n\t\t\t}\n\t\t}\n\t\tif(fulfilled) {\n\t\t\tdeferred.splice(i--, 1)\n\t\t\tvar r = fn();\n\t\t\tif (r !== undefined) result = r;\n\t\t}\n\t}\n\treturn result;\n};","var inProgress = {};\nvar dataWebpackPrefix = \"nextcloud-ui-legacy:\";\n// loadScript function to load a script via script tag\n__webpack_require__.l = (url, done, key, chunkId) => {\n\tif(inProgress[url]) { inProgress[url].push(done); return; }\n\tvar script, needAttach;\n\tif(key !== undefined) {\n\t\tvar scripts = document.getElementsByTagName(\"script\");\n\t\tfor(var i = 0; i < scripts.length; i++) {\n\t\t\tvar s = scripts[i];\n\t\t\tif(s.getAttribute(\"src\") == url || s.getAttribute(\"data-webpack\") == dataWebpackPrefix + key) { script = s; break; }\n\t\t}\n\t}\n\tif(!script) {\n\t\tneedAttach = true;\n\t\tscript = document.createElement('script');\n\n\t\tscript.charset = 'utf-8';\n\t\tif (__webpack_require__.nc) {\n\t\t\tscript.setAttribute(\"nonce\", __webpack_require__.nc);\n\t\t}\n\t\tscript.setAttribute(\"data-webpack\", dataWebpackPrefix + key);\n\n\t\tscript.src = url;\n\t}\n\tinProgress[url] = [done];\n\tvar onScriptComplete = (prev, event) => {\n\t\t// avoid mem leaks in IE.\n\t\tscript.onerror = script.onload = null;\n\t\tclearTimeout(timeout);\n\t\tvar doneFns = inProgress[url];\n\t\tdelete inProgress[url];\n\t\tscript.parentNode && script.parentNode.removeChild(script);\n\t\tdoneFns && doneFns.forEach((fn) => (fn(event)));\n\t\tif(prev) return prev(event);\n\t}\n\tvar timeout = setTimeout(onScriptComplete.bind(null, undefined, { type: 'timeout', target: script }), 120000);\n\tscript.onerror = onScriptComplete.bind(null, script.onerror);\n\tscript.onload = onScriptComplete.bind(null, script.onload);\n\tneedAttach && document.head.appendChild(script);\n};","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/**\n * SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/*\n* Ensure proper alignment of the vue material icons\n*/\n.material-design-icon[data-v-d81f7625] {\n display: flex;\n align-self: center;\n justify-self: center;\n align-items: center;\n justify-content: center;\n}\n.nc-button-group-base > div[data-v-d81f7625] {\n text-align: center;\n color: var(--color-text-maxcontrast);\n}\n.nc-button-group-base ul.nc-button-group-content[data-v-d81f7625] {\n display: flex;\n gap: 4px;\n justify-content: space-between;\n}\n.nc-button-group-base ul.nc-button-group-content[data-v-d81f7625] li {\n flex: 1 1;\n}\n.nc-button-group-base ul.nc-button-group-content[data-v-d81f7625] .action-button {\n padding: 0 !important;\n width: 100%;\n display: flex;\n justify-content: center;\n}\n.nc-button-group-base ul.nc-button-group-content[data-v-d81f7625] .action-button.action-button--active {\n background-color: var(--color-primary-element);\n border-radius: var(--border-radius-large);\n color: var(--color-primary-element-text);\n}\n.nc-button-group-base ul.nc-button-group-content[data-v-d81f7625] .action-button.action-button--active:hover, .nc-button-group-base ul.nc-button-group-content[data-v-d81f7625] .action-button.action-button--active:focus, .nc-button-group-base ul.nc-button-group-content[data-v-d81f7625] .action-button.action-button--active:focus-within {\n background-color: var(--color-primary-element-hover);\n}\n.nc-button-group-base ul.nc-button-group-content[data-v-d81f7625] .action-button .action-button__pressed-icon {\n display: none;\n}`, \"\",{\"version\":3,\"sources\":[\"webpack://./node_modules/@nextcloud/vue/dist/assets/NcActionButtonGroup-CRXLyFpx.css\"],\"names\":[],\"mappings\":\"AAAA;;;EAGE;AACF;;;EAGE;AACF;;CAEC;AACD;EACE,aAAa;EACb,kBAAkB;EAClB,oBAAoB;EACpB,mBAAmB;EACnB,uBAAuB;AACzB;AACA;EACE,kBAAkB;EAClB,oCAAoC;AACtC;AACA;EACE,aAAa;EACb,QAAQ;EACR,8BAA8B;AAChC;AACA;EACE,SAAS;AACX;AACA;EACE,qBAAqB;EACrB,WAAW;EACX,aAAa;EACb,uBAAuB;AACzB;AACA;EACE,8CAA8C;EAC9C,yCAAyC;EACzC,wCAAwC;AAC1C;AACA;EACE,oDAAoD;AACtD;AACA;EACE,aAAa;AACf\",\"sourcesContent\":[\"/**\\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\\n * SPDX-License-Identifier: AGPL-3.0-or-later\\n */\\n/**\\n * SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors\\n * SPDX-License-Identifier: AGPL-3.0-or-later\\n */\\n/*\\n* Ensure proper alignment of the vue material icons\\n*/\\n.material-design-icon[data-v-d81f7625] {\\n display: flex;\\n align-self: center;\\n justify-self: center;\\n align-items: center;\\n justify-content: center;\\n}\\n.nc-button-group-base > div[data-v-d81f7625] {\\n text-align: center;\\n color: var(--color-text-maxcontrast);\\n}\\n.nc-button-group-base ul.nc-button-group-content[data-v-d81f7625] {\\n display: flex;\\n gap: 4px;\\n justify-content: space-between;\\n}\\n.nc-button-group-base ul.nc-button-group-content[data-v-d81f7625] li {\\n flex: 1 1;\\n}\\n.nc-button-group-base ul.nc-button-group-content[data-v-d81f7625] .action-button {\\n padding: 0 !important;\\n width: 100%;\\n display: flex;\\n justify-content: center;\\n}\\n.nc-button-group-base ul.nc-button-group-content[data-v-d81f7625] .action-button.action-button--active {\\n background-color: var(--color-primary-element);\\n border-radius: var(--border-radius-large);\\n color: var(--color-primary-element-text);\\n}\\n.nc-button-group-base ul.nc-button-group-content[data-v-d81f7625] .action-button.action-button--active:hover, .nc-button-group-base ul.nc-button-group-content[data-v-d81f7625] .action-button.action-button--active:focus, .nc-button-group-base ul.nc-button-group-content[data-v-d81f7625] .action-button.action-button--active:focus-within {\\n background-color: var(--color-primary-element-hover);\\n}\\n.nc-button-group-base ul.nc-button-group-content[data-v-d81f7625] .action-button .action-button__pressed-icon {\\n display: none;\\n}\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/**\n * SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/*\n* Ensure proper alignment of the vue material icons\n*/\n.material-design-icon[data-v-258871fd] {\n display: flex;\n align-self: center;\n justify-self: center;\n align-items: center;\n justify-content: center;\n}\n\n/**\n * SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n.app-navigation-entry[data-v-258871fd] {\n position: relative;\n display: flex;\n flex-shrink: 0;\n flex-wrap: wrap;\n box-sizing: border-box;\n width: 100%;\n min-height: var(--default-clickable-area);\n transition: background-color var(--animation-quick) ease-in-out;\n transition: background-color 200ms ease-in-out;\n border-radius: var(--border-radius-element, var(--border-radius-pill));\n}\n.app-navigation-entry-wrapper[data-v-258871fd] {\n position: relative;\n display: flex;\n flex-shrink: 0;\n flex-wrap: wrap;\n box-sizing: border-box;\n width: 100%;\n}\n.app-navigation-entry-wrapper.app-navigation-entry--collapsible:not(.app-navigation-entry--opened) > ul[data-v-258871fd] {\n display: none;\n}\n.app-navigation-entry.active[data-v-258871fd] {\n background-color: var(--color-primary-element) !important;\n}\n.app-navigation-entry.active[data-v-258871fd]:hover {\n background-color: var(--color-primary-element-hover) !important;\n}\n.app-navigation-entry.active .app-navigation-entry-link[data-v-258871fd], .app-navigation-entry.active .app-navigation-entry-button[data-v-258871fd] {\n color: var(--color-primary-element-text) !important;\n}\n.app-navigation-entry[data-v-258871fd]:focus-within, .app-navigation-entry[data-v-258871fd]:hover {\n background-color: var(--color-background-hover);\n}\n.app-navigation-entry.active .app-navigation-entry__children[data-v-258871fd], .app-navigation-entry:focus-within .app-navigation-entry__children[data-v-258871fd], .app-navigation-entry:hover .app-navigation-entry__children[data-v-258871fd] {\n background-color: var(--color-main-background);\n}\n.app-navigation-entry.active .app-navigation-entry__utils .app-navigation-entry__actions[data-v-258871fd], .app-navigation-entry.app-navigation-entry--deleted .app-navigation-entry__utils .app-navigation-entry__actions[data-v-258871fd], .app-navigation-entry:focus .app-navigation-entry__utils .app-navigation-entry__actions[data-v-258871fd], .app-navigation-entry:focus-within .app-navigation-entry__utils .app-navigation-entry__actions[data-v-258871fd], .app-navigation-entry:hover .app-navigation-entry__utils .app-navigation-entry__actions[data-v-258871fd] {\n display: inline-block;\n}\n.app-navigation-entry .app-navigation-entry__actions[data-v-258871fd]:hover .button-vue {\n background-color: var(--color-background-dark) !important;\n}\n.app-navigation-entry.active .app-navigation-entry__actions[data-v-258871fd]:hover .button-vue {\n background-color: var(--color-primary-element) !important;\n}\n.app-navigation-entry[data-v-258871fd] {\n /* hide deletion/collapse of subitems */\n}\n.app-navigation-entry.app-navigation-entry--deleted > ul[data-v-258871fd] {\n display: none;\n}\n.app-navigation-entry:not(.app-navigation-entry--editing) .app-navigation-entry-link[data-v-258871fd], .app-navigation-entry:not(.app-navigation-entry--editing) .app-navigation-entry-button[data-v-258871fd] {\n padding-inline-end: calc((var(--default-clickable-area) - 16px) / 2);\n}\n.app-navigation-entry .app-navigation-entry-link[data-v-258871fd], .app-navigation-entry .app-navigation-entry-button[data-v-258871fd] {\n z-index: 100; /* above the bullet to allow click*/\n display: flex;\n overflow: hidden;\n flex: 1 1 0;\n box-sizing: border-box;\n min-height: var(--default-clickable-area);\n padding: 0;\n white-space: nowrap;\n color: var(--color-main-text);\n background-repeat: no-repeat;\n background-position: calc((var(--default-clickable-area) - 16px) / 2) center;\n background-size: 16px 16px;\n line-height: var(--default-clickable-area);\n}\n.app-navigation-entry .app-navigation-entry-link .app-navigation-entry-icon[data-v-258871fd], .app-navigation-entry .app-navigation-entry-button .app-navigation-entry-icon[data-v-258871fd] {\n display: flex;\n align-items: center;\n flex: 0 0 var(--default-clickable-area);\n justify-content: center;\n width: var(--default-clickable-area);\n height: var(--default-clickable-area);\n background-size: 16px 16px;\n background-repeat: no-repeat;\n background-position: calc((var(--default-clickable-area) - 16px) / 2) center;\n}\n.app-navigation-entry .app-navigation-entry-link .app-navigation-entry__name[data-v-258871fd], .app-navigation-entry .app-navigation-entry-button .app-navigation-entry__name[data-v-258871fd] {\n overflow: hidden;\n max-width: 100%;\n white-space: nowrap;\n text-overflow: ellipsis;\n}\n.app-navigation-entry .app-navigation-entry-link .editingContainer[data-v-258871fd], .app-navigation-entry .app-navigation-entry-button .editingContainer[data-v-258871fd] {\n width: calc(100% - var(--default-clickable-area));\n margin: auto;\n}\n.app-navigation-entry .app-navigation-entry-link[data-v-258871fd]:focus-visible, .app-navigation-entry .app-navigation-entry-button[data-v-258871fd]:focus-visible {\n box-shadow: 0 0 0 4px var(--color-main-background);\n outline: 2px solid var(--color-main-text);\n border-radius: var(--border-radius-element, var(--border-radius-pill));\n}\n\n/* Second level nesting for lists */\n.app-navigation-entry__children[data-v-258871fd] {\n --app-navigation-item-child-offset: 10px;\n position: relative;\n display: flex;\n flex: 0 1 auto;\n flex-direction: column;\n width: 100%;\n gap: var(--default-grid-baseline, 4px);\n padding-inline-start: var(--app-navigation-item-child-offset);\n}\n.app-navigation-entry__children .app-navigation-entry[data-v-258871fd] {\n display: inline-flex;\n flex-wrap: wrap;\n}\n.app-navigation-entry__children .app-navigation-entry__children .app-navigation-entry__children .app-navigation-entry__children .app-navigation-entry__children .app-navigation-entry__children .app-navigation-entry__children[data-v-258871fd] {\n --app-navigation-item-child-offset: 0;\n}\n\n/* Deleted entries */\n.app-navigation-entry__deleted[data-v-258871fd] {\n display: inline-flex;\n flex: 1 1 0;\n padding-inline-start: calc(var(--default-clickable-area) - (var(--default-clickable-area) - 16px) / 2) !important;\n}\n.app-navigation-entry__deleted .app-navigation-entry__deleted-description[data-v-258871fd] {\n position: relative;\n overflow: hidden;\n flex: 1 1 0;\n white-space: nowrap;\n text-overflow: ellipsis;\n line-height: var(--default-clickable-area);\n}\n\n/* counter and actions */\n.app-navigation-entry__utils[data-v-258871fd] {\n display: flex;\n min-width: var(--default-clickable-area);\n align-items: center;\n flex: 0 1 auto;\n justify-content: flex-end;\n}\n.app-navigation-entry__utils.app-navigation-entry__utils--display-actions .action-item.app-navigation-entry__actions[data-v-258871fd] {\n display: inline-block;\n}\n.app-navigation-entry__utils[data-v-258871fd] {\n /* counter */\n}\n.app-navigation-entry__utils .app-navigation-entry__counter-wrapper[data-v-258871fd] {\n margin-inline-end: calc(var(--default-grid-baseline) * 2);\n display: flex;\n align-items: center;\n flex: 0 1 auto;\n}\n.app-navigation-entry__utils[data-v-258871fd] {\n /* actions */\n}\n.app-navigation-entry__utils .action-item.app-navigation-entry__actions[data-v-258871fd] {\n display: none;\n}\n\n/* editing state */\n.app-navigation-entry--editing .app-navigation-entry-edit[data-v-258871fd] {\n z-index: 250;\n opacity: 1;\n}\n\n/* deleted state */\n.app-navigation-entry--deleted .app-navigation-entry-deleted[data-v-258871fd] {\n z-index: 250;\n transform: translateX(0);\n}\n\n/* pinned state */\n.app-navigation-entry--pinned[data-v-258871fd] {\n order: 2;\n margin-top: auto;\n}\n.app-navigation-entry--pinned ~ .app-navigation-entry--pinned[data-v-258871fd] {\n margin-top: 0;\n}\n[data-themes*=highcontrast] .app-navigation-entry[data-v-258871fd]:active {\n background-color: var(--color-primary-element-light-hover) !important;\n}\n.app-navigation-new-item__name[data-v-258871fd] {\n overflow: hidden;\n max-width: 100%;\n white-space: nowrap;\n text-overflow: ellipsis;\n padding-inline-start: 7px;\n font-size: 14px;\n}\n.newItemContainer[data-v-258871fd] {\n width: calc(100% - var(--default-clickable-area));\n margin: auto;\n}`, \"\",{\"version\":3,\"sources\":[\"webpack://./node_modules/@nextcloud/vue/dist/assets/NcAppNavigationNewItem-CYSjj3pD.css\"],\"names\":[],\"mappings\":\"AAAA;;;EAGE;AACF;;;EAGE;AACF;;CAEC;AACD;EACE,aAAa;EACb,kBAAkB;EAClB,oBAAoB;EACpB,mBAAmB;EACnB,uBAAuB;AACzB;;AAEA;;;EAGE;AACF;EACE,kBAAkB;EAClB,aAAa;EACb,cAAc;EACd,eAAe;EACf,sBAAsB;EACtB,WAAW;EACX,yCAAyC;EACzC,+DAA+D;EAC/D,8CAA8C;EAC9C,sEAAsE;AACxE;AACA;EACE,kBAAkB;EAClB,aAAa;EACb,cAAc;EACd,eAAe;EACf,sBAAsB;EACtB,WAAW;AACb;AACA;EACE,aAAa;AACf;AACA;EACE,yDAAyD;AAC3D;AACA;EACE,+DAA+D;AACjE;AACA;EACE,mDAAmD;AACrD;AACA;EACE,+CAA+C;AACjD;AACA;EACE,8CAA8C;AAChD;AACA;EACE,qBAAqB;AACvB;AACA;EACE,yDAAyD;AAC3D;AACA;EACE,yDAAyD;AAC3D;AACA;EACE,uCAAuC;AACzC;AACA;EACE,aAAa;AACf;AACA;EACE,oEAAoE;AACtE;AACA;EACE,YAAY,EAAE,mCAAmC;EACjD,aAAa;EACb,gBAAgB;EAChB,WAAW;EACX,sBAAsB;EACtB,yCAAyC;EACzC,UAAU;EACV,mBAAmB;EACnB,6BAA6B;EAC7B,4BAA4B;EAC5B,4EAA4E;EAC5E,0BAA0B;EAC1B,0CAA0C;AAC5C;AACA;EACE,aAAa;EACb,mBAAmB;EACnB,uCAAuC;EACvC,uBAAuB;EACvB,oCAAoC;EACpC,qCAAqC;EACrC,0BAA0B;EAC1B,4BAA4B;EAC5B,4EAA4E;AAC9E;AACA;EACE,gBAAgB;EAChB,eAAe;EACf,mBAAmB;EACnB,uBAAuB;AACzB;AACA;EACE,iDAAiD;EACjD,YAAY;AACd;AACA;EACE,kDAAkD;EAClD,yCAAyC;EACzC,sEAAsE;AACxE;;AAEA,mCAAmC;AACnC;EACE,wCAAwC;EACxC,kBAAkB;EAClB,aAAa;EACb,cAAc;EACd,sBAAsB;EACtB,WAAW;EACX,sCAAsC;EACtC,6DAA6D;AAC/D;AACA;EACE,oBAAoB;EACpB,eAAe;AACjB;AACA;EACE,qCAAqC;AACvC;;AAEA,oBAAoB;AACpB;EACE,oBAAoB;EACpB,WAAW;EACX,iHAAiH;AACnH;AACA;EACE,kBAAkB;EAClB,gBAAgB;EAChB,WAAW;EACX,mBAAmB;EACnB,uBAAuB;EACvB,0CAA0C;AAC5C;;AAEA,wBAAwB;AACxB;EACE,aAAa;EACb,wCAAwC;EACxC,mBAAmB;EACnB,cAAc;EACd,yBAAyB;AAC3B;AACA;EACE,qBAAqB;AACvB;AACA;EACE,YAAY;AACd;AACA;EACE,yDAAyD;EACzD,aAAa;EACb,mBAAmB;EACnB,cAAc;AAChB;AACA;EACE,YAAY;AACd;AACA;EACE,aAAa;AACf;;AAEA,kBAAkB;AAClB;EACE,YAAY;EACZ,UAAU;AACZ;;AAEA,kBAAkB;AAClB;EACE,YAAY;EACZ,wBAAwB;AAC1B;;AAEA,iBAAiB;AACjB;EACE,QAAQ;EACR,gBAAgB;AAClB;AACA;EACE,aAAa;AACf;AACA;EACE,qEAAqE;AACvE;AACA;EACE,gBAAgB;EAChB,eAAe;EACf,mBAAmB;EACnB,uBAAuB;EACvB,yBAAyB;EACzB,eAAe;AACjB;AACA;EACE,iDAAiD;EACjD,YAAY;AACd\",\"sourcesContent\":[\"/**\\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\\n * SPDX-License-Identifier: AGPL-3.0-or-later\\n */\\n/**\\n * SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors\\n * SPDX-License-Identifier: AGPL-3.0-or-later\\n */\\n/*\\n* Ensure proper alignment of the vue material icons\\n*/\\n.material-design-icon[data-v-258871fd] {\\n display: flex;\\n align-self: center;\\n justify-self: center;\\n align-items: center;\\n justify-content: center;\\n}\\n\\n/**\\n * SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors\\n * SPDX-License-Identifier: AGPL-3.0-or-later\\n */\\n.app-navigation-entry[data-v-258871fd] {\\n position: relative;\\n display: flex;\\n flex-shrink: 0;\\n flex-wrap: wrap;\\n box-sizing: border-box;\\n width: 100%;\\n min-height: var(--default-clickable-area);\\n transition: background-color var(--animation-quick) ease-in-out;\\n transition: background-color 200ms ease-in-out;\\n border-radius: var(--border-radius-element, var(--border-radius-pill));\\n}\\n.app-navigation-entry-wrapper[data-v-258871fd] {\\n position: relative;\\n display: flex;\\n flex-shrink: 0;\\n flex-wrap: wrap;\\n box-sizing: border-box;\\n width: 100%;\\n}\\n.app-navigation-entry-wrapper.app-navigation-entry--collapsible:not(.app-navigation-entry--opened) > ul[data-v-258871fd] {\\n display: none;\\n}\\n.app-navigation-entry.active[data-v-258871fd] {\\n background-color: var(--color-primary-element) !important;\\n}\\n.app-navigation-entry.active[data-v-258871fd]:hover {\\n background-color: var(--color-primary-element-hover) !important;\\n}\\n.app-navigation-entry.active .app-navigation-entry-link[data-v-258871fd], .app-navigation-entry.active .app-navigation-entry-button[data-v-258871fd] {\\n color: var(--color-primary-element-text) !important;\\n}\\n.app-navigation-entry[data-v-258871fd]:focus-within, .app-navigation-entry[data-v-258871fd]:hover {\\n background-color: var(--color-background-hover);\\n}\\n.app-navigation-entry.active .app-navigation-entry__children[data-v-258871fd], .app-navigation-entry:focus-within .app-navigation-entry__children[data-v-258871fd], .app-navigation-entry:hover .app-navigation-entry__children[data-v-258871fd] {\\n background-color: var(--color-main-background);\\n}\\n.app-navigation-entry.active .app-navigation-entry__utils .app-navigation-entry__actions[data-v-258871fd], .app-navigation-entry.app-navigation-entry--deleted .app-navigation-entry__utils .app-navigation-entry__actions[data-v-258871fd], .app-navigation-entry:focus .app-navigation-entry__utils .app-navigation-entry__actions[data-v-258871fd], .app-navigation-entry:focus-within .app-navigation-entry__utils .app-navigation-entry__actions[data-v-258871fd], .app-navigation-entry:hover .app-navigation-entry__utils .app-navigation-entry__actions[data-v-258871fd] {\\n display: inline-block;\\n}\\n.app-navigation-entry .app-navigation-entry__actions[data-v-258871fd]:hover .button-vue {\\n background-color: var(--color-background-dark) !important;\\n}\\n.app-navigation-entry.active .app-navigation-entry__actions[data-v-258871fd]:hover .button-vue {\\n background-color: var(--color-primary-element) !important;\\n}\\n.app-navigation-entry[data-v-258871fd] {\\n /* hide deletion/collapse of subitems */\\n}\\n.app-navigation-entry.app-navigation-entry--deleted > ul[data-v-258871fd] {\\n display: none;\\n}\\n.app-navigation-entry:not(.app-navigation-entry--editing) .app-navigation-entry-link[data-v-258871fd], .app-navigation-entry:not(.app-navigation-entry--editing) .app-navigation-entry-button[data-v-258871fd] {\\n padding-inline-end: calc((var(--default-clickable-area) - 16px) / 2);\\n}\\n.app-navigation-entry .app-navigation-entry-link[data-v-258871fd], .app-navigation-entry .app-navigation-entry-button[data-v-258871fd] {\\n z-index: 100; /* above the bullet to allow click*/\\n display: flex;\\n overflow: hidden;\\n flex: 1 1 0;\\n box-sizing: border-box;\\n min-height: var(--default-clickable-area);\\n padding: 0;\\n white-space: nowrap;\\n color: var(--color-main-text);\\n background-repeat: no-repeat;\\n background-position: calc((var(--default-clickable-area) - 16px) / 2) center;\\n background-size: 16px 16px;\\n line-height: var(--default-clickable-area);\\n}\\n.app-navigation-entry .app-navigation-entry-link .app-navigation-entry-icon[data-v-258871fd], .app-navigation-entry .app-navigation-entry-button .app-navigation-entry-icon[data-v-258871fd] {\\n display: flex;\\n align-items: center;\\n flex: 0 0 var(--default-clickable-area);\\n justify-content: center;\\n width: var(--default-clickable-area);\\n height: var(--default-clickable-area);\\n background-size: 16px 16px;\\n background-repeat: no-repeat;\\n background-position: calc((var(--default-clickable-area) - 16px) / 2) center;\\n}\\n.app-navigation-entry .app-navigation-entry-link .app-navigation-entry__name[data-v-258871fd], .app-navigation-entry .app-navigation-entry-button .app-navigation-entry__name[data-v-258871fd] {\\n overflow: hidden;\\n max-width: 100%;\\n white-space: nowrap;\\n text-overflow: ellipsis;\\n}\\n.app-navigation-entry .app-navigation-entry-link .editingContainer[data-v-258871fd], .app-navigation-entry .app-navigation-entry-button .editingContainer[data-v-258871fd] {\\n width: calc(100% - var(--default-clickable-area));\\n margin: auto;\\n}\\n.app-navigation-entry .app-navigation-entry-link[data-v-258871fd]:focus-visible, .app-navigation-entry .app-navigation-entry-button[data-v-258871fd]:focus-visible {\\n box-shadow: 0 0 0 4px var(--color-main-background);\\n outline: 2px solid var(--color-main-text);\\n border-radius: var(--border-radius-element, var(--border-radius-pill));\\n}\\n\\n/* Second level nesting for lists */\\n.app-navigation-entry__children[data-v-258871fd] {\\n --app-navigation-item-child-offset: 10px;\\n position: relative;\\n display: flex;\\n flex: 0 1 auto;\\n flex-direction: column;\\n width: 100%;\\n gap: var(--default-grid-baseline, 4px);\\n padding-inline-start: var(--app-navigation-item-child-offset);\\n}\\n.app-navigation-entry__children .app-navigation-entry[data-v-258871fd] {\\n display: inline-flex;\\n flex-wrap: wrap;\\n}\\n.app-navigation-entry__children .app-navigation-entry__children .app-navigation-entry__children .app-navigation-entry__children .app-navigation-entry__children .app-navigation-entry__children .app-navigation-entry__children[data-v-258871fd] {\\n --app-navigation-item-child-offset: 0;\\n}\\n\\n/* Deleted entries */\\n.app-navigation-entry__deleted[data-v-258871fd] {\\n display: inline-flex;\\n flex: 1 1 0;\\n padding-inline-start: calc(var(--default-clickable-area) - (var(--default-clickable-area) - 16px) / 2) !important;\\n}\\n.app-navigation-entry__deleted .app-navigation-entry__deleted-description[data-v-258871fd] {\\n position: relative;\\n overflow: hidden;\\n flex: 1 1 0;\\n white-space: nowrap;\\n text-overflow: ellipsis;\\n line-height: var(--default-clickable-area);\\n}\\n\\n/* counter and actions */\\n.app-navigation-entry__utils[data-v-258871fd] {\\n display: flex;\\n min-width: var(--default-clickable-area);\\n align-items: center;\\n flex: 0 1 auto;\\n justify-content: flex-end;\\n}\\n.app-navigation-entry__utils.app-navigation-entry__utils--display-actions .action-item.app-navigation-entry__actions[data-v-258871fd] {\\n display: inline-block;\\n}\\n.app-navigation-entry__utils[data-v-258871fd] {\\n /* counter */\\n}\\n.app-navigation-entry__utils .app-navigation-entry__counter-wrapper[data-v-258871fd] {\\n margin-inline-end: calc(var(--default-grid-baseline) * 2);\\n display: flex;\\n align-items: center;\\n flex: 0 1 auto;\\n}\\n.app-navigation-entry__utils[data-v-258871fd] {\\n /* actions */\\n}\\n.app-navigation-entry__utils .action-item.app-navigation-entry__actions[data-v-258871fd] {\\n display: none;\\n}\\n\\n/* editing state */\\n.app-navigation-entry--editing .app-navigation-entry-edit[data-v-258871fd] {\\n z-index: 250;\\n opacity: 1;\\n}\\n\\n/* deleted state */\\n.app-navigation-entry--deleted .app-navigation-entry-deleted[data-v-258871fd] {\\n z-index: 250;\\n transform: translateX(0);\\n}\\n\\n/* pinned state */\\n.app-navigation-entry--pinned[data-v-258871fd] {\\n order: 2;\\n margin-top: auto;\\n}\\n.app-navigation-entry--pinned ~ .app-navigation-entry--pinned[data-v-258871fd] {\\n margin-top: 0;\\n}\\n[data-themes*=highcontrast] .app-navigation-entry[data-v-258871fd]:active {\\n background-color: var(--color-primary-element-light-hover) !important;\\n}\\n.app-navigation-new-item__name[data-v-258871fd] {\\n overflow: hidden;\\n max-width: 100%;\\n white-space: nowrap;\\n text-overflow: ellipsis;\\n padding-inline-start: 7px;\\n font-size: 14px;\\n}\\n.newItemContainer[data-v-258871fd] {\\n width: calc(100% - var(--default-clickable-area));\\n margin: auto;\\n}\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/**\n * SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/*\n* Ensure proper alignment of the vue material icons\n*/\n.material-design-icon[data-v-9f864ea4] {\n display: flex;\n align-self: center;\n justify-self: center;\n align-items: center;\n justify-content: center;\n}\n.resource[data-v-9f864ea4] {\n display: flex;\n align-items: center;\n height: var(--default-clickable-area);\n}\n.resource__button[data-v-9f864ea4] {\n width: 100% !important;\n justify-content: flex-start !important;\n padding: 0 !important;\n}\n.resource__button[data-v-9f864ea4] .button-vue__wrapper {\n justify-content: flex-start !important;\n}\n.resource__button[data-v-9f864ea4] .button-vue__wrapper .button-vue__text {\n font-weight: normal !important;\n margin-left: 2px !important;\n}\n.resource__icon[data-v-9f864ea4] {\n width: 32px;\n height: 32px;\n background-color: var(--color-text-maxcontrast);\n border-radius: 50%;\n display: flex;\n align-items: center;\n justify-content: center;\n}\n.resource__icon img[data-v-9f864ea4] {\n width: 16px;\n height: 16px;\n filter: var(--background-invert-if-dark);\n}/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/**\n * SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/*\n* Ensure proper alignment of the vue material icons\n*/\n.material-design-icon[data-v-e224f6ac] {\n display: flex;\n align-self: center;\n justify-self: center;\n align-items: center;\n justify-content: center;\n}\n.team-resources__header[data-v-e224f6ac] {\n font-weight: bold;\n margin-bottom: 6px;\n}\n.related-team[data-v-e224f6ac] {\n border-radius: var(--border-radius-rounded);\n border: 2px solid var(--color-border-dark);\n margin-bottom: 6px;\n}\n.related-team__open[data-v-e224f6ac] {\n border-color: var(--color-primary-element);\n}\n.related-team__header[data-v-e224f6ac] {\n padding: 6px;\n padding-right: 24px;\n display: flex;\n gap: 12px;\n}\n.related-team__name[data-v-e224f6ac] {\n display: flex;\n flex-grow: 1;\n align-items: center;\n gap: 12px;\n padding: 6px 12px;\n font-weight: bold;\n margin: 0;\n}\n.related-team .related-team-provider[data-v-e224f6ac] {\n padding: 6px 12px;\n}\n.related-team .related-team-provider__name[data-v-e224f6ac] {\n font-weight: bold;\n margin-bottom: 3px;\n}\n.related-team .related-team-provider__link[data-v-e224f6ac] {\n display: flex;\n gap: 12px;\n padding: 6px 12px;\n font-weight: bold;\n}\n.related-team .related-team-resource__link[data-v-e224f6ac] {\n display: flex;\n gap: 12px;\n height: var(--default-clickable-area);\n align-items: center;\n border-radius: var(--border-radius-large);\n}\n.related-team .related-team-resource__link[data-v-e224f6ac]:hover {\n background-color: var(--color-background-hover);\n}\n.related-team .related-team-resource__link[data-v-e224f6ac]:focus {\n background-color: var(--color-background-hover);\n outline: 2px solid var(--color-primary-element);\n}\n.related-team .related-team-resource .resource__icon[data-v-e224f6ac] {\n width: var(--default-clickable-area);\n height: var(--default-clickable-area);\n display: flex;\n align-items: center;\n justify-content: center;\n text-align: center;\n}\n.related-team .related-team-resource .resource__icon > img[data-v-e224f6ac] {\n border-radius: var(--border-radius-pill);\n overflow: hidden;\n width: 32px;\n height: 32px;\n}/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/**\n * SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/*\n* Ensure proper alignment of the vue material icons\n*/\n.material-design-icon[data-v-eaa109ec] {\n display: flex;\n align-self: center;\n justify-self: center;\n align-items: center;\n justify-content: center;\n}\n.related-resources__header h5[data-v-eaa109ec] {\n font-weight: bold;\n margin-bottom: 6px;\n}\n.related-resources__header p[data-v-eaa109ec] {\n color: var(--color-text-maxcontrast);\n}`, \"\",{\"version\":3,\"sources\":[\"webpack://./node_modules/@nextcloud/vue/dist/assets/NcRelatedResourcesPanel-BgMc8bue.css\"],\"names\":[],\"mappings\":\"AAAA;;;EAGE;AACF;;;EAGE;AACF;;CAEC;AACD;EACE,aAAa;EACb,kBAAkB;EAClB,oBAAoB;EACpB,mBAAmB;EACnB,uBAAuB;AACzB;AACA;EACE,aAAa;EACb,mBAAmB;EACnB,qCAAqC;AACvC;AACA;EACE,sBAAsB;EACtB,sCAAsC;EACtC,qBAAqB;AACvB;AACA;EACE,sCAAsC;AACxC;AACA;EACE,8BAA8B;EAC9B,2BAA2B;AAC7B;AACA;EACE,WAAW;EACX,YAAY;EACZ,+CAA+C;EAC/C,kBAAkB;EAClB,aAAa;EACb,mBAAmB;EACnB,uBAAuB;AACzB;AACA;EACE,WAAW;EACX,YAAY;EACZ,wCAAwC;AAC1C,CAAC;;;EAGC;AACF;;;EAGE;AACF;;CAEC;AACD;EACE,aAAa;EACb,kBAAkB;EAClB,oBAAoB;EACpB,mBAAmB;EACnB,uBAAuB;AACzB;AACA;EACE,iBAAiB;EACjB,kBAAkB;AACpB;AACA;EACE,2CAA2C;EAC3C,0CAA0C;EAC1C,kBAAkB;AACpB;AACA;EACE,0CAA0C;AAC5C;AACA;EACE,YAAY;EACZ,mBAAmB;EACnB,aAAa;EACb,SAAS;AACX;AACA;EACE,aAAa;EACb,YAAY;EACZ,mBAAmB;EACnB,SAAS;EACT,iBAAiB;EACjB,iBAAiB;EACjB,SAAS;AACX;AACA;EACE,iBAAiB;AACnB;AACA;EACE,iBAAiB;EACjB,kBAAkB;AACpB;AACA;EACE,aAAa;EACb,SAAS;EACT,iBAAiB;EACjB,iBAAiB;AACnB;AACA;EACE,aAAa;EACb,SAAS;EACT,qCAAqC;EACrC,mBAAmB;EACnB,yCAAyC;AAC3C;AACA;EACE,+CAA+C;AACjD;AACA;EACE,+CAA+C;EAC/C,+CAA+C;AACjD;AACA;EACE,oCAAoC;EACpC,qCAAqC;EACrC,aAAa;EACb,mBAAmB;EACnB,uBAAuB;EACvB,kBAAkB;AACpB;AACA;EACE,wCAAwC;EACxC,gBAAgB;EAChB,WAAW;EACX,YAAY;AACd,CAAC;;;EAGC;AACF;;;EAGE;AACF;;CAEC;AACD;EACE,aAAa;EACb,kBAAkB;EAClB,oBAAoB;EACpB,mBAAmB;EACnB,uBAAuB;AACzB;AACA;EACE,iBAAiB;EACjB,kBAAkB;AACpB;AACA;EACE,oCAAoC;AACtC\",\"sourcesContent\":[\"/**\\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\\n * SPDX-License-Identifier: AGPL-3.0-or-later\\n */\\n/**\\n * SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors\\n * SPDX-License-Identifier: AGPL-3.0-or-later\\n */\\n/*\\n* Ensure proper alignment of the vue material icons\\n*/\\n.material-design-icon[data-v-9f864ea4] {\\n display: flex;\\n align-self: center;\\n justify-self: center;\\n align-items: center;\\n justify-content: center;\\n}\\n.resource[data-v-9f864ea4] {\\n display: flex;\\n align-items: center;\\n height: var(--default-clickable-area);\\n}\\n.resource__button[data-v-9f864ea4] {\\n width: 100% !important;\\n justify-content: flex-start !important;\\n padding: 0 !important;\\n}\\n.resource__button[data-v-9f864ea4] .button-vue__wrapper {\\n justify-content: flex-start !important;\\n}\\n.resource__button[data-v-9f864ea4] .button-vue__wrapper .button-vue__text {\\n font-weight: normal !important;\\n margin-left: 2px !important;\\n}\\n.resource__icon[data-v-9f864ea4] {\\n width: 32px;\\n height: 32px;\\n background-color: var(--color-text-maxcontrast);\\n border-radius: 50%;\\n display: flex;\\n align-items: center;\\n justify-content: center;\\n}\\n.resource__icon img[data-v-9f864ea4] {\\n width: 16px;\\n height: 16px;\\n filter: var(--background-invert-if-dark);\\n}/**\\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\\n * SPDX-License-Identifier: AGPL-3.0-or-later\\n */\\n/**\\n * SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors\\n * SPDX-License-Identifier: AGPL-3.0-or-later\\n */\\n/*\\n* Ensure proper alignment of the vue material icons\\n*/\\n.material-design-icon[data-v-e224f6ac] {\\n display: flex;\\n align-self: center;\\n justify-self: center;\\n align-items: center;\\n justify-content: center;\\n}\\n.team-resources__header[data-v-e224f6ac] {\\n font-weight: bold;\\n margin-bottom: 6px;\\n}\\n.related-team[data-v-e224f6ac] {\\n border-radius: var(--border-radius-rounded);\\n border: 2px solid var(--color-border-dark);\\n margin-bottom: 6px;\\n}\\n.related-team__open[data-v-e224f6ac] {\\n border-color: var(--color-primary-element);\\n}\\n.related-team__header[data-v-e224f6ac] {\\n padding: 6px;\\n padding-right: 24px;\\n display: flex;\\n gap: 12px;\\n}\\n.related-team__name[data-v-e224f6ac] {\\n display: flex;\\n flex-grow: 1;\\n align-items: center;\\n gap: 12px;\\n padding: 6px 12px;\\n font-weight: bold;\\n margin: 0;\\n}\\n.related-team .related-team-provider[data-v-e224f6ac] {\\n padding: 6px 12px;\\n}\\n.related-team .related-team-provider__name[data-v-e224f6ac] {\\n font-weight: bold;\\n margin-bottom: 3px;\\n}\\n.related-team .related-team-provider__link[data-v-e224f6ac] {\\n display: flex;\\n gap: 12px;\\n padding: 6px 12px;\\n font-weight: bold;\\n}\\n.related-team .related-team-resource__link[data-v-e224f6ac] {\\n display: flex;\\n gap: 12px;\\n height: var(--default-clickable-area);\\n align-items: center;\\n border-radius: var(--border-radius-large);\\n}\\n.related-team .related-team-resource__link[data-v-e224f6ac]:hover {\\n background-color: var(--color-background-hover);\\n}\\n.related-team .related-team-resource__link[data-v-e224f6ac]:focus {\\n background-color: var(--color-background-hover);\\n outline: 2px solid var(--color-primary-element);\\n}\\n.related-team .related-team-resource .resource__icon[data-v-e224f6ac] {\\n width: var(--default-clickable-area);\\n height: var(--default-clickable-area);\\n display: flex;\\n align-items: center;\\n justify-content: center;\\n text-align: center;\\n}\\n.related-team .related-team-resource .resource__icon > img[data-v-e224f6ac] {\\n border-radius: var(--border-radius-pill);\\n overflow: hidden;\\n width: 32px;\\n height: 32px;\\n}/**\\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\\n * SPDX-License-Identifier: AGPL-3.0-or-later\\n */\\n/**\\n * SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors\\n * SPDX-License-Identifier: AGPL-3.0-or-later\\n */\\n/*\\n* Ensure proper alignment of the vue material icons\\n*/\\n.material-design-icon[data-v-eaa109ec] {\\n display: flex;\\n align-self: center;\\n justify-self: center;\\n align-items: center;\\n justify-content: center;\\n}\\n.related-resources__header h5[data-v-eaa109ec] {\\n font-weight: bold;\\n margin-bottom: 6px;\\n}\\n.related-resources__header p[data-v-eaa109ec] {\\n color: var(--color-text-maxcontrast);\\n}\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/**\n * SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/*\n* Ensure proper alignment of the vue material icons\n*/\n.material-design-icon[data-v-018dbbe8] {\n display: flex;\n align-self: center;\n justify-self: center;\n align-items: center;\n justify-content: center;\n}\n\n/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/**\n * color-text-lighter\t\tnormal state\n * color-text-lighter\t\tactive state\n * color-text-maxcontrast \tdisabled state\n */\n/* Default global values */\nbutton[data-v-018dbbe8]:not(.button-vue),\ninput[data-v-018dbbe8]:not([type=range]),\ntextarea[data-v-018dbbe8] {\n margin: 0;\n padding: 7px 6px;\n cursor: text;\n color: var(--color-text-lighter);\n border: 1px solid var(--color-border-dark);\n border-radius: var(--border-radius);\n outline: none;\n background-color: var(--color-main-background);\n font-size: 13px;\n}\nbutton[data-v-018dbbe8]:not(.button-vue):not(:disabled):not(.primary):hover, button[data-v-018dbbe8]:not(.button-vue):not(:disabled):not(.primary):focus, button:not(.button-vue):not(:disabled):not(.primary).active[data-v-018dbbe8],\ninput[data-v-018dbbe8]:not([type=range]):not(:disabled):not(.primary):hover,\ninput[data-v-018dbbe8]:not([type=range]):not(:disabled):not(.primary):focus,\ninput:not([type=range]):not(:disabled):not(.primary).active[data-v-018dbbe8],\ntextarea[data-v-018dbbe8]:not(:disabled):not(.primary):hover,\ntextarea[data-v-018dbbe8]:not(:disabled):not(.primary):focus,\ntextarea:not(:disabled):not(.primary).active[data-v-018dbbe8] {\n /* active class used for multiselect */\n border-color: var(--color-primary-element);\n outline: none;\n}\nbutton[data-v-018dbbe8]:not(.button-vue):not(:disabled):not(.primary):active,\ninput[data-v-018dbbe8]:not([type=range]):not(:disabled):not(.primary):active,\ntextarea[data-v-018dbbe8]:not(:disabled):not(.primary):active {\n color: var(--color-text-light);\n outline: none;\n background-color: var(--color-main-background);\n}\nbutton[data-v-018dbbe8]:not(.button-vue):disabled,\ninput[data-v-018dbbe8]:not([type=range]):disabled,\ntextarea[data-v-018dbbe8]:disabled {\n cursor: default;\n opacity: 0.5;\n color: var(--color-text-maxcontrast);\n background-color: var(--color-background-dark);\n}\nbutton[data-v-018dbbe8]:not(.button-vue):required,\ninput[data-v-018dbbe8]:not([type=range]):required,\ntextarea[data-v-018dbbe8]:required {\n box-shadow: none;\n}\nbutton[data-v-018dbbe8]:not(.button-vue):invalid,\ninput[data-v-018dbbe8]:not([type=range]):invalid,\ntextarea[data-v-018dbbe8]:invalid {\n border-color: var(--color-border-error, var(--color-error));\n box-shadow: none !important;\n}\nbutton[data-v-018dbbe8]:not(.button-vue),\ninput[data-v-018dbbe8]:not([type=range]),\ntextarea[data-v-018dbbe8] {\n /* Primary action button, use sparingly */\n}\nbutton:not(.button-vue).primary[data-v-018dbbe8],\ninput:not([type=range]).primary[data-v-018dbbe8],\ntextarea.primary[data-v-018dbbe8] {\n cursor: pointer;\n color: var(--color-primary-element-text);\n border-color: var(--color-primary-element);\n background-color: var(--color-primary-element);\n}\nbutton:not(.button-vue).primary[data-v-018dbbe8]:not(:disabled):hover, button:not(.button-vue).primary[data-v-018dbbe8]:not(:disabled):focus, button:not(.button-vue).primary[data-v-018dbbe8]:not(:disabled):active,\ninput:not([type=range]).primary[data-v-018dbbe8]:not(:disabled):hover,\ninput:not([type=range]).primary[data-v-018dbbe8]:not(:disabled):focus,\ninput:not([type=range]).primary[data-v-018dbbe8]:not(:disabled):active,\ntextarea.primary[data-v-018dbbe8]:not(:disabled):hover,\ntextarea.primary[data-v-018dbbe8]:not(:disabled):focus,\ntextarea.primary[data-v-018dbbe8]:not(:disabled):active {\n border-color: var(--color-primary-element-light);\n background-color: var(--color-primary-element-light);\n}\nbutton:not(.button-vue).primary[data-v-018dbbe8]:not(:disabled):active,\ninput:not([type=range]).primary[data-v-018dbbe8]:not(:disabled):active,\ntextarea.primary[data-v-018dbbe8]:not(:disabled):active {\n color: var(--color-primary-element-text-dark);\n}\nbutton:not(.button-vue).primary[data-v-018dbbe8]:disabled,\ninput:not([type=range]).primary[data-v-018dbbe8]:disabled,\ntextarea.primary[data-v-018dbbe8]:disabled {\n cursor: default;\n color: var(--color-primary-element-text-dark);\n background-color: var(--color-primary-element);\n}\n\n/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nli.action[data-v-018dbbe8]:hover, li.action.active[data-v-018dbbe8] {\n border-radius: 6px;\n padding: 0;\n}\nli.action[data-v-018dbbe8]:hover {\n background-color: var(--color-background-hover);\n}\n.action--disabled[data-v-018dbbe8] {\n pointer-events: none;\n opacity: 0.5;\n}\n.action--disabled[data-v-018dbbe8]:hover, .action--disabled[data-v-018dbbe8]:focus {\n cursor: default;\n opacity: 0.5;\n}\n.action--disabled *[data-v-018dbbe8] {\n opacity: 1 !important;\n}\n.action-text-editable[data-v-018dbbe8] {\n display: flex;\n align-items: flex-start;\n width: 100%;\n height: auto;\n margin: 0;\n padding: 0;\n cursor: pointer;\n white-space: nowrap;\n color: var(--color-main-text);\n border: 0;\n border-radius: 0;\n background-color: transparent;\n box-shadow: none;\n font-weight: normal;\n line-height: var(--default-clickable-area);\n}\n.action-text-editable > span[data-v-018dbbe8] {\n cursor: pointer;\n white-space: nowrap;\n}\n.action-text-editable__icon[data-v-018dbbe8] {\n min-width: 0; /* Overwrite icons*/\n min-height: 0;\n /* Keep padding to define the width to\n \tassure correct position of a possible text */\n padding: calc(var(--default-clickable-area) / 2) 0 calc(var(--default-clickable-area) / 2) var(--default-clickable-area);\n background-position: calc((var(--default-clickable-area) - 16px) / 2) center;\n background-size: 16px;\n}\n.action-text-editable[data-v-018dbbe8] .material-design-icon {\n width: var(--default-clickable-area);\n height: var(--default-clickable-area);\n opacity: 1;\n}\n.action-text-editable[data-v-018dbbe8] .material-design-icon .material-design-icon__svg {\n vertical-align: middle;\n}\n.action-text-editable__form[data-v-018dbbe8] {\n display: flex;\n flex: 1 1 auto;\n flex-direction: column;\n position: relative;\n margin: 4px 0;\n padding-inline-end: calc((var(--default-clickable-area) - 16px) / 2);\n}\n.action-text-editable__submit[data-v-018dbbe8] {\n position: absolute;\n inset-inline-start: 0;\n top: auto;\n width: 1px;\n height: 1px;\n overflow: hidden;\n z-index: -1;\n opacity: 0;\n}\n.action-text-editable__label[data-v-018dbbe8] {\n display: flex;\n align-items: center;\n justify-content: center;\n position: absolute;\n inset-inline-end: calc((var(--default-clickable-area) - 16px) / 2 + 1px);\n bottom: 1px;\n width: calc(var(--default-clickable-area) - 8px);\n height: calc(var(--default-clickable-area) - 8px);\n box-sizing: border-box;\n margin: 0;\n padding: 7px 6px;\n border: 0;\n border-radius: 50%;\n /* Avoid background under border */\n background-color: var(--color-main-background);\n background-clip: padding-box;\n}\n.action-text-editable__label[data-v-018dbbe8], .action-text-editable__label *[data-v-018dbbe8] {\n cursor: pointer;\n}\n.action-text-editable[data-v-018dbbe8] {\n /* Inputs inside popover supports text, submit & reset */\n}\n.action-text-editable__textarea[data-v-018dbbe8] {\n flex: 1 1 auto;\n color: inherit;\n border-color: var(--color-border-maxcontrast);\n min-height: calc(var(--default-clickable-area) * 2 - 8px); /* twice the element margin-y */\n max-height: calc(var(--default-clickable-area) * 3 - 8px); /* twice the element margin-y */\n min-width: calc(var(--default-clickable-area) * 4);\n width: 100% !important;\n margin: 0;\n}\n.action-text-editable__textarea[data-v-018dbbe8]:disabled {\n cursor: default;\n}\n.action-text-editable__textarea[data-v-018dbbe8] {\n /* only show confirm borders if input is not focused */\n}\n.action-text-editable__textarea:not(:active):not(:hover):not(:focus):invalid + .action-text-editable__label[data-v-018dbbe8] {\n background-color: var(--color-error);\n}\n.action-text-editable__textarea:not(:active):not(:hover):not(:focus):not(:disabled) + .action-text-editable__label[data-v-018dbbe8]:active, .action-text-editable__textarea:not(:active):not(:hover):not(:focus):not(:disabled) + .action-text-editable__label[data-v-018dbbe8]:hover, .action-text-editable__textarea:not(:active):not(:hover):not(:focus):not(:disabled) + .action-text-editable__label[data-v-018dbbe8]:focus {\n background-color: var(--color-primary-element);\n color: var(--color-primary-element-text);\n}\n.action-text-editable__textarea:active:not(:disabled) + .action-text-editable__label[data-v-018dbbe8], .action-text-editable__textarea:hover:not(:disabled) + .action-text-editable__label[data-v-018dbbe8], .action-text-editable__textarea:focus:not(:disabled) + .action-text-editable__label[data-v-018dbbe8] {\n /* above previous input */\n z-index: 2;\n border-color: var(--color-primary-element);\n border-inline-start-color: transparent;\n}\nli:last-child > .action-text-editable[data-v-018dbbe8] {\n margin-bottom: calc((var(--default-clickable-area) - 16px) / 2 - 4px);\n}\nli:first-child > .action-text-editable[data-v-018dbbe8] {\n margin-top: calc((var(--default-clickable-area) - 16px) / 2 - 4px);\n}`, \"\",{\"version\":3,\"sources\":[\"webpack://./node_modules/@nextcloud/vue/dist/assets/NcActionTextEditable-BCmDMuUg.css\"],\"names\":[],\"mappings\":\"AAAA;;;EAGE;AACF;;;EAGE;AACF;;CAEC;AACD;EACE,aAAa;EACb,kBAAkB;EAClB,oBAAoB;EACpB,mBAAmB;EACnB,uBAAuB;AACzB;;AAEA;;;EAGE;AACF;;;;EAIE;AACF,0BAA0B;AAC1B;;;EAGE,SAAS;EACT,gBAAgB;EAChB,YAAY;EACZ,gCAAgC;EAChC,0CAA0C;EAC1C,mCAAmC;EACnC,aAAa;EACb,8CAA8C;EAC9C,eAAe;AACjB;AACA;;;;;;;EAOE,sCAAsC;EACtC,0CAA0C;EAC1C,aAAa;AACf;AACA;;;EAGE,8BAA8B;EAC9B,aAAa;EACb,8CAA8C;AAChD;AACA;;;EAGE,eAAe;EACf,YAAY;EACZ,oCAAoC;EACpC,8CAA8C;AAChD;AACA;;;EAGE,gBAAgB;AAClB;AACA;;;EAGE,2DAA2D;EAC3D,2BAA2B;AAC7B;AACA;;;EAGE,yCAAyC;AAC3C;AACA;;;EAGE,eAAe;EACf,wCAAwC;EACxC,0CAA0C;EAC1C,8CAA8C;AAChD;AACA;;;;;;;EAOE,gDAAgD;EAChD,oDAAoD;AACtD;AACA;;;EAGE,6CAA6C;AAC/C;AACA;;;EAGE,eAAe;EACf,6CAA6C;EAC7C,8CAA8C;AAChD;;AAEA;;;EAGE;AACF;EACE,kBAAkB;EAClB,UAAU;AACZ;AACA;EACE,+CAA+C;AACjD;AACA;EACE,oBAAoB;EACpB,YAAY;AACd;AACA;EACE,eAAe;EACf,YAAY;AACd;AACA;EACE,qBAAqB;AACvB;AACA;EACE,aAAa;EACb,uBAAuB;EACvB,WAAW;EACX,YAAY;EACZ,SAAS;EACT,UAAU;EACV,eAAe;EACf,mBAAmB;EACnB,6BAA6B;EAC7B,SAAS;EACT,gBAAgB;EAChB,6BAA6B;EAC7B,gBAAgB;EAChB,mBAAmB;EACnB,0CAA0C;AAC5C;AACA;EACE,eAAe;EACf,mBAAmB;AACrB;AACA;EACE,YAAY,EAAE,mBAAmB;EACjC,aAAa;EACb;+CAC6C;EAC7C,wHAAwH;EACxH,4EAA4E;EAC5E,qBAAqB;AACvB;AACA;EACE,oCAAoC;EACpC,qCAAqC;EACrC,UAAU;AACZ;AACA;EACE,sBAAsB;AACxB;AACA;EACE,aAAa;EACb,cAAc;EACd,sBAAsB;EACtB,kBAAkB;EAClB,aAAa;EACb,oEAAoE;AACtE;AACA;EACE,kBAAkB;EAClB,qBAAqB;EACrB,SAAS;EACT,UAAU;EACV,WAAW;EACX,gBAAgB;EAChB,WAAW;EACX,UAAU;AACZ;AACA;EACE,aAAa;EACb,mBAAmB;EACnB,uBAAuB;EACvB,kBAAkB;EAClB,wEAAwE;EACxE,WAAW;EACX,gDAAgD;EAChD,iDAAiD;EACjD,sBAAsB;EACtB,SAAS;EACT,gBAAgB;EAChB,SAAS;EACT,kBAAkB;EAClB,kCAAkC;EAClC,8CAA8C;EAC9C,4BAA4B;AAC9B;AACA;EACE,eAAe;AACjB;AACA;EACE,wDAAwD;AAC1D;AACA;EACE,cAAc;EACd,cAAc;EACd,6CAA6C;EAC7C,yDAAyD,EAAE,+BAA+B;EAC1F,yDAAyD,EAAE,+BAA+B;EAC1F,kDAAkD;EAClD,sBAAsB;EACtB,SAAS;AACX;AACA;EACE,eAAe;AACjB;AACA;EACE,sDAAsD;AACxD;AACA;EACE,oCAAoC;AACtC;AACA;EACE,8CAA8C;EAC9C,wCAAwC;AAC1C;AACA;EACE,yBAAyB;EACzB,UAAU;EACV,0CAA0C;EAC1C,sCAAsC;AACxC;AACA;EACE,qEAAqE;AACvE;AACA;EACE,kEAAkE;AACpE\",\"sourcesContent\":[\"/**\\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\\n * SPDX-License-Identifier: AGPL-3.0-or-later\\n */\\n/**\\n * SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors\\n * SPDX-License-Identifier: AGPL-3.0-or-later\\n */\\n/*\\n* Ensure proper alignment of the vue material icons\\n*/\\n.material-design-icon[data-v-018dbbe8] {\\n display: flex;\\n align-self: center;\\n justify-self: center;\\n align-items: center;\\n justify-content: center;\\n}\\n\\n/**\\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\\n * SPDX-License-Identifier: AGPL-3.0-or-later\\n */\\n/**\\n * color-text-lighter\\t\\tnormal state\\n * color-text-lighter\\t\\tactive state\\n * color-text-maxcontrast \\tdisabled state\\n */\\n/* Default global values */\\nbutton[data-v-018dbbe8]:not(.button-vue),\\ninput[data-v-018dbbe8]:not([type=range]),\\ntextarea[data-v-018dbbe8] {\\n margin: 0;\\n padding: 7px 6px;\\n cursor: text;\\n color: var(--color-text-lighter);\\n border: 1px solid var(--color-border-dark);\\n border-radius: var(--border-radius);\\n outline: none;\\n background-color: var(--color-main-background);\\n font-size: 13px;\\n}\\nbutton[data-v-018dbbe8]:not(.button-vue):not(:disabled):not(.primary):hover, button[data-v-018dbbe8]:not(.button-vue):not(:disabled):not(.primary):focus, button:not(.button-vue):not(:disabled):not(.primary).active[data-v-018dbbe8],\\ninput[data-v-018dbbe8]:not([type=range]):not(:disabled):not(.primary):hover,\\ninput[data-v-018dbbe8]:not([type=range]):not(:disabled):not(.primary):focus,\\ninput:not([type=range]):not(:disabled):not(.primary).active[data-v-018dbbe8],\\ntextarea[data-v-018dbbe8]:not(:disabled):not(.primary):hover,\\ntextarea[data-v-018dbbe8]:not(:disabled):not(.primary):focus,\\ntextarea:not(:disabled):not(.primary).active[data-v-018dbbe8] {\\n /* active class used for multiselect */\\n border-color: var(--color-primary-element);\\n outline: none;\\n}\\nbutton[data-v-018dbbe8]:not(.button-vue):not(:disabled):not(.primary):active,\\ninput[data-v-018dbbe8]:not([type=range]):not(:disabled):not(.primary):active,\\ntextarea[data-v-018dbbe8]:not(:disabled):not(.primary):active {\\n color: var(--color-text-light);\\n outline: none;\\n background-color: var(--color-main-background);\\n}\\nbutton[data-v-018dbbe8]:not(.button-vue):disabled,\\ninput[data-v-018dbbe8]:not([type=range]):disabled,\\ntextarea[data-v-018dbbe8]:disabled {\\n cursor: default;\\n opacity: 0.5;\\n color: var(--color-text-maxcontrast);\\n background-color: var(--color-background-dark);\\n}\\nbutton[data-v-018dbbe8]:not(.button-vue):required,\\ninput[data-v-018dbbe8]:not([type=range]):required,\\ntextarea[data-v-018dbbe8]:required {\\n box-shadow: none;\\n}\\nbutton[data-v-018dbbe8]:not(.button-vue):invalid,\\ninput[data-v-018dbbe8]:not([type=range]):invalid,\\ntextarea[data-v-018dbbe8]:invalid {\\n border-color: var(--color-border-error, var(--color-error));\\n box-shadow: none !important;\\n}\\nbutton[data-v-018dbbe8]:not(.button-vue),\\ninput[data-v-018dbbe8]:not([type=range]),\\ntextarea[data-v-018dbbe8] {\\n /* Primary action button, use sparingly */\\n}\\nbutton:not(.button-vue).primary[data-v-018dbbe8],\\ninput:not([type=range]).primary[data-v-018dbbe8],\\ntextarea.primary[data-v-018dbbe8] {\\n cursor: pointer;\\n color: var(--color-primary-element-text);\\n border-color: var(--color-primary-element);\\n background-color: var(--color-primary-element);\\n}\\nbutton:not(.button-vue).primary[data-v-018dbbe8]:not(:disabled):hover, button:not(.button-vue).primary[data-v-018dbbe8]:not(:disabled):focus, button:not(.button-vue).primary[data-v-018dbbe8]:not(:disabled):active,\\ninput:not([type=range]).primary[data-v-018dbbe8]:not(:disabled):hover,\\ninput:not([type=range]).primary[data-v-018dbbe8]:not(:disabled):focus,\\ninput:not([type=range]).primary[data-v-018dbbe8]:not(:disabled):active,\\ntextarea.primary[data-v-018dbbe8]:not(:disabled):hover,\\ntextarea.primary[data-v-018dbbe8]:not(:disabled):focus,\\ntextarea.primary[data-v-018dbbe8]:not(:disabled):active {\\n border-color: var(--color-primary-element-light);\\n background-color: var(--color-primary-element-light);\\n}\\nbutton:not(.button-vue).primary[data-v-018dbbe8]:not(:disabled):active,\\ninput:not([type=range]).primary[data-v-018dbbe8]:not(:disabled):active,\\ntextarea.primary[data-v-018dbbe8]:not(:disabled):active {\\n color: var(--color-primary-element-text-dark);\\n}\\nbutton:not(.button-vue).primary[data-v-018dbbe8]:disabled,\\ninput:not([type=range]).primary[data-v-018dbbe8]:disabled,\\ntextarea.primary[data-v-018dbbe8]:disabled {\\n cursor: default;\\n color: var(--color-primary-element-text-dark);\\n background-color: var(--color-primary-element);\\n}\\n\\n/**\\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\\n * SPDX-License-Identifier: AGPL-3.0-or-later\\n */\\nli.action[data-v-018dbbe8]:hover, li.action.active[data-v-018dbbe8] {\\n border-radius: 6px;\\n padding: 0;\\n}\\nli.action[data-v-018dbbe8]:hover {\\n background-color: var(--color-background-hover);\\n}\\n.action--disabled[data-v-018dbbe8] {\\n pointer-events: none;\\n opacity: 0.5;\\n}\\n.action--disabled[data-v-018dbbe8]:hover, .action--disabled[data-v-018dbbe8]:focus {\\n cursor: default;\\n opacity: 0.5;\\n}\\n.action--disabled *[data-v-018dbbe8] {\\n opacity: 1 !important;\\n}\\n.action-text-editable[data-v-018dbbe8] {\\n display: flex;\\n align-items: flex-start;\\n width: 100%;\\n height: auto;\\n margin: 0;\\n padding: 0;\\n cursor: pointer;\\n white-space: nowrap;\\n color: var(--color-main-text);\\n border: 0;\\n border-radius: 0;\\n background-color: transparent;\\n box-shadow: none;\\n font-weight: normal;\\n line-height: var(--default-clickable-area);\\n}\\n.action-text-editable > span[data-v-018dbbe8] {\\n cursor: pointer;\\n white-space: nowrap;\\n}\\n.action-text-editable__icon[data-v-018dbbe8] {\\n min-width: 0; /* Overwrite icons*/\\n min-height: 0;\\n /* Keep padding to define the width to\\n \\tassure correct position of a possible text */\\n padding: calc(var(--default-clickable-area) / 2) 0 calc(var(--default-clickable-area) / 2) var(--default-clickable-area);\\n background-position: calc((var(--default-clickable-area) - 16px) / 2) center;\\n background-size: 16px;\\n}\\n.action-text-editable[data-v-018dbbe8] .material-design-icon {\\n width: var(--default-clickable-area);\\n height: var(--default-clickable-area);\\n opacity: 1;\\n}\\n.action-text-editable[data-v-018dbbe8] .material-design-icon .material-design-icon__svg {\\n vertical-align: middle;\\n}\\n.action-text-editable__form[data-v-018dbbe8] {\\n display: flex;\\n flex: 1 1 auto;\\n flex-direction: column;\\n position: relative;\\n margin: 4px 0;\\n padding-inline-end: calc((var(--default-clickable-area) - 16px) / 2);\\n}\\n.action-text-editable__submit[data-v-018dbbe8] {\\n position: absolute;\\n inset-inline-start: 0;\\n top: auto;\\n width: 1px;\\n height: 1px;\\n overflow: hidden;\\n z-index: -1;\\n opacity: 0;\\n}\\n.action-text-editable__label[data-v-018dbbe8] {\\n display: flex;\\n align-items: center;\\n justify-content: center;\\n position: absolute;\\n inset-inline-end: calc((var(--default-clickable-area) - 16px) / 2 + 1px);\\n bottom: 1px;\\n width: calc(var(--default-clickable-area) - 8px);\\n height: calc(var(--default-clickable-area) - 8px);\\n box-sizing: border-box;\\n margin: 0;\\n padding: 7px 6px;\\n border: 0;\\n border-radius: 50%;\\n /* Avoid background under border */\\n background-color: var(--color-main-background);\\n background-clip: padding-box;\\n}\\n.action-text-editable__label[data-v-018dbbe8], .action-text-editable__label *[data-v-018dbbe8] {\\n cursor: pointer;\\n}\\n.action-text-editable[data-v-018dbbe8] {\\n /* Inputs inside popover supports text, submit & reset */\\n}\\n.action-text-editable__textarea[data-v-018dbbe8] {\\n flex: 1 1 auto;\\n color: inherit;\\n border-color: var(--color-border-maxcontrast);\\n min-height: calc(var(--default-clickable-area) * 2 - 8px); /* twice the element margin-y */\\n max-height: calc(var(--default-clickable-area) * 3 - 8px); /* twice the element margin-y */\\n min-width: calc(var(--default-clickable-area) * 4);\\n width: 100% !important;\\n margin: 0;\\n}\\n.action-text-editable__textarea[data-v-018dbbe8]:disabled {\\n cursor: default;\\n}\\n.action-text-editable__textarea[data-v-018dbbe8] {\\n /* only show confirm borders if input is not focused */\\n}\\n.action-text-editable__textarea:not(:active):not(:hover):not(:focus):invalid + .action-text-editable__label[data-v-018dbbe8] {\\n background-color: var(--color-error);\\n}\\n.action-text-editable__textarea:not(:active):not(:hover):not(:focus):not(:disabled) + .action-text-editable__label[data-v-018dbbe8]:active, .action-text-editable__textarea:not(:active):not(:hover):not(:focus):not(:disabled) + .action-text-editable__label[data-v-018dbbe8]:hover, .action-text-editable__textarea:not(:active):not(:hover):not(:focus):not(:disabled) + .action-text-editable__label[data-v-018dbbe8]:focus {\\n background-color: var(--color-primary-element);\\n color: var(--color-primary-element-text);\\n}\\n.action-text-editable__textarea:active:not(:disabled) + .action-text-editable__label[data-v-018dbbe8], .action-text-editable__textarea:hover:not(:disabled) + .action-text-editable__label[data-v-018dbbe8], .action-text-editable__textarea:focus:not(:disabled) + .action-text-editable__label[data-v-018dbbe8] {\\n /* above previous input */\\n z-index: 2;\\n border-color: var(--color-primary-element);\\n border-inline-start-color: transparent;\\n}\\nli:last-child > .action-text-editable[data-v-018dbbe8] {\\n margin-bottom: calc((var(--default-clickable-area) - 16px) / 2 - 4px);\\n}\\nli:first-child > .action-text-editable[data-v-018dbbe8] {\\n margin-top: calc((var(--default-clickable-area) - 16px) / 2 - 4px);\\n}\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","import { getBuilder } from \"@nextcloud/browser-storage\";\nimport { EmojiIndex, frequently } from \"emoji-mart-vue-fast\";\nimport data from \"emoji-mart-vue-fast/data/all.json\";\nconst storage = getBuilder(\"nextcloud-vue\").persist(true).build();\nlet emojiIndex;\nvar EmojiSkinTone = /* @__PURE__ */ ((EmojiSkinTone2) => {\n EmojiSkinTone2[EmojiSkinTone2[\"Neutral\"] = 1] = \"Neutral\";\n EmojiSkinTone2[EmojiSkinTone2[\"Light\"] = 2] = \"Light\";\n EmojiSkinTone2[EmojiSkinTone2[\"MediumLight\"] = 3] = \"MediumLight\";\n EmojiSkinTone2[EmojiSkinTone2[\"Medium\"] = 4] = \"Medium\";\n EmojiSkinTone2[EmojiSkinTone2[\"MediumDark\"] = 5] = \"MediumDark\";\n EmojiSkinTone2[EmojiSkinTone2[\"Dark\"] = 6] = \"Dark\";\n return EmojiSkinTone2;\n})(EmojiSkinTone || {});\nfunction emojiSearch(query, maxResults = 10) {\n if (!emojiIndex) {\n emojiIndex = new EmojiIndex(data);\n }\n const currentSkinTone = getCurrentSkinTone();\n let results;\n if (query) {\n results = emojiIndex.search(`:${query}`, maxResults);\n if (results.length < maxResults) {\n results = results.concat(emojiIndex.search(query, maxResults - results.length));\n }\n } else {\n results = frequently.get(maxResults).map((id) => emojiIndex.emoji(id)) || [];\n }\n return results.map((emoji) => emoji.getSkin(currentSkinTone));\n}\nfunction emojiAddRecent(emojiData) {\n frequently.add(emojiData);\n}\nfunction getCurrentSkinTone() {\n const skinTone = Number.parseInt(storage.getItem(\"NcEmojiPicker::currentSkinTone\") ?? \"1\");\n return Math.min(\n Math.max(\n skinTone,\n 1\n /* Neutral */\n ),\n 6\n /* Dark */\n );\n}\nfunction setCurrentSkinTone(skinTone) {\n skinTone = Math.min(\n Math.max(\n skinTone,\n 1\n /* Neutral */\n ),\n 6\n /* Dark */\n );\n storage.setItem(\"NcEmojiPicker::currentSkinTone\", skinTone.toString());\n}\nexport {\n EmojiSkinTone as E,\n emojiAddRecent as a,\n emojiSearch as e,\n getCurrentSkinTone as g,\n setCurrentSkinTone as s\n};\n//# sourceMappingURL=emoji-BY_D0V5K.mjs.map\n","import '../assets/NcRichText-Cr-HXxVi.css';\nimport rehypeExternalLinks from \"rehype-external-links\";\nimport rehype2react from \"rehype-react\";\nimport breaks from \"remark-breaks\";\nimport remarkParse from \"remark-parse\";\nimport remark2rehype from \"remark-rehype\";\nimport remarkUnlinkProtocols from \"remark-unlink-protocols\";\nimport { unified } from \"unified\";\nimport { ref } from \"vue\";\nimport { RouterLink } from \"vue-router\";\nimport { N as NcCheckboxRadioSwitch } from \"./NcCheckboxRadioSwitch-DAPHFb0L.mjs\";\nimport { getCurrentUser } from \"@nextcloud/auth\";\nimport axios from \"@nextcloud/axios\";\nimport { generateOcsUrl } from \"@nextcloud/router\";\nimport { getSharingToken } from \"@nextcloud/sharing/public\";\nimport { f as NcReferenceWidget } from \"./referencePickerModal-CHpUHrDL.mjs\";\nimport { l as logger } from \"./logger-D3RVzcfQ.mjs\";\nimport { U as URL_PATTERN, p as parseUrl, r as remarkAutolink, g as getRoute } from \"./autolink-D2pIbi92.mjs\";\nimport { n as normalizeComponent } from \"./_plugin-vue2_normalizer-DU4iP6Vu.mjs\";\nimport { G as GenRandomId } from \"./GenRandomId-F5ebeBB_.mjs\";\nimport { u } from \"unist-builder\";\nimport { visit, EXIT as EXIT$1, SKIP as SKIP$1 } from \"unist-util-visit\";\nconst _sfc_main$1 = {\n name: \"NcReferenceList\",\n components: {\n NcReferenceWidget\n },\n /* eslint vue/require-prop-comment: warn -- TODO: Add a proper doc block about what this props do */\n props: {\n text: {\n type: String,\n default: \"\"\n },\n referenceData: {\n type: Array,\n default: null\n },\n limit: {\n type: Number,\n default: 1\n },\n displayFallback: {\n type: Boolean,\n default: false\n },\n interactive: {\n type: Boolean,\n // eslint-disable-next-line vue/no-boolean-default\n default: true\n },\n interactiveOptIn: {\n type: Boolean,\n default: false\n }\n },\n data() {\n return {\n references: null,\n loading: true\n };\n },\n computed: {\n isVisible() {\n return this.loading || this.displayedReferences.length !== 0;\n },\n values() {\n if (this.referenceData) {\n return this.referenceData;\n }\n if (this.displayFallback && !this.loading && !this.references) {\n return [this.fallbackReference];\n }\n return this.references ? Object.values(this.references) : [];\n },\n firstReference() {\n return this.values[0] ?? null;\n },\n displayedReferences() {\n return this.values.filter(Boolean).slice(0, this.limit);\n },\n fallbackReference() {\n return {\n accessible: true,\n openGraphObject: {\n id: this.text,\n link: this.text,\n name: this.text\n },\n richObjectType: \"open-graph\"\n };\n }\n },\n watch: {\n text: \"fetch\"\n },\n mounted() {\n this.fetch();\n },\n methods: {\n fetch() {\n this.loading = true;\n if (this.referenceData) {\n this.references = null;\n this.loading = false;\n return;\n }\n if (!new RegExp(URL_PATTERN).exec(this.text)) {\n this.references = null;\n this.loading = false;\n return;\n }\n this.resolve().then((response) => {\n this.references = response.data.ocs.data.references;\n this.loading = false;\n this.$emit(\"loaded\");\n }).catch((error) => {\n logger.error(\"Failed to extract references\", { error });\n this.loading = false;\n this.$emit(\"loaded\");\n });\n },\n resolve() {\n const match = new RegExp(URL_PATTERN).exec(this.text.trim());\n const isPublic = getCurrentUser() === null;\n if (this.limit === 1 && match) {\n return isPublic ? axios.get(generateOcsUrl(\"references/resolvePublic\") + `?reference=${encodeURIComponent(match[0])}&sharingToken=${getSharingToken()}`) : axios.get(generateOcsUrl(\"references/resolve\") + `?reference=${encodeURIComponent(match[0])}`);\n }\n return isPublic ? axios.post(generateOcsUrl(\"references/extractPublic\"), {\n text: this.text,\n resolve: true,\n limit: this.limit,\n sharingToken: getSharingToken()\n }) : axios.post(generateOcsUrl(\"references/extract\"), {\n text: this.text,\n resolve: true,\n limit: this.limit\n });\n }\n }\n};\nvar _sfc_render$1 = function render() {\n var _vm = this, _c = _vm._self._c;\n return _vm.isVisible ? _c(\"div\", { staticClass: \"widgets--list\", class: { \"icon-loading\": _vm.loading } }, _vm._l(_vm.displayedReferences, function(reference) {\n return _c(\"NcReferenceWidget\", { key: reference.openGraphObject?.id, attrs: { \"reference\": reference, \"interactive\": _vm.interactive, \"interactive-opt-in\": _vm.interactiveOptIn } });\n }), 1) : _vm._e();\n};\nvar _sfc_staticRenderFns$1 = [];\nvar __component__$1 = /* @__PURE__ */ normalizeComponent(\n _sfc_main$1,\n _sfc_render$1,\n _sfc_staticRenderFns$1,\n false,\n null,\n \"a50e616b\"\n);\nconst NcReferenceList = __component__$1.exports;\nfunction ccount(value, character) {\n const source = String(value);\n if (typeof character !== \"string\") {\n throw new TypeError(\"Expected character\");\n }\n let count = 0;\n let index = source.indexOf(character);\n while (index !== -1) {\n count++;\n index = source.indexOf(character, index + character.length);\n }\n return count;\n}\nfunction ok$1() {\n}\nconst asciiAlpha = regexCheck(/[A-Za-z]/);\nconst asciiAlphanumeric = regexCheck(/[\\dA-Za-z]/);\nfunction asciiControl(code2) {\n return (\n // Special whitespace codes (which have negative values), C0 and Control\n // character DEL\n code2 !== null && (code2 < 32 || code2 === 127)\n );\n}\nfunction markdownLineEnding(code2) {\n return code2 !== null && code2 < -2;\n}\nfunction markdownLineEndingOrSpace(code2) {\n return code2 !== null && (code2 < 0 || code2 === 32);\n}\nfunction markdownSpace(code2) {\n return code2 === -2 || code2 === -1 || code2 === 32;\n}\nconst unicodePunctuation = regexCheck(new RegExp(\"\\\\p{P}|\\\\p{S}\", \"u\"));\nconst unicodeWhitespace = regexCheck(/\\s/);\nfunction regexCheck(regex) {\n return check;\n function check(code2) {\n return code2 !== null && code2 > -1 && regex.test(String.fromCharCode(code2));\n }\n}\nfunction escapeStringRegexp(string) {\n if (typeof string !== \"string\") {\n throw new TypeError(\"Expected a string\");\n }\n return string.replace(/[|\\\\{}()[\\]^$+*?.]/g, \"\\\\$&\").replace(/-/g, \"\\\\x2d\");\n}\nconst convert = (\n // Note: overloads in JSDoc can’t yet use different `@template`s.\n /**\n * @type {(\n * ((test: Condition) => (node: unknown, index?: number | null | undefined, parent?: Parent | null | undefined, context?: unknown) => node is Node & {type: Condition}) &\n * ((test: Condition) => (node: unknown, index?: number | null | undefined, parent?: Parent | null | undefined, context?: unknown) => node is Node & Condition) &\n * ((test: Condition) => (node: unknown, index?: number | null | undefined, parent?: Parent | null | undefined, context?: unknown) => node is Node & Predicate) &\n * ((test?: null | undefined) => (node?: unknown, index?: number | null | undefined, parent?: Parent | null | undefined, context?: unknown) => node is Node) &\n * ((test?: Test) => Check)\n * )}\n */\n /**\n * @param {Test} [test]\n * @returns {Check}\n */\n function(test) {\n if (test === null || test === void 0) {\n return ok;\n }\n if (typeof test === \"function\") {\n return castFactory(test);\n }\n if (typeof test === \"object\") {\n return Array.isArray(test) ? anyFactory(test) : propsFactory(test);\n }\n if (typeof test === \"string\") {\n return typeFactory(test);\n }\n throw new Error(\"Expected function, string, or object as test\");\n }\n);\nfunction anyFactory(tests) {\n const checks = [];\n let index = -1;\n while (++index < tests.length) {\n checks[index] = convert(tests[index]);\n }\n return castFactory(any);\n function any(...parameters) {\n let index2 = -1;\n while (++index2 < checks.length) {\n if (checks[index2].apply(this, parameters)) return true;\n }\n return false;\n }\n}\nfunction propsFactory(check) {\n const checkAsRecord = (\n /** @type {Record} */\n check\n );\n return castFactory(all2);\n function all2(node2) {\n const nodeAsRecord = (\n /** @type {Record} */\n /** @type {unknown} */\n node2\n );\n let key;\n for (key in check) {\n if (nodeAsRecord[key] !== checkAsRecord[key]) return false;\n }\n return true;\n }\n}\nfunction typeFactory(check) {\n return castFactory(type);\n function type(node2) {\n return node2 && node2.type === check;\n }\n}\nfunction castFactory(testFunction) {\n return check;\n function check(value, index, parent) {\n return Boolean(\n looksLikeANode(value) && testFunction.call(\n this,\n value,\n typeof index === \"number\" ? index : void 0,\n parent || void 0\n )\n );\n }\n}\nfunction ok() {\n return true;\n}\nfunction looksLikeANode(value) {\n return value !== null && typeof value === \"object\" && \"type\" in value;\n}\nfunction color(d) {\n return d;\n}\nconst empty = [];\nconst CONTINUE = true;\nconst EXIT = false;\nconst SKIP = \"skip\";\nfunction visitParents(tree, test, visitor, reverse) {\n let check;\n {\n check = test;\n }\n const is = convert(check);\n const step = 1;\n factory(tree, void 0, [])();\n function factory(node2, index, parents) {\n const value = (\n /** @type {Record} */\n node2 && typeof node2 === \"object\" ? node2 : {}\n );\n if (typeof value.type === \"string\") {\n const name = (\n // `hast`\n typeof value.tagName === \"string\" ? value.tagName : (\n // `xast`\n typeof value.name === \"string\" ? value.name : void 0\n )\n );\n Object.defineProperty(visit2, \"name\", {\n value: \"node (\" + color(node2.type + (name ? \"<\" + name + \">\" : \"\")) + \")\"\n });\n }\n return visit2;\n function visit2() {\n let result = empty;\n let subresult;\n let offset;\n let grandparents;\n if (is(node2, index, parents[parents.length - 1] || void 0)) {\n result = toResult(visitor(node2, parents));\n if (result[0] === EXIT) {\n return result;\n }\n }\n if (\"children\" in node2 && node2.children) {\n const nodeAsParent = (\n /** @type {UnistParent} */\n node2\n );\n if (nodeAsParent.children && result[0] !== SKIP) {\n offset = -1 + step;\n grandparents = parents.concat(nodeAsParent);\n while (offset > -1 && offset < nodeAsParent.children.length) {\n const child = nodeAsParent.children[offset];\n subresult = factory(child, offset, grandparents)();\n if (subresult[0] === EXIT) {\n return subresult;\n }\n offset = typeof subresult[1] === \"number\" ? subresult[1] : offset + step;\n }\n }\n }\n return result;\n }\n }\n}\nfunction toResult(value) {\n if (Array.isArray(value)) {\n return value;\n }\n if (typeof value === \"number\") {\n return [CONTINUE, value];\n }\n return value === null || value === void 0 ? empty : [value];\n}\nfunction findAndReplace(tree, list2, options) {\n const settings = options || {};\n const ignored = convert(settings.ignore || []);\n const pairs = toPairs(list2);\n let pairIndex = -1;\n while (++pairIndex < pairs.length) {\n visitParents(tree, \"text\", visitor);\n }\n function visitor(node2, parents) {\n let index = -1;\n let grandparent;\n while (++index < parents.length) {\n const parent = parents[index];\n const siblings = grandparent ? grandparent.children : void 0;\n if (ignored(\n parent,\n siblings ? siblings.indexOf(parent) : void 0,\n grandparent\n )) {\n return;\n }\n grandparent = parent;\n }\n if (grandparent) {\n return handler(node2, parents);\n }\n }\n function handler(node2, parents) {\n const parent = parents[parents.length - 1];\n const find = pairs[pairIndex][0];\n const replace2 = pairs[pairIndex][1];\n let start = 0;\n const siblings = parent.children;\n const index = siblings.indexOf(node2);\n let change = false;\n let nodes = [];\n find.lastIndex = 0;\n let match = find.exec(node2.value);\n while (match) {\n const position = match.index;\n const matchObject = {\n index: match.index,\n input: match.input,\n stack: [...parents, node2]\n };\n let value = replace2(...match, matchObject);\n if (typeof value === \"string\") {\n value = value.length > 0 ? { type: \"text\", value } : void 0;\n }\n if (value === false) {\n find.lastIndex = position + 1;\n } else {\n if (start !== position) {\n nodes.push({\n type: \"text\",\n value: node2.value.slice(start, position)\n });\n }\n if (Array.isArray(value)) {\n nodes.push(...value);\n } else if (value) {\n nodes.push(value);\n }\n start = position + match[0].length;\n change = true;\n }\n if (!find.global) {\n break;\n }\n match = find.exec(node2.value);\n }\n if (change) {\n if (start < node2.value.length) {\n nodes.push({ type: \"text\", value: node2.value.slice(start) });\n }\n parent.children.splice(index, 1, ...nodes);\n } else {\n nodes = [node2];\n }\n return index + nodes.length;\n }\n}\nfunction toPairs(tupleOrList) {\n const result = [];\n if (!Array.isArray(tupleOrList)) {\n throw new TypeError(\"Expected find and replace tuple or list of tuples\");\n }\n const list2 = !tupleOrList[0] || Array.isArray(tupleOrList[0]) ? tupleOrList : [tupleOrList];\n let index = -1;\n while (++index < list2.length) {\n const tuple = list2[index];\n result.push([toExpression(tuple[0]), toFunction(tuple[1])]);\n }\n return result;\n}\nfunction toExpression(find) {\n return typeof find === \"string\" ? new RegExp(escapeStringRegexp(find), \"g\") : find;\n}\nfunction toFunction(replace2) {\n return typeof replace2 === \"function\" ? replace2 : function() {\n return replace2;\n };\n}\nconst inConstruct = \"phrasing\";\nconst notInConstruct = [\"autolink\", \"link\", \"image\", \"label\"];\nfunction gfmAutolinkLiteralFromMarkdown() {\n return {\n transforms: [transformGfmAutolinkLiterals],\n enter: {\n literalAutolink: enterLiteralAutolink,\n literalAutolinkEmail: enterLiteralAutolinkValue,\n literalAutolinkHttp: enterLiteralAutolinkValue,\n literalAutolinkWww: enterLiteralAutolinkValue\n },\n exit: {\n literalAutolink: exitLiteralAutolink,\n literalAutolinkEmail: exitLiteralAutolinkEmail,\n literalAutolinkHttp: exitLiteralAutolinkHttp,\n literalAutolinkWww: exitLiteralAutolinkWww\n }\n };\n}\nfunction gfmAutolinkLiteralToMarkdown() {\n return {\n unsafe: [\n {\n character: \"@\",\n before: \"[+\\\\-.\\\\w]\",\n after: \"[\\\\-.\\\\w]\",\n inConstruct,\n notInConstruct\n },\n {\n character: \".\",\n before: \"[Ww]\",\n after: \"[\\\\-.\\\\w]\",\n inConstruct,\n notInConstruct\n },\n {\n character: \":\",\n before: \"[ps]\",\n after: \"\\\\/\",\n inConstruct,\n notInConstruct\n }\n ]\n };\n}\nfunction enterLiteralAutolink(token) {\n this.enter({ type: \"link\", title: null, url: \"\", children: [] }, token);\n}\nfunction enterLiteralAutolinkValue(token) {\n this.config.enter.autolinkProtocol.call(this, token);\n}\nfunction exitLiteralAutolinkHttp(token) {\n this.config.exit.autolinkProtocol.call(this, token);\n}\nfunction exitLiteralAutolinkWww(token) {\n this.config.exit.data.call(this, token);\n const node2 = this.stack[this.stack.length - 1];\n ok$1(node2.type === \"link\");\n node2.url = \"http://\" + this.sliceSerialize(token);\n}\nfunction exitLiteralAutolinkEmail(token) {\n this.config.exit.autolinkEmail.call(this, token);\n}\nfunction exitLiteralAutolink(token) {\n this.exit(token);\n}\nfunction transformGfmAutolinkLiterals(tree) {\n findAndReplace(\n tree,\n [\n [/(https?:\\/\\/|www(?=\\.))([-.\\w]+)([^ \\t\\r\\n]*)/gi, findUrl],\n [/([-.\\w+]+)@([-\\w]+(?:\\.[-\\w]+)+)/g, findEmail]\n ],\n { ignore: [\"link\", \"linkReference\"] }\n );\n}\nfunction findUrl(_, protocol, domain2, path2, match) {\n let prefix = \"\";\n if (!previous(match)) {\n return false;\n }\n if (/^w/i.test(protocol)) {\n domain2 = protocol + domain2;\n protocol = \"\";\n prefix = \"http://\";\n }\n if (!isCorrectDomain(domain2)) {\n return false;\n }\n const parts = splitUrl(domain2 + path2);\n if (!parts[0]) return false;\n const result = {\n type: \"link\",\n title: null,\n url: prefix + protocol + parts[0],\n children: [{ type: \"text\", value: protocol + parts[0] }]\n };\n if (parts[1]) {\n return [result, { type: \"text\", value: parts[1] }];\n }\n return result;\n}\nfunction findEmail(_, atext, label, match) {\n if (\n // Not an expected previous character.\n !previous(match, true) || // Label ends in not allowed character.\n /[-\\d_]$/.test(label)\n ) {\n return false;\n }\n return {\n type: \"link\",\n title: null,\n url: \"mailto:\" + atext + \"@\" + label,\n children: [{ type: \"text\", value: atext + \"@\" + label }]\n };\n}\nfunction isCorrectDomain(domain2) {\n const parts = domain2.split(\".\");\n if (parts.length < 2 || parts[parts.length - 1] && (/_/.test(parts[parts.length - 1]) || !/[a-zA-Z\\d]/.test(parts[parts.length - 1])) || parts[parts.length - 2] && (/_/.test(parts[parts.length - 2]) || !/[a-zA-Z\\d]/.test(parts[parts.length - 2]))) {\n return false;\n }\n return true;\n}\nfunction splitUrl(url) {\n const trailExec = /[!\"&'),.:;<>?\\]}]+$/.exec(url);\n if (!trailExec) {\n return [url, void 0];\n }\n url = url.slice(0, trailExec.index);\n let trail2 = trailExec[0];\n let closingParenIndex = trail2.indexOf(\")\");\n const openingParens = ccount(url, \"(\");\n let closingParens = ccount(url, \")\");\n while (closingParenIndex !== -1 && openingParens > closingParens) {\n url += trail2.slice(0, closingParenIndex + 1);\n trail2 = trail2.slice(closingParenIndex + 1);\n closingParenIndex = trail2.indexOf(\")\");\n closingParens++;\n }\n return [url, trail2];\n}\nfunction previous(match, email) {\n const code2 = match.input.charCodeAt(match.index - 1);\n return (match.index === 0 || unicodeWhitespace(code2) || unicodePunctuation(code2)) && (!email || code2 !== 47);\n}\nfunction normalizeIdentifier(value) {\n return value.replace(/[\\t\\n\\r ]+/g, \" \").replace(/^ | $/g, \"\").toLowerCase().toUpperCase();\n}\nfootnoteReference.peek = footnoteReferencePeek;\nfunction gfmFootnoteFromMarkdown() {\n return {\n enter: {\n gfmFootnoteDefinition: enterFootnoteDefinition,\n gfmFootnoteDefinitionLabelString: enterFootnoteDefinitionLabelString,\n gfmFootnoteCall: enterFootnoteCall,\n gfmFootnoteCallString: enterFootnoteCallString\n },\n exit: {\n gfmFootnoteDefinition: exitFootnoteDefinition,\n gfmFootnoteDefinitionLabelString: exitFootnoteDefinitionLabelString,\n gfmFootnoteCall: exitFootnoteCall,\n gfmFootnoteCallString: exitFootnoteCallString\n }\n };\n}\nfunction gfmFootnoteToMarkdown() {\n return {\n // This is on by default already.\n unsafe: [{ character: \"[\", inConstruct: [\"phrasing\", \"label\", \"reference\"] }],\n handlers: { footnoteDefinition, footnoteReference }\n };\n}\nfunction enterFootnoteDefinition(token) {\n this.enter(\n { type: \"footnoteDefinition\", identifier: \"\", label: \"\", children: [] },\n token\n );\n}\nfunction enterFootnoteDefinitionLabelString() {\n this.buffer();\n}\nfunction exitFootnoteDefinitionLabelString(token) {\n const label = this.resume();\n const node2 = this.stack[this.stack.length - 1];\n ok$1(node2.type === \"footnoteDefinition\");\n node2.label = label;\n node2.identifier = normalizeIdentifier(\n this.sliceSerialize(token)\n ).toLowerCase();\n}\nfunction exitFootnoteDefinition(token) {\n this.exit(token);\n}\nfunction enterFootnoteCall(token) {\n this.enter({ type: \"footnoteReference\", identifier: \"\", label: \"\" }, token);\n}\nfunction enterFootnoteCallString() {\n this.buffer();\n}\nfunction exitFootnoteCallString(token) {\n const label = this.resume();\n const node2 = this.stack[this.stack.length - 1];\n ok$1(node2.type === \"footnoteReference\");\n node2.label = label;\n node2.identifier = normalizeIdentifier(\n this.sliceSerialize(token)\n ).toLowerCase();\n}\nfunction exitFootnoteCall(token) {\n this.exit(token);\n}\nfunction footnoteReference(node2, _, state, info) {\n const tracker = state.createTracker(info);\n let value = tracker.move(\"[^\");\n const exit2 = state.enter(\"footnoteReference\");\n const subexit = state.enter(\"reference\");\n value += tracker.move(\n state.safe(state.associationId(node2), {\n ...tracker.current(),\n before: value,\n after: \"]\"\n })\n );\n subexit();\n exit2();\n value += tracker.move(\"]\");\n return value;\n}\nfunction footnoteReferencePeek() {\n return \"[\";\n}\nfunction footnoteDefinition(node2, _, state, info) {\n const tracker = state.createTracker(info);\n let value = tracker.move(\"[^\");\n const exit2 = state.enter(\"footnoteDefinition\");\n const subexit = state.enter(\"label\");\n value += tracker.move(\n state.safe(state.associationId(node2), {\n ...tracker.current(),\n before: value,\n after: \"]\"\n })\n );\n subexit();\n value += tracker.move(\n \"]:\" + (node2.children && node2.children.length > 0 ? \" \" : \"\")\n );\n tracker.shift(4);\n value += tracker.move(\n state.indentLines(state.containerFlow(node2, tracker.current()), map$2)\n );\n exit2();\n return value;\n}\nfunction map$2(line, index, blank) {\n if (index === 0) {\n return line;\n }\n return (blank ? \"\" : \" \") + line;\n}\nconst constructsWithoutStrikethrough = [\n \"autolink\",\n \"destinationLiteral\",\n \"destinationRaw\",\n \"reference\",\n \"titleQuote\",\n \"titleApostrophe\"\n];\nhandleDelete.peek = peekDelete;\nfunction gfmStrikethroughFromMarkdown() {\n return {\n canContainEols: [\"delete\"],\n enter: { strikethrough: enterStrikethrough },\n exit: { strikethrough: exitStrikethrough }\n };\n}\nfunction gfmStrikethroughToMarkdown() {\n return {\n unsafe: [\n {\n character: \"~\",\n inConstruct: \"phrasing\",\n notInConstruct: constructsWithoutStrikethrough\n }\n ],\n handlers: { delete: handleDelete }\n };\n}\nfunction enterStrikethrough(token) {\n this.enter({ type: \"delete\", children: [] }, token);\n}\nfunction exitStrikethrough(token) {\n this.exit(token);\n}\nfunction handleDelete(node2, _, state, info) {\n const tracker = state.createTracker(info);\n const exit2 = state.enter(\"strikethrough\");\n let value = tracker.move(\"~~\");\n value += state.containerPhrasing(node2, {\n ...tracker.current(),\n before: value,\n after: \"~\"\n });\n value += tracker.move(\"~~\");\n exit2();\n return value;\n}\nfunction peekDelete() {\n return \"~\";\n}\nfunction markdownTable(table, options = {}) {\n const align = (options.align || []).concat();\n const stringLength = options.stringLength || defaultStringLength;\n const alignments = [];\n const cellMatrix = [];\n const sizeMatrix = [];\n const longestCellByColumn = [];\n let mostCellsPerRow = 0;\n let rowIndex = -1;\n while (++rowIndex < table.length) {\n const row2 = [];\n const sizes2 = [];\n let columnIndex2 = -1;\n if (table[rowIndex].length > mostCellsPerRow) {\n mostCellsPerRow = table[rowIndex].length;\n }\n while (++columnIndex2 < table[rowIndex].length) {\n const cell = serialize(table[rowIndex][columnIndex2]);\n if (options.alignDelimiters !== false) {\n const size = stringLength(cell);\n sizes2[columnIndex2] = size;\n if (longestCellByColumn[columnIndex2] === void 0 || size > longestCellByColumn[columnIndex2]) {\n longestCellByColumn[columnIndex2] = size;\n }\n }\n row2.push(cell);\n }\n cellMatrix[rowIndex] = row2;\n sizeMatrix[rowIndex] = sizes2;\n }\n let columnIndex = -1;\n if (typeof align === \"object\" && \"length\" in align) {\n while (++columnIndex < mostCellsPerRow) {\n alignments[columnIndex] = toAlignment(align[columnIndex]);\n }\n } else {\n const code2 = toAlignment(align);\n while (++columnIndex < mostCellsPerRow) {\n alignments[columnIndex] = code2;\n }\n }\n columnIndex = -1;\n const row = [];\n const sizes = [];\n while (++columnIndex < mostCellsPerRow) {\n const code2 = alignments[columnIndex];\n let before = \"\";\n let after = \"\";\n if (code2 === 99) {\n before = \":\";\n after = \":\";\n } else if (code2 === 108) {\n before = \":\";\n } else if (code2 === 114) {\n after = \":\";\n }\n let size = options.alignDelimiters === false ? 1 : Math.max(\n 1,\n longestCellByColumn[columnIndex] - before.length - after.length\n );\n const cell = before + \"-\".repeat(size) + after;\n if (options.alignDelimiters !== false) {\n size = before.length + size + after.length;\n if (size > longestCellByColumn[columnIndex]) {\n longestCellByColumn[columnIndex] = size;\n }\n sizes[columnIndex] = size;\n }\n row[columnIndex] = cell;\n }\n cellMatrix.splice(1, 0, row);\n sizeMatrix.splice(1, 0, sizes);\n rowIndex = -1;\n const lines = [];\n while (++rowIndex < cellMatrix.length) {\n const row2 = cellMatrix[rowIndex];\n const sizes2 = sizeMatrix[rowIndex];\n columnIndex = -1;\n const line = [];\n while (++columnIndex < mostCellsPerRow) {\n const cell = row2[columnIndex] || \"\";\n let before = \"\";\n let after = \"\";\n if (options.alignDelimiters !== false) {\n const size = longestCellByColumn[columnIndex] - (sizes2[columnIndex] || 0);\n const code2 = alignments[columnIndex];\n if (code2 === 114) {\n before = \" \".repeat(size);\n } else if (code2 === 99) {\n if (size % 2) {\n before = \" \".repeat(size / 2 + 0.5);\n after = \" \".repeat(size / 2 - 0.5);\n } else {\n before = \" \".repeat(size / 2);\n after = before;\n }\n } else {\n after = \" \".repeat(size);\n }\n }\n if (options.delimiterStart !== false && !columnIndex) {\n line.push(\"|\");\n }\n if (options.padding !== false && // Don’t add the opening space if we’re not aligning and the cell is\n // empty: there will be a closing space.\n !(options.alignDelimiters === false && cell === \"\") && (options.delimiterStart !== false || columnIndex)) {\n line.push(\" \");\n }\n if (options.alignDelimiters !== false) {\n line.push(before);\n }\n line.push(cell);\n if (options.alignDelimiters !== false) {\n line.push(after);\n }\n if (options.padding !== false) {\n line.push(\" \");\n }\n if (options.delimiterEnd !== false || columnIndex !== mostCellsPerRow - 1) {\n line.push(\"|\");\n }\n }\n lines.push(\n options.delimiterEnd === false ? line.join(\"\").replace(/ +$/, \"\") : line.join(\"\")\n );\n }\n return lines.join(\"\\n\");\n}\nfunction serialize(value) {\n return value === null || value === void 0 ? \"\" : String(value);\n}\nfunction defaultStringLength(value) {\n return value.length;\n}\nfunction toAlignment(value) {\n const code2 = typeof value === \"string\" ? value.codePointAt(0) : 0;\n return code2 === 67 || code2 === 99 ? 99 : code2 === 76 || code2 === 108 ? 108 : code2 === 82 || code2 === 114 ? 114 : 0;\n}\nfunction blockquote(node2, _, state, info) {\n const exit2 = state.enter(\"blockquote\");\n const tracker = state.createTracker(info);\n tracker.move(\"> \");\n tracker.shift(2);\n const value = state.indentLines(\n state.containerFlow(node2, tracker.current()),\n map$1\n );\n exit2();\n return value;\n}\nfunction map$1(line, _, blank) {\n return \">\" + (blank ? \"\" : \" \") + line;\n}\nfunction patternInScope(stack, pattern) {\n return listInScope(stack, pattern.inConstruct, true) && !listInScope(stack, pattern.notInConstruct, false);\n}\nfunction listInScope(stack, list2, none) {\n if (typeof list2 === \"string\") {\n list2 = [list2];\n }\n if (!list2 || list2.length === 0) {\n return none;\n }\n let index = -1;\n while (++index < list2.length) {\n if (stack.includes(list2[index])) {\n return true;\n }\n }\n return false;\n}\nfunction hardBreak(_, _1, state, info) {\n let index = -1;\n while (++index < state.unsafe.length) {\n if (state.unsafe[index].character === \"\\n\" && patternInScope(state.stack, state.unsafe[index])) {\n return /[ \\t]/.test(info.before) ? \"\" : \" \";\n }\n }\n return \"\\\\\\n\";\n}\nfunction longestStreak(value, substring) {\n const source = String(value);\n let index = source.indexOf(substring);\n let expected = index;\n let count = 0;\n let max = 0;\n if (typeof substring !== \"string\") {\n throw new TypeError(\"Expected substring\");\n }\n while (index !== -1) {\n if (index === expected) {\n if (++count > max) {\n max = count;\n }\n } else {\n count = 1;\n }\n expected = index + substring.length;\n index = source.indexOf(substring, expected);\n }\n return max;\n}\nfunction formatCodeAsIndented(node2, state) {\n return Boolean(\n state.options.fences === false && node2.value && // If there’s no info…\n !node2.lang && // And there’s a non-whitespace character…\n /[^ \\r\\n]/.test(node2.value) && // And the value doesn’t start or end in a blank…\n !/^[\\t ]*(?:[\\r\\n]|$)|(?:^|[\\r\\n])[\\t ]*$/.test(node2.value)\n );\n}\nfunction checkFence(state) {\n const marker = state.options.fence || \"`\";\n if (marker !== \"`\" && marker !== \"~\") {\n throw new Error(\n \"Cannot serialize code with `\" + marker + \"` for `options.fence`, expected `` ` `` or `~`\"\n );\n }\n return marker;\n}\nfunction code$1(node2, _, state, info) {\n const marker = checkFence(state);\n const raw = node2.value || \"\";\n const suffix = marker === \"`\" ? \"GraveAccent\" : \"Tilde\";\n if (formatCodeAsIndented(node2, state)) {\n const exit3 = state.enter(\"codeIndented\");\n const value2 = state.indentLines(raw, map);\n exit3();\n return value2;\n }\n const tracker = state.createTracker(info);\n const sequence = marker.repeat(Math.max(longestStreak(raw, marker) + 1, 3));\n const exit2 = state.enter(\"codeFenced\");\n let value = tracker.move(sequence);\n if (node2.lang) {\n const subexit = state.enter(`codeFencedLang${suffix}`);\n value += tracker.move(\n state.safe(node2.lang, {\n before: value,\n after: \" \",\n encode: [\"`\"],\n ...tracker.current()\n })\n );\n subexit();\n }\n if (node2.lang && node2.meta) {\n const subexit = state.enter(`codeFencedMeta${suffix}`);\n value += tracker.move(\" \");\n value += tracker.move(\n state.safe(node2.meta, {\n before: value,\n after: \"\\n\",\n encode: [\"`\"],\n ...tracker.current()\n })\n );\n subexit();\n }\n value += tracker.move(\"\\n\");\n if (raw) {\n value += tracker.move(raw + \"\\n\");\n }\n value += tracker.move(sequence);\n exit2();\n return value;\n}\nfunction map(line, _, blank) {\n return (blank ? \"\" : \" \") + line;\n}\nfunction checkQuote(state) {\n const marker = state.options.quote || '\"';\n if (marker !== '\"' && marker !== \"'\") {\n throw new Error(\n \"Cannot serialize title with `\" + marker + \"` for `options.quote`, expected `\\\"`, or `'`\"\n );\n }\n return marker;\n}\nfunction definition(node2, _, state, info) {\n const quote = checkQuote(state);\n const suffix = quote === '\"' ? \"Quote\" : \"Apostrophe\";\n const exit2 = state.enter(\"definition\");\n let subexit = state.enter(\"label\");\n const tracker = state.createTracker(info);\n let value = tracker.move(\"[\");\n value += tracker.move(\n state.safe(state.associationId(node2), {\n before: value,\n after: \"]\",\n ...tracker.current()\n })\n );\n value += tracker.move(\"]: \");\n subexit();\n if (\n // If there’s no url, or…\n !node2.url || // If there are control characters or whitespace.\n /[\\0- \\u007F]/.test(node2.url)\n ) {\n subexit = state.enter(\"destinationLiteral\");\n value += tracker.move(\"<\");\n value += tracker.move(\n state.safe(node2.url, { before: value, after: \">\", ...tracker.current() })\n );\n value += tracker.move(\">\");\n } else {\n subexit = state.enter(\"destinationRaw\");\n value += tracker.move(\n state.safe(node2.url, {\n before: value,\n after: node2.title ? \" \" : \"\\n\",\n ...tracker.current()\n })\n );\n }\n subexit();\n if (node2.title) {\n subexit = state.enter(`title${suffix}`);\n value += tracker.move(\" \" + quote);\n value += tracker.move(\n state.safe(node2.title, {\n before: value,\n after: quote,\n ...tracker.current()\n })\n );\n value += tracker.move(quote);\n subexit();\n }\n exit2();\n return value;\n}\nfunction checkEmphasis(state) {\n const marker = state.options.emphasis || \"*\";\n if (marker !== \"*\" && marker !== \"_\") {\n throw new Error(\n \"Cannot serialize emphasis with `\" + marker + \"` for `options.emphasis`, expected `*`, or `_`\"\n );\n }\n return marker;\n}\nemphasis.peek = emphasisPeek;\nfunction emphasis(node2, _, state, info) {\n const marker = checkEmphasis(state);\n const exit2 = state.enter(\"emphasis\");\n const tracker = state.createTracker(info);\n let value = tracker.move(marker);\n value += tracker.move(\n state.containerPhrasing(node2, {\n before: value,\n after: marker,\n ...tracker.current()\n })\n );\n value += tracker.move(marker);\n exit2();\n return value;\n}\nfunction emphasisPeek(_, _1, state) {\n return state.options.emphasis || \"*\";\n}\nconst emptyOptions$1 = {};\nfunction toString(value, options) {\n const settings = emptyOptions$1;\n const includeImageAlt = typeof settings.includeImageAlt === \"boolean\" ? settings.includeImageAlt : true;\n const includeHtml = typeof settings.includeHtml === \"boolean\" ? settings.includeHtml : true;\n return one(value, includeImageAlt, includeHtml);\n}\nfunction one(value, includeImageAlt, includeHtml) {\n if (node(value)) {\n if (\"value\" in value) {\n return value.type === \"html\" && !includeHtml ? \"\" : value.value;\n }\n if (includeImageAlt && \"alt\" in value && value.alt) {\n return value.alt;\n }\n if (\"children\" in value) {\n return all(value.children, includeImageAlt, includeHtml);\n }\n }\n if (Array.isArray(value)) {\n return all(value, includeImageAlt, includeHtml);\n }\n return \"\";\n}\nfunction all(values, includeImageAlt, includeHtml) {\n const result = [];\n let index = -1;\n while (++index < values.length) {\n result[index] = one(values[index], includeImageAlt, includeHtml);\n }\n return result.join(\"\");\n}\nfunction node(value) {\n return Boolean(value && typeof value === \"object\");\n}\nfunction formatHeadingAsSetext(node2, state) {\n let literalWithBreak = false;\n visit(node2, function(node3) {\n if (\"value\" in node3 && /\\r?\\n|\\r/.test(node3.value) || node3.type === \"break\") {\n literalWithBreak = true;\n return EXIT$1;\n }\n });\n return Boolean(\n (!node2.depth || node2.depth < 3) && toString(node2) && (state.options.setext || literalWithBreak)\n );\n}\nfunction heading(node2, _, state, info) {\n const rank = Math.max(Math.min(6, node2.depth || 1), 1);\n const tracker = state.createTracker(info);\n if (formatHeadingAsSetext(node2, state)) {\n const exit3 = state.enter(\"headingSetext\");\n const subexit2 = state.enter(\"phrasing\");\n const value2 = state.containerPhrasing(node2, {\n ...tracker.current(),\n before: \"\\n\",\n after: \"\\n\"\n });\n subexit2();\n exit3();\n return value2 + \"\\n\" + (rank === 1 ? \"=\" : \"-\").repeat(\n // The whole size…\n value2.length - // Minus the position of the character after the last EOL (or\n // 0 if there is none)…\n (Math.max(value2.lastIndexOf(\"\\r\"), value2.lastIndexOf(\"\\n\")) + 1)\n );\n }\n const sequence = \"#\".repeat(rank);\n const exit2 = state.enter(\"headingAtx\");\n const subexit = state.enter(\"phrasing\");\n tracker.move(sequence + \" \");\n let value = state.containerPhrasing(node2, {\n before: \"# \",\n after: \"\\n\",\n ...tracker.current()\n });\n if (/^[\\t ]/.test(value)) {\n value = \"&#x\" + value.charCodeAt(0).toString(16).toUpperCase() + \";\" + value.slice(1);\n }\n value = value ? sequence + \" \" + value : sequence;\n if (state.options.closeAtx) {\n value += \" \" + sequence;\n }\n subexit();\n exit2();\n return value;\n}\nhtml.peek = htmlPeek;\nfunction html(node2) {\n return node2.value || \"\";\n}\nfunction htmlPeek() {\n return \"<\";\n}\nimage.peek = imagePeek;\nfunction image(node2, _, state, info) {\n const quote = checkQuote(state);\n const suffix = quote === '\"' ? \"Quote\" : \"Apostrophe\";\n const exit2 = state.enter(\"image\");\n let subexit = state.enter(\"label\");\n const tracker = state.createTracker(info);\n let value = tracker.move(\"![\");\n value += tracker.move(\n state.safe(node2.alt, { before: value, after: \"]\", ...tracker.current() })\n );\n value += tracker.move(\"](\");\n subexit();\n if (\n // If there’s no url but there is a title…\n !node2.url && node2.title || // If there are control characters or whitespace.\n /[\\0- \\u007F]/.test(node2.url)\n ) {\n subexit = state.enter(\"destinationLiteral\");\n value += tracker.move(\"<\");\n value += tracker.move(\n state.safe(node2.url, { before: value, after: \">\", ...tracker.current() })\n );\n value += tracker.move(\">\");\n } else {\n subexit = state.enter(\"destinationRaw\");\n value += tracker.move(\n state.safe(node2.url, {\n before: value,\n after: node2.title ? \" \" : \")\",\n ...tracker.current()\n })\n );\n }\n subexit();\n if (node2.title) {\n subexit = state.enter(`title${suffix}`);\n value += tracker.move(\" \" + quote);\n value += tracker.move(\n state.safe(node2.title, {\n before: value,\n after: quote,\n ...tracker.current()\n })\n );\n value += tracker.move(quote);\n subexit();\n }\n value += tracker.move(\")\");\n exit2();\n return value;\n}\nfunction imagePeek() {\n return \"!\";\n}\nimageReference.peek = imageReferencePeek;\nfunction imageReference(node2, _, state, info) {\n const type = node2.referenceType;\n const exit2 = state.enter(\"imageReference\");\n let subexit = state.enter(\"label\");\n const tracker = state.createTracker(info);\n let value = tracker.move(\"![\");\n const alt = state.safe(node2.alt, {\n before: value,\n after: \"]\",\n ...tracker.current()\n });\n value += tracker.move(alt + \"][\");\n subexit();\n const stack = state.stack;\n state.stack = [];\n subexit = state.enter(\"reference\");\n const reference = state.safe(state.associationId(node2), {\n before: value,\n after: \"]\",\n ...tracker.current()\n });\n subexit();\n state.stack = stack;\n exit2();\n if (type === \"full\" || !alt || alt !== reference) {\n value += tracker.move(reference + \"]\");\n } else if (type === \"shortcut\") {\n value = value.slice(0, -1);\n } else {\n value += tracker.move(\"]\");\n }\n return value;\n}\nfunction imageReferencePeek() {\n return \"!\";\n}\ninlineCode.peek = inlineCodePeek;\nfunction inlineCode(node2, _, state) {\n let value = node2.value || \"\";\n let sequence = \"`\";\n let index = -1;\n while (new RegExp(\"(^|[^`])\" + sequence + \"([^`]|$)\").test(value)) {\n sequence += \"`\";\n }\n if (/[^ \\r\\n]/.test(value) && (/^[ \\r\\n]/.test(value) && /[ \\r\\n]$/.test(value) || /^`|`$/.test(value))) {\n value = \" \" + value + \" \";\n }\n while (++index < state.unsafe.length) {\n const pattern = state.unsafe[index];\n const expression = state.compilePattern(pattern);\n let match;\n if (!pattern.atBreak) continue;\n while (match = expression.exec(value)) {\n let position = match.index;\n if (value.charCodeAt(position) === 10 && value.charCodeAt(position - 1) === 13) {\n position--;\n }\n value = value.slice(0, position) + \" \" + value.slice(match.index + 1);\n }\n }\n return sequence + value + sequence;\n}\nfunction inlineCodePeek() {\n return \"`\";\n}\nfunction formatLinkAsAutolink(node2, state) {\n const raw = toString(node2);\n return Boolean(\n !state.options.resourceLink && // If there’s a url…\n node2.url && // And there’s a no title…\n !node2.title && // And the content of `node` is a single text node…\n node2.children && node2.children.length === 1 && node2.children[0].type === \"text\" && // And if the url is the same as the content…\n (raw === node2.url || \"mailto:\" + raw === node2.url) && // And that starts w/ a protocol…\n /^[a-z][a-z+.-]+:/i.test(node2.url) && // And that doesn’t contain ASCII control codes (character escapes and\n // references don’t work), space, or angle brackets…\n !/[\\0- <>\\u007F]/.test(node2.url)\n );\n}\nlink.peek = linkPeek;\nfunction link(node2, _, state, info) {\n const quote = checkQuote(state);\n const suffix = quote === '\"' ? \"Quote\" : \"Apostrophe\";\n const tracker = state.createTracker(info);\n let exit2;\n let subexit;\n if (formatLinkAsAutolink(node2, state)) {\n const stack = state.stack;\n state.stack = [];\n exit2 = state.enter(\"autolink\");\n let value2 = tracker.move(\"<\");\n value2 += tracker.move(\n state.containerPhrasing(node2, {\n before: value2,\n after: \">\",\n ...tracker.current()\n })\n );\n value2 += tracker.move(\">\");\n exit2();\n state.stack = stack;\n return value2;\n }\n exit2 = state.enter(\"link\");\n subexit = state.enter(\"label\");\n let value = tracker.move(\"[\");\n value += tracker.move(\n state.containerPhrasing(node2, {\n before: value,\n after: \"](\",\n ...tracker.current()\n })\n );\n value += tracker.move(\"](\");\n subexit();\n if (\n // If there’s no url but there is a title…\n !node2.url && node2.title || // If there are control characters or whitespace.\n /[\\0- \\u007F]/.test(node2.url)\n ) {\n subexit = state.enter(\"destinationLiteral\");\n value += tracker.move(\"<\");\n value += tracker.move(\n state.safe(node2.url, { before: value, after: \">\", ...tracker.current() })\n );\n value += tracker.move(\">\");\n } else {\n subexit = state.enter(\"destinationRaw\");\n value += tracker.move(\n state.safe(node2.url, {\n before: value,\n after: node2.title ? \" \" : \")\",\n ...tracker.current()\n })\n );\n }\n subexit();\n if (node2.title) {\n subexit = state.enter(`title${suffix}`);\n value += tracker.move(\" \" + quote);\n value += tracker.move(\n state.safe(node2.title, {\n before: value,\n after: quote,\n ...tracker.current()\n })\n );\n value += tracker.move(quote);\n subexit();\n }\n value += tracker.move(\")\");\n exit2();\n return value;\n}\nfunction linkPeek(node2, _, state) {\n return formatLinkAsAutolink(node2, state) ? \"<\" : \"[\";\n}\nlinkReference.peek = linkReferencePeek;\nfunction linkReference(node2, _, state, info) {\n const type = node2.referenceType;\n const exit2 = state.enter(\"linkReference\");\n let subexit = state.enter(\"label\");\n const tracker = state.createTracker(info);\n let value = tracker.move(\"[\");\n const text2 = state.containerPhrasing(node2, {\n before: value,\n after: \"]\",\n ...tracker.current()\n });\n value += tracker.move(text2 + \"][\");\n subexit();\n const stack = state.stack;\n state.stack = [];\n subexit = state.enter(\"reference\");\n const reference = state.safe(state.associationId(node2), {\n before: value,\n after: \"]\",\n ...tracker.current()\n });\n subexit();\n state.stack = stack;\n exit2();\n if (type === \"full\" || !text2 || text2 !== reference) {\n value += tracker.move(reference + \"]\");\n } else if (type === \"shortcut\") {\n value = value.slice(0, -1);\n } else {\n value += tracker.move(\"]\");\n }\n return value;\n}\nfunction linkReferencePeek() {\n return \"[\";\n}\nfunction checkBullet(state) {\n const marker = state.options.bullet || \"*\";\n if (marker !== \"*\" && marker !== \"+\" && marker !== \"-\") {\n throw new Error(\n \"Cannot serialize items with `\" + marker + \"` for `options.bullet`, expected `*`, `+`, or `-`\"\n );\n }\n return marker;\n}\nfunction checkBulletOther(state) {\n const bullet = checkBullet(state);\n const bulletOther = state.options.bulletOther;\n if (!bulletOther) {\n return bullet === \"*\" ? \"-\" : \"*\";\n }\n if (bulletOther !== \"*\" && bulletOther !== \"+\" && bulletOther !== \"-\") {\n throw new Error(\n \"Cannot serialize items with `\" + bulletOther + \"` for `options.bulletOther`, expected `*`, `+`, or `-`\"\n );\n }\n if (bulletOther === bullet) {\n throw new Error(\n \"Expected `bullet` (`\" + bullet + \"`) and `bulletOther` (`\" + bulletOther + \"`) to be different\"\n );\n }\n return bulletOther;\n}\nfunction checkBulletOrdered(state) {\n const marker = state.options.bulletOrdered || \".\";\n if (marker !== \".\" && marker !== \")\") {\n throw new Error(\n \"Cannot serialize items with `\" + marker + \"` for `options.bulletOrdered`, expected `.` or `)`\"\n );\n }\n return marker;\n}\nfunction checkRule(state) {\n const marker = state.options.rule || \"*\";\n if (marker !== \"*\" && marker !== \"-\" && marker !== \"_\") {\n throw new Error(\n \"Cannot serialize rules with `\" + marker + \"` for `options.rule`, expected `*`, `-`, or `_`\"\n );\n }\n return marker;\n}\nfunction list(node2, parent, state, info) {\n const exit2 = state.enter(\"list\");\n const bulletCurrent = state.bulletCurrent;\n let bullet = node2.ordered ? checkBulletOrdered(state) : checkBullet(state);\n const bulletOther = node2.ordered ? bullet === \".\" ? \")\" : \".\" : checkBulletOther(state);\n let useDifferentMarker = parent && state.bulletLastUsed ? bullet === state.bulletLastUsed : false;\n if (!node2.ordered) {\n const firstListItem = node2.children ? node2.children[0] : void 0;\n if (\n // Bullet could be used as a thematic break marker:\n (bullet === \"*\" || bullet === \"-\") && // Empty first list item:\n firstListItem && (!firstListItem.children || !firstListItem.children[0]) && // Directly in two other list items:\n state.stack[state.stack.length - 1] === \"list\" && state.stack[state.stack.length - 2] === \"listItem\" && state.stack[state.stack.length - 3] === \"list\" && state.stack[state.stack.length - 4] === \"listItem\" && // That are each the first child.\n state.indexStack[state.indexStack.length - 1] === 0 && state.indexStack[state.indexStack.length - 2] === 0 && state.indexStack[state.indexStack.length - 3] === 0\n ) {\n useDifferentMarker = true;\n }\n if (checkRule(state) === bullet && firstListItem) {\n let index = -1;\n while (++index < node2.children.length) {\n const item = node2.children[index];\n if (item && item.type === \"listItem\" && item.children && item.children[0] && item.children[0].type === \"thematicBreak\") {\n useDifferentMarker = true;\n break;\n }\n }\n }\n }\n if (useDifferentMarker) {\n bullet = bulletOther;\n }\n state.bulletCurrent = bullet;\n const value = state.containerFlow(node2, info);\n state.bulletLastUsed = bullet;\n state.bulletCurrent = bulletCurrent;\n exit2();\n return value;\n}\nfunction checkListItemIndent(state) {\n const style = state.options.listItemIndent || \"one\";\n if (style !== \"tab\" && style !== \"one\" && style !== \"mixed\") {\n throw new Error(\n \"Cannot serialize items with `\" + style + \"` for `options.listItemIndent`, expected `tab`, `one`, or `mixed`\"\n );\n }\n return style;\n}\nfunction listItem(node2, parent, state, info) {\n const listItemIndent = checkListItemIndent(state);\n let bullet = state.bulletCurrent || checkBullet(state);\n if (parent && parent.type === \"list\" && parent.ordered) {\n bullet = (typeof parent.start === \"number\" && parent.start > -1 ? parent.start : 1) + (state.options.incrementListMarker === false ? 0 : parent.children.indexOf(node2)) + bullet;\n }\n let size = bullet.length + 1;\n if (listItemIndent === \"tab\" || listItemIndent === \"mixed\" && (parent && parent.type === \"list\" && parent.spread || node2.spread)) {\n size = Math.ceil(size / 4) * 4;\n }\n const tracker = state.createTracker(info);\n tracker.move(bullet + \" \".repeat(size - bullet.length));\n tracker.shift(size);\n const exit2 = state.enter(\"listItem\");\n const value = state.indentLines(\n state.containerFlow(node2, tracker.current()),\n map2\n );\n exit2();\n return value;\n function map2(line, index, blank) {\n if (index) {\n return (blank ? \"\" : \" \".repeat(size)) + line;\n }\n return (blank ? bullet : bullet + \" \".repeat(size - bullet.length)) + line;\n }\n}\nfunction paragraph(node2, _, state, info) {\n const exit2 = state.enter(\"paragraph\");\n const subexit = state.enter(\"phrasing\");\n const value = state.containerPhrasing(node2, info);\n subexit();\n exit2();\n return value;\n}\nconst phrasing = (\n /** @type {(node?: unknown) => node is Exclude} */\n convert([\n \"break\",\n \"delete\",\n \"emphasis\",\n // To do: next major: removed since footnotes were added to GFM.\n \"footnote\",\n \"footnoteReference\",\n \"image\",\n \"imageReference\",\n \"inlineCode\",\n // Enabled by `mdast-util-math`:\n \"inlineMath\",\n \"link\",\n \"linkReference\",\n // Enabled by `mdast-util-mdx`:\n \"mdxJsxTextElement\",\n // Enabled by `mdast-util-mdx`:\n \"mdxTextExpression\",\n \"strong\",\n \"text\",\n // Enabled by `mdast-util-directive`:\n \"textDirective\"\n ])\n);\nfunction root(node2, _, state, info) {\n const hasPhrasing = node2.children.some(function(d) {\n return phrasing(d);\n });\n const fn = hasPhrasing ? state.containerPhrasing : state.containerFlow;\n return fn.call(state, node2, info);\n}\nfunction checkStrong(state) {\n const marker = state.options.strong || \"*\";\n if (marker !== \"*\" && marker !== \"_\") {\n throw new Error(\n \"Cannot serialize strong with `\" + marker + \"` for `options.strong`, expected `*`, or `_`\"\n );\n }\n return marker;\n}\nstrong.peek = strongPeek;\nfunction strong(node2, _, state, info) {\n const marker = checkStrong(state);\n const exit2 = state.enter(\"strong\");\n const tracker = state.createTracker(info);\n let value = tracker.move(marker + marker);\n value += tracker.move(\n state.containerPhrasing(node2, {\n before: value,\n after: marker,\n ...tracker.current()\n })\n );\n value += tracker.move(marker + marker);\n exit2();\n return value;\n}\nfunction strongPeek(_, _1, state) {\n return state.options.strong || \"*\";\n}\nfunction text$1(node2, _, state, info) {\n return state.safe(node2.value, info);\n}\nfunction checkRuleRepetition(state) {\n const repetition = state.options.ruleRepetition || 3;\n if (repetition < 3) {\n throw new Error(\n \"Cannot serialize rules with repetition `\" + repetition + \"` for `options.ruleRepetition`, expected `3` or more\"\n );\n }\n return repetition;\n}\nfunction thematicBreak(_, _1, state) {\n const value = (checkRule(state) + (state.options.ruleSpaces ? \" \" : \"\")).repeat(checkRuleRepetition(state));\n return state.options.ruleSpaces ? value.slice(0, -1) : value;\n}\nconst handle = {\n blockquote,\n break: hardBreak,\n code: code$1,\n definition,\n emphasis,\n hardBreak,\n heading,\n html,\n image,\n imageReference,\n inlineCode,\n link,\n linkReference,\n list,\n listItem,\n paragraph,\n root,\n strong,\n text: text$1,\n thematicBreak\n};\nfunction gfmTableFromMarkdown() {\n return {\n enter: {\n table: enterTable,\n tableData: enterCell,\n tableHeader: enterCell,\n tableRow: enterRow\n },\n exit: {\n codeText: exitCodeText,\n table: exitTable,\n tableData: exit,\n tableHeader: exit,\n tableRow: exit\n }\n };\n}\nfunction enterTable(token) {\n const align = token._align;\n this.enter(\n {\n type: \"table\",\n align: align.map(function(d) {\n return d === \"none\" ? null : d;\n }),\n children: []\n },\n token\n );\n this.data.inTable = true;\n}\nfunction exitTable(token) {\n this.exit(token);\n this.data.inTable = void 0;\n}\nfunction enterRow(token) {\n this.enter({ type: \"tableRow\", children: [] }, token);\n}\nfunction exit(token) {\n this.exit(token);\n}\nfunction enterCell(token) {\n this.enter({ type: \"tableCell\", children: [] }, token);\n}\nfunction exitCodeText(token) {\n let value = this.resume();\n if (this.data.inTable) {\n value = value.replace(/\\\\([\\\\|])/g, replace);\n }\n const node2 = this.stack[this.stack.length - 1];\n ok$1(node2.type === \"inlineCode\");\n node2.value = value;\n this.exit(token);\n}\nfunction replace($0, $1) {\n return $1 === \"|\" ? $1 : $0;\n}\nfunction gfmTableToMarkdown(options) {\n const settings = options || {};\n const padding = settings.tableCellPadding;\n const alignDelimiters = settings.tablePipeAlign;\n const stringLength = settings.stringLength;\n const around = padding ? \" \" : \"|\";\n return {\n unsafe: [\n { character: \"\\r\", inConstruct: \"tableCell\" },\n { character: \"\\n\", inConstruct: \"tableCell\" },\n // A pipe, when followed by a tab or space (padding), or a dash or colon\n // (unpadded delimiter row), could result in a table.\n { atBreak: true, character: \"|\", after: \"[\t :-]\" },\n // A pipe in a cell must be encoded.\n { character: \"|\", inConstruct: \"tableCell\" },\n // A colon must be followed by a dash, in which case it could start a\n // delimiter row.\n { atBreak: true, character: \":\", after: \"-\" },\n // A delimiter row can also start with a dash, when followed by more\n // dashes, a colon, or a pipe.\n // This is a stricter version than the built in check for lists, thematic\n // breaks, and setex heading underlines though:\n // \n { atBreak: true, character: \"-\", after: \"[:|-]\" }\n ],\n handlers: {\n inlineCode: inlineCodeWithTable,\n table: handleTable,\n tableCell: handleTableCell,\n tableRow: handleTableRow\n }\n };\n function handleTable(node2, _, state, info) {\n return serializeData(handleTableAsData(node2, state, info), node2.align);\n }\n function handleTableRow(node2, _, state, info) {\n const row = handleTableRowAsData(node2, state, info);\n const value = serializeData([row]);\n return value.slice(0, value.indexOf(\"\\n\"));\n }\n function handleTableCell(node2, _, state, info) {\n const exit2 = state.enter(\"tableCell\");\n const subexit = state.enter(\"phrasing\");\n const value = state.containerPhrasing(node2, {\n ...info,\n before: around,\n after: around\n });\n subexit();\n exit2();\n return value;\n }\n function serializeData(matrix, align) {\n return markdownTable(matrix, {\n align,\n // @ts-expect-error: `markdown-table` types should support `null`.\n alignDelimiters,\n // @ts-expect-error: `markdown-table` types should support `null`.\n padding,\n // @ts-expect-error: `markdown-table` types should support `null`.\n stringLength\n });\n }\n function handleTableAsData(node2, state, info) {\n const children = node2.children;\n let index = -1;\n const result = [];\n const subexit = state.enter(\"table\");\n while (++index < children.length) {\n result[index] = handleTableRowAsData(children[index], state, info);\n }\n subexit();\n return result;\n }\n function handleTableRowAsData(node2, state, info) {\n const children = node2.children;\n let index = -1;\n const result = [];\n const subexit = state.enter(\"tableRow\");\n while (++index < children.length) {\n result[index] = handleTableCell(children[index], node2, state, info);\n }\n subexit();\n return result;\n }\n function inlineCodeWithTable(node2, parent, state) {\n let value = handle.inlineCode(node2, parent, state);\n if (state.stack.includes(\"tableCell\")) {\n value = value.replace(/\\|/g, \"\\\\$&\");\n }\n return value;\n }\n}\nfunction gfmTaskListItemFromMarkdown() {\n return {\n exit: {\n taskListCheckValueChecked: exitCheck,\n taskListCheckValueUnchecked: exitCheck,\n paragraph: exitParagraphWithTaskListItem\n }\n };\n}\nfunction gfmTaskListItemToMarkdown() {\n return {\n unsafe: [{ atBreak: true, character: \"-\", after: \"[:|-]\" }],\n handlers: { listItem: listItemWithTaskListItem }\n };\n}\nfunction exitCheck(token) {\n const node2 = this.stack[this.stack.length - 2];\n ok$1(node2.type === \"listItem\");\n node2.checked = token.type === \"taskListCheckValueChecked\";\n}\nfunction exitParagraphWithTaskListItem(token) {\n const parent = this.stack[this.stack.length - 2];\n if (parent && parent.type === \"listItem\" && typeof parent.checked === \"boolean\") {\n const node2 = this.stack[this.stack.length - 1];\n ok$1(node2.type === \"paragraph\");\n const head = node2.children[0];\n if (head && head.type === \"text\") {\n const siblings = parent.children;\n let index = -1;\n let firstParaghraph;\n while (++index < siblings.length) {\n const sibling = siblings[index];\n if (sibling.type === \"paragraph\") {\n firstParaghraph = sibling;\n break;\n }\n }\n if (firstParaghraph === node2) {\n head.value = head.value.slice(1);\n if (head.value.length === 0) {\n node2.children.shift();\n } else if (node2.position && head.position && typeof head.position.start.offset === \"number\") {\n head.position.start.column++;\n head.position.start.offset++;\n node2.position.start = Object.assign({}, head.position.start);\n }\n }\n }\n }\n this.exit(token);\n}\nfunction listItemWithTaskListItem(node2, parent, state, info) {\n const head = node2.children[0];\n const checkable = typeof node2.checked === \"boolean\" && head && head.type === \"paragraph\";\n const checkbox = \"[\" + (node2.checked ? \"x\" : \" \") + \"] \";\n const tracker = state.createTracker(info);\n if (checkable) {\n tracker.move(checkbox);\n }\n let value = handle.listItem(node2, parent, state, {\n ...info,\n ...tracker.current()\n });\n if (checkable) {\n value = value.replace(/^(?:[*+-]|\\d+\\.)([\\r\\n]| {1,3})/, check);\n }\n return value;\n function check($0) {\n return $0 + checkbox;\n }\n}\nfunction gfmFromMarkdown() {\n return [\n gfmAutolinkLiteralFromMarkdown(),\n gfmFootnoteFromMarkdown(),\n gfmStrikethroughFromMarkdown(),\n gfmTableFromMarkdown(),\n gfmTaskListItemFromMarkdown()\n ];\n}\nfunction gfmToMarkdown(options) {\n return {\n extensions: [\n gfmAutolinkLiteralToMarkdown(),\n gfmFootnoteToMarkdown(),\n gfmStrikethroughToMarkdown(),\n gfmTableToMarkdown(options),\n gfmTaskListItemToMarkdown()\n ]\n };\n}\nfunction splice(list2, start, remove, items) {\n const end = list2.length;\n let chunkStart = 0;\n let parameters;\n if (start < 0) {\n start = -start > end ? 0 : end + start;\n } else {\n start = start > end ? end : start;\n }\n remove = remove > 0 ? remove : 0;\n if (items.length < 1e4) {\n parameters = Array.from(items);\n parameters.unshift(start, remove);\n list2.splice(...parameters);\n } else {\n if (remove) list2.splice(start, remove);\n while (chunkStart < items.length) {\n parameters = items.slice(chunkStart, chunkStart + 1e4);\n parameters.unshift(start, 0);\n list2.splice(...parameters);\n chunkStart += 1e4;\n start += 1e4;\n }\n }\n}\nconst hasOwnProperty = {}.hasOwnProperty;\nfunction combineExtensions(extensions) {\n const all2 = {};\n let index = -1;\n while (++index < extensions.length) {\n syntaxExtension(all2, extensions[index]);\n }\n return all2;\n}\nfunction syntaxExtension(all2, extension) {\n let hook;\n for (hook in extension) {\n const maybe = hasOwnProperty.call(all2, hook) ? all2[hook] : void 0;\n const left = maybe || (all2[hook] = {});\n const right = extension[hook];\n let code2;\n if (right) {\n for (code2 in right) {\n if (!hasOwnProperty.call(left, code2)) left[code2] = [];\n const value = right[code2];\n constructs(\n // @ts-expect-error Looks like a list.\n left[code2],\n Array.isArray(value) ? value : value ? [value] : []\n );\n }\n }\n }\n}\nfunction constructs(existing, list2) {\n let index = -1;\n const before = [];\n while (++index < list2.length) {\n (list2[index].add === \"after\" ? existing : before).push(list2[index]);\n }\n splice(existing, 0, 0, before);\n}\nconst wwwPrefix = {\n tokenize: tokenizeWwwPrefix,\n partial: true\n};\nconst domain = {\n tokenize: tokenizeDomain,\n partial: true\n};\nconst path = {\n tokenize: tokenizePath,\n partial: true\n};\nconst trail = {\n tokenize: tokenizeTrail,\n partial: true\n};\nconst emailDomainDotTrail = {\n tokenize: tokenizeEmailDomainDotTrail,\n partial: true\n};\nconst wwwAutolink = {\n tokenize: tokenizeWwwAutolink,\n previous: previousWww\n};\nconst protocolAutolink = {\n tokenize: tokenizeProtocolAutolink,\n previous: previousProtocol\n};\nconst emailAutolink = {\n tokenize: tokenizeEmailAutolink,\n previous: previousEmail\n};\nconst text = {};\nfunction gfmAutolinkLiteral() {\n return {\n text\n };\n}\nlet code = 48;\nwhile (code < 123) {\n text[code] = emailAutolink;\n code++;\n if (code === 58) code = 65;\n else if (code === 91) code = 97;\n}\ntext[43] = emailAutolink;\ntext[45] = emailAutolink;\ntext[46] = emailAutolink;\ntext[95] = emailAutolink;\ntext[72] = [emailAutolink, protocolAutolink];\ntext[104] = [emailAutolink, protocolAutolink];\ntext[87] = [emailAutolink, wwwAutolink];\ntext[119] = [emailAutolink, wwwAutolink];\nfunction tokenizeEmailAutolink(effects, ok2, nok) {\n const self = this;\n let dot;\n let data;\n return start;\n function start(code2) {\n if (!gfmAtext(code2) || !previousEmail.call(self, self.previous) || previousUnbalanced(self.events)) {\n return nok(code2);\n }\n effects.enter(\"literalAutolink\");\n effects.enter(\"literalAutolinkEmail\");\n return atext(code2);\n }\n function atext(code2) {\n if (gfmAtext(code2)) {\n effects.consume(code2);\n return atext;\n }\n if (code2 === 64) {\n effects.consume(code2);\n return emailDomain;\n }\n return nok(code2);\n }\n function emailDomain(code2) {\n if (code2 === 46) {\n return effects.check(\n emailDomainDotTrail,\n emailDomainAfter,\n emailDomainDot\n )(code2);\n }\n if (code2 === 45 || code2 === 95 || asciiAlphanumeric(code2)) {\n data = true;\n effects.consume(code2);\n return emailDomain;\n }\n return emailDomainAfter(code2);\n }\n function emailDomainDot(code2) {\n effects.consume(code2);\n dot = true;\n return emailDomain;\n }\n function emailDomainAfter(code2) {\n if (data && dot && asciiAlpha(self.previous)) {\n effects.exit(\"literalAutolinkEmail\");\n effects.exit(\"literalAutolink\");\n return ok2(code2);\n }\n return nok(code2);\n }\n}\nfunction tokenizeWwwAutolink(effects, ok2, nok) {\n const self = this;\n return wwwStart;\n function wwwStart(code2) {\n if (code2 !== 87 && code2 !== 119 || !previousWww.call(self, self.previous) || previousUnbalanced(self.events)) {\n return nok(code2);\n }\n effects.enter(\"literalAutolink\");\n effects.enter(\"literalAutolinkWww\");\n return effects.check(\n wwwPrefix,\n effects.attempt(domain, effects.attempt(path, wwwAfter), nok),\n nok\n )(code2);\n }\n function wwwAfter(code2) {\n effects.exit(\"literalAutolinkWww\");\n effects.exit(\"literalAutolink\");\n return ok2(code2);\n }\n}\nfunction tokenizeProtocolAutolink(effects, ok2, nok) {\n const self = this;\n let buffer = \"\";\n let seen = false;\n return protocolStart;\n function protocolStart(code2) {\n if ((code2 === 72 || code2 === 104) && previousProtocol.call(self, self.previous) && !previousUnbalanced(self.events)) {\n effects.enter(\"literalAutolink\");\n effects.enter(\"literalAutolinkHttp\");\n buffer += String.fromCodePoint(code2);\n effects.consume(code2);\n return protocolPrefixInside;\n }\n return nok(code2);\n }\n function protocolPrefixInside(code2) {\n if (asciiAlpha(code2) && buffer.length < 5) {\n buffer += String.fromCodePoint(code2);\n effects.consume(code2);\n return protocolPrefixInside;\n }\n if (code2 === 58) {\n const protocol = buffer.toLowerCase();\n if (protocol === \"http\" || protocol === \"https\") {\n effects.consume(code2);\n return protocolSlashesInside;\n }\n }\n return nok(code2);\n }\n function protocolSlashesInside(code2) {\n if (code2 === 47) {\n effects.consume(code2);\n if (seen) {\n return afterProtocol;\n }\n seen = true;\n return protocolSlashesInside;\n }\n return nok(code2);\n }\n function afterProtocol(code2) {\n return code2 === null || asciiControl(code2) || markdownLineEndingOrSpace(code2) || unicodeWhitespace(code2) || unicodePunctuation(code2) ? nok(code2) : effects.attempt(domain, effects.attempt(path, protocolAfter), nok)(code2);\n }\n function protocolAfter(code2) {\n effects.exit(\"literalAutolinkHttp\");\n effects.exit(\"literalAutolink\");\n return ok2(code2);\n }\n}\nfunction tokenizeWwwPrefix(effects, ok2, nok) {\n let size = 0;\n return wwwPrefixInside;\n function wwwPrefixInside(code2) {\n if ((code2 === 87 || code2 === 119) && size < 3) {\n size++;\n effects.consume(code2);\n return wwwPrefixInside;\n }\n if (code2 === 46 && size === 3) {\n effects.consume(code2);\n return wwwPrefixAfter;\n }\n return nok(code2);\n }\n function wwwPrefixAfter(code2) {\n return code2 === null ? nok(code2) : ok2(code2);\n }\n}\nfunction tokenizeDomain(effects, ok2, nok) {\n let underscoreInLastSegment;\n let underscoreInLastLastSegment;\n let seen;\n return domainInside;\n function domainInside(code2) {\n if (code2 === 46 || code2 === 95) {\n return effects.check(trail, domainAfter, domainAtPunctuation)(code2);\n }\n if (code2 === null || markdownLineEndingOrSpace(code2) || unicodeWhitespace(code2) || code2 !== 45 && unicodePunctuation(code2)) {\n return domainAfter(code2);\n }\n seen = true;\n effects.consume(code2);\n return domainInside;\n }\n function domainAtPunctuation(code2) {\n if (code2 === 95) {\n underscoreInLastSegment = true;\n } else {\n underscoreInLastLastSegment = underscoreInLastSegment;\n underscoreInLastSegment = void 0;\n }\n effects.consume(code2);\n return domainInside;\n }\n function domainAfter(code2) {\n if (underscoreInLastLastSegment || underscoreInLastSegment || !seen) {\n return nok(code2);\n }\n return ok2(code2);\n }\n}\nfunction tokenizePath(effects, ok2) {\n let sizeOpen = 0;\n let sizeClose = 0;\n return pathInside;\n function pathInside(code2) {\n if (code2 === 40) {\n sizeOpen++;\n effects.consume(code2);\n return pathInside;\n }\n if (code2 === 41 && sizeClose < sizeOpen) {\n return pathAtPunctuation(code2);\n }\n if (code2 === 33 || code2 === 34 || code2 === 38 || code2 === 39 || code2 === 41 || code2 === 42 || code2 === 44 || code2 === 46 || code2 === 58 || code2 === 59 || code2 === 60 || code2 === 63 || code2 === 93 || code2 === 95 || code2 === 126) {\n return effects.check(trail, ok2, pathAtPunctuation)(code2);\n }\n if (code2 === null || markdownLineEndingOrSpace(code2) || unicodeWhitespace(code2)) {\n return ok2(code2);\n }\n effects.consume(code2);\n return pathInside;\n }\n function pathAtPunctuation(code2) {\n if (code2 === 41) {\n sizeClose++;\n }\n effects.consume(code2);\n return pathInside;\n }\n}\nfunction tokenizeTrail(effects, ok2, nok) {\n return trail2;\n function trail2(code2) {\n if (code2 === 33 || code2 === 34 || code2 === 39 || code2 === 41 || code2 === 42 || code2 === 44 || code2 === 46 || code2 === 58 || code2 === 59 || code2 === 63 || code2 === 95 || code2 === 126) {\n effects.consume(code2);\n return trail2;\n }\n if (code2 === 38) {\n effects.consume(code2);\n return trailCharRefStart;\n }\n if (code2 === 93) {\n effects.consume(code2);\n return trailBracketAfter;\n }\n if (\n // `<` is an end.\n code2 === 60 || // So is whitespace.\n code2 === null || markdownLineEndingOrSpace(code2) || unicodeWhitespace(code2)\n ) {\n return ok2(code2);\n }\n return nok(code2);\n }\n function trailBracketAfter(code2) {\n if (code2 === null || code2 === 40 || code2 === 91 || markdownLineEndingOrSpace(code2) || unicodeWhitespace(code2)) {\n return ok2(code2);\n }\n return trail2(code2);\n }\n function trailCharRefStart(code2) {\n return asciiAlpha(code2) ? trailCharRefInside(code2) : nok(code2);\n }\n function trailCharRefInside(code2) {\n if (code2 === 59) {\n effects.consume(code2);\n return trail2;\n }\n if (asciiAlpha(code2)) {\n effects.consume(code2);\n return trailCharRefInside;\n }\n return nok(code2);\n }\n}\nfunction tokenizeEmailDomainDotTrail(effects, ok2, nok) {\n return start;\n function start(code2) {\n effects.consume(code2);\n return after;\n }\n function after(code2) {\n return asciiAlphanumeric(code2) ? nok(code2) : ok2(code2);\n }\n}\nfunction previousWww(code2) {\n return code2 === null || code2 === 40 || code2 === 42 || code2 === 95 || code2 === 91 || code2 === 93 || code2 === 126 || markdownLineEndingOrSpace(code2);\n}\nfunction previousProtocol(code2) {\n return !asciiAlpha(code2);\n}\nfunction previousEmail(code2) {\n return !(code2 === 47 || gfmAtext(code2));\n}\nfunction gfmAtext(code2) {\n return code2 === 43 || code2 === 45 || code2 === 46 || code2 === 95 || asciiAlphanumeric(code2);\n}\nfunction previousUnbalanced(events) {\n let index = events.length;\n let result = false;\n while (index--) {\n const token = events[index][1];\n if ((token.type === \"labelLink\" || token.type === \"labelImage\") && !token._balanced) {\n result = true;\n break;\n }\n if (token._gfmAutolinkLiteralWalkedInto) {\n result = false;\n break;\n }\n }\n if (events.length > 0 && !result) {\n events[events.length - 1][1]._gfmAutolinkLiteralWalkedInto = true;\n }\n return result;\n}\nfunction classifyCharacter(code2) {\n if (code2 === null || markdownLineEndingOrSpace(code2) || unicodeWhitespace(code2)) {\n return 1;\n }\n if (unicodePunctuation(code2)) {\n return 2;\n }\n}\nfunction resolveAll(constructs2, events, context) {\n const called = [];\n let index = -1;\n while (++index < constructs2.length) {\n const resolve = constructs2[index].resolveAll;\n if (resolve && !called.includes(resolve)) {\n events = resolve(events, context);\n called.push(resolve);\n }\n }\n return events;\n}\nfunction factorySpace(effects, ok2, type, max) {\n const limit = max ? max - 1 : Number.POSITIVE_INFINITY;\n let size = 0;\n return start;\n function start(code2) {\n if (markdownSpace(code2)) {\n effects.enter(type);\n return prefix(code2);\n }\n return ok2(code2);\n }\n function prefix(code2) {\n if (markdownSpace(code2) && size++ < limit) {\n effects.consume(code2);\n return prefix;\n }\n effects.exit(type);\n return ok2(code2);\n }\n}\nconst blankLine = {\n tokenize: tokenizeBlankLine,\n partial: true\n};\nfunction tokenizeBlankLine(effects, ok2, nok) {\n return start;\n function start(code2) {\n return markdownSpace(code2) ? factorySpace(effects, after, \"linePrefix\")(code2) : after(code2);\n }\n function after(code2) {\n return code2 === null || markdownLineEnding(code2) ? ok2(code2) : nok(code2);\n }\n}\nconst indent = {\n tokenize: tokenizeIndent,\n partial: true\n};\nfunction gfmFootnote() {\n return {\n document: {\n [91]: {\n tokenize: tokenizeDefinitionStart,\n continuation: {\n tokenize: tokenizeDefinitionContinuation\n },\n exit: gfmFootnoteDefinitionEnd\n }\n },\n text: {\n [91]: {\n tokenize: tokenizeGfmFootnoteCall\n },\n [93]: {\n add: \"after\",\n tokenize: tokenizePotentialGfmFootnoteCall,\n resolveTo: resolveToPotentialGfmFootnoteCall\n }\n }\n };\n}\nfunction tokenizePotentialGfmFootnoteCall(effects, ok2, nok) {\n const self = this;\n let index = self.events.length;\n const defined = self.parser.gfmFootnotes || (self.parser.gfmFootnotes = []);\n let labelStart;\n while (index--) {\n const token = self.events[index][1];\n if (token.type === \"labelImage\") {\n labelStart = token;\n break;\n }\n if (token.type === \"gfmFootnoteCall\" || token.type === \"labelLink\" || token.type === \"label\" || token.type === \"image\" || token.type === \"link\") {\n break;\n }\n }\n return start;\n function start(code2) {\n if (!labelStart || !labelStart._balanced) {\n return nok(code2);\n }\n const id = normalizeIdentifier(\n self.sliceSerialize({\n start: labelStart.end,\n end: self.now()\n })\n );\n if (id.codePointAt(0) !== 94 || !defined.includes(id.slice(1))) {\n return nok(code2);\n }\n effects.enter(\"gfmFootnoteCallLabelMarker\");\n effects.consume(code2);\n effects.exit(\"gfmFootnoteCallLabelMarker\");\n return ok2(code2);\n }\n}\nfunction resolveToPotentialGfmFootnoteCall(events, context) {\n let index = events.length;\n while (index--) {\n if (events[index][1].type === \"labelImage\" && events[index][0] === \"enter\") {\n events[index][1];\n break;\n }\n }\n events[index + 1][1].type = \"data\";\n events[index + 3][1].type = \"gfmFootnoteCallLabelMarker\";\n const call = {\n type: \"gfmFootnoteCall\",\n start: Object.assign({}, events[index + 3][1].start),\n end: Object.assign({}, events[events.length - 1][1].end)\n };\n const marker = {\n type: \"gfmFootnoteCallMarker\",\n start: Object.assign({}, events[index + 3][1].end),\n end: Object.assign({}, events[index + 3][1].end)\n };\n marker.end.column++;\n marker.end.offset++;\n marker.end._bufferIndex++;\n const string = {\n type: \"gfmFootnoteCallString\",\n start: Object.assign({}, marker.end),\n end: Object.assign({}, events[events.length - 1][1].start)\n };\n const chunk = {\n type: \"chunkString\",\n contentType: \"string\",\n start: Object.assign({}, string.start),\n end: Object.assign({}, string.end)\n };\n const replacement = [\n // Take the `labelImageMarker` (now `data`, the `!`)\n events[index + 1],\n events[index + 2],\n [\"enter\", call, context],\n // The `[`\n events[index + 3],\n events[index + 4],\n // The `^`.\n [\"enter\", marker, context],\n [\"exit\", marker, context],\n // Everything in between.\n [\"enter\", string, context],\n [\"enter\", chunk, context],\n [\"exit\", chunk, context],\n [\"exit\", string, context],\n // The ending (`]`, properly parsed and labelled).\n events[events.length - 2],\n events[events.length - 1],\n [\"exit\", call, context]\n ];\n events.splice(index, events.length - index + 1, ...replacement);\n return events;\n}\nfunction tokenizeGfmFootnoteCall(effects, ok2, nok) {\n const self = this;\n const defined = self.parser.gfmFootnotes || (self.parser.gfmFootnotes = []);\n let size = 0;\n let data;\n return start;\n function start(code2) {\n effects.enter(\"gfmFootnoteCall\");\n effects.enter(\"gfmFootnoteCallLabelMarker\");\n effects.consume(code2);\n effects.exit(\"gfmFootnoteCallLabelMarker\");\n return callStart;\n }\n function callStart(code2) {\n if (code2 !== 94) return nok(code2);\n effects.enter(\"gfmFootnoteCallMarker\");\n effects.consume(code2);\n effects.exit(\"gfmFootnoteCallMarker\");\n effects.enter(\"gfmFootnoteCallString\");\n effects.enter(\"chunkString\").contentType = \"string\";\n return callData;\n }\n function callData(code2) {\n if (\n // Too long.\n size > 999 || // Closing brace with nothing.\n code2 === 93 && !data || // Space or tab is not supported by GFM for some reason.\n // `\\n` and `[` not being supported makes sense.\n code2 === null || code2 === 91 || markdownLineEndingOrSpace(code2)\n ) {\n return nok(code2);\n }\n if (code2 === 93) {\n effects.exit(\"chunkString\");\n const token = effects.exit(\"gfmFootnoteCallString\");\n if (!defined.includes(normalizeIdentifier(self.sliceSerialize(token)))) {\n return nok(code2);\n }\n effects.enter(\"gfmFootnoteCallLabelMarker\");\n effects.consume(code2);\n effects.exit(\"gfmFootnoteCallLabelMarker\");\n effects.exit(\"gfmFootnoteCall\");\n return ok2;\n }\n if (!markdownLineEndingOrSpace(code2)) {\n data = true;\n }\n size++;\n effects.consume(code2);\n return code2 === 92 ? callEscape : callData;\n }\n function callEscape(code2) {\n if (code2 === 91 || code2 === 92 || code2 === 93) {\n effects.consume(code2);\n size++;\n return callData;\n }\n return callData(code2);\n }\n}\nfunction tokenizeDefinitionStart(effects, ok2, nok) {\n const self = this;\n const defined = self.parser.gfmFootnotes || (self.parser.gfmFootnotes = []);\n let identifier;\n let size = 0;\n let data;\n return start;\n function start(code2) {\n effects.enter(\"gfmFootnoteDefinition\")._container = true;\n effects.enter(\"gfmFootnoteDefinitionLabel\");\n effects.enter(\"gfmFootnoteDefinitionLabelMarker\");\n effects.consume(code2);\n effects.exit(\"gfmFootnoteDefinitionLabelMarker\");\n return labelAtMarker;\n }\n function labelAtMarker(code2) {\n if (code2 === 94) {\n effects.enter(\"gfmFootnoteDefinitionMarker\");\n effects.consume(code2);\n effects.exit(\"gfmFootnoteDefinitionMarker\");\n effects.enter(\"gfmFootnoteDefinitionLabelString\");\n effects.enter(\"chunkString\").contentType = \"string\";\n return labelInside;\n }\n return nok(code2);\n }\n function labelInside(code2) {\n if (\n // Too long.\n size > 999 || // Closing brace with nothing.\n code2 === 93 && !data || // Space or tab is not supported by GFM for some reason.\n // `\\n` and `[` not being supported makes sense.\n code2 === null || code2 === 91 || markdownLineEndingOrSpace(code2)\n ) {\n return nok(code2);\n }\n if (code2 === 93) {\n effects.exit(\"chunkString\");\n const token = effects.exit(\"gfmFootnoteDefinitionLabelString\");\n identifier = normalizeIdentifier(self.sliceSerialize(token));\n effects.enter(\"gfmFootnoteDefinitionLabelMarker\");\n effects.consume(code2);\n effects.exit(\"gfmFootnoteDefinitionLabelMarker\");\n effects.exit(\"gfmFootnoteDefinitionLabel\");\n return labelAfter;\n }\n if (!markdownLineEndingOrSpace(code2)) {\n data = true;\n }\n size++;\n effects.consume(code2);\n return code2 === 92 ? labelEscape : labelInside;\n }\n function labelEscape(code2) {\n if (code2 === 91 || code2 === 92 || code2 === 93) {\n effects.consume(code2);\n size++;\n return labelInside;\n }\n return labelInside(code2);\n }\n function labelAfter(code2) {\n if (code2 === 58) {\n effects.enter(\"definitionMarker\");\n effects.consume(code2);\n effects.exit(\"definitionMarker\");\n if (!defined.includes(identifier)) {\n defined.push(identifier);\n }\n return factorySpace(\n effects,\n whitespaceAfter,\n \"gfmFootnoteDefinitionWhitespace\"\n );\n }\n return nok(code2);\n }\n function whitespaceAfter(code2) {\n return ok2(code2);\n }\n}\nfunction tokenizeDefinitionContinuation(effects, ok2, nok) {\n return effects.check(blankLine, ok2, effects.attempt(indent, ok2, nok));\n}\nfunction gfmFootnoteDefinitionEnd(effects) {\n effects.exit(\"gfmFootnoteDefinition\");\n}\nfunction tokenizeIndent(effects, ok2, nok) {\n const self = this;\n return factorySpace(\n effects,\n afterPrefix,\n \"gfmFootnoteDefinitionIndent\",\n 4 + 1\n );\n function afterPrefix(code2) {\n const tail = self.events[self.events.length - 1];\n return tail && tail[1].type === \"gfmFootnoteDefinitionIndent\" && tail[2].sliceSerialize(tail[1], true).length === 4 ? ok2(code2) : nok(code2);\n }\n}\nfunction gfmStrikethrough(options) {\n const options_ = options || {};\n let single = options_.singleTilde;\n const tokenizer = {\n tokenize: tokenizeStrikethrough,\n resolveAll: resolveAllStrikethrough\n };\n if (single === null || single === void 0) {\n single = true;\n }\n return {\n text: {\n [126]: tokenizer\n },\n insideSpan: {\n null: [tokenizer]\n },\n attentionMarkers: {\n null: [126]\n }\n };\n function resolveAllStrikethrough(events, context) {\n let index = -1;\n while (++index < events.length) {\n if (events[index][0] === \"enter\" && events[index][1].type === \"strikethroughSequenceTemporary\" && events[index][1]._close) {\n let open = index;\n while (open--) {\n if (events[open][0] === \"exit\" && events[open][1].type === \"strikethroughSequenceTemporary\" && events[open][1]._open && // If the sizes are the same:\n events[index][1].end.offset - events[index][1].start.offset === events[open][1].end.offset - events[open][1].start.offset) {\n events[index][1].type = \"strikethroughSequence\";\n events[open][1].type = \"strikethroughSequence\";\n const strikethrough = {\n type: \"strikethrough\",\n start: Object.assign({}, events[open][1].start),\n end: Object.assign({}, events[index][1].end)\n };\n const text2 = {\n type: \"strikethroughText\",\n start: Object.assign({}, events[open][1].end),\n end: Object.assign({}, events[index][1].start)\n };\n const nextEvents = [\n [\"enter\", strikethrough, context],\n [\"enter\", events[open][1], context],\n [\"exit\", events[open][1], context],\n [\"enter\", text2, context]\n ];\n const insideSpan = context.parser.constructs.insideSpan.null;\n if (insideSpan) {\n splice(\n nextEvents,\n nextEvents.length,\n 0,\n resolveAll(insideSpan, events.slice(open + 1, index), context)\n );\n }\n splice(nextEvents, nextEvents.length, 0, [\n [\"exit\", text2, context],\n [\"enter\", events[index][1], context],\n [\"exit\", events[index][1], context],\n [\"exit\", strikethrough, context]\n ]);\n splice(events, open - 1, index - open + 3, nextEvents);\n index = open + nextEvents.length - 2;\n break;\n }\n }\n }\n }\n index = -1;\n while (++index < events.length) {\n if (events[index][1].type === \"strikethroughSequenceTemporary\") {\n events[index][1].type = \"data\";\n }\n }\n return events;\n }\n function tokenizeStrikethrough(effects, ok2, nok) {\n const previous2 = this.previous;\n const events = this.events;\n let size = 0;\n return start;\n function start(code2) {\n if (previous2 === 126 && events[events.length - 1][1].type !== \"characterEscape\") {\n return nok(code2);\n }\n effects.enter(\"strikethroughSequenceTemporary\");\n return more(code2);\n }\n function more(code2) {\n const before = classifyCharacter(previous2);\n if (code2 === 126) {\n if (size > 1) return nok(code2);\n effects.consume(code2);\n size++;\n return more;\n }\n if (size < 2 && !single) return nok(code2);\n const token = effects.exit(\"strikethroughSequenceTemporary\");\n const after = classifyCharacter(code2);\n token._open = !after || after === 2 && Boolean(before);\n token._close = !before || before === 2 && Boolean(after);\n return ok2(code2);\n }\n }\n}\nclass EditMap {\n /**\n * Create a new edit map.\n */\n constructor() {\n this.map = [];\n }\n /**\n * Create an edit: a remove and/or add at a certain place.\n *\n * @param {number} index\n * @param {number} remove\n * @param {Array} add\n * @returns {undefined}\n */\n add(index, remove, add) {\n addImpl(this, index, remove, add);\n }\n // To do: add this when moving to `micromark`.\n // /**\n // * Create an edit: but insert `add` before existing additions.\n // *\n // * @param {number} index\n // * @param {number} remove\n // * @param {Array} add\n // * @returns {undefined}\n // */\n // addBefore(index, remove, add) {\n // addImpl(this, index, remove, add, true)\n // }\n /**\n * Done, change the events.\n *\n * @param {Array} events\n * @returns {undefined}\n */\n consume(events) {\n this.map.sort(function(a, b) {\n return a[0] - b[0];\n });\n if (this.map.length === 0) {\n return;\n }\n let index = this.map.length;\n const vecs = [];\n while (index > 0) {\n index -= 1;\n vecs.push(\n events.slice(this.map[index][0] + this.map[index][1]),\n this.map[index][2]\n );\n events.length = this.map[index][0];\n }\n vecs.push([...events]);\n events.length = 0;\n let slice = vecs.pop();\n while (slice) {\n events.push(...slice);\n slice = vecs.pop();\n }\n this.map.length = 0;\n }\n}\nfunction addImpl(editMap, at, remove, add) {\n let index = 0;\n if (remove === 0 && add.length === 0) {\n return;\n }\n while (index < editMap.map.length) {\n if (editMap.map[index][0] === at) {\n editMap.map[index][1] += remove;\n editMap.map[index][2].push(...add);\n return;\n }\n index += 1;\n }\n editMap.map.push([at, remove, add]);\n}\nfunction gfmTableAlign(events, index) {\n let inDelimiterRow = false;\n const align = [];\n while (index < events.length) {\n const event = events[index];\n if (inDelimiterRow) {\n if (event[0] === \"enter\") {\n if (event[1].type === \"tableContent\") {\n align.push(\n events[index + 1][1].type === \"tableDelimiterMarker\" ? \"left\" : \"none\"\n );\n }\n } else if (event[1].type === \"tableContent\") {\n if (events[index - 1][1].type === \"tableDelimiterMarker\") {\n const alignIndex = align.length - 1;\n align[alignIndex] = align[alignIndex] === \"left\" ? \"center\" : \"right\";\n }\n } else if (event[1].type === \"tableDelimiterRow\") {\n break;\n }\n } else if (event[0] === \"enter\" && event[1].type === \"tableDelimiterRow\") {\n inDelimiterRow = true;\n }\n index += 1;\n }\n return align;\n}\nfunction gfmTable() {\n return {\n flow: {\n null: {\n tokenize: tokenizeTable,\n resolveAll: resolveTable\n }\n }\n };\n}\nfunction tokenizeTable(effects, ok2, nok) {\n const self = this;\n let size = 0;\n let sizeB = 0;\n let seen;\n return start;\n function start(code2) {\n let index = self.events.length - 1;\n while (index > -1) {\n const type = self.events[index][1].type;\n if (type === \"lineEnding\" || // Note: markdown-rs uses `whitespace` instead of `linePrefix`\n type === \"linePrefix\")\n index--;\n else break;\n }\n const tail = index > -1 ? self.events[index][1].type : null;\n const next = tail === \"tableHead\" || tail === \"tableRow\" ? bodyRowStart : headRowBefore;\n if (next === bodyRowStart && self.parser.lazy[self.now().line]) {\n return nok(code2);\n }\n return next(code2);\n }\n function headRowBefore(code2) {\n effects.enter(\"tableHead\");\n effects.enter(\"tableRow\");\n return headRowStart(code2);\n }\n function headRowStart(code2) {\n if (code2 === 124) {\n return headRowBreak(code2);\n }\n seen = true;\n sizeB += 1;\n return headRowBreak(code2);\n }\n function headRowBreak(code2) {\n if (code2 === null) {\n return nok(code2);\n }\n if (markdownLineEnding(code2)) {\n if (sizeB > 1) {\n sizeB = 0;\n self.interrupt = true;\n effects.exit(\"tableRow\");\n effects.enter(\"lineEnding\");\n effects.consume(code2);\n effects.exit(\"lineEnding\");\n return headDelimiterStart;\n }\n return nok(code2);\n }\n if (markdownSpace(code2)) {\n return factorySpace(effects, headRowBreak, \"whitespace\")(code2);\n }\n sizeB += 1;\n if (seen) {\n seen = false;\n size += 1;\n }\n if (code2 === 124) {\n effects.enter(\"tableCellDivider\");\n effects.consume(code2);\n effects.exit(\"tableCellDivider\");\n seen = true;\n return headRowBreak;\n }\n effects.enter(\"data\");\n return headRowData(code2);\n }\n function headRowData(code2) {\n if (code2 === null || code2 === 124 || markdownLineEndingOrSpace(code2)) {\n effects.exit(\"data\");\n return headRowBreak(code2);\n }\n effects.consume(code2);\n return code2 === 92 ? headRowEscape : headRowData;\n }\n function headRowEscape(code2) {\n if (code2 === 92 || code2 === 124) {\n effects.consume(code2);\n return headRowData;\n }\n return headRowData(code2);\n }\n function headDelimiterStart(code2) {\n self.interrupt = false;\n if (self.parser.lazy[self.now().line]) {\n return nok(code2);\n }\n effects.enter(\"tableDelimiterRow\");\n seen = false;\n if (markdownSpace(code2)) {\n return factorySpace(\n effects,\n headDelimiterBefore,\n \"linePrefix\",\n self.parser.constructs.disable.null.includes(\"codeIndented\") ? void 0 : 4\n )(code2);\n }\n return headDelimiterBefore(code2);\n }\n function headDelimiterBefore(code2) {\n if (code2 === 45 || code2 === 58) {\n return headDelimiterValueBefore(code2);\n }\n if (code2 === 124) {\n seen = true;\n effects.enter(\"tableCellDivider\");\n effects.consume(code2);\n effects.exit(\"tableCellDivider\");\n return headDelimiterCellBefore;\n }\n return headDelimiterNok(code2);\n }\n function headDelimiterCellBefore(code2) {\n if (markdownSpace(code2)) {\n return factorySpace(effects, headDelimiterValueBefore, \"whitespace\")(code2);\n }\n return headDelimiterValueBefore(code2);\n }\n function headDelimiterValueBefore(code2) {\n if (code2 === 58) {\n sizeB += 1;\n seen = true;\n effects.enter(\"tableDelimiterMarker\");\n effects.consume(code2);\n effects.exit(\"tableDelimiterMarker\");\n return headDelimiterLeftAlignmentAfter;\n }\n if (code2 === 45) {\n sizeB += 1;\n return headDelimiterLeftAlignmentAfter(code2);\n }\n if (code2 === null || markdownLineEnding(code2)) {\n return headDelimiterCellAfter(code2);\n }\n return headDelimiterNok(code2);\n }\n function headDelimiterLeftAlignmentAfter(code2) {\n if (code2 === 45) {\n effects.enter(\"tableDelimiterFiller\");\n return headDelimiterFiller(code2);\n }\n return headDelimiterNok(code2);\n }\n function headDelimiterFiller(code2) {\n if (code2 === 45) {\n effects.consume(code2);\n return headDelimiterFiller;\n }\n if (code2 === 58) {\n seen = true;\n effects.exit(\"tableDelimiterFiller\");\n effects.enter(\"tableDelimiterMarker\");\n effects.consume(code2);\n effects.exit(\"tableDelimiterMarker\");\n return headDelimiterRightAlignmentAfter;\n }\n effects.exit(\"tableDelimiterFiller\");\n return headDelimiterRightAlignmentAfter(code2);\n }\n function headDelimiterRightAlignmentAfter(code2) {\n if (markdownSpace(code2)) {\n return factorySpace(effects, headDelimiterCellAfter, \"whitespace\")(code2);\n }\n return headDelimiterCellAfter(code2);\n }\n function headDelimiterCellAfter(code2) {\n if (code2 === 124) {\n return headDelimiterBefore(code2);\n }\n if (code2 === null || markdownLineEnding(code2)) {\n if (!seen || size !== sizeB) {\n return headDelimiterNok(code2);\n }\n effects.exit(\"tableDelimiterRow\");\n effects.exit(\"tableHead\");\n return ok2(code2);\n }\n return headDelimiterNok(code2);\n }\n function headDelimiterNok(code2) {\n return nok(code2);\n }\n function bodyRowStart(code2) {\n effects.enter(\"tableRow\");\n return bodyRowBreak(code2);\n }\n function bodyRowBreak(code2) {\n if (code2 === 124) {\n effects.enter(\"tableCellDivider\");\n effects.consume(code2);\n effects.exit(\"tableCellDivider\");\n return bodyRowBreak;\n }\n if (code2 === null || markdownLineEnding(code2)) {\n effects.exit(\"tableRow\");\n return ok2(code2);\n }\n if (markdownSpace(code2)) {\n return factorySpace(effects, bodyRowBreak, \"whitespace\")(code2);\n }\n effects.enter(\"data\");\n return bodyRowData(code2);\n }\n function bodyRowData(code2) {\n if (code2 === null || code2 === 124 || markdownLineEndingOrSpace(code2)) {\n effects.exit(\"data\");\n return bodyRowBreak(code2);\n }\n effects.consume(code2);\n return code2 === 92 ? bodyRowEscape : bodyRowData;\n }\n function bodyRowEscape(code2) {\n if (code2 === 92 || code2 === 124) {\n effects.consume(code2);\n return bodyRowData;\n }\n return bodyRowData(code2);\n }\n}\nfunction resolveTable(events, context) {\n let index = -1;\n let inFirstCellAwaitingPipe = true;\n let rowKind = 0;\n let lastCell = [0, 0, 0, 0];\n let cell = [0, 0, 0, 0];\n let afterHeadAwaitingFirstBodyRow = false;\n let lastTableEnd = 0;\n let currentTable;\n let currentBody;\n let currentCell;\n const map2 = new EditMap();\n while (++index < events.length) {\n const event = events[index];\n const token = event[1];\n if (event[0] === \"enter\") {\n if (token.type === \"tableHead\") {\n afterHeadAwaitingFirstBodyRow = false;\n if (lastTableEnd !== 0) {\n flushTableEnd(map2, context, lastTableEnd, currentTable, currentBody);\n currentBody = void 0;\n lastTableEnd = 0;\n }\n currentTable = {\n type: \"table\",\n start: Object.assign({}, token.start),\n // Note: correct end is set later.\n end: Object.assign({}, token.end)\n };\n map2.add(index, 0, [[\"enter\", currentTable, context]]);\n } else if (token.type === \"tableRow\" || token.type === \"tableDelimiterRow\") {\n inFirstCellAwaitingPipe = true;\n currentCell = void 0;\n lastCell = [0, 0, 0, 0];\n cell = [0, index + 1, 0, 0];\n if (afterHeadAwaitingFirstBodyRow) {\n afterHeadAwaitingFirstBodyRow = false;\n currentBody = {\n type: \"tableBody\",\n start: Object.assign({}, token.start),\n // Note: correct end is set later.\n end: Object.assign({}, token.end)\n };\n map2.add(index, 0, [[\"enter\", currentBody, context]]);\n }\n rowKind = token.type === \"tableDelimiterRow\" ? 2 : currentBody ? 3 : 1;\n } else if (rowKind && (token.type === \"data\" || token.type === \"tableDelimiterMarker\" || token.type === \"tableDelimiterFiller\")) {\n inFirstCellAwaitingPipe = false;\n if (cell[2] === 0) {\n if (lastCell[1] !== 0) {\n cell[0] = cell[1];\n currentCell = flushCell(\n map2,\n context,\n lastCell,\n rowKind,\n void 0,\n currentCell\n );\n lastCell = [0, 0, 0, 0];\n }\n cell[2] = index;\n }\n } else if (token.type === \"tableCellDivider\") {\n if (inFirstCellAwaitingPipe) {\n inFirstCellAwaitingPipe = false;\n } else {\n if (lastCell[1] !== 0) {\n cell[0] = cell[1];\n currentCell = flushCell(\n map2,\n context,\n lastCell,\n rowKind,\n void 0,\n currentCell\n );\n }\n lastCell = cell;\n cell = [lastCell[1], index, 0, 0];\n }\n }\n } else if (token.type === \"tableHead\") {\n afterHeadAwaitingFirstBodyRow = true;\n lastTableEnd = index;\n } else if (token.type === \"tableRow\" || token.type === \"tableDelimiterRow\") {\n lastTableEnd = index;\n if (lastCell[1] !== 0) {\n cell[0] = cell[1];\n currentCell = flushCell(\n map2,\n context,\n lastCell,\n rowKind,\n index,\n currentCell\n );\n } else if (cell[1] !== 0) {\n currentCell = flushCell(map2, context, cell, rowKind, index, currentCell);\n }\n rowKind = 0;\n } else if (rowKind && (token.type === \"data\" || token.type === \"tableDelimiterMarker\" || token.type === \"tableDelimiterFiller\")) {\n cell[3] = index;\n }\n }\n if (lastTableEnd !== 0) {\n flushTableEnd(map2, context, lastTableEnd, currentTable, currentBody);\n }\n map2.consume(context.events);\n index = -1;\n while (++index < context.events.length) {\n const event = context.events[index];\n if (event[0] === \"enter\" && event[1].type === \"table\") {\n event[1]._align = gfmTableAlign(context.events, index);\n }\n }\n return events;\n}\nfunction flushCell(map2, context, range, rowKind, rowEnd, previousCell) {\n const groupName = rowKind === 1 ? \"tableHeader\" : rowKind === 2 ? \"tableDelimiter\" : \"tableData\";\n const valueName = \"tableContent\";\n if (range[0] !== 0) {\n previousCell.end = Object.assign({}, getPoint(context.events, range[0]));\n map2.add(range[0], 0, [[\"exit\", previousCell, context]]);\n }\n const now = getPoint(context.events, range[1]);\n previousCell = {\n type: groupName,\n start: Object.assign({}, now),\n // Note: correct end is set later.\n end: Object.assign({}, now)\n };\n map2.add(range[1], 0, [[\"enter\", previousCell, context]]);\n if (range[2] !== 0) {\n const relatedStart = getPoint(context.events, range[2]);\n const relatedEnd = getPoint(context.events, range[3]);\n const valueToken = {\n type: valueName,\n start: Object.assign({}, relatedStart),\n end: Object.assign({}, relatedEnd)\n };\n map2.add(range[2], 0, [[\"enter\", valueToken, context]]);\n if (rowKind !== 2) {\n const start = context.events[range[2]];\n const end = context.events[range[3]];\n start[1].end = Object.assign({}, end[1].end);\n start[1].type = \"chunkText\";\n start[1].contentType = \"text\";\n if (range[3] > range[2] + 1) {\n const a = range[2] + 1;\n const b = range[3] - range[2] - 1;\n map2.add(a, b, []);\n }\n }\n map2.add(range[3] + 1, 0, [[\"exit\", valueToken, context]]);\n }\n if (rowEnd !== void 0) {\n previousCell.end = Object.assign({}, getPoint(context.events, rowEnd));\n map2.add(rowEnd, 0, [[\"exit\", previousCell, context]]);\n previousCell = void 0;\n }\n return previousCell;\n}\nfunction flushTableEnd(map2, context, index, table, tableBody) {\n const exits = [];\n const related = getPoint(context.events, index);\n if (tableBody) {\n tableBody.end = Object.assign({}, related);\n exits.push([\"exit\", tableBody, context]);\n }\n table.end = Object.assign({}, related);\n exits.push([\"exit\", table, context]);\n map2.add(index + 1, 0, exits);\n}\nfunction getPoint(events, index) {\n const event = events[index];\n const side = event[0] === \"enter\" ? \"start\" : \"end\";\n return event[1][side];\n}\nconst tasklistCheck = {\n tokenize: tokenizeTasklistCheck\n};\nfunction gfmTaskListItem() {\n return {\n text: {\n [91]: tasklistCheck\n }\n };\n}\nfunction tokenizeTasklistCheck(effects, ok2, nok) {\n const self = this;\n return open;\n function open(code2) {\n if (\n // Exit if there’s stuff before.\n self.previous !== null || // Exit if not in the first content that is the first child of a list\n // item.\n !self._gfmTasklistFirstContentOfListItem\n ) {\n return nok(code2);\n }\n effects.enter(\"taskListCheck\");\n effects.enter(\"taskListCheckMarker\");\n effects.consume(code2);\n effects.exit(\"taskListCheckMarker\");\n return inside;\n }\n function inside(code2) {\n if (markdownLineEndingOrSpace(code2)) {\n effects.enter(\"taskListCheckValueUnchecked\");\n effects.consume(code2);\n effects.exit(\"taskListCheckValueUnchecked\");\n return close;\n }\n if (code2 === 88 || code2 === 120) {\n effects.enter(\"taskListCheckValueChecked\");\n effects.consume(code2);\n effects.exit(\"taskListCheckValueChecked\");\n return close;\n }\n return nok(code2);\n }\n function close(code2) {\n if (code2 === 93) {\n effects.enter(\"taskListCheckMarker\");\n effects.consume(code2);\n effects.exit(\"taskListCheckMarker\");\n effects.exit(\"taskListCheck\");\n return after;\n }\n return nok(code2);\n }\n function after(code2) {\n if (markdownLineEnding(code2)) {\n return ok2(code2);\n }\n if (markdownSpace(code2)) {\n return effects.check(\n {\n tokenize: spaceThenNonSpace\n },\n ok2,\n nok\n )(code2);\n }\n return nok(code2);\n }\n}\nfunction spaceThenNonSpace(effects, ok2, nok) {\n return factorySpace(effects, after, \"whitespace\");\n function after(code2) {\n return code2 === null ? nok(code2) : ok2(code2);\n }\n}\nfunction gfm(options) {\n return combineExtensions([\n gfmAutolinkLiteral(),\n gfmFootnote(),\n gfmStrikethrough(options),\n gfmTable(),\n gfmTaskListItem()\n ]);\n}\nconst emptyOptions = {};\nfunction remarkGfm(options) {\n const self = (\n /** @type {Processor} */\n this\n );\n const settings = options || emptyOptions;\n const data = self.data();\n const micromarkExtensions = data.micromarkExtensions || (data.micromarkExtensions = []);\n const fromMarkdownExtensions = data.fromMarkdownExtensions || (data.fromMarkdownExtensions = []);\n const toMarkdownExtensions = data.toMarkdownExtensions || (data.toMarkdownExtensions = []);\n micromarkExtensions.push(gfm(settings));\n fromMarkdownExtensions.push(gfmFromMarkdown());\n toMarkdownExtensions.push(gfmToMarkdown(settings));\n}\nfunction remarkPlaceholder() {\n return function(ast) {\n visit(ast, (node2) => node2.type === \"text\", visitor);\n function visitor(node2, index, parent) {\n const placeholders = node2.value.split(/(\\{[a-z\\-_.0-9]+\\})/ig).map((entry) => {\n const matches = entry.match(/^\\{([a-z\\-_.0-9]+)\\}$/i);\n if (!matches) {\n return u(\"text\", entry);\n }\n const [, component] = matches;\n return u(\"element\", {\n tagName: `#${component}`\n });\n });\n parent.children.splice(index, 1, ...placeholders);\n }\n };\n}\nfunction prepareTextNode({ h, context }, text2) {\n if (context.autolink) {\n text2 = parseUrl(text2);\n }\n if (Array.isArray(text2)) {\n return text2.map((entry) => {\n if (typeof entry === \"string\") {\n return entry;\n }\n const { component, props } = entry;\n const componentClass = component.name === \"NcLink\" ? void 0 : \"rich-text--component\";\n return h(component, {\n props,\n class: componentClass\n });\n });\n }\n return text2;\n}\nfunction remarkUnescape() {\n return function(tree) {\n visit(tree, (node2) => [\"text\", \"code\", \"inlineCode\"].includes(node2.type), (node2, index, parent) => {\n parent.children.splice(index, 1, {\n ...node2,\n value: node2.value.replace(/</gmi, \"<\").replace(/>/gmi, \">\")\n });\n return [SKIP$1, index + 1];\n });\n };\n}\nconst LINK_PROTOCOLS = [\"http\", \"https\", \"mailto\", \"tel\"];\nconst rehypeHighlight = ref(null);\nasync function importRehypeHighlightLibrary() {\n const module = await import(\"rehype-highlight\");\n rehypeHighlight.value = module.default;\n}\nconst _sfc_main = {\n name: \"NcRichText\",\n components: {\n NcReferenceList\n },\n /* eslint vue/require-prop-comment: warn -- TODO: Add a proper doc block about what this props do */\n props: {\n text: {\n type: String,\n default: \"\"\n },\n arguments: {\n type: Object,\n default: () => {\n return {};\n }\n },\n referenceLimit: {\n type: Number,\n default: 0\n },\n referenceInteractive: {\n type: Boolean,\n // eslint-disable-next-line vue/no-boolean-default\n default: true\n },\n referenceInteractiveOptIn: {\n type: Boolean,\n default: false\n },\n /** Provide data upfront to avoid extra http request */\n references: {\n type: Array,\n default: null\n },\n /** Provide basic Markdown syntax */\n useMarkdown: {\n type: Boolean,\n default: false\n },\n /** Provide GitHub Flavored Markdown syntax */\n useExtendedMarkdown: {\n type: Boolean,\n default: false\n },\n /** Provide event from rendered markdown inputs */\n interactive: {\n type: Boolean,\n default: false\n },\n autolink: {\n type: Boolean,\n // eslint-disable-next-line vue/no-boolean-default\n default: true\n }\n },\n emits: [\n \"interact-todo\",\n \"interact:todo\"\n ],\n data() {\n return {\n parentId: GenRandomId(5)\n };\n },\n methods: {\n renderPlaintext(h) {\n const placeholders = this.text.split(/(\\{[a-z\\-_.0-9]+\\})/ig).map((entry) => {\n const matches = entry.match(/^\\{([a-z\\-_.0-9]+)\\}$/i);\n if (!matches) {\n return prepareTextNode({ h, context: this }, entry);\n }\n const argumentId = matches[1];\n const argument = this.arguments[argumentId];\n if (typeof argument === \"object\") {\n const { component, props } = argument;\n return h(component, {\n props,\n class: \"rich-text--component\"\n });\n }\n if (argument) {\n return h(\"span\", { class: \"rich-text--fallback\" }, argument);\n }\n return entry;\n });\n return h(\"div\", { class: \"rich-text--wrapper\" }, [\n h(\"div\", {}, placeholders.flat()),\n this.referenceLimit > 0 ? h(\"div\", { class: \"rich-text--reference-widget\" }, [\n h(NcReferenceList, {\n props: {\n text: this.text,\n referenceData: this.references,\n interactive: this.referenceInteractive,\n interactiveOptIn: this.referenceInteractiveOptIn\n }\n })\n ]) : null\n ]);\n },\n renderMarkdown(h) {\n const renderedMarkdown = unified().use(remarkParse).use(remarkAutolink, {\n autolink: this.autolink,\n useMarkdown: this.useMarkdown,\n useExtendedMarkdown: this.useExtendedMarkdown\n }).use(remarkUnescape).use(this.useExtendedMarkdown ? remarkGfm : void 0).use(breaks).use(remarkUnlinkProtocols, { except: LINK_PROTOCOLS }).use(remark2rehype, {\n handlers: {\n component(toHast, node2) {\n return toHast(node2, node2.component, { value: node2.value });\n }\n }\n }).use(this.useExtendedMarkdown ? rehypeHighlight.value : void 0).use(remarkPlaceholder).use(rehypeExternalLinks, {\n target: \"_blank\",\n rel: [\"noopener noreferrer\"]\n }).use(rehype2react, {\n createElement: (tag, attrs, children) => {\n if (!tag.startsWith(\"#\")) {\n if ([\"h1\", \"h2\", \"h3\", \"h4\", \"h5\", \"h6\"].includes(tag)) {\n tag = `h${Math.min(+String(tag)[1] + 3, 6)}`;\n }\n if (this.useExtendedMarkdown) {\n if (tag === \"code\" && !rehypeHighlight.value && attrs?.attrs?.class?.includes(\"language\")) {\n importRehypeHighlightLibrary();\n }\n let nestedNode = null;\n if (tag === \"li\" && Array.isArray(children) && children[0].tag === \"input\" && children[0].data.attrs.type === \"checkbox\") {\n const [inputNode, ...labelParts] = children;\n const nestedNodeIndex = labelParts.findIndex((child) => [\"ul\", \"ol\", \"li\", \"blockquote\", \"pre\"].includes(child.tag));\n if (nestedNodeIndex !== -1) {\n nestedNode = labelParts[nestedNodeIndex];\n labelParts.splice(nestedNodeIndex);\n }\n const id = this.parentId + \"-markdown-input-\" + GenRandomId(5);\n const inputComponent = h(NcCheckboxRadioSwitch, {\n attrs: {\n ...inputNode.data.attrs,\n id,\n disabled: !this.interactive\n },\n on: {\n \"update:checked\": () => {\n this.$emit(\"interact-todo\", id);\n this.$emit(\"interact:todo\", id);\n }\n }\n }, labelParts);\n return h(tag, attrs, [inputComponent, nestedNode]);\n }\n }\n if (tag === \"a\") {\n const route = getRoute(this.$router, attrs.attrs.href);\n if (route) {\n delete attrs.attrs.href;\n delete attrs.attrs.target;\n return h(RouterLink, {\n ...attrs,\n props: {\n to: route\n }\n }, children);\n }\n }\n return h(tag, attrs, children);\n }\n const placeholder = this.arguments[tag.slice(1)];\n if (!placeholder) {\n return h(\"span\", { ...{ attrs }, ...{ class: \"rich-text--fallback\" } }, [`{${tag.slice(1)}}`]);\n }\n if (!placeholder.component) {\n return h(\"span\", attrs, [placeholder]);\n }\n return h(\n placeholder.component,\n {\n attrs,\n props: placeholder.props,\n class: \"rich-text--component\"\n },\n children\n );\n },\n prefix: false\n }).processSync(this.text.replace(/<[^>]+>/g, (match) => match.replace(/\")).result;\n return h(\"div\", { class: \"rich-text--wrapper rich-text--wrapper-markdown\" }, [\n renderedMarkdown,\n this.referenceLimit > 0 ? h(\"div\", { class: \"rich-text--reference-widget\" }, [\n h(NcReferenceList, {\n props: {\n text: this.text,\n referenceData: this.references,\n interactive: this.referenceInteractive,\n interactiveOptIn: this.referenceInteractiveOptIn\n }\n })\n ]) : null\n ]);\n }\n },\n render(h) {\n return this.useMarkdown || this.useExtendedMarkdown ? this.renderMarkdown(h) : this.renderPlaintext(h);\n }\n};\nconst _sfc_render = null;\nconst _sfc_staticRenderFns = null;\nvar __component__ = /* @__PURE__ */ normalizeComponent(\n _sfc_main,\n _sfc_render,\n _sfc_staticRenderFns,\n false,\n null,\n \"ec7a0a24\"\n);\nconst NcRichText = __component__.exports;\nexport {\n NcRichText as N,\n NcReferenceList as a\n};\n//# sourceMappingURL=NcRichText-BfK6Ybyf.mjs.map\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/**\n * SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/*\n* Ensure proper alignment of the vue material icons\n*/\n.material-design-icon[data-v-8fb21c8b] {\n display: flex;\n align-self: center;\n justify-self: center;\n align-items: center;\n justify-content: center;\n}\n#app-settings[data-v-8fb21c8b] {\n margin-top: auto;\n padding: 3px;\n}\n#app-settings__header[data-v-8fb21c8b] {\n box-sizing: border-box;\n margin: 0 3px 3px 3px;\n}\n#app-settings__header .settings-button[data-v-8fb21c8b] {\n padding-inline: 0 calc((var(--default-clickable-area) - 16px) / 2) !important;\n}\n#app-settings__header .settings-button[data-v-8fb21c8b] .button-vue__text {\n font-weight: normal !important;\n}\n#app-settings__content[data-v-8fb21c8b] {\n display: block;\n padding: 10px;\n /* prevent scrolled contents from stopping too early */\n margin-bottom: -3px;\n /* restrict height of settings and make scrollable */\n max-height: 300px;\n overflow-y: auto;\n box-sizing: border-box;\n}\n.slide-up-leave-active[data-v-8fb21c8b],\n.slide-up-enter-active[data-v-8fb21c8b] {\n transition-duration: var(--animation-slow);\n transition-property: max-height, padding;\n overflow-y: hidden !important;\n}\n.slide-up-enter[data-v-8fb21c8b],\n.slide-up-leave-to[data-v-8fb21c8b] {\n max-height: 0 !important;\n padding: 0 10px !important;\n}`, \"\",{\"version\":3,\"sources\":[\"webpack://./node_modules/@nextcloud/vue/dist/assets/NcAppNavigationSettings-2Wh1E3Hq.css\"],\"names\":[],\"mappings\":\"AAAA;;;EAGE;AACF;;;EAGE;AACF;;CAEC;AACD;EACE,aAAa;EACb,kBAAkB;EAClB,oBAAoB;EACpB,mBAAmB;EACnB,uBAAuB;AACzB;AACA;EACE,gBAAgB;EAChB,YAAY;AACd;AACA;EACE,sBAAsB;EACtB,qBAAqB;AACvB;AACA;EACE,6EAA6E;AAC/E;AACA;EACE,8BAA8B;AAChC;AACA;EACE,cAAc;EACd,aAAa;EACb,sDAAsD;EACtD,mBAAmB;EACnB,oDAAoD;EACpD,iBAAiB;EACjB,gBAAgB;EAChB,sBAAsB;AACxB;AACA;;EAEE,0CAA0C;EAC1C,wCAAwC;EACxC,6BAA6B;AAC/B;AACA;;EAEE,wBAAwB;EACxB,0BAA0B;AAC5B\",\"sourcesContent\":[\"/**\\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\\n * SPDX-License-Identifier: AGPL-3.0-or-later\\n */\\n/**\\n * SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors\\n * SPDX-License-Identifier: AGPL-3.0-or-later\\n */\\n/*\\n* Ensure proper alignment of the vue material icons\\n*/\\n.material-design-icon[data-v-8fb21c8b] {\\n display: flex;\\n align-self: center;\\n justify-self: center;\\n align-items: center;\\n justify-content: center;\\n}\\n#app-settings[data-v-8fb21c8b] {\\n margin-top: auto;\\n padding: 3px;\\n}\\n#app-settings__header[data-v-8fb21c8b] {\\n box-sizing: border-box;\\n margin: 0 3px 3px 3px;\\n}\\n#app-settings__header .settings-button[data-v-8fb21c8b] {\\n padding-inline: 0 calc((var(--default-clickable-area) - 16px) / 2) !important;\\n}\\n#app-settings__header .settings-button[data-v-8fb21c8b] .button-vue__text {\\n font-weight: normal !important;\\n}\\n#app-settings__content[data-v-8fb21c8b] {\\n display: block;\\n padding: 10px;\\n /* prevent scrolled contents from stopping too early */\\n margin-bottom: -3px;\\n /* restrict height of settings and make scrollable */\\n max-height: 300px;\\n overflow-y: auto;\\n box-sizing: border-box;\\n}\\n.slide-up-leave-active[data-v-8fb21c8b],\\n.slide-up-enter-active[data-v-8fb21c8b] {\\n transition-duration: var(--animation-slow);\\n transition-property: max-height, padding;\\n overflow-y: hidden !important;\\n}\\n.slide-up-enter[data-v-8fb21c8b],\\n.slide-up-leave-to[data-v-8fb21c8b] {\\n max-height: 0 !important;\\n padding: 0 10px !important;\\n}\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.ldap-wizard__users[data-v-47c76aa2]{display:flex;flex-direction:column;gap:16px}.ldap-wizard__users__line[data-v-47c76aa2]{display:flex;align-items:start}.ldap-wizard__users__user-filter-object-class[data-v-47c76aa2]{display:flex;gap:16px}.ldap-wizard__users__user-filter-object-class__select[data-v-47c76aa2]{min-width:50%;flex-grow:1}.ldap-wizard__users__user-filter-groups[data-v-47c76aa2]{display:flex;gap:16px}.ldap-wizard__users__user-filter[data-v-47c76aa2]{display:flex;flex-direction:column}.ldap-wizard__users__user-filter code[data-v-47c76aa2]{background-color:var(--color-background-dark);padding:4px;border-radius:4px}.ldap-wizard__users__user-count-check[data-v-47c76aa2]{display:flex;align-items:center;gap:16px}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/user_ldap/src/components/SettingsTabs/UsersTab.vue\"],\"names\":[],\"mappings\":\"AACA,qCACC,YAAA,CACA,qBAAA,CACA,QAAA,CAEA,2CACC,YAAA,CACA,iBAAA,CAGD,+DACC,YAAA,CACA,QAAA,CAEA,uEACC,aAAA,CACA,WAAA,CAIF,yDACC,YAAA,CACA,QAAA,CAGD,kDACC,YAAA,CACA,qBAAA,CAEA,uDACC,6CAAA,CACA,WAAA,CACA,iBAAA,CAIF,uDACC,YAAA,CACA,kBAAA,CACA,QAAA\",\"sourcesContent\":[\"\\n.ldap-wizard__users {\\n\\tdisplay: flex;\\n\\tflex-direction: column;\\n\\tgap: 16px;\\n\\n\\t&__line {\\n\\t\\tdisplay: flex;\\n\\t\\talign-items: start;\\n\\t}\\n\\n\\t&__user-filter-object-class {\\n\\t\\tdisplay: flex;\\n\\t\\tgap: 16px;\\n\\n\\t\\t&__select {\\n\\t\\t\\tmin-width: 50%;\\n\\t\\t\\tflex-grow: 1;\\n\\t\\t}\\n\\t}\\n\\n\\t&__user-filter-groups {\\n\\t\\tdisplay: flex;\\n\\t\\tgap: 16px;\\n\\t}\\n\\n\\t&__user-filter {\\n\\t\\tdisplay: flex;\\n\\t\\tflex-direction: column;\\n\\n\\t\\tcode {\\n\\t\\t\\tbackground-color: var(--color-background-dark);\\n\\t\\t\\tpadding: 4px;\\n\\t\\t\\tborder-radius: 4px;\\n\\t\\t}\\n\\t}\\n\\n\\t&__user-count-check {\\n\\t\\tdisplay: flex;\\n\\t\\talign-items: center;\\n\\t\\tgap: 16px;\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.ldap-wizard__server[data-v-d79b8f6a]{display:flex;flex-direction:column;gap:16px}.ldap-wizard__server button[data-v-d79b8f6a]{flex-shrink:0}.ldap-wizard__server__line[data-v-d79b8f6a]{display:flex;align-items:start;gap:16px}.ldap-wizard__server__host__port[data-v-d79b8f6a]{display:flex;align-items:center;flex-shrink:0;gap:16px}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/user_ldap/src/components/SettingsTabs/ServerTab.vue\"],\"names\":[],\"mappings\":\"AACA,sCACC,YAAA,CACA,qBAAA,CACA,QAAA,CAEA,6CACC,aAAA,CAGD,4CACC,YAAA,CACA,iBAAA,CACA,QAAA,CAGD,kDACC,YAAA,CACA,kBAAA,CACA,aAAA,CACA,QAAA\",\"sourcesContent\":[\"\\n.ldap-wizard__server {\\n\\tdisplay: flex;\\n\\tflex-direction: column;\\n\\tgap: 16px;\\n\\n\\tbutton {\\n\\t\\tflex-shrink: 0;\\n\\t}\\n\\n\\t&__line {\\n\\t\\tdisplay: flex;\\n\\t\\talign-items: start;\\n\\t\\tgap: 16px;\\n\\t}\\n\\n\\t&__host__port {\\n\\t\\tdisplay: flex;\\n\\t\\talign-items: center;\\n\\t\\tflex-shrink: 0;\\n\\t\\tgap: 16px;\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/**\n * SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/*\n* Ensure proper alignment of the vue material icons\n*/\n.material-design-icon[data-v-9ee34172] {\n display: flex;\n align-self: center;\n justify-self: center;\n align-items: center;\n justify-content: center;\n}\n\n/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nli.action[data-v-9ee34172]:hover, li.action.active[data-v-9ee34172] {\n border-radius: 6px;\n padding: 0;\n}\nli.action[data-v-9ee34172]:hover {\n background-color: var(--color-background-hover);\n}\n.action--disabled[data-v-9ee34172] {\n pointer-events: none;\n opacity: 0.5;\n}\n.action--disabled[data-v-9ee34172]:hover, .action--disabled[data-v-9ee34172]:focus {\n cursor: default;\n opacity: 0.5;\n}\n.action--disabled *[data-v-9ee34172] {\n opacity: 1 !important;\n}\n.action-radio[data-v-9ee34172] {\n display: flex;\n align-items: flex-start;\n width: 100%;\n height: auto;\n margin: 0;\n padding: 0;\n cursor: pointer;\n white-space: nowrap;\n color: var(--color-main-text);\n border: 0;\n border-radius: 0;\n background-color: transparent;\n box-shadow: none;\n font-weight: normal;\n line-height: var(--default-clickable-area);\n /* checkbox/radio fixes */\n}\n.action-radio__radio[data-v-9ee34172] {\n position: absolute;\n inset-inline-start: 0 !important;\n z-index: -1;\n opacity: 0;\n}\n.action-radio__label[data-v-9ee34172] {\n display: flex;\n align-items: center;\n width: 100%;\n padding: 0 !important;\n padding-inline-end: calc((var(--default-clickable-area) - 16px) / 2) !important;\n}\n.action-radio__label[data-v-9ee34172]::before {\n margin: calc((var(--default-clickable-area) - 14px) / 2) !important;\n}\n.action-radio--disabled[data-v-9ee34172],\n.action-radio--disabled .action-radio__label[data-v-9ee34172] {\n cursor: pointer;\n}`, \"\",{\"version\":3,\"sources\":[\"webpack://./node_modules/@nextcloud/vue/dist/assets/NcActionRadio-CLIRNp3t.css\"],\"names\":[],\"mappings\":\"AAAA;;;EAGE;AACF;;;EAGE;AACF;;CAEC;AACD;EACE,aAAa;EACb,kBAAkB;EAClB,oBAAoB;EACpB,mBAAmB;EACnB,uBAAuB;AACzB;;AAEA;;;EAGE;AACF;EACE,kBAAkB;EAClB,UAAU;AACZ;AACA;EACE,+CAA+C;AACjD;AACA;EACE,oBAAoB;EACpB,YAAY;AACd;AACA;EACE,eAAe;EACf,YAAY;AACd;AACA;EACE,qBAAqB;AACvB;AACA;EACE,aAAa;EACb,uBAAuB;EACvB,WAAW;EACX,YAAY;EACZ,SAAS;EACT,UAAU;EACV,eAAe;EACf,mBAAmB;EACnB,6BAA6B;EAC7B,SAAS;EACT,gBAAgB;EAChB,6BAA6B;EAC7B,gBAAgB;EAChB,mBAAmB;EACnB,0CAA0C;EAC1C,yBAAyB;AAC3B;AACA;EACE,kBAAkB;EAClB,gCAAgC;EAChC,WAAW;EACX,UAAU;AACZ;AACA;EACE,aAAa;EACb,mBAAmB;EACnB,WAAW;EACX,qBAAqB;EACrB,+EAA+E;AACjF;AACA;EACE,mEAAmE;AACrE;AACA;;EAEE,eAAe;AACjB\",\"sourcesContent\":[\"/**\\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\\n * SPDX-License-Identifier: AGPL-3.0-or-later\\n */\\n/**\\n * SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors\\n * SPDX-License-Identifier: AGPL-3.0-or-later\\n */\\n/*\\n* Ensure proper alignment of the vue material icons\\n*/\\n.material-design-icon[data-v-9ee34172] {\\n display: flex;\\n align-self: center;\\n justify-self: center;\\n align-items: center;\\n justify-content: center;\\n}\\n\\n/**\\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\\n * SPDX-License-Identifier: AGPL-3.0-or-later\\n */\\nli.action[data-v-9ee34172]:hover, li.action.active[data-v-9ee34172] {\\n border-radius: 6px;\\n padding: 0;\\n}\\nli.action[data-v-9ee34172]:hover {\\n background-color: var(--color-background-hover);\\n}\\n.action--disabled[data-v-9ee34172] {\\n pointer-events: none;\\n opacity: 0.5;\\n}\\n.action--disabled[data-v-9ee34172]:hover, .action--disabled[data-v-9ee34172]:focus {\\n cursor: default;\\n opacity: 0.5;\\n}\\n.action--disabled *[data-v-9ee34172] {\\n opacity: 1 !important;\\n}\\n.action-radio[data-v-9ee34172] {\\n display: flex;\\n align-items: flex-start;\\n width: 100%;\\n height: auto;\\n margin: 0;\\n padding: 0;\\n cursor: pointer;\\n white-space: nowrap;\\n color: var(--color-main-text);\\n border: 0;\\n border-radius: 0;\\n background-color: transparent;\\n box-shadow: none;\\n font-weight: normal;\\n line-height: var(--default-clickable-area);\\n /* checkbox/radio fixes */\\n}\\n.action-radio__radio[data-v-9ee34172] {\\n position: absolute;\\n inset-inline-start: 0 !important;\\n z-index: -1;\\n opacity: 0;\\n}\\n.action-radio__label[data-v-9ee34172] {\\n display: flex;\\n align-items: center;\\n width: 100%;\\n padding: 0 !important;\\n padding-inline-end: calc((var(--default-clickable-area) - 16px) / 2) !important;\\n}\\n.action-radio__label[data-v-9ee34172]::before {\\n margin: calc((var(--default-clickable-area) - 14px) / 2) !important;\\n}\\n.action-radio--disabled[data-v-9ee34172],\\n.action-radio--disabled .action-radio__label[data-v-9ee34172] {\\n cursor: pointer;\\n}\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.ldap-wizard__expert[data-v-1b8d07c0]{display:flex;flex-direction:column;gap:16px}.ldap-wizard__expert__line[data-v-1b8d07c0]{display:flex;flex-direction:column;padding-inline-start:32px;gap:4px}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/user_ldap/src/components/SettingsTabs/ExpertTab.vue\"],\"names\":[],\"mappings\":\"AACA,sCACC,YAAA,CACA,qBAAA,CACA,QAAA,CAEA,4CACC,YAAA,CACA,qBAAA,CACA,yBAAA,CACA,OAAA\",\"sourcesContent\":[\"\\n.ldap-wizard__expert {\\n\\tdisplay: flex;\\n\\tflex-direction: column;\\n\\tgap: 16px;\\n\\n\\t&__line {\\n\\t\\tdisplay: flex;\\n\\t\\tflex-direction: column;\\n\\t\\tpadding-inline-start: 32px;\\n\\t\\tgap: 4px;\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/**\n * SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/*\n* Ensure proper alignment of the vue material icons\n*/\n._material-design-icon_1ndue_12 {\n display: flex;\n align-self: center;\n justify-self: center;\n align-items: center;\n justify-content: center;\n}\n._assistantIcon_1ndue_20 {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n}\n._assistantIcon_1ndue_20:not(._assistantIcon_inline_1ndue_25) {\n display: flex;\n min-height: var(--default-clickable-area);\n min-width: var(--default-clickable-area);\n}\n._assistantIcon__svg_1ndue_30 {\n display: inline-block;\n width: var(--a843d9d2);\n height: var(--a843d9d2);\n max-width: var(--a843d9d2);\n max-height: var(--a843d9d2);\n}`, \"\",{\"version\":3,\"sources\":[\"webpack://./node_modules/@nextcloud/vue/dist/assets/NcAssistantIcon-BoOnqVRr.css\"],\"names\":[],\"mappings\":\"AAAA;;;EAGE;AACF;;;EAGE;AACF;;CAEC;AACD;EACE,aAAa;EACb,kBAAkB;EAClB,oBAAoB;EACpB,mBAAmB;EACnB,uBAAuB;AACzB;AACA;EACE,oBAAoB;EACpB,mBAAmB;EACnB,uBAAuB;AACzB;AACA;EACE,aAAa;EACb,yCAAyC;EACzC,wCAAwC;AAC1C;AACA;EACE,qBAAqB;EACrB,sBAAsB;EACtB,uBAAuB;EACvB,0BAA0B;EAC1B,2BAA2B;AAC7B\",\"sourcesContent\":[\"/**\\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\\n * SPDX-License-Identifier: AGPL-3.0-or-later\\n */\\n/**\\n * SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors\\n * SPDX-License-Identifier: AGPL-3.0-or-later\\n */\\n/*\\n* Ensure proper alignment of the vue material icons\\n*/\\n._material-design-icon_1ndue_12 {\\n display: flex;\\n align-self: center;\\n justify-self: center;\\n align-items: center;\\n justify-content: center;\\n}\\n._assistantIcon_1ndue_20 {\\n display: inline-flex;\\n align-items: center;\\n justify-content: center;\\n}\\n._assistantIcon_1ndue_20:not(._assistantIcon_inline_1ndue_25) {\\n display: flex;\\n min-height: var(--default-clickable-area);\\n min-width: var(--default-clickable-area);\\n}\\n._assistantIcon__svg_1ndue_30 {\\n display: inline-block;\\n width: var(--a843d9d2);\\n height: var(--a843d9d2);\\n max-width: var(--a843d9d2);\\n max-height: var(--a843d9d2);\\n}\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.ldap-wizard__login[data-v-4b9d7382]{display:flex;flex-direction:column;gap:16px}.ldap-wizard__login button[data-v-4b9d7382]{flex-shrink:0}.ldap-wizard__login__line[data-v-4b9d7382]{display:flex;align-items:start;gap:8px}.ldap-wizard__login__login-attributes[data-v-4b9d7382]{display:flex;flex-direction:column}.ldap-wizard__login__user-login-filter[data-v-4b9d7382]{display:flex;flex-direction:column}.ldap-wizard__login__user-login-filter code[data-v-4b9d7382]{background-color:var(--color-background-dark);padding:4px;border-radius:4px}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/user_ldap/src/components/SettingsTabs/LoginTab.vue\"],\"names\":[],\"mappings\":\"AACA,qCACC,YAAA,CACA,qBAAA,CACA,QAAA,CAEA,4CACC,aAAA,CAGD,2CACC,YAAA,CACA,iBAAA,CACA,OAAA,CAGD,uDACC,YAAA,CACA,qBAAA,CAGD,wDACC,YAAA,CACA,qBAAA,CAEA,6DACC,6CAAA,CACA,WAAA,CACA,iBAAA\",\"sourcesContent\":[\"\\n.ldap-wizard__login {\\n\\tdisplay: flex;\\n\\tflex-direction: column;\\n\\tgap: 16px;\\n\\n\\tbutton {\\n\\t\\tflex-shrink: 0;\\n\\t}\\n\\n\\t&__line {\\n\\t\\tdisplay: flex;\\n\\t\\talign-items: start;\\n\\t\\tgap: 8px;\\n\\t}\\n\\n\\t&__login-attributes {\\n\\t\\tdisplay: flex;\\n\\t\\tflex-direction: column;\\n\\t}\\n\\n\\t&__user-login-filter {\\n\\t\\tdisplay: flex;\\n\\t\\tflex-direction: column;\\n\\n\\t\\tcode {\\n\\t\\t\\tbackground-color: var(--color-background-dark);\\n\\t\\t\\tpadding: 4px;\\n\\t\\t\\tborder-radius: 4px;\\n\\t\\t}\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","import '../assets/referencePickerModal-CGtNx7ew.css';\nimport Vue, { ref, nextTick } from \"vue\";\nimport { emit } from \"@nextcloud/event-bus\";\nimport { A as ArrowLeft } from \"./ArrowLeft-DuT2LZOm.mjs\";\nimport { C as Close } from \"./Close-BtLPUSdO.mjs\";\nimport { d as destroyWidget, a as renderWidget, i as isWidgetRegistered, h as hasInteractiveView, j as hasFullWidth, f as renderCustomPickerElement, b as destroyCustomPickerElement, c as isCustomPickerElementRegistered, g as getCustomPickerElementSize } from \"./customPickerElements-DLFtgReB.mjs\";\nimport { n as normalizeComponent } from \"./_plugin-vue2_normalizer-DU4iP6Vu.mjs\";\nimport axios from \"@nextcloud/axios\";\nimport { loadState } from \"@nextcloud/initial-state\";\nimport { imagePath, generateOcsUrl } from \"@nextcloud/router\";\nimport { r as register, T as t23, a as t, U as t8, V as t47, W as t41, X as t24, v as t43, Y as t32, m as t18, Z as t12 } from \"./_l10n-BmKQgz1z.mjs\";\nimport { l as logger } from \"./logger-D3RVzcfQ.mjs\";\nimport NcEmptyContent from \"../Components/NcEmptyContent.mjs\";\nimport { N as NcHighlight } from \"./index-CxTT94_h.mjs\";\nimport { N as NcSelect } from \"./NcSelect-DTniMiUS.mjs\";\nimport { useElementSize, useIntersectionObserver } from \"@vueuse/core\";\nimport { RouterLink } from \"vue-router\";\nimport { N as NcButton } from \"./NcButton-DUZTtFhr.mjs\";\nimport { g as getRoute } from \"./autolink-D2pIbi92.mjs\";\nimport NcLoadingIcon from \"../Components/NcLoadingIcon.mjs\";\nimport { N as NcTextField } from \"./NcTextField-CfZknuqx.mjs\";\nimport { D as DotsHorizontalIcon } from \"./NcActions-CpdT2y6O.mjs\";\nimport NcModal from \"../Components/NcModal.mjs\";\nregister(t23);\nconst IDLE_TIMEOUT = 3 * 60 * 1e3;\nconst _sfc_main$8 = {\n name: \"NcReferenceWidget\",\n components: {\n NcButton\n },\n /* eslint vue/require-prop-comment: warn -- TODO: Add a proper doc block about what this props do */\n props: {\n reference: {\n type: Object,\n required: true\n },\n interactive: {\n type: Boolean,\n // eslint-disable-next-line vue/no-boolean-default\n default: true\n },\n interactiveOptIn: {\n type: Boolean,\n default: false\n }\n },\n setup() {\n const isVisible = ref(false);\n const widgetRoot = ref();\n const { width } = useElementSize(widgetRoot);\n useIntersectionObserver(widgetRoot, ([entry]) => {\n nextTick(() => {\n isVisible.value = entry.isIntersecting;\n });\n });\n return {\n width,\n isVisible,\n widgetRoot\n };\n },\n data() {\n return {\n showInteractive: false,\n rendered: false,\n idleTimeout: null\n };\n },\n computed: {\n isInteractive() {\n return !this.interactiveOptIn && this.interactive || this.showInteractive;\n },\n hasFullWidth() {\n return hasFullWidth(this.reference.richObjectType);\n },\n hasCustomWidget() {\n return isWidgetRegistered(this.reference.richObjectType);\n },\n hasInteractiveView() {\n return isWidgetRegistered(this.reference.richObjectType) && hasInteractiveView(this.reference.richObjectType);\n },\n noAccess() {\n return this.reference && !this.reference.accessible;\n },\n descriptionStyle() {\n if (this.numberOfLines === 0) {\n return {\n display: \"none\"\n };\n }\n const lineClamp = this.numberOfLines;\n return {\n lineClamp,\n webkitLineClamp: lineClamp\n };\n },\n numberOfLines() {\n const lineCountOffsets = [450, 550, 650, Infinity];\n return lineCountOffsets.findIndex((max) => this.width < max);\n },\n compactLink() {\n const link = this.reference.openGraphObject.link;\n if (!link) {\n return \"\";\n }\n if (link.startsWith(\"https://\")) {\n return link.substring(8);\n }\n if (link.startsWith(\"http://\")) {\n return link.substring(7);\n }\n return link;\n },\n route() {\n return getRoute(this.$router, this.reference.openGraphObject.link);\n },\n referenceWidgetLinkComponent() {\n return this.route ? RouterLink : \"a\";\n },\n referenceWidgetLinkProps() {\n return this.route ? { to: this.route } : { href: this.reference.openGraphObject.link, target: \"_blank\" };\n }\n },\n watch: {\n isVisible: {\n handler(val) {\n if (!val) {\n this.idleTimeout = setTimeout(() => {\n if (!this.isVisible) {\n this.destroyWidget();\n }\n }, IDLE_TIMEOUT);\n return;\n }\n if (this.idleTimeout) {\n clearTimeout(this.idleTimeout);\n this.idleTimeout = null;\n }\n if (!this.rendered) {\n this.renderWidget();\n }\n },\n immediate: true\n }\n },\n beforeDestroy() {\n this.destroyWidget();\n },\n methods: {\n t,\n enableInteractive() {\n this.showInteractive = true;\n this.renderWidget();\n },\n renderWidget() {\n if (!this.$refs.customWidget) {\n return;\n }\n if (this?.reference?.richObjectType === \"open-graph\") {\n return;\n }\n this.$refs.customWidget.innerHTML = \"\";\n const widget = document.createElement(\"div\");\n widget.style = \"width: 100%;\";\n this.$refs.customWidget.appendChild(widget);\n this.$nextTick(() => {\n renderWidget(widget, {\n ...this.reference,\n interactive: this.isInteractive\n });\n this.rendered = true;\n });\n },\n destroyWidget() {\n if (this.rendered) {\n destroyWidget(this.reference.richObjectType, this.$el);\n this.rendered = false;\n }\n }\n }\n};\nvar _sfc_render$8 = function render() {\n var _vm = this, _c = _vm._self._c;\n return _c(\"div\", { ref: \"widgetRoot\", class: { \"toggle-interactive\": _vm.hasInteractiveView && !_vm.isInteractive } }, [_vm.reference && _vm.hasCustomWidget ? _c(\"div\", { ref: \"customWidget\", staticClass: \"widget-custom\", class: { \"full-width\": _vm.hasFullWidth } }) : !_vm.noAccess && _vm.reference && _vm.reference.openGraphObject && !_vm.hasCustomWidget ? _c(_vm.referenceWidgetLinkComponent, _vm._b({ tag: \"component\", staticClass: \"widget-default\", attrs: { \"rel\": \"noopener noreferrer\" } }, \"component\", _vm.referenceWidgetLinkProps, false), [_vm.reference.openGraphObject.thumb ? _c(\"img\", { staticClass: \"widget-default--image\", attrs: { \"src\": _vm.reference.openGraphObject.thumb } }) : _vm._e(), _c(\"div\", { staticClass: \"widget-default--details\" }, [_c(\"p\", { staticClass: \"widget-default--name\" }, [_vm._v(\" \" + _vm._s(_vm.reference.openGraphObject.name) + \" \")]), _c(\"p\", { staticClass: \"widget-default--description\", style: _vm.descriptionStyle }, [_vm._v(\" \" + _vm._s(_vm.reference.openGraphObject.description) + \" \")]), _c(\"p\", { staticClass: \"widget-default--link\" }, [_vm._v(\" \" + _vm._s(_vm.compactLink) + \" \")])])]) : _vm._e(), _vm.interactiveOptIn && _vm.hasInteractiveView && !_vm.isInteractive ? _c(\"NcButton\", { staticClass: \"toggle-interactive--button\", on: { \"click\": _vm.enableInteractive } }, [_vm._v(\" \" + _vm._s(_vm.t(\"Enable interactive view\")) + \" \")]) : _vm._e()], 1);\n};\nvar _sfc_staticRenderFns$8 = [];\nvar __component__$8 = /* @__PURE__ */ normalizeComponent(\n _sfc_main$8,\n _sfc_render$8,\n _sfc_staticRenderFns$8,\n false,\n null,\n \"f05dd81b\"\n);\nconst NcReferenceWidget = __component__$8.exports;\nconst _sfc_main$7 = {\n name: \"NcCustomPickerElement\",\n props: {\n /**\n * The reference provider\n */\n provider: {\n type: Object,\n required: true\n }\n },\n emits: [\n \"cancel\",\n \"submit\"\n ],\n data() {\n return {\n isRegistered: isCustomPickerElementRegistered(this.provider.id),\n renderResult: null\n };\n },\n mounted() {\n if (this.isRegistered) {\n this.renderElement();\n }\n },\n beforeDestroy() {\n if (this.isRegistered) {\n destroyCustomPickerElement(this.provider.id, this.$el, this.renderResult);\n }\n },\n methods: {\n renderElement() {\n if (this.$refs.domElement) {\n this.$refs.domElement.innerHTML = \"\";\n }\n const renderFunctionResult = renderCustomPickerElement(this.$refs.domElement, { providerId: this.provider.id, accessible: false });\n Promise.resolve(renderFunctionResult).then((result) => {\n this.renderResult = result;\n if (this.renderResult.object?._isVue && this.renderResult.object?.$on) {\n this.renderResult.object.$on(\"submit\", this.onSubmit);\n this.renderResult.object.$on(\"cancel\", this.onCancel);\n }\n this.renderResult.element.addEventListener(\"submit\", (e) => {\n this.onSubmit(e.detail);\n });\n this.renderResult.element.addEventListener(\"cancel\", this.onCancel);\n });\n },\n onSubmit(value) {\n this.$emit(\"submit\", value);\n },\n onCancel() {\n this.$emit(\"cancel\");\n }\n }\n};\nvar _sfc_render$7 = function render2() {\n var _vm = this, _c = _vm._self._c;\n return _c(\"div\", { ref: \"domElement\" });\n};\nvar _sfc_staticRenderFns$7 = [];\nvar __component__$7 = /* @__PURE__ */ normalizeComponent(\n _sfc_main$7,\n _sfc_render$7,\n _sfc_staticRenderFns$7,\n false,\n null,\n \"0547d92f\"\n);\nconst NcCustomPickerElement = __component__$7.exports;\nconst _sfc_main$6 = {\n name: \"LinkVariantIcon\",\n emits: [\"click\"],\n props: {\n title: {\n type: String\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n};\nvar _sfc_render$6 = function render3() {\n var _vm = this, _c = _vm._self._c;\n return _c(\"span\", _vm._b({ staticClass: \"material-design-icon link-variant-icon\", attrs: { \"aria-hidden\": _vm.title ? null : \"true\", \"aria-label\": _vm.title, \"role\": \"img\" }, on: { \"click\": function($event) {\n return _vm.$emit(\"click\", $event);\n } } }, \"span\", _vm.$attrs, false), [_c(\"svg\", { staticClass: \"material-design-icon__svg\", attrs: { \"fill\": _vm.fillColor, \"width\": _vm.size, \"height\": _vm.size, \"viewBox\": \"0 0 24 24\" } }, [_c(\"path\", { attrs: { \"d\": \"M10.59,13.41C11,13.8 11,14.44 10.59,14.83C10.2,15.22 9.56,15.22 9.17,14.83C7.22,12.88 7.22,9.71 9.17,7.76V7.76L12.71,4.22C14.66,2.27 17.83,2.27 19.78,4.22C21.73,6.17 21.73,9.34 19.78,11.29L18.29,12.78C18.3,11.96 18.17,11.14 17.89,10.36L18.36,9.88C19.54,8.71 19.54,6.81 18.36,5.64C17.19,4.46 15.29,4.46 14.12,5.64L10.59,9.17C9.41,10.34 9.41,12.24 10.59,13.41M13.41,9.17C13.8,8.78 14.44,8.78 14.83,9.17C16.78,11.12 16.78,14.29 14.83,16.24V16.24L11.29,19.78C9.34,21.73 6.17,21.73 4.22,19.78C2.27,17.83 2.27,14.66 4.22,12.71L5.71,11.22C5.7,12.04 5.83,12.86 6.11,13.65L5.64,14.12C4.46,15.29 4.46,17.19 5.64,18.36C6.81,19.54 8.71,19.54 9.88,18.36L13.41,14.83C14.59,13.66 14.59,11.76 13.41,10.59C13,10.2 13,9.56 13.41,9.17Z\" } }, [_vm.title ? _c(\"title\", [_vm._v(_vm._s(_vm.title))]) : _vm._e()])])]);\n};\nvar _sfc_staticRenderFns$6 = [];\nvar __component__$6 = /* @__PURE__ */ normalizeComponent(\n _sfc_main$6,\n _sfc_render$6,\n _sfc_staticRenderFns$6,\n false,\n null,\n null\n);\nconst LinkVariantIcon = __component__$6.exports;\nregister(t8);\nconst anyLinkProviderId = \"any-link\";\nconst anyLinkProvider = {\n id: anyLinkProviderId,\n title: t(\"Any link\"),\n order: 0,\n icon_url: imagePath(\"core\", \"filetypes/link.svg\")\n};\nwindow._vue_richtext_reference_providers ??= loadState(\"core\", \"reference-provider-list\", []);\nwindow._vue_richtext_reference_provider_timestamps ??= loadState(\"core\", \"reference-provider-timestamps\", {});\nfunction getProvider(providerId) {\n if (providerId === anyLinkProviderId) {\n return anyLinkProvider;\n }\n return getProviders().find((p) => p.id === providerId);\n}\nfunction getProviders() {\n return window._vue_richtext_reference_providers.filter((p) => {\n const keep = !!p.search_providers_ids && p.search_providers_ids.length > 0 || isCustomPickerElementRegistered(p.id);\n if (!keep) {\n logger.debug(`[smart picker] ${p.id} reference provider is discoverable but does not have any related search provider or custom picker component registered`);\n }\n return keep;\n });\n}\nfunction sortProviders(providerList) {\n const timestamps = window._vue_richtext_reference_provider_timestamps;\n return providerList.sort((a, b) => {\n return a.order === b.order ? 0 : a.order > b.order ? 1 : -1;\n }).sort((a, b) => {\n const ta = timestamps[a.id];\n const tb = timestamps[b.id];\n return ta === tb ? 0 : tb === void 0 ? -1 : ta === void 0 ? 1 : ta > tb ? -1 : 1;\n });\n}\nfunction searchProvider(query, limit) {\n const providers = getProviders();\n const escapedQuery = query.replace(/[/\\-\\\\^$*+?.()|[\\]{}]/g, \"\\\\$&\");\n const regexp = new RegExp(escapedQuery, \"i\");\n const sortedProviders = sortProviders(providers);\n const filteredSortedProviders = sortedProviders.filter((p) => {\n return p.title.match(regexp);\n });\n const searchResult = limit ? filteredSortedProviders.slice(0, limit) : filteredSortedProviders;\n if (query === \"\" || searchResult.length === 0) {\n searchResult.push(anyLinkProvider);\n }\n return searchResult;\n}\nasync function touchProvider(providerId) {\n const timestamp = Math.floor(Date.now() / 1e3);\n const url = generateOcsUrl(\"references/provider/{providerId}\", { providerId });\n await axios.put(url, { timestamp });\n window._vue_richtext_reference_provider_timestamps[providerId] = timestamp;\n}\nregister(t41, t47);\nlet mytimer = 0;\nfunction delay(callback, ms) {\n return function() {\n const context = this;\n const args = arguments;\n clearTimeout(mytimer);\n mytimer = setTimeout(function() {\n callback.apply(context, args);\n }, ms);\n };\n}\nfunction isUrl(str) {\n try {\n return Boolean(new URL(str));\n } catch {\n return false;\n }\n}\nconst _sfc_main$5 = {\n name: \"NcProviderList\",\n components: {\n NcSelect,\n NcHighlight,\n NcEmptyContent,\n LinkVariantIcon\n },\n emits: [\n \"select-provider\",\n \"submit\"\n ],\n data() {\n return {\n selectedProvider: null,\n query: \"\",\n multiselectPlaceholder: t(\"Select provider\"),\n providerIconAlt: t(\"Provider icon\")\n };\n },\n computed: {\n options() {\n const result = [];\n if (this.query !== \"\" && isUrl(this.query)) {\n result.push({\n id: this.query,\n title: this.query,\n isLink: true\n });\n }\n result.push(...searchProvider(this.query));\n return result;\n }\n },\n methods: {\n focus() {\n setTimeout(() => {\n this.$refs[\"provider-select\"]?.$el?.querySelector(\"#provider-select-input\")?.focus();\n }, 300);\n },\n onProviderSelected(p) {\n if (p !== null) {\n if (p.isLink) {\n this.$emit(\"submit\", p.title);\n } else {\n this.$emit(\"select-provider\", p);\n }\n this.selectedProvider = null;\n }\n },\n onSearch(query) {\n this.query = query;\n }\n }\n};\nvar _sfc_render$5 = function render4() {\n var _vm = this, _c = _vm._self._c;\n return _c(\"div\", { staticClass: \"provider-list\" }, [_c(\"NcSelect\", { ref: \"provider-select\", staticClass: \"provider-list--select\", attrs: { \"input-id\": \"provider-select-input\", \"label\": \"title\", \"placeholder\": _vm.multiselectPlaceholder, \"options\": _vm.options, \"append-to-body\": false, \"clear-search-on-select\": true, \"clear-search-on-blur\": () => false, \"filterable\": false }, on: { \"search\": _vm.onSearch, \"input\": _vm.onProviderSelected }, scopedSlots: _vm._u([{ key: \"option\", fn: function(option) {\n return [option.isLink ? _c(\"div\", { staticClass: \"provider\" }, [_c(\"LinkVariantIcon\", { staticClass: \"link-icon\", attrs: { \"size\": 20 } }), _c(\"span\", [_vm._v(_vm._s(option.title))])], 1) : _c(\"div\", { staticClass: \"provider\" }, [_c(\"img\", { staticClass: \"provider-icon\", attrs: { \"src\": option.icon_url, \"alt\": _vm.providerIconAlt } }), _c(\"NcHighlight\", { staticClass: \"option-text\", attrs: { \"search\": _vm.query, \"text\": option.title } })], 1)];\n } }]), model: { value: _vm.selectedProvider, callback: function($$v) {\n _vm.selectedProvider = $$v;\n }, expression: \"selectedProvider\" } }), _c(\"NcEmptyContent\", { staticClass: \"provider-list--empty-content\", scopedSlots: _vm._u([{ key: \"icon\", fn: function() {\n return [_c(\"LinkVariantIcon\")];\n }, proxy: true }]) })], 1);\n};\nvar _sfc_staticRenderFns$5 = [];\nvar __component__$5 = /* @__PURE__ */ normalizeComponent(\n _sfc_main$5,\n _sfc_render$5,\n _sfc_staticRenderFns$5,\n false,\n null,\n \"f39d58d9\"\n);\nconst NcProviderList = __component__$5.exports;\nregister(t24);\nconst _sfc_main$4 = {\n name: \"NcRawLinkInput\",\n components: {\n LinkVariantIcon,\n NcEmptyContent,\n NcLoadingIcon,\n NcReferenceWidget,\n NcTextField\n },\n props: {\n /**\n * The reference provider\n */\n provider: {\n type: Object,\n required: true\n }\n },\n emits: [\n \"submit\"\n ],\n data() {\n return {\n inputValue: \"\",\n loading: false,\n reference: null,\n abortController: null,\n inputPlaceholder: t(\"Enter link\")\n };\n },\n computed: {\n isLinkValid() {\n return isUrl(this.inputValue);\n }\n },\n methods: {\n focus() {\n this.$refs[\"url-input\"].$el.getElementsByTagName(\"input\")[0]?.focus();\n },\n onSubmit(e) {\n const value = e.target.value;\n if (this.isLinkValid) {\n this.$emit(\"submit\", value);\n }\n },\n onClear() {\n this.inputValue = \"\";\n this.reference = null;\n },\n onInput() {\n this.reference = null;\n if (this.abortController) {\n this.abortController.abort();\n }\n if (this.isLinkValid) {\n delay(() => {\n this.updateReference();\n }, 500)();\n }\n },\n updateReference() {\n this.loading = true;\n this.abortController = new AbortController();\n axios.get(generateOcsUrl(\"references/resolve\", 2) + \"?reference=\" + encodeURIComponent(this.inputValue), {\n signal: this.abortController.signal\n }).then((response) => {\n this.reference = response.data.ocs.data.references[this.inputValue];\n }).catch((error) => {\n logger.error(\"Could not update reference\", { error });\n }).then(() => {\n this.loading = false;\n });\n }\n }\n};\nvar _sfc_render$4 = function render5() {\n var _vm = this, _c = _vm._self._c;\n return _c(\"div\", { staticClass: \"raw-link\" }, [_c(\"div\", { staticClass: \"input-wrapper\" }, [_c(\"NcTextField\", { ref: \"url-input\", attrs: { \"value\": _vm.inputValue, \"show-trailing-button\": _vm.inputValue !== \"\", \"label\": _vm.inputPlaceholder }, on: { \"update:value\": [function($event) {\n _vm.inputValue = $event;\n }, _vm.onInput], \"trailing-button-click\": _vm.onClear }, nativeOn: { \"keyup\": function($event) {\n if (!$event.type.indexOf(\"key\") && _vm._k($event.keyCode, \"enter\", 13, $event.key, \"Enter\")) return null;\n return _vm.onSubmit.apply(null, arguments);\n } } }, [_vm.loading ? _c(\"NcLoadingIcon\", { attrs: { \"size\": 16 } }) : _c(\"LinkVariantIcon\", { attrs: { \"size\": 16 } })], 1)], 1), _vm.reference !== null ? _c(\"NcReferenceWidget\", { staticClass: \"reference-widget\", attrs: { \"reference\": _vm.reference } }) : _c(\"NcEmptyContent\", { staticClass: \"raw-link--empty-content\", scopedSlots: _vm._u([{ key: \"icon\", fn: function() {\n return [_vm.provider.icon_url ? _c(\"img\", { staticClass: \"provider-icon\", attrs: { \"src\": _vm.provider.icon_url } }) : _c(\"LinkVariantIcon\")];\n }, proxy: true }]) })], 1);\n};\nvar _sfc_staticRenderFns$4 = [];\nvar __component__$4 = /* @__PURE__ */ normalizeComponent(\n _sfc_main$4,\n _sfc_render$4,\n _sfc_staticRenderFns$4,\n false,\n null,\n \"be630586\"\n);\nconst NcRawLinkInput = __component__$4.exports;\nconst _sfc_main$3 = {\n name: \"NcSearchResult\",\n components: {\n NcHighlight\n },\n props: {\n /**\n * Unified search result entry\n */\n entry: {\n type: Object,\n required: true\n },\n /**\n * The query that led to getting this result\n * Used to highlight the entry text\n */\n query: {\n type: String,\n required: true\n }\n }\n};\nvar _sfc_render$3 = function render6() {\n var _vm = this, _c = _vm._self._c;\n return _c(\"div\", { staticClass: \"result\" }, [_vm.entry.icon ? _c(\"div\", { staticClass: \"result--icon-class\", class: { [_vm.entry.icon]: true, rounded: _vm.entry.rounded } }) : _c(\"img\", { staticClass: \"result--image\", class: { rounded: _vm.entry.rounded }, attrs: { \"src\": _vm.entry.thumbnailUrl } }), _c(\"div\", { staticClass: \"result--content\" }, [_c(\"span\", { staticClass: \"result--content--name\" }, [_c(\"NcHighlight\", { attrs: { \"search\": _vm.query, \"text\": _vm.entry.title } })], 1), _c(\"span\", { staticClass: \"result--content--subline\" }, [_c(\"NcHighlight\", { attrs: { \"search\": _vm.query, \"text\": _vm.entry.subline } })], 1)])]);\n};\nvar _sfc_staticRenderFns$3 = [];\nvar __component__$3 = /* @__PURE__ */ normalizeComponent(\n _sfc_main$3,\n _sfc_render$3,\n _sfc_staticRenderFns$3,\n false,\n null,\n \"995c2758\"\n);\nconst NcSearchResult = __component__$3.exports;\nregister(t32, t41, t43);\nconst LIMIT = 5;\nconst _sfc_main$2 = {\n name: \"NcSearch\",\n components: {\n LinkVariantIcon,\n DotsHorizontalIcon,\n NcEmptyContent,\n NcSelect,\n NcSearchResult\n },\n /* eslint vue/require-prop-comment: warn -- TODO: Add a proper doc block about what this props do */\n props: {\n /**\n * The selected reference provider\n */\n provider: {\n type: Object,\n required: true\n },\n showEmptyContent: {\n type: Boolean,\n // eslint-disable-next-line vue/no-boolean-default\n default: true\n },\n /**\n * Placeholder of the search\n */\n searchPlaceholder: {\n type: String,\n default: null\n }\n },\n emits: [\n \"submit\"\n ],\n data() {\n return {\n searchQuery: \"\",\n selectedResult: null,\n resultsBySearchProvider: {},\n searching: false,\n searchingMoreOf: null,\n abortController: null,\n noOptionsText: t(\"Start typing to search\"),\n providerIconAlt: t(\"Provider icon\")\n };\n },\n computed: {\n mySearchPlaceholder() {\n return this.searchPlaceholder || t(\"Search\");\n },\n searchProviderIds() {\n return this.provider.search_providers_ids;\n },\n options() {\n if (this.searchQuery === \"\") {\n return [];\n }\n const options = [];\n if (isUrl(this.searchQuery)) {\n options.push(this.rawLinkEntry);\n }\n options.push(...this.formattedSearchResults);\n return options;\n },\n rawLinkEntry() {\n return {\n id: \"rawLinkEntry\",\n resourceUrl: this.searchQuery,\n isRawLink: true\n };\n },\n formattedSearchResults() {\n const results = [];\n this.searchProviderIds.forEach((pid) => {\n if (this.resultsBySearchProvider[pid].entries.length > 0) {\n if (this.searchProviderIds.length > 1 || this.resultsBySearchProvider[pid].entries.length > 1) {\n results.push({\n id: \"groupTitle-\" + pid,\n name: this.resultsBySearchProvider[pid].name,\n isCustomGroupTitle: true,\n providerId: pid\n });\n }\n const providerEntriesWithId = this.resultsBySearchProvider[pid].entries.map((entry, index) => {\n return {\n id: \"provider-\" + pid + \"-entry-\" + index,\n ...entry\n };\n });\n results.push(...providerEntriesWithId);\n if (this.resultsBySearchProvider[pid].isPaginated) {\n results.push({\n id: \"moreOf-\" + pid,\n name: this.resultsBySearchProvider[pid].name,\n isMore: true,\n providerId: pid,\n isLoading: this.searchingMoreOf === pid\n });\n }\n }\n });\n return results;\n }\n },\n mounted() {\n this.resetResults();\n },\n beforeDestroy() {\n this.cancelSearchRequests();\n },\n methods: {\n t,\n resetResults() {\n const resultsBySearchProvider = {};\n this.searchProviderIds.forEach((pid) => {\n resultsBySearchProvider[pid] = {\n entries: []\n };\n });\n this.resultsBySearchProvider = resultsBySearchProvider;\n },\n focus() {\n setTimeout(() => {\n this.$refs[\"search-select\"]?.$el?.querySelector(\"#search-select-input\")?.focus();\n }, 300);\n },\n cancelSearchRequests() {\n if (this.abortController) {\n this.abortController.abort();\n }\n },\n onSearchInput(query) {\n this.searchQuery = query;\n delay(() => {\n this.updateSearch();\n }, 500)();\n },\n onSelectResultSelected(item) {\n if (item !== null) {\n if (item.resourceUrl) {\n this.cancelSearchRequests();\n this.$emit(\"submit\", item.resourceUrl);\n } else if (item.isMore) {\n this.searchMoreOf(item.providerId).then(() => {\n this.selectedResult = null;\n });\n }\n }\n },\n searchMoreOf(searchProviderId) {\n this.searchingMoreOf = searchProviderId;\n this.cancelSearchRequests();\n return this.searchProviders(searchProviderId);\n },\n updateSearch() {\n this.cancelSearchRequests();\n this.resetResults();\n if (this.searchQuery === \"\") {\n this.searching = false;\n return;\n }\n return this.searchProviders();\n },\n searchProviders(searchProviderId = null) {\n this.abortController = new AbortController();\n this.searching = true;\n const searchPromises = searchProviderId === null ? [...this.searchProviderIds].map((pid) => {\n return this.searchOneProvider(pid);\n }) : [this.searchOneProvider(searchProviderId, this.resultsBySearchProvider[searchProviderId]?.cursor ?? null)];\n return Promise.allSettled(searchPromises).then((promises) => {\n const isOneCanceled = !!promises.find((p) => {\n return p.status === \"rejected\" && (p.reason.name === \"CanceledError\" || p.reason.code === \"ERR_CANCELED\");\n });\n if (!isOneCanceled) {\n this.searching = false;\n this.searchingMoreOf = null;\n }\n });\n },\n searchOneProvider(providerId, cursor = null) {\n const url = cursor === null ? generateOcsUrl(\"search/providers/{providerId}/search?term={term}&limit={limit}\", { providerId, term: this.searchQuery, limit: LIMIT }) : generateOcsUrl(\"search/providers/{providerId}/search?term={term}&limit={limit}&cursor={cursor}\", { providerId, term: this.searchQuery, limit: LIMIT, cursor });\n return axios.get(url, {\n signal: this.abortController.signal\n }).then((response) => {\n const data = response.data.ocs.data;\n this.resultsBySearchProvider[providerId].name = data.name;\n this.resultsBySearchProvider[providerId].cursor = data.cursor;\n this.resultsBySearchProvider[providerId].isPaginated = data.isPaginated;\n this.resultsBySearchProvider[providerId].entries.push(...data.entries);\n });\n }\n }\n};\nvar _sfc_render$2 = function render7() {\n var _vm = this, _c = _vm._self._c;\n return _c(\"div\", { staticClass: \"smart-picker-search\", class: { \"with-empty-content\": _vm.showEmptyContent } }, [_c(\"NcSelect\", { ref: \"search-select\", staticClass: \"smart-picker-search--select\", attrs: { \"input-id\": \"search-select-input\", \"label\": \"name\", \"placeholder\": _vm.mySearchPlaceholder, \"options\": _vm.options, \"append-to-body\": false, \"close-on-select\": false, \"clear-search-on-select\": false, \"clear-search-on-blur\": () => false, \"reset-focus-on-options-change\": false, \"filterable\": false, \"autoscroll\": true, \"reset-on-options-change\": false, \"loading\": _vm.searching }, on: { \"search\": _vm.onSearchInput, \"input\": _vm.onSelectResultSelected }, scopedSlots: _vm._u([{ key: \"option\", fn: function(option) {\n return [option.isRawLink ? _c(\"div\", { staticClass: \"custom-option\" }, [_c(\"LinkVariantIcon\", { staticClass: \"option-simple-icon\", attrs: { \"size\": 20 } }), _c(\"span\", { staticClass: \"option-text\" }, [_vm._v(\" \" + _vm._s(_vm.t(\"Raw link {options}\", { options: option.resourceUrl })) + \" \")])], 1) : option.resourceUrl ? _c(\"NcSearchResult\", { staticClass: \"search-result\", attrs: { \"entry\": option, \"query\": _vm.searchQuery } }) : option.isCustomGroupTitle ? _c(\"span\", { staticClass: \"custom-option group-name\" }, [_vm.provider.icon_url ? _c(\"img\", { staticClass: \"provider-icon group-name-icon\", attrs: { \"src\": _vm.provider.icon_url } }) : _vm._e(), _c(\"span\", { staticClass: \"option-text\" }, [_c(\"strong\", [_vm._v(_vm._s(option.name))])])]) : option.isMore ? _c(\"span\", { staticClass: \"custom-option\" }, [option.isLoading ? _c(\"span\", { staticClass: \"option-simple-icon icon-loading-small\" }) : _c(\"DotsHorizontalIcon\", { staticClass: \"option-simple-icon\", attrs: { \"size\": 20 } }), _c(\"span\", { staticClass: \"option-text\" }, [_vm._v(\" \" + _vm._s(_vm.t('Load more \"{options}\"', { options: option.name })) + \" \")])], 1) : _vm._e()];\n } }, { key: \"no-options\", fn: function() {\n return [_vm._v(\" \" + _vm._s(_vm.noOptionsText) + \" \")];\n }, proxy: true }]), model: { value: _vm.selectedResult, callback: function($$v) {\n _vm.selectedResult = $$v;\n }, expression: \"selectedResult\" } }), _vm.showEmptyContent ? _c(\"NcEmptyContent\", { staticClass: \"smart-picker-search--empty-content\", scopedSlots: _vm._u([{ key: \"icon\", fn: function() {\n return [_vm.provider.icon_url ? _c(\"img\", { staticClass: \"provider-icon\", attrs: { \"alt\": _vm.providerIconAlt, \"src\": _vm.provider.icon_url } }) : _c(\"LinkVariantIcon\")];\n }, proxy: true }], null, false, 2922132592) }) : _vm._e()], 1);\n};\nvar _sfc_staticRenderFns$2 = [];\nvar __component__$2 = /* @__PURE__ */ normalizeComponent(\n _sfc_main$2,\n _sfc_render$2,\n _sfc_staticRenderFns$2,\n false,\n null,\n \"e61f71e3\"\n);\nconst NcSearch = __component__$2.exports;\nconst MODES = {\n providerList: 1,\n standardLinkInput: 2,\n searchInput: 3,\n customElement: 4\n};\nconst _sfc_main$1 = {\n name: \"NcReferencePicker\",\n components: {\n NcCustomPickerElement,\n NcProviderList,\n NcRawLinkInput,\n NcSearch\n },\n props: {\n /**\n * Provider to select on creation\n * Default: null. Show the provider list\n */\n initialProvider: {\n type: Object,\n default: () => null\n },\n /**\n * Optional width in pixels\n * Default: 100%\n */\n width: {\n type: Number,\n default: null\n },\n /**\n * Focus on the provider list select input on creation\n * Default: true\n */\n focusOnCreate: {\n type: Boolean,\n // eslint-disable-next-line vue/no-boolean-default\n default: true\n }\n },\n emits: [\n \"cancel\",\n \"cancel-raw-link\",\n \"cancel-search\",\n \"provider-selected\",\n \"submit\"\n ],\n data() {\n return {\n MODES,\n selectedProvider: this.initialProvider\n };\n },\n computed: {\n mode() {\n return this.selectedProvider === null ? MODES.providerList : isCustomPickerElementRegistered(this.selectedProvider.id) ? MODES.customElement : this.selectedProvider.search_providers_ids ? MODES.searchInput : MODES.standardLinkInput;\n },\n pickerWrapperStyle() {\n return {\n width: this.width ? this.width + \"px\" : void 0\n };\n }\n },\n mounted() {\n if (this.focusOnCreate) {\n if (this.initialProvider) {\n setTimeout(() => {\n this.$refs[\"url-input\"]?.focus();\n }, 300);\n } else {\n this.$nextTick(() => {\n this.$refs[\"provider-list\"]?.focus();\n });\n }\n }\n },\n methods: {\n onEscapePressed() {\n if (this.selectedProvider !== null) {\n this.deselectProvider();\n } else {\n this.cancelProviderSelection();\n }\n },\n onProviderSelected(provider) {\n this.selectedProvider = provider;\n this.$emit(\"provider-selected\", provider);\n this.$nextTick(() => {\n this.$refs[\"url-input\"]?.focus();\n });\n },\n cancelCustomElement() {\n this.deselectProvider();\n },\n cancelSearch() {\n this.$emit(\"cancel-search\", this.selectedProvider?.title);\n this.deselectProvider();\n },\n cancelRawLinkInput() {\n this.$emit(\"cancel-raw-link\", this.selectedProvider?.title);\n this.deselectProvider();\n },\n cancelProviderSelection() {\n this.$emit(\"cancel\");\n },\n submitLink(link) {\n if (this.selectedProvider !== null) {\n touchProvider(this.selectedProvider.id);\n }\n this.$emit(\"submit\", link);\n this.deselectProvider();\n },\n deselectProvider() {\n this.selectedProvider = null;\n this.$emit(\"provider-selected\", null);\n setTimeout(() => {\n this.$refs[\"provider-list\"]?.focus();\n }, 300);\n }\n }\n};\nvar _sfc_render$1 = function render8() {\n var _vm = this, _c = _vm._self._c;\n return _c(\"div\", { staticClass: \"reference-picker\", style: _vm.pickerWrapperStyle, attrs: { \"tabindex\": \"-1\" }, on: { \"keydown\": function($event) {\n if (!$event.type.indexOf(\"key\") && _vm._k($event.keyCode, \"esc\", 27, $event.key, [\"Esc\", \"Escape\"])) return null;\n $event.stopPropagation();\n $event.preventDefault();\n return _vm.onEscapePressed.apply(null, arguments);\n } } }, [_vm.mode === _vm.MODES.providerList ? _c(\"NcProviderList\", { ref: \"provider-list\", on: { \"select-provider\": _vm.onProviderSelected, \"submit\": _vm.submitLink, \"cancel\": _vm.cancelProviderSelection } }) : _vm.mode === _vm.MODES.standardLinkInput ? _c(\"NcRawLinkInput\", { ref: \"url-input\", attrs: { \"provider\": _vm.selectedProvider }, on: { \"submit\": _vm.submitLink, \"cancel\": _vm.cancelRawLinkInput } }) : _vm.mode === _vm.MODES.searchInput ? _c(\"NcSearch\", { ref: \"url-input\", attrs: { \"provider\": _vm.selectedProvider }, on: { \"cancel\": _vm.cancelSearch, \"submit\": _vm.submitLink } }) : _vm.mode === _vm.MODES.customElement ? _c(\"div\", { staticClass: \"custom-element-wrapper\" }, [_c(\"NcCustomPickerElement\", { staticClass: \"custom-element\", attrs: { \"provider\": _vm.selectedProvider }, on: { \"submit\": _vm.submitLink, \"cancel\": _vm.cancelCustomElement } })], 1) : _vm._e()], 1);\n};\nvar _sfc_staticRenderFns$1 = [];\nvar __component__$1 = /* @__PURE__ */ normalizeComponent(\n _sfc_main$1,\n _sfc_render$1,\n _sfc_staticRenderFns$1,\n false,\n null,\n \"646d5538\"\n);\nconst NcReferencePicker = __component__$1.exports;\nregister(t12, t18);\nconst _sfc_main = {\n name: \"NcReferencePickerModal\",\n components: {\n NcReferencePicker,\n NcModal,\n NcButton,\n ArrowLeftIcon: ArrowLeft,\n CloseIcon: Close\n },\n props: {\n /**\n * Provider to select on creation\n * Show the provider list if no initial one is provided\n */\n initialProvider: {\n type: Object,\n default: () => null\n },\n /**\n * Focus on the input item on create\n */\n focusOnCreate: {\n type: Boolean,\n // eslint-disable-next-line vue/no-boolean-default\n default: true\n },\n /**\n * If true, add the modal content to the Viewer trap elements via the event-bus\n */\n isInsideViewer: {\n type: Boolean,\n default: false\n }\n },\n emits: [\n \"cancel\",\n \"submit\"\n ],\n data() {\n return {\n show: true,\n selectedProvider: this.initialProvider,\n backButtonTitle: t(\"Back to provider selection\"),\n closeButtonTitle: t(\"Close\"),\n closeButtonLabel: t(\"Close Smart Picker\")\n };\n },\n computed: {\n isProviderSelected() {\n return this.selectedProvider !== null;\n },\n showBackButton() {\n return this.initialProvider === null && this.isProviderSelected;\n },\n modalSize() {\n return this.isProviderSelected && isCustomPickerElementRegistered(this.selectedProvider.id) ? getCustomPickerElementSize(this.selectedProvider.id) ?? \"large\" : \"normal\";\n },\n showModalName() {\n return !this.isProviderSelected || !isCustomPickerElementRegistered(this.selectedProvider.id);\n },\n modalName() {\n return this.isProviderSelected ? this.selectedProvider.title : t(\"Smart Picker\");\n }\n },\n mounted() {\n if (this.isInsideViewer) {\n const elem = this.$refs.modal_content;\n emit(\"viewer:trapElements:changed\", elem);\n }\n },\n methods: {\n onCancel() {\n this.show = false;\n this.$emit(\"cancel\");\n },\n onSubmit(value) {\n this.show = false;\n this.$emit(\"submit\", value);\n },\n onProviderSelect(provider) {\n this.selectedProvider = provider;\n if (provider === null && this.initialProvider !== null) {\n this.onCancel();\n }\n },\n onBackClicked() {\n this.$refs.referencePicker.deselectProvider();\n }\n }\n};\nvar _sfc_render = function render9() {\n var _vm = this, _c = _vm._self._c;\n return _vm.show ? _c(\"NcModal\", { staticClass: \"reference-picker-modal\", attrs: { \"size\": _vm.modalSize, \"can-close\": true }, on: { \"close\": _vm.onCancel } }, [_c(\"div\", { ref: \"modal_content\", staticClass: \"reference-picker-modal--content\" }, [_vm.showBackButton ? _c(\"NcButton\", { staticClass: \"back-button\", attrs: { \"aria-label\": _vm.backButtonTitle, \"title\": _vm.backButtonTitle }, on: { \"click\": _vm.onBackClicked }, scopedSlots: _vm._u([{ key: \"icon\", fn: function() {\n return [_c(\"ArrowLeftIcon\")];\n }, proxy: true }], null, false, 3001860362) }) : _vm._e(), _c(\"NcButton\", { staticClass: \"close-button\", attrs: { \"aria-label\": _vm.closeButtonLabel, \"title\": _vm.closeButtonTitle, \"variant\": \"tertiary\" }, on: { \"click\": _vm.onCancel }, scopedSlots: _vm._u([{ key: \"icon\", fn: function() {\n return [_c(\"CloseIcon\")];\n }, proxy: true }], null, false, 2491825086) }), _vm.showModalName ? _c(\"h2\", [_vm._v(\" \" + _vm._s(_vm.modalName) + \" \")]) : _vm._e(), _c(\"NcReferencePicker\", { ref: \"referencePicker\", attrs: { \"initial-provider\": _vm.initialProvider, \"focus-on-create\": _vm.focusOnCreate }, on: { \"provider-selected\": _vm.onProviderSelect, \"submit\": _vm.onSubmit, \"cancel\": _vm.onCancel } })], 1)]) : _vm._e();\n};\nvar _sfc_staticRenderFns = [];\nvar __component__ = /* @__PURE__ */ normalizeComponent(\n _sfc_main,\n _sfc_render,\n _sfc_staticRenderFns,\n false,\n null,\n \"00990f2a\"\n);\nconst NcReferencePickerModal = __component__.exports;\nasync function getLinkWithPicker(providerId, isInsideViewer) {\n const modalId = \"referencePickerModal\";\n const modalElement = document.createElement(\"div\");\n modalElement.id = modalId;\n document.body.append(modalElement);\n const { promise, reject, resolve } = Promise.withResolvers();\n const initialProvider = providerId && getProvider(providerId) || null;\n const View = Vue.extend(NcReferencePickerModal);\n const view = new View({\n propsData: {\n initialProvider,\n isInsideViewer\n }\n }).$mount(modalElement);\n view.$on(\"cancel\", () => {\n view.$destroy();\n reject(new Error(\"User cancellation\"));\n });\n view.$on(\"submit\", (link) => {\n view.$destroy();\n resolve(link);\n });\n return promise;\n}\nexport {\n NcReferencePicker as N,\n anyLinkProviderId as a,\n getProvider as b,\n getProviders as c,\n sortProviders as d,\n NcReferencePickerModal as e,\n NcReferenceWidget as f,\n getLinkWithPicker as g,\n NcSearch as h,\n searchProvider as s\n};\n//# sourceMappingURL=referencePickerModal-CHpUHrDL.mjs.map\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/**\n * SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/*\n* Ensure proper alignment of the vue material icons\n*/\n.material-design-icon[data-v-6f255eb3] {\n display: flex;\n align-self: center;\n justify-self: center;\n align-items: center;\n justify-content: center;\n}\n\n/* 'New' button */\n.app-navigation-new[data-v-6f255eb3] {\n display: block;\n padding: calc(var(--default-grid-baseline, 4px) * 2);\n}\n.app-navigation-new button[data-v-6f255eb3] {\n width: 100%;\n}`, \"\",{\"version\":3,\"sources\":[\"webpack://./node_modules/@nextcloud/vue/dist/assets/NcAppNavigationNew-D8_2ab9R.css\"],\"names\":[],\"mappings\":\"AAAA;;;EAGE;AACF;;;EAGE;AACF;;CAEC;AACD;EACE,aAAa;EACb,kBAAkB;EAClB,oBAAoB;EACpB,mBAAmB;EACnB,uBAAuB;AACzB;;AAEA,iBAAiB;AACjB;EACE,cAAc;EACd,oDAAoD;AACtD;AACA;EACE,WAAW;AACb\",\"sourcesContent\":[\"/**\\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\\n * SPDX-License-Identifier: AGPL-3.0-or-later\\n */\\n/**\\n * SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors\\n * SPDX-License-Identifier: AGPL-3.0-or-later\\n */\\n/*\\n* Ensure proper alignment of the vue material icons\\n*/\\n.material-design-icon[data-v-6f255eb3] {\\n display: flex;\\n align-self: center;\\n justify-self: center;\\n align-items: center;\\n justify-content: center;\\n}\\n\\n/* 'New' button */\\n.app-navigation-new[data-v-6f255eb3] {\\n display: block;\\n padding: calc(var(--default-grid-baseline, 4px) * 2);\\n}\\n.app-navigation-new button[data-v-6f255eb3] {\\n width: 100%;\\n}\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.ldap-wizard__groups[data-v-3200ed48]{display:flex;flex-direction:column;gap:16px}.ldap-wizard__groups__line[data-v-3200ed48]{display:flex;align-items:start}.ldap-wizard__groups__filter-selection[data-v-3200ed48]{flex-direction:column}.ldap-wizard__groups__groups-filter[data-v-3200ed48]{display:flex;flex-direction:column}.ldap-wizard__groups__groups-filter code[data-v-3200ed48]{background-color:var(--color-background-dark);padding:4px;border-radius:4px}.ldap-wizard__groups__groups-count-check[data-v-3200ed48]{display:flex;align-items:center;gap:16px}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/user_ldap/src/components/SettingsTabs/GroupsTab.vue\"],\"names\":[],\"mappings\":\"AACA,sCACC,YAAA,CACA,qBAAA,CACA,QAAA,CAEA,4CACC,YAAA,CACA,iBAAA,CAGD,wDACC,qBAAA,CAGD,qDACC,YAAA,CACA,qBAAA,CAEA,0DACC,6CAAA,CACA,WAAA,CACA,iBAAA,CAIF,0DACC,YAAA,CACA,kBAAA,CACA,QAAA\",\"sourcesContent\":[\"\\n.ldap-wizard__groups {\\n\\tdisplay: flex;\\n\\tflex-direction: column;\\n\\tgap: 16px;\\n\\n\\t&__line {\\n\\t\\tdisplay: flex;\\n\\t\\talign-items: start;\\n\\t}\\n\\n\\t&__filter-selection {\\n\\t\\tflex-direction: column;\\n\\t}\\n\\n\\t&__groups-filter {\\n\\t\\tdisplay: flex;\\n\\t\\tflex-direction: column;\\n\\n\\t\\tcode {\\n\\t\\t\\tbackground-color: var(--color-background-dark);\\n\\t\\t\\tpadding: 4px;\\n\\t\\t\\tborder-radius: 4px;\\n\\t\\t}\\n\\t}\\n\\n\\t&__groups-count-check {\\n\\t\\tdisplay: flex;\\n\\t\\talign-items: center;\\n\\t\\tgap: 16px;\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","\n import API from \"!../../../../style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../css-loader/dist/cjs.js!./NcActionButtonGroup-CRXLyFpx.css\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../css-loader/dist/cjs.js!./NcActionButtonGroup-CRXLyFpx.css\";\n export default content && content.locals ? content.locals : undefined;\n","import '../assets/NcActionButtonGroup-CRXLyFpx.css';\nimport { defineComponent } from \"vue\";\nimport { r as register, a as t } from \"./_l10n-BmKQgz1z.mjs\";\nimport { G as GenRandomId } from \"./GenRandomId-F5ebeBB_.mjs\";\nimport { n as normalizeComponent } from \"./_plugin-vue2_normalizer-DU4iP6Vu.mjs\";\nregister();\nconst _sfc_main = defineComponent({\n name: \"NcActionButtonGroup\",\n inject: {\n isInSemanticMenu: {\n from: \"NcActions:isSemanticMenu\",\n default: false\n }\n },\n props: {\n /**\n * Optional text shown below the button group\n */\n name: {\n required: false,\n default: void 0,\n type: String\n }\n },\n setup() {\n return {\n labelId: `nc-action-button-group-${GenRandomId()}`\n };\n },\n methods: {\n t\n }\n});\nvar _sfc_render = function render() {\n var _vm = this, _c = _vm._self._c;\n _vm._self._setupProxy;\n return _c(\"li\", { staticClass: \"nc-button-group-base\", attrs: { \"role\": _vm.isInSemanticMenu && \"presentation\" } }, [_vm.name ? _c(\"div\", { attrs: { \"id\": _vm.labelId } }, [_vm._v(\" \" + _vm._s(_vm.name) + \" \")]) : _vm._e(), _c(\"ul\", { staticClass: \"nc-button-group-content\", attrs: { \"role\": \"group\", \"aria-labelledby\": _vm.name ? _vm.labelId : void 0 } }, [_vm._t(\"default\")], 2)]);\n};\nvar _sfc_staticRenderFns = [];\nvar __component__ = /* @__PURE__ */ normalizeComponent(\n _sfc_main,\n _sfc_render,\n _sfc_staticRenderFns,\n false,\n null,\n \"d81f7625\"\n);\nconst NcActionButtonGroup = __component__.exports;\nexport {\n NcActionButtonGroup as N\n};\n//# sourceMappingURL=NcActionButtonGroup-Uol_nwut.mjs.map\n","\n import API from \"!../../../../style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../css-loader/dist/cjs.js!./NcActionRadio-CLIRNp3t.css\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../css-loader/dist/cjs.js!./NcActionRadio-CLIRNp3t.css\";\n export default content && content.locals ? content.locals : undefined;\n","import '../assets/NcActionRadio-CLIRNp3t.css';\nimport Vue from \"vue\";\nimport { u as useModelMigration } from \"./useModelMigration-EhAWvqDD.mjs\";\nimport { A as ActionGlobalMixin } from \"./actionGlobal-DqVa7c7G.mjs\";\nimport { G as GenRandomId } from \"./GenRandomId-F5ebeBB_.mjs\";\nimport { n as normalizeComponent } from \"./_plugin-vue2_normalizer-DU4iP6Vu.mjs\";\nconst _sfc_main = {\n name: \"NcActionRadio\",\n mixins: [ActionGlobalMixin],\n inject: {\n isInSemanticMenu: {\n from: \"NcActions:isSemanticMenu\",\n default: false\n }\n },\n model: {\n prop: \"modelValue\",\n event: \"update:modelValue\"\n },\n props: {\n /**\n * id attribute of the radio element\n */\n id: {\n type: String,\n default: () => \"action-\" + GenRandomId(),\n validator: (id) => id.trim() !== \"\"\n },\n /**\n * Removed in v9 - use `modelValue` (`v-model`) instead\n *\n * @deprecated\n */\n checked: {\n type: Boolean,\n // eslint-disable-next-line vue/no-boolean-default\n default: void 0\n },\n /**\n * Checked state of the radio element\n * Boolean type removed in v9 - use String | Number instead\n */\n modelValue: {\n type: [Boolean, String, Number],\n default: false\n },\n /**\n * Define if this radio is part of a set.\n * Checking the radio will disable all the\n * others with the same name.\n */\n name: {\n type: String,\n required: true\n },\n /**\n * value of the radio input\n */\n value: {\n type: [String, Number],\n default: \"\"\n },\n /**\n * disabled state of the radio element\n */\n disabled: {\n type: Boolean,\n default: false\n }\n },\n emits: [\n /**\n * Removed in v9 - use `update:modelValue` (`v-model`) instead\n *\n * @deprecated\n */\n \"update:checked\",\n /**\n * The radio state is changed\n *\n * @type {boolean}\n */\n \"update:modelValue\",\n /** Same as update:modelValue for Vue 2 compatibility */\n \"update:model-value\",\n \"change\"\n ],\n setup(props) {\n if (typeof props.modelValue === \"boolean\") {\n Vue.util.warn(\"[NcActionRadio] Boolean type of `modelValue` is deprecated and will be removed in next versions\");\n }\n const model = useModelMigration(\"checked\", \"update:checked\");\n return {\n model\n };\n },\n computed: {\n /**\n * determines if the action is focusable\n *\n * @return {boolean} is the action focusable ?\n */\n isFocusable() {\n return !this.disabled;\n },\n /**\n * aria-checked attribute for role=\"menuitemcheckbox\"\n *\n * @return {'true'|'false'|undefined} aria-checked value if needed\n */\n ariaChecked() {\n if (this.isInSemanticMenu) {\n return this.model ? \"true\" : \"false\";\n }\n return void 0;\n }\n },\n methods: {\n toggleInput() {\n this.$refs.label.click();\n },\n onChange(event) {\n this.$emit(\"change\", event);\n }\n }\n};\nvar _sfc_render = function render() {\n var _vm = this, _c = _vm._self._c;\n return _c(\"li\", { staticClass: \"action\", class: { \"action--disabled\": _vm.disabled }, attrs: { \"role\": _vm.isInSemanticMenu && \"presentation\" } }, [_c(\"span\", { staticClass: \"action-radio\", attrs: { \"role\": \"menuitemradio\", \"aria-checked\": _vm.ariaChecked } }, [_c(\"input\", { directives: [{ name: \"model\", rawName: \"v-model\", value: _vm.model, expression: \"model\" }], staticClass: \"radio action-radio__radio\", class: { focusable: _vm.isFocusable }, attrs: { \"id\": _vm.id, \"disabled\": _vm.disabled, \"name\": _vm.name, \"type\": \"radio\" }, domProps: { \"value\": _vm.value, \"checked\": _vm._q(_vm.model, _vm.value) }, on: { \"keydown\": function($event) {\n if (!$event.type.indexOf(\"key\") && _vm._k($event.keyCode, \"enter\", 13, $event.key, \"Enter\")) return null;\n if ($event.ctrlKey || $event.shiftKey || $event.altKey || $event.metaKey) return null;\n $event.preventDefault();\n return _vm.toggleInput.apply(null, arguments);\n }, \"change\": [function($event) {\n _vm.model = _vm.value;\n }, _vm.onChange] } }), _c(\"label\", { ref: \"label\", staticClass: \"action-radio__label\", attrs: { \"for\": _vm.id } }, [_vm._v(_vm._s(_vm.text))]), _vm._e()], 2)]);\n};\nvar _sfc_staticRenderFns = [];\nvar __component__ = /* @__PURE__ */ normalizeComponent(\n _sfc_main,\n _sfc_render,\n _sfc_staticRenderFns,\n false,\n null,\n \"9ee34172\"\n);\nconst NcActionRadio = __component__.exports;\nexport {\n NcActionRadio as N\n};\n//# sourceMappingURL=NcActionRadio-BmVR-lhZ.mjs.map\n","\n import API from \"!../../../../style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../css-loader/dist/cjs.js!./NcActionTextEditable-BCmDMuUg.css\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../css-loader/dist/cjs.js!./NcActionTextEditable-BCmDMuUg.css\";\n export default content && content.locals ? content.locals : undefined;\n","import '../assets/NcActionTextEditable-BCmDMuUg.css';\nimport { d as mdiArrowRight } from \"./mdi-C_j0YT8c.mjs\";\nimport { u as useModelMigration } from \"./useModelMigration-EhAWvqDD.mjs\";\nimport { A as ActionTextMixin } from \"./actionText-BMig9Egt.mjs\";\nimport { G as GenRandomId } from \"./GenRandomId-F5ebeBB_.mjs\";\nimport { N as NcIconSvgWrapper } from \"./NcIconSvgWrapper-BreCg8pX.mjs\";\nimport { n as normalizeComponent } from \"./_plugin-vue2_normalizer-DU4iP6Vu.mjs\";\nconst _sfc_main = {\n name: \"NcActionTextEditable\",\n components: {\n NcIconSvgWrapper\n },\n mixins: [ActionTextMixin],\n model: {\n prop: \"modelValue\",\n event: \"update:modelValue\"\n },\n props: {\n /**\n * id attribute of the checkbox element\n */\n id: {\n type: String,\n default: () => \"action-\" + GenRandomId(),\n validator: (id) => id.trim() !== \"\"\n },\n /**\n * disabled state of the text area\n */\n disabled: {\n type: Boolean,\n default: false\n },\n /**\n * Removed in v9 - use `modelValue` (`v-model`) instead\n *\n * @deprecated\n */\n value: {\n type: String,\n default: void 0\n },\n /**\n * value attribute of the input field\n */\n modelValue: {\n type: String,\n default: \"\"\n }\n },\n emits: [\n \"input\",\n /**\n * Removed in v9 - use `update:modelValue` (`v-model`) instead\n *\n * @deprecated\n */\n \"update:value\",\n /**\n * Emitted when the inputs value changes\n *\n * @type {string|Date}\n */\n \"update:modelValue\",\n /** Same as `update:modelValue` but with a different event name */\n \"update:model-value\",\n \"submit\"\n ],\n setup() {\n const model = useModelMigration(\"value\", \"update:value\");\n return {\n model,\n mdiArrowRight\n };\n },\n computed: {\n /**\n * determines if the action is focusable\n *\n * @return {boolean} is the action focusable ?\n */\n isFocusable() {\n return !this.disabled;\n },\n computedId() {\n return GenRandomId();\n }\n },\n methods: {\n onInput(event) {\n this.$emit(\"input\", event);\n this.model = event.target.value;\n },\n onSubmit(event) {\n event.preventDefault();\n event.stopPropagation();\n if (!this.disabled) {\n this.$emit(\"submit\", event);\n } else {\n return false;\n }\n }\n }\n};\nvar _sfc_render = function render() {\n var _vm = this, _c = _vm._self._c;\n return _c(\"li\", { staticClass: \"action\", class: { \"action--disabled\": _vm.disabled } }, [_c(\"span\", { staticClass: \"action-text-editable\", on: { \"click\": _vm.onClick } }, [_vm._t(\"icon\", function() {\n return [_c(\"span\", { staticClass: \"action-text-editable__icon\", class: [_vm.isIconUrl ? \"action-text-editable__icon--url\" : _vm.icon], style: { backgroundImage: _vm.isIconUrl ? `url(${_vm.icon})` : null } })];\n }), _c(\"form\", { ref: \"form\", staticClass: \"action-text-editable__form\", attrs: { \"disabled\": _vm.disabled }, on: { \"submit\": function($event) {\n $event.preventDefault();\n return _vm.onSubmit.apply(null, arguments);\n } } }, [_c(\"input\", { staticClass: \"action-text-editable__submit\", attrs: { \"id\": _vm.id, \"type\": \"submit\" } }), _vm.name ? _c(\"label\", { staticClass: \"action-text-editable__name\", attrs: { \"for\": _vm.computedId } }, [_vm._v(\" \" + _vm._s(_vm.name) + \" \")]) : _vm._e(), _c(\"textarea\", _vm._b({ staticClass: \"action-text-editable__textarea\", class: { focusable: _vm.isFocusable }, attrs: { \"id\": _vm.computedId, \"disabled\": _vm.disabled }, domProps: { \"value\": _vm.model }, on: { \"input\": _vm.onInput } }, \"textarea\", _vm.$attrs, false)), _c(\"label\", { directives: [{ name: \"show\", rawName: \"v-show\", value: !_vm.disabled, expression: \"!disabled\" }], staticClass: \"action-text-editable__label\", attrs: { \"for\": _vm.id } }, [_c(\"NcIconSvgWrapper\", { attrs: { \"directional\": \"\", \"path\": _vm.mdiArrowRight } })], 1)])], 2)]);\n};\nvar _sfc_staticRenderFns = [];\nvar __component__ = /* @__PURE__ */ normalizeComponent(\n _sfc_main,\n _sfc_render,\n _sfc_staticRenderFns,\n false,\n null,\n \"018dbbe8\"\n);\nconst NcActionTextEditable = __component__.exports;\nexport {\n NcActionTextEditable as N\n};\n//# sourceMappingURL=NcActionTextEditable-Bnt0-S7Y.mjs.map\n","import { n as normalizeComponent } from \"../chunks/_plugin-vue2_normalizer-DU4iP6Vu.mjs\";\nconst _sfc_main = {\n name: \"NcAppContentDetails\"\n};\nvar _sfc_render = function render() {\n var _vm = this, _c = _vm._self._c;\n return _c(\"div\", { staticClass: \"app-content-details\" }, [_vm._t(\"default\")], 2);\n};\nvar _sfc_staticRenderFns = [];\nvar __component__ = /* @__PURE__ */ normalizeComponent(\n _sfc_main,\n _sfc_render,\n _sfc_staticRenderFns,\n false,\n null,\n null\n);\nconst NcAppContentDetails = __component__.exports;\nexport {\n NcAppContentDetails as default\n};\n//# sourceMappingURL=NcAppContentDetails.mjs.map\n","import { n as normalizeComponent } from \"../chunks/_plugin-vue2_normalizer-DU4iP6Vu.mjs\";\nconst _sfc_main = {\n name: \"NcAppContentList\",\n props: {\n /**\n * Is the list selected\n */\n selection: {\n type: Boolean,\n default: false\n },\n /**\n * Is the details pane shown\n */\n showDetails: {\n type: Boolean,\n default: false\n }\n }\n};\nvar _sfc_render = function render() {\n var _vm = this, _c = _vm._self._c;\n return _c(\"div\", { staticClass: \"app-content-list\", class: { selection: _vm.selection, showdetails: _vm.showDetails } }, [_vm._t(\"default\")], 2);\n};\nvar _sfc_staticRenderFns = [];\nvar __component__ = /* @__PURE__ */ normalizeComponent(\n _sfc_main,\n _sfc_render,\n _sfc_staticRenderFns,\n false,\n null,\n null\n);\nconst NcAppContentList = __component__.exports;\nexport {\n NcAppContentList as default\n};\n//# sourceMappingURL=NcAppContentList.mjs.map\n","\n import API from \"!../../../../style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../css-loader/dist/cjs.js!./NcAppNavigationCaption-C7GtQb_y.css\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../css-loader/dist/cjs.js!./NcAppNavigationCaption-C7GtQb_y.css\";\n export default content && content.locals ? content.locals : undefined;\n","import '../assets/NcAppNavigationCaption-C7GtQb_y.css';\nimport { N as NcActions } from \"./NcActions-CpdT2y6O.mjs\";\nimport { n as normalizeComponent } from \"./_plugin-vue2_normalizer-DU4iP6Vu.mjs\";\nconst _sfc_main = {\n name: \"NcAppNavigationCaption\",\n components: {\n NcActions\n },\n inheritAttrs: false,\n props: {\n /**\n * The text of the caption\n */\n name: {\n type: String,\n required: true\n },\n /**\n * `id` to set on the inner caption\n * Can be used for connecting the `NcActionCaption` with `NcActionList` using `aria-labelledby`.\n */\n headingId: {\n type: String,\n default: null\n },\n /**\n * Enable when used as a heading\n * e.g. Before NcAppNavigationList\n */\n isHeading: {\n type: Boolean,\n default: false\n },\n /**\n * If `isHeading` is set, this defines the heading level that should be used\n */\n headingLevel: {\n type: Number,\n default: 2\n },\n /**\n * Any [NcActions](#/Components/NcActions?id=ncactions-1) prop\n */\n // Not an actual prop but needed to show in vue-styleguidist docs\n // eslint-disable-next-line\n \" \": {}\n },\n computed: {\n wrapperTag() {\n return this.isHeading ? \"div\" : \"li\";\n },\n captionTag() {\n const headingLevel = Math.max(2, this.headingLevel);\n return this.isHeading ? `h${headingLevel}` : \"span\";\n },\n // Check if the actions slot is populated\n hasActions() {\n return !!this.$slots.actions;\n }\n }\n};\nvar _sfc_render = function render() {\n var _vm = this, _c = _vm._self._c;\n return _c(_vm.wrapperTag, { tag: \"component\", staticClass: \"app-navigation-caption\", class: { \"app-navigation-caption--heading\": _vm.isHeading } }, [_c(_vm.captionTag, { tag: \"component\", staticClass: \"app-navigation-caption__name\", attrs: { \"id\": _vm.headingId } }, [_vm._v(\" \" + _vm._s(_vm.name) + \" \")]), _vm.hasActions ? _c(\"div\", { staticClass: \"app-navigation-caption__actions\" }, [_c(\"NcActions\", _vm._g(_vm._b({ scopedSlots: _vm._u([{ key: \"icon\", fn: function() {\n return [_vm._t(\"actionsTriggerIcon\")];\n }, proxy: true }], null, true) }, \"NcActions\", _vm.$attrs, false), _vm.$listeners), [_vm._t(\"actions\")], 2)], 1) : _vm._e()], 1);\n};\nvar _sfc_staticRenderFns = [];\nvar __component__ = /* @__PURE__ */ normalizeComponent(\n _sfc_main,\n _sfc_render,\n _sfc_staticRenderFns,\n false,\n null,\n \"fac69d4a\"\n);\nconst NcAppNavigationCaption = __component__.exports;\nexport {\n NcAppNavigationCaption as N\n};\n//# sourceMappingURL=NcAppNavigationCaption-CcWZR8rN.mjs.map\n","\n import API from \"!../../../../style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../css-loader/dist/cjs.js!./NcAppNavigationIconBullet-DLQJkObX.css\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../css-loader/dist/cjs.js!./NcAppNavigationIconBullet-DLQJkObX.css\";\n export default content && content.locals ? content.locals : undefined;\n","import '../assets/NcAppNavigationIconBullet-DLQJkObX.css';\nimport { n as normalizeComponent } from \"../chunks/_plugin-vue2_normalizer-DU4iP6Vu.mjs\";\nconst _sfc_main = {\n name: \"NcAppNavigationIconBullet\",\n props: {\n /**\n * The color of the bullet point (as RGB HEX)\n */\n color: {\n type: String,\n required: true,\n validator(color) {\n return /^#?([0-9A-F]{3}){1,2}$/i.test(color);\n }\n }\n },\n emits: [\"click\"],\n computed: {\n formattedColor() {\n if (this.color.startsWith(\"#\")) {\n return this.color;\n }\n return \"#\" + this.color;\n }\n },\n methods: {\n onClick(e) {\n this.$emit(\"click\", e);\n }\n }\n};\nvar _sfc_render = function render() {\n var _vm = this, _c = _vm._self._c;\n return _c(\"div\", { staticClass: \"app-navigation-entry__icon-bullet\", on: { \"click\": _vm.onClick } }, [_c(\"div\", { style: { backgroundColor: _vm.formattedColor } })]);\n};\nvar _sfc_staticRenderFns = [];\nvar __component__ = /* @__PURE__ */ normalizeComponent(\n _sfc_main,\n _sfc_render,\n _sfc_staticRenderFns,\n false,\n null,\n \"04a313f4\"\n);\nconst NcAppNavigationIconBullet = __component__.exports;\nexport {\n NcAppNavigationIconBullet as default\n};\n//# sourceMappingURL=NcAppNavigationIconBullet.mjs.map\n","\n import API from \"!../../../../style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../css-loader/dist/cjs.js!./NcAppNavigationNew-D8_2ab9R.css\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../css-loader/dist/cjs.js!./NcAppNavigationNew-D8_2ab9R.css\";\n export default content && content.locals ? content.locals : undefined;\n","import '../assets/NcAppNavigationNew-D8_2ab9R.css';\nimport { N as NcButton } from \"./NcButton-DUZTtFhr.mjs\";\nimport { n as normalizeComponent } from \"./_plugin-vue2_normalizer-DU4iP6Vu.mjs\";\nconst _sfc_main = {\n components: {\n NcButton\n },\n props: {\n /**\n * Id of the button\n */\n buttonId: {\n type: String,\n required: false,\n default: \"\"\n },\n /**\n * Disabled state of the button\n */\n disabled: {\n type: Boolean,\n required: false,\n default: false\n },\n /**\n * Main text of the button\n */\n text: {\n type: String,\n required: true\n },\n /**\n * @deprecated use `variant` instead - will be removed with v9\n */\n type: {\n type: String,\n default: \"primary\",\n validator(value) {\n return [\"primary\", \"secondary\", \"tertiary\"].indexOf(value) !== -1;\n }\n },\n /**\n * The color variant to use.\n *\n * @default 'primary'\n */\n variant: {\n type: String,\n default: \"primary\",\n validator(value) {\n return [\"primary\", \"secondary\", \"tertiary\"].indexOf(value) !== -1;\n }\n }\n },\n emits: [\"click\"]\n};\nvar _sfc_render = function render() {\n var _vm = this, _c = _vm._self._c;\n return _c(\"div\", { staticClass: \"app-navigation-new\" }, [_c(\"NcButton\", { attrs: { \"id\": _vm.buttonId, \"disabled\": _vm.disabled, \"variant\": _vm.type !== \"primary\" ? _vm.type : _vm.variant }, on: { \"click\": function($event) {\n return _vm.$emit(\"click\");\n } }, scopedSlots: _vm._u([{ key: \"icon\", fn: function() {\n return [_vm._t(\"icon\")];\n }, proxy: true }], null, true) }, [_vm._v(\" \" + _vm._s(_vm.text) + \" \")])], 1);\n};\nvar _sfc_staticRenderFns = [];\nvar __component__ = /* @__PURE__ */ normalizeComponent(\n _sfc_main,\n _sfc_render,\n _sfc_staticRenderFns,\n false,\n null,\n \"6f255eb3\"\n);\nconst NcAppNavigationNew = __component__.exports;\nexport {\n NcAppNavigationNew as N\n};\n//# sourceMappingURL=NcAppNavigationNew-BHzvRlVc.mjs.map\n","\n import API from \"!../../../../style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../css-loader/dist/cjs.js!./NcAppNavigationNewItem-CYSjj3pD.css\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../css-loader/dist/cjs.js!./NcAppNavigationNewItem-CYSjj3pD.css\";\n export default content && content.locals ? content.locals : undefined;\n","import '../assets/NcAppNavigationNewItem-CYSjj3pD.css';\nimport { N as NcInputConfirmCancel } from \"./NcInputConfirmCancel-CtdWwDCo.mjs\";\nimport NcLoadingIcon from \"../Components/NcLoadingIcon.mjs\";\nimport { n as normalizeComponent } from \"./_plugin-vue2_normalizer-DU4iP6Vu.mjs\";\nconst _sfc_main = {\n name: \"NcAppNavigationNewItem\",\n components: {\n NcInputConfirmCancel,\n NcLoadingIcon\n },\n props: {\n /**\n * The name of the element.\n */\n name: {\n type: String,\n required: true\n },\n /**\n * Refers to the icon on the left, this prop accepts a class\n * like 'icon-category-enabled'.\n */\n icon: {\n type: String,\n default: \"\"\n },\n /**\n * Displays a loading animated icon on the left of the element\n * instead of the icon.\n */\n loading: {\n type: Boolean,\n default: false\n },\n /**\n * Only for 'editable' items, sets label for the edit action button.\n */\n editLabel: {\n type: String,\n default: \"\"\n },\n /**\n * Sets the placeholder text for the editing form.\n */\n editPlaceholder: {\n type: String,\n default: \"\"\n }\n },\n emits: [\"new-item\"],\n data() {\n return {\n newItemValue: \"\",\n newItemActive: false\n };\n },\n methods: {\n handleNewItem() {\n if (!this.loading) {\n this.newItemActive = true;\n this.$nextTick(() => {\n this.$refs.newItemInput.focusInput();\n });\n }\n },\n cancelNewItem() {\n this.newItemActive = false;\n },\n handleNewItemDone() {\n this.$emit(\"new-item\", this.newItemValue);\n this.newItemValue = \"\";\n this.newItemActive = false;\n }\n }\n};\nvar _sfc_render = function render() {\n var _vm = this, _c = _vm._self._c;\n return _c(\"li\", { staticClass: \"app-navigation-entry\", class: {\n \"app-navigation-entry--newItemActive\": _vm.newItemActive\n } }, [_c(\"button\", { staticClass: \"app-navigation-entry-button\", on: { \"click\": _vm.handleNewItem } }, [_c(\"span\", { staticClass: \"app-navigation-entry-icon\", class: { [_vm.icon]: !_vm.loading } }, [_vm.loading ? _c(\"NcLoadingIcon\") : _vm._t(\"icon\")], 2), !_vm.newItemActive ? _c(\"span\", { staticClass: \"app-navigation-new-item__name\", attrs: { \"title\": _vm.name } }, [_vm._v(\" \" + _vm._s(_vm.name) + \" \")]) : _vm._e(), _vm.newItemActive ? _c(\"span\", { staticClass: \"newItemContainer\" }, [_c(\"NcInputConfirmCancel\", { ref: \"newItemInput\", attrs: { \"placeholder\": _vm.editPlaceholder !== \"\" ? _vm.editPlaceholder : _vm.name }, on: { \"cancel\": _vm.cancelNewItem, \"confirm\": _vm.handleNewItemDone }, model: { value: _vm.newItemValue, callback: function($$v) {\n _vm.newItemValue = $$v;\n }, expression: \"newItemValue\" } })], 1) : _vm._e()])]);\n};\nvar _sfc_staticRenderFns = [];\nvar __component__ = /* @__PURE__ */ normalizeComponent(\n _sfc_main,\n _sfc_render,\n _sfc_staticRenderFns,\n false,\n null,\n \"258871fd\"\n);\nconst NcAppNavigationNewItem = __component__.exports;\nexport {\n NcAppNavigationNewItem as N\n};\n//# sourceMappingURL=NcAppNavigationNewItem-DUNLtTs8.mjs.map\n","\n import API from \"!../../../../style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../css-loader/dist/cjs.js!./NcAppNavigationSettings-2Wh1E3Hq.css\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../css-loader/dist/cjs.js!./NcAppNavigationSettings-2Wh1E3Hq.css\";\n export default content && content.locals ? content.locals : undefined;\n","import '../assets/NcMentionBubble-CaztX9Pv.css';\nimport '../assets/NcAppNavigationSettings-2Wh1E3Hq.css';\nimport { h as mdiCogOutline, i as mdiCog } from \"./mdi-C_j0YT8c.mjs\";\nimport { vOnClickOutside } from \"@vueuse/components\";\nimport { N as NcButton } from \"./NcButton-DUZTtFhr.mjs\";\nimport { N as NcIconSvgWrapper } from \"./NcIconSvgWrapper-BreCg8pX.mjs\";\nimport { r as register, n as t48, a as t } from \"./_l10n-BmKQgz1z.mjs\";\nimport clickOutsideOptions from \"../Mixins/clickOutsideOptions.mjs\";\nimport \"../Composables/useIsFullscreen.mjs\";\nimport \"../Composables/useIsMobile.mjs\";\nimport \"escape-html\";\nimport \"striptags\";\nimport \"vue\";\nimport \"../Composables/useIsDarkTheme.mjs\";\nimport \"@nextcloud/router\";\nimport \"../Functions/isDarkTheme.mjs\";\n/* empty css */\nimport { n as normalizeComponent } from \"./_plugin-vue2_normalizer-DU4iP6Vu.mjs\";\nimport \"@nextcloud/auth\";\nimport \"@nextcloud/axios\";\nimport \"@nextcloud/capabilities\";\nimport \"./logger-D3RVzcfQ.mjs\";\nimport { G as GenRandomId } from \"./GenRandomId-F5ebeBB_.mjs\";\nimport { i as isLegacy32 } from \"./legacy-MK4GvP26.mjs\";\nregister(t48);\nconst _sfc_main = {\n directives: {\n ClickOutside: vOnClickOutside\n },\n components: {\n NcButton,\n NcIconSvgWrapper\n },\n mixins: [\n clickOutsideOptions\n ],\n props: {\n /**\n * Text of the button\n *\n * @default 'Settings'\n */\n name: {\n type: String,\n required: false,\n default: t(\"Settings\")\n }\n },\n setup() {\n const contentId = GenRandomId();\n return {\n contentId,\n isLegacy32,\n mdiCog,\n mdiCogOutline\n };\n },\n data() {\n return {\n open: false\n };\n },\n computed: {\n clickOutsideConfig() {\n return [\n this.closeMenu,\n this.clickOutsideOptions\n ];\n }\n },\n methods: {\n closeMenu() {\n this.open = false;\n }\n }\n};\nvar _sfc_render = function render() {\n var _vm = this, _c = _vm._self._c;\n return _c(\"div\", { directives: [{ name: \"click-outside\", rawName: \"v-click-outside\", value: _vm.clickOutsideConfig, expression: \"clickOutsideConfig\" }], class: { open: _vm.open }, attrs: { \"id\": \"app-settings\" } }, [_c(\"div\", { attrs: { \"id\": \"app-settings__header\" } }, [_c(\"NcButton\", { staticClass: \"settings-button\", attrs: { \"aria-controls\": _vm.contentId, \"aria-expanded\": _vm.open ? \"true\" : \"false\", \"alignment\": \"start\", \"variant\": \"tertiary\", \"wide\": \"\" }, on: { \"click\": function($event) {\n _vm.open = !_vm.open;\n } }, scopedSlots: _vm._u([{ key: \"icon\", fn: function() {\n return [_c(\"NcIconSvgWrapper\", { staticClass: \"settings-button__icon\", attrs: { \"path\": _vm.isLegacy32 ? _vm.mdiCog : _vm.mdiCogOutline } })];\n }, proxy: true }]) }, [_vm._v(\" \" + _vm._s(_vm.name) + \" \")])], 1), _c(\"Transition\", { attrs: { \"name\": \"slide-up\" } }, [_c(\"div\", { directives: [{ name: \"show\", rawName: \"v-show\", value: _vm.open, expression: \"open\" }], attrs: { \"id\": _vm.contentId } }, [_vm._t(\"default\")], 2)])], 1);\n};\nvar _sfc_staticRenderFns = [];\nvar __component__ = /* @__PURE__ */ normalizeComponent(\n _sfc_main,\n _sfc_render,\n _sfc_staticRenderFns,\n false,\n null,\n \"8fb21c8b\"\n);\nconst NcAppNavigationSettings = __component__.exports;\nexport {\n NcAppNavigationSettings as N\n};\n//# sourceMappingURL=NcAppNavigationSettings-B29zrNPr.mjs.map\n","\n import API from \"!../../../../style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../css-loader/dist/cjs.js!./NcAssistantButton-owGSr0s0.css\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../css-loader/dist/cjs.js!./NcAssistantButton-owGSr0s0.css\";\n export default content && content.locals ? content.locals : undefined;\n","\n import API from \"!../../../../style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../css-loader/dist/cjs.js!./NcAssistantIcon-BoOnqVRr.css\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../css-loader/dist/cjs.js!./NcAssistantIcon-BoOnqVRr.css\";\n export default content && content.locals ? content.locals : undefined;\n","import '../assets/NcAssistantIcon-BoOnqVRr.css';\nimport { useCssVars, computed } from \"vue\";\nimport { e as mdiCreation } from \"./mdi-C_j0YT8c.mjs\";\nimport { useIsDarkTheme } from \"../Composables/useIsDarkTheme.mjs\";\nimport { c as createElementId } from \"./createElementId-DhjFt1I9.mjs\";\nimport { n as normalizeComponent } from \"./_plugin-vue2_normalizer-DU4iP6Vu.mjs\";\nconst assistantIcon = \"_assistantIcon_1ndue_20\";\nconst assistantIcon_inline = \"_assistantIcon_inline_1ndue_25\";\nconst assistantIcon__svg = \"_assistantIcon__svg_1ndue_30\";\nconst style0 = {\n \"material-design-icon\": \"_material-design-icon_1ndue_12\",\n assistantIcon,\n assistantIcon_inline,\n assistantIcon__svg\n};\nconst _sfc_main = {\n __name: \"NcAssistantIcon\",\n props: {\n /**\n * Set if the icon should be used as inline content e.g. within text.\n * By default the icon is made a block element for use inside `icon`-slots.\n */\n inline: {\n type: Boolean,\n default: false\n },\n /**\n * Size of the icon.\n * Defaults to the proper size to be used in buttons and other interactive elements\n * like all `Nc*` components with an icon slot.\n */\n size: {\n type: Number,\n default: 20\n }\n },\n setup(__props) {\n const props = __props;\n useCssVars((_vm, _setup) => ({\n \"a843d9d2\": _setup.sizePx\n }));\n const isDarkTheme = useIsDarkTheme();\n const gradientId = createElementId();\n const sizePx = computed(() => `${props.size}px`);\n return { __sfc: true, props, isDarkTheme, gradientId, sizePx, mdiCreation };\n }\n};\nvar _sfc_render = function render() {\n var _vm = this, _c = _vm._self._c, _setup = _vm._self._setupProxy;\n return _c(\"span\", { class: [_vm.$style.assistantIcon, _vm.inline && _vm.$style.assistantIcon_inline], attrs: { \"aria-hidden\": \"true\", \"role\": \"img\" } }, [_c(\"svg\", { class: _vm.$style.assistantIcon__svg, attrs: { \"viewBox\": \"0 0 24 24\", \"xmlns\": \"http://www.w3.org/2000/svg\" } }, [_c(\"defs\", [_setup.isDarkTheme ? _c(\"linearGradient\", { attrs: { \"id\": _setup.gradientId, \"gradientTransform\": \"rotateX(285)\" } }, [_c(\"stop\", { attrs: { \"offset\": \"15%\", \"stop-color\": \"#CDACE7\" } }), _c(\"stop\", { attrs: { \"offset\": \"40%\", \"stop-color\": \"#008FDB\" } }), _c(\"stop\", { attrs: { \"offset\": \"82%\", \"stop-color\": \"#A180E0\" } })], 1) : _c(\"linearGradient\", { attrs: { \"id\": _setup.gradientId, \"gradientTransform\": \"rotateX(285)\" } }, [_c(\"stop\", { attrs: { \"offset\": \"15%\", \"stop-color\": \"#9669D3\" } }), _c(\"stop\", { attrs: { \"offset\": \"40%\", \"stop-color\": \"#00679E\" } }), _c(\"stop\", { attrs: { \"offset\": \"80%\", \"stop-color\": \"#492083\" } })], 1)], 1), _c(\"path\", { attrs: { \"d\": _setup.mdiCreation, \"fill\": `url('#${_setup.gradientId}')` } })])]);\n};\nvar _sfc_staticRenderFns = [];\nconst __cssModules = {\n \"$style\": style0\n};\nfunction _sfc_injectStyles(ctx) {\n for (var key in __cssModules) {\n this[key] = __cssModules[key];\n }\n}\nvar __component__ = /* @__PURE__ */ normalizeComponent(\n _sfc_main,\n _sfc_render,\n _sfc_staticRenderFns,\n false,\n _sfc_injectStyles,\n null\n);\nconst NcAssistantIcon = __component__.exports;\nexport {\n NcAssistantIcon as N\n};\n//# sourceMappingURL=NcAssistantIcon-B9L1Ih5x.mjs.map\n","import '../assets/NcAssistantButton-owGSr0s0.css';\nimport { e as mdiCreation } from \"./mdi-C_j0YT8c.mjs\";\nimport { N as NcAssistantIcon } from \"./NcAssistantIcon-B9L1Ih5x.mjs\";\nimport { N as NcButton } from \"./NcButton-DUZTtFhr.mjs\";\nimport { N as NcIconSvgWrapper } from \"./NcIconSvgWrapper-BreCg8pX.mjs\";\nimport { n as normalizeComponent } from \"./_plugin-vue2_normalizer-DU4iP6Vu.mjs\";\nconst assistantButton = \"_assistantButton_1xe1x_20\";\nconst assistantButton_disabled = \"_assistantButton_disabled_1xe1x_30\";\nconst assistantButton_primary = \"_assistantButton_primary_1xe1x_34\";\nconst assistantButton__icon = \"_assistantButton__icon_1xe1x_38\";\nconst assistantButton__text = \"_assistantButton__text_1xe1x_39\";\nconst assistantButton__button = \"_assistantButton__button_1xe1x_42\";\nconst style0 = {\n \"material-design-icon\": \"_material-design-icon_1xe1x_12\",\n assistantButton,\n assistantButton_disabled,\n assistantButton_primary,\n assistantButton__icon,\n assistantButton__text,\n assistantButton__button\n};\nconst _sfc_main = {\n __name: \"NcAssistantButton\",\n props: {\n /**\n * Toggles the disabled state of the button on and off.\n */\n disabled: {\n type: Boolean,\n default: false\n },\n /**\n * The readable text of the button.\n * Can be overriden by using the `default` slot.\n *\n * If neither this is set nor the `default` slot is used, you will have to set at least `aria-label` or `aria-labelledby`.\n */\n text: {\n type: String,\n default: \"\"\n },\n /**\n * The button variant.\n * In most cases the `secondary` style should be used.\n */\n variant: {\n type: String,\n default: \"secondary\"\n }\n },\n emits: [\n /**\n * The mouse click event when the button is triggered.\n */\n \"click\"\n ],\n setup(__props) {\n return { __sfc: true, mdiCreation, NcAssistantIcon, NcButton, NcIconSvgWrapper };\n }\n};\nvar _sfc_render = function render() {\n var _vm = this, _c = _vm._self._c, _setup = _vm._self._setupProxy;\n return _c(\"div\", { class: [{\n [_vm.$style.assistantButton_disabled]: _vm.disabled,\n [_vm.$style.assistantButton_primary]: _vm.variant === \"primary\"\n }, _vm.$style.assistantButton] }, [_c(_setup.NcButton, { class: _vm.$style.assistantButton__button, attrs: { \"disabled\": _vm.disabled, \"variant\": \"tertiary\" }, on: { \"click\": function($event) {\n return _vm.$emit(\"click\", $event);\n } }, scopedSlots: _vm._u([{ key: \"icon\", fn: function() {\n return [_vm.variant === \"primary\" ? _c(_setup.NcIconSvgWrapper, { class: _vm.$style.assistantButton__icon, attrs: { \"path\": _setup.mdiCreation } }) : _c(_setup.NcAssistantIcon)];\n }, proxy: true }, _vm.text || _vm.$scopedSlots.default ? { key: \"default\", fn: function() {\n return [_c(\"div\", { class: _vm.$style.assistantButton__text }, [_vm._t(\"default\", function() {\n return [_vm._v(_vm._s(_vm.text))];\n })], 2)];\n }, proxy: true } : null], null, true) })], 1);\n};\nvar _sfc_staticRenderFns = [];\nconst __cssModules = {\n \"$style\": style0\n};\nfunction _sfc_injectStyles(ctx) {\n for (var key in __cssModules) {\n this[key] = __cssModules[key];\n }\n}\nvar __component__ = /* @__PURE__ */ normalizeComponent(\n _sfc_main,\n _sfc_render,\n _sfc_staticRenderFns,\n false,\n _sfc_injectStyles,\n null\n);\nconst NcAssistantButton = __component__.exports;\nexport {\n NcAssistantButton as N\n};\n//# sourceMappingURL=NcAssistantButton-lRXTGAwe.mjs.map\n","\n import API from \"!../../../../style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../css-loader/dist/cjs.js!./NcAssistantContent-Ban7n3Bg.css\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../css-loader/dist/cjs.js!./NcAssistantContent-Ban7n3Bg.css\";\n export default content && content.locals ? content.locals : undefined;\n","import '../assets/NcAssistantContent-Ban7n3Bg.css';\nimport { n as normalizeComponent } from \"../chunks/_plugin-vue2_normalizer-DU4iP6Vu.mjs\";\nconst assistantContent = \"_assistantContent_ri18g_20\";\nconst assistantContent__inner = \"_assistantContent__inner_ri18g_25\";\nconst style0 = {\n \"material-design-icon\": \"_material-design-icon_ri18g_12\",\n assistantContent,\n assistantContent__inner\n};\nconst _sfc_main = {\n __name: \"NcAssistantContent\",\n props: {\n /**\n * Classes to assign to the content container\n */\n contentClasses: {\n type: [String, Array, Object],\n default: \"\"\n }\n },\n setup(__props) {\n return { __sfc: true };\n }\n};\nvar _sfc_render = function render() {\n var _vm = this, _c = _vm._self._c;\n _vm._self._setupProxy;\n return _c(\"div\", { class: _vm.$style.assistantContent }, [_c(\"div\", { class: [_vm.$style.assistantContent__inner, _vm.contentClasses] }, [_vm._t(\"default\")], 2)]);\n};\nvar _sfc_staticRenderFns = [];\nconst __cssModules = {\n \"$style\": style0\n};\nfunction _sfc_injectStyles(ctx) {\n for (var key in __cssModules) {\n this[key] = __cssModules[key];\n }\n}\nvar __component__ = /* @__PURE__ */ normalizeComponent(\n _sfc_main,\n _sfc_render,\n _sfc_staticRenderFns,\n false,\n _sfc_injectStyles,\n null\n);\nconst NcAssistantContent = __component__.exports;\nexport {\n NcAssistantContent as default\n};\n//# sourceMappingURL=NcAssistantContent.mjs.map\n","\n import API from \"!../../../../style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../css-loader/dist/cjs.js!./NcBlurHash-7aGtE-_T.css\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../css-loader/dist/cjs.js!./NcBlurHash-7aGtE-_T.css\";\n export default content && content.locals ? content.locals : undefined;\n","export class TimeoutError extends Error {\n\tconstructor(message) {\n\t\tsuper(message);\n\t\tthis.name = 'TimeoutError';\n\t}\n}\n\n/**\nAn error to be thrown when the request is aborted by AbortController.\nDOMException is thrown instead of this Error when DOMException is available.\n*/\nexport class AbortError extends Error {\n\tconstructor(message) {\n\t\tsuper();\n\t\tthis.name = 'AbortError';\n\t\tthis.message = message;\n\t}\n}\n\n/**\nTODO: Remove AbortError and just throw DOMException when targeting Node 18.\n*/\nconst getDOMException = errorMessage => globalThis.DOMException === undefined\n\t? new AbortError(errorMessage)\n\t: new DOMException(errorMessage);\n\n/**\nTODO: Remove below function and just 'reject(signal.reason)' when targeting Node 18.\n*/\nconst getAbortedReason = signal => {\n\tconst reason = signal.reason === undefined\n\t\t? getDOMException('This operation was aborted.')\n\t\t: signal.reason;\n\n\treturn reason instanceof Error ? reason : getDOMException(reason);\n};\n\nexport default function pTimeout(promise, options) {\n\tconst {\n\t\tmilliseconds,\n\t\tfallback,\n\t\tmessage,\n\t\tcustomTimers = {setTimeout, clearTimeout},\n\t} = options;\n\n\tlet timer;\n\tlet abortHandler;\n\n\tconst wrappedPromise = new Promise((resolve, reject) => {\n\t\tif (typeof milliseconds !== 'number' || Math.sign(milliseconds) !== 1) {\n\t\t\tthrow new TypeError(`Expected \\`milliseconds\\` to be a positive number, got \\`${milliseconds}\\``);\n\t\t}\n\n\t\tif (options.signal) {\n\t\t\tconst {signal} = options;\n\t\t\tif (signal.aborted) {\n\t\t\t\treject(getAbortedReason(signal));\n\t\t\t}\n\n\t\t\tabortHandler = () => {\n\t\t\t\treject(getAbortedReason(signal));\n\t\t\t};\n\n\t\t\tsignal.addEventListener('abort', abortHandler, {once: true});\n\t\t}\n\n\t\tif (milliseconds === Number.POSITIVE_INFINITY) {\n\t\t\tpromise.then(resolve, reject);\n\t\t\treturn;\n\t\t}\n\n\t\t// We create the error outside of `setTimeout` to preserve the stack trace.\n\t\tconst timeoutError = new TimeoutError();\n\n\t\ttimer = customTimers.setTimeout.call(undefined, () => {\n\t\t\tif (fallback) {\n\t\t\t\ttry {\n\t\t\t\t\tresolve(fallback());\n\t\t\t\t} catch (error) {\n\t\t\t\t\treject(error);\n\t\t\t\t}\n\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tif (typeof promise.cancel === 'function') {\n\t\t\t\tpromise.cancel();\n\t\t\t}\n\n\t\t\tif (message === false) {\n\t\t\t\tresolve();\n\t\t\t} else if (message instanceof Error) {\n\t\t\t\treject(message);\n\t\t\t} else {\n\t\t\t\ttimeoutError.message = message ?? `Promise timed out after ${milliseconds} milliseconds`;\n\t\t\t\treject(timeoutError);\n\t\t\t}\n\t\t}, milliseconds);\n\n\t\t(async () => {\n\t\t\ttry {\n\t\t\t\tresolve(await promise);\n\t\t\t} catch (error) {\n\t\t\t\treject(error);\n\t\t\t}\n\t\t})();\n\t});\n\n\tconst cancelablePromise = wrappedPromise.finally(() => {\n\t\tcancelablePromise.clear();\n\t\tif (abortHandler && options.signal) {\n\t\t\toptions.signal.removeEventListener('abort', abortHandler);\n\t\t}\n\t});\n\n\tcancelablePromise.clear = () => {\n\t\tcustomTimers.clearTimeout.call(undefined, timer);\n\t\ttimer = undefined;\n\t};\n\n\treturn cancelablePromise;\n}\n","import lowerBound from './lower-bound.js';\nexport default class PriorityQueue {\n #queue = [];\n enqueue(run, options) {\n options = {\n priority: 0,\n ...options,\n };\n const element = {\n priority: options.priority,\n id: options.id,\n run,\n };\n if (this.size === 0 || this.#queue[this.size - 1].priority >= options.priority) {\n this.#queue.push(element);\n return;\n }\n const index = lowerBound(this.#queue, element, (a, b) => b.priority - a.priority);\n this.#queue.splice(index, 0, element);\n }\n setPriority(id, priority) {\n const index = this.#queue.findIndex((element) => element.id === id);\n if (index === -1) {\n throw new ReferenceError(`No promise function with the id \"${id}\" exists in the queue.`);\n }\n const [item] = this.#queue.splice(index, 1);\n this.enqueue(item.run, { priority, id });\n }\n dequeue() {\n const item = this.#queue.shift();\n return item?.run;\n }\n filter(options) {\n return this.#queue.filter((element) => element.priority === options.priority).map((element) => element.run);\n }\n get size() {\n return this.#queue.length;\n }\n}\n","// Port of lower_bound from https://en.cppreference.com/w/cpp/algorithm/lower_bound\n// Used to compute insertion index to keep queue sorted after insertion\nexport default function lowerBound(array, value, comparator) {\n let first = 0;\n let count = array.length;\n while (count > 0) {\n const step = Math.trunc(count / 2);\n let it = first + step;\n if (comparator(array[it], value) <= 0) {\n first = ++it;\n count -= step + 1;\n }\n else {\n count = step;\n }\n }\n return first;\n}\n","import PQueue from \"p-queue\";\nconst queue = new PQueue({ concurrency: 5 });\nfunction preloadImage(url) {\n const { resolve, promise } = Promise.withResolvers();\n queue.add(() => {\n const image = new Image();\n image.onerror = () => resolve(false);\n image.onload = () => resolve(true);\n image.src = url;\n return promise;\n });\n return promise;\n}\nexport {\n preloadImage\n};\n//# sourceMappingURL=preloadImage.mjs.map\n","import { EventEmitter } from 'eventemitter3';\nimport pTimeout, { TimeoutError } from 'p-timeout';\nimport PriorityQueue from './priority-queue.js';\n/**\nPromise queue with concurrency control.\n*/\nexport default class PQueue extends EventEmitter {\n #carryoverConcurrencyCount;\n #isIntervalIgnored;\n #intervalCount = 0;\n #intervalCap;\n #interval;\n #intervalEnd = 0;\n #intervalId;\n #timeoutId;\n #queue;\n #queueClass;\n #pending = 0;\n // The `!` is needed because of https://github.com/microsoft/TypeScript/issues/32194\n #concurrency;\n #isPaused;\n #throwOnTimeout;\n // Use to assign a unique identifier to a promise function, if not explicitly specified\n #idAssigner = 1n;\n /**\n Per-operation timeout in milliseconds. Operations fulfill once `timeout` elapses if they haven't already.\n\n Applies to each future operation.\n */\n timeout;\n // TODO: The `throwOnTimeout` option should affect the return types of `add()` and `addAll()`\n constructor(options) {\n super();\n // eslint-disable-next-line @typescript-eslint/consistent-type-assertions\n options = {\n carryoverConcurrencyCount: false,\n intervalCap: Number.POSITIVE_INFINITY,\n interval: 0,\n concurrency: Number.POSITIVE_INFINITY,\n autoStart: true,\n queueClass: PriorityQueue,\n ...options,\n };\n if (!(typeof options.intervalCap === 'number' && options.intervalCap >= 1)) {\n throw new TypeError(`Expected \\`intervalCap\\` to be a number from 1 and up, got \\`${options.intervalCap?.toString() ?? ''}\\` (${typeof options.intervalCap})`);\n }\n if (options.interval === undefined || !(Number.isFinite(options.interval) && options.interval >= 0)) {\n throw new TypeError(`Expected \\`interval\\` to be a finite number >= 0, got \\`${options.interval?.toString() ?? ''}\\` (${typeof options.interval})`);\n }\n this.#carryoverConcurrencyCount = options.carryoverConcurrencyCount;\n this.#isIntervalIgnored = options.intervalCap === Number.POSITIVE_INFINITY || options.interval === 0;\n this.#intervalCap = options.intervalCap;\n this.#interval = options.interval;\n this.#queue = new options.queueClass();\n this.#queueClass = options.queueClass;\n this.concurrency = options.concurrency;\n this.timeout = options.timeout;\n this.#throwOnTimeout = options.throwOnTimeout === true;\n this.#isPaused = options.autoStart === false;\n }\n get #doesIntervalAllowAnother() {\n return this.#isIntervalIgnored || this.#intervalCount < this.#intervalCap;\n }\n get #doesConcurrentAllowAnother() {\n return this.#pending < this.#concurrency;\n }\n #next() {\n this.#pending--;\n this.#tryToStartAnother();\n this.emit('next');\n }\n #onResumeInterval() {\n this.#onInterval();\n this.#initializeIntervalIfNeeded();\n this.#timeoutId = undefined;\n }\n get #isIntervalPaused() {\n const now = Date.now();\n if (this.#intervalId === undefined) {\n const delay = this.#intervalEnd - now;\n if (delay < 0) {\n // Act as the interval was done\n // We don't need to resume it here because it will be resumed on line 160\n this.#intervalCount = (this.#carryoverConcurrencyCount) ? this.#pending : 0;\n }\n else {\n // Act as the interval is pending\n if (this.#timeoutId === undefined) {\n this.#timeoutId = setTimeout(() => {\n this.#onResumeInterval();\n }, delay);\n }\n return true;\n }\n }\n return false;\n }\n #tryToStartAnother() {\n if (this.#queue.size === 0) {\n // We can clear the interval (\"pause\")\n // Because we can redo it later (\"resume\")\n if (this.#intervalId) {\n clearInterval(this.#intervalId);\n }\n this.#intervalId = undefined;\n this.emit('empty');\n if (this.#pending === 0) {\n this.emit('idle');\n }\n return false;\n }\n if (!this.#isPaused) {\n const canInitializeInterval = !this.#isIntervalPaused;\n if (this.#doesIntervalAllowAnother && this.#doesConcurrentAllowAnother) {\n const job = this.#queue.dequeue();\n if (!job) {\n return false;\n }\n this.emit('active');\n job();\n if (canInitializeInterval) {\n this.#initializeIntervalIfNeeded();\n }\n return true;\n }\n }\n return false;\n }\n #initializeIntervalIfNeeded() {\n if (this.#isIntervalIgnored || this.#intervalId !== undefined) {\n return;\n }\n this.#intervalId = setInterval(() => {\n this.#onInterval();\n }, this.#interval);\n this.#intervalEnd = Date.now() + this.#interval;\n }\n #onInterval() {\n if (this.#intervalCount === 0 && this.#pending === 0 && this.#intervalId) {\n clearInterval(this.#intervalId);\n this.#intervalId = undefined;\n }\n this.#intervalCount = this.#carryoverConcurrencyCount ? this.#pending : 0;\n this.#processQueue();\n }\n /**\n Executes all queued functions until it reaches the limit.\n */\n #processQueue() {\n // eslint-disable-next-line no-empty\n while (this.#tryToStartAnother()) { }\n }\n get concurrency() {\n return this.#concurrency;\n }\n set concurrency(newConcurrency) {\n if (!(typeof newConcurrency === 'number' && newConcurrency >= 1)) {\n throw new TypeError(`Expected \\`concurrency\\` to be a number from 1 and up, got \\`${newConcurrency}\\` (${typeof newConcurrency})`);\n }\n this.#concurrency = newConcurrency;\n this.#processQueue();\n }\n async #throwOnAbort(signal) {\n return new Promise((_resolve, reject) => {\n signal.addEventListener('abort', () => {\n reject(signal.reason);\n }, { once: true });\n });\n }\n /**\n Updates the priority of a promise function by its id, affecting its execution order. Requires a defined concurrency limit to take effect.\n\n For example, this can be used to prioritize a promise function to run earlier.\n\n ```js\n import PQueue from 'p-queue';\n\n const queue = new PQueue({concurrency: 1});\n\n queue.add(async () => '🦄', {priority: 1});\n queue.add(async () => '🦀', {priority: 0, id: '🦀'});\n queue.add(async () => '🦄', {priority: 1});\n queue.add(async () => '🦄', {priority: 1});\n\n queue.setPriority('🦀', 2);\n ```\n\n In this case, the promise function with `id: '🦀'` runs second.\n\n You can also deprioritize a promise function to delay its execution:\n\n ```js\n import PQueue from 'p-queue';\n\n const queue = new PQueue({concurrency: 1});\n\n queue.add(async () => '🦄', {priority: 1});\n queue.add(async () => '🦀', {priority: 1, id: '🦀'});\n queue.add(async () => '🦄');\n queue.add(async () => '🦄', {priority: 0});\n\n queue.setPriority('🦀', -1);\n ```\n Here, the promise function with `id: '🦀'` executes last.\n */\n setPriority(id, priority) {\n this.#queue.setPriority(id, priority);\n }\n async add(function_, options = {}) {\n // In case `id` is not defined.\n options.id ??= (this.#idAssigner++).toString();\n options = {\n timeout: this.timeout,\n throwOnTimeout: this.#throwOnTimeout,\n ...options,\n };\n return new Promise((resolve, reject) => {\n this.#queue.enqueue(async () => {\n this.#pending++;\n try {\n options.signal?.throwIfAborted();\n this.#intervalCount++;\n let operation = function_({ signal: options.signal });\n if (options.timeout) {\n operation = pTimeout(Promise.resolve(operation), { milliseconds: options.timeout });\n }\n if (options.signal) {\n operation = Promise.race([operation, this.#throwOnAbort(options.signal)]);\n }\n const result = await operation;\n resolve(result);\n this.emit('completed', result);\n }\n catch (error) {\n if (error instanceof TimeoutError && !options.throwOnTimeout) {\n resolve();\n return;\n }\n reject(error);\n this.emit('error', error);\n }\n finally {\n this.#next();\n }\n }, options);\n this.emit('add');\n this.#tryToStartAnother();\n });\n }\n async addAll(functions, options) {\n return Promise.all(functions.map(async (function_) => this.add(function_, options)));\n }\n /**\n Start (or resume) executing enqueued tasks within concurrency limit. No need to call this if queue is not paused (via `options.autoStart = false` or by `.pause()` method.)\n */\n start() {\n if (!this.#isPaused) {\n return this;\n }\n this.#isPaused = false;\n this.#processQueue();\n return this;\n }\n /**\n Put queue execution on hold.\n */\n pause() {\n this.#isPaused = true;\n }\n /**\n Clear the queue.\n */\n clear() {\n this.#queue = new this.#queueClass();\n }\n /**\n Can be called multiple times. Useful if you for example add additional items at a later time.\n\n @returns A promise that settles when the queue becomes empty.\n */\n async onEmpty() {\n // Instantly resolve if the queue is empty\n if (this.#queue.size === 0) {\n return;\n }\n await this.#onEvent('empty');\n }\n /**\n @returns A promise that settles when the queue size is less than the given limit: `queue.size < limit`.\n\n If you want to avoid having the queue grow beyond a certain size you can `await queue.onSizeLessThan()` before adding a new item.\n\n Note that this only limits the number of items waiting to start. There could still be up to `concurrency` jobs already running that this call does not include in its calculation.\n */\n async onSizeLessThan(limit) {\n // Instantly resolve if the queue is empty.\n if (this.#queue.size < limit) {\n return;\n }\n await this.#onEvent('next', () => this.#queue.size < limit);\n }\n /**\n The difference with `.onEmpty` is that `.onIdle` guarantees that all work from the queue has finished. `.onEmpty` merely signals that the queue is empty, but it could mean that some promises haven't completed yet.\n\n @returns A promise that settles when the queue becomes empty, and all promises have completed; `queue.size === 0 && queue.pending === 0`.\n */\n async onIdle() {\n // Instantly resolve if none pending and if nothing else is queued\n if (this.#pending === 0 && this.#queue.size === 0) {\n return;\n }\n await this.#onEvent('idle');\n }\n async #onEvent(event, filter) {\n return new Promise(resolve => {\n const listener = () => {\n if (filter && !filter()) {\n return;\n }\n this.off(event, listener);\n resolve();\n };\n this.on(event, listener);\n });\n }\n /**\n Size of the queue, the number of queued items waiting to run.\n */\n get size() {\n return this.#queue.size;\n }\n /**\n Size of the queue, filtered by the given options.\n\n For example, this can be used to find the number of items remaining in the queue with a specific priority level.\n */\n sizeBy(options) {\n // eslint-disable-next-line unicorn/no-array-callback-reference\n return this.#queue.filter(options).length;\n }\n /**\n Number of running items (no longer in the queue).\n */\n get pending() {\n return this.#pending;\n }\n /**\n Whether the queue is currently paused.\n */\n get isPaused() {\n return this.#isPaused;\n }\n}\n","import '../assets/NcBlurHash-7aGtE-_T.css';\nimport { decode } from \"blurhash\";\nimport { ref, watch, nextTick } from \"vue\";\nimport { preloadImage } from \"../Functions/preloadImage.mjs\";\nimport { l as logger } from \"./logger-D3RVzcfQ.mjs\";\nimport { n as normalizeComponent } from \"./_plugin-vue2_normalizer-DU4iP6Vu.mjs\";\nconst fadeTransition = \"_fadeTransition_13rtj_2\";\nconst fadeTransitionActive = \"_fadeTransitionActive_13rtj_6\";\nconst style0 = {\n fadeTransition,\n fadeTransitionActive\n};\nconst _sfc_main = {\n __name: \"NcBlurHash\",\n props: {\n /**\n * The blur hash value to use.\n */\n hash: {\n required: true,\n type: String\n },\n /**\n * This is normally not needed, but if this blur hash is not only intended\n * for decorative purpose, descriptive text should be passed for accessibility.\n */\n alt: {\n type: String,\n default: \"\"\n },\n /**\n * Optional an image source to load, during the load the blur hash is shown.\n * As soon as it is loaded the image will be shown instead.\n */\n src: {\n type: String,\n default: \"\"\n }\n },\n emits: [\n /**\n * Emitted when the image (`src`) has been loaded.\n */\n \"load\"\n ],\n setup(__props, { emit }) {\n const props = __props;\n const canvas = ref();\n const imageLoaded = ref(false);\n watch(() => props.hash, drawBlurHash);\n watch(imageLoaded, () => {\n if (imageLoaded.value === false) {\n nextTick(() => drawBlurHash());\n }\n }, { immediate: true });\n watch(() => props.src, () => {\n imageLoaded.value = false;\n if (props.src) {\n preloadImage(props.src).then((success) => {\n imageLoaded.value = success;\n emit(\"load\", success);\n });\n }\n }, { immediate: true });\n function drawBlurHash() {\n if (imageLoaded.value) {\n return;\n }\n if (!props.hash) {\n logger.error(\"Invalid BlurHash value\");\n return;\n }\n if (canvas.value === void 0) {\n logger.error(\"BlurHash canvas not available\");\n return;\n }\n const { height, width } = canvas.value;\n const pixels = decode(props.hash, width, height);\n const ctx = canvas.value.getContext(\"2d\");\n if (ctx === null) {\n logger.error(\"Cannot create context for BlurHash canvas\");\n return;\n }\n const imageData = ctx.createImageData(width, height);\n imageData.data.set(pixels);\n ctx.putImageData(imageData, 0, 0);\n }\n return { __sfc: true, props, emit, canvas, imageLoaded, drawBlurHash };\n }\n};\nvar _sfc_render = function render() {\n var _vm = this, _c = _vm._self._c, _setup = _vm._self._setupProxy;\n return _c(\"Transition\", { attrs: { \"css\": _vm.src ? void 0 : false, \"enter-active-class\": _vm.$style.fadeTransition, \"leave-active-class\": _vm.$style.fadeTransition, \"enter-class\": _vm.$style.fadeTransitionActive, \"leave-to-class\": _vm.$style.fadeTransitionActive } }, [!_setup.imageLoaded ? _c(\"canvas\", { ref: \"canvas\", attrs: { \"aria-hidden\": _vm.alt ? null : \"true\", \"aria-label\": _vm.alt } }) : _c(\"img\", { attrs: { \"alt\": _vm.alt, \"src\": _vm.src } })]);\n};\nvar _sfc_staticRenderFns = [];\nconst __cssModules = {\n \"$style\": style0\n};\nfunction _sfc_injectStyles(ctx) {\n for (var key in __cssModules) {\n this[key] = __cssModules[key];\n }\n}\nvar __component__ = /* @__PURE__ */ normalizeComponent(\n _sfc_main,\n _sfc_render,\n _sfc_staticRenderFns,\n false,\n _sfc_injectStyles,\n null\n);\nconst NcBlurHash = __component__.exports;\nexport {\n NcBlurHash as N\n};\n//# sourceMappingURL=NcBlurHash-DZmsBU0q.mjs.map\n","\n import API from \"!../../../../style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../css-loader/dist/cjs.js!./NcGuestContent-BkegjnLL.css\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../css-loader/dist/cjs.js!./NcGuestContent-BkegjnLL.css\";\n export default content && content.locals ? content.locals : undefined;\n","import '../assets/NcGuestContent-BkegjnLL.css';\nimport { n as normalizeComponent } from \"../chunks/_plugin-vue2_normalizer-DU4iP6Vu.mjs\";\nconst _sfc_main = {\n name: \"NcGuestContent\",\n mounted() {\n document.getElementById(\"content\").classList.add(\"nc-guest-content\");\n },\n destroyed() {\n document.getElementById(\"content\").classList.remove(\"nc-guest-content\");\n }\n};\nvar _sfc_render = function render() {\n var _vm = this, _c = _vm._self._c;\n return _c(\"div\", { attrs: { \"id\": \"guest-content-vue\" } }, [_vm._t(\"default\")], 2);\n};\nvar _sfc_staticRenderFns = [];\nvar __component__ = /* @__PURE__ */ normalizeComponent(\n _sfc_main,\n _sfc_render,\n _sfc_staticRenderFns,\n false,\n null,\n \"528e9576\"\n);\nconst NcGuestContent = __component__.exports;\nexport {\n NcGuestContent as default\n};\n//# sourceMappingURL=NcGuestContent.mjs.map\n","\n import API from \"!../../../../style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../css-loader/dist/cjs.js!./NcRelatedResourcesPanel-BgMc8bue.css\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../css-loader/dist/cjs.js!./NcRelatedResourcesPanel-BgMc8bue.css\";\n export default content && content.locals ? content.locals : undefined;\n","import '../assets/NcRelatedResourcesPanel-BgMc8bue.css';\nimport axios from \"@nextcloud/axios\";\nimport { generateOcsUrl } from \"@nextcloud/router\";\nimport { r as register, O as t39, a as t, P as t42, Q as t9 } from \"./_l10n-BmKQgz1z.mjs\";\nimport { N as NcButton } from \"./NcButton-DUZTtFhr.mjs\";\nimport { g as getRoute } from \"./autolink-D2pIbi92.mjs\";\nimport { n as normalizeComponent } from \"./_plugin-vue2_normalizer-DU4iP6Vu.mjs\";\nimport { getCapabilities } from \"@nextcloud/capabilities\";\nimport { C as ChevronDown } from \"./ChevronDown-DFQfzh63.mjs\";\nimport { C as ChevronUp } from \"./ChevronUp-C7Dy9Bph.mjs\";\nimport { N as NcIconSvgWrapper } from \"./NcIconSvgWrapper-BreCg8pX.mjs\";\nimport { l as logger } from \"./logger-D3RVzcfQ.mjs\";\nregister(t39);\nconst _sfc_main$4 = {\n name: \"NcResource\",\n components: {\n NcButton\n },\n /* eslint vue/require-prop-comment: warn -- TODO: Add a proper doc block about what this props do */\n props: {\n icon: {\n type: String,\n required: true\n },\n name: {\n type: String,\n required: true\n },\n url: {\n type: String,\n required: true\n }\n },\n data() {\n return {\n labelTranslated: t('Open link to \"{resourceName}\"', { resourceName: this.name })\n };\n },\n computed: {\n route() {\n return getRoute(this.$router, this.url);\n }\n },\n methods: {\n t\n }\n};\nvar _sfc_render$4 = function render() {\n var _vm = this, _c = _vm._self._c;\n return _c(\"li\", { staticClass: \"resource\" }, [_c(\"NcButton\", { staticClass: \"resource__button\", attrs: { \"aria-label\": _vm.labelTranslated, \"to\": _vm.route, \"href\": _vm.route ? null : _vm.url, \"variant\": \"tertiary\" }, scopedSlots: _vm._u([{ key: \"icon\", fn: function() {\n return [_c(\"div\", { staticClass: \"resource__icon\" }, [_c(\"img\", { attrs: { \"src\": _vm.icon } })])];\n }, proxy: true }]) }, [_vm._v(\" \" + _vm._s(_vm.name) + \" \")])], 1);\n};\nvar _sfc_staticRenderFns$4 = [];\nvar __component__$4 = /* @__PURE__ */ normalizeComponent(\n _sfc_main$4,\n _sfc_render$4,\n _sfc_staticRenderFns$4,\n false,\n null,\n \"9f864ea4\"\n);\nconst NcResource = __component__$4.exports;\nconst _sfc_main$3 = {\n name: \"AccountGroupIcon\",\n emits: [\"click\"],\n props: {\n title: {\n type: String\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n};\nvar _sfc_render$3 = function render2() {\n var _vm = this, _c = _vm._self._c;\n return _c(\"span\", _vm._b({ staticClass: \"material-design-icon account-group-icon\", attrs: { \"aria-hidden\": _vm.title ? null : \"true\", \"aria-label\": _vm.title, \"role\": \"img\" }, on: { \"click\": function($event) {\n return _vm.$emit(\"click\", $event);\n } } }, \"span\", _vm.$attrs, false), [_c(\"svg\", { staticClass: \"material-design-icon__svg\", attrs: { \"fill\": _vm.fillColor, \"width\": _vm.size, \"height\": _vm.size, \"viewBox\": \"0 0 24 24\" } }, [_c(\"path\", { attrs: { \"d\": \"M12,5.5A3.5,3.5 0 0,1 15.5,9A3.5,3.5 0 0,1 12,12.5A3.5,3.5 0 0,1 8.5,9A3.5,3.5 0 0,1 12,5.5M5,8C5.56,8 6.08,8.15 6.53,8.42C6.38,9.85 6.8,11.27 7.66,12.38C7.16,13.34 6.16,14 5,14A3,3 0 0,1 2,11A3,3 0 0,1 5,8M19,8A3,3 0 0,1 22,11A3,3 0 0,1 19,14C17.84,14 16.84,13.34 16.34,12.38C17.2,11.27 17.62,9.85 17.47,8.42C17.92,8.15 18.44,8 19,8M5.5,18.25C5.5,16.18 8.41,14.5 12,14.5C15.59,14.5 18.5,16.18 18.5,18.25V20H5.5V18.25M0,20V18.5C0,17.11 1.89,15.94 4.45,15.6C3.86,16.28 3.5,17.22 3.5,18.25V20H0M24,20H20.5V18.25C20.5,17.22 20.14,16.28 19.55,15.6C22.11,15.94 24,17.11 24,18.5V20Z\" } }, [_vm.title ? _c(\"title\", [_vm._v(_vm._s(_vm.title))]) : _vm._e()])])]);\n};\nvar _sfc_staticRenderFns$3 = [];\nvar __component__$3 = /* @__PURE__ */ normalizeComponent(\n _sfc_main$3,\n _sfc_render$3,\n _sfc_staticRenderFns$3,\n false,\n null,\n null\n);\nconst AccountGroup = __component__$3.exports;\nconst _sfc_main$2 = {\n name: \"OpenInNewIcon\",\n emits: [\"click\"],\n props: {\n title: {\n type: String\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n};\nvar _sfc_render$2 = function render3() {\n var _vm = this, _c = _vm._self._c;\n return _c(\"span\", _vm._b({ staticClass: \"material-design-icon open-in-new-icon\", attrs: { \"aria-hidden\": _vm.title ? null : \"true\", \"aria-label\": _vm.title, \"role\": \"img\" }, on: { \"click\": function($event) {\n return _vm.$emit(\"click\", $event);\n } } }, \"span\", _vm.$attrs, false), [_c(\"svg\", { staticClass: \"material-design-icon__svg\", attrs: { \"fill\": _vm.fillColor, \"width\": _vm.size, \"height\": _vm.size, \"viewBox\": \"0 0 24 24\" } }, [_c(\"path\", { attrs: { \"d\": \"M14,3V5H17.59L7.76,14.83L9.17,16.24L19,6.41V10H21V3M19,19H5V5H12V3H5C3.89,3 3,3.9 3,5V19A2,2 0 0,0 5,21H19A2,2 0 0,0 21,19V12H19V19Z\" } }, [_vm.title ? _c(\"title\", [_vm._v(_vm._s(_vm.title))]) : _vm._e()])])]);\n};\nvar _sfc_staticRenderFns$2 = [];\nvar __component__$2 = /* @__PURE__ */ normalizeComponent(\n _sfc_main$2,\n _sfc_render$2,\n _sfc_staticRenderFns$2,\n false,\n null,\n null\n);\nconst OpenInNew = __component__$2.exports;\nregister(t42);\nconst teamResourceProviders = getCapabilities()?.circles?.teamResourceProviders ?? [];\nconst _sfc_main$1 = {\n name: \"NcTeamResources\",\n components: {\n AccountGroup,\n ChevronDown,\n ChevronUp,\n OpenInNew,\n NcButton,\n NcIconSvgWrapper\n },\n /* eslint vue/require-prop-comment: warn -- TODO: Add a proper doc block about what this props do */\n props: {\n providerId: {\n type: String,\n default: null\n },\n itemId: {\n type: [String, Number],\n default: null\n }\n },\n data() {\n return {\n appEnabled: OC?.appswebroots?.circles !== void 0 && (OC.config.version.split(\".\")[0] ?? 0) >= 29,\n loading: false,\n teamResources: null,\n teamOpen: []\n };\n },\n computed: {\n isVisible() {\n return !this.loading && this.teamResources?.length > 0;\n },\n teamProviders() {\n return (teamId) => {\n const team = this.teamResources.find((t2) => t2.teamId === teamId);\n return team.resources?.reduce((acc, resource) => {\n if (resource.provider.id === this.providerId && resource.id === String(this.itemId)) {\n return acc;\n }\n if (!acc[resource.provider.id]) {\n acc[resource.provider.id] = resource.provider;\n acc[resource.provider.id].resources = [];\n }\n if (resource.provider.id === this.providerId && resource.id === String(this.itemId)) {\n return acc;\n }\n acc[resource.provider.id].resources.push(resource);\n return acc;\n }, {});\n };\n },\n open() {\n return (teamId) => {\n return this.teamOpen.indexOf(teamId) !== -1;\n };\n }\n },\n watch: {\n providerId() {\n this.fetchTeamResources();\n },\n itemId() {\n this.fetchTeamResources();\n }\n },\n created() {\n this.fetchTeamResources();\n },\n methods: {\n t,\n async fetchTeamResources() {\n if (!teamResourceProviders.includes(this.providerId)) {\n return;\n }\n try {\n this.loading = true;\n const response = await axios.get(generateOcsUrl(`/teams/resources/${this.providerId}/${this.itemId}`));\n this.teamResources = response.data.ocs.data.teams;\n this.teamOpen = [this.teamResources[0]?.teamId];\n } catch (error) {\n this.teamResources = null;\n logger.error(\"Could not fetch Teams resources\", { error });\n } finally {\n this.loading = false;\n }\n },\n toggleOpen(teamId, open) {\n if (open) {\n this.teamOpen.push(teamId);\n } else {\n this.teamOpen.splice(this.teamOpen.indexOf(teamId), 1);\n }\n }\n }\n};\nvar _sfc_render$1 = function render4() {\n var _vm = this, _c = _vm._self._c;\n return _vm.appEnabled && _vm.isVisible ? _c(\"div\", { staticClass: \"team-resources\" }, [_c(\"h5\", { staticClass: \"team-resources__header\" }, [_vm._v(\" \" + _vm._s(_vm.t(\"Related team resources\")) + \" \")]), _vm._l(_vm.teamResources, function(team) {\n return _c(\"details\", { key: team.teamId, staticClass: \"related-team\", attrs: { \"name\": \"Team resources\", \"open\": _vm.open(team.teamId) }, on: { \"toggle\": (event) => _vm.toggleOpen(team.teamId, event.target.open) } }, [_c(\"summary\", { staticClass: \"related-team__header\" }, [_c(\"h5\", { staticClass: \"related-team__name\" }, [_c(\"AccountGroup\", { attrs: { \"size\": 20 } }), _vm._v(\" \" + _vm._s(team.displayName) + \" \")], 1), _c(\"NcButton\", { attrs: { \"aria-label\": _vm.t(\"View team\"), \"href\": team.link, \"title\": _vm.t(\"View team\"), \"variant\": \"tertiary\" }, scopedSlots: _vm._u([{ key: \"icon\", fn: function() {\n return [_c(\"OpenInNew\", { attrs: { \"size\": 20 } })];\n }, proxy: true }], null, true) }), _vm.open(team.teamId) ? _c(\"ChevronUp\", { attrs: { \"size\": 20 } }) : _c(\"ChevronDown\", { attrs: { \"size\": 20 } })], 1), _c(\"div\", _vm._l(_vm.teamProviders(team.teamId), function(provider) {\n return _c(\"div\", { key: provider.id, staticClass: \"related-team-provider\" }, [provider.resources.length > 0 ? _c(\"h6\", [_vm._v(\" \" + _vm._s(provider.name) + \" \")]) : _vm._e(), _c(\"ul\", _vm._l(provider.resources, function(resource) {\n return _c(\"li\", { key: resource.url, staticClass: \"related-team-resource\" }, [_c(\"a\", { staticClass: \"related-team-resource__link\", attrs: { \"href\": resource.url } }, [resource.iconEmoji ? _c(\"span\", { staticClass: \"resource__icon\" }, [_vm._v(\" \" + _vm._s(resource.iconEmoji) + \" \")]) : resource.iconSvg ? _c(\"NcIconSvgWrapper\", { staticClass: \"resource__icon\", attrs: { \"svg\": resource.iconSvg, \"size\": 20 } }) : resource.iconURL ? _c(\"span\", { staticClass: \"resource__icon\" }, [_c(\"img\", { attrs: { \"src\": resource.iconURL, \"alt\": \"\" } })]) : _vm._e(), _c(\"span\", { staticClass: \"resource__name\" }, [_vm._v(\" \" + _vm._s(resource.label) + \" \")])], 1)]);\n }), 0)]);\n }), 0)]);\n })], 2) : _vm._e();\n};\nvar _sfc_staticRenderFns$1 = [];\nvar __component__$1 = /* @__PURE__ */ normalizeComponent(\n _sfc_main$1,\n _sfc_render$1,\n _sfc_staticRenderFns$1,\n false,\n null,\n \"e224f6ac\"\n);\nconst NcTeamResources = __component__$1.exports;\nregister(t9);\nconst _sfc_main = {\n name: \"NcRelatedResourcesPanel\",\n components: {\n NcResource,\n NcTeamResources\n },\n /* eslint vue/require-prop-comment: warn -- TODO: Add a proper doc block about what this props do */\n props: {\n /**\n * The provider id implemented with `\\OCA\\RelatedResources\\IRelatedResourceProvider::getProviderId()`\n */\n providerId: {\n type: String,\n default: null\n },\n /**\n * The item id which uniquely identities the e.g. Calendar event, Deck board, file, Talk room, etc.\n */\n itemId: {\n type: [String, Number],\n default: null\n },\n /**\n * Limits to specific resource type. i.e. any provider id implemented with `\\OCA\\RelatedResources\\IRelatedResourceProvider::getProviderId()`\n */\n resourceType: {\n type: String,\n default: \"\"\n },\n /**\n * Set the maximum number of resources to load\n */\n limit: {\n type: Number,\n default: 0\n },\n /**\n * Only used by the files sidebar\n *\n * File info is passed when registered with `OCA.Sharing.ShareTabSections.registerSection()`\n */\n fileInfo: {\n type: Object,\n default: null\n },\n /**\n * Make the header name dynamic\n */\n header: {\n type: String,\n default: t(\"Related resources\")\n },\n description: {\n type: String,\n default: t(\"Anything shared with the same group of people will show up here\")\n },\n /**\n * If this element is used on a primary element set to true for primary styling.\n */\n primary: {\n type: Boolean,\n default: false\n }\n },\n emits: [\n \"has-error\",\n \"has-resources\"\n ],\n data() {\n return {\n appEnabled: OC?.appswebroots?.related_resources !== void 0,\n loading: false,\n error: null,\n resources: []\n };\n },\n computed: {\n isVisible() {\n if (this.loading) {\n return false;\n }\n return this.error ?? this.resources.length > 0;\n },\n subline() {\n if (this.error) {\n return t(\"Error getting related resources. Please contact your system administrator if you have any questions.\");\n }\n return this.description;\n },\n hasResourceInfo() {\n if (this.providerId !== null && this.itemId !== null) {\n return true;\n }\n if (this.fileInfo !== null) {\n return true;\n }\n return false;\n },\n isFiles() {\n return this.fileInfo?.id !== void 0;\n },\n url() {\n let providerId = null;\n let itemId = null;\n if (this.isFiles) {\n providerId = \"files\";\n itemId = this.fileInfo.id;\n } else {\n providerId = this.providerId;\n itemId = this.itemId;\n }\n return generateOcsUrl(\"/apps/related_resources/related/{providerId}?itemId={itemId}&resourceType={resourceType}&limit={limit}&format=json\", {\n providerId,\n itemId,\n resourceType: this.resourceType,\n limit: this.limit\n });\n }\n },\n watch: {\n providerId() {\n this.fetchRelatedResources();\n },\n itemId() {\n this.fetchRelatedResources();\n },\n fileInfo() {\n this.fetchRelatedResources();\n },\n error(error) {\n this.$emit(\"has-error\", Boolean(error));\n },\n resources(resources) {\n this.$emit(\"has-resources\", resources.length > 0);\n }\n },\n created() {\n this.fetchRelatedResources();\n },\n methods: {\n t,\n async fetchRelatedResources() {\n if (!this.appEnabled || !this.hasResourceInfo) {\n return;\n }\n this.loading = true;\n this.error = null;\n this.resources = [];\n try {\n const response = await axios.get(this.url);\n this.resources = response.data.ocs?.data;\n } catch (error) {\n this.error = e;\n logger.error(\"Could not fetch related resources\", { error });\n } finally {\n this.loading = false;\n }\n }\n }\n};\nvar _sfc_render = function render5() {\n var _vm = this, _c = _vm._self._c;\n return _c(\"div\", [_c(\"NcTeamResources\", { attrs: { \"provider-id\": _vm.providerId, \"item-id\": _vm.itemId } }), _vm.appEnabled && _vm.isVisible ? _c(\"div\", { staticClass: \"related-resources\" }, [_c(\"div\", { staticClass: \"related-resources__header\" }, [_c(\"h5\", [_vm._v(_vm._s(_vm.header))]), _c(\"p\", [_vm._v(_vm._s(_vm.subline))])]), _vm._l(_vm.resources, function(resource) {\n return _c(\"NcResource\", { key: resource.itemId, staticClass: \"related-resources__entry\", attrs: { \"icon\": resource.icon, \"name\": resource.title, \"url\": resource.url } });\n })], 2) : _vm._e()], 1);\n};\nvar _sfc_staticRenderFns = [];\nvar __component__ = /* @__PURE__ */ normalizeComponent(\n _sfc_main,\n _sfc_render,\n _sfc_staticRenderFns,\n false,\n null,\n \"eaa109ec\"\n);\nconst NcRelatedResourcesPanel = __component__.exports;\nexport {\n NcRelatedResourcesPanel as N\n};\n//# sourceMappingURL=NcRelatedResourcesPanel-D9-wo_xr.mjs.map\n","import { defineComponent } from \"vue\";\nimport { n as normalizeComponent } from \"./_plugin-vue2_normalizer-DU4iP6Vu.mjs\";\nconst _sfc_main = defineComponent({\n name: \"NcSavingIndicatorIcon\",\n props: {\n /**\n * Specify the size of the saving icon.\n */\n size: {\n type: Number,\n default: 20\n },\n /**\n * Specify what is saved.\n */\n name: {\n type: String,\n default: \"\"\n },\n /**\n * Set to true when saving is in progress.\n */\n saving: {\n type: Boolean,\n default: false,\n required: false\n },\n /**\n * Set to true if an error occured while saving.\n */\n error: {\n type: Boolean,\n default: false,\n required: false\n }\n },\n emits: [\"click\"],\n computed: {\n indicatorColor() {\n return this.error ? \"var(--color-text-error, var(--color-error))\" : this.saving ? \"var(--color-primary-element)\" : \"none\";\n }\n }\n});\nvar _sfc_render = function render() {\n var _vm = this, _c = _vm._self._c;\n _vm._self._setupProxy;\n return _c(\"span\", { staticClass: \"material-design-icon\", attrs: { \"aria-label\": _vm.name, \"role\": \"img\" }, on: { \"click\": function($event) {\n return _vm.$emit(\"click\", $event);\n } } }, [_c(\"svg\", { staticClass: \"material-design-icon__svg\", attrs: { \"fill\": _vm.fillColor, \"width\": _vm.size, \"height\": _vm.size, \"viewBox\": \"0 0 24 24\" } }, [_c(\"path\", { attrs: { \"fill\": _vm.indicatorColor, \"d\": \"m19 15a4 4 0 0 0-4 4 4 4 0 0 0 4 4 4 4 0 0 0 4-4 4 4 0 0 0-4-4z\" } }), _c(\"path\", { attrs: { \"fill\": \"currentColor\", \"d\": \"M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z\" } }, [_vm.name ? _c(\"title\", [_vm._v(_vm._s(_vm.name))]) : _vm._e()])])]);\n};\nvar _sfc_staticRenderFns = [];\nvar __component__ = /* @__PURE__ */ normalizeComponent(\n _sfc_main,\n _sfc_render,\n _sfc_staticRenderFns,\n false,\n null,\n null\n);\nconst NcSavingIndicatorIcon = __component__.exports;\nexport {\n NcSavingIndicatorIcon as N\n};\n//# sourceMappingURL=NcSavingIndicatorIcon-U7AIamCl.mjs.map\n","\n import API from \"!../../../../style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../css-loader/dist/cjs.js!./NcSelectUsers-CfOSPgtz.css\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../css-loader/dist/cjs.js!./NcSelectUsers-CfOSPgtz.css\";\n export default content && content.locals ? content.locals : undefined;\n","import '../assets/NcSelectUsers-CfOSPgtz.css';\nimport { ref, watch } from \"vue\";\nimport { N as NcListItemIcon } from \"./NcListItemIcon-DT7XMp5c.mjs\";\nimport { N as NcSelect } from \"./NcSelect-DTniMiUS.mjs\";\nimport { r as register, j as t46, g as t16, a as t } from \"./_l10n-BmKQgz1z.mjs\";\nimport { G as GenRandomId } from \"./GenRandomId-F5ebeBB_.mjs\";\nimport { n as normalizeComponent } from \"./_plugin-vue2_normalizer-DU4iP6Vu.mjs\";\nregister(t16, t46);\nconst __default__ = {\n model: {\n prop: \"modelValue\",\n event: \"update:modelValue\"\n }\n};\nconst _sfc_main = /* @__PURE__ */ Object.assign(__default__, {\n __name: \"NcSelectUsers\",\n props: {\n /**\n * `aria-label` for the clear input button\n */\n ariaLabelClearSelected: {\n type: String,\n default: t(\"Clear selected\")\n },\n /**\n * `aria-label` for the listbox element\n */\n ariaLabelListbox: {\n type: String,\n default: t(\"Options\")\n },\n /**\n * Allows to customize the `aria-label` for the deselect-option button\n * The default is \"Deselect \" + optionLabel\n *\n * @type {(optionLabel: string) => string}\n */\n ariaLabelDeselectOption: {\n type: Function,\n default: (optionLabel) => t(\"Deselect {option}\", { option: optionLabel })\n },\n /**\n * Keep the dropdown open after selecting an entry.\n */\n keepOpen: {\n type: Boolean,\n default: false\n },\n /**\n * Disable the component\n */\n disabled: {\n type: Boolean,\n default: false\n },\n /**\n * Callback to determine if the provided option should match the current search text.\n * Used to determine if the option should be displayed.\n *\n * By default it filters by the `displayName` and `subname` properties of the user\n * option object unless this prop is set explicitly\n */\n filterBy: {\n type: Function,\n default: null\n },\n /**\n * Input element id\n */\n inputId: {\n type: String,\n default: () => GenRandomId()\n },\n /**\n * Visible label for the input element\n *\n * @default 'Select account'\n */\n inputLabel: {\n type: String,\n default: t(\"Select account\")\n },\n /**\n * Pass true if you are using an external label.\n * In this case make sure you set the `for` attribute of your `