diff options
Diffstat (limited to 'core')
33 files changed, 1081 insertions, 116 deletions
diff --git a/core/AppInfo/ConfigLexicon.php b/core/AppInfo/ConfigLexicon.php index cc7fd1a3b09..df8243019ad 100644 --- a/core/AppInfo/ConfigLexicon.php +++ b/core/AppInfo/ConfigLexicon.php @@ -8,36 +8,54 @@ declare(strict_types=1); namespace OC\Core\AppInfo; -use NCU\Config\Lexicon\ConfigLexiconEntry; -use NCU\Config\Lexicon\ConfigLexiconStrictness; -use NCU\Config\Lexicon\IConfigLexicon; -use NCU\Config\ValueType; +use OCP\Config\Lexicon\Entry; +use OCP\Config\Lexicon\ILexicon; +use OCP\Config\Lexicon\Preset; +use OCP\Config\Lexicon\Strictness; +use OCP\Config\ValueType; /** * Config Lexicon for core. * * Please Add & Manage your Config Keys in that file and keep the Lexicon up to date! */ -class ConfigLexicon implements IConfigLexicon { +class ConfigLexicon implements ILexicon { public const SHAREAPI_ALLOW_FEDERATION_ON_PUBLIC_SHARES = 'shareapi_allow_federation_on_public_shares'; + public const SHARE_CUSTOM_TOKEN = 'shareapi_allow_custom_tokens'; + public const USER_LANGUAGE = 'lang'; + public const LASTCRON_TIMESTAMP = 'lastcron'; - public function getStrictness(): ConfigLexiconStrictness { - return ConfigLexiconStrictness::IGNORE; + public function getStrictness(): Strictness { + return Strictness::IGNORE; } public function getAppConfigs(): array { return [ - new ConfigLexiconEntry( + new Entry( key: self::SHAREAPI_ALLOW_FEDERATION_ON_PUBLIC_SHARES, type: ValueType::BOOL, - lazy: true, defaultRaw: true, definition: 'adds share permission to public shares to allow adding them to your Nextcloud (federation)', + lazy: true, ), + new Entry( + key: self::SHARE_CUSTOM_TOKEN, + type: ValueType::BOOL, + defaultRaw: fn (Preset $p): bool => match ($p) { + Preset::FAMILY, Preset::PRIVATE => true, + default => false, + }, + definition: 'Allow users to set custom share link tokens', + lazy: true, + note: 'Shares with guessable tokens may be accessed easily. Shares with custom tokens will continue to be accessible after this setting has been disabled.', + ), + new Entry(self::LASTCRON_TIMESTAMP, ValueType::INT, 0, 'timestamp of last cron execution'), ]; } public function getUserConfigs(): array { - return []; + return [ + new Entry(self::USER_LANGUAGE, ValueType::STRING, null, 'language'), + ]; } } diff --git a/core/Command/Base.php b/core/Command/Base.php index c9b6337b64a..6ab2765b0f9 100644 --- a/core/Command/Base.php +++ b/core/Command/Base.php @@ -170,6 +170,8 @@ class Base extends Command implements CompletionAwareInterface { return 'true'; } elseif ($value === null) { return $returnNull ? null : 'null'; + } if ($value instanceof \UnitEnum) { + return $value->value; } else { return $value; } diff --git a/core/Command/Config/App/GetConfig.php b/core/Command/Config/App/GetConfig.php index b68476a2e91..af0c5648232 100644 --- a/core/Command/Config/App/GetConfig.php +++ b/core/Command/Config/App/GetConfig.php @@ -38,6 +38,12 @@ class GetConfig extends Base { 'returns complete details about the app config value' ) ->addOption( + '--key-details', + null, + InputOption::VALUE_NONE, + 'returns complete details about the app config key' + ) + ->addOption( 'default-value', null, InputOption::VALUE_OPTIONAL, @@ -66,6 +72,12 @@ class GetConfig extends Base { return 0; } + if ($input->getOption('key-details')) { + $details = $this->appConfig->getKeyDetails($appName, $configName); + $this->writeArrayInOutputFormat($input, $output, $details); + return 0; + } + try { $configValue = $this->appConfig->getDetails($appName, $configName)['value']; } catch (AppConfigUnknownKeyException $e) { diff --git a/core/Command/Config/App/SetConfig.php b/core/Command/Config/App/SetConfig.php index 1f4ab81bf05..c818404fc0e 100644 --- a/core/Command/Config/App/SetConfig.php +++ b/core/Command/Config/App/SetConfig.php @@ -199,6 +199,11 @@ class SetConfig extends Base { $current['lazy'] ? 'lazy cache' : 'fast cache' ) ); + $keyDetails = $this->appConfig->getKeyDetails($appName, $configName); + if (($keyDetails['note'] ?? '') !== '') { + $output->writeln('<comment>Note:</comment> ' . $keyDetails['note']); + } + } else { $output->writeln('<info>Config value were not updated</info>'); } diff --git a/core/Command/Config/ListConfigs.php b/core/Command/Config/ListConfigs.php index b81bfbf4d18..a7c195276eb 100644 --- a/core/Command/Config/ListConfigs.php +++ b/core/Command/Config/ListConfigs.php @@ -125,7 +125,7 @@ class ListConfigs extends Base { */ protected function getAppConfigs(string $app, bool $noSensitiveValues) { if ($noSensitiveValues) { - return $this->appConfig->getFilteredValues($app, false); + return $this->appConfig->getFilteredValues($app); } else { return $this->appConfig->getValues($app, false); } diff --git a/core/Command/Config/Preset.php b/core/Command/Config/Preset.php index 9f1424dcc54..4f0278896db 100644 --- a/core/Command/Config/Preset.php +++ b/core/Command/Config/Preset.php @@ -8,9 +8,9 @@ declare(strict_types=1); */ namespace OC\Core\Command\Config; -use NCU\Config\Lexicon\Preset as ConfigLexiconPreset; use OC\Config\ConfigManager; use OC\Core\Command\Base; +use OCP\Config\Lexicon\Preset as ConfigLexiconPreset; use OCP\IConfig; use Symfony\Component\Console\Input\InputArgument; use Symfony\Component\Console\Input\InputInterface; diff --git a/core/Controller/TaskProcessingApiController.php b/core/Controller/TaskProcessingApiController.php index e60c9ebc789..90a0e9ba14a 100644 --- a/core/Controller/TaskProcessingApiController.php +++ b/core/Controller/TaskProcessingApiController.php @@ -575,23 +575,51 @@ class TaskProcessingApiController extends OCSController { #[ApiRoute(verb: 'GET', url: '/tasks_provider/next', root: '/taskprocessing')] public function getNextScheduledTask(array $providerIds, array $taskTypeIds): DataResponse { try { + $providerIdsBasedOnTaskTypesWithNull = array_unique(array_map(function ($taskTypeId) { + try { + return $this->taskProcessingManager->getPreferredProvider($taskTypeId)->getId(); + } catch (Exception) { + return null; + } + }, $taskTypeIds)); + + $providerIdsBasedOnTaskTypes = array_filter($providerIdsBasedOnTaskTypesWithNull, fn ($providerId) => $providerId !== null); + // restrict $providerIds to providers that are configured as preferred for the passed task types - $providerIds = array_values(array_intersect(array_unique(array_map(fn ($taskTypeId) => $this->taskProcessingManager->getPreferredProvider($taskTypeId)->getId(), $taskTypeIds)), $providerIds)); + $possibleProviderIds = array_values(array_intersect($providerIdsBasedOnTaskTypes, $providerIds)); + // restrict $taskTypeIds to task types that can actually be run by one of the now restricted providers - $taskTypeIds = array_values(array_filter($taskTypeIds, fn ($taskTypeId) => in_array($this->taskProcessingManager->getPreferredProvider($taskTypeId)->getId(), $providerIds, true))); - if (count($providerIds) === 0 || count($taskTypeIds) === 0) { + $possibleTaskTypeIds = array_values(array_filter($taskTypeIds, function ($taskTypeId) use ($possibleProviderIds) { + try { + $providerForTaskType = $this->taskProcessingManager->getPreferredProvider($taskTypeId)->getId(); + } catch (Exception) { + // no provider found for task type + return false; + } + return in_array($providerForTaskType, $possibleProviderIds, true); + })); + + if (count($possibleProviderIds) === 0 || count($possibleTaskTypeIds) === 0) { throw new NotFoundException(); } $taskIdsToIgnore = []; while (true) { - $task = $this->taskProcessingManager->getNextScheduledTask($taskTypeIds, $taskIdsToIgnore); - $provider = $this->taskProcessingManager->getPreferredProvider($task->getTaskTypeId()); - if (in_array($provider->getId(), $providerIds, true)) { - if ($this->taskProcessingManager->lockTask($task)) { - break; + // Until we find a task whose task type is set to be provided by the providers requested with this request + // Or no scheduled task is found anymore (given the taskIds to ignore) + $task = $this->taskProcessingManager->getNextScheduledTask($possibleTaskTypeIds, $taskIdsToIgnore); + try { + $provider = $this->taskProcessingManager->getPreferredProvider($task->getTaskTypeId()); + if (in_array($provider->getId(), $possibleProviderIds, true)) { + if ($this->taskProcessingManager->lockTask($task)) { + break; + } } + } catch (Exception) { + // There is no provider set for the task type of this task + // proceed to ignore this task } + $taskIdsToIgnore[] = (int)$task->getId(); } diff --git a/core/css/header.css b/core/css/header.css index bfa1f475ba6..88a8d8b18f6 100644 --- a/core/css/header.css +++ b/core/css/header.css @@ -5,4 +5,4 @@ *//*! * SPDX-FileCopyrightText: 2018 Nextcloud GmbH and Nextcloud contributors * SPDX-License-Identifier: AGPL-3.0-or-later - */#header,#expanddiv{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}#header #nextcloud:focus-visible,#header .app-menu-entry a:focus-visible,#header .header-menu button:first-of-type:focus-visible,#expanddiv #nextcloud:focus-visible,#expanddiv .app-menu-entry a:focus-visible,#expanddiv .header-menu button:first-of-type:focus-visible{outline:none}#header #nextcloud:focus-visible::after,#header .app-menu-entry a:focus-visible::after,#header .header-menu button:first-of-type:focus-visible::after,#expanddiv #nextcloud:focus-visible::after,#expanddiv .app-menu-entry a:focus-visible::after,#expanddiv .header-menu button:first-of-type:focus-visible::after{content:" ";position:absolute;inset-block-end:2px;transform:translateX(-50%);width:12px;height:2px;border-radius:3px;background-color:var(--color-background-plain-text);inset-inline-start:50%;opacity:1}#header .header-end,#expanddiv .header-end{margin-inline-end:calc(3*var(--default-grid-baseline))}#header .header-end a:not(.button):focus-visible::after,#header .header-end div[role=button]:focus-visible::after,#expanddiv .header-end a:not(.button):focus-visible::after,#expanddiv .header-end div[role=button]:focus-visible::after{bottom:4px}#header .header-end #expand.menutoggle:focus-visible::after,#expanddiv .header-end #expand.menutoggle:focus-visible::after{inset-inline-start:40%}#body-user #header,#body-settings #header,#body-public #header{display:inline-flex;position:absolute;top:0;width:100%;z-index:2000;height:50px;box-sizing:border-box;justify-content:space-between}#nextcloud{padding:5px 0;padding-inline-start:86px;position:relative;height:calc(100% - 4px);box-sizing:border-box;opacity:1;align-items:center;display:flex;flex-wrap:wrap;overflow:hidden;margin:2px}#nextcloud:hover,#nextcloud:active{opacity:1}#header .header-end>div>.menu{background-color:var(--color-main-background);filter:drop-shadow(0 1px 5px var(--color-box-shadow));border-radius:var(--border-radius-large);box-sizing:border-box;z-index:2000;position:absolute;max-width:350px;min-height:66px;max-height:calc(100vh - 50px - 8px);inset-inline-end:8px;top:50px;margin:0;overflow-y:auto}#header .header-end>div>.menu:not(.popovermenu){display:none}#header .header-end>div>.menu:after{border:10px solid rgba(0,0,0,0);border-bottom-color:var(--color-main-background);bottom:100%;content:" ";height:0;width:0;position:absolute;pointer-events:none;inset-inline-end:10px}#header .header-end>div>.menu>div,#header .header-end>div>.menu>ul{-webkit-overflow-scrolling:touch;min-height:66px;max-height:calc(100vh - 50px - 8px)}#header .logo{display:inline-flex;background-image:var(--image-logoheader, var(--image-logo, url("../img/logo/logo.svg")));background-repeat:no-repeat;background-size:contain;background-position:center;width:62px;position:absolute;inset-inline-start:12px;top:1px;bottom:1px;filter:var(--image-logoheader-custom, var(--background-image-invert-if-bright))}#header .header-appname-container{display:none;padding-inline-end:10px;flex-shrink:0}#header #header-start,#header .header-start,#header #header-end,#header .header-end{display:inline-flex;align-items:center}#header #header-start,#header .header-start{flex:1 0;white-space:nowrap;min-width:0}#header #header-end,#header .header-end{justify-content:flex-end;flex-shrink:1}#header .header-end>.header-menu__trigger img{filter:var(--background-image-invert-if-bright)}#header .header-end>div,#header .header-end>form{height:100%;position:relative}#header .header-end>div>.menutoggle,#header .header-end>form>.menutoggle{display:flex;justify-content:center;align-items:center;width:50px;height:44px;cursor:pointer;opacity:.85;padding:0;margin:2px 0}#header .header-end>div>.menutoggle:focus,#header .header-end>form>.menutoggle:focus{opacity:1}#header .header-end>div>.menutoggle:focus-visible,#header .header-end>form>.menutoggle:focus-visible{outline:none}.header-appname-container .header-appname{opacity:.75}.header-appname{color:var(--color-background-plain-text);font-size:16px;font-weight:bold;margin:0;padding:0;padding-inline-end:5px;overflow:hidden;text-overflow:ellipsis;flex:1 1 100%}.header-info{display:flex;flex-direction:column;overflow:hidden}.header-title{overflow:hidden;text-overflow:ellipsis}.header-shared-by{color:var(--color-background-plain-text);position:relative;font-weight:300;font-size:11px;line-height:11px;overflow:hidden;text-overflow:ellipsis}#skip-actions{position:absolute;overflow:hidden;z-index:9999;top:-999px;inset-inline-start:3px;padding:11px;display:flex;flex-wrap:wrap;gap:11px}#skip-actions:focus-within{top:50px}header #emptycontent h2,header .emptycontent h2{font-weight:normal;font-size:16px}header #emptycontent [class^=icon-],header #emptycontent [class*=icon-],header .emptycontent [class^=icon-],header .emptycontent [class*=icon-]{background-size:48px;height:48px;width:48px}/*# sourceMappingURL=header.css.map */ + */#header,#expanddiv{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}#header #nextcloud:focus-visible,#header .app-menu-entry a:focus-visible,#header .header-menu button:first-of-type:focus-visible,#expanddiv #nextcloud:focus-visible,#expanddiv .app-menu-entry a:focus-visible,#expanddiv .header-menu button:first-of-type:focus-visible{outline:none}#header #nextcloud:focus-visible::after,#header .app-menu-entry a:focus-visible::after,#header .header-menu button:first-of-type:focus-visible::after,#expanddiv #nextcloud:focus-visible::after,#expanddiv .app-menu-entry a:focus-visible::after,#expanddiv .header-menu button:first-of-type:focus-visible::after{content:" ";position:absolute;inset-block-end:2px;transform:translateX(-50%);width:12px;height:2px;border-radius:3px;background-color:var(--color-background-plain-text);inset-inline-start:50%;opacity:1}#header .header-end,#expanddiv .header-end{margin-inline-end:calc(3*var(--default-grid-baseline))}#header .header-end a:not(.button):focus-visible::after,#header .header-end div[role=button]:focus-visible::after,#expanddiv .header-end a:not(.button):focus-visible::after,#expanddiv .header-end div[role=button]:focus-visible::after{bottom:4px}#header .header-end #expand.menutoggle:focus-visible::after,#expanddiv .header-end #expand.menutoggle:focus-visible::after{inset-inline-start:40%}#body-user #header,#body-settings #header,#body-public #header{display:inline-flex;position:absolute;top:0;width:100%;z-index:2000;height:50px;box-sizing:border-box;justify-content:space-between}#nextcloud{padding:5px 0;padding-inline-start:86px;position:relative;height:calc(100% - 4px);box-sizing:border-box;opacity:1;align-items:center;display:flex;flex-wrap:wrap;overflow:hidden;margin:2px}#nextcloud:hover,#nextcloud:active{opacity:1}#header .header-end>div>.menu{background-color:var(--color-main-background);filter:drop-shadow(0 1px 5px var(--color-box-shadow));border-radius:var(--border-radius-large);box-sizing:border-box;z-index:2000;position:absolute;max-width:350px;min-height:66px;max-height:calc(100vh - 50px - 8px);inset-inline-end:8px;top:50px;margin:0;overflow-y:auto}#header .header-end>div>.menu:not(.popovermenu){display:none}#header .header-end>div>.menu:after{border:10px solid rgba(0,0,0,0);border-bottom-color:var(--color-main-background);bottom:100%;content:" ";height:0;width:0;position:absolute;pointer-events:none;inset-inline-end:10px}#header .header-end>div>.menu>div,#header .header-end>div>.menu>ul{-webkit-overflow-scrolling:touch;min-height:66px;max-height:calc(100vh - 50px - 8px)}#header .logo{display:inline-flex;background-image:var(--image-logoheader, var(--image-logo, url("../img/logo/logo.svg")));background-repeat:no-repeat;background-size:contain;background-position:center;width:62px;position:absolute;inset-inline-start:12px;top:1px;bottom:1px;filter:var(--image-logoheader-custom, var(--background-image-invert-if-bright))}#header .header-appname-container{display:none;padding-inline-end:10px;flex-shrink:0}#header #header-start,#header .header-start,#header #header-end,#header .header-end{display:inline-flex;align-items:center}#header #header-start,#header .header-start{flex:1 0;white-space:nowrap;min-width:0}#header #header-end,#header .header-end{justify-content:flex-end;flex-shrink:1}#header .header-end>.header-menu__trigger img{filter:var(--background-image-invert-if-bright)}#header .header-end>div,#header .header-end>form{height:100%;position:relative}#header .header-end>div>.menutoggle,#header .header-end>form>.menutoggle{display:flex;justify-content:center;align-items:center;width:50px;height:44px;cursor:pointer;opacity:.85;padding:0;margin:2px 0}#header .header-end>div>.menutoggle:focus,#header .header-end>form>.menutoggle:focus{opacity:1}#header .header-end>div>.menutoggle:focus-visible,#header .header-end>form>.menutoggle:focus-visible{outline:none}.header-appname-container .header-appname{opacity:.75}.header-appname{color:var(--color-background-plain-text);font-size:16px;font-weight:bold;margin:0;padding:0;padding-inline-end:5px;overflow:hidden;text-overflow:ellipsis;flex:1 1 100%}.header-info{display:flex;flex-direction:column;overflow:hidden}.header-title{overflow:hidden;text-overflow:ellipsis}.header-shared-by{color:var(--color-background-plain-text);position:relative;font-weight:300;font-size:11px;line-height:11px;overflow:hidden;text-overflow:ellipsis}#skip-actions{position:absolute;overflow:hidden;z-index:9999;top:-999px;inset-inline-start:3px;padding:11px;display:flex;flex-wrap:wrap;gap:11px}#skip-actions:focus-within{top:50px}header #emptycontent h2,header .emptycontent h2{font-weight:normal;font-size:16px}header #emptycontent [class^=icon-],header #emptycontent [class*=icon-],header .emptycontent [class^=icon-],header .emptycontent [class*=icon-]{background-size:48px;height:48px;width:48px}@media(display-mode: standalone)or (display-mode: minimal-ui){#header{display:none !important}#content,#content-vue{margin-top:var(--body-container-margin)}:root{--body-height: calc(100% - env(safe-area-inset-bottom) - var(--body-container-margin) * 2) !important}}/*# sourceMappingURL=header.css.map */ diff --git a/core/css/header.css.map b/core/css/header.css.map index 5aa4a9249e0..fde3d6f1cea 100644 --- a/core/css/header.css.map +++ b/core/css/header.css.map @@ -1 +1 @@ -{"version":3,"sourceRoot":"","sources":["header.scss","variables.scss"],"names":[],"mappings":"AAAA;AAAA;AAAA;AAAA;AAAA,GCEA;AAAA;AAAA;AAAA,GDMA,mBAEC,yBACA,sBACA,qBACA,iBAEA,2QAGC,aAEA,qTACC,YACA,kBACA,oBACA,2BACA,WACA,WACA,kBACA,oDACA,uBACA,UAIF,2CAEC,uDAEA,0OACC,WAGD,2HACC,uBAOH,+DAGC,oBACA,kBACA,MACA,WACA,aACA,OCiCe,KDhCf,sBACA,8BAID,WACC,cACA,0BACA,kBACA,wBACA,sBACA,UACA,mBACA,aACA,eACA,gBACA,WAEA,mCACC,UAaD,8BACC,8CACA,sDACA,yCACA,sBACA,aACA,kBACA,gBAfD,gBACA,oCAgBC,qBACA,ICVc,KDWd,SACA,gBAEA,gDACC,aAID,oCACC,gCACA,iDACA,YACA,YACA,SACA,QACA,kBACA,oBACA,sBAGD,mEAEC,iCAzCF,gBACA,oCA4CA,cACC,oBACA,yFACA,4BACA,wBACA,2BACA,WACA,kBACA,wBACA,QACA,WAEA,gFAGD,kCACC,aACA,wBACA,cAGD,oFAEC,oBACA,mBAGD,4CACC,SACA,mBACA,YAGD,wCACC,yBACA,cAKA,8CACC,gDAED,iDAEC,YACA,kBACA,yEACC,aACA,uBACA,mBACA,MCxFY,KDyFZ,YACA,eACA,YACA,UACA,aAEA,qFACC,UAGD,qGACC,aASL,0CACC,YAKD,gBACC,yCACA,eACA,iBACA,SACA,UACA,uBACA,gBACA,uBAEA,cAGD,aACC,aACA,sBACA,gBAGD,cACC,gBACA,uBAGD,kBACC,yCACA,kBACA,gBACA,eACA,iBACA,gBACA,uBAID,cACC,kBACA,gBACA,aACA,WACA,uBACA,aACA,aACA,eACA,SAEA,2BACC,IClKc,KDyKf,gDACC,mBACA,eAED,gJAEC,qBACA,YACA","file":"header.css"}
\ No newline at end of file +{"version":3,"sourceRoot":"","sources":["header.scss","variables.scss"],"names":[],"mappings":"AAAA;AAAA;AAAA;AAAA;AAAA,GCEA;AAAA;AAAA;AAAA,GDMA,mBAEC,yBACA,sBACA,qBACA,iBAEA,2QAGC,aAEA,qTACC,YACA,kBACA,oBACA,2BACA,WACA,WACA,kBACA,oDACA,uBACA,UAIF,2CAEC,uDAEA,0OACC,WAGD,2HACC,uBAOH,+DAGC,oBACA,kBACA,MACA,WACA,aACA,OCiCe,KDhCf,sBACA,8BAID,WACC,cACA,0BACA,kBACA,wBACA,sBACA,UACA,mBACA,aACA,eACA,gBACA,WAEA,mCACC,UAWD,8BACC,8CACA,sDACA,yCACA,sBACA,aACA,kBACA,gBAbD,gBACA,oCAcC,qBACA,ICRc,KDSd,SACA,gBAEA,gDACC,aAID,oCACC,gCACA,iDACA,YACA,YACA,SACA,QACA,kBACA,oBACA,sBAGD,mEAEC,iCAvCF,gBACA,oCA0CA,cACC,oBACA,yFACA,4BACA,wBACA,2BACA,WACA,kBACA,wBACA,QACA,WAEA,gFAGD,kCACC,aACA,wBACA,cAGD,oFAEC,oBACA,mBAGD,4CACC,SACA,mBACA,YAGD,wCACC,yBACA,cAKA,8CACC,gDAED,iDAEC,YACA,kBACA,yEACC,aACA,uBACA,mBACA,MCtFY,KDuFZ,YACA,eACA,YACA,UACA,aAEA,qFACC,UAGD,qGACC,aASL,0CACC,YAKD,gBACC,yCACA,eACA,iBACA,SACA,UACA,uBACA,gBACA,uBAEA,cAGD,aACC,aACA,sBACA,gBAGD,cACC,gBACA,uBAGD,kBACC,yCACA,kBACA,gBACA,eACA,iBACA,gBACA,uBAID,cACC,kBACA,gBACA,aACA,WACA,uBACA,aACA,aACA,eACA,SAEA,2BACC,IChKc,KDuKf,gDACC,mBACA,eAED,gJAEC,qBACA,YACA,WAIF,8DACC,QACC,wBAGD,sBACC,wCAGD,MAEC","file":"header.css"}
\ No newline at end of file diff --git a/core/css/header.scss b/core/css/header.scss index 722a743df6a..d6bb8a363e1 100644 --- a/core/css/header.scss +++ b/core/css/header.scss @@ -85,10 +85,8 @@ max-height: calc(100vh - #{variables.$header-height} - 8px); } +/* Header menu */ #header { - /* Header menu */ - $header-menu-entry-height: 44px; - .header-end > div > .menu { background-color: var(--color-main-background); filter: drop-shadow(0 1px 5px var(--color-box-shadow)); @@ -269,3 +267,18 @@ header .emptycontent { width: 48px; } } + +@media (display-mode: standalone) or (display-mode: minimal-ui) { + #header { + display: none !important; + } + + #content, #content-vue { + margin-top: var(--body-container-margin); + } + + :root { + // Override the body height to make up for the additional height due to the missing header. + --body-height: calc(100% - env(safe-area-inset-bottom) - var(--body-container-margin) * 2) !important; + } +} diff --git a/core/css/server.css b/core/css/server.css index c4cf5ceaf97..ef3c9d8f85f 100644 --- a/core/css/server.css +++ b/core/css/server.css @@ -22,7 +22,7 @@ * SPDX-FileCopyrightText: 2016-2024 Nextcloud GmbH and Nextcloud contributors * SPDX-FileCopyrightText: 2016 ownCloud, Inc. * SPDX-License-Identifier: AGPL-3.0-or-later - */#header,#expanddiv{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}#header #nextcloud:focus-visible,#header .app-menu-entry a:focus-visible,#header .header-menu button:first-of-type:focus-visible,#expanddiv #nextcloud:focus-visible,#expanddiv .app-menu-entry a:focus-visible,#expanddiv .header-menu button:first-of-type:focus-visible{outline:none}#header #nextcloud:focus-visible::after,#header .app-menu-entry a:focus-visible::after,#header .header-menu button:first-of-type:focus-visible::after,#expanddiv #nextcloud:focus-visible::after,#expanddiv .app-menu-entry a:focus-visible::after,#expanddiv .header-menu button:first-of-type:focus-visible::after{content:" ";position:absolute;inset-block-end:2px;transform:translateX(-50%);width:12px;height:2px;border-radius:3px;background-color:var(--color-background-plain-text);inset-inline-start:50%;opacity:1}#header .header-end,#expanddiv .header-end{margin-inline-end:calc(3*var(--default-grid-baseline))}#header .header-end a:not(.button):focus-visible::after,#header .header-end div[role=button]:focus-visible::after,#expanddiv .header-end a:not(.button):focus-visible::after,#expanddiv .header-end div[role=button]:focus-visible::after{bottom:4px}#header .header-end #expand.menutoggle:focus-visible::after,#expanddiv .header-end #expand.menutoggle:focus-visible::after{inset-inline-start:40%}#body-user #header,#body-settings #header,#body-public #header{display:inline-flex;position:absolute;top:0;width:100%;z-index:2000;height:50px;box-sizing:border-box;justify-content:space-between}#nextcloud{padding:5px 0;padding-inline-start:86px;position:relative;height:calc(100% - 4px);box-sizing:border-box;opacity:1;align-items:center;display:flex;flex-wrap:wrap;overflow:hidden;margin:2px}#nextcloud:hover,#nextcloud:active{opacity:1}#header .header-end>div>.menu{background-color:var(--color-main-background);filter:drop-shadow(0 1px 5px var(--color-box-shadow));border-radius:var(--border-radius-large);box-sizing:border-box;z-index:2000;position:absolute;max-width:350px;min-height:66px;max-height:calc(100vh - 50px - 8px);inset-inline-end:8px;top:50px;margin:0;overflow-y:auto}#header .header-end>div>.menu:not(.popovermenu){display:none}#header .header-end>div>.menu:after{border:10px solid rgba(0,0,0,0);border-bottom-color:var(--color-main-background);bottom:100%;content:" ";height:0;width:0;position:absolute;pointer-events:none;inset-inline-end:10px}#header .header-end>div>.menu>div,#header .header-end>div>.menu>ul{-webkit-overflow-scrolling:touch;min-height:66px;max-height:calc(100vh - 50px - 8px)}#header .logo{display:inline-flex;background-image:var(--image-logoheader, var(--image-logo, url("../img/logo/logo.svg")));background-repeat:no-repeat;background-size:contain;background-position:center;width:62px;position:absolute;inset-inline-start:12px;top:1px;bottom:1px;filter:var(--image-logoheader-custom, var(--background-image-invert-if-bright))}#header .header-appname-container{display:none;padding-inline-end:10px;flex-shrink:0}#header #header-start,#header .header-start,#header #header-end,#header .header-end{display:inline-flex;align-items:center}#header #header-start,#header .header-start{flex:1 0;white-space:nowrap;min-width:0}#header #header-end,#header .header-end{justify-content:flex-end;flex-shrink:1}#header .header-end>.header-menu__trigger img{filter:var(--background-image-invert-if-bright)}#header .header-end>div,#header .header-end>form{height:100%;position:relative}#header .header-end>div>.menutoggle,#header .header-end>form>.menutoggle{display:flex;justify-content:center;align-items:center;width:50px;height:44px;cursor:pointer;opacity:.85;padding:0;margin:2px 0}#header .header-end>div>.menutoggle:focus,#header .header-end>form>.menutoggle:focus{opacity:1}#header .header-end>div>.menutoggle:focus-visible,#header .header-end>form>.menutoggle:focus-visible{outline:none}.header-appname-container .header-appname{opacity:.75}.header-appname{color:var(--color-background-plain-text);font-size:16px;font-weight:bold;margin:0;padding:0;padding-inline-end:5px;overflow:hidden;text-overflow:ellipsis;flex:1 1 100%}.header-info{display:flex;flex-direction:column;overflow:hidden}.header-title{overflow:hidden;text-overflow:ellipsis}.header-shared-by{color:var(--color-background-plain-text);position:relative;font-weight:300;font-size:11px;line-height:11px;overflow:hidden;text-overflow:ellipsis}#skip-actions{position:absolute;overflow:hidden;z-index:9999;top:-999px;inset-inline-start:3px;padding:11px;display:flex;flex-wrap:wrap;gap:11px}#skip-actions:focus-within{top:50px}header #emptycontent h2,header .emptycontent h2{font-weight:normal;font-size:16px}header #emptycontent [class^=icon-],header #emptycontent [class*=icon-],header .emptycontent [class^=icon-],header .emptycontent [class*=icon-]{background-size:48px;height:48px;width:48px}/*! + */#header,#expanddiv{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}#header #nextcloud:focus-visible,#header .app-menu-entry a:focus-visible,#header .header-menu button:first-of-type:focus-visible,#expanddiv #nextcloud:focus-visible,#expanddiv .app-menu-entry a:focus-visible,#expanddiv .header-menu button:first-of-type:focus-visible{outline:none}#header #nextcloud:focus-visible::after,#header .app-menu-entry a:focus-visible::after,#header .header-menu button:first-of-type:focus-visible::after,#expanddiv #nextcloud:focus-visible::after,#expanddiv .app-menu-entry a:focus-visible::after,#expanddiv .header-menu button:first-of-type:focus-visible::after{content:" ";position:absolute;inset-block-end:2px;transform:translateX(-50%);width:12px;height:2px;border-radius:3px;background-color:var(--color-background-plain-text);inset-inline-start:50%;opacity:1}#header .header-end,#expanddiv .header-end{margin-inline-end:calc(3*var(--default-grid-baseline))}#header .header-end a:not(.button):focus-visible::after,#header .header-end div[role=button]:focus-visible::after,#expanddiv .header-end a:not(.button):focus-visible::after,#expanddiv .header-end div[role=button]:focus-visible::after{bottom:4px}#header .header-end #expand.menutoggle:focus-visible::after,#expanddiv .header-end #expand.menutoggle:focus-visible::after{inset-inline-start:40%}#body-user #header,#body-settings #header,#body-public #header{display:inline-flex;position:absolute;top:0;width:100%;z-index:2000;height:50px;box-sizing:border-box;justify-content:space-between}#nextcloud{padding:5px 0;padding-inline-start:86px;position:relative;height:calc(100% - 4px);box-sizing:border-box;opacity:1;align-items:center;display:flex;flex-wrap:wrap;overflow:hidden;margin:2px}#nextcloud:hover,#nextcloud:active{opacity:1}#header .header-end>div>.menu{background-color:var(--color-main-background);filter:drop-shadow(0 1px 5px var(--color-box-shadow));border-radius:var(--border-radius-large);box-sizing:border-box;z-index:2000;position:absolute;max-width:350px;min-height:66px;max-height:calc(100vh - 50px - 8px);inset-inline-end:8px;top:50px;margin:0;overflow-y:auto}#header .header-end>div>.menu:not(.popovermenu){display:none}#header .header-end>div>.menu:after{border:10px solid rgba(0,0,0,0);border-bottom-color:var(--color-main-background);bottom:100%;content:" ";height:0;width:0;position:absolute;pointer-events:none;inset-inline-end:10px}#header .header-end>div>.menu>div,#header .header-end>div>.menu>ul{-webkit-overflow-scrolling:touch;min-height:66px;max-height:calc(100vh - 50px - 8px)}#header .logo{display:inline-flex;background-image:var(--image-logoheader, var(--image-logo, url("../img/logo/logo.svg")));background-repeat:no-repeat;background-size:contain;background-position:center;width:62px;position:absolute;inset-inline-start:12px;top:1px;bottom:1px;filter:var(--image-logoheader-custom, var(--background-image-invert-if-bright))}#header .header-appname-container{display:none;padding-inline-end:10px;flex-shrink:0}#header #header-start,#header .header-start,#header #header-end,#header .header-end{display:inline-flex;align-items:center}#header #header-start,#header .header-start{flex:1 0;white-space:nowrap;min-width:0}#header #header-end,#header .header-end{justify-content:flex-end;flex-shrink:1}#header .header-end>.header-menu__trigger img{filter:var(--background-image-invert-if-bright)}#header .header-end>div,#header .header-end>form{height:100%;position:relative}#header .header-end>div>.menutoggle,#header .header-end>form>.menutoggle{display:flex;justify-content:center;align-items:center;width:50px;height:44px;cursor:pointer;opacity:.85;padding:0;margin:2px 0}#header .header-end>div>.menutoggle:focus,#header .header-end>form>.menutoggle:focus{opacity:1}#header .header-end>div>.menutoggle:focus-visible,#header .header-end>form>.menutoggle:focus-visible{outline:none}.header-appname-container .header-appname{opacity:.75}.header-appname{color:var(--color-background-plain-text);font-size:16px;font-weight:bold;margin:0;padding:0;padding-inline-end:5px;overflow:hidden;text-overflow:ellipsis;flex:1 1 100%}.header-info{display:flex;flex-direction:column;overflow:hidden}.header-title{overflow:hidden;text-overflow:ellipsis}.header-shared-by{color:var(--color-background-plain-text);position:relative;font-weight:300;font-size:11px;line-height:11px;overflow:hidden;text-overflow:ellipsis}#skip-actions{position:absolute;overflow:hidden;z-index:9999;top:-999px;inset-inline-start:3px;padding:11px;display:flex;flex-wrap:wrap;gap:11px}#skip-actions:focus-within{top:50px}header #emptycontent h2,header .emptycontent h2{font-weight:normal;font-size:16px}header #emptycontent [class^=icon-],header #emptycontent [class*=icon-],header .emptycontent [class^=icon-],header .emptycontent [class*=icon-]{background-size:48px;height:48px;width:48px}@media(display-mode: standalone)or (display-mode: minimal-ui){#header{display:none !important}#content,#content-vue{margin-top:var(--body-container-margin)}:root{--body-height: calc(100% - env(safe-area-inset-bottom) - var(--body-container-margin) * 2) !important}}/*! * SPDX-FileCopyrightText: 2016-2024 Nextcloud GmbH and Nextcloud contributors * SPDX-FileCopyrightText: 2016 ownCloud, Inc. * SPDX-License-Identifier: AGPL-3.0-or-later diff --git a/core/css/server.css.map b/core/css/server.css.map index d7220b36198..015ec72a6b5 100644 --- a/core/css/server.css.map +++ b/core/css/server.css.map @@ -1 +1 @@ -{"version":3,"sourceRoot":"","sources":["server.scss","icons.scss","variables.scss","styles.scss","inputs.scss","functions.scss","header.scss","apps.scss","global.scss","fixes.scss","mobile.scss","tooltip.scss","../../node_modules/@nextcloud/dialogs/dist/style.css","public.scss"],"names":[],"mappings":"AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,GCwHQ,8BCtHR;AAAA;AAAA;AAAA,GCMA,MACC,mCACA,uCAGD,yQACC,SACA,UACA,SACA,oBACA,eACA,oBACA,wBACA,eACA,uCAGD,6CACC,aAID,0CACC,wDACA,aAGD,UACC,YAEA,8BAGD,6DACC,cAGD,MACC,yBACA,iBACA,mBAGD,cACC,iBACA,mBAGD,YACC,sBAGD,EACC,SACA,6BACA,qBACA,eACA,IACC,eAIF,WACC,aACA,0BAGD,MACC,eACA,QACC,eAIF,0BACC,eAGD,GACC,gBAGD,KACC,mBAEA,mCACA,uCACA,6BACA,6BAGD,mBACC,kBAGD,qBACC,kBACA,sBACA,qBACA,2BACA,2DACA,uBAGD,iBACC,qBACA,aACA,gCAGD,eACC,YACA,aAGD,cACC,eACA,MACA,SACA,qBACA,YACA,WACA,aACA,kBACA,gDACA,wCACA,iBACA,eACA,kBACC,cACA,kBACA,UACA,QACA,gBAED,gBACC,wCACA,sDACA,4CACC,6CAOH,oBACC,WACA,YAGD,2BACC,+BAGD,gCACC,+BAGD,0BACC,kCACA,yCACA,+BACA,4BAMD,YACC,8CACA,wCAMD,kBACC,sBAKD,4BAEC,oCACA,kBACA,gBACA,WACA,sDACC,gBAED,sEACC,gBAED,kCACC,mBAED,oHAEC,qBACA,YACA,WACA,mBACA,gcAEC,WAOH,sBACC,WASD,oCACC,kBACA,yBACA,sBACA,qBACA,iBAID,kBAEC,kBACA,qBACA,SAEA,YAGD,8CAGC,WAGD,8BACC,sBACA,oBACA,wBACA,wBAGD,2EACC,WAGD,oGACC,kDACA,UACA,qBAGD,mDACC,6BACA,YACA,WACA,yCACA,4BACA,2BACA,WAOA,qEACC,UAED,qEACC,UAIF,wEACC,aAGD,2CACC,wBAGD,yBACC,kBACA,qBACA,sBAGD,qBACC,cACA,mBACA,iBACA,uBACA,aAKD,4CACC,eACA,YACA,mCACA,6BACA,qDAIA,2BACC,4BAKD,wBACC,sBACA,4BACA,+BACC,2CACA,qBACA,kBAGF,0BACC,qBACA,iBAIF,YACC,YACA,sCACA,oBACC,sBAIF,eACC,2CAUD,mBACC,kBACA,cACA,2BACC,kBACA,cAIF,UACC,gBAGD,8CACC,UAIA,WACC,WACA,YAGD,8CAEC,UAGD,oGAGC,WAIF,mBACC,WACA,kBACA,QAEA,kDACC,UAKD,kDACC,UAIF,eACC,WAEA,0CACC,UAKD,uGACC,8CAIF,KACC,mFAGD,OACC,gBACA,YACA,eACA,qBACA,UACC,qBAIF,2FACC,gBACA,uBAGD,2BACC,yDAGD,2BACC,6DAID,yBACC,gBACA,gBACA,WACA,mCACA,YACA,wBAEA,sKAGC,+BACA,mBAED,2CACC,YACA,eACA,YACA,8CACA,6BAEA,gEACC,cACA,mBAED,oDACC,WAEA,4JAEC,kCACA,4BAGF,oEACC,UAID,oDACC,mBACA,gCACA,WACA,WACA,YAED,0DACC,yBAGA,+FACC,gDAGD,wOAGC,8CACA,wCACA,iBAGD,yNAEC,gCACA,WAOH,4FACC,iDAED,4FACC,gDAKD,4FACC,gDAED,4FACC,iDAIF,wCACC,gCACA,wCAKD,yBACC,2BACA,sBACA,mCACA,wBAEA,4CACC,uBAGD,sKAGC,+BACA,mBAED,2CACC,YACA,eACA,YACA,8CACA,6BAEA,gEACC,cACA,mBAIF,qFACC,yBAGA,iDACC,mBACA,gCACA,WACA,yDACC,UACA,WACA,iBAGF,uDACC,yBAGA,0TAIC,8CACA,wCACA,iBAGD,4FACC,gCAGD,qEACC,gDASH,oGACC,aACA,iBACA,8BACA,0GACC,cACA,SACA,YACA,YACA,WACA,aACA,mBACA,uBACA,8GACC,kBACA,kBACA,mBACA,6BACA,cACA,iBACA,WACA,YACA,YACA,eAOJ,WACC,0BAGD,aACC,WACA,sBACA,oBAKD,YACC,kCAMA,qBACC,WACA,aAED,wBACC,cACA,gDACA,WACA,aAED,2BACC,WACA,YACA,6BACC,WAGF,wBACC,wCACA,kBACA,mBACA,gBACA,uBACA,0CACA,kCACA,6DACC,0CAGF,sBACC,UACA,WAKF,YACC,oBACA,YAGD,SACC,oBACA,kDACA,4BACA,iCACA,YACA,0BACA,cACA,QACA,uBACA,mBACC,QACA,kBACA,qBACC,WAIA,wFACC,cAIF,gCACC,SACA,sBACA,mCACC,iBACA,gBACA,kBACA,uBACA,+DACC,+EAGF,+CACC,aAIH,gBACC,aACA,uBACC,QAGF,yBAEC,kBACA,aACA,WACA,uBACA,mBACA,gBACA,cAEA,gBAEA,8FAGC,oBAGF,yBACC,UACA,WAGD,oBACC,iBACA,uBAEA,2BACC,uBAGF,+DACC,UAEA,0JAEC,WAOH,QACC,UACA,yCACA,sCACA,qCACA,oCACA,iCACA,oBACC,UAOD,+CACC,SACA,kBAED,mDACC,gBAKF,cACC,mBAMD,mBACC,aACA,QACA,SACA,UCz0BD;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,GAUA,kFACC,6BAGD,uGACC,wCAGD,sDACC,kCAMD,iHAUC,YACA,yCACA,sBAYA,oFACC,eACA,oCACA,sCACA,QA/BiB,GAmCnB,wBACC,aAID,yJAUC,iBACA,8CACA,6BACA,0CACA,mCACA,aACA,mCACA,YACA,uYACC,WACA,sBAOC,kxDAIC,oCACA,aAED,gmBACC,aACA,8CACA,6BAGF,maACC,6DACA,oDAGF,wNACC,8CACA,6BACA,eACA,WAED,wNACC,gBAED,oPACC,mDAGD,iNACC,8CACA,0CACA,wCACA,eAGA,kvBAEC,+CAIA,mjCAGC,oDACA,gDAED,gwBAEC,4CAED,2WACC,6CAGF,gRAEC,8CACA,6CACA,eAKH,2BACC,WACA,sBACA,gBACA,eACA,gDACA,aACA,mCAEA,8CACA,oCACA,eACA,WAKA,4KACC,6BACA,0BACA,qBAEA,qCAED,0EAIC,YACA,WAID,kBACC,WACA,cACA,gBACA,WACA,eAED,mBACC,SACA,QAED,iBACC,cAKF,6GASC,2FACA,mCACA,WACA,yCACA,eACA,sBACA,8CACA,oDACA,YAEA,kSAEC,0DAGD,mKACC,eAIF,qMAcC,WACA,sBACA,eACA,mCACA,8CACA,6BACA,iDACA,YACA,aACA,yCACA,uBACA,eACA,+0BACC,8CACA,kDAED,yRACC,YAIF,mCACC,8CACA,6BAGD,mCACC,aACA,YAID,OACC,iDACA,gBACA,8CACA,mCAGD,qBACC,qCAGD,qBACC,oCASA,2DACC,eAIA,sFACC,eAMH,sGAQC,iBACA,2CAGA,gMACC,SAGD,oIACC,+CACA,2CACA,sBACA,kKACC,qDACA,+CAaD,4MAEC,qBACA,2BACA,WASF,kGACC,qCACA,mDACA,mFACA,iBACA,4BAEA,yDACA,UACA,qCACA,oCACA,gBACA,eACA,oBACA,6HACC,eCzUF,+CDiVE,yOACC,gCAID,4qBAGC,qDACA,8CACA,6vBACC,uDAQH,+VACC,qDACA,mDAEA,UAOH,uBAEC,eAGD,2BAEC,mBASA,4GAEC,kBACA,4BACA,SACA,UACA,WACA,gBACA,oIACC,iBAED,4WAEC,eAED,gKACC,WACA,qBACA,OAvBmB,KAwBnB,MAxBmB,KAyBnB,sBACA,kBACA,aACA,sBACA,+CAED,oeAEC,0CAED,4LACC,oBACA,qCACA,kBACA,mBAED,4bAIC,8DACA,8CACA,0CAED,oMACC,+CACA,0DAED,oOACC,+CAID,gJACC,qBACA,yBAED,oMACC,cA/DmB,KAmEpB,mFACC,kBACA,OArEmB,KAsEnB,MAtEmB,KAuEnB,2BACA,2BAED,mGACC,yDAED,+GACC,0DAOD,gZAEC,2BAED,wUACC,aAzF0B,KA2F3B,4NACC,8DACA,+BACA,2BAED,gOACC,0CACA,2CAED,gQACC,8DACA,2CACA,+BAID,8OAEC,0CACA,6BACA,+DAED,6HACC,gEAED,mHACC,WAMH,iBACC,gBACA,8CACA,qCACC,sCAED,yBACC,qBACA,sBACA,sBACA,6BACC,eAGF,uCACC,gBACA,wDACA,yCAED,kCACC,iBACA,SACA,UACA,wDACC,mBACA,gBACA,uBACA,6DACC,eACA,gEACC,eACA,iBAIH,6JAGC,kBACA,kBACA,aACA,+BACA,eACA,oCAGA,mEACC,8CAGF,uDACE,8CACA,6BAKJ,qDACC,4CAGD,qDACC,2CAKA,oGAEC,eAKD,mHAEC,gBACA,mBACA,uBACA,wCACA,+CACA,uBACA,yCACA,0CACA,SACA,YACA,gBACA,6IACC,0CAED,iKACC,iBACA,yBACA,stBAIC,sBACA,8CACA,oCACA,0CAED,2NACC,aAGF,2KACC,iBACA,gBACA,gBACA,6BACA,yMACC,2BAMJ,sBACC,WACA,sBACA,+DACC,aACA,eACA,kEACC,WAGF,uCACC,gBACA,mBACA,uBACA,wCACA,+CACA,uBACA,yCACA,0CACA,SACA,iBACA,gBACA,oDACC,0CAED,8DACC,iBACA,yBACA,sBACA,8CACA,0CACA,2FACC,aAED,8JAEC,qCACA,iCAGF,sDACC,gBACA,gBACA,YACA,wDACC,mEACA,WAGF,2LAGC,WAED,mEACC,iBAMH,UACC,WACA,sBACA,qBACA,2BACC,wBACA,eACA,yCACC,iBACA,yBACA,sBACA,8CACA,oCACA,0CACA,oBACA,mBACA,gDACC,wBAIH,yBACC,UACA,4BACC,YACA,kBACA,kBACA,+BACA,eACA,oCACA,8BACC,mBACA,gBACA,uBACA,YACA,sBACA,uBACA,SACA,eACA,eACA,2BACA,yBACA,sBACA,qBACA,iBACA,oBACA,mBACA,0CACA,yBACA,sCACC,YACA,4CACA,4BACA,2BACA,eACA,gBACA,cACA,WACA,sBACA,kBAGF,sCACC,6BAED,qCACC,8CACA,6BACA,6CACC,mBAQL,mBACC,cACA,WACA,UACA,cACA,8CACA,mCACA,gBACA,WACA,gBAEC,2CACC,8BAED,gDACC,8BAGF,yCACC,yBAED,sCACC,mCACA,wCACA,iCAED,2CACC,mCACA,wCACA,iCAKF,iBACC,QAEC,0BAED,QAEC,yBAED,YAGC,0BAED,QAEC,0BAIF,OACC,qBACA,uBACA,mCAKD,cACC,kBACA,4BACA,aACA,UACA,WACA,gBAWD,cAJC,oCACA,mCAOD,wBARC,oCACA,mCAWD,4BAZC,oCACA,mCEl3BD;AAAA;AAAA;AAAA;AAAA,GAQA,mBAEC,yBACA,sBACA,qBACA,iBAEA,2QAGC,aAEA,qTACC,YACA,kBACA,oBACA,2BACA,WACA,WACA,kBACA,oDACA,uBACA,UAIF,2CAEC,uDAEA,0OACC,WAGD,2HACC,uBAOH,+DAGC,oBACA,kBACA,MACA,WACA,aACA,OJiCe,KIhCf,sBACA,8BAID,WACC,cACA,0BACA,kBACA,wBACA,sBACA,UACA,mBACA,aACA,eACA,gBACA,WAEA,mCACC,UAaD,8BACC,8CACA,sDACA,yCACA,sBACA,aACA,kBACA,gBAfD,gBACA,oCAgBC,qBACA,IJVc,KIWd,SACA,gBAEA,gDACC,aAID,oCACC,gCACA,iDACA,YACA,YACA,SACA,QACA,kBACA,oBACA,sBAGD,mEAEC,iCAzCF,gBACA,oCA4CA,cACC,oBACA,yFACA,4BACA,wBACA,2BACA,WACA,kBACA,wBACA,QACA,WAEA,gFAGD,kCACC,aACA,wBACA,cAGD,oFAEC,oBACA,mBAGD,4CACC,SACA,mBACA,YAGD,wCACC,yBACA,cAKA,8CACC,gDAED,iDAEC,YACA,kBACA,yEACC,aACA,uBACA,mBACA,MJxFY,KIyFZ,YACA,eACA,YACA,UACA,aAEA,qFACC,UAGD,qGACC,aASL,0CACC,YAKD,gBACC,yCACA,eACA,iBACA,SACA,UACA,uBACA,gBACA,uBAEA,cAGD,aACC,aACA,sBACA,gBAGD,cACC,gBACA,uBAGD,kBACC,yCACA,kBACA,gBACA,eACA,iBACA,gBACA,uBAID,cACC,kBACA,gBACA,aACA,WACA,uBACA,aACA,aACA,eACA,SAEA,2BACC,IJlKc,KIyKf,gDACC,mBACA,eAED,gJAEC,qBACA,YACA,WF5QF;AAAA;AAAA;AAAA;AAAA,GHQA,iCACC,4BACA,2BACA,eACA,gBAGD,iBACC,kDAID,sGAMC,kBACA,0IACC,UACA,WACA,YACA,WACA,uBACA,kBACA,QACA,uBACA,mBACA,6CACA,qCACA,gCACA,4BACA,wBACA,4CACA,2CAEA,wCAEA,gYAGC,uCAKH,wDAEC,2CACA,4CAGD,yDAEC,YACA,WACA,qBAKA,yJACC,2CAED,iMACC,gDAED,yMACC,iDAED,iPACC,sDAIF,kBACC,KACC,uBAED,GACC,0BAIF,SACC,gCAGD,yKAQC,wDGzGD;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,GGSA,sCAEC,MACC,wCACA,yCAKF,KACC,WACA,YACA,kBAEA,6EAGD,KAEC,6EAEA,yCACA,sBACA,2BACA,eACA,WACA,iDAKD,eAKC,gBACA,gBACA,gBACA,mBACA,6BAGD,GACC,gBAGD,GACC,gBAGD,GACC,gBAGD,GACC,iBAGD,GACC,gBAID,GACC,kBACA,oCAGD,GACC,eAGD,MAEC,qBACA,aACA,uBAGD,GACC,YACA,mBACA,eAGD,IACC,iBACA,sBACA,kCACA,mCACA,qBACA,mBAMD,wBACC,sBAKD,0BAEC,gGACA,MLxBkB,MKyBlB,YACA,gBACA,kBACA,mDACA,8CACA,+EACA,gBACA,YACA,sBACA,qBACA,iBACA,aACA,sBACA,YACA,cAEA,kDACC,iBACA,0CACA,2EACA,mBACA,uBACA,2BACA,iBACA,oBACA,yBAQD,gGACC,cACA,6CACA,8GACC,qBACA,WACA,aACA,0BACA,iBACA,SAIF,8DACC,kBAED,8DACC,kBACA,YACA,WACA,kBACA,gBACA,sBACA,aACA,sBACA,6CACA,iBAEA,oFACC,oDAGD,oEACC,oBACA,eACA,QACA,cACA,SACA,kBACA,WACA,2CAGA,kFACC,QACA,4GACC,2BAIF,gIAEC,8DAED,0HAIC,0EAKA,wVAEC,+CAGF,oGACC,kDACA,yCAMA,gsBAEC,8CACA,wCAEA,g8BACC,qCAMH,sHACC,wBACA,SAMA,kNAEC,aAKF,0EACC,cACA,WACA,kBACA,gFACC,oBACA,eACA,mDACA,WACA,kBAIC,wXAEC,2CACA,+CAKD,gZAEC,2CACA,oDACA,ghBACC,qCAMH,kIACC,yDAGD,4IAEC,wBACA,0BAGD,sIAEC,wBAGA,6EAMJ,oJAEC,kBACA,sBAGC,4jBAGC,oCAIF,4JACC,0BACA,4BACA,cACA,8BACA,0CACA,yCACA,gBACA,oDACA,gBACA,sBACA,mBACA,uBACA,2CACA,6BACA,aACA,YAGA,4KACC,gBACA,kDACA,wOACC,gBACA,6DAGF,4NACC,kEACA,WACA,YAEA,wCAID,4QACC,qBAEA,4ZACC,gCAKH,wQACC,kBACA,cACA,YACA,WACA,YACA,YACA,kBACA,eACA,wCAEA,gRAEC,oCAKF,gQACC,kCAID,gSACC,UACA,YAED,4SACC,wBACA,YAIH,sEACC,aAMD,4YAEC,SACA,WACA,+BACA,4BACA,2BACA,w0BAEC,+BACA,UAUD,sGACC,UACA,kBACA,oCACA,qCACA,SACA,YAIA,qBAEA,kIACC,UACA,eACA,wDACA,gBAGF,gGACC,kBACA,qCACA,oCACA,SACA,UACA,gBFjZF,6CEmZE,qBACA,4BACA,2BACA,YACA,wBACA,gBACA,YACA,UACA,iCACA,6BACA,yBACA,YACA,kBACA,qCAMD,8GACC,mDAIA,wNACC,UAED,oMACC,sBAED,gTACC,oCAID,0GACC,4BACA,wBACA,oBAQH,gHACC,cACA,sHACC,wBACA,mBACA,yBAED,sHACC,+CACA,qCAED,8HACC,YACA,WACA,SACA,gBAIA,oSFpdF,uCEudE,obAEC,+BACA,UAGF,wLACC,gBACA,eACA,cACA,0CACA,eAEA,gNACC,UACA,kBACA,0NACC,gBACA,mBACA,8CACA,wCASJ,8GACC,mBACA,cACA,uBACA,qCACA,UACA,kBACA,8CACA,WACA,8OAEC,oBACA,WAED,0HACC,YACA,oBACA,YACA,4QAGC,UAGF,gJACC,WACA,YACA,wBACA,0BAED,wRAEC,WACA,YACA,cACA,4VACC,2BAED,gWACC,yBAED,oUACC,2CACA,6CACA,0BACA,4BAQH,oHACC,oBACA,mDACA,4BACA,wMACC,kBACA,mBACA,uBACA,gBACA,aACA,0CAED,8LACC,SACA,qCACA,oCACA,0CACA,oZAEC,UAQH,kOAEC,uBACA,2FAGA,kBACA,qBACA,8CACA,sBAMD,sFACC,gDACA,wCACA,oBAGD,sEACC,yBAGD,0OAEC,qBASA,0IACC,qCAGD,gHACC,qCAEA,wKACC,YASF,0IACC,sCAGD,gHACC,sCAEA,wKACC,WAOJ,SACC,sBACA,gBACA,oCACA,gCACA,UACA,aACA,kDACA,0BACA,2CACA,cAEA,kCACC,eAIF,2CACC,SACC,qDACA,mDAED,gBACC,qDAED,aACC,oDAcF,aACC,aACA,8CACA,iBACA,cACA,iBACA,YAGA,kCACC,gBAID,kCACC,aACA,kBACA,oBAGA,gBAGA,uDAEC,eACA,mFACC,aAKH,uCACC,oCASF,aACC,WACA,UL/qBmB,MKgrBnB,UL/qBmB,MKgrBnB,cACA,wBACA,gBACA,ILtrBe,KKurBf,mBACA,gBACA,kBACA,aACA,aACA,0BACA,wCACA,kDACA,cAEA,uBACC,aAOF,cAEC,gBAGC,oFACC,cAKH,sBACC,aACA,6CACA,cACA,0DAEA,iBACA,gBACA,sBAGA,uCACC,UAGD,iCACC,sBACA,sBACA,gCAOE,4NACC,qBACA,WACA,cAOL,qBACC,sBACA,+BACA,gBACA,oDACA,6CACA,cAEA,sCACC,aACA,mBACA,qCACA,WACA,UACA,SACA,+BACA,gBACA,SACA,oDACA,iBACA,mBACA,eACA,WAGA,6BAEA,6CACC,yCACA,8CACA,eAED,wFAEC,+CAGD,8CACC,2CACA,4BACA,WACA,oCACA,qCACA,MACA,qBACA,cAGD,oDACC,mEAOF,4DACC,qCAED,kEACC,qCAKD,4DACC,sCAED,kEACC,sCAIF,SACC,cACA,aACA,mBACA,gBACC,wBAIA,yDAEC,oBACA,sBAKH,aACC,kBACA,gBACA,yBACA,mBAGD,QACC,UACA,yCACA,sCACA,qCACA,oCACA,iCACA,oBACC,UAKF,YACC,aACA,mBAEA,uBACC,aACA,sBACA,YACA,kBACA,mBACA,gBACA,uBACA,eACA,gCACA,kBACA,YAEA,8BACC,aAID,mCACC,0BAED,kCACC,wBAGD,6BACC,qBACA,WACA,YACA,qBACA,sBACA,gBACA,sBACA,WACA,eAGD,yBACC,gCACA,kBACA,gBACA,uBAED,gCACC,iBAED,0FAGC,kBACA,6BACA,kDAMF,oBACC,oBAKF,6BACC,WAGD,6BACC,YASA,0JAGC,wCAIA,2LACC,YAKH,gDAGC,kBACA,8CACA,6BACA,yCACA,YACA,YACA,WACA,gBACA,mBACA,sDACA,aACA,mBAEA,kEACC,YAKA,qBAEA,2BACA,YACA,SACA,QACA,kBACA,oBACA,iDACA,iBAGD,oFACC,0BACA,qBACA,oBACA,sGACC,qBACA,0BAIF,8EACC,oBACA,oBACA,gGACC,sBAIF,+DACC,cAGD,+GACC,SAGD,yDAEC,wBACA,sBAED,yDACC,aACA,cAEA,8EACC,aAGD,oOAGC,eACA,YA/FkB,KAgGlB,SACA,yCACA,+BACA,aACA,uBACA,YACA,SACA,mBACA,gBACA,WACA,6BACA,mBAEA,whDAIC,YACA,aACA,+BACA,gBAnHe,KAqHhB,yzBAIC,yBAOC,gvGACC,oBAlIe,KAsIlB,+tBAEC,gCAED,ojBAEC,+CAED,4nBAEC,kDAED,mSACC,2CACA,oDAGD,mSACC,2BAED,iRACC,eACA,mBAED,sPACC,YACA,kBACA,cACA,mBAED,mSACC,SACA,wBAGD,gVACC,kCAID,wQACC,MA9Ke,KA+Kf,YAGD,uyBAEC,qBACA,WAED,yeACC,mBAED,8cACC,mBAED,2xBACC,YAED,iRACC,aACA,cAGA,mBACA,mbACC,wBAIF,04BAEC,sBAGD,0RACC,UAlNiB,KAmNjB,gBACA,aACA,cAEA,4bACC,wBAQA,2hDACC,eAMD,ygDACC,kBAKJ,8EACC,UACA,6FACC,UAcD,+EACC,MA/PiB,KAgQjB,OAhQiB,KAyQlB,6CACC,WACA,YAOJ,kBACC,wBACA,kBACA,MACA,gDACA,aACA,sBACA,uCACA,gBACA,gBACA,gBACA,kBACA,eACA,UL5sCgB,MK6sChB,UL5sCgB,MK+sChB,yCACC,kBACA,YACA,eACA,iBACA,aACA,eACA,mBACA,cAKC,8RAEC,QACA,WACA,YACA,YACA,aACA,WACA,eACA,4mBAEC,WAED,wtBAEC,WACA,ghDAEC,UAIF,kVACC,UAKH,8IAGC,8CAEA,2RACC,aAIF,6JAEC,kBACA,YACA,WACA,WAQC,2XAEC,aAEA,2eACC,WAIH,wFACC,SACA,uBAEA,aACA,gGACC,SAGD,oHACC,aAKH,qEACC,aACA,SACA,wBACA,qBACA,YACA,WACA,SACA,UAGD,qEACC,kBACA,qBACA,YACA,WACA,iBACA,kBACA,sBACA,uBACA,WACA,kBACA,gBACA,0BACA,iBACA,iBACA,eACA,QACA,iBAGD,kJAEC,cACA,yBACA,mBACA,gBACA,uBACA,QACA,aACA,eAGD,yEACC,WACA,QACA,SACA,sDAGD,wEACC,QACA,mBACA,gBACA,uBACA,gBACA,WACA,cACA,iBAGD,qEACC,QACA,kBACA,kFACC,SAGA,sBAIH,2EACC,aAIF,8CACC,6DACA,oDCt9CD;AAAA;AAAA;AAAA;AAAA;AAAA,GAcC,mDAEC,WAGD,kDAEC,YAGD,qDAEC,WAGD,oDAEC,YAKD,mDAEC,YAGD,kDAEC,WAGD,qDAEC,YAGD,oDAEC,WAIF,YACC,WAGD,QACC,aAGD,iBACC,kBACA,4BACA,aACA,UACA,WACA,gBAGD,MACC,gBAGD,QACC,kBAGD,aACC,qBCnFD;AAAA;AAAA;AAAA,GAOA,mBACC,SCRD;AAAA;AAAA;AAAA,GAMA,wCAGC,UACC,iCACA,qBAID,iBACC,wBAID,YACC,WACA,iCACA,sBAID,0BACC,6BACA,eACA,0BAGA,6BACC,wBAIF,0CACC,sBAGD,8BACC,uBACA,sBAID,kBACC,wCACA,cAEA,iBAEA,eACA,uCACC,aAED,8BACC,aACA,mDACC,gBAOF,gDACC,4BAED,qDACC,eACA,gCACA,IRiBa,KQhBb,qBACA,WACA,YACA,aACA,oCACA,eACA,WACA,wBAED,2CACC,4BAKF,uBACC,eACA,gCACA,qBACA,WACA,YACA,aACA,eACA,WAED,0DAEC,UAID,6CACC,0BAID,kDACC,kCAED,8CACC,wBAGD,wBACC,gCAID,gBACC,aAED,+BACC,6BAMF,0CACC,8BACC,6BACA,eACA,qCACC,wBAMA,0CACC,cAGF,+BACC,gCACA,iDACA,SACA,YACA,SACA,QACA,kBACA,oBACA,sBACA,aACA,aAID,wCACC,uBCpKH;AAAA;AAAA;AAAA;AAAA,GAMA,SACI,kBACA,cACA,6BACA,kBACA,mBACA,sBACA,gBACA,gBACA,iBACA,qBACA,iBACA,oBACA,mBACA,kBACA,oBACA,iBACA,uBACA,eACA,UACA,eAEA,gBACA,eACA,uDACA,8DAGI,mBACA,UACA,wBAEJ,uDAEI,uBACA,0BAEJ,8CAEI,eACA,eAEJ,4CAEI,wBACA,eACA,0EACI,QACA,qBACA,iBACA,8BACA,qDAGR,0CAEI,yBACA,cACA,wEACI,QACA,mBACA,iBACA,8BACA,uDAQJ,kPACI,SACA,yBACA,8CAGR,iCACI,sBACA,oBAEJ,kCACI,wBACA,oBAOA,0QACI,MACA,yBACA,iDAGR,4EAEI,uBACA,0BAEJ,oCACI,sBACA,iBAEJ,qCACI,wBACA,iBAIR,eACI,gBACA,gBACA,8CACA,6BACA,kBACA,mCAGJ,+BACI,kBACA,QACA,SACA,2BACA,mBCnIJ;AAAA;AAAA;AAAA,GAIA,kBACE,gBACA,gBACA,8CACA,6BACA,6CACA,eACA,gBACA,eACA,cACA,mCACA,aACA,mBACA,gBAEF,kFAEE,aACA,mBACA,WAEF,oEAEE,gBACA,gBACA,sBACA,eACA,YACA,aACA,mBACA,4BACA,2BACA,6BACA,aAEF,4FAEE,cACA,WACA,YACA,gBACA,iBACA,YAGF,4GAEE,sfACA,YACA,wCACA,qBACA,WACA,YAEF,wGAEE,WACA,wBACA,iBAEF,kPAIE,eACA,UAEF,+BACE,WAEF,mCACE,eAEF,8BACE,yCAEF,6BACE,2CAEF,gCACE,2CAEF,gCACE,2CAEF,6BACE,2CAEF,gCACE,2CAEF,8CACE,qBACA,WACA,YACA,iEACA,iBAOF,gEACE,kgBAEF,oCACC,8BACA,4BAED;AAAA;AAAA;AAAA,GAQA,iCACE,kBACA,WACA,YACA,eACA,gBACA,4BACA,wBACA,aACA,uBAGF,2CACE,mCAGF,0CACE,wCACA,kBACA,uBACD;AAAA;AAAA;AAAA,EAID,qCACE,+BAEF,wCACE,eACA,gBACA,uBACA,mBAEF,qDACE,cAEF,2DACE,sBAEF,iDACE,eACA,sBAEF,iDACE,qBAEF,6BACA,GACI,2BAEJ,IACI,6BAEJ,KACI,4BAGJ,4CACE,6BAEF,mCACE,qBACA,YACA,oIACA,2BACA,mCACA,8CAEF,2CACE,oBACA,mBAEF,iDACE,WAEF,0DACE,wBACA,YAEF,6CACE,WAEF,iDACE,WACD;AAAA;AAAA;AAAA,EAID,qCACE,+BAEF,wCACE,eACA,gBACA,uBACA,mBAEF,qDACE,cAEF,2DACE,sBAEF,iDACE,eACA,sBAEF,iDACE,qBAEF,6CACE,8CAEF,yCACE,+CAEF,8CACE,aACA,sBACA,mBACA,YAEF,yCACE,yBACA,YACA,gBACA,uBAEF,8CACE,oCACA,sBACD,8CACC,WACA,YACA,cAEF,qCACE,WACA,yBACA,qBAEF,2CACE,WACA,gBACA,mBAEF,wCACE,gBACA,UACA,MACA,8CACA,YAEF,wDACE,aAEF,qDACE,WAEF,iDACE,YAEF,iDACE,YAEF,qDACE,YAEF,4EACE,sBACA,2BAEF,mEACE,wBAEF,sEACE,oBAEF,6DACE,oCAEF,+EACE,mBACD,2CACC,uBACD,oCACC,aACA,sBACA,oBACA,UACA,gBACA,YACA,uBACA,cAEF,yDACE,sBAEF,4CACE,iBACA,gBAEF,yBACA,oCACI,mBACA,iBAGJ,yBACA,oCACI,mBACA,gBAEJ,4CACI,iBAGJ,yBACE,uBAEF,oDACE,sBAEF,0CACE,gBAEF,+CACA,yBACI,UAGJ,yBACA,yBACI,0CAEH,oCACC,YACA,aACA,sBACA,mBAEF,uCACE,iBACA,mBACA,SAEF,oCACE,sBACA,WACA,aACA,sBACA,aACA,OACA,mBAEF,sCACE,sBAEF,+BACE,kCAEF,yBACA,+BACI,qEAGJ,wCACE,aACA,sBACA,gBACD,2CACC,iBACA,oDAEF,6CACE,oDAEF,yDACE,aAEF,4CACE,uFCnZF;AAAA;AAAA;AAAA,GAIA,aACC,8DAGC,kDACC,wCAIA,wDACC,gBAED,yEACC,+BACA,2BACA,wCAEA,8OAGC,UAID,iFACC,aAED,oFACC,aAED,iGACC,YAMJ,sBACC,iEACA,uCAGD,8BACC,uCAID,kCACC,cAGD,oBACC,iBACA,mCACA,sBACA,qBACA,iBAED,+KAIC,kBAID,oBACC,eACA,oCACA,8CACA,2CACA,sBAEA,aACA,sBACA,mBACA,uBAEA,kDACA,2CACA,2CAEA,yCACC,8CAGD,sBACC,kBACA,oCACA,4CACA,WAEA,wBACC,qBACA,mCACA,iBACA,uCACA,kCACA,oCACA","file":"server.css"}
\ No newline at end of file +{"version":3,"sourceRoot":"","sources":["server.scss","icons.scss","variables.scss","styles.scss","inputs.scss","functions.scss","header.scss","apps.scss","global.scss","fixes.scss","mobile.scss","tooltip.scss","../../node_modules/@nextcloud/dialogs/dist/style.css","public.scss"],"names":[],"mappings":"AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,GCwHQ,8BCtHR;AAAA;AAAA;AAAA,GCMA,MACC,mCACA,uCAGD,yQACC,SACA,UACA,SACA,oBACA,eACA,oBACA,wBACA,eACA,uCAGD,6CACC,aAID,0CACC,wDACA,aAGD,UACC,YAEA,8BAGD,6DACC,cAGD,MACC,yBACA,iBACA,mBAGD,cACC,iBACA,mBAGD,YACC,sBAGD,EACC,SACA,6BACA,qBACA,eACA,IACC,eAIF,WACC,aACA,0BAGD,MACC,eACA,QACC,eAIF,0BACC,eAGD,GACC,gBAGD,KACC,mBAEA,mCACA,uCACA,6BACA,6BAGD,mBACC,kBAGD,qBACC,kBACA,sBACA,qBACA,2BACA,2DACA,uBAGD,iBACC,qBACA,aACA,gCAGD,eACC,YACA,aAGD,cACC,eACA,MACA,SACA,qBACA,YACA,WACA,aACA,kBACA,gDACA,wCACA,iBACA,eACA,kBACC,cACA,kBACA,UACA,QACA,gBAED,gBACC,wCACA,sDACA,4CACC,6CAOH,oBACC,WACA,YAGD,2BACC,+BAGD,gCACC,+BAGD,0BACC,kCACA,yCACA,+BACA,4BAMD,YACC,8CACA,wCAMD,kBACC,sBAKD,4BAEC,oCACA,kBACA,gBACA,WACA,sDACC,gBAED,sEACC,gBAED,kCACC,mBAED,oHAEC,qBACA,YACA,WACA,mBACA,gcAEC,WAOH,sBACC,WASD,oCACC,kBACA,yBACA,sBACA,qBACA,iBAID,kBAEC,kBACA,qBACA,SAEA,YAGD,8CAGC,WAGD,8BACC,sBACA,oBACA,wBACA,wBAGD,2EACC,WAGD,oGACC,kDACA,UACA,qBAGD,mDACC,6BACA,YACA,WACA,yCACA,4BACA,2BACA,WAOA,qEACC,UAED,qEACC,UAIF,wEACC,aAGD,2CACC,wBAGD,yBACC,kBACA,qBACA,sBAGD,qBACC,cACA,mBACA,iBACA,uBACA,aAKD,4CACC,eACA,YACA,mCACA,6BACA,qDAIA,2BACC,4BAKD,wBACC,sBACA,4BACA,+BACC,2CACA,qBACA,kBAGF,0BACC,qBACA,iBAIF,YACC,YACA,sCACA,oBACC,sBAIF,eACC,2CAUD,mBACC,kBACA,cACA,2BACC,kBACA,cAIF,UACC,gBAGD,8CACC,UAIA,WACC,WACA,YAGD,8CAEC,UAGD,oGAGC,WAIF,mBACC,WACA,kBACA,QAEA,kDACC,UAKD,kDACC,UAIF,eACC,WAEA,0CACC,UAKD,uGACC,8CAIF,KACC,mFAGD,OACC,gBACA,YACA,eACA,qBACA,UACC,qBAIF,2FACC,gBACA,uBAGD,2BACC,yDAGD,2BACC,6DAID,yBACC,gBACA,gBACA,WACA,mCACA,YACA,wBAEA,sKAGC,+BACA,mBAED,2CACC,YACA,eACA,YACA,8CACA,6BAEA,gEACC,cACA,mBAED,oDACC,WAEA,4JAEC,kCACA,4BAGF,oEACC,UAID,oDACC,mBACA,gCACA,WACA,WACA,YAED,0DACC,yBAGA,+FACC,gDAGD,wOAGC,8CACA,wCACA,iBAGD,yNAEC,gCACA,WAOH,4FACC,iDAED,4FACC,gDAKD,4FACC,gDAED,4FACC,iDAIF,wCACC,gCACA,wCAKD,yBACC,2BACA,sBACA,mCACA,wBAEA,4CACC,uBAGD,sKAGC,+BACA,mBAED,2CACC,YACA,eACA,YACA,8CACA,6BAEA,gEACC,cACA,mBAIF,qFACC,yBAGA,iDACC,mBACA,gCACA,WACA,yDACC,UACA,WACA,iBAGF,uDACC,yBAGA,0TAIC,8CACA,wCACA,iBAGD,4FACC,gCAGD,qEACC,gDASH,oGACC,aACA,iBACA,8BACA,0GACC,cACA,SACA,YACA,YACA,WACA,aACA,mBACA,uBACA,8GACC,kBACA,kBACA,mBACA,6BACA,cACA,iBACA,WACA,YACA,YACA,eAOJ,WACC,0BAGD,aACC,WACA,sBACA,oBAKD,YACC,kCAMA,qBACC,WACA,aAED,wBACC,cACA,gDACA,WACA,aAED,2BACC,WACA,YACA,6BACC,WAGF,wBACC,wCACA,kBACA,mBACA,gBACA,uBACA,0CACA,kCACA,6DACC,0CAGF,sBACC,UACA,WAKF,YACC,oBACA,YAGD,SACC,oBACA,kDACA,4BACA,iCACA,YACA,0BACA,cACA,QACA,uBACA,mBACC,QACA,kBACA,qBACC,WAIA,wFACC,cAIF,gCACC,SACA,sBACA,mCACC,iBACA,gBACA,kBACA,uBACA,+DACC,+EAGF,+CACC,aAIH,gBACC,aACA,uBACC,QAGF,yBAEC,kBACA,aACA,WACA,uBACA,mBACA,gBACA,cAEA,gBAEA,8FAGC,oBAGF,yBACC,UACA,WAGD,oBACC,iBACA,uBAEA,2BACC,uBAGF,+DACC,UAEA,0JAEC,WAOH,QACC,UACA,yCACA,sCACA,qCACA,oCACA,iCACA,oBACC,UAOD,+CACC,SACA,kBAED,mDACC,gBAKF,cACC,mBAMD,mBACC,aACA,QACA,SACA,UCz0BD;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,GAUA,kFACC,6BAGD,uGACC,wCAGD,sDACC,kCAMD,iHAUC,YACA,yCACA,sBAYA,oFACC,eACA,oCACA,sCACA,QA/BiB,GAmCnB,wBACC,aAID,yJAUC,iBACA,8CACA,6BACA,0CACA,mCACA,aACA,mCACA,YACA,uYACC,WACA,sBAOC,kxDAIC,oCACA,aAED,gmBACC,aACA,8CACA,6BAGF,maACC,6DACA,oDAGF,wNACC,8CACA,6BACA,eACA,WAED,wNACC,gBAED,oPACC,mDAGD,iNACC,8CACA,0CACA,wCACA,eAGA,kvBAEC,+CAIA,mjCAGC,oDACA,gDAED,gwBAEC,4CAED,2WACC,6CAGF,gRAEC,8CACA,6CACA,eAKH,2BACC,WACA,sBACA,gBACA,eACA,gDACA,aACA,mCAEA,8CACA,oCACA,eACA,WAKA,4KACC,6BACA,0BACA,qBAEA,qCAED,0EAIC,YACA,WAID,kBACC,WACA,cACA,gBACA,WACA,eAED,mBACC,SACA,QAED,iBACC,cAKF,6GASC,2FACA,mCACA,WACA,yCACA,eACA,sBACA,8CACA,oDACA,YAEA,kSAEC,0DAGD,mKACC,eAIF,qMAcC,WACA,sBACA,eACA,mCACA,8CACA,6BACA,iDACA,YACA,aACA,yCACA,uBACA,eACA,+0BACC,8CACA,kDAED,yRACC,YAIF,mCACC,8CACA,6BAGD,mCACC,aACA,YAID,OACC,iDACA,gBACA,8CACA,mCAGD,qBACC,qCAGD,qBACC,oCASA,2DACC,eAIA,sFACC,eAMH,sGAQC,iBACA,2CAGA,gMACC,SAGD,oIACC,+CACA,2CACA,sBACA,kKACC,qDACA,+CAaD,4MAEC,qBACA,2BACA,WASF,kGACC,qCACA,mDACA,mFACA,iBACA,4BAEA,yDACA,UACA,qCACA,oCACA,gBACA,eACA,oBACA,6HACC,eCzUF,+CDiVE,yOACC,gCAID,4qBAGC,qDACA,8CACA,6vBACC,uDAQH,+VACC,qDACA,mDAEA,UAOH,uBAEC,eAGD,2BAEC,mBASA,4GAEC,kBACA,4BACA,SACA,UACA,WACA,gBACA,oIACC,iBAED,4WAEC,eAED,gKACC,WACA,qBACA,OAvBmB,KAwBnB,MAxBmB,KAyBnB,sBACA,kBACA,aACA,sBACA,+CAED,oeAEC,0CAED,4LACC,oBACA,qCACA,kBACA,mBAED,4bAIC,8DACA,8CACA,0CAED,oMACC,+CACA,0DAED,oOACC,+CAID,gJACC,qBACA,yBAED,oMACC,cA/DmB,KAmEpB,mFACC,kBACA,OArEmB,KAsEnB,MAtEmB,KAuEnB,2BACA,2BAED,mGACC,yDAED,+GACC,0DAOD,gZAEC,2BAED,wUACC,aAzF0B,KA2F3B,4NACC,8DACA,+BACA,2BAED,gOACC,0CACA,2CAED,gQACC,8DACA,2CACA,+BAID,8OAEC,0CACA,6BACA,+DAED,6HACC,gEAED,mHACC,WAMH,iBACC,gBACA,8CACA,qCACC,sCAED,yBACC,qBACA,sBACA,sBACA,6BACC,eAGF,uCACC,gBACA,wDACA,yCAED,kCACC,iBACA,SACA,UACA,wDACC,mBACA,gBACA,uBACA,6DACC,eACA,gEACC,eACA,iBAIH,6JAGC,kBACA,kBACA,aACA,+BACA,eACA,oCAGA,mEACC,8CAGF,uDACE,8CACA,6BAKJ,qDACC,4CAGD,qDACC,2CAKA,oGAEC,eAKD,mHAEC,gBACA,mBACA,uBACA,wCACA,+CACA,uBACA,yCACA,0CACA,SACA,YACA,gBACA,6IACC,0CAED,iKACC,iBACA,yBACA,stBAIC,sBACA,8CACA,oCACA,0CAED,2NACC,aAGF,2KACC,iBACA,gBACA,gBACA,6BACA,yMACC,2BAMJ,sBACC,WACA,sBACA,+DACC,aACA,eACA,kEACC,WAGF,uCACC,gBACA,mBACA,uBACA,wCACA,+CACA,uBACA,yCACA,0CACA,SACA,iBACA,gBACA,oDACC,0CAED,8DACC,iBACA,yBACA,sBACA,8CACA,0CACA,2FACC,aAED,8JAEC,qCACA,iCAGF,sDACC,gBACA,gBACA,YACA,wDACC,mEACA,WAGF,2LAGC,WAED,mEACC,iBAMH,UACC,WACA,sBACA,qBACA,2BACC,wBACA,eACA,yCACC,iBACA,yBACA,sBACA,8CACA,oCACA,0CACA,oBACA,mBACA,gDACC,wBAIH,yBACC,UACA,4BACC,YACA,kBACA,kBACA,+BACA,eACA,oCACA,8BACC,mBACA,gBACA,uBACA,YACA,sBACA,uBACA,SACA,eACA,eACA,2BACA,yBACA,sBACA,qBACA,iBACA,oBACA,mBACA,0CACA,yBACA,sCACC,YACA,4CACA,4BACA,2BACA,eACA,gBACA,cACA,WACA,sBACA,kBAGF,sCACC,6BAED,qCACC,8CACA,6BACA,6CACC,mBAQL,mBACC,cACA,WACA,UACA,cACA,8CACA,mCACA,gBACA,WACA,gBAEC,2CACC,8BAED,gDACC,8BAGF,yCACC,yBAED,sCACC,mCACA,wCACA,iCAED,2CACC,mCACA,wCACA,iCAKF,iBACC,QAEC,0BAED,QAEC,yBAED,YAGC,0BAED,QAEC,0BAIF,OACC,qBACA,uBACA,mCAKD,cACC,kBACA,4BACA,aACA,UACA,WACA,gBAWD,cAJC,oCACA,mCAOD,wBARC,oCACA,mCAWD,4BAZC,oCACA,mCEl3BD;AAAA;AAAA;AAAA;AAAA,GAQA,mBAEC,yBACA,sBACA,qBACA,iBAEA,2QAGC,aAEA,qTACC,YACA,kBACA,oBACA,2BACA,WACA,WACA,kBACA,oDACA,uBACA,UAIF,2CAEC,uDAEA,0OACC,WAGD,2HACC,uBAOH,+DAGC,oBACA,kBACA,MACA,WACA,aACA,OJiCe,KIhCf,sBACA,8BAID,WACC,cACA,0BACA,kBACA,wBACA,sBACA,UACA,mBACA,aACA,eACA,gBACA,WAEA,mCACC,UAWD,8BACC,8CACA,sDACA,yCACA,sBACA,aACA,kBACA,gBAbD,gBACA,oCAcC,qBACA,IJRc,KISd,SACA,gBAEA,gDACC,aAID,oCACC,gCACA,iDACA,YACA,YACA,SACA,QACA,kBACA,oBACA,sBAGD,mEAEC,iCAvCF,gBACA,oCA0CA,cACC,oBACA,yFACA,4BACA,wBACA,2BACA,WACA,kBACA,wBACA,QACA,WAEA,gFAGD,kCACC,aACA,wBACA,cAGD,oFAEC,oBACA,mBAGD,4CACC,SACA,mBACA,YAGD,wCACC,yBACA,cAKA,8CACC,gDAED,iDAEC,YACA,kBACA,yEACC,aACA,uBACA,mBACA,MJtFY,KIuFZ,YACA,eACA,YACA,UACA,aAEA,qFACC,UAGD,qGACC,aASL,0CACC,YAKD,gBACC,yCACA,eACA,iBACA,SACA,UACA,uBACA,gBACA,uBAEA,cAGD,aACC,aACA,sBACA,gBAGD,cACC,gBACA,uBAGD,kBACC,yCACA,kBACA,gBACA,eACA,iBACA,gBACA,uBAID,cACC,kBACA,gBACA,aACA,WACA,uBACA,aACA,aACA,eACA,SAEA,2BACC,IJhKc,KIuKf,gDACC,mBACA,eAED,gJAEC,qBACA,YACA,WAIF,8DACC,QACC,wBAGD,sBACC,wCAGD,MAEC,uGFzRF;AAAA;AAAA;AAAA;AAAA,GHQA,iCACC,4BACA,2BACA,eACA,gBAGD,iBACC,kDAID,sGAMC,kBACA,0IACC,UACA,WACA,YACA,WACA,uBACA,kBACA,QACA,uBACA,mBACA,6CACA,qCACA,gCACA,4BACA,wBACA,4CACA,2CAEA,wCAEA,gYAGC,uCAKH,wDAEC,2CACA,4CAGD,yDAEC,YACA,WACA,qBAKA,yJACC,2CAED,iMACC,gDAED,yMACC,iDAED,iPACC,sDAIF,kBACC,KACC,uBAED,GACC,0BAIF,SACC,gCAGD,yKAQC,wDGzGD;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,GGSA,sCAEC,MACC,wCACA,yCAKF,KACC,WACA,YACA,kBAEA,6EAGD,KAEC,6EAEA,yCACA,sBACA,2BACA,eACA,WACA,iDAKD,eAKC,gBACA,gBACA,gBACA,mBACA,6BAGD,GACC,gBAGD,GACC,gBAGD,GACC,gBAGD,GACC,iBAGD,GACC,gBAID,GACC,kBACA,oCAGD,GACC,eAGD,MAEC,qBACA,aACA,uBAGD,GACC,YACA,mBACA,eAGD,IACC,iBACA,sBACA,kCACA,mCACA,qBACA,mBAMD,wBACC,sBAKD,0BAEC,gGACA,MLxBkB,MKyBlB,YACA,gBACA,kBACA,mDACA,8CACA,+EACA,gBACA,YACA,sBACA,qBACA,iBACA,aACA,sBACA,YACA,cAEA,kDACC,iBACA,0CACA,2EACA,mBACA,uBACA,2BACA,iBACA,oBACA,yBAQD,gGACC,cACA,6CACA,8GACC,qBACA,WACA,aACA,0BACA,iBACA,SAIF,8DACC,kBAED,8DACC,kBACA,YACA,WACA,kBACA,gBACA,sBACA,aACA,sBACA,6CACA,iBAEA,oFACC,oDAGD,oEACC,oBACA,eACA,QACA,cACA,SACA,kBACA,WACA,2CAGA,kFACC,QACA,4GACC,2BAIF,gIAEC,8DAED,0HAIC,0EAKA,wVAEC,+CAGF,oGACC,kDACA,yCAMA,gsBAEC,8CACA,wCAEA,g8BACC,qCAMH,sHACC,wBACA,SAMA,kNAEC,aAKF,0EACC,cACA,WACA,kBACA,gFACC,oBACA,eACA,mDACA,WACA,kBAIC,wXAEC,2CACA,+CAKD,gZAEC,2CACA,oDACA,ghBACC,qCAMH,kIACC,yDAGD,4IAEC,wBACA,0BAGD,sIAEC,wBAGA,6EAMJ,oJAEC,kBACA,sBAGC,4jBAGC,oCAIF,4JACC,0BACA,4BACA,cACA,8BACA,0CACA,yCACA,gBACA,oDACA,gBACA,sBACA,mBACA,uBACA,2CACA,6BACA,aACA,YAGA,4KACC,gBACA,kDACA,wOACC,gBACA,6DAGF,4NACC,kEACA,WACA,YAEA,wCAID,4QACC,qBAEA,4ZACC,gCAKH,wQACC,kBACA,cACA,YACA,WACA,YACA,YACA,kBACA,eACA,wCAEA,gRAEC,oCAKF,gQACC,kCAID,gSACC,UACA,YAED,4SACC,wBACA,YAIH,sEACC,aAMD,4YAEC,SACA,WACA,+BACA,4BACA,2BACA,w0BAEC,+BACA,UAUD,sGACC,UACA,kBACA,oCACA,qCACA,SACA,YAIA,qBAEA,kIACC,UACA,eACA,wDACA,gBAGF,gGACC,kBACA,qCACA,oCACA,SACA,UACA,gBFjZF,6CEmZE,qBACA,4BACA,2BACA,YACA,wBACA,gBACA,YACA,UACA,iCACA,6BACA,yBACA,YACA,kBACA,qCAMD,8GACC,mDAIA,wNACC,UAED,oMACC,sBAED,gTACC,oCAID,0GACC,4BACA,wBACA,oBAQH,gHACC,cACA,sHACC,wBACA,mBACA,yBAED,sHACC,+CACA,qCAED,8HACC,YACA,WACA,SACA,gBAIA,oSFpdF,uCEudE,obAEC,+BACA,UAGF,wLACC,gBACA,eACA,cACA,0CACA,eAEA,gNACC,UACA,kBACA,0NACC,gBACA,mBACA,8CACA,wCASJ,8GACC,mBACA,cACA,uBACA,qCACA,UACA,kBACA,8CACA,WACA,8OAEC,oBACA,WAED,0HACC,YACA,oBACA,YACA,4QAGC,UAGF,gJACC,WACA,YACA,wBACA,0BAED,wRAEC,WACA,YACA,cACA,4VACC,2BAED,gWACC,yBAED,oUACC,2CACA,6CACA,0BACA,4BAQH,oHACC,oBACA,mDACA,4BACA,wMACC,kBACA,mBACA,uBACA,gBACA,aACA,0CAED,8LACC,SACA,qCACA,oCACA,0CACA,oZAEC,UAQH,kOAEC,uBACA,2FAGA,kBACA,qBACA,8CACA,sBAMD,sFACC,gDACA,wCACA,oBAGD,sEACC,yBAGD,0OAEC,qBASA,0IACC,qCAGD,gHACC,qCAEA,wKACC,YASF,0IACC,sCAGD,gHACC,sCAEA,wKACC,WAOJ,SACC,sBACA,gBACA,oCACA,gCACA,UACA,aACA,kDACA,0BACA,2CACA,cAEA,kCACC,eAIF,2CACC,SACC,qDACA,mDAED,gBACC,qDAED,aACC,oDAcF,aACC,aACA,8CACA,iBACA,cACA,iBACA,YAGA,kCACC,gBAID,kCACC,aACA,kBACA,oBAGA,gBAGA,uDAEC,eACA,mFACC,aAKH,uCACC,oCASF,aACC,WACA,UL/qBmB,MKgrBnB,UL/qBmB,MKgrBnB,cACA,wBACA,gBACA,ILtrBe,KKurBf,mBACA,gBACA,kBACA,aACA,aACA,0BACA,wCACA,kDACA,cAEA,uBACC,aAOF,cAEC,gBAGC,oFACC,cAKH,sBACC,aACA,6CACA,cACA,0DAEA,iBACA,gBACA,sBAGA,uCACC,UAGD,iCACC,sBACA,sBACA,gCAOE,4NACC,qBACA,WACA,cAOL,qBACC,sBACA,+BACA,gBACA,oDACA,6CACA,cAEA,sCACC,aACA,mBACA,qCACA,WACA,UACA,SACA,+BACA,gBACA,SACA,oDACA,iBACA,mBACA,eACA,WAGA,6BAEA,6CACC,yCACA,8CACA,eAED,wFAEC,+CAGD,8CACC,2CACA,4BACA,WACA,oCACA,qCACA,MACA,qBACA,cAGD,oDACC,mEAOF,4DACC,qCAED,kEACC,qCAKD,4DACC,sCAED,kEACC,sCAIF,SACC,cACA,aACA,mBACA,gBACC,wBAIA,yDAEC,oBACA,sBAKH,aACC,kBACA,gBACA,yBACA,mBAGD,QACC,UACA,yCACA,sCACA,qCACA,oCACA,iCACA,oBACC,UAKF,YACC,aACA,mBAEA,uBACC,aACA,sBACA,YACA,kBACA,mBACA,gBACA,uBACA,eACA,gCACA,kBACA,YAEA,8BACC,aAID,mCACC,0BAED,kCACC,wBAGD,6BACC,qBACA,WACA,YACA,qBACA,sBACA,gBACA,sBACA,WACA,eAGD,yBACC,gCACA,kBACA,gBACA,uBAED,gCACC,iBAED,0FAGC,kBACA,6BACA,kDAMF,oBACC,oBAKF,6BACC,WAGD,6BACC,YASA,0JAGC,wCAIA,2LACC,YAKH,gDAGC,kBACA,8CACA,6BACA,yCACA,YACA,YACA,WACA,gBACA,mBACA,sDACA,aACA,mBAEA,kEACC,YAKA,qBAEA,2BACA,YACA,SACA,QACA,kBACA,oBACA,iDACA,iBAGD,oFACC,0BACA,qBACA,oBACA,sGACC,qBACA,0BAIF,8EACC,oBACA,oBACA,gGACC,sBAIF,+DACC,cAGD,+GACC,SAGD,yDAEC,wBACA,sBAED,yDACC,aACA,cAEA,8EACC,aAGD,oOAGC,eACA,YA/FkB,KAgGlB,SACA,yCACA,+BACA,aACA,uBACA,YACA,SACA,mBACA,gBACA,WACA,6BACA,mBAEA,whDAIC,YACA,aACA,+BACA,gBAnHe,KAqHhB,yzBAIC,yBAOC,gvGACC,oBAlIe,KAsIlB,+tBAEC,gCAED,ojBAEC,+CAED,4nBAEC,kDAED,mSACC,2CACA,oDAGD,mSACC,2BAED,iRACC,eACA,mBAED,sPACC,YACA,kBACA,cACA,mBAED,mSACC,SACA,wBAGD,gVACC,kCAID,wQACC,MA9Ke,KA+Kf,YAGD,uyBAEC,qBACA,WAED,yeACC,mBAED,8cACC,mBAED,2xBACC,YAED,iRACC,aACA,cAGA,mBACA,mbACC,wBAIF,04BAEC,sBAGD,0RACC,UAlNiB,KAmNjB,gBACA,aACA,cAEA,4bACC,wBAQA,2hDACC,eAMD,ygDACC,kBAKJ,8EACC,UACA,6FACC,UAcD,+EACC,MA/PiB,KAgQjB,OAhQiB,KAyQlB,6CACC,WACA,YAOJ,kBACC,wBACA,kBACA,MACA,gDACA,aACA,sBACA,uCACA,gBACA,gBACA,gBACA,kBACA,eACA,UL5sCgB,MK6sChB,UL5sCgB,MK+sChB,yCACC,kBACA,YACA,eACA,iBACA,aACA,eACA,mBACA,cAKC,8RAEC,QACA,WACA,YACA,YACA,aACA,WACA,eACA,4mBAEC,WAED,wtBAEC,WACA,ghDAEC,UAIF,kVACC,UAKH,8IAGC,8CAEA,2RACC,aAIF,6JAEC,kBACA,YACA,WACA,WAQC,2XAEC,aAEA,2eACC,WAIH,wFACC,SACA,uBAEA,aACA,gGACC,SAGD,oHACC,aAKH,qEACC,aACA,SACA,wBACA,qBACA,YACA,WACA,SACA,UAGD,qEACC,kBACA,qBACA,YACA,WACA,iBACA,kBACA,sBACA,uBACA,WACA,kBACA,gBACA,0BACA,iBACA,iBACA,eACA,QACA,iBAGD,kJAEC,cACA,yBACA,mBACA,gBACA,uBACA,QACA,aACA,eAGD,yEACC,WACA,QACA,SACA,sDAGD,wEACC,QACA,mBACA,gBACA,uBACA,gBACA,WACA,cACA,iBAGD,qEACC,QACA,kBACA,kFACC,SAGA,sBAIH,2EACC,aAIF,8CACC,6DACA,oDCt9CD;AAAA;AAAA;AAAA;AAAA;AAAA,GAcC,mDAEC,WAGD,kDAEC,YAGD,qDAEC,WAGD,oDAEC,YAKD,mDAEC,YAGD,kDAEC,WAGD,qDAEC,YAGD,oDAEC,WAIF,YACC,WAGD,QACC,aAGD,iBACC,kBACA,4BACA,aACA,UACA,WACA,gBAGD,MACC,gBAGD,QACC,kBAGD,aACC,qBCnFD;AAAA;AAAA;AAAA,GAOA,mBACC,SCRD;AAAA;AAAA;AAAA,GAMA,wCAGC,UACC,iCACA,qBAID,iBACC,wBAID,YACC,WACA,iCACA,sBAID,0BACC,6BACA,eACA,0BAGA,6BACC,wBAIF,0CACC,sBAGD,8BACC,uBACA,sBAID,kBACC,wCACA,cAEA,iBAEA,eACA,uCACC,aAED,8BACC,aACA,mDACC,gBAOF,gDACC,4BAED,qDACC,eACA,gCACA,IRiBa,KQhBb,qBACA,WACA,YACA,aACA,oCACA,eACA,WACA,wBAED,2CACC,4BAKF,uBACC,eACA,gCACA,qBACA,WACA,YACA,aACA,eACA,WAED,0DAEC,UAID,6CACC,0BAID,kDACC,kCAED,8CACC,wBAGD,wBACC,gCAID,gBACC,aAED,+BACC,6BAMF,0CACC,8BACC,6BACA,eACA,qCACC,wBAMA,0CACC,cAGF,+BACC,gCACA,iDACA,SACA,YACA,SACA,QACA,kBACA,oBACA,sBACA,aACA,aAID,wCACC,uBCpKH;AAAA;AAAA;AAAA;AAAA,GAMA,SACI,kBACA,cACA,6BACA,kBACA,mBACA,sBACA,gBACA,gBACA,iBACA,qBACA,iBACA,oBACA,mBACA,kBACA,oBACA,iBACA,uBACA,eACA,UACA,eAEA,gBACA,eACA,uDACA,8DAGI,mBACA,UACA,wBAEJ,uDAEI,uBACA,0BAEJ,8CAEI,eACA,eAEJ,4CAEI,wBACA,eACA,0EACI,QACA,qBACA,iBACA,8BACA,qDAGR,0CAEI,yBACA,cACA,wEACI,QACA,mBACA,iBACA,8BACA,uDAQJ,kPACI,SACA,yBACA,8CAGR,iCACI,sBACA,oBAEJ,kCACI,wBACA,oBAOA,0QACI,MACA,yBACA,iDAGR,4EAEI,uBACA,0BAEJ,oCACI,sBACA,iBAEJ,qCACI,wBACA,iBAIR,eACI,gBACA,gBACA,8CACA,6BACA,kBACA,mCAGJ,+BACI,kBACA,QACA,SACA,2BACA,mBCnIJ;AAAA;AAAA;AAAA,GAIA,kBACE,gBACA,gBACA,8CACA,6BACA,6CACA,eACA,gBACA,eACA,cACA,mCACA,aACA,mBACA,gBAEF,kFAEE,aACA,mBACA,WAEF,oEAEE,gBACA,gBACA,sBACA,eACA,YACA,aACA,mBACA,4BACA,2BACA,6BACA,aAEF,4FAEE,cACA,WACA,YACA,gBACA,iBACA,YAGF,4GAEE,sfACA,YACA,wCACA,qBACA,WACA,YAEF,wGAEE,WACA,wBACA,iBAEF,kPAIE,eACA,UAEF,+BACE,WAEF,mCACE,eAEF,8BACE,yCAEF,6BACE,2CAEF,gCACE,2CAEF,gCACE,2CAEF,6BACE,2CAEF,gCACE,2CAEF,8CACE,qBACA,WACA,YACA,iEACA,iBAOF,gEACE,kgBAEF,oCACC,8BACA,4BAED;AAAA;AAAA;AAAA,GAQA,iCACE,kBACA,WACA,YACA,eACA,gBACA,4BACA,wBACA,aACA,uBAGF,2CACE,mCAGF,0CACE,wCACA,kBACA,uBACD;AAAA;AAAA;AAAA,EAID,qCACE,+BAEF,wCACE,eACA,gBACA,uBACA,mBAEF,qDACE,cAEF,2DACE,sBAEF,iDACE,eACA,sBAEF,iDACE,qBAEF,6BACA,GACI,2BAEJ,IACI,6BAEJ,KACI,4BAGJ,4CACE,6BAEF,mCACE,qBACA,YACA,oIACA,2BACA,mCACA,8CAEF,2CACE,oBACA,mBAEF,iDACE,WAEF,0DACE,wBACA,YAEF,6CACE,WAEF,iDACE,WACD;AAAA;AAAA;AAAA,EAID,qCACE,+BAEF,wCACE,eACA,gBACA,uBACA,mBAEF,qDACE,cAEF,2DACE,sBAEF,iDACE,eACA,sBAEF,iDACE,qBAEF,6CACE,8CAEF,yCACE,+CAEF,8CACE,aACA,sBACA,mBACA,YAEF,yCACE,yBACA,YACA,gBACA,uBAEF,8CACE,oCACA,sBACD,8CACC,WACA,YACA,cAEF,qCACE,WACA,yBACA,qBAEF,2CACE,WACA,gBACA,mBAEF,wCACE,gBACA,UACA,MACA,8CACA,YAEF,wDACE,aAEF,qDACE,WAEF,iDACE,YAEF,iDACE,YAEF,qDACE,YAEF,4EACE,sBACA,2BAEF,mEACE,wBAEF,sEACE,oBAEF,6DACE,oCAEF,+EACE,mBACD,2CACC,uBACD,oCACC,aACA,sBACA,oBACA,UACA,gBACA,YACA,uBACA,cAEF,yDACE,sBAEF,4CACE,iBACA,gBAEF,yBACA,oCACI,mBACA,iBAGJ,yBACA,oCACI,mBACA,gBAEJ,4CACI,iBAGJ,yBACE,uBAEF,oDACE,sBAEF,0CACE,gBAEF,+CACA,yBACI,UAGJ,yBACA,yBACI,0CAEH,oCACC,YACA,aACA,sBACA,mBAEF,uCACE,iBACA,mBACA,SAEF,oCACE,sBACA,WACA,aACA,sBACA,aACA,OACA,mBAEF,sCACE,sBAEF,+BACE,kCAEF,yBACA,+BACI,qEAGJ,wCACE,aACA,sBACA,gBACD,2CACC,iBACA,oDAEF,6CACE,oDAEF,yDACE,aAEF,4CACE,uFCnZF;AAAA;AAAA;AAAA,GAIA,aACC,8DAGC,kDACC,wCAIA,wDACC,gBAED,yEACC,+BACA,2BACA,wCAEA,8OAGC,UAID,iFACC,aAED,oFACC,aAED,iGACC,YAMJ,sBACC,iEACA,uCAGD,8BACC,uCAID,kCACC,cAGD,oBACC,iBACA,mCACA,sBACA,qBACA,iBAED,+KAIC,kBAID,oBACC,eACA,oCACA,8CACA,2CACA,sBAEA,aACA,sBACA,mBACA,uBAEA,kDACA,2CACA,2CAEA,yCACC,8CAGD,sBACC,kBACA,oCACA,4CACA,WAEA,wBACC,qBACA,mCACA,iBACA,uCACA,kCACA,oCACA","file":"server.css"}
\ No newline at end of file diff --git a/core/l10n/be.js b/core/l10n/be.js new file mode 100644 index 00000000000..e96b443d8cb --- /dev/null +++ b/core/l10n/be.js @@ -0,0 +1,325 @@ +OC.L10N.register( + "core", + { + "Please select a file." : "Выберыце файл.", + "File is too big" : "Файл занадта вялікі", + "The selected file is not an image." : "Выбраны файл не з'яўляецца відарысам.", + "The selected file cannot be read." : "Не ўдалося прачытаць выбраны файл.", + "Missing a temporary folder" : "Адсутнічае часовая папка", + "Could not write file to disk" : "Не ўдалося запісаць файл на дыск", + "Invalid file provided" : "Прапанаваны файл некарэктны", + "Unknown filetype" : "Невядомы тып файла", + "An error occurred. Please contact your admin." : "Узнікла памылка. Звярніцеся да адміністратара.", + "Login" : "Лагін", + "Unsupported email length (>255)" : "Даўжыня электроннага ліста не падтрымліваецца (>255)", + "Password reset is disabled" : "Скід пароля адключаны", + "Password is too long. Maximum allowed length is 469 characters." : "Пароль занадта доўгі. Максімальная дазволеная даўжыня — 469 сімвалаў.", + "%s password reset" : "Скід пароля %s ", + "Password reset" : "Скід пароля", + "Task not found" : "Задача не знойдзена", + "Internal error" : "Унутраная памылка", + "Requested task type does not exist" : "Запытаны тып задачы не існуе", + "Necessary language model provider is not available" : "Неабходны пастаўшчык моўнай мадэлі недаступны", + "No text to image provider is available" : "Няма даступных пастаўшчыкоў паслуг пераўтварэння тэксту ў відарыс", + "Image not found" : "Відарыс не знойдзены", + "No translation provider available" : "Няма даступных пастаўшчыкоў перакладу", + "Could not detect language" : "Не ўдалося вызначыць мову", + "Unable to translate" : "Немагчыма перакласці", + "[%d / %d]: %s" : "[%d / %d]: %s", + "Nextcloud Server" : "Сервер Nextcloud", + "Learn more ↗" : "Больш падрабязна ↗", + "Preparing update" : "Падрыхтоўка абнаўлення", + "Turned on maintenance mode" : "Уключаны рэжым тэхнічнага абслугоўвання", + "Turned off maintenance mode" : "Выключаны рэжым тэхнічнага абслугоўвання", + "Updating database schema" : "Абнаўленне схемы базы даных", + "Updated \"%1$s\" to %2$s" : "\"%1$s\" абноўлена да %2$s", + "%s (incompatible)" : "%s (несумяшчальная)", + "Electronic book document" : "Дакумент электроннай кнігі", + "TrueType Font Collection" : "Калекцыя шрыфтоў TrueType", + "Web Open Font Format" : "Фармат шрыфта Web Open", + "GPX geographic data" : "Геаграфічныя дадыя GPX", + "Gzip archive" : "Архіў Gzip", + "Adobe Illustrator document" : "Дакумент Adobe Illustrator", + "Java source code" : "Зыходны код Java", + "JavaScript source code" : "Зыходны код JavaScript", + "JSON document" : "Дакумент JSON", + "Microsoft Access database" : "База даных Microsoft Access", + "Microsoft OneNote document" : "Дакумент Microsoft OneNote", + "Microsoft Word document" : "Дакумент Microsoft Word", + "Unknown" : "Невядомы", + "PDF document" : "Дакумент PDF", + "PostScript document" : "Дакумент PostScript", + "RSS summary" : "Зводка RSS", + "Android package" : "Пакет Android", + "KML geographic data" : "Геаграфічныя даныя KML", + "KML geographic compressed data" : "Геаграфічныя сціснутыя даныя KML", + "Lotus Word Pro document" : "Дакумент Lotus Word Pro", + "Excel spreadsheet" : "Табліца Excel", + "Excel add-in" : "Надбудова Excel", + "Excel 2007 binary spreadsheet" : "Табліца Excel 2007 (у двайковым фармаце)", + "Excel spreadsheet template" : "Шаблон табліцы Excel", + "Outlook Message" : "Паведамленне Outlook", + "PowerPoint presentation" : "Прэзентацыя PowerPoint", + "PowerPoint add-in" : "Надбудова PowerPoint", + "PowerPoint presentation template" : "Шаблон прэзентацыі PowerPoint", + "Word document" : "Дакумент Word", + "ODF formula" : "Формула ODF", + "ODG drawing" : "Рысунак ODG", + "ODG drawing (Flat XML)" : "Рысунак ODG (Плоскі XML)", + "ODG template" : "Шаблон ODG", + "ODP presentation" : "Прэзентацыя ODP", + "ODP presentation (Flat XML)" : "Прэзентацыя ODP (Плоскі XML)", + "ODP template" : "Шаблон ODP", + "ODS spreadsheet" : "Табліца ODS", + "ODS spreadsheet (Flat XML)" : "Табліца ODS (Плоскі XML)", + "ODS template" : "Шаблон ODS", + "ODT document" : "Дакумент ODT", + "ODT document (Flat XML)" : "Дакумент ODT (Плоскі XML)", + "ODT template" : "Шаблон ODT", + "PowerPoint 2007 presentation" : "Прэзентацыя PowerPoint 2007", + "PowerPoint 2007 presentation template" : "Шаблон прэзентацыі PowerPoint 2007", + "Excel 2007 spreadsheet" : "Табліца Excel 2007", + "Excel 2007 spreadsheet template" : "Шаблон табліцы Excel 2007", + "Word 2007 document" : "Дакумент Word 2007", + "Word 2007 document template" : "Шаблон дакумента Word 2007", + "Microsoft Visio document" : "Дакумент Microsoft Visio", + "WordPerfect document" : "Дакумент WordPerfect", + "7-zip archive" : "Архіў 7-zip", + "Blender scene" : "Сцэна Blender", + "Bzip2 archive" : "Архіў Bzip2", + "Debian package" : "Пакет Debian", + "FictionBook document" : "Дакумент FictionBook", + "Unknown font" : "Невядомы шрыфт", + "Krita document" : "Дакумент Krita", + "Windows Installer package" : "Пакет Windows Installer", + "Tar archive" : "Архіў Tar", + "XML document" : "Дакумент XML", + "YAML document" : "Дакумент YAML", + "Zip archive" : "Архіў Zip", + "Zstandard archive" : "Архіў Zstandard", + "AAC audio" : "Аўдыя AAC", + "FLAC audio" : "Аўдыя FLAC", + "MPEG-4 audio" : "Аўдыя MPEG-4", + "MP3 audio" : "Аўдыя MP3", + "Ogg audio" : "Аўдыя Ogg", + "RIFF/WAVe standard Audio" : "Аўдыя ў стандарце RIFF/WAVe", + "WebM audio" : "Аўдыя WebM", + "MP3 ShoutCast playlist" : "Плэй-ліст MP3 ShoutCast", + "Windows BMP image" : "Відарыс Windows BMP", + "Better Portable Graphics image" : "Відарыс Better Portable Graphics", + "EMF image" : "Відарыс EMF", + "GIF image" : "Відарыс GIF", + "HEIC image" : "Відарыс HEIC", + "HEIF image" : "Відарыс HEIF", + "JPEG-2000 JP2 image" : "Відарыс JPEG-2000 JP2", + "JPEG image" : "Відарыс JPEG", + "PNG image" : "Відарыс PNG", + "SVG image" : "Відарыс SVG", + "Truevision Targa image" : "Відарыс Truevision Targa", + "TIFF image" : "Відарыс TIFF", + "WebP image" : "Відарыс WebP", + "Digital raw image" : "Лічбавы неапрацаваны відарыс", + "Windows Icon" : "Значок Windows", + "Email message" : "Паведамленне па электроннай пошце", + "VCS/ICS calendar" : "Каляндар VCS/ICS", + "CSV document" : "Дакумент CSV", + "HTML document" : "Дакумент HTML", + "Markdown document" : "Дакумент Markdown", + "Org-mode file" : "Файл Org-mode", + "Plain text document" : "Тэкставы дакумент", + "Rich Text document" : "Дакумент Rich Text", + "C++ source code" : "Зыходны код C++", + "NFO document" : "Дакумент NFO", + "PHP source" : "Зыходны код PHP", + "ReStructuredText document" : "Дакумент ReStructuredText", + "3GPP multimedia file" : "Мультымедыйны файл 3GPP", + "MPEG video" : "Відэа MPEG", + "DV video" : "Відэа DV", + "MPEG-4 video" : "Відэа MPEG-4", + "Ogg video" : "Відэа Ogg", + "QuickTime video" : "Відэа QuickTime", + "WebM video" : "Відэа WebM", + "Flash video" : "Відэа Flash", + "Matroska video" : "Відэа Matroska", + "Windows Media video" : "Відэа Windows Media", + "AVI video" : "Відэа AVI", + "unknown text" : "невядомы тэкст", + "Hello world!" : "Hello world!", + "sunny" : "сонечна", + "Hello {name}, the weather is {weather}" : "Вітаем, {name}, на дварэ сёння {weather}", + "Hello {name}" : "Вітаем, {name}", + "new" : "новы", + "Update to {version}" : "Абнаўленне да {version}", + "An error occurred." : "Узнікла памылка.", + "Please reload the page." : "Перазагрузіце старонку.", + "Applications menu" : "Меню праграм", + "Apps" : "Праграмы", + "More apps" : "Болей праграм", + "_{count} notification_::_{count} notifications_" : ["{count} апавяшчэнне","{count} апавяшчэнні","{count} апавяшчэнняў","{count} апавяшчэнняў"], + "No" : "Не", + "Yes" : "Так", + "The remote URL must include the user." : "Аддалены URL-адрас павінен уключаць карыстальніка.", + "user@your-nextcloud.org" : "user@your-nextcloud.org", + "Direct link copied to clipboard" : "Прамая спасылка скапіявана ў буфер абмену", + "Please copy the link manually:" : "Скапіюйце спасылку ўручную:", + "Clear search" : "Ачысціць пошук", + "Searching …" : "Пошук …", + "Start typing to search" : "Пачніце ўводзіць тэкст для пошуку", + "No matching results" : "Няма адпаведных вынікаў", + "Today" : "Сёння", + "Last 7 days" : "Апошнія 7 дзён", + "Last 30 days" : "Апошнія 30 дзён", + "This year" : "Гэты год", + "Last year" : "Мінулы год", + "Search apps, files, tags, messages" : "Пошук праграм, файлаў, тэгаў, паведамленняў", + "Places" : "Месцы", + "Date" : "Дата", + "People" : "Людзі", + "Results" : "Вынікі", + "Load more results" : "Загрузіць больш вынікаў", + "Search in" : "Пошук у", + "Log in" : "Увайсці", + "Logging in …" : "Уваход …", + "Log in to {productName}" : "Увайсці ў {productName}", + "Wrong login or password." : "Няправільны лагін або пароль.", + "This account is disabled" : "Гэты ўліковы запіс адключаны.", + "Account name or email" : "Імя ўліковага запісу або email", + "Account name" : "Імя ўліковага запісу", + "Please contact your administrator." : "Звярніцеся да адміністратара.", + "Session error" : "Памылка сеанса", + "An internal error occurred." : "Узнікла ўнутраная памылка.", + "Please try again or contact your administrator." : "Паспрабуйце яшчэ раз або звярніцеся да адміністратара.", + "Password" : "Пароль", + "Log in with a device" : "Увайсці з дапамогай прылады", + "Login or email" : "Лагін або электронная пошта", + "Your connection is not secure" : "Ваша злучэнне не з'яўляецца бяспечным", + "Browser not supported" : "Браўзер не падтрымліваецца", + "Reset password" : "Скінуць пароль", + "Password cannot be changed. Please contact your administrator." : "Немагчыма змяніць пароль. Звярніцеся да адміністратара.", + "New password" : "Новы пароль", + "I know what I'm doing" : "Я ведаю, што раблю", + "Resetting password" : "Скід пароля", + "Chatting, video calls, screen sharing, online meetings and web conferencing – in your browser and with mobile apps." : "Чаты, відэавыклікі, дэманстрацыя экрана, анлайн-сустрэчы і вэб-канферэнцыі — у вашым браўзеры і з дапамогай мабільных праграм.", + "Collaborative documents, spreadsheets and presentations, built on Collabora Online." : "Супольныя дакументы, электронныя табліцы і прэзентацыі, створаныя ў Collabora Online.", + "Recommended apps" : "Рэкамендаваныя праграмы", + "Loading apps …" : "Загрузка праграм …", + "Could not fetch list of apps from the App Store." : "Не ўдалося атрымаць спіс праграм з App Store.", + "Cannot install this app because it is not compatible" : "Немагчыма ўсталяваць гэту праграму, бо яна несумяшчальная", + "Cannot install this app" : "Немагчыма ўсталяваць гэту праграму", + "Skip" : "Прапусціць", + "Installing apps …" : "Усталяванне праграм …", + "Install recommended apps" : "Усталяваць рэкамендаваныя праграмы", + "Avatar of {displayName}" : "Аватар карыстальніка {displayName}", + "Loading your contacts …" : "Загрузка вашых кантактаў …", + "Looking for {term} …" : "Пошук {term} …", + "Search contacts" : "Пошук кантактаў", + "Reset search" : "Скінуць пошук", + "Search contacts …" : "Пошук кантактаў …", + "Could not load your contacts" : "Не ўдалося загрузіць вашы кантакты", + "No contacts found" : "Кантакты не знойдзены", + "Show all contacts" : "Паказаць усе кантакты", + "Install the Contacts app" : "Усталяваць праграму \"Кантакты\"", + "Search" : "Пошук", + "No results for {query}" : "Няма вынікаў для {query}", + "Press Enter to start searching" : "Націсніце Enter, каб пачаць пошук", + "Forgot password?" : "Забылі пароль?", + "Back" : "Назад", + "More actions" : "Больш дзеянняў", + "User menu" : "Меню карыстальніка", + "Storage & database" : "Сховішча і база даных", + "Data folder" : "Папка з данымі", + "Database configuration" : "Канфігурацыя базы даных", + "Only {firstAndOnlyDatabase} is available." : "Даступна толькі {firstAndOnlyDatabase}.", + "Install and activate additional PHP modules to choose other database types." : "Усталюйце і актывуйце дадатковыя модулі PHP, каб выбраць іншы тып базы даных.", + "Database user" : "Карыстальнік базы даных", + "Database password" : "Пароль базы даных", + "Database name" : "Назва базы даных", + "Database tablespace" : "Таблічная прастора базы даных", + "localhost" : "localhost", + "Installing …" : "Усталяванне …", + "Install" : "Усталяваць", + "This browser is not supported" : "Гэты браўзер не падтрымліваецца", + "Copy to {target}" : "Капіяваць у {target}", + "Copy" : "Капіяваць", + "Move to {target}" : "Перамясціць у {target}", + "Move" : "Перамясціць", + "OK" : "OK", + "read-only" : "толькі для чытання", + "One file conflict" : "Адзін файлавы канфлікт", + "New Files" : "Новыя файлы", + "Already existing files" : "Ужо існуючыя файлы", + "Which files do you want to keep?" : "Якія файлы вы хочаце захаваць?", + "If you select both versions, the copied file will have a number added to its name." : "Калі бы выберыце абедзьве версіі, да назвы скапіяванага файла будзе дададзены нумар.", + "Cancel" : "Скасаваць", + "Continue" : "Працягнуць", + "Error loading file exists template" : "Памылка загрузкі шаблона", + "Saving …" : "Захаванне …", + "seconds ago" : "с таму", + "Add to a project" : "Дадаць у праект", + "Rename project" : "Перайменаваць праект", + "Delete" : "Выдаліць", + "Rename" : "Перайменаваць", + "Collaborative tags" : "Супольныя тэгі", + "No tags found" : "Тэгі не знойдзены", + "Clipboard not available, please copy manually" : "Буфер абмену недаступны, скапіюйце ўручную", + "Accounts" : "Уліковыя запісы", + "Admin" : "Адміністратар", + "Help" : "Даведка", + "Access forbidden" : "Доступ забаронены", + "Back to %s" : "Назад да %s", + "Page not found" : "Старонка не знойдзена", + "The page could not be found on the server or you may not be allowed to view it." : "Старонка не знойдзена на серверы, або ў вас няма дазволу на яе прагляд.", + "Too many requests" : "Занадта шмат запытаў", + "There were too many requests from your network. Retry later or contact your administrator if this is an error." : "З вашай сеткі паступіла занадта шмат запытаў. Паўтарыце спробу пазней або звярніцеся да адміністратара, калі гэта памылка.", + "Error" : "Памылка", + "Internal Server Error" : "Унутраная памылка сервера", + "The server was unable to complete your request." : "Сервер не змог выканаць ваш запыт.", + "If this happens again, please send the technical details below to the server administrator." : "Калі гэта паўторыцца, адпраўце тэхнічныя падрабязнасці ніжэй адміністратару сервера.", + "More details can be found in the server log." : "Больш падрабязную інфармацыю можна знайсці ў журнале сервера.", + "For more details see the documentation ↗." : "Больш падрабязную інфармацыю глядзіце ў дакументацыі ↗.", + "Technical details" : "Тэхнічныя падрабязнасці", + "Remote Address: %s" : "Аддалены адрас: %s", + "Request ID: %s" : "Ідэнтыфікатар запыту: %s", + "Type: %s" : "Тып: %s", + "Code: %s" : "Код: %s", + "Message: %s" : "Паведамленне: %s", + "File: %s" : "Файл: %s", + "Line: %s" : "Радок: %s", + "Trace" : "Трасіроўка", + "Go to %s" : "Перайсці да %s", + "Grant access" : "Дазволіць доступ", + "Account access" : "Доступ да ўліковага запісу", + "You can close this window." : "Вы можаце закрыць гэта акно.", + "Email address" : "Адрас электроннай пошты", + "Password sent!" : "Пароль адпраўлены!", + "Two-factor authentication" : "Двухфактарная аўтэнтыфікацыя", + "Cancel login" : "Скасаваць уваход", + "Access through untrusted domain" : "Доступ праз ненадзейны дамен", + "Please contact your administrator. If you are an administrator, edit the \"trusted_domains\" setting in config/config.php like the example in config.sample.php." : "Звярніцеся да адміністратара. Калі вы адміністратар, адрэдагуйце параметр \"trusted_domains\" у config/config.php, як у прыкладзе ў config.sample.php.", + "App update required" : "Патрэбна абнавіць праграму", + "The following apps will be updated:" : "Будуць абноўлены наступныя праграмы:", + "These incompatible apps will be disabled:" : "Гэтыя несумяшчальныя праграмы будуць адключаныя:", + "Start update" : "Запусціць абнаўленне", + "Update needed" : "Неабходна абнаўленне", + "Maintenance mode" : "Рэжым тэхнічнага абслугоўвання", + "Contact your system administrator if this message persists or appeared unexpectedly." : "Звярніцеся да сістэмнага адміністратара, калі гэта паведамленне працягвае з'яўляцца або з'явілася нечакана.", + "Chatting, video calls, screensharing, online meetings and web conferencing – in your browser and with mobile apps." : "Чаты, відэавыклікі, дэманстрацыя экрана, анлайн-сустрэчы і вэб-канферэнцыі — у вашым браўзеры і з дапамогай мабільных праграм.", + "You have not added any info yet" : "Вы пакуль не дадалі ніякай інфармацыі", + "{user} has not added any info yet" : "{user} пакуль не дадаў(-ла) ніякай інфармацыі", + "Edit Profile" : "Рэдагаваць профіль", + "Very weak password" : "Вельмі слабы пароль", + "Weak password" : "Слабы пароль", + "So-so password" : "Абы-які пароль", + "Good password" : "Файны пароль", + "Strong password" : "Моцны пароль", + "Profile not found" : "Профіль не знойдзены", + "The profile does not exist." : "Профіль не існуе.", + "<strong>Create an admin account</strong>" : "<strong>Стварыць ўліковы запіс адміністратара</strong>", + "New admin account name" : "Імя ўліковага запісу новага адміністратара", + "New admin password" : "Пароль новага адіміністратара", + "Show password" : "Паказаць пароль", + "Toggle password visibility" : "Пераключыць бачнасць пароля", + "Only %s is available." : "Даступна толькі %s.", + "Database account" : "Уліковы запіс базы даных" +}, +"nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);"); diff --git a/core/l10n/be.json b/core/l10n/be.json new file mode 100644 index 00000000000..01e933ad5a7 --- /dev/null +++ b/core/l10n/be.json @@ -0,0 +1,323 @@ +{ "translations": { + "Please select a file." : "Выберыце файл.", + "File is too big" : "Файл занадта вялікі", + "The selected file is not an image." : "Выбраны файл не з'яўляецца відарысам.", + "The selected file cannot be read." : "Не ўдалося прачытаць выбраны файл.", + "Missing a temporary folder" : "Адсутнічае часовая папка", + "Could not write file to disk" : "Не ўдалося запісаць файл на дыск", + "Invalid file provided" : "Прапанаваны файл некарэктны", + "Unknown filetype" : "Невядомы тып файла", + "An error occurred. Please contact your admin." : "Узнікла памылка. Звярніцеся да адміністратара.", + "Login" : "Лагін", + "Unsupported email length (>255)" : "Даўжыня электроннага ліста не падтрымліваецца (>255)", + "Password reset is disabled" : "Скід пароля адключаны", + "Password is too long. Maximum allowed length is 469 characters." : "Пароль занадта доўгі. Максімальная дазволеная даўжыня — 469 сімвалаў.", + "%s password reset" : "Скід пароля %s ", + "Password reset" : "Скід пароля", + "Task not found" : "Задача не знойдзена", + "Internal error" : "Унутраная памылка", + "Requested task type does not exist" : "Запытаны тып задачы не існуе", + "Necessary language model provider is not available" : "Неабходны пастаўшчык моўнай мадэлі недаступны", + "No text to image provider is available" : "Няма даступных пастаўшчыкоў паслуг пераўтварэння тэксту ў відарыс", + "Image not found" : "Відарыс не знойдзены", + "No translation provider available" : "Няма даступных пастаўшчыкоў перакладу", + "Could not detect language" : "Не ўдалося вызначыць мову", + "Unable to translate" : "Немагчыма перакласці", + "[%d / %d]: %s" : "[%d / %d]: %s", + "Nextcloud Server" : "Сервер Nextcloud", + "Learn more ↗" : "Больш падрабязна ↗", + "Preparing update" : "Падрыхтоўка абнаўлення", + "Turned on maintenance mode" : "Уключаны рэжым тэхнічнага абслугоўвання", + "Turned off maintenance mode" : "Выключаны рэжым тэхнічнага абслугоўвання", + "Updating database schema" : "Абнаўленне схемы базы даных", + "Updated \"%1$s\" to %2$s" : "\"%1$s\" абноўлена да %2$s", + "%s (incompatible)" : "%s (несумяшчальная)", + "Electronic book document" : "Дакумент электроннай кнігі", + "TrueType Font Collection" : "Калекцыя шрыфтоў TrueType", + "Web Open Font Format" : "Фармат шрыфта Web Open", + "GPX geographic data" : "Геаграфічныя дадыя GPX", + "Gzip archive" : "Архіў Gzip", + "Adobe Illustrator document" : "Дакумент Adobe Illustrator", + "Java source code" : "Зыходны код Java", + "JavaScript source code" : "Зыходны код JavaScript", + "JSON document" : "Дакумент JSON", + "Microsoft Access database" : "База даных Microsoft Access", + "Microsoft OneNote document" : "Дакумент Microsoft OneNote", + "Microsoft Word document" : "Дакумент Microsoft Word", + "Unknown" : "Невядомы", + "PDF document" : "Дакумент PDF", + "PostScript document" : "Дакумент PostScript", + "RSS summary" : "Зводка RSS", + "Android package" : "Пакет Android", + "KML geographic data" : "Геаграфічныя даныя KML", + "KML geographic compressed data" : "Геаграфічныя сціснутыя даныя KML", + "Lotus Word Pro document" : "Дакумент Lotus Word Pro", + "Excel spreadsheet" : "Табліца Excel", + "Excel add-in" : "Надбудова Excel", + "Excel 2007 binary spreadsheet" : "Табліца Excel 2007 (у двайковым фармаце)", + "Excel spreadsheet template" : "Шаблон табліцы Excel", + "Outlook Message" : "Паведамленне Outlook", + "PowerPoint presentation" : "Прэзентацыя PowerPoint", + "PowerPoint add-in" : "Надбудова PowerPoint", + "PowerPoint presentation template" : "Шаблон прэзентацыі PowerPoint", + "Word document" : "Дакумент Word", + "ODF formula" : "Формула ODF", + "ODG drawing" : "Рысунак ODG", + "ODG drawing (Flat XML)" : "Рысунак ODG (Плоскі XML)", + "ODG template" : "Шаблон ODG", + "ODP presentation" : "Прэзентацыя ODP", + "ODP presentation (Flat XML)" : "Прэзентацыя ODP (Плоскі XML)", + "ODP template" : "Шаблон ODP", + "ODS spreadsheet" : "Табліца ODS", + "ODS spreadsheet (Flat XML)" : "Табліца ODS (Плоскі XML)", + "ODS template" : "Шаблон ODS", + "ODT document" : "Дакумент ODT", + "ODT document (Flat XML)" : "Дакумент ODT (Плоскі XML)", + "ODT template" : "Шаблон ODT", + "PowerPoint 2007 presentation" : "Прэзентацыя PowerPoint 2007", + "PowerPoint 2007 presentation template" : "Шаблон прэзентацыі PowerPoint 2007", + "Excel 2007 spreadsheet" : "Табліца Excel 2007", + "Excel 2007 spreadsheet template" : "Шаблон табліцы Excel 2007", + "Word 2007 document" : "Дакумент Word 2007", + "Word 2007 document template" : "Шаблон дакумента Word 2007", + "Microsoft Visio document" : "Дакумент Microsoft Visio", + "WordPerfect document" : "Дакумент WordPerfect", + "7-zip archive" : "Архіў 7-zip", + "Blender scene" : "Сцэна Blender", + "Bzip2 archive" : "Архіў Bzip2", + "Debian package" : "Пакет Debian", + "FictionBook document" : "Дакумент FictionBook", + "Unknown font" : "Невядомы шрыфт", + "Krita document" : "Дакумент Krita", + "Windows Installer package" : "Пакет Windows Installer", + "Tar archive" : "Архіў Tar", + "XML document" : "Дакумент XML", + "YAML document" : "Дакумент YAML", + "Zip archive" : "Архіў Zip", + "Zstandard archive" : "Архіў Zstandard", + "AAC audio" : "Аўдыя AAC", + "FLAC audio" : "Аўдыя FLAC", + "MPEG-4 audio" : "Аўдыя MPEG-4", + "MP3 audio" : "Аўдыя MP3", + "Ogg audio" : "Аўдыя Ogg", + "RIFF/WAVe standard Audio" : "Аўдыя ў стандарце RIFF/WAVe", + "WebM audio" : "Аўдыя WebM", + "MP3 ShoutCast playlist" : "Плэй-ліст MP3 ShoutCast", + "Windows BMP image" : "Відарыс Windows BMP", + "Better Portable Graphics image" : "Відарыс Better Portable Graphics", + "EMF image" : "Відарыс EMF", + "GIF image" : "Відарыс GIF", + "HEIC image" : "Відарыс HEIC", + "HEIF image" : "Відарыс HEIF", + "JPEG-2000 JP2 image" : "Відарыс JPEG-2000 JP2", + "JPEG image" : "Відарыс JPEG", + "PNG image" : "Відарыс PNG", + "SVG image" : "Відарыс SVG", + "Truevision Targa image" : "Відарыс Truevision Targa", + "TIFF image" : "Відарыс TIFF", + "WebP image" : "Відарыс WebP", + "Digital raw image" : "Лічбавы неапрацаваны відарыс", + "Windows Icon" : "Значок Windows", + "Email message" : "Паведамленне па электроннай пошце", + "VCS/ICS calendar" : "Каляндар VCS/ICS", + "CSV document" : "Дакумент CSV", + "HTML document" : "Дакумент HTML", + "Markdown document" : "Дакумент Markdown", + "Org-mode file" : "Файл Org-mode", + "Plain text document" : "Тэкставы дакумент", + "Rich Text document" : "Дакумент Rich Text", + "C++ source code" : "Зыходны код C++", + "NFO document" : "Дакумент NFO", + "PHP source" : "Зыходны код PHP", + "ReStructuredText document" : "Дакумент ReStructuredText", + "3GPP multimedia file" : "Мультымедыйны файл 3GPP", + "MPEG video" : "Відэа MPEG", + "DV video" : "Відэа DV", + "MPEG-4 video" : "Відэа MPEG-4", + "Ogg video" : "Відэа Ogg", + "QuickTime video" : "Відэа QuickTime", + "WebM video" : "Відэа WebM", + "Flash video" : "Відэа Flash", + "Matroska video" : "Відэа Matroska", + "Windows Media video" : "Відэа Windows Media", + "AVI video" : "Відэа AVI", + "unknown text" : "невядомы тэкст", + "Hello world!" : "Hello world!", + "sunny" : "сонечна", + "Hello {name}, the weather is {weather}" : "Вітаем, {name}, на дварэ сёння {weather}", + "Hello {name}" : "Вітаем, {name}", + "new" : "новы", + "Update to {version}" : "Абнаўленне да {version}", + "An error occurred." : "Узнікла памылка.", + "Please reload the page." : "Перазагрузіце старонку.", + "Applications menu" : "Меню праграм", + "Apps" : "Праграмы", + "More apps" : "Болей праграм", + "_{count} notification_::_{count} notifications_" : ["{count} апавяшчэнне","{count} апавяшчэнні","{count} апавяшчэнняў","{count} апавяшчэнняў"], + "No" : "Не", + "Yes" : "Так", + "The remote URL must include the user." : "Аддалены URL-адрас павінен уключаць карыстальніка.", + "user@your-nextcloud.org" : "user@your-nextcloud.org", + "Direct link copied to clipboard" : "Прамая спасылка скапіявана ў буфер абмену", + "Please copy the link manually:" : "Скапіюйце спасылку ўручную:", + "Clear search" : "Ачысціць пошук", + "Searching …" : "Пошук …", + "Start typing to search" : "Пачніце ўводзіць тэкст для пошуку", + "No matching results" : "Няма адпаведных вынікаў", + "Today" : "Сёння", + "Last 7 days" : "Апошнія 7 дзён", + "Last 30 days" : "Апошнія 30 дзён", + "This year" : "Гэты год", + "Last year" : "Мінулы год", + "Search apps, files, tags, messages" : "Пошук праграм, файлаў, тэгаў, паведамленняў", + "Places" : "Месцы", + "Date" : "Дата", + "People" : "Людзі", + "Results" : "Вынікі", + "Load more results" : "Загрузіць больш вынікаў", + "Search in" : "Пошук у", + "Log in" : "Увайсці", + "Logging in …" : "Уваход …", + "Log in to {productName}" : "Увайсці ў {productName}", + "Wrong login or password." : "Няправільны лагін або пароль.", + "This account is disabled" : "Гэты ўліковы запіс адключаны.", + "Account name or email" : "Імя ўліковага запісу або email", + "Account name" : "Імя ўліковага запісу", + "Please contact your administrator." : "Звярніцеся да адміністратара.", + "Session error" : "Памылка сеанса", + "An internal error occurred." : "Узнікла ўнутраная памылка.", + "Please try again or contact your administrator." : "Паспрабуйце яшчэ раз або звярніцеся да адміністратара.", + "Password" : "Пароль", + "Log in with a device" : "Увайсці з дапамогай прылады", + "Login or email" : "Лагін або электронная пошта", + "Your connection is not secure" : "Ваша злучэнне не з'яўляецца бяспечным", + "Browser not supported" : "Браўзер не падтрымліваецца", + "Reset password" : "Скінуць пароль", + "Password cannot be changed. Please contact your administrator." : "Немагчыма змяніць пароль. Звярніцеся да адміністратара.", + "New password" : "Новы пароль", + "I know what I'm doing" : "Я ведаю, што раблю", + "Resetting password" : "Скід пароля", + "Chatting, video calls, screen sharing, online meetings and web conferencing – in your browser and with mobile apps." : "Чаты, відэавыклікі, дэманстрацыя экрана, анлайн-сустрэчы і вэб-канферэнцыі — у вашым браўзеры і з дапамогай мабільных праграм.", + "Collaborative documents, spreadsheets and presentations, built on Collabora Online." : "Супольныя дакументы, электронныя табліцы і прэзентацыі, створаныя ў Collabora Online.", + "Recommended apps" : "Рэкамендаваныя праграмы", + "Loading apps …" : "Загрузка праграм …", + "Could not fetch list of apps from the App Store." : "Не ўдалося атрымаць спіс праграм з App Store.", + "Cannot install this app because it is not compatible" : "Немагчыма ўсталяваць гэту праграму, бо яна несумяшчальная", + "Cannot install this app" : "Немагчыма ўсталяваць гэту праграму", + "Skip" : "Прапусціць", + "Installing apps …" : "Усталяванне праграм …", + "Install recommended apps" : "Усталяваць рэкамендаваныя праграмы", + "Avatar of {displayName}" : "Аватар карыстальніка {displayName}", + "Loading your contacts …" : "Загрузка вашых кантактаў …", + "Looking for {term} …" : "Пошук {term} …", + "Search contacts" : "Пошук кантактаў", + "Reset search" : "Скінуць пошук", + "Search contacts …" : "Пошук кантактаў …", + "Could not load your contacts" : "Не ўдалося загрузіць вашы кантакты", + "No contacts found" : "Кантакты не знойдзены", + "Show all contacts" : "Паказаць усе кантакты", + "Install the Contacts app" : "Усталяваць праграму \"Кантакты\"", + "Search" : "Пошук", + "No results for {query}" : "Няма вынікаў для {query}", + "Press Enter to start searching" : "Націсніце Enter, каб пачаць пошук", + "Forgot password?" : "Забылі пароль?", + "Back" : "Назад", + "More actions" : "Больш дзеянняў", + "User menu" : "Меню карыстальніка", + "Storage & database" : "Сховішча і база даных", + "Data folder" : "Папка з данымі", + "Database configuration" : "Канфігурацыя базы даных", + "Only {firstAndOnlyDatabase} is available." : "Даступна толькі {firstAndOnlyDatabase}.", + "Install and activate additional PHP modules to choose other database types." : "Усталюйце і актывуйце дадатковыя модулі PHP, каб выбраць іншы тып базы даных.", + "Database user" : "Карыстальнік базы даных", + "Database password" : "Пароль базы даных", + "Database name" : "Назва базы даных", + "Database tablespace" : "Таблічная прастора базы даных", + "localhost" : "localhost", + "Installing …" : "Усталяванне …", + "Install" : "Усталяваць", + "This browser is not supported" : "Гэты браўзер не падтрымліваецца", + "Copy to {target}" : "Капіяваць у {target}", + "Copy" : "Капіяваць", + "Move to {target}" : "Перамясціць у {target}", + "Move" : "Перамясціць", + "OK" : "OK", + "read-only" : "толькі для чытання", + "One file conflict" : "Адзін файлавы канфлікт", + "New Files" : "Новыя файлы", + "Already existing files" : "Ужо існуючыя файлы", + "Which files do you want to keep?" : "Якія файлы вы хочаце захаваць?", + "If you select both versions, the copied file will have a number added to its name." : "Калі бы выберыце абедзьве версіі, да назвы скапіяванага файла будзе дададзены нумар.", + "Cancel" : "Скасаваць", + "Continue" : "Працягнуць", + "Error loading file exists template" : "Памылка загрузкі шаблона", + "Saving …" : "Захаванне …", + "seconds ago" : "с таму", + "Add to a project" : "Дадаць у праект", + "Rename project" : "Перайменаваць праект", + "Delete" : "Выдаліць", + "Rename" : "Перайменаваць", + "Collaborative tags" : "Супольныя тэгі", + "No tags found" : "Тэгі не знойдзены", + "Clipboard not available, please copy manually" : "Буфер абмену недаступны, скапіюйце ўручную", + "Accounts" : "Уліковыя запісы", + "Admin" : "Адміністратар", + "Help" : "Даведка", + "Access forbidden" : "Доступ забаронены", + "Back to %s" : "Назад да %s", + "Page not found" : "Старонка не знойдзена", + "The page could not be found on the server or you may not be allowed to view it." : "Старонка не знойдзена на серверы, або ў вас няма дазволу на яе прагляд.", + "Too many requests" : "Занадта шмат запытаў", + "There were too many requests from your network. Retry later or contact your administrator if this is an error." : "З вашай сеткі паступіла занадта шмат запытаў. Паўтарыце спробу пазней або звярніцеся да адміністратара, калі гэта памылка.", + "Error" : "Памылка", + "Internal Server Error" : "Унутраная памылка сервера", + "The server was unable to complete your request." : "Сервер не змог выканаць ваш запыт.", + "If this happens again, please send the technical details below to the server administrator." : "Калі гэта паўторыцца, адпраўце тэхнічныя падрабязнасці ніжэй адміністратару сервера.", + "More details can be found in the server log." : "Больш падрабязную інфармацыю можна знайсці ў журнале сервера.", + "For more details see the documentation ↗." : "Больш падрабязную інфармацыю глядзіце ў дакументацыі ↗.", + "Technical details" : "Тэхнічныя падрабязнасці", + "Remote Address: %s" : "Аддалены адрас: %s", + "Request ID: %s" : "Ідэнтыфікатар запыту: %s", + "Type: %s" : "Тып: %s", + "Code: %s" : "Код: %s", + "Message: %s" : "Паведамленне: %s", + "File: %s" : "Файл: %s", + "Line: %s" : "Радок: %s", + "Trace" : "Трасіроўка", + "Go to %s" : "Перайсці да %s", + "Grant access" : "Дазволіць доступ", + "Account access" : "Доступ да ўліковага запісу", + "You can close this window." : "Вы можаце закрыць гэта акно.", + "Email address" : "Адрас электроннай пошты", + "Password sent!" : "Пароль адпраўлены!", + "Two-factor authentication" : "Двухфактарная аўтэнтыфікацыя", + "Cancel login" : "Скасаваць уваход", + "Access through untrusted domain" : "Доступ праз ненадзейны дамен", + "Please contact your administrator. If you are an administrator, edit the \"trusted_domains\" setting in config/config.php like the example in config.sample.php." : "Звярніцеся да адміністратара. Калі вы адміністратар, адрэдагуйце параметр \"trusted_domains\" у config/config.php, як у прыкладзе ў config.sample.php.", + "App update required" : "Патрэбна абнавіць праграму", + "The following apps will be updated:" : "Будуць абноўлены наступныя праграмы:", + "These incompatible apps will be disabled:" : "Гэтыя несумяшчальныя праграмы будуць адключаныя:", + "Start update" : "Запусціць абнаўленне", + "Update needed" : "Неабходна абнаўленне", + "Maintenance mode" : "Рэжым тэхнічнага абслугоўвання", + "Contact your system administrator if this message persists or appeared unexpectedly." : "Звярніцеся да сістэмнага адміністратара, калі гэта паведамленне працягвае з'яўляцца або з'явілася нечакана.", + "Chatting, video calls, screensharing, online meetings and web conferencing – in your browser and with mobile apps." : "Чаты, відэавыклікі, дэманстрацыя экрана, анлайн-сустрэчы і вэб-канферэнцыі — у вашым браўзеры і з дапамогай мабільных праграм.", + "You have not added any info yet" : "Вы пакуль не дадалі ніякай інфармацыі", + "{user} has not added any info yet" : "{user} пакуль не дадаў(-ла) ніякай інфармацыі", + "Edit Profile" : "Рэдагаваць профіль", + "Very weak password" : "Вельмі слабы пароль", + "Weak password" : "Слабы пароль", + "So-so password" : "Абы-які пароль", + "Good password" : "Файны пароль", + "Strong password" : "Моцны пароль", + "Profile not found" : "Профіль не знойдзены", + "The profile does not exist." : "Профіль не існуе.", + "<strong>Create an admin account</strong>" : "<strong>Стварыць ўліковы запіс адміністратара</strong>", + "New admin account name" : "Імя ўліковага запісу новага адміністратара", + "New admin password" : "Пароль новага адіміністратара", + "Show password" : "Паказаць пароль", + "Toggle password visibility" : "Пераключыць бачнасць пароля", + "Only %s is available." : "Даступна толькі %s.", + "Database account" : "Уліковы запіс базы даных" +},"pluralForm" :"nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);" +}
\ No newline at end of file diff --git a/core/l10n/et_EE.js b/core/l10n/et_EE.js index bf6db3ec59a..edadb4b18b6 100644 --- a/core/l10n/et_EE.js +++ b/core/l10n/et_EE.js @@ -16,7 +16,7 @@ OC.L10N.register( "Invalid file provided" : "Vigane fail", "No image or file provided" : "Ühtegi pilti või faili pole pakutud", "Unknown filetype" : "Tundmatu failitüüp", - "An error occurred. Please contact your admin." : "Tekkis tõrge. Palun võta ühendust administraatoriga.", + "An error occurred. Please contact your admin." : "Tekkis tõrge. Palun võta ühendust peakasutajaga.", "Invalid image" : "Vigane pilt", "No temporary profile picture available, try again" : "Ühtegi ajutist profiilipilti pole saadaval, proovi uuesti", "No crop data provided" : "Lõikeandmeid ei leitud", @@ -266,11 +266,11 @@ OC.L10N.register( "Account name or email" : "Konto nimi või e-posti aadress", "Account name" : "Kasutajakonto nimi", "Server side authentication failed!" : "Serveripoolne autentimine ebaõnnestus!", - "Please contact your administrator." : "Palun võta ühendust oma administraatoriga.", + "Please contact your administrator." : "Palun võta ühendust oma peakasutajaga.", "Session error" : "Sessiooniviga", "It appears your session token has expired, please refresh the page and try again." : "Tundub, et sinu sessiooni tunnusluba on aegunud, palun laadi leht ja proovi uuesti.", "An internal error occurred." : "Tekkis sisemine viga.", - "Please try again or contact your administrator." : "Palun proovi uuesti või võta ühendust oma administraatoriga.", + "Please try again or contact your administrator." : "Palun proovi uuesti või võta ühendust oma peakasutajaga.", "Password" : "Salasõna", "Log in with a device" : "Logi sisse seadmega", "Login or email" : "Kasutajanimi või e-posti aadress", @@ -431,11 +431,11 @@ OC.L10N.register( "Page not found" : "Lehekülge ei leitud", "The page could not be found on the server or you may not be allowed to view it." : "Seda lehekülge selles serveris ei leidu või sul puudub õigus seda vaadata.", "Too many requests" : "Liiga palju päringuid", - "There were too many requests from your network. Retry later or contact your administrator if this is an error." : "Sinu võrgust tuli liiga palju päringuid. Proovi hiljem uuesti, või võta ühendust administraatoriga, kui tegu on veaga.", + "There were too many requests from your network. Retry later or contact your administrator if this is an error." : "Sinu võrgust tuli liiga palju päringuid. Proovi hiljem uuesti või kui tegu on veaga, siis võta ühendust peakasutajaga.", "Error" : "Viga", "Internal Server Error" : "Serveri sisemine viga", "The server was unable to complete your request." : "Server ei suutnud sinu päringut lõpetada.", - "If this happens again, please send the technical details below to the server administrator." : "Kui see veel kord juhtub, saada tehnilised detailid allpool serveri administraatorile.", + "If this happens again, please send the technical details below to the server administrator." : "Kui see veel kord juhtub, saada tehnilised üksikasjad allpool serveri peakasutajale.", "More details can be found in the server log." : "Lisainfot võib leida serveri logist.", "For more details see the documentation ↗." : "Lisateavet leiad dokumentatsioonist ↗.", "Technical details" : "Tehnilised andmed", diff --git a/core/l10n/et_EE.json b/core/l10n/et_EE.json index 337bd60f905..b596b353654 100644 --- a/core/l10n/et_EE.json +++ b/core/l10n/et_EE.json @@ -14,7 +14,7 @@ "Invalid file provided" : "Vigane fail", "No image or file provided" : "Ühtegi pilti või faili pole pakutud", "Unknown filetype" : "Tundmatu failitüüp", - "An error occurred. Please contact your admin." : "Tekkis tõrge. Palun võta ühendust administraatoriga.", + "An error occurred. Please contact your admin." : "Tekkis tõrge. Palun võta ühendust peakasutajaga.", "Invalid image" : "Vigane pilt", "No temporary profile picture available, try again" : "Ühtegi ajutist profiilipilti pole saadaval, proovi uuesti", "No crop data provided" : "Lõikeandmeid ei leitud", @@ -264,11 +264,11 @@ "Account name or email" : "Konto nimi või e-posti aadress", "Account name" : "Kasutajakonto nimi", "Server side authentication failed!" : "Serveripoolne autentimine ebaõnnestus!", - "Please contact your administrator." : "Palun võta ühendust oma administraatoriga.", + "Please contact your administrator." : "Palun võta ühendust oma peakasutajaga.", "Session error" : "Sessiooniviga", "It appears your session token has expired, please refresh the page and try again." : "Tundub, et sinu sessiooni tunnusluba on aegunud, palun laadi leht ja proovi uuesti.", "An internal error occurred." : "Tekkis sisemine viga.", - "Please try again or contact your administrator." : "Palun proovi uuesti või võta ühendust oma administraatoriga.", + "Please try again or contact your administrator." : "Palun proovi uuesti või võta ühendust oma peakasutajaga.", "Password" : "Salasõna", "Log in with a device" : "Logi sisse seadmega", "Login or email" : "Kasutajanimi või e-posti aadress", @@ -429,11 +429,11 @@ "Page not found" : "Lehekülge ei leitud", "The page could not be found on the server or you may not be allowed to view it." : "Seda lehekülge selles serveris ei leidu või sul puudub õigus seda vaadata.", "Too many requests" : "Liiga palju päringuid", - "There were too many requests from your network. Retry later or contact your administrator if this is an error." : "Sinu võrgust tuli liiga palju päringuid. Proovi hiljem uuesti, või võta ühendust administraatoriga, kui tegu on veaga.", + "There were too many requests from your network. Retry later or contact your administrator if this is an error." : "Sinu võrgust tuli liiga palju päringuid. Proovi hiljem uuesti või kui tegu on veaga, siis võta ühendust peakasutajaga.", "Error" : "Viga", "Internal Server Error" : "Serveri sisemine viga", "The server was unable to complete your request." : "Server ei suutnud sinu päringut lõpetada.", - "If this happens again, please send the technical details below to the server administrator." : "Kui see veel kord juhtub, saada tehnilised detailid allpool serveri administraatorile.", + "If this happens again, please send the technical details below to the server administrator." : "Kui see veel kord juhtub, saada tehnilised üksikasjad allpool serveri peakasutajale.", "More details can be found in the server log." : "Lisainfot võib leida serveri logist.", "For more details see the documentation ↗." : "Lisateavet leiad dokumentatsioonist ↗.", "Technical details" : "Tehnilised andmed", diff --git a/core/l10n/lv.js b/core/l10n/lv.js index 02e39fc7ab9..3c50e94a918 100644 --- a/core/l10n/lv.js +++ b/core/l10n/lv.js @@ -123,7 +123,7 @@ OC.L10N.register( "Search in" : "Meklēt", "Log in" : "Pieteikties", "Logging in …" : "Notiek pieteikšanās …", - "Log in to {productName}" : "Pierakstīties {productName}", + "Log in to {productName}" : "Pieteikties {productName}", "Wrong login or password." : "Nepareizs lietotājvārds vai parole.", "This account is disabled" : "Šis konts ir atspējots", "Account name or email" : "Konta nosaukums vai e-pasta adrese", diff --git a/core/l10n/lv.json b/core/l10n/lv.json index 79a46948eef..3a19a70d965 100644 --- a/core/l10n/lv.json +++ b/core/l10n/lv.json @@ -121,7 +121,7 @@ "Search in" : "Meklēt", "Log in" : "Pieteikties", "Logging in …" : "Notiek pieteikšanās …", - "Log in to {productName}" : "Pierakstīties {productName}", + "Log in to {productName}" : "Pieteikties {productName}", "Wrong login or password." : "Nepareizs lietotājvārds vai parole.", "This account is disabled" : "Šis konts ir atspējots", "Account name or email" : "Konta nosaukums vai e-pasta adrese", diff --git a/core/l10n/uk.js b/core/l10n/uk.js index acad234cf70..8d1222c102d 100644 --- a/core/l10n/uk.js +++ b/core/l10n/uk.js @@ -92,32 +92,113 @@ OC.L10N.register( "JavaScript source code" : "Вихідний код JavaScript", "JSON document" : "Документ JSON", "Microsoft Access database" : "База даних Microsoft Access", + "Microsoft OneNote document" : "Документ Microsoft OneNote", "Microsoft Word document" : "Документ Microsoft Word", "Unknown" : "Невідомо", "PDF document" : "Документ PDF", "PostScript document" : "Документ PostScript", + "RSS summary" : "RSS-підсумок", "Android package" : "Пакунок Android", + "KML geographic data" : "Географічні дані KML", + "KML geographic compressed data" : "Стислі географічні дані KML", + "Lotus Word Pro document" : "Документ Lotus Word Pro", "Excel spreadsheet" : "Електронна таблиця Excel", "Excel add-in" : "Доповнення Excel", + "Excel 2007 binary spreadsheet" : "Бінарна електронна таблиця Excel 2007", + "Excel spreadsheet template" : "Шаблон таблиці Excel", "Outlook Message" : "Ел. лист Outlook", "PowerPoint presentation" : "Презентація PowerPoint", + "PowerPoint add-in" : "Додаток PowerPoint", + "PowerPoint presentation template" : "Шаблон презентації PowerPoint", "Word document" : "Документ Word", + "ODF formula" : "Формула ODF", + "ODG drawing" : "Креслення ODG", + "ODG drawing (Flat XML)" : "Креслення ODG (Flat XML)", + "ODG template" : "Шаблон ODG", "ODP presentation" : "Презентація ODP", + "ODP presentation (Flat XML)" : "Презентація ODP (Flat XML)", + "ODP template" : "Шаблон ODP", "ODS spreadsheet" : "Електронна таблиця ODS", + "ODS spreadsheet (Flat XML)" : "Електронна таблиця ODS (Flat XML)", + "ODS template" : "Шаблон ODS", "ODT document" : "Документ ODT", + "ODT document (Flat XML)" : "Документ ODT (Flat XML)", + "ODT template" : "Шаблон ODT", "PowerPoint 2007 presentation" : "Презентація PowerPoint 2007", + "PowerPoint 2007 show" : "Презентація PowerPoint 2007", + "PowerPoint 2007 presentation template" : "Шаблон презентації PowerPoint 2007", "Excel 2007 spreadsheet" : "Електронна таблиця Excel 2007", + "Excel 2007 spreadsheet template" : "Шаблон електронної таблиці Excel 2007", "Word 2007 document" : "Документ Word 2007", + "Word 2007 document template" : "Шаблон документа Word 2007", + "Microsoft Visio document" : "Документ Microsoft Visio", + "WordPerfect document" : "Документ WordPerfect", "7-zip archive" : "Архів 7-zip", + "Blender scene" : "Сцена Blender", + "Bzip2 archive" : "Архів Bzip2", + "Debian package" : "Пакунок Debian", + "FictionBook document" : "Документ FictionBook", + "Unknown font" : "Невідомий шрифт", + "Krita document" : "Документ Krita", + "Mobipocket e-book" : "Електронна книга Mobipocket", + "Windows Installer package" : "Пакунок Windows Installer", + "Perl script" : "Скрипт Perl", "PHP script" : "Скрипт PHP", + "Tar archive" : "Архів Tar", + "XML document" : "XML-документ", + "YAML document" : "Документ YAML", "Zip archive" : "Архів Zip", + "Zstandard archive" : "Архів Zstandard", + "AAC audio" : "Аудіо AAC", + "FLAC audio" : "Аудіо FLAC", + "MPEG-4 audio" : "Аудіо MPEG-4", + "MP3 audio" : "Аудіо MP3", + "Ogg audio" : "Аудіо Ogg", + "RIFF/WAVe standard Audio" : "Стандарт RIFF/WAVe Аудіо", + "WebM audio" : "Аудіо WebM", + "MP3 ShoutCast playlist" : "Плейлист MP3 ShoutCast", + "Windows BMP image" : "Зображення Windows BMP", + "Better Portable Graphics image" : "Зображення Better Portable Graphics", + "EMF image" : "Зображення EMF", + "GIF image" : "Зображення GIF", + "HEIC image" : "Зображення HEIC", + "HEIF image" : "Зображення HEIF", + "JPEG-2000 JP2 image" : "Зображення JPEG-2000 JP2", "JPEG image" : "Зображення JPEG", "PNG image" : "Зображення PNG", "SVG image" : "Зображення SVG", + "Truevision Targa image" : "Зображення Truevision Targa", + "TIFF image" : "Зображення TIFF", + "WebP image" : "Зображення WebP", + "Digital raw image" : "Зображення Digital raw", + "Windows Icon" : "Піктограма Windows", + "Email message" : "Електронне повідомлення", + "VCS/ICS calendar" : "Календар VCS/ICS", + "CSS stylesheet" : "Таблиця стилів CSS", "CSV document" : "Документ CSV", "HTML document" : "Документ HTML", + "Markdown document" : "Документ Markdown", + "Org-mode file" : "Файл Org-mode", + "Plain text document" : "Тестовий документ", + "Rich Text document" : "Документ Rich Text", + "Electronic business card" : "Електронна візитна картка", + "C++ source code" : "Вихідний код C++", + "LDIF address book" : "Адресна книга LDIF", + "NFO document" : "Документ NFO", "PHP source" : "Вихідний файл PHP", "Python script" : "Скрипт Python", + "ReStructuredText document" : "Документ ReStructuredText", + "3GPP multimedia file" : "Мультимедійний файл 3GPP", + "MPEG video" : "Відео MPEG", + "DV video" : "Відео DV", + "MPEG-2 transport stream" : "Транспортний потік MPEG-2", + "MPEG-4 video" : "Відео MPEG-4", + "Ogg video" : "Відео Ogg", + "QuickTime video" : "Відео QuickTime", + "WebM video" : "Відео WebM", + "Flash video" : "Відео Flash", + "Matroska video" : "Відео Matroska", + "Windows Media video" : "Відео Windows Media", "AVI video" : "Відео AVI", "Error occurred while checking server setup" : "При перевірці налаштувань серверу сталася помилка", "For more details see the {linkstart}documentation ↗{linkend}." : "Додаткову інформацію див. у {linkstart}документації ↗{linkend}.", diff --git a/core/l10n/uk.json b/core/l10n/uk.json index 22f25447279..8107aed1ec7 100644 --- a/core/l10n/uk.json +++ b/core/l10n/uk.json @@ -90,32 +90,113 @@ "JavaScript source code" : "Вихідний код JavaScript", "JSON document" : "Документ JSON", "Microsoft Access database" : "База даних Microsoft Access", + "Microsoft OneNote document" : "Документ Microsoft OneNote", "Microsoft Word document" : "Документ Microsoft Word", "Unknown" : "Невідомо", "PDF document" : "Документ PDF", "PostScript document" : "Документ PostScript", + "RSS summary" : "RSS-підсумок", "Android package" : "Пакунок Android", + "KML geographic data" : "Географічні дані KML", + "KML geographic compressed data" : "Стислі географічні дані KML", + "Lotus Word Pro document" : "Документ Lotus Word Pro", "Excel spreadsheet" : "Електронна таблиця Excel", "Excel add-in" : "Доповнення Excel", + "Excel 2007 binary spreadsheet" : "Бінарна електронна таблиця Excel 2007", + "Excel spreadsheet template" : "Шаблон таблиці Excel", "Outlook Message" : "Ел. лист Outlook", "PowerPoint presentation" : "Презентація PowerPoint", + "PowerPoint add-in" : "Додаток PowerPoint", + "PowerPoint presentation template" : "Шаблон презентації PowerPoint", "Word document" : "Документ Word", + "ODF formula" : "Формула ODF", + "ODG drawing" : "Креслення ODG", + "ODG drawing (Flat XML)" : "Креслення ODG (Flat XML)", + "ODG template" : "Шаблон ODG", "ODP presentation" : "Презентація ODP", + "ODP presentation (Flat XML)" : "Презентація ODP (Flat XML)", + "ODP template" : "Шаблон ODP", "ODS spreadsheet" : "Електронна таблиця ODS", + "ODS spreadsheet (Flat XML)" : "Електронна таблиця ODS (Flat XML)", + "ODS template" : "Шаблон ODS", "ODT document" : "Документ ODT", + "ODT document (Flat XML)" : "Документ ODT (Flat XML)", + "ODT template" : "Шаблон ODT", "PowerPoint 2007 presentation" : "Презентація PowerPoint 2007", + "PowerPoint 2007 show" : "Презентація PowerPoint 2007", + "PowerPoint 2007 presentation template" : "Шаблон презентації PowerPoint 2007", "Excel 2007 spreadsheet" : "Електронна таблиця Excel 2007", + "Excel 2007 spreadsheet template" : "Шаблон електронної таблиці Excel 2007", "Word 2007 document" : "Документ Word 2007", + "Word 2007 document template" : "Шаблон документа Word 2007", + "Microsoft Visio document" : "Документ Microsoft Visio", + "WordPerfect document" : "Документ WordPerfect", "7-zip archive" : "Архів 7-zip", + "Blender scene" : "Сцена Blender", + "Bzip2 archive" : "Архів Bzip2", + "Debian package" : "Пакунок Debian", + "FictionBook document" : "Документ FictionBook", + "Unknown font" : "Невідомий шрифт", + "Krita document" : "Документ Krita", + "Mobipocket e-book" : "Електронна книга Mobipocket", + "Windows Installer package" : "Пакунок Windows Installer", + "Perl script" : "Скрипт Perl", "PHP script" : "Скрипт PHP", + "Tar archive" : "Архів Tar", + "XML document" : "XML-документ", + "YAML document" : "Документ YAML", "Zip archive" : "Архів Zip", + "Zstandard archive" : "Архів Zstandard", + "AAC audio" : "Аудіо AAC", + "FLAC audio" : "Аудіо FLAC", + "MPEG-4 audio" : "Аудіо MPEG-4", + "MP3 audio" : "Аудіо MP3", + "Ogg audio" : "Аудіо Ogg", + "RIFF/WAVe standard Audio" : "Стандарт RIFF/WAVe Аудіо", + "WebM audio" : "Аудіо WebM", + "MP3 ShoutCast playlist" : "Плейлист MP3 ShoutCast", + "Windows BMP image" : "Зображення Windows BMP", + "Better Portable Graphics image" : "Зображення Better Portable Graphics", + "EMF image" : "Зображення EMF", + "GIF image" : "Зображення GIF", + "HEIC image" : "Зображення HEIC", + "HEIF image" : "Зображення HEIF", + "JPEG-2000 JP2 image" : "Зображення JPEG-2000 JP2", "JPEG image" : "Зображення JPEG", "PNG image" : "Зображення PNG", "SVG image" : "Зображення SVG", + "Truevision Targa image" : "Зображення Truevision Targa", + "TIFF image" : "Зображення TIFF", + "WebP image" : "Зображення WebP", + "Digital raw image" : "Зображення Digital raw", + "Windows Icon" : "Піктограма Windows", + "Email message" : "Електронне повідомлення", + "VCS/ICS calendar" : "Календар VCS/ICS", + "CSS stylesheet" : "Таблиця стилів CSS", "CSV document" : "Документ CSV", "HTML document" : "Документ HTML", + "Markdown document" : "Документ Markdown", + "Org-mode file" : "Файл Org-mode", + "Plain text document" : "Тестовий документ", + "Rich Text document" : "Документ Rich Text", + "Electronic business card" : "Електронна візитна картка", + "C++ source code" : "Вихідний код C++", + "LDIF address book" : "Адресна книга LDIF", + "NFO document" : "Документ NFO", "PHP source" : "Вихідний файл PHP", "Python script" : "Скрипт Python", + "ReStructuredText document" : "Документ ReStructuredText", + "3GPP multimedia file" : "Мультимедійний файл 3GPP", + "MPEG video" : "Відео MPEG", + "DV video" : "Відео DV", + "MPEG-2 transport stream" : "Транспортний потік MPEG-2", + "MPEG-4 video" : "Відео MPEG-4", + "Ogg video" : "Відео Ogg", + "QuickTime video" : "Відео QuickTime", + "WebM video" : "Відео WebM", + "Flash video" : "Відео Flash", + "Matroska video" : "Відео Matroska", + "Windows Media video" : "Відео Windows Media", "AVI video" : "Відео AVI", "Error occurred while checking server setup" : "При перевірці налаштувань серверу сталася помилка", "For more details see the {linkstart}documentation ↗{linkend}." : "Додаткову інформацію див. у {linkstart}документації ↗{linkend}.", diff --git a/core/l10n/uz.js b/core/l10n/uz.js index 681e8afe1c0..ff003f18000 100644 --- a/core/l10n/uz.js +++ b/core/l10n/uz.js @@ -256,7 +256,7 @@ OC.L10N.register( "Copy" : "Nusxalash", "Move to {target}" : " {target}ga o`tish", "Move" : "O`tish", - "OK" : "OK", + "OK" : "Yaxshi", "read-only" : "faqat o'qish uchun", "_{count} file conflict_::_{count} file conflicts_" : ["{count} fayl xatolilklari"], "One file conflict" : "Bitta fayl ziddiyati", diff --git a/core/l10n/uz.json b/core/l10n/uz.json index a6bbd7eef71..4ca05538b63 100644 --- a/core/l10n/uz.json +++ b/core/l10n/uz.json @@ -254,7 +254,7 @@ "Copy" : "Nusxalash", "Move to {target}" : " {target}ga o`tish", "Move" : "O`tish", - "OK" : "OK", + "OK" : "Yaxshi", "read-only" : "faqat o'qish uchun", "_{count} file conflict_::_{count} file conflicts_" : ["{count} fayl xatolilklari"], "One file conflict" : "Bitta fayl ziddiyati", diff --git a/core/openapi-ex_app.json b/core/openapi-ex_app.json index 7f7612a03c9..4dad268c1b3 100644 --- a/core/openapi-ex_app.json +++ b/core/openapi-ex_app.json @@ -181,8 +181,12 @@ "$ref": "#/components/schemas/TaskProcessingIO" }, "output": { - "$ref": "#/components/schemas/TaskProcessingIO", - "nullable": true + "nullable": true, + "allOf": [ + { + "$ref": "#/components/schemas/TaskProcessingIO" + } + ] }, "customId": { "type": "string", diff --git a/core/openapi-full.json b/core/openapi-full.json index 5edb86992dc..d4f69abf535 100644 --- a/core/openapi-full.json +++ b/core/openapi-full.json @@ -675,8 +675,12 @@ "$ref": "#/components/schemas/TaskProcessingIO" }, "output": { - "$ref": "#/components/schemas/TaskProcessingIO", - "nullable": true + "nullable": true, + "allOf": [ + { + "$ref": "#/components/schemas/TaskProcessingIO" + } + ] }, "customId": { "type": "string", @@ -3418,8 +3422,12 @@ "references": { "type": "object", "additionalProperties": { - "$ref": "#/components/schemas/Reference", - "nullable": true + "nullable": true, + "allOf": [ + { + "$ref": "#/components/schemas/Reference" + } + ] } } } @@ -3527,8 +3535,12 @@ "references": { "type": "object", "additionalProperties": { - "$ref": "#/components/schemas/Reference", - "nullable": true + "nullable": true, + "allOf": [ + { + "$ref": "#/components/schemas/Reference" + } + ] } } } @@ -3609,8 +3621,12 @@ "references": { "type": "object", "additionalProperties": { - "$ref": "#/components/schemas/Reference", - "nullable": true + "nullable": true, + "allOf": [ + { + "$ref": "#/components/schemas/Reference" + } + ] } } } @@ -3708,8 +3724,12 @@ "references": { "type": "object", "additionalProperties": { - "$ref": "#/components/schemas/Reference", - "nullable": true + "nullable": true, + "allOf": [ + { + "$ref": "#/components/schemas/Reference" + } + ] } } } @@ -3800,8 +3820,12 @@ "references": { "type": "object", "additionalProperties": { - "$ref": "#/components/schemas/Reference", - "nullable": true + "nullable": true, + "allOf": [ + { + "$ref": "#/components/schemas/Reference" + } + ] } } } @@ -3905,8 +3929,12 @@ "references": { "type": "object", "additionalProperties": { - "$ref": "#/components/schemas/Reference", - "nullable": true + "nullable": true, + "allOf": [ + { + "$ref": "#/components/schemas/Reference" + } + ] } } } diff --git a/core/openapi.json b/core/openapi.json index 5f9178202eb..1a7ddc55c92 100644 --- a/core/openapi.json +++ b/core/openapi.json @@ -675,8 +675,12 @@ "$ref": "#/components/schemas/TaskProcessingIO" }, "output": { - "$ref": "#/components/schemas/TaskProcessingIO", - "nullable": true + "nullable": true, + "allOf": [ + { + "$ref": "#/components/schemas/TaskProcessingIO" + } + ] }, "customId": { "type": "string", @@ -3418,8 +3422,12 @@ "references": { "type": "object", "additionalProperties": { - "$ref": "#/components/schemas/Reference", - "nullable": true + "nullable": true, + "allOf": [ + { + "$ref": "#/components/schemas/Reference" + } + ] } } } @@ -3527,8 +3535,12 @@ "references": { "type": "object", "additionalProperties": { - "$ref": "#/components/schemas/Reference", - "nullable": true + "nullable": true, + "allOf": [ + { + "$ref": "#/components/schemas/Reference" + } + ] } } } @@ -3609,8 +3621,12 @@ "references": { "type": "object", "additionalProperties": { - "$ref": "#/components/schemas/Reference", - "nullable": true + "nullable": true, + "allOf": [ + { + "$ref": "#/components/schemas/Reference" + } + ] } } } @@ -3708,8 +3724,12 @@ "references": { "type": "object", "additionalProperties": { - "$ref": "#/components/schemas/Reference", - "nullable": true + "nullable": true, + "allOf": [ + { + "$ref": "#/components/schemas/Reference" + } + ] } } } @@ -3800,8 +3820,12 @@ "references": { "type": "object", "additionalProperties": { - "$ref": "#/components/schemas/Reference", - "nullable": true + "nullable": true, + "allOf": [ + { + "$ref": "#/components/schemas/Reference" + } + ] } } } @@ -3905,8 +3929,12 @@ "references": { "type": "object", "additionalProperties": { - "$ref": "#/components/schemas/Reference", - "nullable": true + "nullable": true, + "allOf": [ + { + "$ref": "#/components/schemas/Reference" + } + ] } } } diff --git a/core/src/OC/dialogs.js b/core/src/OC/dialogs.js index 5c5e8cf5887..5c6934e67a2 100644 --- a/core/src/OC/dialogs.js +++ b/core/src/OC/dialogs.js @@ -9,7 +9,7 @@ import _ from 'underscore' import $ from 'jquery' import IconMove from '@mdi/svg/svg/folder-move.svg?raw' -import IconCopy from '@mdi/svg/svg/folder-multiple.svg?raw' +import IconCopy from '@mdi/svg/svg/folder-multiple-outline.svg?raw' import OC from './index.js' import { DialogBuilder, FilePickerType, getFilePickerBuilder, spawnDialog } from '@nextcloud/dialogs' diff --git a/core/src/components/AppMenuIcon.vue b/core/src/components/AppMenuIcon.vue index f2cee75e644..1b0d48daf8c 100644 --- a/core/src/components/AppMenuIcon.vue +++ b/core/src/components/AppMenuIcon.vue @@ -14,24 +14,25 @@ </template> <script setup lang="ts"> -import type { INavigationEntry } from '../types/navigation' +import type { INavigationEntry } from '../types/navigation.ts' + import { n } from '@nextcloud/l10n' import { computed } from 'vue' - -import IconDot from 'vue-material-design-icons/Circle.vue' +import IconDot from 'vue-material-design-icons/CircleOutline.vue' const props = defineProps<{ app: INavigationEntry }>() -const ariaHidden = computed(() => String(props.app.unread > 0)) +// only hide if there are no unread notifications +const ariaHidden = computed(() => !props.app.unread ? 'true' : undefined) const ariaLabel = computed(() => { - if (ariaHidden.value === 'true') { - return '' + if (!props.app.unread) { + return undefined } - return props.app.name - + (props.app.unread > 0 ? ` (${n('core', '{count} notification', '{count} notifications', props.app.unread, { count: props.app.unread })})` : '') + + return `${props.app.name} (${n('core', '{count} notification', '{count} notifications', props.app.unread, { count: props.app.unread })})` }) </script> @@ -51,6 +52,7 @@ $unread-indicator-size: 10px; height: $icon-size; width: $icon-size; filter: var(--background-image-invert-if-bright); + mask: var(--header-menu-icon-mask); } &__unread { diff --git a/core/src/components/UnifiedSearch/UnifiedSearchLocalSearchBar.vue b/core/src/components/UnifiedSearch/UnifiedSearchLocalSearchBar.vue index 1860c54e1ff..171eada8a06 100644 --- a/core/src/components/UnifiedSearch/UnifiedSearchLocalSearchBar.vue +++ b/core/src/components/UnifiedSearch/UnifiedSearchLocalSearchBar.vue @@ -32,7 +32,7 @@ {{ t('core', 'Search everywhere') }} </template> <template #icon> - <NcIconSvgWrapper :path="mdiCloudSearch" /> + <NcIconSvgWrapper :path="mdiCloudSearchOutline" /> </template> </NcButton> </div> @@ -41,7 +41,7 @@ <script lang="ts" setup> import type { ComponentPublicInstance } from 'vue' -import { mdiCloudSearch, mdiClose } from '@mdi/js' +import { mdiCloudSearchOutline, mdiClose } from '@mdi/js' import { translate as t } from '@nextcloud/l10n' import { useIsMobile } from '@nextcloud/vue/composables/useIsMobile' import { useElementSize } from '@vueuse/core' diff --git a/core/src/components/UnifiedSearch/UnifiedSearchModal.vue b/core/src/components/UnifiedSearch/UnifiedSearchModal.vue index 744c8e604fa..002606f058b 100644 --- a/core/src/components/UnifiedSearch/UnifiedSearchModal.vue +++ b/core/src/components/UnifiedSearch/UnifiedSearchModal.vue @@ -159,8 +159,8 @@ import debounce from 'debounce' import { unifiedSearchLogger } from '../../logger' import IconArrowRight from 'vue-material-design-icons/ArrowRight.vue' -import IconAccountGroup from 'vue-material-design-icons/AccountGroup.vue' -import IconCalendarRange from 'vue-material-design-icons/CalendarRange.vue' +import IconAccountGroup from 'vue-material-design-icons/AccountGroupOutline.vue' +import IconCalendarRange from 'vue-material-design-icons/CalendarRangeOutline.vue' import IconDotsHorizontal from 'vue-material-design-icons/DotsHorizontal.vue' import IconFilter from 'vue-material-design-icons/Filter.vue' import IconListBox from 'vue-material-design-icons/ListBox.vue' diff --git a/core/src/components/login/PasswordLessLoginForm.vue b/core/src/components/login/PasswordLessLoginForm.vue index bbca2ebf31d..bc4d25bf70f 100644 --- a/core/src/components/login/PasswordLessLoginForm.vue +++ b/core/src/components/login/PasswordLessLoginForm.vue @@ -57,7 +57,7 @@ import { import NcEmptyContent from '@nextcloud/vue/components/NcEmptyContent' import NcTextField from '@nextcloud/vue/components/NcTextField' -import InformationIcon from 'vue-material-design-icons/Information.vue' +import InformationIcon from 'vue-material-design-icons/InformationOutline.vue' import LoginButton from './LoginButton.vue' import LockOpenIcon from 'vue-material-design-icons/LockOpen.vue' import logger from '../../logger' diff --git a/core/src/views/AccountMenu.vue b/core/src/views/AccountMenu.vue index cac02129bac..5b7ead636bd 100644 --- a/core/src/views/AccountMenu.vue +++ b/core/src/views/AccountMenu.vue @@ -197,27 +197,15 @@ export default defineComponent({ } .account-menu { - :deep(button) { - // Normally header menus are slightly translucent when not active - // this is generally ok but for the avatar this is weird so fix the opacity - opacity: 1 !important; - - // The avatar is just the "icon" of the button - // So we add the focus-visible manually - &:focus-visible { - .account-menu__avatar { - border: var(--border-width-input-focused) solid var(--color-background-plain-text); - } - } - } - - // Ensure we do not waste space, as the header menu sets a default width of 350px - :deep(.header-menu__content) { - width: fit-content !important; - } - &__avatar { + --account-menu-outline: var(--border-width-input) solid color-mix(in srgb, var(--color-background-plain-text), transparent 75%); + outline: var(--account-menu-outline); + position: fixed; + // do not apply the alpha mask on the avatar div + mask: none !important; + &:hover { + --account-menu-outline: none; // Add hover styles similar to the focus-visible style border: var(--border-width-input-focused) solid var(--color-background-plain-text); } @@ -235,5 +223,25 @@ export default defineComponent({ flex: 0 1; } } + + // Ensure we do not waste space, as the header menu sets a default width of 350px + :deep(.header-menu__content) { + width: fit-content !important; + } + + :deep(button) { + // Normally header menus are slightly translucent when not active + // this is generally ok but for the avatar this is weird so fix the opacity + opacity: 1 !important; + + // The avatar is just the "icon" of the button + // So we add the focus-visible manually + &:focus-visible { + .account-menu__avatar { + --account-menu-outline: none; + border: var(--border-width-input-focused) solid var(--color-background-plain-text); + } + } + } } </style> diff --git a/core/src/views/ContactsMenu.vue b/core/src/views/ContactsMenu.vue index 292e2bbcd29..924ddcea56b 100644 --- a/core/src/views/ContactsMenu.vue +++ b/core/src/views/ContactsMenu.vue @@ -9,7 +9,7 @@ :aria-label="t('core', 'Search contacts')" @open="handleOpen"> <template #trigger> - <Contacts class="contactsmenu__trigger-icon" :size="20" /> + <NcIconSvgWrapper class="contactsmenu__trigger-icon" :path="mdiContacts" /> </template> <div class="contactsmenu__menu"> <div class="contactsmenu__menu__input-wrapper"> @@ -27,7 +27,7 @@ </div> <NcEmptyContent v-if="error" :name="t('core', 'Could not load your contacts')"> <template #icon> - <Magnify /> + <NcIconSvgWrapper :path="mdiMagnify" /> </template> </NcEmptyContent> <NcEmptyContent v-else-if="loadingText" :name="loadingText"> @@ -37,7 +37,7 @@ </NcEmptyContent> <NcEmptyContent v-else-if="contacts.length === 0" :name="t('core', 'No contacts found')"> <template #icon> - <Magnify /> + <NcIconSvgWrapper :path="mdiMagnify" /> </template> </NcEmptyContent> <div v-else class="contactsmenu__menu__content"> @@ -62,39 +62,46 @@ </template> <script> +import { mdiContacts, mdiMagnify } from '@mdi/js' +import { generateUrl } from '@nextcloud/router' +import { getCurrentUser } from '@nextcloud/auth' +import { t } from '@nextcloud/l10n' import axios from '@nextcloud/axios' -import Contacts from 'vue-material-design-icons/Contacts.vue' import debounce from 'debounce' -import { getCurrentUser } from '@nextcloud/auth' -import { generateUrl } from '@nextcloud/router' -import Magnify from 'vue-material-design-icons/Magnify.vue' + import NcButton from '@nextcloud/vue/components/NcButton' import NcEmptyContent from '@nextcloud/vue/components/NcEmptyContent' import NcHeaderMenu from '@nextcloud/vue/components/NcHeaderMenu' +import NcIconSvgWrapper from '@nextcloud/vue/components/NcIconSvgWrapper' import NcLoadingIcon from '@nextcloud/vue/components/NcLoadingIcon' -import { translate as t } from '@nextcloud/l10n' +import NcTextField from '@nextcloud/vue/components/NcTextField' import Contact from '../components/ContactsMenu/Contact.vue' import logger from '../logger.js' import Nextcloud from '../mixins/Nextcloud.js' -import NcTextField from '@nextcloud/vue/components/NcTextField' export default { name: 'ContactsMenu', components: { Contact, - Contacts, - Magnify, NcButton, NcEmptyContent, NcHeaderMenu, + NcIconSvgWrapper, NcLoadingIcon, NcTextField, }, mixins: [Nextcloud], + setup() { + return { + mdiContacts, + mdiMagnify, + } + }, + data() { const user = getCurrentUser() return { diff --git a/core/src/views/PublicPageUserMenu.vue b/core/src/views/PublicPageUserMenu.vue index ff6f4090b2a..7bd6521e7aa 100644 --- a/core/src/views/PublicPageUserMenu.vue +++ b/core/src/views/PublicPageUserMenu.vue @@ -48,7 +48,7 @@ import { t } from '@nextcloud/l10n' import NcAvatar from '@nextcloud/vue/components/NcAvatar' import NcHeaderMenu from '@nextcloud/vue/components/NcHeaderMenu' import NcNoteCard from '@nextcloud/vue/components/NcNoteCard' -import IconAccount from 'vue-material-design-icons/Account.vue' +import IconAccount from 'vue-material-design-icons/AccountOutline.vue' import AccountMenuEntry from '../components/AccountMenu/AccountMenuEntry.vue' |